@testgorilla/tgo-ui 2.23.43 → 2.23.45

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 (72) hide show
  1. package/components/alert-banner/alert-banner.component.d.ts +5 -3
  2. package/components/autocomplete/autocomplete.component.d.ts +5 -3
  3. package/components/button/button.component.d.ts +5 -3
  4. package/components/checkbox/checkbox.component.d.ts +5 -3
  5. package/components/datepicker/datepicker.component.d.ts +5 -3
  6. package/components/dialog/dialog.component.d.ts +5 -3
  7. package/components/dropdown/dropdown.component.d.ts +5 -3
  8. package/components/empty-state/empty-state.component.d.ts +5 -3
  9. package/components/field/field.component.d.ts +5 -3
  10. package/components/file-upload/file-upload.component.d.ts +5 -3
  11. package/components/icon/icon.component.d.ts +2 -1
  12. package/components/multi-input/multi-input.component.d.ts +5 -3
  13. package/components/navbar/navbar.component.d.ts +5 -3
  14. package/components/overflow-menu/overflow-menu.component.d.ts +5 -3
  15. package/components/page-header/page-header.component.d.ts +5 -3
  16. package/components/password-criteria/password.component.d.ts +5 -3
  17. package/components/password-strength/password-strength.component.d.ts +5 -3
  18. package/components/phone-input/phone-input.component.d.ts +5 -3
  19. package/components/progress-bar/progress-bar.component.d.ts +5 -3
  20. package/components/side-panel/side-panel.component.d.ts +5 -3
  21. package/components/side-sheet/side-sheet.component.d.ts +5 -3
  22. package/components/slider/slider.component.d.ts +5 -3
  23. package/components/snackbar/snackbar.component.d.ts +5 -3
  24. package/components/spinner/spinner.component.d.ts +5 -3
  25. package/components/stepper/stepper.component.d.ts +5 -3
  26. package/components/tag/tag.component.d.ts +5 -3
  27. package/components/toggle/toggle.component.d.ts +5 -3
  28. package/components/validation-error/validation-error.component.d.ts +5 -2
  29. package/esm2022/components/accordion/accordion.component.mjs +1 -1
  30. package/esm2022/components/alert-banner/alert-banner.component.mjs +16 -5
  31. package/esm2022/components/autocomplete/autocomplete.component.mjs +16 -5
  32. package/esm2022/components/avatar/avatar.component.mjs +1 -1
  33. package/esm2022/components/badge/badge.component.mjs +1 -1
  34. package/esm2022/components/button/button.component.mjs +16 -5
  35. package/esm2022/components/card/card.component.mjs +1 -1
  36. package/esm2022/components/checkbox/checkbox.component.mjs +15 -4
  37. package/esm2022/components/datepicker/datepicker.component.mjs +16 -5
  38. package/esm2022/components/dialog/dialog.component.mjs +14 -3
  39. package/esm2022/components/dropdown/dropdown.component.mjs +16 -5
  40. package/esm2022/components/empty-state/empty-state.component.mjs +15 -4
  41. package/esm2022/components/field/field.component.mjs +16 -5
  42. package/esm2022/components/file-upload/file-upload.component.mjs +15 -4
  43. package/esm2022/components/icon/icon.component.mjs +28 -16
  44. package/esm2022/components/icon-label/icon-label.component.mjs +1 -1
  45. package/esm2022/components/multi-input/multi-input.component.mjs +16 -5
  46. package/esm2022/components/navbar/navbar.component.mjs +16 -5
  47. package/esm2022/components/overflow-menu/overflow-menu.component.mjs +16 -5
  48. package/esm2022/components/page-header/page-header.component.mjs +14 -3
  49. package/esm2022/components/password-criteria/password.component.mjs +17 -6
  50. package/esm2022/components/password-strength/password-strength.component.mjs +15 -4
  51. package/esm2022/components/phone-input/phone-input.component.mjs +15 -4
  52. package/esm2022/components/progress-bar/progress-bar.component.mjs +14 -3
  53. package/esm2022/components/segmented-bar/segmented-bar.component.mjs +1 -1
  54. package/esm2022/components/side-panel/side-panel.component.mjs +16 -5
  55. package/esm2022/components/side-sheet/side-sheet.component.mjs +15 -4
  56. package/esm2022/components/slider/slider.component.mjs +15 -4
  57. package/esm2022/components/snackbar/snackbar.component.mjs +16 -5
  58. package/esm2022/components/spinner/spinner.component.mjs +14 -3
  59. package/esm2022/components/step/step.component.mjs +1 -1
  60. package/esm2022/components/stepper/stepper.component.mjs +15 -4
  61. package/esm2022/components/table/table.component.mjs +2 -2
  62. package/esm2022/components/tabs/tabs.component.mjs +1 -1
  63. package/esm2022/components/tag/tag.component.mjs +15 -4
  64. package/esm2022/components/toggle/toggle.component.mjs +15 -4
  65. package/esm2022/components/validation-error/validation-error.component.mjs +17 -6
  66. package/esm2022/public-api.mjs +3 -1
  67. package/esm2022/tokens/app-lang.token.mjs +3 -0
  68. package/fesm2022/testgorilla-tgo-ui.mjs +372 -115
  69. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  70. package/package.json +1 -1
  71. package/public-api.d.ts +1 -0
  72. package/tokens/app-lang.token.d.ts +2 -0
@@ -2,15 +2,18 @@ import { animate, style, transition, trigger } from '@angular/animations';
2
2
  import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, forwardRef, Optional, Inject, ViewChild } from '@angular/core';
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { LanguageService } from '../../utils/localization/language.service';
5
+ import { CANOPY_UI_LANG } from '../../tokens/app-lang.token';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/common";
7
8
  import * as i2 from "../icon/icon.component";
8
9
  import * as i3 from "../progress-bar/progress-bar.component";
9
10
  import * as i4 from "../../directives/drag-drop.directive";
10
11
  import * as i5 from "../../pipes/ui-translate.pipe";
12
+ import * as i6 from "../../utils/localization/language.model";
11
13
  export class FileUploadComponent {
12
- constructor(defaultAppTheme) {
14
+ constructor(defaultAppTheme, appLang) {
13
15
  this.defaultAppTheme = defaultAppTheme;
16
+ this.appLang = appLang;
14
17
  this.class = 'ui-file-upload';
15
18
  /**
16
19
  * File upload disabled
@@ -75,6 +78,9 @@ export class FileUploadComponent {
75
78
  if (defaultAppTheme) {
76
79
  this.applicationTheme = defaultAppTheme;
77
80
  }
81
+ if (appLang) {
82
+ this.language = appLang;
83
+ }
78
84
  }
79
85
  ngOnInit() {
80
86
  this.browse = true;
@@ -169,14 +175,14 @@ export class FileUploadComponent {
169
175
  this.isCanceled = true;
170
176
  }
171
177
  }
172
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FileUploadComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FileUploadComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: CANOPY_UI_LANG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
173
179
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: FileUploadComponent, selector: "ui-file-upload", inputs: { maxFileSizeMB: "maxFileSizeMB", minFileSizeMB: "minFileSizeMB", supportedFileTypes: "supportedFileTypes", uploadProgress: "uploadProgress", errors: "errors", disabled: "disabled", file: "file", language: "language", companyColor: "companyColor", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired" }, outputs: { OnDrop: "OnDrop" }, host: { properties: { "class": "this.class", "style.--color": "this.compColor" } }, providers: [
174
180
  {
175
181
  provide: NG_VALUE_ACCESSOR,
176
182
  useExisting: forwardRef(() => FileUploadComponent),
177
183
  multi: true,
178
184
  },
179
- ], viewQueries: [{ propertyName: "fileDrop", first: true, predicate: ["fileDrop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate : language) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate : language) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : language : { min: minFileSizeMB } }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate : language }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate : language }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate : language }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate : language }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate : language }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "ui-progress-bar", inputs: ["companyColor", "progress", "mode", "buffer", "applicationTheme", "ariaLabel", "ariaDescribedBy", "language"] }, { kind: "directive", type: i4.DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i5.UiTranslatePipe, name: "uiTranslate" }], animations: [
185
+ ], viewQueries: [{ propertyName: "fileDrop", first: true, predicate: ["fileDrop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate : language) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate : language) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : language : { min: minFileSizeMB } }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate : language }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate : language }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate : language }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate : language }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate : language }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "ui-progress-bar", inputs: ["companyColor", "progress", "mode", "buffer", "applicationTheme", "ariaLabel", "ariaDescribedBy", "language"] }, { kind: "directive", type: i4.DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i5.UiTranslatePipe, name: "uiTranslate" }], animations: [
180
186
  trigger('inOutAnimation', [
181
187
  transition(':enter', [
182
188
  style({ opacity: 0, height: 0 }),
@@ -254,6 +260,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
254
260
  }, {
255
261
  type: Inject,
256
262
  args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
263
+ }] }, { type: i6.Language, decorators: [{
264
+ type: Optional
265
+ }, {
266
+ type: Inject,
267
+ args: [CANOPY_UI_LANG]
257
268
  }] }], propDecorators: { class: [{
258
269
  type: HostBinding
259
270
  }], maxFileSizeMB: [{
@@ -289,4 +300,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
289
300
  type: ViewChild,
290
301
  args: ['fileDrop']
291
302
  }] } });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7OztBQWlENUUsTUFBTSxPQUFPLG1CQUFtQjtJQThIOUIsWUFDNkUsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBOUgvRixVQUFLLEdBQUcsZ0JBQWdCLENBQUM7UUF3Q3hDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQjs7Ozs7V0FLRztRQUNNLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRWxDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUM7UUFFcEQ7Ozs7OztXQU1HO1FBQ00saUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBSzFDOzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixP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QU8sRUFBRSxDQUFDO2dDQUN0QyxPQUFPLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NkJBQzFELENBQUM7eUJBQ0gsQ0FBQztxQkFDSDs7MEJBaUlFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsb0NBQW9DO3lDQTlIM0MsS0FBSztzQkFBbkIsV0FBVztnQkFPSCxhQUFhO3NCQUFyQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBUUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQVFHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBUUcsTUFBTTtzQkFBZCxLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBU0csWUFBWTtzQkFBcEIsS0FBSztnQkFHTixTQUFTO3NCQURSLFdBQVc7dUJBQUMsZUFBZTtnQkFVbkIsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQVFHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxNQUFNO3NCQUFmLE1BQU07Z0JBRWdCLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG4gIE9wdGlvbmFsLFxuICBJbmplY3QsXG4gIFZpZXdDaGlsZCxcbiAgRWxlbWVudFJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL2xvY2FsaXphdGlvbi9sYW5ndWFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVGhlbWUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRmlsZVVwbG9hZENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2luT3V0QW5pbWF0aW9uJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSlcbiAgICAgIF0pXG4gICAgXSksXG4gICAgdHJpZ2dlcignaW5PdXRBbmltYXRpb25Qcm9ncmVzcycsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2luT3V0QW5pbWF0aW9uQ2hhbmdlJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSlcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQEhvc3RCaW5kaW5nKCkgY2xhc3MgPSAndWktZmlsZS11cGxvYWQnO1xuXG4gIC8qKlxuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbWF4RmlsZVNpemVNQjogbnVtYmVyO1xuXG4gIC8qKlxuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbWluRmlsZVNpemVNQjogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTdXBwb3J0ZWQgZmlsZXMgZm9yIGlucHV0IGZpZWxkXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzdXBwb3J0ZWRGaWxlVHlwZXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVwbG9hZCBwcm9ncmVzc1xuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdXBsb2FkUHJvZ3Jlc3M6IG51bWJlcjtcblxuICAvKipcbiAgICogRmlsZSB1cGxvYWQgZXJyb3JzXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmdbXX1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGVycm9ycz86IHN0cmluZ1tdIHwgbnVsbDtcblxuICAvKipcbiAgICogRmlsZSB1cGxvYWQgZGlzYWJsZWRcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFeGlzdGluZyBmaWxlIGluZm9ybWF0aW9uXG4gICAqXG4gICAqIEB0eXBlIHsoRmlsZSB8IG51bGwpfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZmlsZTogRmlsZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFuZ3VhZ2UgdG8gYmUgdXNlZFxuICAgKiBAcHJvcGVydHkgbGFuZ3VhZ2VcbiAgICogQHR5cGUge0xhbmd1YWdlfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFuZ3VhZ2UgPSBMYW5ndWFnZVNlcnZpY2UuZGVmYXVsdExhbmd1YWdlO1xuXG4gIC8qKlxuICAgKiBDb2xvciBvZiB0aGUgZmlsZSB1cGxvYWQuXG4gICAqIERlZmF1bHRzIHRvIFRlc3QgR29yaWxsYSBwcmltYXJ5IGNvbG9yLlxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgY29tcGFueUNvbG9yOiBzdHJpbmcgfCBudWxsID0gJyc7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLWNvbG9yJylcbiAgY29tcENvbG9yOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqXG4gICAqIERlZmluZXMgdGhlIGFwcGxpY2F0aW9uIHRoZW1lXG4gICAqXG4gICAqIEB0eXBlIHtBcHBsaWNhdGlvblRoZW1lfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXBwbGljYXRpb25UaGVtZTogQXBwbGljYXRpb25UaGVtZSA9ICdsaWdodCc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSBsYWJlbCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBsYWJlbCBpcyB1c2VkIHRvIHByb3ZpZGUgYW4gYWNjZXNzaWJsZSBuYW1lIGZvciB0aGUgaW5wdXQgZWxlbWVudC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgcmVxdWlyZW1lbnQgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgYXR0cmlidXRlIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hldGhlciBhbiBpbnB1dCBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZm9ybSBzdWJtaXNzaW9uLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFyaWFSZXF1aXJlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBPbkRyb3A6IEV2ZW50RW1pdHRlcjxGaWxlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZT4oKTtcblxuICBAVmlld0NoaWxkKCdmaWxlRHJvcCcpIGZpbGVEcm9wOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0cmFuc2xhdGlvbkNvbnRleHQgPSAnRklMRV9VUExPQUQuJztcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25DaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gIH07XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9uVG91Y2ggPSAoKSA9PiB7XG4gIH07XG5cbiAgaXNNaXNzZWRNaW5TaXplID0gZmFsc2U7XG4gIHByb2dyZXNzID0gZmFsc2U7XG4gIHN1Y2Nlc3MgPSBmYWxzZTtcbiAgYnJvd3NlOiBib29sZWFuO1xuICBpc0NhbmNlbGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdCgnQ0FOT1BZVUlfREVGQVVMVF9BUFBMSUNBVElPTl9USEVNRScpIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdEFwcFRoZW1lOiBBcHBsaWNhdGlvblRoZW1lLFxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5icm93c2UgPSB0cnVlO1xuICB9XG5cbiAgLy9XaGVuIGZpbGUgaXMgZHJvcHBlZFxuICBvbkZpbGVEcm9wcGVkKGZpbGVzOiBGaWxlTGlzdCkge1xuICAgIHRoaXMuZW1pdEZpbGUoZmlsZXMpO1xuICB9XG5cbiAgLy9XaGVuIGlucHV0IGNoYW5nZXNcbiAgb25DaGFuZ2VVcGxvYWQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5pc0NhbmNlbGVkID0gZmFsc2U7XG4gICAgY29uc3QgZWxlbWVudCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICB0aGlzLmVtaXRGaWxlKGVsZW1lbnQuZmlsZXMgfHwgbmV3IEZpbGVMaXN0KCkpO1xuICB9XG5cbiAgLy9FbWl0IGRyb3AgZmlsZVxuICBlbWl0RmlsZShmaWxlczogRmlsZUxpc3QpIHtcbiAgICBjb25zdCBbZmlsZV0gPSBBcnJheS5mcm9tKGZpbGVzKTtcbiAgICB0aGlzLmZpbGUgPSBmaWxlO1xuICAgIHRoaXMuZXJyb3JzID0gbnVsbDtcbiAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB0aGlzLmlzTWlzc2VkTWluU2l6ZSA9XG4gICAgICAhZmlsZT8uc2l6ZSAmJiAhdGhpcy5taW5GaWxlU2l6ZU1CID8gdHJ1ZSA6IHRoaXMuZmlsZVNpemVUb01CKGZpbGU/LnNpemUgPz8gMCkgPD0gdGhpcy5taW5GaWxlU2l6ZU1CO1xuICAgIGlmICghdGhpcy5pc01pc3NlZE1pblNpemUpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5maWxlKTtcbiAgICAgIHRoaXMuT25Ecm9wLmVtaXQoZmlsZSk7XG4gICAgfVxuICB9XG5cbiAgLy9TaG93IHByb2dyZXNzLWJhclxuICBzaG93UHJvZ3Jlc3MoKTogYm9vbGVhbiB7XG4gICAgdGhpcy5icm93c2UgPSBmYWxzZTtcbiAgICByZXR1cm4gISEodGhpcy5maWxlICYmICF0aGlzLmVycm9ycyAmJiAhdGhpcy5pc01pc3NlZE1pblNpemUpO1xuICB9XG5cbiAgLy9TaG93IHN1Y2Nlc3MgZWxlbWVudHNcbiAgc2hvd1N1Y2Nlc3MoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMuZmlsZSAmJiB0aGlzLnVwbG9hZFByb2dyZXNzID09PSAxMDAgJiYgIXRoaXMuZXJyb3JzICYmICF0aGlzLmlzTWlzc2VkTWluU2l6ZSk7XG4gIH1cblxuICAvL1Nob3cgYnJvd3NlIHdoZW4gdGhlcmUgYXJlIGVycm9yXG4gIHNob3dCcm93c2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMuZXJyb3JzIHx8IHRoaXMuaXNNaXNzZWRNaW5TaXplKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIXRoaXMuaXNDYW5jZWxlZCkge1xuICAgICAgaWYgKGNoYW5nZXNbJ3VwbG9hZFByb2dyZXNzJ10gfHwgY2hhbmdlc1snZmlsZSddKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLnNob3dQcm9ncmVzcygpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3MgPSB0aGlzLnNob3dTdWNjZXNzKCk7XG4gICAgICAgIHRoaXMuYnJvd3NlID0gdGhpcy5zaG93QnJvd3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snZXJyb3JzJ10pIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzcyA9IHRoaXMuc2hvd1Byb2dyZXNzKCk7XG4gICAgICAgIHRoaXMuc3VjY2VzcyA9IHRoaXMuc2hvd1N1Y2Nlc3MoKTtcbiAgICAgICAgdGhpcy5icm93c2UgPSB0aGlzLnNob3dCcm93c2UoKTtcbiAgICAgIH1cbiAgICAgIGlmIChjaGFuZ2VzWydhcHBsaWNhdGlvblRoZW1lJ10pIHtcbiAgICAgICAgdGhpcy5jb21wQ29sb3IgPSB0aGlzLmdldENvbXBhbnlDb2xvcigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU/OiBGaWxlKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmZpbGUgPSB2YWx1ZSB8fCBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbGUgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb21wYW55Q29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb21wYW55Q29sb3IgfHwgKHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnID8gJyM0NkE5OTcnIDogJyNENDEwQUEnKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsZVNpemVUb01CKGZpbGVTaXplOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBmaWxlU2l6ZSAvIDEwMjQgLyAxMDI0O1xuICB9XG5cbiAgb25LZXlkb3duKGV2OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2LmtleSA9PT0gJ0VudGVyJyB8fCBldi5rZXkgPT09ICcgJykge1xuICAgICAgdGhpcy5maWxlRHJvcC5uYXRpdmVFbGVtZW50LmNsaWNrKClcbiAgICB9IGVsc2UgaWYgIChldi5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmZpbGUgPSBudWxsO1xuICAgICAgdGhpcy5zdWNjZXNzID0gZmFsc2U7XG4gICAgICB0aGlzLnByb2dyZXNzID0gZmFsc2U7XG4gICAgICB0aGlzLmVycm9ycyA9IG51bGw7XG4gICAgICB0aGlzLmlzTWlzc2VkTWluU2l6ZSA9IGZhbHNlO1xuICAgICAgdGhpcy5icm93c2UgPSB0cnVlO1xuICAgICAgdGhpcy5pc0NhbmNlbGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInVwbG9hZC1maWxlLWNvbnRhaW5lclwiXG4gICAgdWlEcmFnRHJvcFxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cImFyaWFSZXF1aXJlZFwiXG4gICAgW2F0dHIudGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgW25nQ2xhc3NdPVwieyAndXBsb2FkLWVycm9ycyc6ICEhZXJyb3JzIHx8IGlzTWlzc2VkTWluU2l6ZSwgJ3VwbG9hZC1maWxlLWNvbnRhaW5lci1kaXNhYmxlZCc6IGRpc2FibGVkIH1cIlxuICAgIChmaWxlRHJvcHBlZCk9XCJvbkZpbGVEcm9wcGVkKCRldmVudClcIlxuICAgIFt0YWJJbmRleF09XCIwXCJcbiAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgKGNsaWNrKT1cImZpbGVEcm9wLm5hdGl2ZUVsZW1lbnQuY2xpY2soKVwiXG4gID5cbiAgICA8c3BhbiBzdHlsZT1cInBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTlweDtcIiBbYXR0ci5hcmlhLWxpdmVdPVwiJ3BvbGl0ZSdcIj5cbiAgICAgIHt7IHN1Y2Nlc3MgPyAoJ0ZJTEVfVVBMT0FELkZJTEVfVVBMT0FESU5HX1NVQ0NFU1MnIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSkgOiBwcm9ncmVzcyA/ICgnRklMRV9VUExPQUQuVVBMT0FESU5HJyB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UpIDogJycgfX1cbiAgICA8L3NwYW4+XG4gICAgPGRpdiAqbmdJZj1cIihicm93c2UgJiYgIShzdWNjZXNzICYmICEhZmlsZSAmJiBwcm9ncmVzcykpXCIgW0Bpbk91dEFuaW1hdGlvbl0gY2xhc3M9XCJ1cGxvYWQtZmlsZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtYnJvd3NlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvblRwbFwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvcnNcIiAqbmdJZj1cIiEhZXJyb3JzIHx8IGlzTWlzc2VkTWluU2l6ZVwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhIWVycm9yc1wiPlxuICAgICAgICAgICAgPHNwYW4gKm5nRm9yPVwibGV0IGVycm9yIG9mIGVycm9yc1wiPjx1aS1pY29uIG5hbWU9XCJFcnJvclwiIGNsYXNzPVwiZXJyb3ItaWNvblwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgICAge3sgZXJyb3IgfX08L3NwYW4+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cImlzTWlzc2VkTWluU2l6ZVwiPlxuICAgICAgICAgICAgPHVpLWljb24gbmFtZT1cIkVycm9yXCIgY2xhc3M9XCJlcnJvci1pY29uXCI+PC91aS1pY29uPlxuICAgICAgICAgICAge3sgdHJhbnNsYXRpb25Db250ZXh0ICsgJ01JTl9TSVpFX0VSUk9SJyB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgOiB7IG1pbjogbWluRmlsZVNpemVNQiB9IH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cInN1Y2Nlc3MgfHwgcHJvZ3Jlc3MgPyAnJyA6ICdkcmFnLWFuZC1kcm9wJ1wiXG4gICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCIndXBsb2FkLXN1cHBvcnRlZC1maWxlcydcIlxuICAgICAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICNmaWxlRHJvcFxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBpZD1cImZpbGVcIlxuICAgICAgICAgIFthY2NlcHRdPVwic3VwcG9ydGVkRmlsZVR5cGVzXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2VVcGxvYWQoJGV2ZW50KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJmaWxlXCIgY2xhc3M9XCJ0cmFuc3BhcmVudFwiPnt7ICEhZmlsZSAmJiBzdWNjZXNzID8gJycgOiAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0NIT09TRV9GSUxFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9sYWJlbD5cbiAgICAgICAgPHBcbiAgICAgICAgICAqbmdJZj1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJzsgZWxzZSByZWJyYW5kZWREbkRDb3B5VHBsXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdEUkFHX0FORF9EUk9QX09SJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZW1pYm9sZFwiPiB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0JST1dTRScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSAgIHwgbG93ZXJjYXNlIH19PC9zcGFuPiB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1lPVVJfRklMRVMnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX1cbiAgICAgICAgPC9wPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInVwbG9hZC10ZXh0XCI+e3sgbWF4RmlsZVNpemVNQiB9fXt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnTUFYX1NJWkUnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWluRmlsZVNpemVNQlwiIGNsYXNzPVwidXBsb2FkLXRleHRcIj57eyBtaW5GaWxlU2l6ZU1CIH19e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdNSU5fU0laRScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtY2hhbmdlXCIgW0Bpbk91dEFuaW1hdGlvbkNoYW5nZV0gKm5nSWY9XCIhIXN1Y2Nlc3MgJiYgISFmaWxlICYmICEhcHJvZ3Jlc3NcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvblRwbFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPGlucHV0XG4gICAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnZHJhZy1hbmQtZHJvcCdcIlxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cInN1Y2Nlc3MgfHwgcHJvZ3Jlc3MgPyAnJyA6ICdzdXBwb3J0ZWQtZmlsZS10eXBlcydcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICNmaWxlRHJvcFxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIGlkPVwiZmlsZVRlc3RcIlxuICAgICAgICBbYWNjZXB0XT1cInN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2VVcGxvYWQoJGV2ZW50KVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAvPlxuICAgICAgPGxhYmVsIGZvcj1cImZpbGVcIiBjbGFzcz1cInRyYW5zcGFyZW50XCI+e3sgISFmaWxlICYmIHN1Y2Nlc3MgPyAnJyA6ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnQ0hPT1NFX0ZJTEUnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX08L2xhYmVsPlxuICAgICAgPHBcbiAgICAgICAgKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkRG5EQ29weVRwbFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUF9PUicpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fSZuYnNwOzxzcGFuXG4gICAgICAgIGNsYXNzPVwic2VtaWJvbGRcIj57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0NIQU5HRScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB8IGxvd2VyY2FzZSB9fTwvc3Bhbj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdZT1VSX0ZJTEVTJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19XG4gICAgICA8L3A+XG4gICAgICA8c3BhbiBjbGFzcz1cInVwbG9hZC10ZXh0XCJcbiAgICAgID48c3Ryb25nPnt7IGZpbGUubmFtZSB9fTwvc3Ryb25nPjwvc3BhblxuICAgICAgPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtcHJvZ3Jlc3NcIiBbQGluT3V0QW5pbWF0aW9uUHJvZ3Jlc3NdICpuZ0lmPVwiISFwcm9ncmVzcyAmJiAhIWZpbGUgJiYgIXN1Y2Nlc3NcIj5cbiAgICAgIDxwPnt7IGZpbGUubmFtZSB9fTwvcD5cbiAgICAgIDx1aS1wcm9ncmVzcy1iYXIgW3Byb2dyZXNzXT1cInVwbG9hZFByb2dyZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbXBhbnlDb2xvcl09XCJjb21wQ29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCI+PC91aS1wcm9ncmVzcy1iYXI+XG4gICAgICA8cCBjbGFzcz1cInVwbG9hZC10ZXh0XCI+XG4gICAgICAgIHt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnVVBMT0FESU5HJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19IDxzcGFuPnt7IHVwbG9hZFByb2dyZXNzIH19PC9zcGFuXG4gICAgICA+JVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLXRlbXBsYXRlICNpY29uVHBsPlxuICAgICAgPHVpLWljb24gKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkSWNvblRwbFwiIGNsYXNzPVwidXBsb2FkLWljb25cIlxuICAgICAgICAgICAgICAgbmFtZT1cIkZpbGUtdXBsb2FkXCI+PC91aS1pY29uPlxuICAgICAgPG5nLXRlbXBsYXRlICNyZWJyYW5kZWRJY29uVHBsPlxuICAgICAgICA8dWktaWNvbiBjbGFzcz1cInVwbG9hZC1pY29uXCJcbiAgICAgICAgICAgICAgICAgbmFtZT1cIlVwbG9hZFwiXG4gICAgICAgICAgICAgICAgIFtzaXplXT1cIicyNCdcIlxuICAgICAgICAgICAgICAgICBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCI+PC91aS1pY29uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjcmVicmFuZGVkRG5EQ29weVRwbD5cbiAgICAgIDxwIGlkPVwiJ2RyYWctYW5kLWRyb3AnXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdEUkFHX0FORF9EUk9QJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9wPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIiEhc3VwcG9ydGVkRmlsZVR5cGVzXCJcbiAgICAgIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgY2xhc3M9XCJ1cGxvYWQtc3VwcG9ydGVkLWZpbGVzXCJcbiAgICAgIGlkPVwidXBsb2FkLXN1cHBvcnRlZC1maWxlc1wiPlxuICAgICAgPHNwYW4gPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnU1VQUE9SVEVEX0ZJTEVfVFlQRVMnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX08L3NwYW4+e3sgc3VwcG9ydGVkRmlsZVR5cGVzIH19XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
303
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUU1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7O0FBaUQ3RCxNQUFNLE9BQU8sbUJBQW1CO0lBOEg5QixZQUM2RSxlQUFpQyxFQUNyRCxPQUFpQjtRQURHLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUNyRCxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBL0gzRCxVQUFLLEdBQUcsZ0JBQWdCLENBQUM7UUF3Q3hDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQjs7Ozs7V0FLRztRQUNNLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRWxDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLGVBQWUsQ0FBQyxlQUFlLENB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ZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7NkJBQ2pFLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Z0NBQ3RDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDMUQsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIOzswQkFpSUUsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7OzBCQUN2RCxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGNBQWM7eUNBL0hyQixLQUFLO3NCQUFuQixXQUFXO2dCQU9ILGFBQWE7c0JBQXJCLEtBQUs7Z0JBT0csYUFBYTtzQkFBckIsS0FBSztnQkFRRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBUUcsY0FBYztzQkFBdEIsS0FBSztnQkFRRyxNQUFNO3NCQUFkLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFRRyxJQUFJO3NCQUFaLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFTRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdOLFNBQVM7c0JBRFIsV0FBVzt1QkFBQyxlQUFlO2dCQVVuQixnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBUUcsU0FBUztzQkFBakIsS0FBSztnQkFRRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFFZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbiAgT3B0aW9uYWwsXG4gIEluamVjdCxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvbG9jYWxpemF0aW9uL2xhbmd1YWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gJy4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbCc7XG5pbXBvcnQgeyBDQU5PUFlfVUlfTEFORyB9IGZyb20gJy4uLy4uL3Rva2Vucy9hcHAtbGFuZy50b2tlbic7XG5pbXBvcnQgeyBMYW5ndWFnZSB9IGZyb20gJy4uLy4uL3V0aWxzL2xvY2FsaXphdGlvbi9sYW5ndWFnZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWxlVXBsb2FkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignaW5PdXRBbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvblByb2dyZXNzJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSlcbiAgICAgIF0pXG4gICAgXSksXG4gICAgdHJpZ2dlcignaW5PdXRBbmltYXRpb25DaGFuZ2UnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASG9zdEJpbmRpbmcoKSBjbGFzcyA9ICd1aS1maWxlLXVwbG9hZCc7XG5cbiAgLyoqXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtYXhGaWxlU2l6ZU1COiBudW1iZXI7XG5cbiAgLyoqXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtaW5GaWxlU2l6ZU1COiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRlZCBmaWxlcyBmb3IgaW5wdXQgZmllbGRcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHN1cHBvcnRlZEZpbGVUeXBlcz86IHN0cmluZztcblxuICAvKipcbiAgICogVXBsb2FkIHByb2dyZXNzXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB1cGxvYWRQcm9ncmVzczogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGaWxlIHVwbG9hZCBlcnJvcnNcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ1tdfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZXJyb3JzPzogc3RyaW5nW10gfCBudWxsO1xuXG4gIC8qKlxuICAgKiBGaWxlIHVwbG9hZCBkaXNhYmxlZFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEV4aXN0aW5nIGZpbGUgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQHR5cGUgeyhGaWxlIHwgbnVsbCl9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBmaWxlOiBGaWxlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBsYW5ndWFnZSB0byBiZSB1c2VkXG4gICAqIEBwcm9wZXJ0eSBsYW5ndWFnZVxuICAgKiBAdHlwZSB7TGFuZ3VhZ2V9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBsYW5ndWFnZSA9IExhbmd1YWdlU2VydmljZS5kZWZhdWx0TGFuZ3VhZ2U7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBmaWxlIHVwbG9hZC5cbiAgICogRGVmYXVsdHMgdG8gVGVzdCBHb3JpbGxhIHByaW1hcnkgY29sb3IuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBjb21wYW55Q29sb3I6IHN0cmluZyB8IG51bGwgPSAnJztcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tY29sb3InKVxuICBjb21wQ29sb3I6IHN0cmluZztcblxuICAvKipcbiAgICpcbiAgICogRGVmaW5lcyB0aGUgYXBwbGljYXRpb24gdGhlbWVcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcHBsaWNhdGlvblRoZW1lOiBBcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIGxhYmVsIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGxhYmVsIGlzIHVzZWQgdG8gcHJvdmlkZSBhbiBhY2Nlc3NpYmxlIG5hbWUgZm9yIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYVJlcXVpcmVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIE9uRHJvcDogRXZlbnRFbWl0dGVyPEZpbGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVEcm9wJykgZmlsZURyb3A6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRyYW5zbGF0aW9uQ29udGV4dCA9ICdGSUxFX1VQTE9BRC4nO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHtcbiAgfTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25Ub3VjaCA9ICgpID0+IHtcbiAgfTtcblxuICBpc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgcHJvZ3Jlc3MgPSBmYWxzZTtcbiAgc3VjY2VzcyA9IGZhbHNlO1xuICBicm93c2U6IGJvb2xlYW47XG4gIGlzQ2FuY2VsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChDQU5PUFlfVUlfTEFORykgcHJvdGVjdGVkIHJlYWRvbmx5IGFwcExhbmc6IExhbmd1YWdlLFxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuXG4gICAgaWYgKGFwcExhbmcpIHtcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBhcHBMYW5nO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgfVxuXG4gIC8vV2hlbiBmaWxlIGlzIGRyb3BwZWRcbiAgb25GaWxlRHJvcHBlZChmaWxlczogRmlsZUxpc3QpIHtcbiAgICB0aGlzLmVtaXRGaWxlKGZpbGVzKTtcbiAgfVxuXG4gIC8vV2hlbiBpbnB1dCBjaGFuZ2VzXG4gIG9uQ2hhbmdlVXBsb2FkKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuaXNDYW5jZWxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5lbWl0RmlsZShlbGVtZW50LmZpbGVzIHx8IG5ldyBGaWxlTGlzdCgpKTtcbiAgfVxuXG4gIC8vRW1pdCBkcm9wIGZpbGVcbiAgZW1pdEZpbGUoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgY29uc3QgW2ZpbGVdID0gQXJyYXkuZnJvbShmaWxlcyk7XG4gICAgdGhpcy5maWxlID0gZmlsZTtcbiAgICB0aGlzLmVycm9ycyA9IG51bGw7XG4gICAgdGhpcy5vblRvdWNoKCk7XG4gICAgdGhpcy5pc01pc3NlZE1pblNpemUgPVxuICAgICAgIWZpbGU/LnNpemUgJiYgIXRoaXMubWluRmlsZVNpemVNQiA/IHRydWUgOiB0aGlzLmZpbGVTaXplVG9NQihmaWxlPy5zaXplID8/IDApIDw9IHRoaXMubWluRmlsZVNpemVNQjtcbiAgICBpZiAoIXRoaXMuaXNNaXNzZWRNaW5TaXplKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZSk7XG4gICAgICB0aGlzLk9uRHJvcC5lbWl0KGZpbGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vU2hvdyBwcm9ncmVzcy1iYXJcbiAgc2hvd1Byb2dyZXNzKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuYnJvd3NlID0gZmFsc2U7XG4gICAgcmV0dXJuICEhKHRoaXMuZmlsZSAmJiAhdGhpcy5lcnJvcnMgJiYgIXRoaXMuaXNNaXNzZWRNaW5TaXplKTtcbiAgfVxuXG4gIC8vU2hvdyBzdWNjZXNzIGVsZW1lbnRzXG4gIHNob3dTdWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmZpbGUgJiYgdGhpcy51cGxvYWRQcm9ncmVzcyA9PT0gMTAwICYmICF0aGlzLmVycm9ycyAmJiAhdGhpcy5pc01pc3NlZE1pblNpemUpO1xuICB9XG5cbiAgLy9TaG93IGJyb3dzZSB3aGVuIHRoZXJlIGFyZSBlcnJvclxuICBzaG93QnJvd3NlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmVycm9ycyB8fCB0aGlzLmlzTWlzc2VkTWluU2l6ZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCF0aGlzLmlzQ2FuY2VsZWQpIHtcbiAgICAgIGlmIChjaGFuZ2VzWyd1cGxvYWRQcm9ncmVzcyddIHx8IGNoYW5nZXNbJ2ZpbGUnXSkge1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5zaG93UHJvZ3Jlc3MoKTtcbiAgICAgICAgdGhpcy5zdWNjZXNzID0gdGhpcy5zaG93U3VjY2VzcygpO1xuICAgICAgICB0aGlzLmJyb3dzZSA9IHRoaXMuc2hvd0Jyb3dzZSgpO1xuICAgICAgfVxuICAgICAgaWYgKGNoYW5nZXNbJ2Vycm9ycyddKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLnNob3dQcm9ncmVzcygpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3MgPSB0aGlzLnNob3dTdWNjZXNzKCk7XG4gICAgICAgIHRoaXMuYnJvd3NlID0gdGhpcy5zaG93QnJvd3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICAgIHRoaXMuY29tcENvbG9yID0gdGhpcy5nZXRDb21wYW55Q29sb3IoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogRmlsZSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5maWxlID0gdmFsdWUgfHwgbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcGFueUNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFueUNvbG9yIHx8ICh0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICcjNDZBOTk3JyA6ICcjRDQxMEFBJyk7XG4gIH1cblxuICBwcml2YXRlIGZpbGVTaXplVG9NQihmaWxlU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZmlsZVNpemUgLyAxMDI0IC8gMTAyNDtcbiAgfVxuXG4gIG9uS2V5ZG93bihldjogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldi5rZXkgPT09ICdFbnRlcicgfHwgZXYua2V5ID09PSAnICcpIHtcbiAgICAgIHRoaXMuZmlsZURyb3AubmF0aXZlRWxlbWVudC5jbGljaygpXG4gICAgfSBlbHNlIGlmICAoZXYua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICAgIHRoaXMuc3VjY2VzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5wcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5lcnJvcnMgPSBudWxsO1xuICAgICAgdGhpcy5pc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXNDYW5jZWxlZCA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ1cGxvYWQtZmlsZS1jb250YWluZXJcIlxuICAgIHVpRHJhZ0Ryb3BcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJhcmlhUmVxdWlyZWRcIlxuICAgIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3VwbG9hZC1lcnJvcnMnOiAhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemUsICd1cGxvYWQtZmlsZS1jb250YWluZXItZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcbiAgICAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcHBlZCgkZXZlbnQpXCJcbiAgICBbdGFiSW5kZXhdPVwiMFwiXG4gICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxuICAgIChjbGljayk9XCJmaWxlRHJvcC5uYXRpdmVFbGVtZW50LmNsaWNrKClcIlxuICA+XG4gICAgPHNwYW4gc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7XCIgW2F0dHIuYXJpYS1saXZlXT1cIidwb2xpdGUnXCI+XG4gICAgICB7eyBzdWNjZXNzID8gKCdGSUxFX1VQTE9BRC5GSUxFX1VQTE9BRElOR19TVUNDRVNTJyB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UpIDogcHJvZ3Jlc3MgPyAoJ0ZJTEVfVVBMT0FELlVQTE9BRElORycgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlKSA6ICcnIH19XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCIoYnJvd3NlICYmICEoc3VjY2VzcyAmJiAhIWZpbGUgJiYgcHJvZ3Jlc3MpKVwiIFtAaW5PdXRBbmltYXRpb25dIGNsYXNzPVwidXBsb2FkLWZpbGVzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWJyb3dzZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nSWY9XCIhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemVcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISFlcnJvcnNcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj48dWktaWNvbiBuYW1lPVwiRXJyb3JcIiBjbGFzcz1cImVycm9yLWljb25cIj48L3VpLWljb24+XG4gICAgICAgICAgICAgIHt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc01pc3NlZE1pblNpemVcIj5cbiAgICAgICAgICAgIDx1aS1pY29uIG5hbWU9XCJFcnJvclwiIGNsYXNzPVwiZXJyb3ItaWNvblwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9uQ29udGV4dCArICdNSU5fU0laRV9FUlJPUicgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIDogeyBtaW46IG1pbkZpbGVTaXplTUIgfSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnZHJhZy1hbmQtZHJvcCdcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ3VwbG9hZC1zdXBwb3J0ZWQtZmlsZXMnXCJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgaWQ9XCJmaWxlXCJcbiAgICAgICAgICBbYWNjZXB0XT1cInN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fTwvbGFiZWw+XG4gICAgICAgIDxwXG4gICAgICAgICAgKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkRG5EQ29weVRwbFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUF9PUicpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwic2VtaWJvbGRcIj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdCUk9XU0UnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgICB8IGxvd2VyY2FzZSB9fTwvc3Bhbj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdZT1VSX0ZJTEVTJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPnt7IG1heEZpbGVTaXplTUIgfX17eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ01BWF9TSVpFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIm1pbkZpbGVTaXplTUJcIiBjbGFzcz1cInVwbG9hZC10ZXh0XCI+e3sgbWluRmlsZVNpemVNQiB9fXt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnTUlOX1NJWkUnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWNoYW5nZVwiIFtAaW5PdXRBbmltYXRpb25DaGFuZ2VdICpuZ0lmPVwiISFzdWNjZXNzICYmICEhZmlsZSAmJiAhIXByb2dyZXNzXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwic3VjY2VzcyB8fCBwcm9ncmVzcyA/ICcnIDogJ2RyYWctYW5kLWRyb3AnXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnc3VwcG9ydGVkLWZpbGUtdHlwZXMnXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICBpZD1cImZpbGVUZXN0XCJcbiAgICAgICAgW2FjY2VwdF09XCJzdXBwb3J0ZWRGaWxlVHlwZXNcIlxuICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgLz5cbiAgICAgIDxsYWJlbCBmb3I9XCJmaWxlXCIgY2xhc3M9XCJ0cmFuc3BhcmVudFwiPnt7ICEhZmlsZSAmJiBzdWNjZXNzID8gJycgOiAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0NIT09TRV9GSUxFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9sYWJlbD5cbiAgICAgIDxwXG4gICAgICAgICpuZ0lmPVwiYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnOyBlbHNlIHJlYnJhbmRlZERuRENvcHlUcGxcIj57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0RSQUdfQU5EX0RST1BfT1InKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX0mbmJzcDs8c3BhblxuICAgICAgICBjbGFzcz1cInNlbWlib2xkXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSEFOR0UnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfCBsb3dlcmNhc2UgfX08L3NwYW4+IHt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnWU9VUl9GSUxFUycpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fVxuICAgICAgPC9wPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtdGV4dFwiXG4gICAgICA+PHN0cm9uZz57eyBmaWxlLm5hbWUgfX08L3N0cm9uZz48L3NwYW5cbiAgICAgID5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXByb2dyZXNzXCIgW0Bpbk91dEFuaW1hdGlvblByb2dyZXNzXSAqbmdJZj1cIiEhcHJvZ3Jlc3MgJiYgISFmaWxlICYmICFzdWNjZXNzXCI+XG4gICAgICA8cD57eyBmaWxlLm5hbWUgfX08L3A+XG4gICAgICA8dWktcHJvZ3Jlc3MtYmFyIFtwcm9ncmVzc109XCJ1cGxvYWRQcm9ncmVzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgIFtjb21wYW55Q29sb3JdPVwiY29tcENvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiPjwvdWktcHJvZ3Jlc3MtYmFyPlxuICAgICAgPHAgY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPlxuICAgICAgICB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1VQTE9BRElORycpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fSA8c3Bhbj57eyB1cGxvYWRQcm9ncmVzcyB9fTwvc3BhblxuICAgICAgPiVcbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjaWNvblRwbD5cbiAgICAgIDx1aS1pY29uICpuZ0lmPVwiYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnOyBlbHNlIHJlYnJhbmRlZEljb25UcGxcIiBjbGFzcz1cInVwbG9hZC1pY29uXCJcbiAgICAgICAgICAgICAgIG5hbWU9XCJGaWxlLXVwbG9hZFwiPjwvdWktaWNvbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjcmVicmFuZGVkSWNvblRwbD5cbiAgICAgICAgPHVpLWljb24gY2xhc3M9XCJ1cGxvYWQtaWNvblwiXG4gICAgICAgICAgICAgICAgIG5hbWU9XCJVcGxvYWRcIlxuICAgICAgICAgICAgICAgICBbc2l6ZV09XCInMjQnXCJcbiAgICAgICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiPjwvdWktaWNvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3JlYnJhbmRlZERuRENvcHlUcGw+XG4gICAgICA8cCBpZD1cIidkcmFnLWFuZC1kcm9wJ1wiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUCcpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fTwvcD5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIhIXN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICBbYXR0ci50aGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgICAgIGNsYXNzPVwidXBsb2FkLXN1cHBvcnRlZC1maWxlc1wiXG4gICAgICBpZD1cInVwbG9hZC1zdXBwb3J0ZWQtZmlsZXNcIj5cbiAgICAgIDxzcGFuID57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1NVUFBPUlRFRF9GSUxFX1RZUEVTJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9zcGFuPnt7IHN1cHBvcnRlZEZpbGVUeXBlcyB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -45,6 +45,7 @@ export class IconComponent {
45
45
  * @memberof IconComponent
46
46
  */
47
47
  this.applicationTheme = 'light';
48
+ this.useFullIconName = true;
48
49
  if (defaultAppTheme) {
49
50
  this.applicationTheme = defaultAppTheme;
50
51
  }
@@ -68,23 +69,32 @@ export class IconComponent {
68
69
  //Add icon to matIcon registry
69
70
  addIcon() {
70
71
  let filename;
71
- if (this.filled || this.name?.includes('filled')) {
72
- this._name = this.name.replace(/-in-line/, '');
73
- filename =
74
- this.applicationTheme === 'classic'
75
- ? tgoIcons.find(icon => icon === this.filledIconName)
76
- : tgoRebrandIcons.find(icon => icon === this.filledIconName);
72
+ if (!this.useFullIconName) {
73
+ if (this.filled || this.name?.includes('filled')) {
74
+ this._name = this.name.replace(/-in-line/, '');
75
+ filename =
76
+ this.applicationTheme === 'classic'
77
+ ? tgoIcons.find(icon => icon === this.filledIconName)
78
+ : tgoRebrandIcons.find(icon => icon === this.filledIconName);
79
+ }
80
+ else {
81
+ filename =
82
+ this.applicationTheme === 'classic'
83
+ ? this.name?.replace(/-filled|-in-line/, '')
84
+ : this.inlineIconFileName;
85
+ }
86
+ if (!filename) {
87
+ filename = tgoIcons.find(icon => icon === this._name);
88
+ }
89
+ this._name = filename;
77
90
  }
78
91
  else {
79
- filename =
80
- this.applicationTheme === 'classic'
81
- ? this.name?.replace(/-filled|-in-line/, '')
82
- : this.inlineIconFileName;
92
+ if (!this.name.includes('-in-line') && !this.name.includes('filled') && this.applicationTheme !== 'classic') {
93
+ this.name = `${this.name}-in-line`;
94
+ }
95
+ this._name = this.name;
96
+ filename = this.name;
83
97
  }
84
- if (!filename) {
85
- filename = tgoIcons.find(icon => icon === this._name);
86
- }
87
- this._name = filename;
88
98
  const path = this.applicationTheme === 'classic' ? '/icons/' : '/icons/rebrand/';
89
99
  if (filename && !this.iconsService.isIconLoaded(filename)) {
90
100
  this.matIconRegistry.addSvgIcon(filename, this.domSanitzer.bypassSecurityTrustResourceUrl(`${path}${filename}.svg`));
@@ -104,7 +114,7 @@ export class IconComponent {
104
114
  return this.iconsService.isIconLoaded(this._name);
105
115
  }
106
116
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: IconComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: i1.MatIconRegistry }, { token: i2.DomSanitizer }, { token: i3.IconsService }], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.7", type: IconComponent, selector: "ui-icon", inputs: { size: "size", cssClass: "cssClass", name: "name", color: "color", filled: "filled", applicationTheme: "applicationTheme" }, host: { properties: { "style.--icon-size": "this.size" } }, usesOnChanges: true, ngImport: i0, template: "@if (isIconLoaded) {\n <mat-icon [svgIcon]=\"_name\" [attr.class]=\"customCssClass\"></mat-icon>\n} @else {\n <div class=\"empty-icon-placeholder\"></div>\n}\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}:host{width:calc(var(--icon-size) * 1px)!important;height:calc(var(--icon-size) * 1px)!important}.empty-icon-placeholder{width:calc(var(--icon-size) * 1px)!important;height:calc(var(--icon-size) * 1px)!important}mat-icon{display:flex}mat-icon.size-16 svg{width:16px;height:16px}mat-icon.size-24 svg{width:24px;height:24px}mat-icon.size-40 svg{width:40px;height:40px}mat-icon.size-80 svg{width:80px;height:80px}mat-icon.dark svg{color:#888}mat-icon.white svg{color:#fff}mat-icon.teal svg{color:#46a997}mat-icon.petrol svg{color:#276678}mat-icon.black svg{color:#000}mat-icon.red svg{color:#e02800}mat-icon.gray svg{color:#666}mat-icon.orange svg{color:#d07d00}mat-icon.rebrand-black svg{color:#242424}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.7", type: IconComponent, selector: "ui-icon", inputs: { size: "size", cssClass: "cssClass", name: "name", color: "color", filled: "filled", applicationTheme: "applicationTheme", useFullIconName: "useFullIconName" }, host: { properties: { "style.--icon-size": "this.size" } }, usesOnChanges: true, ngImport: i0, template: "@if (isIconLoaded) {\n <mat-icon [svgIcon]=\"_name\" [attr.class]=\"customCssClass\"></mat-icon>\n} @else {\n <div class=\"empty-icon-placeholder\"></div>\n}\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}:host{width:calc(var(--icon-size) * 1px)!important;height:calc(var(--icon-size) * 1px)!important}.empty-icon-placeholder{width:calc(var(--icon-size) * 1px)!important;height:calc(var(--icon-size) * 1px)!important}mat-icon{display:flex}mat-icon.size-16 svg{width:16px;height:16px}mat-icon.size-24 svg{width:24px;height:24px}mat-icon.size-40 svg{width:40px;height:40px}mat-icon.size-80 svg{width:80px;height:80px}mat-icon.dark svg{color:#888}mat-icon.white svg{color:#fff}mat-icon.teal svg{color:#46a997}mat-icon.petrol svg{color:#276678}mat-icon.black svg{color:#000}mat-icon.red svg{color:#e02800}mat-icon.gray svg{color:#666}mat-icon.orange svg{color:#d07d00}mat-icon.rebrand-black svg{color:#242424}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
108
118
  }
109
119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: IconComponent, decorators: [{
110
120
  type: Component,
@@ -129,5 +139,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
129
139
  type: Input
130
140
  }], applicationTheme: [{
131
141
  type: Input
142
+ }], useFullIconName: [{
143
+ type: Input
132
144
  }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFFTCxRQUFRLEVBRVIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVcxRCxNQUFNLE9BQU8sYUFBYTtJQXNEeEIsWUFDNkUsZUFBaUMsRUFDcEcsZUFBZ0MsRUFDaEMsV0FBeUIsRUFDekIsWUFBMEI7UUFIeUMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ3BHLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYztRQUN6QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQXpEcEM7Ozs7O1dBS0c7UUFFTSxTQUFJLEdBQWEsSUFBSSxDQUFDO1FBRS9COzs7O1dBSUc7UUFDTSxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBVXZCOzs7OztXQUtHO1FBQ00sVUFBSyxHQUFlLE9BQU8sQ0FBQztRQUVyQzs7Ozs7V0FLRztRQUNNLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFeEI7Ozs7OztXQU1HO1FBQ00scUJBQWdCLEdBQXFCLE9BQU8sQ0FBQztRQVlwRCxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzNDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUN4RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFRCx3QkFBd0I7SUFDeEIsV0FBVztRQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxTQUFTLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsT0FBTztRQUNMLElBQUksUUFBOEIsQ0FBQztRQUVuQyxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQWEsQ0FBQztZQUMzRCxRQUFRO2dCQUNOLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTO29CQUNqQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsY0FBYyxDQUFDO29CQUNyRCxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsQ0FBQzthQUFNLENBQUM7WUFDTixRQUFRO2dCQUNOLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTO29CQUNqQyxDQUFDLENBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFjO29CQUMxRCxDQUFDLENBQUUsSUFBSSxDQUFDLGtCQUErQixDQUFDO1FBQzlDLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBb0IsQ0FBQztRQUNsQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO1FBRWpGLElBQUksUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUMxRCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FDN0IsUUFBUSxFQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsOEJBQThCLENBQUMsR0FBRyxJQUFJLEdBQUcsUUFBUSxNQUFNLENBQUMsQ0FDMUUsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksU0FBUyxDQUFDO0lBQzNFLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUM7SUFDN0UsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUN0RyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQzs4R0FuSVUsYUFBYSxrQkF1REYsb0NBQW9DO2tHQXZEL0MsYUFBYSxzUUN2QjFCLG1LQUtBOzsyRkRrQmEsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxTQUFTLGlCQUdKLGlCQUFpQixDQUFDLElBQUk7OzBCQXlEbEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7NkhBL0NqRCxJQUFJO3NCQURaLFdBQVc7dUJBQUMsbUJBQW1COztzQkFDL0IsS0FBSztnQkFPRyxRQUFRO3NCQUFoQixLQUFLO2dCQVFHLElBQUk7c0JBQVosS0FBSztnQkFRRyxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsTUFBTTtzQkFBZCxLQUFLO2dCQVNHLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0SWNvblJlZ2lzdHJ5IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IHRnb0ljb25zLCB0Z29SZWJyYW5kSWNvbnMgfSBmcm9tICcuL2ljb24uY29uZmlnJztcbmltcG9ydCB7IEljb25Db2xvciwgSWNvbk5hbWUsIEljb25TaXplIH0gZnJvbSAnLi9pY29uLm1vZGVsJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVGhlbWUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWwnO1xuaW1wb3J0IHsgSWNvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaWNvbnMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWljb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ljb24uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBJY29uIHNpemVcbiAgICpcbiAgICogQHR5cGUge0ljb25TaXplfVxuICAgKiBAbWVtYmVyb2YgSWNvbkNvbXBvbmVudFxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLWljb24tc2l6ZScpXG4gIEBJbnB1dCgpIHNpemU6IEljb25TaXplID0gJzE2JztcblxuICAvKipcbiAgICogSWNvbiBjc3MgY2xhc3NcbiAgICpcbiAgICogQG1lbWJlcm9mIEljb25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGNzc0NsYXNzID0gJyc7XG5cbiAgLyoqXG4gICAqIEljb24gbmFtZVxuICAgKlxuICAgKiBAdHlwZSB7SWNvbk5hbWV9XG4gICAqIEBtZW1iZXJvZiBJY29uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBuYW1lOiBJY29uTmFtZTtcblxuICAvKipcbiAgICogSWNvbiBjb2xvclxuICAgKlxuICAgKiBAdHlwZSB7SWNvbkNvbG9yfVxuICAgKiBAbWVtYmVyb2YgSWNvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgY29sb3I/OiBJY29uQ29sb3IgPSAnYmxhY2snO1xuXG4gIC8qKlxuICAgKiBJY29uIGZpbGxlZFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEljb25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGZpbGxlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIEljb25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIGN1c3RvbUNzc0NsYXNzOiBzdHJpbmc7XG4gIGZpbGVuYW1lOiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcbiAgX25hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgcHJpdmF0ZSBtYXRJY29uUmVnaXN0cnk6IE1hdEljb25SZWdpc3RyeSxcbiAgICBwcml2YXRlIGRvbVNhbml0emVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHJpdmF0ZSBpY29uc1NlcnZpY2U6IEljb25zU2VydmljZVxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jdXN0b21Dc3NDbGFzcyA9IHRoaXMuc2V0Q3NzQ2xhc3MoKTtcbiAgICB0aGlzLmFkZEljb24oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc2l6ZSddIHx8IGNoYW5nZXNbJ2Nzc0NsYXNzJ10gfHwgY2hhbmdlc1snY29sb3InXSApIHtcbiAgICAgIHRoaXMuY3VzdG9tQ3NzQ2xhc3MgPSB0aGlzLnNldENzc0NsYXNzKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWyduYW1lJ10gfHwgY2hhbmdlc1snZmlsbGVkJ10gfHwgY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICB0aGlzLmFkZEljb24oKTtcbiAgICB9XG4gIH1cblxuICAvL3NldCBjc3MgY2xhc3MgZm9yIHNpemVcbiAgc2V0Q3NzQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5jc3NDbGFzc30gc2l6ZS0ke3RoaXMuc2l6ZX0gJHt0aGlzLmNvbG9yfWA7XG4gIH1cblxuICAvL0FkZCBpY29uIHRvIG1hdEljb24gcmVnaXN0cnlcbiAgYWRkSWNvbigpIHtcbiAgICBsZXQgZmlsZW5hbWU6IEljb25OYW1lIHwgdW5kZWZpbmVkO1xuXG4gICAgaWYgKHRoaXMuZmlsbGVkIHx8IHRoaXMubmFtZT8uaW5jbHVkZXMoJ2ZpbGxlZCcpKSB7XG4gICAgICB0aGlzLl9uYW1lID0gdGhpcy5uYW1lLnJlcGxhY2UoLy1pbi1saW5lLywgJycpIGFzIEljb25OYW1lO1xuICAgICAgZmlsZW5hbWUgPVxuICAgICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJ1xuICAgICAgICAgID8gdGdvSWNvbnMuZmluZChpY29uID0+IGljb24gPT09IHRoaXMuZmlsbGVkSWNvbk5hbWUpXG4gICAgICAgICAgOiB0Z29SZWJyYW5kSWNvbnMuZmluZChpY29uID0+IGljb24gPT09IHRoaXMuZmlsbGVkSWNvbk5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmaWxlbmFtZSA9XG4gICAgICAgIHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnXG4gICAgICAgICAgPyAodGhpcy5uYW1lPy5yZXBsYWNlKC8tZmlsbGVkfC1pbi1saW5lLywgJycpIGFzIEljb25OYW1lKVxuICAgICAgICAgIDogKHRoaXMuaW5saW5lSWNvbkZpbGVOYW1lIGFzIEljb25OYW1lKTtcbiAgICB9XG5cbiAgICBpZiAoIWZpbGVuYW1lKSB7XG4gICAgICBmaWxlbmFtZSA9IHRnb0ljb25zLmZpbmQoaWNvbiA9PiBpY29uID09PSB0aGlzLl9uYW1lKTtcbiAgICB9XG5cbiAgICB0aGlzLl9uYW1lID0gZmlsZW5hbWUgYXMgSWNvbk5hbWU7XG4gICAgY29uc3QgcGF0aCA9IHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnID8gJy9pY29ucy8nIDogJy9pY29ucy9yZWJyYW5kLyc7XG5cbiAgICBpZiAoZmlsZW5hbWUgJiYgIXRoaXMuaWNvbnNTZXJ2aWNlLmlzSWNvbkxvYWRlZChmaWxlbmFtZSkpIHtcbiAgICAgIHRoaXMubWF0SWNvblJlZ2lzdHJ5LmFkZFN2Z0ljb24oXG4gICAgICAgIGZpbGVuYW1lLFxuICAgICAgICB0aGlzLmRvbVNhbml0emVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChgJHtwYXRofSR7ZmlsZW5hbWV9LnN2Z2ApXG4gICAgICApO1xuICAgICAgdGhpcy5pY29uc1NlcnZpY2UuYWRkSWNvbihmaWxlbmFtZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGZpbGxlZEljb25OYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU/LmluY2x1ZGVzKCdmaWxsZWQnKSA/IHRoaXMubmFtZSA6IGAke3RoaXMubmFtZX0tZmlsbGVkYDtcbiAgfVxuXG4gIGdldCBpbmxpbmVJY29uTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lPy5pbmNsdWRlcygnaW4tbGluZScpID8gdGhpcy5uYW1lIDogYCR7dGhpcy5uYW1lfS1pbi1saW5lYDtcbiAgfVxuXG4gIGdldCBpbmxpbmVJY29uRmlsZU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZT8uaW5jbHVkZXMoJ2ZpbGxlZCcpID8gdGhpcy5uYW1lLnJlcGxhY2UoJ2ZpbGxlZCcsICdpbi1saW5lJykgOiB0aGlzLmlubGluZUljb25OYW1lO1xuICB9XG5cbiAgZ2V0IGlzSWNvbkxvYWRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pY29uc1NlcnZpY2UuaXNJY29uTG9hZGVkKHRoaXMuX25hbWUpO1xuICB9XG59XG4iLCJAaWYgKGlzSWNvbkxvYWRlZCkge1xuICA8bWF0LWljb24gW3N2Z0ljb25dPVwiX25hbWVcIiBbYXR0ci5jbGFzc109XCJjdXN0b21Dc3NDbGFzc1wiPjwvbWF0LWljb24+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cImVtcHR5LWljb24tcGxhY2Vob2xkZXJcIj48L2Rpdj5cbn1cbiJdfQ==
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFFTCxRQUFRLEVBRVIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVcxRCxNQUFNLE9BQU8sYUFBYTtJQXlEeEIsWUFDNkUsZUFBaUMsRUFDcEcsZUFBZ0MsRUFDaEMsV0FBeUIsRUFDekIsWUFBMEI7UUFIeUMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ3BHLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYztRQUN6QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQTVEcEM7Ozs7O1dBS0c7UUFFTSxTQUFJLEdBQWEsSUFBSSxDQUFDO1FBRS9COzs7O1dBSUc7UUFDTSxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBVXZCOzs7OztXQUtHO1FBQ00sVUFBSyxHQUFlLE9BQU8sQ0FBQztRQUVyQzs7Ozs7V0FLRztRQUNNLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFeEI7Ozs7OztXQU1HO1FBQ00scUJBQWdCLEdBQXFCLE9BQU8sQ0FBQztRQUc3QyxvQkFBZSxHQUFHLElBQUksQ0FBQztRQVk5QixJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFR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QUFTLGlCQUdKLGlCQUFpQixDQUFDLElBQUk7OzBCQTREbEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7NkhBbERqRCxJQUFJO3NCQURaLFdBQVc7dUJBQUMsbUJBQW1COztzQkFDL0IsS0FBSztnQkFPRyxRQUFRO3NCQUFoQixLQUFLO2dCQVFHLElBQUk7c0JBQVosS0FBSztnQkFRRyxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsTUFBTTtzQkFBZCxLQUFLO2dCQVNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uUmVnaXN0cnkgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgdGdvSWNvbnMsIHRnb1JlYnJhbmRJY29ucyB9IGZyb20gJy4vaWNvbi5jb25maWcnO1xuaW1wb3J0IHsgSWNvbkNvbG9yLCBJY29uTmFtZSwgSWNvblNpemUgfSBmcm9tICcuL2ljb24ubW9kZWwnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gJy4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbCc7XG5pbXBvcnQgeyBJY29uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pY29ucy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktaWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIEljb24gc2l6ZVxuICAgKlxuICAgKiBAdHlwZSB7SWNvblNpemV9XG4gICAqIEBtZW1iZXJvZiBJY29uQ29tcG9uZW50XG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0taWNvbi1zaXplJylcbiAgQElucHV0KCkgc2l6ZTogSWNvblNpemUgPSAnMTYnO1xuXG4gIC8qKlxuICAgKiBJY29uIGNzcyBjbGFzc1xuICAgKlxuICAgKiBAbWVtYmVyb2YgSWNvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgY3NzQ2xhc3MgPSAnJztcblxuICAvKipcbiAgICogSWNvbiBuYW1lXG4gICAqXG4gICAqIEB0eXBlIHtJY29uTmFtZX1cbiAgICogQG1lbWJlcm9mIEljb25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIG5hbWU6IEljb25OYW1lO1xuXG4gIC8qKlxuICAgKiBJY29uIGNvbG9yXG4gICAqXG4gICAqIEB0eXBlIHtJY29uQ29sb3J9XG4gICAqIEBtZW1iZXJvZiBJY29uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBjb2xvcj86IEljb25Db2xvciA9ICdibGFjayc7XG5cbiAgLyoqXG4gICAqIEljb24gZmlsbGVkXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgSWNvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZmlsbGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqXG4gICAqIERlZmluZXMgdGhlIGFwcGxpY2F0aW9uIHRoZW1lXG4gICAqXG4gICAqIEB0eXBlIHtBcHBsaWNhdGlvblRoZW1lfVxuICAgKiBAbWVtYmVyb2YgSWNvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXBwbGljYXRpb25UaGVtZTogQXBwbGljYXRpb25UaGVtZSA9ICdsaWdodCc7XG5cblxuICBASW5wdXQoKSB1c2VGdWxsSWNvbk5hbWUgPSB0cnVlO1xuXG4gIGN1c3RvbUNzc0NsYXNzOiBzdHJpbmc7XG4gIGZpbGVuYW1lOiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcbiAgX25hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgcHJpdmF0ZSBtYXRJY29uUmVnaXN0cnk6IE1hdEljb25SZWdpc3RyeSxcbiAgICBwcml2YXRlIGRvbVNhbml0emVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHJpdmF0ZSBpY29uc1NlcnZpY2U6IEljb25zU2VydmljZVxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jdXN0b21Dc3NDbGFzcyA9IHRoaXMuc2V0Q3NzQ2xhc3MoKTtcbiAgICB0aGlzLmFkZEljb24oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc2l6ZSddIHx8IGNoYW5nZXNbJ2Nzc0NsYXNzJ10gfHwgY2hhbmdlc1snY29sb3InXSApIHtcbiAgICAgIHRoaXMuY3VzdG9tQ3NzQ2xhc3MgPSB0aGlzLnNldENzc0NsYXNzKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWyduYW1lJ10gfHwgY2hhbmdlc1snZmlsbGVkJ10gfHwgY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICB0aGlzLmFkZEljb24oKTtcbiAgICB9XG4gIH1cblxuICAvL3NldCBjc3MgY2xhc3MgZm9yIHNpemVcbiAgc2V0Q3NzQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5jc3NDbGFzc30gc2l6ZS0ke3RoaXMuc2l6ZX0gJHt0aGlzLmNvbG9yfWA7XG4gIH1cblxuICAvL0FkZCBpY29uIHRvIG1hdEljb24gcmVnaXN0cnlcbiAgYWRkSWNvbigpIHtcbiAgICBsZXQgZmlsZW5hbWU6IEljb25OYW1lIHwgdW5kZWZpbmVkO1xuICAgIGlmICghdGhpcy51c2VGdWxsSWNvbk5hbWUpIHtcbiAgICAgIGlmICh0aGlzLmZpbGxlZCB8fCB0aGlzLm5hbWU/LmluY2x1ZGVzKCdmaWxsZWQnKSkge1xuICAgICAgICB0aGlzLl9uYW1lID0gdGhpcy5uYW1lLnJlcGxhY2UoLy1pbi1saW5lLywgJycpIGFzIEljb25OYW1lO1xuICAgICAgICBmaWxlbmFtZSA9XG4gICAgICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYydcbiAgICAgICAgICAgID8gdGdvSWNvbnMuZmluZChpY29uID0+IGljb24gPT09IHRoaXMuZmlsbGVkSWNvbk5hbWUpXG4gICAgICAgICAgICA6IHRnb1JlYnJhbmRJY29ucy5maW5kKGljb24gPT4gaWNvbiA9PT0gdGhpcy5maWxsZWRJY29uTmFtZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmaWxlbmFtZSA9XG4gICAgICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYydcbiAgICAgICAgICAgID8gKHRoaXMubmFtZT8ucmVwbGFjZSgvLWZpbGxlZHwtaW4tbGluZS8sICcnKSBhcyBJY29uTmFtZSlcbiAgICAgICAgICAgIDogKHRoaXMuaW5saW5lSWNvbkZpbGVOYW1lIGFzIEljb25OYW1lKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFmaWxlbmFtZSkge1xuICAgICAgICBmaWxlbmFtZSA9IHRnb0ljb25zLmZpbmQoaWNvbiA9PiBpY29uID09PSB0aGlzLl9uYW1lKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fbmFtZSA9IGZpbGVuYW1lIGFzIEljb25OYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoIXRoaXMubmFtZS5pbmNsdWRlcygnLWluLWxpbmUnKSAmJiAhdGhpcy5uYW1lLmluY2x1ZGVzKCdmaWxsZWQnKSAmJiB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgIT09ICdjbGFzc2ljJykge1xuICAgICAgICB0aGlzLm5hbWUgPSBgJHt0aGlzLm5hbWV9LWluLWxpbmVgIGFzIEljb25OYW1lO1xuICAgICAgfVxuICAgICAgdGhpcy5fbmFtZSA9IHRoaXMubmFtZTtcbiAgICAgIGZpbGVuYW1lID0gdGhpcy5uYW1lIGFzIEljb25OYW1lO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGggPSB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICcvaWNvbnMvJyA6ICcvaWNvbnMvcmVicmFuZC8nO1xuXG4gICAgaWYgKGZpbGVuYW1lICYmICF0aGlzLmljb25zU2VydmljZS5pc0ljb25Mb2FkZWQoZmlsZW5hbWUpKSB7XG4gICAgICB0aGlzLm1hdEljb25SZWdpc3RyeS5hZGRTdmdJY29uKFxuICAgICAgICBmaWxlbmFtZSxcbiAgICAgICAgdGhpcy5kb21TYW5pdHplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoYCR7cGF0aH0ke2ZpbGVuYW1lfS5zdmdgKVxuICAgICAgKTtcbiAgICAgIHRoaXMuaWNvbnNTZXJ2aWNlLmFkZEljb24oZmlsZW5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBmaWxsZWRJY29uTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lPy5pbmNsdWRlcygnZmlsbGVkJykgPyB0aGlzLm5hbWUgOiBgJHt0aGlzLm5hbWV9LWZpbGxlZGA7XG4gIH1cblxuICBnZXQgaW5saW5lSWNvbk5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZT8uaW5jbHVkZXMoJ2luLWxpbmUnKSA/IHRoaXMubmFtZSA6IGAke3RoaXMubmFtZX0taW4tbGluZWA7XG4gIH1cblxuICBnZXQgaW5saW5lSWNvbkZpbGVOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU/LmluY2x1ZGVzKCdmaWxsZWQnKSA/IHRoaXMubmFtZS5yZXBsYWNlKCdmaWxsZWQnLCAnaW4tbGluZScpIDogdGhpcy5pbmxpbmVJY29uTmFtZTtcbiAgfVxuXG4gIGdldCBpc0ljb25Mb2FkZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbnNTZXJ2aWNlLmlzSWNvbkxvYWRlZCh0aGlzLl9uYW1lKTtcbiAgfVxufVxuIiwiQGlmIChpc0ljb25Mb2FkZWQpIHtcbiAgPG1hdC1pY29uIFtzdmdJY29uXT1cIl9uYW1lXCIgW2F0dHIuY2xhc3NdPVwiY3VzdG9tQ3NzQ2xhc3NcIj48L21hdC1pY29uPlxufSBAZWxzZSB7XG4gIDxkaXYgY2xhc3M9XCJlbXB0eS1pY29uLXBsYWNlaG9sZGVyXCI+PC9kaXY+XG59XG4iXX0=
@@ -31,7 +31,7 @@ export class IconLabelComponent {
31
31
  }
32
32
  ngOnInit() { }
33
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: IconLabelComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: IconLabelComponent, selector: "ui-icon-label", inputs: { iconSize: "iconSize", iconName: "iconName", text: "text", applicationTheme: "applicationTheme" }, ngImport: i0, template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"], dependencies: [{ kind: "component", type: i1.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme"] }] }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: IconLabelComponent, selector: "ui-icon-label", inputs: { iconSize: "iconSize", iconName: "iconName", text: "text", applicationTheme: "applicationTheme" }, ngImport: i0, template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"], dependencies: [{ kind: "component", type: i1.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }] }); }
35
35
  }
36
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: IconLabelComponent, decorators: [{
37
37
  type: Component,