@alfresco/adf-core 8.1.0-15865093855 → 8.1.0-15928551305

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +5 -6
  2. package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +4 -5
  3. package/esm2022/lib/about/about-extension-list/about-extension-list.component.mjs +4 -5
  4. package/esm2022/lib/about/about-license-list/about-license-list.component.mjs +5 -6
  5. package/esm2022/lib/about/about-module-list/module-list.component.mjs +5 -6
  6. package/esm2022/lib/about/about-package/package-list.component.mjs +5 -6
  7. package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +4 -5
  8. package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +5 -6
  9. package/esm2022/lib/about/about-status-list/about-status-list.component.mjs +5 -6
  10. package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +8 -9
  11. package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +4 -5
  12. package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +9 -10
  13. package/esm2022/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +9 -10
  14. package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +4 -5
  15. package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +10 -11
  16. package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +6 -7
  17. package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +10 -11
  18. package/esm2022/lib/clipboard/clipboard.directive.mjs +4 -5
  19. package/esm2022/lib/clipboard/clipboard.module.mjs +2 -2
  20. package/esm2022/lib/comments/comment-list/comment-list.component.mjs +4 -5
  21. package/esm2022/lib/comments/comments.component.mjs +8 -9
  22. package/esm2022/lib/context-menu/context-menu-list.component.mjs +6 -7
  23. package/esm2022/lib/core.module.mjs +3 -3
  24. package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +9 -10
  25. package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +7 -8
  26. package/esm2022/lib/dialogs/dialog/dialog.component.mjs +6 -7
  27. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +9 -8
  28. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +6 -10
  29. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +8 -9
  30. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +6 -7
  31. package/esm2022/lib/form/components/form-renderer.component.mjs +4 -5
  32. package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +4 -5
  33. package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +4 -5
  34. package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +4 -5
  35. package/esm2022/lib/form/components/widgets/date/date.widget.mjs +7 -8
  36. package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +9 -10
  37. package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +7 -8
  38. package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +4 -5
  39. package/esm2022/lib/form/components/widgets/error/error.component.mjs +4 -5
  40. package/esm2022/lib/form/components/widgets/header/header.widget.mjs +5 -6
  41. package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +4 -6
  42. package/esm2022/lib/form/components/widgets/json/json.widget.mjs +5 -6
  43. package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +7 -8
  44. package/esm2022/lib/form/components/widgets/number/number.widget.mjs +7 -8
  45. package/esm2022/lib/form/components/widgets/text/text.widget.mjs +7 -8
  46. package/esm2022/lib/form/form-base.module.mjs +2 -2
  47. package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +4 -5
  48. package/esm2022/lib/info-drawer/info-drawer.component.mjs +6 -7
  49. package/esm2022/lib/language-menu/language-picker.component.mjs +5 -6
  50. package/esm2022/lib/layout/components/header/header.component.mjs +4 -5
  51. package/esm2022/lib/login/components/login/login.component.mjs +10 -11
  52. package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +5 -6
  53. package/esm2022/lib/notifications/components/notification-history.component.mjs +7 -8
  54. package/esm2022/lib/notifications/services/notification.service.mjs +1 -1
  55. package/esm2022/lib/pagination/infinite-pagination.component.mjs +4 -5
  56. package/esm2022/lib/pagination/pagination.component.mjs +4 -4
  57. package/esm2022/lib/search-text/search-text-input.component.mjs +7 -18
  58. package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +9 -8
  59. package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +5 -10
  60. package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +9 -10
  61. package/esm2022/lib/templates/empty-content/empty-content.component.mjs +4 -5
  62. package/esm2022/lib/templates/error-content/error-content.component.mjs +4 -5
  63. package/esm2022/lib/toolbar/toolbar.component.mjs +4 -5
  64. package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +5 -6
  65. package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +6 -7
  66. package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +5 -6
  67. package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +5 -6
  68. package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +4 -5
  69. package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +4 -5
  70. package/esm2022/lib/viewer/components/viewer-render/viewer-render.component.mjs +5 -6
  71. package/esm2022/lib/viewer/components/viewer.component.mjs +6 -7
  72. package/esm2022/lib/viewer/viewer.module.mjs +1 -3
  73. package/fesm2022/adf-core.mjs +273 -284
  74. package/fesm2022/adf-core.mjs.map +1 -1
  75. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +4 -5
  76. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -1
  77. package/fesm2022/alfresco-adf-core-feature-flags.mjs +3 -4
  78. package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -1
  79. package/lib/dialogs/edit-json/edit-json.dialog.d.ts +1 -1
  80. package/lib/dialogs/edit-json/edit-json.dialog.module.d.ts +1 -6
  81. package/lib/form/components/widgets/hyperlink/hyperlink.widget.d.ts +16 -0
  82. package/lib/notifications/services/notification.service.d.ts +1 -1
  83. package/lib/snackbar-content/snackbar-content.component.d.ts +1 -1
  84. package/lib/snackbar-content/snackbar-content.module.d.ts +2 -6
  85. package/package.json +4 -4
@@ -20,12 +20,11 @@ import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output,
20
20
  import { MatButtonModule } from '@angular/material/button';
21
21
  import { MatChip, MatChipsModule } from '@angular/material/chips';
22
22
  import { MatIconModule } from '@angular/material/icon';
23
- import { TranslateModule } from '@ngx-translate/core';
23
+ import { TranslatePipe } from '@ngx-translate/core';
24
24
  import * as i0 from "@angular/core";
25
25
  import * as i1 from "@angular/material/chips";
26
- import * as i2 from "@ngx-translate/core";
27
- import * as i3 from "@angular/material/icon";
28
- import * as i4 from "@angular/material/button";
26
+ import * as i2 from "@angular/material/icon";
27
+ import * as i3 from "@angular/material/button";
29
28
  /**
30
29
  * This component shows dynamic list of chips which render depending on free space.
31
30
  */
@@ -173,11 +172,11 @@ export class DynamicChipListComponent {
173
172
  }
174
173
  }
175
174
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicChipListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
176
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DynamicChipListComponent, isStandalone: true, selector: "adf-dynamic-chip-list", inputs: { pagination: "pagination", chips: "chips", showDelete: "showDelete", disableDelete: "disableDelete", limitChipsDisplayed: "limitChipsDisplayed", roundUpChips: "roundUpChips" }, outputs: { displayNext: "displayNext", removedChip: "removedChip" }, viewQueries: [{ propertyName: "containerView", first: true, predicate: ["nodeListContainer"], descendants: true }, { propertyName: "matChips", predicate: MatChip, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"adf-dynamic-chip-list-container\"\n [class.adf-dynamic-chip-list-flex-column]=\"limitChipsDisplayed && (!calculationsDone || columnFlexDirection)\"\n [class.adf-dynamic-chip-list-button-in-next-line]=\"moveLoadMoreButtonToNextRow\"\n [class.adf-dynamic-chip-list-paginated]=\"paginationData\"\n #nodeListContainer>\n <mat-chip-set\n [class.adf-dynamic-chip-list-full-width]=\"limitChipsDisplayed && !calculationsDone\"\n role=\"listbox\"\n [attr.aria-label]=\"'METADATA.BASIC.TAGS' | translate\">\n <mat-chip\n class=\"adf-dynamic-chip-list-chip\"\n *ngFor=\"let chip of chipsToDisplay; let idx = index\"\n [style.border-radius]=\"roundUpChips ? '20px' : '10px'\"\n [style.font-weight]=\"'bold'\"\n (removed)=\"removedChip.emit(chip.id)\">\n <span id=\"adf-dynamic-chip-list-chip-name-{{ idx }}\">{{ chip.name }}</span>\n <mat-icon *ngIf=\"showDelete\"\n id=\"adf-dynamic-chip-list-delete-{{ chip.name }}\"\n class=\"adf-dynamic-chip-list-delete-icon\"\n [disabled]=\"disableDelete\"\n matChipRemove>\n close\n </mat-icon>\n </mat-chip>\n </mat-chip-set>\n <button\n data-automation-id=\"adf-dynamic-chip-list-view-more-button\"\n mat-button\n [hidden]=\"chipsToDisplay?.length === 0 || !limitChipsDisplayed\"\n [style.left.px]=\"viewMoreButtonLeftOffset\"\n [style.top.px]=\"!!pagination ? viewMoreButtonTop : ''\"\n class=\"adf-dynamic-chip-list-view-more-button\"\n [class.adf-dynamic-chip-list-hidden-btn]=\"!calculationsDone\"\n (click)=\"displayNextChips($event)\">\n {{\n paginationData ? ('DYNAMIC_CHIP_LIST.LOAD_MORE' | translate) :\n ('TAG_NODE_LIST.VIEW_MORE' | translate: { count: undisplayedChipsCount })\n }}\n </button>\n</div>\n", styles: [".adf-dynamic-chip-list-container{display:flex;flex-direction:row;width:inherit;padding-top:12px;padding-bottom:12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button{margin-left:5px;position:absolute;padding:0 16px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button[hidden]{visibility:hidden}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column{flex-direction:column}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column .adf-dynamic-chip-list-view-more-button{position:relative}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-paginated .adf-dynamic-chip-list-view-more-button{margin-left:24px}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-button-in-next-line{align-items:unset;padding-bottom:54px}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated){align-items:center}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated):not(.adf-dynamic-chip-list-flex-column) .adf-dynamic-chip-list-view-more-button{margin-left:4px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-full-width{width:100%}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-hidden-btn{visibility:hidden}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip{word-break:break-word;margin-top:0;margin-bottom:0;padding:6px 11px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action{padding:2px 12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action .mdc-evolution-chip__text-label{color:var(--adf-theme-foreground-text-color-054)}\n"], dependencies: [{ kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i1.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["role", "id", "aria-label", "aria-description", "value", "color", "removable", "highlighted", "disableRipple", "disabled"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "directive", type: i1.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i1.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role", "tabIndex"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
175
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DynamicChipListComponent, isStandalone: true, selector: "adf-dynamic-chip-list", inputs: { pagination: "pagination", chips: "chips", showDelete: "showDelete", disableDelete: "disableDelete", limitChipsDisplayed: "limitChipsDisplayed", roundUpChips: "roundUpChips" }, outputs: { displayNext: "displayNext", removedChip: "removedChip" }, viewQueries: [{ propertyName: "containerView", first: true, predicate: ["nodeListContainer"], descendants: true }, { propertyName: "matChips", predicate: MatChip, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"adf-dynamic-chip-list-container\"\n [class.adf-dynamic-chip-list-flex-column]=\"limitChipsDisplayed && (!calculationsDone || columnFlexDirection)\"\n [class.adf-dynamic-chip-list-button-in-next-line]=\"moveLoadMoreButtonToNextRow\"\n [class.adf-dynamic-chip-list-paginated]=\"paginationData\"\n #nodeListContainer>\n <mat-chip-set\n [class.adf-dynamic-chip-list-full-width]=\"limitChipsDisplayed && !calculationsDone\"\n role=\"listbox\"\n [attr.aria-label]=\"'METADATA.BASIC.TAGS' | translate\">\n <mat-chip\n class=\"adf-dynamic-chip-list-chip\"\n *ngFor=\"let chip of chipsToDisplay; let idx = index\"\n [style.border-radius]=\"roundUpChips ? '20px' : '10px'\"\n [style.font-weight]=\"'bold'\"\n (removed)=\"removedChip.emit(chip.id)\">\n <span id=\"adf-dynamic-chip-list-chip-name-{{ idx }}\">{{ chip.name }}</span>\n <mat-icon *ngIf=\"showDelete\"\n id=\"adf-dynamic-chip-list-delete-{{ chip.name }}\"\n class=\"adf-dynamic-chip-list-delete-icon\"\n [disabled]=\"disableDelete\"\n matChipRemove>\n close\n </mat-icon>\n </mat-chip>\n </mat-chip-set>\n <button\n data-automation-id=\"adf-dynamic-chip-list-view-more-button\"\n mat-button\n [hidden]=\"chipsToDisplay?.length === 0 || !limitChipsDisplayed\"\n [style.left.px]=\"viewMoreButtonLeftOffset\"\n [style.top.px]=\"!!pagination ? viewMoreButtonTop : ''\"\n class=\"adf-dynamic-chip-list-view-more-button\"\n [class.adf-dynamic-chip-list-hidden-btn]=\"!calculationsDone\"\n (click)=\"displayNextChips($event)\">\n {{\n paginationData ? ('DYNAMIC_CHIP_LIST.LOAD_MORE' | translate) :\n ('TAG_NODE_LIST.VIEW_MORE' | translate: { count: undisplayedChipsCount })\n }}\n </button>\n</div>\n", styles: [".adf-dynamic-chip-list-container{display:flex;flex-direction:row;width:inherit;padding-top:12px;padding-bottom:12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button{margin-left:5px;position:absolute;padding:0 16px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button[hidden]{visibility:hidden}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column{flex-direction:column}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column .adf-dynamic-chip-list-view-more-button{position:relative}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-paginated .adf-dynamic-chip-list-view-more-button{margin-left:24px}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-button-in-next-line{align-items:unset;padding-bottom:54px}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated){align-items:center}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated):not(.adf-dynamic-chip-list-flex-column) .adf-dynamic-chip-list-view-more-button{margin-left:4px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-full-width{width:100%}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-hidden-btn{visibility:hidden}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip{word-break:break-word;margin-top:0;margin-bottom:0;padding:6px 11px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action{padding:2px 12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action .mdc-evolution-chip__text-label{color:var(--adf-theme-foreground-text-color-054)}\n"], dependencies: [{ kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i1.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["role", "id", "aria-label", "aria-description", "value", "color", "removable", "highlighted", "disableRipple", "disabled"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "directive", type: i1.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i1.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role", "tabIndex"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
177
176
  }
178
177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicChipListComponent, decorators: [{
179
178
  type: Component,
180
- args: [{ selector: 'adf-dynamic-chip-list', standalone: true, imports: [MatChipsModule, TranslateModule, NgForOf, MatIconModule, NgIf, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-dynamic-chip-list-container\"\n [class.adf-dynamic-chip-list-flex-column]=\"limitChipsDisplayed && (!calculationsDone || columnFlexDirection)\"\n [class.adf-dynamic-chip-list-button-in-next-line]=\"moveLoadMoreButtonToNextRow\"\n [class.adf-dynamic-chip-list-paginated]=\"paginationData\"\n #nodeListContainer>\n <mat-chip-set\n [class.adf-dynamic-chip-list-full-width]=\"limitChipsDisplayed && !calculationsDone\"\n role=\"listbox\"\n [attr.aria-label]=\"'METADATA.BASIC.TAGS' | translate\">\n <mat-chip\n class=\"adf-dynamic-chip-list-chip\"\n *ngFor=\"let chip of chipsToDisplay; let idx = index\"\n [style.border-radius]=\"roundUpChips ? '20px' : '10px'\"\n [style.font-weight]=\"'bold'\"\n (removed)=\"removedChip.emit(chip.id)\">\n <span id=\"adf-dynamic-chip-list-chip-name-{{ idx }}\">{{ chip.name }}</span>\n <mat-icon *ngIf=\"showDelete\"\n id=\"adf-dynamic-chip-list-delete-{{ chip.name }}\"\n class=\"adf-dynamic-chip-list-delete-icon\"\n [disabled]=\"disableDelete\"\n matChipRemove>\n close\n </mat-icon>\n </mat-chip>\n </mat-chip-set>\n <button\n data-automation-id=\"adf-dynamic-chip-list-view-more-button\"\n mat-button\n [hidden]=\"chipsToDisplay?.length === 0 || !limitChipsDisplayed\"\n [style.left.px]=\"viewMoreButtonLeftOffset\"\n [style.top.px]=\"!!pagination ? viewMoreButtonTop : ''\"\n class=\"adf-dynamic-chip-list-view-more-button\"\n [class.adf-dynamic-chip-list-hidden-btn]=\"!calculationsDone\"\n (click)=\"displayNextChips($event)\">\n {{\n paginationData ? ('DYNAMIC_CHIP_LIST.LOAD_MORE' | translate) :\n ('TAG_NODE_LIST.VIEW_MORE' | translate: { count: undisplayedChipsCount })\n }}\n </button>\n</div>\n", styles: [".adf-dynamic-chip-list-container{display:flex;flex-direction:row;width:inherit;padding-top:12px;padding-bottom:12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button{margin-left:5px;position:absolute;padding:0 16px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button[hidden]{visibility:hidden}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column{flex-direction:column}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column .adf-dynamic-chip-list-view-more-button{position:relative}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-paginated .adf-dynamic-chip-list-view-more-button{margin-left:24px}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-button-in-next-line{align-items:unset;padding-bottom:54px}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated){align-items:center}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated):not(.adf-dynamic-chip-list-flex-column) .adf-dynamic-chip-list-view-more-button{margin-left:4px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-full-width{width:100%}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-hidden-btn{visibility:hidden}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip{word-break:break-word;margin-top:0;margin-bottom:0;padding:6px 11px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action{padding:2px 12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action .mdc-evolution-chip__text-label{color:var(--adf-theme-foreground-text-color-054)}\n"] }]
179
+ args: [{ selector: 'adf-dynamic-chip-list', standalone: true, imports: [MatChipsModule, TranslatePipe, NgForOf, MatIconModule, NgIf, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-dynamic-chip-list-container\"\n [class.adf-dynamic-chip-list-flex-column]=\"limitChipsDisplayed && (!calculationsDone || columnFlexDirection)\"\n [class.adf-dynamic-chip-list-button-in-next-line]=\"moveLoadMoreButtonToNextRow\"\n [class.adf-dynamic-chip-list-paginated]=\"paginationData\"\n #nodeListContainer>\n <mat-chip-set\n [class.adf-dynamic-chip-list-full-width]=\"limitChipsDisplayed && !calculationsDone\"\n role=\"listbox\"\n [attr.aria-label]=\"'METADATA.BASIC.TAGS' | translate\">\n <mat-chip\n class=\"adf-dynamic-chip-list-chip\"\n *ngFor=\"let chip of chipsToDisplay; let idx = index\"\n [style.border-radius]=\"roundUpChips ? '20px' : '10px'\"\n [style.font-weight]=\"'bold'\"\n (removed)=\"removedChip.emit(chip.id)\">\n <span id=\"adf-dynamic-chip-list-chip-name-{{ idx }}\">{{ chip.name }}</span>\n <mat-icon *ngIf=\"showDelete\"\n id=\"adf-dynamic-chip-list-delete-{{ chip.name }}\"\n class=\"adf-dynamic-chip-list-delete-icon\"\n [disabled]=\"disableDelete\"\n matChipRemove>\n close\n </mat-icon>\n </mat-chip>\n </mat-chip-set>\n <button\n data-automation-id=\"adf-dynamic-chip-list-view-more-button\"\n mat-button\n [hidden]=\"chipsToDisplay?.length === 0 || !limitChipsDisplayed\"\n [style.left.px]=\"viewMoreButtonLeftOffset\"\n [style.top.px]=\"!!pagination ? viewMoreButtonTop : ''\"\n class=\"adf-dynamic-chip-list-view-more-button\"\n [class.adf-dynamic-chip-list-hidden-btn]=\"!calculationsDone\"\n (click)=\"displayNextChips($event)\">\n {{\n paginationData ? ('DYNAMIC_CHIP_LIST.LOAD_MORE' | translate) :\n ('TAG_NODE_LIST.VIEW_MORE' | translate: { count: undisplayedChipsCount })\n }}\n </button>\n</div>\n", styles: [".adf-dynamic-chip-list-container{display:flex;flex-direction:row;width:inherit;padding-top:12px;padding-bottom:12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button{margin-left:5px;position:absolute;padding:0 16px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-view-more-button[hidden]{visibility:hidden}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column{flex-direction:column}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-flex-column .adf-dynamic-chip-list-view-more-button{position:relative}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-paginated .adf-dynamic-chip-list-view-more-button{margin-left:24px}.adf-dynamic-chip-list-container.adf-dynamic-chip-list-button-in-next-line{align-items:unset;padding-bottom:54px}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated){align-items:center}.adf-dynamic-chip-list-container:not(.adf-dynamic-chip-list-paginated):not(.adf-dynamic-chip-list-flex-column) .adf-dynamic-chip-list-view-more-button{margin-left:4px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-full-width{width:100%}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-hidden-btn{visibility:hidden}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip{word-break:break-word;margin-top:0;margin-bottom:0;padding:6px 11px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action{padding:2px 12px}.adf-dynamic-chip-list-container .adf-dynamic-chip-list-chip .mdc-evolution-chip__action .mdc-evolution-chip__text-label{color:var(--adf-theme-foreground-text-color-054)}\n"] }]
181
180
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { pagination: [{
182
181
  type: Input
183
182
  }], chips: [{
@@ -202,4 +201,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
202
201
  type: ViewChildren,
203
202
  args: [MatChip]
204
203
  }] } });
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGlwLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9keW5hbWljLWNoaXAtbGlzdC9keW5hbWljLWNoaXAtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2R5bmFtaWMtY2hpcC1saXN0L2R5bmFtaWMtY2hpcC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFDTixTQUFTLEVBRVQsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7O0FBR3REOztHQUVHO0FBU0gsTUFBTSxPQUFPLHdCQUF3QjtJQTREakMsWUFBb0IsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFsRHhELDBCQUEwQjtRQUUxQixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBRWxCLDZCQUE2QjtRQUU3QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUV0Qiw4Q0FBOEM7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QUM7UUFDcEgsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUNsQyxDQUFDO0lBQ0wsQ0FBQzsrR0E3TFEsd0JBQXdCO21HQUF4Qix3QkFBd0Isa2RBcUNuQixPQUFPLHFFQzFGekIsczlEQXlDQSxzb0REU2MsY0FBYyxzZ0JBQUUsZUFBZSw0RkFBRSxPQUFPLGtIQUFFLGFBQWEsb0xBQUUsSUFBSSw0RkFBRSxlQUFlOzs0RkFHL0Usd0JBQXdCO2tCQVJwQyxTQUFTOytCQUNJLHVCQUF1QixjQUNyQixJQUFJLFdBR1AsQ0FBQyxjQUFjLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLGVBQWUsQ0FBQyxpQkFDMUUsaUJBQWlCLENBQUMsSUFBSTtzRkFNckMsVUFBVTtzQkFEVCxLQUFLO2dCQUtOLEtBQUs7c0JBREosS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS3pCLFVBQVU7c0JBRFQsS0FBSztnQkFLTixhQUFhO3NCQURaLEtBQUs7Z0JBS04sbUJBQW1CO3NCQURsQixLQUFLO2dCQUtOLFlBQVk7c0JBRFgsS0FBSztnQkFLTixXQUFXO3NCQURWLE1BQU07Z0JBS1AsV0FBVztzQkFEVixNQUFNO2dCQUlQLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxtQkFBbUI7Z0JBSTlCLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBQYWdpbmF0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBOZ0Zvck9mLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hpcCwgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENoaXAgfSBmcm9tICcuL2NoaXAnO1xuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IHNob3dzIGR5bmFtaWMgbGlzdCBvZiBjaGlwcyB3aGljaCByZW5kZXIgZGVwZW5kaW5nIG9uIGZyZWUgc3BhY2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLWR5bmFtaWMtY2hpcC1saXN0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLWNoaXAtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1jaGlwLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbTWF0Q2hpcHNNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTmdGb3JPZiwgTWF0SWNvbk1vZHVsZSwgTmdJZiwgTWF0QnV0dG9uTW9kdWxlXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNDaGlwTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qIGVzbGludCBuby11bmRlcnNjb3JlLWRhbmdsZTogW1wiZXJyb3JcIiwgeyBcImFsbG93XCI6IFtcIl9lbGVtZW50UmVmXCJdIH1dKi9cbiAgICAvKiogUHJvdmlkZSBpZiB5b3Ugd2FudCB0byB1c2UgcGFnaW5hdGVkIGNoaXBzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgcGFnaW5hdGlvbjogUGFnaW5hdGlvbjtcblxuICAgIC8qKiBMaXN0IG9mIGNoaXBzIHRvIGRpc3BsYXkuICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBjaGlwczogQ2hpcFtdO1xuXG4gICAgLyoqIFNob3cgZGVsZXRlIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dEZWxldGUgPSB0cnVlO1xuXG4gICAgLyoqIERpc2FibGUgZGVsZXRlIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVEZWxldGUgPSBmYWxzZTtcblxuICAgIC8qKiBTaG91bGQgbGltaXQgbnVtYmVyIG9mIGNoaXBzIGRpc3BsYXllZC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGxpbWl0Q2hpcHNEaXNwbGF5ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBSb3VuZCB1cCBjaGlwcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgcm91bmRVcENoaXBzID0gZmFsc2U7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGJ1dHRvbiBmb3IgdmlldyBtb3JlIGlzIGNsaWNrZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgZGlzcGxheU5leHQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogRW1pdHRlZCB3aGVuIGFueSBjaGlwIGlzIHJlbW92ZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVtb3ZlZENoaXAgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ25vZGVMaXN0Q29udGFpbmVyJylcbiAgICBjb250YWluZXJWaWV3OiBFbGVtZW50UmVmO1xuXG4gICAgQFZpZXdDaGlsZHJlbihNYXRDaGlwKVxuICAgIG1hdENoaXBzOiBRdWVyeUxpc3Q8TWF0Q2hpcD47XG5cbiAgICBjaGlwc1RvRGlzcGxheTogQ2hpcFtdID0gW107XG4gICAgY2FsY3VsYXRpb25zRG9uZSA9IGZhbHNlO1xuICAgIGNvbHVtbkZsZXhEaXJlY3Rpb24gPSBmYWxzZTtcbiAgICBtb3ZlTG9hZE1vcmVCdXR0b25Ub05leHRSb3cgPSBmYWxzZTtcbiAgICB1bmRpc3BsYXllZENoaXBzQ291bnQgPSAwO1xuICAgIHZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldDogbnVtYmVyO1xuICAgIHZpZXdNb3JlQnV0dG9uVG9wID0gMDtcbiAgICBwYWdpbmF0aW9uRGF0YTogUGFnaW5hdGlvbjtcblxuICAgIHByaXZhdGUgaW5pdGlhbENoaXBzOiBDaGlwW10gPSBbXTtcbiAgICBwcml2YXRlIGluaXRpYWxMaW1pdENoaXBzRGlzcGxheWVkOiBib29sZWFuO1xuICAgIHByaXZhdGUgdmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0QmVmb3JlRmxleERpcmVjdGlvbjogbnVtYmVyO1xuICAgIHByaXZhdGUgcmVxdWVzdGVkRGlzcGxheWluZ0FsbENoaXBzID0gZmFsc2U7XG4gICAgcHJpdmF0ZSByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxMaW1pdENoaXBzRGlzcGxheWVkICYmIHRoaXMuY2hpcHNUb0Rpc3BsYXkubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUNoaXBzVG9EaXNwbGF5KCk7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnBhZ2luYXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubGltaXRDaGlwc0Rpc3BsYXllZCA9IHRoaXMucGFnaW5hdGlvbj8uaGFzTW9yZUl0ZW1zO1xuICAgICAgICAgICAgdGhpcy5wYWdpbmF0aW9uRGF0YSA9IHRoaXMucGFnaW5hdGlvbjtcbiAgICAgICAgICAgIHRoaXMuaW5pdGlhbExpbWl0Q2hpcHNEaXNwbGF5ZWQgPSB0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNoYW5nZXMuY2hpcHMpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdGlhbENoaXBzID0gdGhpcy5jaGlwcztcbiAgICAgICAgICAgIHRoaXMuY2hpcHNUb0Rpc3BsYXkgPSB0aGlzLmluaXRpYWxDaGlwcztcbiAgICAgICAgICAgIGlmICh0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQgJiYgdGhpcy5jaGlwc1RvRGlzcGxheS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUNoaXBzVG9EaXNwbGF5KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFnaW5hdGlvbkRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMubGltaXRDaGlwc0Rpc3BsYXllZCA9IHRoaXMucGFnaW5hdGlvbkRhdGEuaGFzTW9yZUl0ZW1zO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW5pdGlhbExpbWl0Q2hpcHNEaXNwbGF5ZWQgPSB0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQ7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5jb250YWluZXJWaWV3Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLmNvbnRhaW5lclZpZXcubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZGlzcGxheU5leHRDaGlwcyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EYXRhKSB7XG4gICAgICAgICAgICB0aGlzLnJlcXVlc3RlZERpc3BsYXlpbmdBbGxDaGlwcyA9ICF0aGlzLnBhZ2luYXRpb25EYXRhLmhhc01vcmVJdGVtcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubGltaXRDaGlwc0Rpc3BsYXllZCA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5yZXF1ZXN0ZWREaXNwbGF5aW5nQWxsQ2hpcHMgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnJlcXVlc3RlZERpc3BsYXlpbmdBbGxDaGlwcykge1xuICAgICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcy5jb250YWluZXJWaWV3Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGlzcGxheU5leHQuZW1pdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ2hpcHNUb0Rpc3BsYXkoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlcXVlc3RlZERpc3BsYXlpbmdBbGxDaGlwcyB8fCAhdGhpcy5jaGlwcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNoaXBzVG9EaXNwbGF5ID0gdGhpcy5pbml0aWFsQ2hpcHM7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLnVuZGlzcGxheWVkQ2hpcHNDb3VudCA9IDA7XG4gICAgICAgIGxldCBjaGlwc1RvRGlzcGxheSA9IDE7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoOiBudW1iZXIgPSB0aGlzLmNvbnRhaW5lclZpZXcubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgICAgICAgY29uc3Qgdmlld01vcmVCdXR0b246IEhUTUxCdXR0b25FbGVtZW50ID0gdGhpcy5jb250YWluZXJWaWV3Lm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMV07XG4gICAgICAgIGNvbnN0IHZpZXdNb3JlQnRuV2lkdGg6IG51bWJlciA9IHZpZXdNb3JlQnV0dG9uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgICAgICBjb25zdCBmaXJzdENoaXAgPSB0aGlzLm1hdENoaXBzLmdldCgwKTtcbiAgICAgICAgY29uc3QgY2hpcE1hcmdpbiA9IGZpcnN0Q2hpcCA/IHRoaXMuZ2V0Q2hpcE1hcmdpbihmaXJzdENoaXApIDogMDtcbiAgICAgICAgbGV0IGNoaXBzV2lkdGggPSAwO1xuICAgICAgICBjb25zdCBjaGlwcyA9IHRoaXMubWF0Q2hpcHMudG9BcnJheSgpO1xuICAgICAgICBsZXQgbGFzdEluZGV4ID0gMDtcbiAgICAgICAgZG8ge1xuICAgICAgICAgICAgY2hpcHNXaWR0aCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgICAgIGNoaXBzLnJlZHVjZSgod2lkdGgsIHZhbCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGggKz0gdmFsLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggKyBjaGlwTWFyZ2luO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhdmFpbGFibGVTcGFjZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAoaW5kZXggJiYgaW5kZXggPT09IGNoaXBzLmxlbmd0aCAtIDEpIHx8ICF0aGlzLnBhZ2luYXRpb25EYXRhID8gY29udGFpbmVyV2lkdGggLSB2aWV3TW9yZUJ0bldpZHRoIDogY29udGFpbmVyV2lkdGg7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhdmFpbGFibGVTcGFjZSA+PSB3aWR0aCAtIGNoaXBNYXJnaW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaXBzVG9EaXNwbGF5ID0gKHRoaXMucGFnaW5hdGlvbkRhdGEgPyBjaGlwc1RvRGlzcGxheSA6IGluZGV4KSArIDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBsYXN0SW5kZXgrKztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0ID0gd2lkdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldEJlZm9yZUZsZXhEaXJlY3Rpb24gPSB3aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2lkdGg7XG4gICAgICAgICAgICAgICAgfSwgMCksXG4gICAgICAgICAgICAgICAgY2hpcHNXaWR0aFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNoaXBzLnNwbGljZSgwLCBsYXN0SW5kZXgpO1xuICAgICAgICAgICAgbGFzdEluZGV4ID0gMDtcbiAgICAgICAgfSB3aGlsZSAoKGNoaXBzLmxlbmd0aCB8fCAoY2hpcHNUb0Rpc3BsYXkgPCB0aGlzLm1hdENoaXBzLmxlbmd0aCAmJiB0aGlzLm1hdENoaXBzLmxlbmd0aCkpICYmIHRoaXMucGFnaW5hdGlvbkRhdGEpO1xuICAgICAgICB0aGlzLmFycmFuZ2VFbGVtZW50cyhjb250YWluZXJXaWR0aCwgY2hpcHNXaWR0aCwgdmlld01vcmVCdG5XaWR0aCwgY2hpcHNUb0Rpc3BsYXksIHZpZXdNb3JlQnV0dG9uKTtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGlvbnNEb25lID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENoaXBNYXJnaW4oY2hpcDogTWF0Q2hpcCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGNoaXBTdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShjaGlwLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICByZXR1cm4gcGFyc2VJbnQoY2hpcFN0eWxlcy5tYXJnaW5MZWZ0LCAxMCkgKyBwYXJzZUludChjaGlwU3R5bGVzLm1hcmdpblJpZ2h0LCAxMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcnJhbmdlRWxlbWVudHMoXG4gICAgICAgIGNvbnRhaW5lcldpZHRoOiBudW1iZXIsXG4gICAgICAgIGNoaXBzV2lkdGg6IG51bWJlcixcbiAgICAgICAgdmlld01vcmVCdG5XaWR0aDogbnVtYmVyLFxuICAgICAgICBjaGlwc1RvRGlzcGxheTogbnVtYmVyLFxuICAgICAgICB2aWV3TW9yZUJ1dHRvbjogSFRNTEJ1dHRvbkVsZW1lbnRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbnRhaW5lcldpZHRoIC0gY2hpcHNXaWR0aCAtIHZpZXdNb3JlQnRuV2lkdGggPD0gMCkge1xuICAgICAgICAgICAgY29uc3QgY2hpcCA9IHRoaXMucGFnaW5hdGlvbkRhdGEgPyB0aGlzLm1hdENoaXBzLmxhc3QgOiB0aGlzLm1hdENoaXBzLmZpcnN0O1xuICAgICAgICAgICAgY29uc3QgaGFzTm90RW5vdWdoU3BhY2VGb3JNb3JlQnV0dG9uID1cbiAgICAgICAgICAgICAgICBjb250YWluZXJXaWR0aCA8IGNoaXA/Ll9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggKyBjaGlwPy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgKyB2aWV3TW9yZUJ0bldpZHRoO1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5GbGV4RGlyZWN0aW9uID0gY2hpcHNUb0Rpc3BsYXkgPT09IDEgJiYgIXRoaXMucGFnaW5hdGlvbkRhdGEgJiYgaGFzTm90RW5vdWdoU3BhY2VGb3JNb3JlQnV0dG9uO1xuICAgICAgICAgICAgdGhpcy5tb3ZlTG9hZE1vcmVCdXR0b25Ub05leHRSb3cgPSB0aGlzLnBhZ2luYXRpb25EYXRhICYmIGhhc05vdEVub3VnaFNwYWNlRm9yTW9yZUJ1dHRvbjtcbiAgICAgICAgICAgIHRoaXMudW5kaXNwbGF5ZWRDaGlwc0NvdW50ID0gdGhpcy5jaGlwc1RvRGlzcGxheS5sZW5ndGggLSBjaGlwc1RvRGlzcGxheTtcbiAgICAgICAgICAgIHRoaXMuY2hpcHNUb0Rpc3BsYXkgPSB0aGlzLmNoaXBzVG9EaXNwbGF5LnNsaWNlKDAsIGNoaXBzVG9EaXNwbGF5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubW92ZUxvYWRNb3JlQnV0dG9uVG9OZXh0Um93ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5saW1pdENoaXBzRGlzcGxheWVkID0gdGhpcy51bmRpc3BsYXllZENoaXBzQ291bnQgPyB0aGlzLmluaXRpYWxMaW1pdENoaXBzRGlzcGxheWVkIDogdGhpcy5wYWdpbmF0aW9uRGF0YT8uaGFzTW9yZUl0ZW1zO1xuICAgICAgICBpZiAodGhpcy5wYWdpbmF0aW9uRGF0YT8uaGFzTW9yZUl0ZW1zKSB7XG4gICAgICAgICAgICBjb25zdCBsYXN0Q2hpcFRvcCA9IHRoaXMubWF0Q2hpcHMubGFzdC5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgICAgIGlmICh0aGlzLm1vdmVMb2FkTW9yZUJ1dHRvblRvTmV4dFJvdykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJ1dHRvblRvcEhlaWdodENvcnJlY3Rpb24gPSA1O1xuICAgICAgICAgICAgICAgIHRoaXMudmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uVG9wID0gbGFzdENoaXBUb3AgKyB2aWV3TW9yZUJ1dHRvbi5vZmZzZXRIZWlnaHQgKyBidXR0b25Ub3BIZWlnaHRDb3JyZWN0aW9uO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBidXR0b25Ub3BIZWlnaHRDb3JyZWN0aW9uID0gMztcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldCA9IHRoaXMudmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0QmVmb3JlRmxleERpcmVjdGlvbjtcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uVG9wID0gbGFzdENoaXBUb3AgLSBidXR0b25Ub3BIZWlnaHRDb3JyZWN0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy52aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXQgPSB0aGlzLmNvbHVtbkZsZXhEaXJlY3Rpb24gPyAwIDogdGhpcy52aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXRCZWZvcmVGbGV4RGlyZWN0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnBhZ2luYXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMudmlld01vcmVCdXR0b25Ub3AgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLmFkZi1keW5hbWljLWNoaXAtbGlzdC1mbGV4LWNvbHVtbl09XCJsaW1pdENoaXBzRGlzcGxheWVkICYmICghY2FsY3VsYXRpb25zRG9uZSB8fCBjb2x1bW5GbGV4RGlyZWN0aW9uKVwiXG4gICAgW2NsYXNzLmFkZi1keW5hbWljLWNoaXAtbGlzdC1idXR0b24taW4tbmV4dC1saW5lXT1cIm1vdmVMb2FkTW9yZUJ1dHRvblRvTmV4dFJvd1wiXG4gICAgW2NsYXNzLmFkZi1keW5hbWljLWNoaXAtbGlzdC1wYWdpbmF0ZWRdPVwicGFnaW5hdGlvbkRhdGFcIlxuICAgICNub2RlTGlzdENvbnRhaW5lcj5cbiAgICA8bWF0LWNoaXAtc2V0XG4gICAgICAgIFtjbGFzcy5hZGYtZHluYW1pYy1jaGlwLWxpc3QtZnVsbC13aWR0aF09XCJsaW1pdENoaXBzRGlzcGxheWVkICYmICFjYWxjdWxhdGlvbnNEb25lXCJcbiAgICAgICAgcm9sZT1cImxpc3Rib3hcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidNRVRBREFUQS5CQVNJQy5UQUdTJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICA8bWF0LWNoaXBcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LWNoaXBcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaXAgb2YgY2hpcHNUb0Rpc3BsYXk7IGxldCBpZHggPSBpbmRleFwiXG4gICAgICAgICAgICBbc3R5bGUuYm9yZGVyLXJhZGl1c109XCJyb3VuZFVwQ2hpcHMgPyAnMjBweCcgOiAnMTBweCdcIlxuICAgICAgICAgICAgW3N0eWxlLmZvbnQtd2VpZ2h0XT1cIidib2xkJ1wiXG4gICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVkQ2hpcC5lbWl0KGNoaXAuaWQpXCI+XG4gICAgICAgICAgICA8c3BhbiBpZD1cImFkZi1keW5hbWljLWNoaXAtbGlzdC1jaGlwLW5hbWUte3sgaWR4IH19XCI+e3sgY2hpcC5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwic2hvd0RlbGV0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgaWQ9XCJhZGYtZHluYW1pYy1jaGlwLWxpc3QtZGVsZXRlLXt7IGNoaXAubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtZHluYW1pYy1jaGlwLWxpc3QtZGVsZXRlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlRGVsZXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBtYXRDaGlwUmVtb3ZlPlxuICAgICAgICAgICAgICAgIGNsb3NlXG4gICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8L21hdC1jaGlwPlxuICAgIDwvbWF0LWNoaXAtc2V0PlxuICAgIDxidXR0b25cbiAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LXZpZXctbW9yZS1idXR0b25cIlxuICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgIFtoaWRkZW5dPVwiY2hpcHNUb0Rpc3BsYXk/Lmxlbmd0aCA9PT0gMCB8fCAhbGltaXRDaGlwc0Rpc3BsYXllZFwiXG4gICAgICAgIFtzdHlsZS5sZWZ0LnB4XT1cInZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldFwiXG4gICAgICAgIFtzdHlsZS50b3AucHhdPVwiISFwYWdpbmF0aW9uID8gdmlld01vcmVCdXR0b25Ub3AgOiAnJ1wiXG4gICAgICAgIGNsYXNzPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LXZpZXctbW9yZS1idXR0b25cIlxuICAgICAgICBbY2xhc3MuYWRmLWR5bmFtaWMtY2hpcC1saXN0LWhpZGRlbi1idG5dPVwiIWNhbGN1bGF0aW9uc0RvbmVcIlxuICAgICAgICAoY2xpY2spPVwiZGlzcGxheU5leHRDaGlwcygkZXZlbnQpXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgICBwYWdpbmF0aW9uRGF0YSA/ICgnRFlOQU1JQ19DSElQX0xJU1QuTE9BRF9NT1JFJyB8IHRyYW5zbGF0ZSkgOlxuICAgICAgICAgICAgICAgICgnVEFHX05PREVfTElTVC5WSUVXX01PUkUnIHwgdHJhbnNsYXRlOiB7IGNvdW50OiB1bmRpc3BsYXllZENoaXBzQ291bnQgfSlcbiAgICAgICAgfX1cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGlwLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9keW5hbWljLWNoaXAtbGlzdC9keW5hbWljLWNoaXAtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2R5bmFtaWMtY2hpcC1saXN0L2R5bmFtaWMtY2hpcC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFDTixTQUFTLEVBRVQsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFHcEQ7O0dBRUc7QUFTSCxNQUFNLE9BQU8sd0JBQXdCO0lBNERqQyxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWxEeEQsMEJBQTBCO1FBRTFCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFFbEIsNkJBQTZCO1FBRTdCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXRCLDhDQUE4QztR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QztRQUNwSCxDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQ2xDLENBQUM7SUFDTCxDQUFDOytHQTdMUSx3QkFBd0I7bUdBQXhCLHdCQUF3QixrZEFxQ25CLE9BQU8scUVDMUZ6QixzOURBeUNBLHNvRERTYyxjQUFjLGtnQkFBRSxhQUFhLGtEQUFFLE9BQU8sa0hBQUUsYUFBYSxvTEFBRSxJQUFJLDRGQUFFLGVBQWU7OzRGQUc3RSx3QkFBd0I7a0JBUnBDLFNBQVM7K0JBQ0ksdUJBQXVCLGNBQ3JCLElBQUksV0FHUCxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsZUFBZSxDQUFDLGlCQUN4RSxpQkFBaUIsQ0FBQyxJQUFJO3NGQU1yQyxVQUFVO3NCQURULEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFLekIsVUFBVTtzQkFEVCxLQUFLO2dCQUtOLGFBQWE7c0JBRFosS0FBSztnQkFLTixtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBS04sWUFBWTtzQkFEWCxLQUFLO2dCQUtOLFdBQVc7c0JBRFYsTUFBTTtnQkFLUCxXQUFXO3NCQURWLE1BQU07Z0JBSVAsYUFBYTtzQkFEWixTQUFTO3VCQUFDLG1CQUFtQjtnQkFJOUIsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IFBhZ2luYXRpb24gfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IE5nRm9yT2YsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRDaGlwLCBNYXRDaGlwc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENoaXAgfSBmcm9tICcuL2NoaXAnO1xuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IHNob3dzIGR5bmFtaWMgbGlzdCBvZiBjaGlwcyB3aGljaCByZW5kZXIgZGVwZW5kaW5nIG9uIGZyZWUgc3BhY2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLWR5bmFtaWMtY2hpcC1saXN0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLWNoaXAtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1jaGlwLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbTWF0Q2hpcHNNb2R1bGUsIFRyYW5zbGF0ZVBpcGUsIE5nRm9yT2YsIE1hdEljb25Nb2R1bGUsIE5nSWYsIE1hdEJ1dHRvbk1vZHVsZV0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljQ2hpcExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKiBlc2xpbnQgbm8tdW5kZXJzY29yZS1kYW5nbGU6IFtcImVycm9yXCIsIHsgXCJhbGxvd1wiOiBbXCJfZWxlbWVudFJlZlwiXSB9XSovXG4gICAgLyoqIFByb3ZpZGUgaWYgeW91IHdhbnQgdG8gdXNlIHBhZ2luYXRlZCBjaGlwcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHBhZ2luYXRpb246IFBhZ2luYXRpb247XG5cbiAgICAvKiogTGlzdCBvZiBjaGlwcyB0byBkaXNwbGF5LiAqL1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgY2hpcHM6IENoaXBbXTtcblxuICAgIC8qKiBTaG93IGRlbGV0ZSBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBzaG93RGVsZXRlID0gdHJ1ZTtcblxuICAgIC8qKiBEaXNhYmxlIGRlbGV0ZSBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlRGVsZXRlID0gZmFsc2U7XG5cbiAgICAvKiogU2hvdWxkIGxpbWl0IG51bWJlciBvZiBjaGlwcyBkaXNwbGF5ZWQuICovXG4gICAgQElucHV0KClcbiAgICBsaW1pdENoaXBzRGlzcGxheWVkID0gZmFsc2U7XG5cbiAgICAvKiogUm91bmQgdXAgY2hpcHMgKi9cbiAgICBASW5wdXQoKVxuICAgIHJvdW5kVXBDaGlwcyA9IGZhbHNlO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBidXR0b24gZm9yIHZpZXcgbW9yZSBpcyBjbGlja2VkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGRpc3BsYXlOZXh0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhbnkgY2hpcCBpcyByZW1vdmVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlbW92ZWRDaGlwID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdub2RlTGlzdENvbnRhaW5lcicpXG4gICAgY29udGFpbmVyVmlldzogRWxlbWVudFJlZjtcblxuICAgIEBWaWV3Q2hpbGRyZW4oTWF0Q2hpcClcbiAgICBtYXRDaGlwczogUXVlcnlMaXN0PE1hdENoaXA+O1xuXG4gICAgY2hpcHNUb0Rpc3BsYXk6IENoaXBbXSA9IFtdO1xuICAgIGNhbGN1bGF0aW9uc0RvbmUgPSBmYWxzZTtcbiAgICBjb2x1bW5GbGV4RGlyZWN0aW9uID0gZmFsc2U7XG4gICAgbW92ZUxvYWRNb3JlQnV0dG9uVG9OZXh0Um93ID0gZmFsc2U7XG4gICAgdW5kaXNwbGF5ZWRDaGlwc0NvdW50ID0gMDtcbiAgICB2aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXQ6IG51bWJlcjtcbiAgICB2aWV3TW9yZUJ1dHRvblRvcCA9IDA7XG4gICAgcGFnaW5hdGlvbkRhdGE6IFBhZ2luYXRpb247XG5cbiAgICBwcml2YXRlIGluaXRpYWxDaGlwczogQ2hpcFtdID0gW107XG4gICAgcHJpdmF0ZSBpbml0aWFsTGltaXRDaGlwc0Rpc3BsYXllZDogYm9vbGVhbjtcbiAgICBwcml2YXRlIHZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldEJlZm9yZUZsZXhEaXJlY3Rpb246IG51bWJlcjtcbiAgICBwcml2YXRlIHJlcXVlc3RlZERpc3BsYXlpbmdBbGxDaGlwcyA9IGZhbHNlO1xuICAgIHByaXZhdGUgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsTGltaXRDaGlwc0Rpc3BsYXllZCAmJiB0aGlzLmNoaXBzVG9EaXNwbGF5Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVDaGlwc1RvRGlzcGxheSgpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5wYWdpbmF0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQgPSB0aGlzLnBhZ2luYXRpb24/Lmhhc01vcmVJdGVtcztcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdGlvbkRhdGEgPSB0aGlzLnBhZ2luYXRpb247XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxMaW1pdENoaXBzRGlzcGxheWVkID0gdGhpcy5saW1pdENoaXBzRGlzcGxheWVkO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzLmNoaXBzKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxDaGlwcyA9IHRoaXMuY2hpcHM7XG4gICAgICAgICAgICB0aGlzLmNoaXBzVG9EaXNwbGF5ID0gdGhpcy5pbml0aWFsQ2hpcHM7XG4gICAgICAgICAgICBpZiAodGhpcy5saW1pdENoaXBzRGlzcGxheWVkICYmIHRoaXMuY2hpcHNUb0Rpc3BsYXkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVDaGlwc1RvRGlzcGxheSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EYXRhKSB7XG4gICAgICAgICAgICB0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQgPSB0aGlzLnBhZ2luYXRpb25EYXRhLmhhc01vcmVJdGVtcztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmluaXRpYWxMaW1pdENoaXBzRGlzcGxheWVkID0gdGhpcy5saW1pdENoaXBzRGlzcGxheWVkO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuY29udGFpbmVyVmlldy5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcy5jb250YWluZXJWaWV3Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIGRpc3BsYXlOZXh0Q2hpcHMoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAodGhpcy5wYWdpbmF0aW9uRGF0YSkge1xuICAgICAgICAgICAgdGhpcy5yZXF1ZXN0ZWREaXNwbGF5aW5nQWxsQ2hpcHMgPSAhdGhpcy5wYWdpbmF0aW9uRGF0YS5oYXNNb3JlSXRlbXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxpbWl0Q2hpcHNEaXNwbGF5ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMucmVxdWVzdGVkRGlzcGxheWluZ0FsbENoaXBzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5yZXF1ZXN0ZWREaXNwbGF5aW5nQWxsQ2hpcHMpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMuY29udGFpbmVyVmlldy5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRpc3BsYXlOZXh0LmVtaXQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUNoaXBzVG9EaXNwbGF5KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZXF1ZXN0ZWREaXNwbGF5aW5nQWxsQ2hpcHMgfHwgIXRoaXMuY2hpcHMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGlwc1RvRGlzcGxheSA9IHRoaXMuaW5pdGlhbENoaXBzO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy51bmRpc3BsYXllZENoaXBzQ291bnQgPSAwO1xuICAgICAgICBsZXQgY2hpcHNUb0Rpc3BsYXkgPSAxO1xuICAgICAgICBjb25zdCBjb250YWluZXJXaWR0aDogbnVtYmVyID0gdGhpcy5jb250YWluZXJWaWV3Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgIGNvbnN0IHZpZXdNb3JlQnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudCA9IHRoaXMuY29udGFpbmVyVmlldy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzFdO1xuICAgICAgICBjb25zdCB2aWV3TW9yZUJ0bldpZHRoOiBudW1iZXIgPSB2aWV3TW9yZUJ1dHRvbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgICAgY29uc3QgZmlyc3RDaGlwID0gdGhpcy5tYXRDaGlwcy5nZXQoMCk7XG4gICAgICAgIGNvbnN0IGNoaXBNYXJnaW4gPSBmaXJzdENoaXAgPyB0aGlzLmdldENoaXBNYXJnaW4oZmlyc3RDaGlwKSA6IDA7XG4gICAgICAgIGxldCBjaGlwc1dpZHRoID0gMDtcbiAgICAgICAgY29uc3QgY2hpcHMgPSB0aGlzLm1hdENoaXBzLnRvQXJyYXkoKTtcbiAgICAgICAgbGV0IGxhc3RJbmRleCA9IDA7XG4gICAgICAgIGRvIHtcbiAgICAgICAgICAgIGNoaXBzV2lkdGggPSBNYXRoLm1heChcbiAgICAgICAgICAgICAgICBjaGlwcy5yZWR1Y2UoKHdpZHRoLCB2YWwsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoICs9IHZhbC5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICsgY2hpcE1hcmdpbjtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYXZhaWxhYmxlU3BhY2UgPVxuICAgICAgICAgICAgICAgICAgICAgICAgKGluZGV4ICYmIGluZGV4ID09PSBjaGlwcy5sZW5ndGggLSAxKSB8fCAhdGhpcy5wYWdpbmF0aW9uRGF0YSA/IGNvbnRhaW5lcldpZHRoIC0gdmlld01vcmVCdG5XaWR0aCA6IGNvbnRhaW5lcldpZHRoO1xuICAgICAgICAgICAgICAgICAgICBpZiAoYXZhaWxhYmxlU3BhY2UgPj0gd2lkdGggLSBjaGlwTWFyZ2luKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlwc1RvRGlzcGxheSA9ICh0aGlzLnBhZ2luYXRpb25EYXRhID8gY2hpcHNUb0Rpc3BsYXkgOiBpbmRleCkgKyAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFzdEluZGV4Kys7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldCA9IHdpZHRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy52aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXRCZWZvcmVGbGV4RGlyZWN0aW9uID0gd2lkdGg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHdpZHRoO1xuICAgICAgICAgICAgICAgIH0sIDApLFxuICAgICAgICAgICAgICAgIGNoaXBzV2lkdGhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjaGlwcy5zcGxpY2UoMCwgbGFzdEluZGV4KTtcbiAgICAgICAgICAgIGxhc3RJbmRleCA9IDA7XG4gICAgICAgIH0gd2hpbGUgKChjaGlwcy5sZW5ndGggfHwgKGNoaXBzVG9EaXNwbGF5IDwgdGhpcy5tYXRDaGlwcy5sZW5ndGggJiYgdGhpcy5tYXRDaGlwcy5sZW5ndGgpKSAmJiB0aGlzLnBhZ2luYXRpb25EYXRhKTtcbiAgICAgICAgdGhpcy5hcnJhbmdlRWxlbWVudHMoY29udGFpbmVyV2lkdGgsIGNoaXBzV2lkdGgsIHZpZXdNb3JlQnRuV2lkdGgsIGNoaXBzVG9EaXNwbGF5LCB2aWV3TW9yZUJ1dHRvbik7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRpb25zRG9uZSA9IHRydWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDaGlwTWFyZ2luKGNoaXA6IE1hdENoaXApOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjaGlwU3R5bGVzID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoY2hpcC5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgcmV0dXJuIHBhcnNlSW50KGNoaXBTdHlsZXMubWFyZ2luTGVmdCwgMTApICsgcGFyc2VJbnQoY2hpcFN0eWxlcy5tYXJnaW5SaWdodCwgMTApO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXJyYW5nZUVsZW1lbnRzKFxuICAgICAgICBjb250YWluZXJXaWR0aDogbnVtYmVyLFxuICAgICAgICBjaGlwc1dpZHRoOiBudW1iZXIsXG4gICAgICAgIHZpZXdNb3JlQnRuV2lkdGg6IG51bWJlcixcbiAgICAgICAgY2hpcHNUb0Rpc3BsYXk6IG51bWJlcixcbiAgICAgICAgdmlld01vcmVCdXR0b246IEhUTUxCdXR0b25FbGVtZW50XG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmIChjb250YWluZXJXaWR0aCAtIGNoaXBzV2lkdGggLSB2aWV3TW9yZUJ0bldpZHRoIDw9IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGNoaXAgPSB0aGlzLnBhZ2luYXRpb25EYXRhID8gdGhpcy5tYXRDaGlwcy5sYXN0IDogdGhpcy5tYXRDaGlwcy5maXJzdDtcbiAgICAgICAgICAgIGNvbnN0IGhhc05vdEVub3VnaFNwYWNlRm9yTW9yZUJ1dHRvbiA9XG4gICAgICAgICAgICAgICAgY29udGFpbmVyV2lkdGggPCBjaGlwPy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICsgY2hpcD8uX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0ICsgdmlld01vcmVCdG5XaWR0aDtcbiAgICAgICAgICAgIHRoaXMuY29sdW1uRmxleERpcmVjdGlvbiA9IGNoaXBzVG9EaXNwbGF5ID09PSAxICYmICF0aGlzLnBhZ2luYXRpb25EYXRhICYmIGhhc05vdEVub3VnaFNwYWNlRm9yTW9yZUJ1dHRvbjtcbiAgICAgICAgICAgIHRoaXMubW92ZUxvYWRNb3JlQnV0dG9uVG9OZXh0Um93ID0gdGhpcy5wYWdpbmF0aW9uRGF0YSAmJiBoYXNOb3RFbm91Z2hTcGFjZUZvck1vcmVCdXR0b247XG4gICAgICAgICAgICB0aGlzLnVuZGlzcGxheWVkQ2hpcHNDb3VudCA9IHRoaXMuY2hpcHNUb0Rpc3BsYXkubGVuZ3RoIC0gY2hpcHNUb0Rpc3BsYXk7XG4gICAgICAgICAgICB0aGlzLmNoaXBzVG9EaXNwbGF5ID0gdGhpcy5jaGlwc1RvRGlzcGxheS5zbGljZSgwLCBjaGlwc1RvRGlzcGxheSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1vdmVMb2FkTW9yZUJ1dHRvblRvTmV4dFJvdyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGltaXRDaGlwc0Rpc3BsYXllZCA9IHRoaXMudW5kaXNwbGF5ZWRDaGlwc0NvdW50ID8gdGhpcy5pbml0aWFsTGltaXRDaGlwc0Rpc3BsYXllZCA6IHRoaXMucGFnaW5hdGlvbkRhdGE/Lmhhc01vcmVJdGVtcztcbiAgICAgICAgaWYgKHRoaXMucGFnaW5hdGlvbkRhdGE/Lmhhc01vcmVJdGVtcykge1xuICAgICAgICAgICAgY29uc3QgbGFzdENoaXBUb3AgPSB0aGlzLm1hdENoaXBzLmxhc3QuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICAgICAgICBpZiAodGhpcy5tb3ZlTG9hZE1vcmVCdXR0b25Ub05leHRSb3cpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBidXR0b25Ub3BIZWlnaHRDb3JyZWN0aW9uID0gNTtcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldCA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy52aWV3TW9yZUJ1dHRvblRvcCA9IGxhc3RDaGlwVG9wICsgdmlld01vcmVCdXR0b24ub2Zmc2V0SGVpZ2h0ICsgYnV0dG9uVG9wSGVpZ2h0Q29ycmVjdGlvbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYnV0dG9uVG9wSGVpZ2h0Q29ycmVjdGlvbiA9IDM7XG4gICAgICAgICAgICAgICAgdGhpcy52aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXQgPSB0aGlzLnZpZXdNb3JlQnV0dG9uTGVmdE9mZnNldEJlZm9yZUZsZXhEaXJlY3Rpb247XG4gICAgICAgICAgICAgICAgdGhpcy52aWV3TW9yZUJ1dHRvblRvcCA9IGxhc3RDaGlwVG9wIC0gYnV0dG9uVG9wSGVpZ2h0Q29ycmVjdGlvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0ID0gdGhpcy5jb2x1bW5GbGV4RGlyZWN0aW9uID8gMCA6IHRoaXMudmlld01vcmVCdXR0b25MZWZ0T2Zmc2V0QmVmb3JlRmxleERpcmVjdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5wYWdpbmF0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnZpZXdNb3JlQnV0dG9uVG9wID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImFkZi1keW5hbWljLWNoaXAtbGlzdC1jb250YWluZXJcIlxuICAgIFtjbGFzcy5hZGYtZHluYW1pYy1jaGlwLWxpc3QtZmxleC1jb2x1bW5dPVwibGltaXRDaGlwc0Rpc3BsYXllZCAmJiAoIWNhbGN1bGF0aW9uc0RvbmUgfHwgY29sdW1uRmxleERpcmVjdGlvbilcIlxuICAgIFtjbGFzcy5hZGYtZHluYW1pYy1jaGlwLWxpc3QtYnV0dG9uLWluLW5leHQtbGluZV09XCJtb3ZlTG9hZE1vcmVCdXR0b25Ub05leHRSb3dcIlxuICAgIFtjbGFzcy5hZGYtZHluYW1pYy1jaGlwLWxpc3QtcGFnaW5hdGVkXT1cInBhZ2luYXRpb25EYXRhXCJcbiAgICAjbm9kZUxpc3RDb250YWluZXI+XG4gICAgPG1hdC1jaGlwLXNldFxuICAgICAgICBbY2xhc3MuYWRmLWR5bmFtaWMtY2hpcC1saXN0LWZ1bGwtd2lkdGhdPVwibGltaXRDaGlwc0Rpc3BsYXllZCAmJiAhY2FsY3VsYXRpb25zRG9uZVwiXG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInTUVUQURBVEEuQkFTSUMuVEFHUycgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgPG1hdC1jaGlwXG4gICAgICAgICAgICBjbGFzcz1cImFkZi1keW5hbWljLWNoaXAtbGlzdC1jaGlwXCJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlwIG9mIGNoaXBzVG9EaXNwbGF5OyBsZXQgaWR4ID0gaW5kZXhcIlxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlci1yYWRpdXNdPVwicm91bmRVcENoaXBzID8gJzIwcHgnIDogJzEwcHgnXCJcbiAgICAgICAgICAgIFtzdHlsZS5mb250LXdlaWdodF09XCInYm9sZCdcIlxuICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlZENoaXAuZW1pdChjaGlwLmlkKVwiPlxuICAgICAgICAgICAgPHNwYW4gaWQ9XCJhZGYtZHluYW1pYy1jaGlwLWxpc3QtY2hpcC1uYW1lLXt7IGlkeCB9fVwiPnt7IGNoaXAubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInNob3dEZWxldGVcIlxuICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LWRlbGV0ZS17eyBjaGlwLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRmLWR5bmFtaWMtY2hpcC1saXN0LWRlbGV0ZS1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZURlbGV0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgbWF0Q2hpcFJlbW92ZT5cbiAgICAgICAgICAgICAgICBjbG9zZVxuICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPC9tYXQtY2hpcD5cbiAgICA8L21hdC1jaGlwLXNldD5cbiAgICA8YnV0dG9uXG4gICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi1keW5hbWljLWNoaXAtbGlzdC12aWV3LW1vcmUtYnV0dG9uXCJcbiAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICBbaGlkZGVuXT1cImNoaXBzVG9EaXNwbGF5Py5sZW5ndGggPT09IDAgfHwgIWxpbWl0Q2hpcHNEaXNwbGF5ZWRcIlxuICAgICAgICBbc3R5bGUubGVmdC5weF09XCJ2aWV3TW9yZUJ1dHRvbkxlZnRPZmZzZXRcIlxuICAgICAgICBbc3R5bGUudG9wLnB4XT1cIiEhcGFnaW5hdGlvbiA/IHZpZXdNb3JlQnV0dG9uVG9wIDogJydcIlxuICAgICAgICBjbGFzcz1cImFkZi1keW5hbWljLWNoaXAtbGlzdC12aWV3LW1vcmUtYnV0dG9uXCJcbiAgICAgICAgW2NsYXNzLmFkZi1keW5hbWljLWNoaXAtbGlzdC1oaWRkZW4tYnRuXT1cIiFjYWxjdWxhdGlvbnNEb25lXCJcbiAgICAgICAgKGNsaWNrKT1cImRpc3BsYXlOZXh0Q2hpcHMoJGV2ZW50KVwiPlxuICAgICAgICB7e1xuICAgICAgICAgICAgcGFnaW5hdGlvbkRhdGEgPyAoJ0RZTkFNSUNfQ0hJUF9MSVNULkxPQURfTU9SRScgfCB0cmFuc2xhdGUpIDpcbiAgICAgICAgICAgICAgICAoJ1RBR19OT0RFX0xJU1QuVklFV19NT1JFJyB8IHRyYW5zbGF0ZTogeyBjb3VudDogdW5kaXNwbGF5ZWRDaGlwc0NvdW50IH0pXG4gICAgICAgIH19XG4gICAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
@@ -20,7 +20,7 @@ import { FormsModule } from '@angular/forms';
20
20
  import { MatButtonModule } from '@angular/material/button';
21
21
  import { MatIconModule } from '@angular/material/icon';
22
22
  import { MatTabsModule } from '@angular/material/tabs';
23
- import { TranslateModule } from '@ngx-translate/core';
23
+ import { TranslatePipe } from '@ngx-translate/core';
24
24
  import { FormRulesManager, formRulesManagerFactory } from '../models/form-rules.model';
25
25
  import { FormService } from '../services/form.service';
26
26
  import { FormFieldComponent } from './form-field/form-field.component';
@@ -32,7 +32,6 @@ import * as i0 from "@angular/core";
32
32
  import * as i1 from "../services/form.service";
33
33
  import * as i2 from "../models/form-rules.model";
34
34
  import * as i3 from "@angular/material/tabs";
35
- import * as i4 from "@ngx-translate/core";
36
35
  export class FormRendererComponent {
37
36
  constructor(formService, formRulesManager, middlewareServices) {
38
37
  this.formService = formService;
@@ -123,7 +122,7 @@ export class FormRendererComponent {
123
122
  useFactory: formRulesManagerFactory,
124
123
  deps: [Injector]
125
124
  }
126
- ], ngImport: i0, template: "<div id=\"adf-form-renderer\" class=\"{{ formDefinition.className }}\"\n [ngClass]=\"{ 'adf-readonly-form': formDefinition.readOnly }\">\n <div *ngIf=\"formDefinition.hasTabs()\">\n <div *ngIf=\"hasTabs()\" class=\"alfresco-tabs-widget\">\n <mat-tab-group [preserveContent]=\"true\">\n <mat-tab *ngFor=\"let tab of visibleTabs()\" [label]=\"tab.title | translate \">\n <ng-template matTabContent>\n <div class=\"adf-form-tab-content\">\n <ng-template *ngTemplateOutlet=\"render; context: { fieldToRender: tab.fields }\" />\n </div>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n\n <div *ngIf=\"!formDefinition.hasTabs() && formDefinition.hasFields()\">\n <ng-template *ngTemplateOutlet=\"render; context: { fieldToRender: formDefinition.fields }\" />\n </div>\n</div>\n\n<ng-template #render let-fieldToRender=\"fieldToRender\">\n <div *ngFor=\"let currentRootElement of fieldToRender\">\n <div *ngIf=\"currentRootElement.type === 'container' || currentRootElement.type === 'group'\"\n [id]=\"'field-' + currentRootElement?.id + '-container'\"\n class=\"adf-container-widget\"\n [hidden]=\"!currentRootElement?.isVisible\">\n <adf-header-widget [element]=\"currentRootElement\" />\n <div *ngIf=\"currentRootElement?.form?.enableFixedSpace; else fixingTemplate\">\n <div class=\"adf-grid-list\"\n [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + getNumberOfColumns(currentRootElement) + ', 1fr)' }\"\n *ngIf=\"currentRootElement?.isExpanded\">\n <div class=\"adf-grid-list-item\"\n *ngFor=\"let field of getContainerFields(currentRootElement)\"\n [ngStyle]=\"{ 'grid-area': 'auto / auto / span ' + (field?.rowspan || 1) + ' / span ' + (field?.colspan || 1) }\">\n <adf-form-field *ngIf=\"field\" [field]=\"field\" />\n </div>\n </div>\n </div>\n\n <ng-template #fixingTemplate>\n <section class=\"adf-grid-list-column-view\" *ngIf=\"currentRootElement?.isExpanded\">\n <div class=\"adf-grid-list-single-column\"\n *ngFor=\"let column of currentRootElement?.columns\"\n [style.width.%]=\"getColumnWidth(currentRootElement)\"\n >\n <ng-container *ngFor=\"let field of column?.fields\">\n <ng-container *ngIf=\"field.type === 'section'; else formField\">\n <adf-form-section [field]=\"field\"/>\n </ng-container>\n <ng-template #formField>\n <div class=\"adf-grid-list-column-view-item\">\n <adf-form-field [field]=\"field\"/>\n </div>\n </ng-template>\n </ng-container>\n </div>\n </section>\n </ng-template>\n\n <ng-template #columnViewItem let-column=\"column\">\n <div class=\"adf-grid-list-column-view-item\" *ngFor=\"let field of column?.fields\">\n <adf-form-field *ngIf=\"field\" [field]=\"field\" />\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"currentRootElement.type === 'dynamic-table'\" class=\"adf-container-widget\">\n <adf-form-field [field]=\"currentRootElement\" />\n </div>\n\n <div class=\"adf-container-widget\"\n *ngIf=\"currentRootElement.type === 'readonly' && currentRootElement.field.params.field.type === 'dynamic-table'\">\n <adf-form-field [field]=\"currentRootElement.field\"/>\n </div>\n </div>\n</ng-template>\n", styles: [".adf-hidden{display:none}.adf-field-list{padding:0;list-style-type:none;width:100%;height:100%}.alfresco-tabs-widget{width:100%}.alfresco-tabs-widget .adf-form-tab-content{margin-top:1em}.alfresco-tabs-widget .adf-form-tab-group{width:100%}.alfresco-tabs-widget .mat-mdc-tab-body{margin-bottom:8em}.alfresco-tabs-widget .mat-mdc-tab-header{z-index:10;margin:0;background-color:#fff;position:absolute;width:98%;margin-left:0!important;margin-right:10px!important;top:0}.alfresco-tabs-widget .mat-mdc-tab-body-wrapper{padding-top:5%}.mat-mdc-card-content:first-child{padding-top:1em}.adf-container-widget .adf-grid-list{display:grid}.adf-container-widget .adf-grid-list-column-view{display:flex;margin-right:-1%;width:100%}@media (max-width: 959.9px){.adf-container-widget .adf-grid-list-column-view{display:flow}}.adf-container-widget .adf-grid-list-column-view-item{width:100%;flex-grow:1;box-sizing:border-box;padding-left:1%;padding-right:1%}.adf-container-widget .adf-grid-list-single-column{display:flex;flex-direction:column;flex:1 1 auto}.adf-container-widget .adf-grid-list-item{box-sizing:border-box;padding-left:3px;padding-right:3px}@media (max-width: 959.9px){.adf-container-widget .adf-grid-list-item{flex:1 0 100%}.adf-container-widget .adf-grid-list--column-view{flex-direction:column}.adf-container-widget .adf-grid-list-single-column-xl{display:none}.adf-container-widget .adf-grid-list-single-column-s{display:block;width:90%!important}.adf-container-widget .adf-grid-list-column-view-item{flex:1 0 auto}}.adf-container-widget mat-input-placeholder{top:1.8em}.adf-container-widget .mat-focused{width:100%}.adf-container-widget .mat-focused .mdc-text-field--focused label{color:var(--theme-primary-color)}.adf-container-widget .mat-focused label{transition:transform .15s linear;background-color:.3s cubic-bezier(.55,0,.55,.2)}.adf-container-widget .mat-focused .mat-mdc-form-field-text-prefix{color:var(--theme-primary-color)}.adf-container-widget .mat-grid-tile{overflow:visible;width:80%}.adf-container-widget adf-form-field,.adf-container-widget mat-form-field{width:100%}.adf-form-container{max-width:100%;max-height:100%}.adf-form-container .mat-mdc-card{padding:16px 24px;overflow:hidden}.adf-form-container .mat-mdc-tab-header{position:fixed;z-index:1000}.adf-form-container .mat-mdc-card-header-text{margin:0}.adf-form-container .mat-mdc-card-content{overflow:hidden;padding-top:0}.adf-form-container mat-tab-label-text{font-size:var(--theme-subheading-2-font-size);line-height:var(--theme-headline-line-height);letter-spacing:-.4px;text-align:left;color:#0000008a;text-transform:uppercase}.adf-form-container .mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:4px}.adf-form-container .mat-mdc-text-field-wrapper{margin:0 12px 0 0}.adf-form-title{font-size:var(--theme-title-font-size);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adf-form-reload-button{position:absolute;right:12px;top:30px}.adf-form-validation-button{position:absolute;right:50px;top:39px;color:var(--theme-accent-color)}.adf-form-validation-button .adf-invalid-color{color:var(--theme-warn-color)}.adf-form-hide-button{display:none}.adf-task-title{text-align:center}.adf-form-mat-card-actions{padding-bottom:25px;padding-right:25px}.adf-form-mat-card-actions .mat-mdc-button{height:36px;border-radius:5px;width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-form-mat-card-actions .mdc-button__label{min-width:58px}.adf-left-label-input-container{display:flex}.adf-left-label-input-container div:nth-child(2){flex:1}.adf-left-label-input-container .mat-mdc-floating-label{top:auto;bottom:0}.adf-left-label{line-height:64px;margin-right:15px}form-field{width:100%}form-field .mat-mdc-input-element{font-size:var(--theme-body-2-font-size);padding-top:8px;line-height:normal}.adf-error-messages-container{min-height:35px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i3.MatTabContent, selector: "[matTabContent]" }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: FormFieldComponent, selector: "adf-form-field", inputs: ["field"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: HeaderWidgetComponent, selector: "adf-header-widget", inputs: ["element"] }, { kind: "component", type: FormSectionComponent, selector: "adf-form-section", inputs: ["field"] }], encapsulation: i0.ViewEncapsulation.None }); }
125
+ ], ngImport: i0, template: "<div id=\"adf-form-renderer\" class=\"{{ formDefinition.className }}\"\n [ngClass]=\"{ 'adf-readonly-form': formDefinition.readOnly }\">\n <div *ngIf=\"formDefinition.hasTabs()\">\n <div *ngIf=\"hasTabs()\" class=\"alfresco-tabs-widget\">\n <mat-tab-group [preserveContent]=\"true\">\n <mat-tab *ngFor=\"let tab of visibleTabs()\" [label]=\"tab.title | translate \">\n <ng-template matTabContent>\n <div class=\"adf-form-tab-content\">\n <ng-template *ngTemplateOutlet=\"render; context: { fieldToRender: tab.fields }\" />\n </div>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n\n <div *ngIf=\"!formDefinition.hasTabs() && formDefinition.hasFields()\">\n <ng-template *ngTemplateOutlet=\"render; context: { fieldToRender: formDefinition.fields }\" />\n </div>\n</div>\n\n<ng-template #render let-fieldToRender=\"fieldToRender\">\n <div *ngFor=\"let currentRootElement of fieldToRender\">\n <div *ngIf=\"currentRootElement.type === 'container' || currentRootElement.type === 'group'\"\n [id]=\"'field-' + currentRootElement?.id + '-container'\"\n class=\"adf-container-widget\"\n [hidden]=\"!currentRootElement?.isVisible\">\n <adf-header-widget [element]=\"currentRootElement\" />\n <div *ngIf=\"currentRootElement?.form?.enableFixedSpace; else fixingTemplate\">\n <div class=\"adf-grid-list\"\n [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + getNumberOfColumns(currentRootElement) + ', 1fr)' }\"\n *ngIf=\"currentRootElement?.isExpanded\">\n <div class=\"adf-grid-list-item\"\n *ngFor=\"let field of getContainerFields(currentRootElement)\"\n [ngStyle]=\"{ 'grid-area': 'auto / auto / span ' + (field?.rowspan || 1) + ' / span ' + (field?.colspan || 1) }\">\n <adf-form-field *ngIf=\"field\" [field]=\"field\" />\n </div>\n </div>\n </div>\n\n <ng-template #fixingTemplate>\n <section class=\"adf-grid-list-column-view\" *ngIf=\"currentRootElement?.isExpanded\">\n <div class=\"adf-grid-list-single-column\"\n *ngFor=\"let column of currentRootElement?.columns\"\n [style.width.%]=\"getColumnWidth(currentRootElement)\"\n >\n <ng-container *ngFor=\"let field of column?.fields\">\n <ng-container *ngIf=\"field.type === 'section'; else formField\">\n <adf-form-section [field]=\"field\"/>\n </ng-container>\n <ng-template #formField>\n <div class=\"adf-grid-list-column-view-item\">\n <adf-form-field [field]=\"field\"/>\n </div>\n </ng-template>\n </ng-container>\n </div>\n </section>\n </ng-template>\n\n <ng-template #columnViewItem let-column=\"column\">\n <div class=\"adf-grid-list-column-view-item\" *ngFor=\"let field of column?.fields\">\n <adf-form-field *ngIf=\"field\" [field]=\"field\" />\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"currentRootElement.type === 'dynamic-table'\" class=\"adf-container-widget\">\n <adf-form-field [field]=\"currentRootElement\" />\n </div>\n\n <div class=\"adf-container-widget\"\n *ngIf=\"currentRootElement.type === 'readonly' && currentRootElement.field.params.field.type === 'dynamic-table'\">\n <adf-form-field [field]=\"currentRootElement.field\"/>\n </div>\n </div>\n</ng-template>\n", styles: [".adf-hidden{display:none}.adf-field-list{padding:0;list-style-type:none;width:100%;height:100%}.alfresco-tabs-widget{width:100%}.alfresco-tabs-widget .adf-form-tab-content{margin-top:1em}.alfresco-tabs-widget .adf-form-tab-group{width:100%}.alfresco-tabs-widget .mat-mdc-tab-body{margin-bottom:8em}.alfresco-tabs-widget .mat-mdc-tab-header{z-index:10;margin:0;background-color:#fff;position:absolute;width:98%;margin-left:0!important;margin-right:10px!important;top:0}.alfresco-tabs-widget .mat-mdc-tab-body-wrapper{padding-top:5%}.mat-mdc-card-content:first-child{padding-top:1em}.adf-container-widget .adf-grid-list{display:grid}.adf-container-widget .adf-grid-list-column-view{display:flex;margin-right:-1%;width:100%}@media (max-width: 959.9px){.adf-container-widget .adf-grid-list-column-view{display:flow}}.adf-container-widget .adf-grid-list-column-view-item{width:100%;flex-grow:1;box-sizing:border-box;padding-left:1%;padding-right:1%}.adf-container-widget .adf-grid-list-single-column{display:flex;flex-direction:column;flex:1 1 auto}.adf-container-widget .adf-grid-list-item{box-sizing:border-box;padding-left:3px;padding-right:3px}@media (max-width: 959.9px){.adf-container-widget .adf-grid-list-item{flex:1 0 100%}.adf-container-widget .adf-grid-list--column-view{flex-direction:column}.adf-container-widget .adf-grid-list-single-column-xl{display:none}.adf-container-widget .adf-grid-list-single-column-s{display:block;width:90%!important}.adf-container-widget .adf-grid-list-column-view-item{flex:1 0 auto}}.adf-container-widget mat-input-placeholder{top:1.8em}.adf-container-widget .mat-focused{width:100%}.adf-container-widget .mat-focused .mdc-text-field--focused label{color:var(--theme-primary-color)}.adf-container-widget .mat-focused label{transition:transform .15s linear;background-color:.3s cubic-bezier(.55,0,.55,.2)}.adf-container-widget .mat-focused .mat-mdc-form-field-text-prefix{color:var(--theme-primary-color)}.adf-container-widget .mat-grid-tile{overflow:visible;width:80%}.adf-container-widget adf-form-field,.adf-container-widget mat-form-field{width:100%}.adf-form-container{max-width:100%;max-height:100%}.adf-form-container .mat-mdc-card{padding:16px 24px;overflow:hidden}.adf-form-container .mat-mdc-tab-header{position:fixed;z-index:1000}.adf-form-container .mat-mdc-card-header-text{margin:0}.adf-form-container .mat-mdc-card-content{overflow:hidden;padding-top:0}.adf-form-container mat-tab-label-text{font-size:var(--theme-subheading-2-font-size);line-height:var(--theme-headline-line-height);letter-spacing:-.4px;text-align:left;color:#0000008a;text-transform:uppercase}.adf-form-container .mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:4px}.adf-form-container .mat-mdc-text-field-wrapper{margin:0 12px 0 0}.adf-form-title{font-size:var(--theme-title-font-size);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adf-form-reload-button{position:absolute;right:12px;top:30px}.adf-form-validation-button{position:absolute;right:50px;top:39px;color:var(--theme-accent-color)}.adf-form-validation-button .adf-invalid-color{color:var(--theme-warn-color)}.adf-form-hide-button{display:none}.adf-task-title{text-align:center}.adf-form-mat-card-actions{padding-bottom:25px;padding-right:25px}.adf-form-mat-card-actions .mat-mdc-button{height:36px;border-radius:5px;width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-form-mat-card-actions .mdc-button__label{min-width:58px}.adf-left-label-input-container{display:flex}.adf-left-label-input-container div:nth-child(2){flex:1}.adf-left-label-input-container .mat-mdc-floating-label{top:auto;bottom:0}.adf-left-label{line-height:64px;margin-right:15px}form-field{width:100%}form-field .mat-mdc-input-element{font-size:var(--theme-body-2-font-size);padding-top:8px;line-height:normal}.adf-error-messages-container{min-height:35px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i3.MatTabContent, selector: "[matTabContent]" }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: FormFieldComponent, selector: "adf-form-field", inputs: ["field"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: HeaderWidgetComponent, selector: "adf-header-widget", inputs: ["element"] }, { kind: "component", type: FormSectionComponent, selector: "adf-form-section", inputs: ["field"] }], encapsulation: i0.ViewEncapsulation.None }); }
127
126
  }
128
127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormRendererComponent, decorators: [{
129
128
  type: Component,
@@ -138,7 +137,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
138
137
  MatTabsModule,
139
138
  NgForOf,
140
139
  NgTemplateOutlet,
141
- TranslateModule,
140
+ TranslatePipe,
142
141
  MatButtonModule,
143
142
  MatIconModule,
144
143
  NgStyle,
@@ -159,4 +158,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
159
158
  }], readOnly: [{
160
159
  type: Input
161
160
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL2Zvcm0tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0NBQWtDLEVBQWtDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUcsT0FBTyxFQUFrQyxTQUFTLEVBQVksTUFBTSxXQUFXLENBQUM7QUFDaEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7OztBQStCN0UsTUFBTSxPQUFPLHFCQUFxQjtJQVc5QixZQUNXLFdBQXdCLEVBQ3ZCLGdCQUFxQyxFQUdyQyxrQkFBcUQ7UUFKdEQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFxQjtRQUdyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1DO1FBWGpFLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFZZCxDQUFDO0lBRUosUUFBUTtRQUNKLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDMUQsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCxXQUFXO1FBQ1AsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBdUI7UUFDdEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDO1lBQ3hFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLGVBQWUsSUFBSSxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsa0JBQWtCLENBQUMsT0FBdUI7UUFDdEMsTUFBTSxvQkFBb0IsR0FBcUIsRUFBRSxDQUFDO1FBQ2xELE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLEtBQUssSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLFFBQVEsR0FBRyxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ2hFLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQ3ZDLElBQUksYUFBYSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO29CQUNsQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUMvRCxDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxzQkFBc0IsR0FBRyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztvQkFDakUsSUFBSSxDQUFDLENBQUMsc0JBQXNCLElBQUksUUFBUSxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUMzQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQzs0QkFDOUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNwQyxDQUFDO29CQUNMLENBQUM7Z0JBQ0wsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUVELE9BQU8sb0JBQW9CLENBQUM7SUFDaEMsQ0FBQztJQUVPLHFCQUFxQixDQUFDLE9BQXVCO1FBQ2pELElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQy9CLFlBQVksR0FBRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUNsRSxhQUFhLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQ3hGLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUN0QixDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsY0FBYyxDQUFDLFNBQXlCO1FBQ3BDLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDNUIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRU8scUJBQXFCO1FBQ3pCLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUV2RCxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFO29CQUNsRCxJQUFJLGlCQUFpQixDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ3hDLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BELENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7SUFDTCxDQUFDOytHQXpHUSxxQkFBcUIsNkVBZWxCLGtDQUFrQzttR0FmckMscUJBQXFCLG9JQXhCbkI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixVQUFVLEVBQUUsdUJBQXVCO2dCQUNuQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUM7YUFDbkI7U0FDSiwwQkMzQ0wsZ2hJQTZFQSxnMUhEaENRLElBQUksNEZBQ0osYUFBYSx5dEJBQ2IsT0FBTyxtSEFDUCxnQkFBZ0IsbUpBQ2hCLGVBQWUsMkZBQ2YsZUFBZSw4QkFDZixhQUFhLCtCQUNiLE9BQU8sMkVBQ1Asa0JBQWtCLDZFQUNsQixXQUFXLCtCQUNYLE9BQU8sb0ZBQ1AscUJBQXFCLG1GQUNyQixvQkFBb0I7OzRGQUlmLHFCQUFxQjtrQkE3QmpDLFNBQVM7K0JBQ0ksbUJBQW1CLGNBQ2pCLElBQUksYUFHTDt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixVQUFVLEVBQUUsdUJBQXVCOzRCQUNuQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUM7eUJBQ25CO3FCQUNKLFdBQ1E7d0JBQ0wsSUFBSTt3QkFDSixhQUFhO3dCQUNiLE9BQU87d0JBQ1AsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCxPQUFPO3dCQUNQLHFCQUFxQjt3QkFDckIsb0JBQW9CO3FCQUN2QixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJOzswQkFnQmhDLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsa0NBQWtDO3lDQWI5QyxjQUFjO3NCQURiLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUl6QixRQUFRO3NCQURQLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yT2YsIE5nSWYsIE5nU3R5bGUsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0VGFic01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBGb3JtUnVsZXNNYW5hZ2VyLCBmb3JtUnVsZXNNYW5hZ2VyRmFjdG9yeSB9IGZyb20gJy4uL21vZGVscy9mb3JtLXJ1bGVzLm1vZGVsJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGT1JNX0ZJRUxEX01PREVMX1JFTkRFUl9NSURETEVXQVJFLCBGb3JtRmllbGRNb2RlbFJlbmRlck1pZGRsZXdhcmUgfSBmcm9tICcuL21pZGRsZXdhcmVzL21pZGRsZXdhcmUnO1xuaW1wb3J0IHsgQ29udGFpbmVyTW9kZWwsIEZvcm1GaWVsZE1vZGVsLCBGb3JtTW9kZWwsIFRhYk1vZGVsIH0gZnJvbSAnLi93aWRnZXRzJztcbmltcG9ydCB7IEhlYWRlcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9oZWFkZXIvaGVhZGVyLndpZGdldCc7XG5pbXBvcnQgeyBGb3JtU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1zZWN0aW9uL2Zvcm0tc2VjdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1mb3JtLXJlbmRlcmVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZvcm1SdWxlc01hbmFnZXIsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBmb3JtUnVsZXNNYW5hZ2VyRmFjdG9yeSxcbiAgICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl1cbiAgICAgICAgfVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBNYXRUYWJzTW9kdWxlLFxuICAgICAgICBOZ0Zvck9mLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgTmdTdHlsZSxcbiAgICAgICAgRm9ybUZpZWxkQ29tcG9uZW50LFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgSGVhZGVyV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBGb3JtU2VjdGlvbkNvbXBvbmVudFxuICAgIF0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtUmVuZGVyZXJDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBmb3JtRGVmaW5pdGlvbjogRm9ybU1vZGVsO1xuXG4gICAgQElucHV0KClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgZGVidWdNb2RlOiBib29sZWFuO1xuXG4gICAgZmllbGRzOiBGb3JtRmllbGRNb2RlbFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZm9ybVJ1bGVzTWFuYWdlcjogRm9ybVJ1bGVzTWFuYWdlcjxUPixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChGT1JNX0ZJRUxEX01PREVMX1JFTkRFUl9NSURETEVXQVJFKVxuICAgICAgICBwcml2YXRlIG1pZGRsZXdhcmVTZXJ2aWNlcz86IEZvcm1GaWVsZE1vZGVsUmVuZGVyTWlkZGxld2FyZVtdXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVuTWlkZGxld2FyZVNlcnZpY2VzKCk7XG4gICAgICAgIGlmICghdGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtUnVsZXNNYW5hZ2VyLmluaXRpYWxpemUodGhpcy5mb3JtRGVmaW5pdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5mb3JtUnVsZXNNYW5hZ2VyLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBoYXNUYWJzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtRGVmaW5pdGlvbi50YWJzICYmIHRoaXMuZm9ybURlZmluaXRpb24udGFicy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHZpc2libGVUYWJzKCk6IFRhYk1vZGVsW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtRGVmaW5pdGlvbi50YWJzLmZpbHRlcigodGFiKSA9PiB0YWIuaXNWaXNpYmxlKTtcbiAgICB9XG5cbiAgICBnZXROdW1iZXJPZkNvbHVtbnMoY29udGVudDogQ29udGFpbmVyTW9kZWwpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKGNvbnRlbnQuanNvbj8ubnVtYmVyT2ZDb2x1bW5zIHx8IDEpID4gKGNvbnRlbnQuY29sdW1ucz8ubGVuZ3RoIHx8IDEpXG4gICAgICAgICAgICA/IGNvbnRlbnQuanNvbj8ubnVtYmVyT2ZDb2x1bW5zIHx8IDFcbiAgICAgICAgICAgIDogY29udGVudC5jb2x1bW5zPy5sZW5ndGggfHwgMTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXJpYWxpemVzIGNvbHVtbiBmaWVsZHNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb250ZW50IGNvbnRhaW5lciBtb2RlbFxuICAgICAqIEByZXR1cm5zIGEgbGlzdCBvZiBmb3JtIGZpZWxkIG1vZGVsc1xuICAgICAqL1xuICAgIGdldENvbnRhaW5lckZpZWxkcyhjb250ZW50OiBDb250YWluZXJNb2RlbCk6IEZvcm1GaWVsZE1vZGVsW10ge1xuICAgICAgICBjb25zdCBzZXJpYWxpc2VkRm9ybUZpZWxkczogRm9ybUZpZWxkTW9kZWxbXSA9IFtdO1xuICAgICAgICBjb25zdCBtYXhDb2x1bW5GaWVsZHNTaXplID0gdGhpcy5nZXRNYXhDb2x1bW5GaWVsZFNpemUoY29udGVudCk7XG4gICAgICAgIGZvciAobGV0IHJvd0luZGV4ID0gMDsgcm93SW5kZXggPCBtYXhDb2x1bW5GaWVsZHNTaXplOyByb3dJbmRleCsrKSB7XG4gICAgICAgICAgICBjb250ZW50Py5jb2x1bW5zLmZsYXRNYXAoKGN1cnJlbnRDb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudENvbHVtbj8uZmllbGRzW3Jvd0luZGV4XSkge1xuICAgICAgICAgICAgICAgICAgICBzZXJpYWxpc2VkRm9ybUZpZWxkcy5wdXNoKGN1cnJlbnRDb2x1bW4/LmZpZWxkc1tyb3dJbmRleF0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpcnN0Um93RWxlbWVudENvbFNwYW4gPSBjdXJyZW50Q29sdW1uPy5maWVsZHNbMF0/LmNvbHNwYW47XG4gICAgICAgICAgICAgICAgICAgIGlmICghIWZpcnN0Um93RWxlbWVudENvbFNwYW4gJiYgcm93SW5kZXggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpcnN0Um93RWxlbWVudENvbFNwYW47IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcmlhbGlzZWRGb3JtRmllbGRzLnB1c2gobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzZXJpYWxpc2VkRm9ybUZpZWxkcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE1heENvbHVtbkZpZWxkU2l6ZShjb250ZW50OiBDb250YWluZXJNb2RlbCk6IG51bWJlciB7XG4gICAgICAgIGxldCBtYXhGaWVsZFNpemUgPSAwO1xuICAgICAgICBpZiAoY29udGVudD8uY29sdW1ucz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgbWF4RmllbGRTaXplID0gY29udGVudD8uY29sdW1ucz8ucmVkdWNlKChwcmV2Q29sdW1uLCBjdXJyZW50Q29sdW1uKSA9PlxuICAgICAgICAgICAgICAgIGN1cnJlbnRDb2x1bW4uZmllbGRzLmxlbmd0aCA+IHByZXZDb2x1bW4/LmZpZWxkcz8ubGVuZ3RoID8gY3VycmVudENvbHVtbiA6IHByZXZDb2x1bW5cbiAgICAgICAgICAgICk/LmZpZWxkcz8ubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtYXhGaWVsZFNpemU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlIHRoZSBjb2x1bW4gd2lkdGggYmFzZWQgb24gdGhlIG51bWJlck9mQ29sdW1ucyBhbmQgY3VycmVudCBmaWVsZCdzIGNvbHNwYW4gcHJvcGVydHlcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb250YWluZXIgY29udGFpbmVyIG1vZGVsXG4gICAgICogQHJldHVybnMgdGhlIGNvbHVtbiB3aWR0aCBmb3IgdGhlIGdpdmVuIG1vZGVsXG4gICAgICovXG4gICAgZ2V0Q29sdW1uV2lkdGgoY29udGFpbmVyOiBDb250YWluZXJNb2RlbCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHsgZmllbGQgfSA9IGNvbnRhaW5lcjtcbiAgICAgICAgY29uc3QgY29sc3BhbiA9IGZpZWxkID8gZmllbGQuY29sc3BhbiA6IDE7XG4gICAgICAgIHJldHVybiAoMTAwIC8gZmllbGQubnVtYmVyT2ZDb2x1bW5zKSAqIGNvbHNwYW4gKyAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIHJ1bk1pZGRsZXdhcmVTZXJ2aWNlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubWlkZGxld2FyZVNlcnZpY2VzICYmIHRoaXMubWlkZGxld2FyZVNlcnZpY2VzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1GaWVsZHMgPSB0aGlzLmZvcm1EZWZpbml0aW9uLmdldEZvcm1GaWVsZHMoKTtcblxuICAgICAgICAgICAgZm9ybUZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubWlkZGxld2FyZVNlcnZpY2VzLmZvckVhY2goKG1pZGRsZXdhcmVTZXJ2aWNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtaWRkbGV3YXJlU2VydmljZS50eXBlID09PSBmaWVsZC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZCA9IG1pZGRsZXdhcmVTZXJ2aWNlLmdldFBhcnNlZEZpZWxkKGZpZWxkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGlkPVwiYWRmLWZvcm0tcmVuZGVyZXJcIiBjbGFzcz1cInt7IGZvcm1EZWZpbml0aW9uLmNsYXNzTmFtZSB9fVwiXG4gICAgIFtuZ0NsYXNzXT1cInsgJ2FkZi1yZWFkb25seS1mb3JtJzogZm9ybURlZmluaXRpb24ucmVhZE9ubHkgfVwiPlxuICAgIDxkaXYgKm5nSWY9XCJmb3JtRGVmaW5pdGlvbi5oYXNUYWJzKClcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImhhc1RhYnMoKVwiIGNsYXNzPVwiYWxmcmVzY28tdGFicy13aWRnZXRcIj5cbiAgICAgICAgICAgIDxtYXQtdGFiLWdyb3VwIFtwcmVzZXJ2ZUNvbnRlbnRdPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtdGFiICpuZ0Zvcj1cImxldCB0YWIgb2YgdmlzaWJsZVRhYnMoKVwiIFtsYWJlbF09XCJ0YWIudGl0bGUgfCB0cmFuc2xhdGUgXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRUYWJDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1mb3JtLXRhYi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyOyBjb250ZXh0OiB7IGZpZWxkVG9SZW5kZXI6IHRhYi5maWVsZHMgfVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L21hdC10YWI+XG4gICAgICAgICAgICA8L21hdC10YWItZ3JvdXA+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiAqbmdJZj1cIiFmb3JtRGVmaW5pdGlvbi5oYXNUYWJzKCkgJiYgZm9ybURlZmluaXRpb24uaGFzRmllbGRzKClcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyOyBjb250ZXh0OiB7IGZpZWxkVG9SZW5kZXI6IGZvcm1EZWZpbml0aW9uLmZpZWxkcyB9XCIgLz5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3JlbmRlciBsZXQtZmllbGRUb1JlbmRlcj1cImZpZWxkVG9SZW5kZXJcIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjdXJyZW50Um9vdEVsZW1lbnQgb2YgZmllbGRUb1JlbmRlclwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50LnR5cGUgPT09ICdjb250YWluZXInIHx8IGN1cnJlbnRSb290RWxlbWVudC50eXBlID09PSAnZ3JvdXAnXCJcbiAgICAgICAgICAgICBbaWRdPVwiJ2ZpZWxkLScgKyBjdXJyZW50Um9vdEVsZW1lbnQ/LmlkICsgJy1jb250YWluZXInXCJcbiAgICAgICAgICAgICBjbGFzcz1cImFkZi1jb250YWluZXItd2lkZ2V0XCJcbiAgICAgICAgICAgICBbaGlkZGVuXT1cIiFjdXJyZW50Um9vdEVsZW1lbnQ/LmlzVmlzaWJsZVwiPlxuICAgICAgICAgICAgPGFkZi1oZWFkZXItd2lkZ2V0IFtlbGVtZW50XT1cImN1cnJlbnRSb290RWxlbWVudFwiIC8+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50Py5mb3JtPy5lbmFibGVGaXhlZFNwYWNlOyBlbHNlIGZpeGluZ1RlbXBsYXRlXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1ncmlkLWxpc3RcIlxuICAgICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyAnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJzogJ3JlcGVhdCgnICsgZ2V0TnVtYmVyT2ZDb2x1bW5zKGN1cnJlbnRSb290RWxlbWVudCkgKyAnLCAxZnIpJyB9XCJcbiAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50Py5pc0V4cGFuZGVkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZ3JpZC1saXN0LWl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBnZXRDb250YWluZXJGaWVsZHMoY3VycmVudFJvb3RFbGVtZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyAnZ3JpZC1hcmVhJzogJ2F1dG8gLyBhdXRvIC8gc3BhbiAnICsgKGZpZWxkPy5yb3dzcGFuIHx8IDEpICsgJyAvIHNwYW4gJyArIChmaWVsZD8uY29sc3BhbiB8fCAxKSB9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YWRmLWZvcm0tZmllbGQgKm5nSWY9XCJmaWVsZFwiIFtmaWVsZF09XCJmaWVsZFwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZml4aW5nVGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJhZGYtZ3JpZC1saXN0LWNvbHVtbi12aWV3XCIgKm5nSWY9XCJjdXJyZW50Um9vdEVsZW1lbnQ/LmlzRXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1ncmlkLWxpc3Qtc2luZ2xlLWNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjdXJyZW50Um9vdEVsZW1lbnQ/LmNvbHVtbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC4lXT1cImdldENvbHVtbldpZHRoKGN1cnJlbnRSb290RWxlbWVudClcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjb2x1bW4/LmZpZWxkc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnc2VjdGlvbic7IGVsc2UgZm9ybUZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhZGYtZm9ybS1zZWN0aW9uIFtmaWVsZF09XCJmaWVsZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Zvcm1GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1ncmlkLWxpc3QtY29sdW1uLXZpZXctaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFkZi1mb3JtLWZpZWxkIFtmaWVsZF09XCJmaWVsZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbHVtblZpZXdJdGVtIGxldC1jb2x1bW49XCJjb2x1bW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWdyaWQtbGlzdC1jb2x1bW4tdmlldy1pdGVtXCIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGNvbHVtbj8uZmllbGRzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhZGYtZm9ybS1maWVsZCAqbmdJZj1cImZpZWxkXCIgW2ZpZWxkXT1cImZpZWxkXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJjdXJyZW50Um9vdEVsZW1lbnQudHlwZSA9PT0gJ2R5bmFtaWMtdGFibGUnXCIgY2xhc3M9XCJhZGYtY29udGFpbmVyLXdpZGdldFwiPlxuICAgICAgICAgICAgPGFkZi1mb3JtLWZpZWxkIFtmaWVsZF09XCJjdXJyZW50Um9vdEVsZW1lbnRcIiAvPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWNvbnRhaW5lci13aWRnZXRcIlxuICAgICAgICAgICAgICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50LnR5cGUgPT09ICdyZWFkb25seScgJiYgY3VycmVudFJvb3RFbGVtZW50LmZpZWxkLnBhcmFtcy5maWVsZC50eXBlID09PSAnZHluYW1pYy10YWJsZSdcIj5cbiAgICAgICAgICAgIDxhZGYtZm9ybS1maWVsZCBbZmllbGRdPVwiY3VycmVudFJvb3RFbGVtZW50LmZpZWxkXCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL2Zvcm0tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0NBQWtDLEVBQWtDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUcsT0FBTyxFQUFrQyxTQUFTLEVB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ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgTmdDbGFzcywgTmdGb3JPZiwgTmdJZiwgTmdTdHlsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBGb3JtUnVsZXNNYW5hZ2VyLCBmb3JtUnVsZXNNYW5hZ2VyRmFjdG9yeSB9IGZyb20gJy4uL21vZGVscy9mb3JtLXJ1bGVzLm1vZGVsJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGT1JNX0ZJRUxEX01PREVMX1JFTkRFUl9NSURETEVXQVJFLCBGb3JtRmllbGRNb2RlbFJlbmRlck1pZGRsZXdhcmUgfSBmcm9tICcuL21pZGRsZXdhcmVzL21pZGRsZXdhcmUnO1xuaW1wb3J0IHsgQ29udGFpbmVyTW9kZWwsIEZvcm1GaWVsZE1vZGVsLCBGb3JtTW9kZWwsIFRhYk1vZGVsIH0gZnJvbSAnLi93aWRnZXRzJztcbmltcG9ydCB7IEhlYWRlcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4vd2lkZ2V0cy9oZWFkZXIvaGVhZGVyLndpZGdldCc7XG5pbXBvcnQgeyBGb3JtU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1zZWN0aW9uL2Zvcm0tc2VjdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1mb3JtLXJlbmRlcmVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb3JtLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZvcm1SdWxlc01hbmFnZXIsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBmb3JtUnVsZXNNYW5hZ2VyRmFjdG9yeSxcbiAgICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl1cbiAgICAgICAgfVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBNYXRUYWJzTW9kdWxlLFxuICAgICAgICBOZ0Zvck9mLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBUcmFuc2xhdGVQaXBlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIE5nU3R5bGUsXG4gICAgICAgIEZvcm1GaWVsZENvbXBvbmVudCxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE5nQ2xhc3MsXG4gICAgICAgIEhlYWRlcldpZGdldENvbXBvbmVudCxcbiAgICAgICAgRm9ybVNlY3Rpb25Db21wb25lbnRcbiAgICBdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9ybVJlbmRlcmVyQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgZm9ybURlZmluaXRpb246IEZvcm1Nb2RlbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcmVhZE9ubHkgPSBmYWxzZTtcblxuICAgIGRlYnVnTW9kZTogYm9vbGVhbjtcblxuICAgIGZpZWxkczogRm9ybUZpZWxkTW9kZWxbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZm9ybVNlcnZpY2U6IEZvcm1TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGZvcm1SdWxlc01hbmFnZXI6IEZvcm1SdWxlc01hbmFnZXI8VD4sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoRk9STV9GSUVMRF9NT0RFTF9SRU5ERVJfTUlERExFV0FSRSlcbiAgICAgICAgcHJpdmF0ZSBtaWRkbGV3YXJlU2VydmljZXM/OiBGb3JtRmllbGRNb2RlbFJlbmRlck1pZGRsZXdhcmVbXVxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJ1bk1pZGRsZXdhcmVTZXJ2aWNlcygpO1xuICAgICAgICBpZiAoIXRoaXMucmVhZE9ubHkpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybVJ1bGVzTWFuYWdlci5pbml0aWFsaXplKHRoaXMuZm9ybURlZmluaXRpb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuZm9ybVJ1bGVzTWFuYWdlci5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgaGFzVGFicygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybURlZmluaXRpb24udGFicyAmJiB0aGlzLmZvcm1EZWZpbml0aW9uLnRhYnMubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICB2aXNpYmxlVGFicygpOiBUYWJNb2RlbFtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybURlZmluaXRpb24udGFicy5maWx0ZXIoKHRhYikgPT4gdGFiLmlzVmlzaWJsZSk7XG4gICAgfVxuXG4gICAgZ2V0TnVtYmVyT2ZDb2x1bW5zKGNvbnRlbnQ6IENvbnRhaW5lck1vZGVsKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIChjb250ZW50Lmpzb24/Lm51bWJlck9mQ29sdW1ucyB8fCAxKSA+IChjb250ZW50LmNvbHVtbnM/Lmxlbmd0aCB8fCAxKVxuICAgICAgICAgICAgPyBjb250ZW50Lmpzb24/Lm51bWJlck9mQ29sdW1ucyB8fCAxXG4gICAgICAgICAgICA6IGNvbnRlbnQuY29sdW1ucz8ubGVuZ3RoIHx8IDE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VyaWFsaXplcyBjb2x1bW4gZmllbGRzXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29udGVudCBjb250YWluZXIgbW9kZWxcbiAgICAgKiBAcmV0dXJucyBhIGxpc3Qgb2YgZm9ybSBmaWVsZCBtb2RlbHNcbiAgICAgKi9cbiAgICBnZXRDb250YWluZXJGaWVsZHMoY29udGVudDogQ29udGFpbmVyTW9kZWwpOiBGb3JtRmllbGRNb2RlbFtdIHtcbiAgICAgICAgY29uc3Qgc2VyaWFsaXNlZEZvcm1GaWVsZHM6IEZvcm1GaWVsZE1vZGVsW10gPSBbXTtcbiAgICAgICAgY29uc3QgbWF4Q29sdW1uRmllbGRzU2l6ZSA9IHRoaXMuZ2V0TWF4Q29sdW1uRmllbGRTaXplKGNvbnRlbnQpO1xuICAgICAgICBmb3IgKGxldCByb3dJbmRleCA9IDA7IHJvd0luZGV4IDwgbWF4Q29sdW1uRmllbGRzU2l6ZTsgcm93SW5kZXgrKykge1xuICAgICAgICAgICAgY29udGVudD8uY29sdW1ucy5mbGF0TWFwKChjdXJyZW50Q29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnRDb2x1bW4/LmZpZWxkc1tyb3dJbmRleF0pIHtcbiAgICAgICAgICAgICAgICAgICAgc2VyaWFsaXNlZEZvcm1GaWVsZHMucHVzaChjdXJyZW50Q29sdW1uPy5maWVsZHNbcm93SW5kZXhdKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaXJzdFJvd0VsZW1lbnRDb2xTcGFuID0gY3VycmVudENvbHVtbj8uZmllbGRzWzBdPy5jb2xzcGFuO1xuICAgICAgICAgICAgICAgICAgICBpZiAoISFmaXJzdFJvd0VsZW1lbnRDb2xTcGFuICYmIHJvd0luZGV4ID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaXJzdFJvd0VsZW1lbnRDb2xTcGFuOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJpYWxpc2VkRm9ybUZpZWxkcy5wdXNoKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VyaWFsaXNlZEZvcm1GaWVsZHM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYXhDb2x1bW5GaWVsZFNpemUoY29udGVudDogQ29udGFpbmVyTW9kZWwpOiBudW1iZXIge1xuICAgICAgICBsZXQgbWF4RmllbGRTaXplID0gMDtcbiAgICAgICAgaWYgKGNvbnRlbnQ/LmNvbHVtbnM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIG1heEZpZWxkU2l6ZSA9IGNvbnRlbnQ/LmNvbHVtbnM/LnJlZHVjZSgocHJldkNvbHVtbiwgY3VycmVudENvbHVtbikgPT5cbiAgICAgICAgICAgICAgICBjdXJyZW50Q29sdW1uLmZpZWxkcy5sZW5ndGggPiBwcmV2Q29sdW1uPy5maWVsZHM/Lmxlbmd0aCA/IGN1cnJlbnRDb2x1bW4gOiBwcmV2Q29sdW1uXG4gICAgICAgICAgICApPy5maWVsZHM/Lmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWF4RmllbGRTaXplO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZSB0aGUgY29sdW1uIHdpZHRoIGJhc2VkIG9uIHRoZSBudW1iZXJPZkNvbHVtbnMgYW5kIGN1cnJlbnQgZmllbGQncyBjb2xzcGFuIHByb3BlcnR5XG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyIGNvbnRhaW5lciBtb2RlbFxuICAgICAqIEByZXR1cm5zIHRoZSBjb2x1bW4gd2lkdGggZm9yIHRoZSBnaXZlbiBtb2RlbFxuICAgICAqL1xuICAgIGdldENvbHVtbldpZHRoKGNvbnRhaW5lcjogQ29udGFpbmVyTW9kZWwpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB7IGZpZWxkIH0gPSBjb250YWluZXI7XG4gICAgICAgIGNvbnN0IGNvbHNwYW4gPSBmaWVsZCA/IGZpZWxkLmNvbHNwYW4gOiAxO1xuICAgICAgICByZXR1cm4gKDEwMCAvIGZpZWxkLm51bWJlck9mQ29sdW1ucykgKiBjb2xzcGFuICsgJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBydW5NaWRkbGV3YXJlU2VydmljZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1pZGRsZXdhcmVTZXJ2aWNlcyAmJiB0aGlzLm1pZGRsZXdhcmVTZXJ2aWNlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtRmllbGRzID0gdGhpcy5mb3JtRGVmaW5pdGlvbi5nZXRGb3JtRmllbGRzKCk7XG5cbiAgICAgICAgICAgIGZvcm1GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1pZGRsZXdhcmVTZXJ2aWNlcy5mb3JFYWNoKChtaWRkbGV3YXJlU2VydmljZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAobWlkZGxld2FyZVNlcnZpY2UudHlwZSA9PT0gZmllbGQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQgPSBtaWRkbGV3YXJlU2VydmljZS5nZXRQYXJzZWRGaWVsZChmaWVsZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBpZD1cImFkZi1mb3JtLXJlbmRlcmVyXCIgY2xhc3M9XCJ7eyBmb3JtRGVmaW5pdGlvbi5jbGFzc05hbWUgfX1cIlxuICAgICBbbmdDbGFzc109XCJ7ICdhZGYtcmVhZG9ubHktZm9ybSc6IGZvcm1EZWZpbml0aW9uLnJlYWRPbmx5IH1cIj5cbiAgICA8ZGl2ICpuZ0lmPVwiZm9ybURlZmluaXRpb24uaGFzVGFicygpXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJoYXNUYWJzKClcIiBjbGFzcz1cImFsZnJlc2NvLXRhYnMtd2lkZ2V0XCI+XG4gICAgICAgICAgICA8bWF0LXRhYi1ncm91cCBbcHJlc2VydmVDb250ZW50XT1cInRydWVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LXRhYiAqbmdGb3I9XCJsZXQgdGFiIG9mIHZpc2libGVUYWJzKClcIiBbbGFiZWxdPVwidGFiLnRpdGxlIHwgdHJhbnNsYXRlIFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0VGFiQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZm9ybS10YWItY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cInJlbmRlcjsgY29udGV4dDogeyBmaWVsZFRvUmVuZGVyOiB0YWIuZmllbGRzIH1cIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgICAgICAgPC9tYXQtdGFiLWdyb3VwPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCIhZm9ybURlZmluaXRpb24uaGFzVGFicygpICYmIGZvcm1EZWZpbml0aW9uLmhhc0ZpZWxkcygpXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cInJlbmRlcjsgY29udGV4dDogeyBmaWVsZFRvUmVuZGVyOiBmb3JtRGVmaW5pdGlvbi5maWVsZHMgfVwiIC8+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNyZW5kZXIgbGV0LWZpZWxkVG9SZW5kZXI9XCJmaWVsZFRvUmVuZGVyXCI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgY3VycmVudFJvb3RFbGVtZW50IG9mIGZpZWxkVG9SZW5kZXJcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImN1cnJlbnRSb290RWxlbWVudC50eXBlID09PSAnY29udGFpbmVyJyB8fCBjdXJyZW50Um9vdEVsZW1lbnQudHlwZSA9PT0gJ2dyb3VwJ1wiXG4gICAgICAgICAgICAgW2lkXT1cIidmaWVsZC0nICsgY3VycmVudFJvb3RFbGVtZW50Py5pZCArICctY29udGFpbmVyJ1wiXG4gICAgICAgICAgICAgY2xhc3M9XCJhZGYtY29udGFpbmVyLXdpZGdldFwiXG4gICAgICAgICAgICAgW2hpZGRlbl09XCIhY3VycmVudFJvb3RFbGVtZW50Py5pc1Zpc2libGVcIj5cbiAgICAgICAgICAgIDxhZGYtaGVhZGVyLXdpZGdldCBbZWxlbWVudF09XCJjdXJyZW50Um9vdEVsZW1lbnRcIiAvPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImN1cnJlbnRSb290RWxlbWVudD8uZm9ybT8uZW5hYmxlRml4ZWRTcGFjZTsgZWxzZSBmaXhpbmdUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZ3JpZC1saXN0XCJcbiAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgJ2dyaWQtdGVtcGxhdGUtY29sdW1ucyc6ICdyZXBlYXQoJyArIGdldE51bWJlck9mQ29sdW1ucyhjdXJyZW50Um9vdEVsZW1lbnQpICsgJywgMWZyKScgfVwiXG4gICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImN1cnJlbnRSb290RWxlbWVudD8uaXNFeHBhbmRlZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWdyaWQtbGlzdC1pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZ2V0Q29udGFpbmVyRmllbGRzKGN1cnJlbnRSb290RWxlbWVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgJ2dyaWQtYXJlYSc6ICdhdXRvIC8gYXV0byAvIHNwYW4gJyArIChmaWVsZD8ucm93c3BhbiB8fCAxKSArICcgLyBzcGFuICcgKyAoZmllbGQ/LmNvbHNwYW4gfHwgMSkgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFkZi1mb3JtLWZpZWxkICpuZ0lmPVwiZmllbGRcIiBbZmllbGRdPVwiZmllbGRcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2ZpeGluZ1RlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiYWRmLWdyaWQtbGlzdC1jb2x1bW4tdmlld1wiICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50Py5pc0V4cGFuZGVkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZ3JpZC1saXN0LXNpbmdsZS1jb2x1bW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY3VycmVudFJvb3RFbGVtZW50Py5jb2x1bW5zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGguJV09XCJnZXRDb2x1bW5XaWR0aChjdXJyZW50Um9vdEVsZW1lbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgY29sdW1uPy5maWVsZHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3NlY3Rpb24nOyBlbHNlIGZvcm1GaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWRmLWZvcm0tc2VjdGlvbiBbZmllbGRdPVwiZmllbGRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNmb3JtRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZ3JpZC1saXN0LWNvbHVtbi12aWV3LWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhZGYtZm9ybS1maWVsZCBbZmllbGRdPVwiZmllbGRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb2x1bW5WaWV3SXRlbSBsZXQtY29sdW1uPVwiY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1ncmlkLWxpc3QtY29sdW1uLXZpZXctaXRlbVwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjb2x1bW4/LmZpZWxkc1wiPlxuICAgICAgICAgICAgICAgICAgICA8YWRmLWZvcm0tZmllbGQgKm5nSWY9XCJmaWVsZFwiIFtmaWVsZF09XCJmaWVsZFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VycmVudFJvb3RFbGVtZW50LnR5cGUgPT09ICdkeW5hbWljLXRhYmxlJ1wiIGNsYXNzPVwiYWRmLWNvbnRhaW5lci13aWRnZXRcIj5cbiAgICAgICAgICAgIDxhZGYtZm9ybS1maWVsZCBbZmllbGRdPVwiY3VycmVudFJvb3RFbGVtZW50XCIgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1jb250YWluZXItd2lkZ2V0XCJcbiAgICAgICAgICAgICAqbmdJZj1cImN1cnJlbnRSb290RWxlbWVudC50eXBlID09PSAncmVhZG9ubHknICYmIGN1cnJlbnRSb290RWxlbWVudC5maWVsZC5wYXJhbXMuZmllbGQudHlwZSA9PT0gJ2R5bmFtaWMtdGFibGUnXCI+XG4gICAgICAgICAgICA8YWRmLWZvcm0tZmllbGQgW2ZpZWxkXT1cImN1cnJlbnRSb290RWxlbWVudC5maWVsZFwiLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -20,7 +20,7 @@ import { Component, ViewEncapsulation, InjectionToken, Inject, Optional } from '
20
20
  import { FormsModule } from '@angular/forms';
21
21
  import { MatFormFieldModule } from '@angular/material/form-field';
22
22
  import { MatInputModule } from '@angular/material/input';
23
- import { TranslateModule } from '@ngx-translate/core';
23
+ import { TranslatePipe } from '@ngx-translate/core';
24
24
  import { FormService } from '../../../services/form.service';
25
25
  import { ErrorWidgetComponent } from '../error/error.component';
26
26
  import { WidgetComponent } from '../widget.component';
@@ -29,7 +29,6 @@ import * as i1 from "../../../services/form.service";
29
29
  import * as i2 from "@angular/material/form-field";
30
30
  import * as i3 from "@angular/material/input";
31
31
  import * as i4 from "@angular/forms";
32
- import * as i5 from "@ngx-translate/core";
33
32
  export const ADF_AMOUNT_SETTINGS = new InjectionToken('adf-amount-settings');
34
33
  export class AmountWidgetComponent extends WidgetComponent {
35
34
  static { this.DEFAULT_CURRENCY = '$'; }
@@ -54,7 +53,7 @@ export class AmountWidgetComponent extends WidgetComponent {
54
53
  }
55
54
  }
56
55
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AmountWidgetComponent, deps: [{ token: i1.FormService }, { token: ADF_AMOUNT_SETTINGS, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AmountWidgetComponent, isStandalone: true, selector: "amount-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-amount-widget__container adf-amount-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\"\n>\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n </div>\n <div>\n <mat-form-field class=\"adf-amount-widget__input adf-form-field-input\" [hideRequiredMarker]=\"true\" [floatLabel]=\"placeholder ? 'always' : null\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></mat-label\n >\n <span matTextPrefix class=\"adf-amount-widget__prefix-spacing\">{{ currency }}&nbsp;</span>\n <input\n matInput\n [title]=\"field.tooltip\"\n class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [placeholder]=\"placeholder\"\n [value]=\"field.value\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n (blur)=\"markAsTouched()\"\n />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-amount-widget{width:100%;margin-top:15px}.adf-amount-widget .adf-left-label{line-height:36px}.adf-amount-widget__input{margin-top:-15px}.adf-amount-widget__input .mat-focused{transition:none}.adf-amount-widget__input .mat-mdc-form-field-text-prefix{padding-top:16px;padding-bottom:16px;align-self:flex-end}.adf-amount-widget__input .adf-input{margin-top:3px}.adf-amount-widget__input:not(.mat-focused):not(.mat-form-field-invalid) .adf-amount-widget__prefix-spacing{color:var(--adf-theme-foreground-secondary-text-color)}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
56
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AmountWidgetComponent, isStandalone: true, selector: "amount-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-amount-widget__container adf-amount-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\"\n>\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n </div>\n <div>\n <mat-form-field class=\"adf-amount-widget__input adf-form-field-input\" [floatLabel]=\"placeholder ? 'always' : null\">\n @if ( (field.name || field?.required) && !field.leftLabels) { <mat-label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</mat-label> }\n <span matTextPrefix class=\"adf-amount-widget__prefix-spacing\">{{ currency }}&nbsp;</span>\n <input\n matInput\n [title]=\"field.tooltip\"\n class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [required]=\"field.required && field.isVisible\"\n [placeholder]=\"placeholder\"\n [value]=\"field.value\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n (blur)=\"markAsTouched()\"\n />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-amount-widget{width:100%;margin-top:15px}.adf-amount-widget .adf-left-label{line-height:36px}.adf-amount-widget__input{margin-top:-15px}.adf-amount-widget__input .mat-focused{transition:none}.adf-amount-widget__input .mat-mdc-form-field-text-prefix{padding-top:16px;padding-bottom:16px;align-self:flex-end}.adf-amount-widget__input .adf-input{margin-top:3px}.adf-amount-widget__input:not(.mat-focused):not(.mat-form-field-invalid) .adf-amount-widget__prefix-spacing{color:var(--adf-theme-foreground-secondary-text-color)}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
58
57
  }
59
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AmountWidgetComponent, decorators: [{
60
59
  type: Component,
@@ -68,11 +67,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
68
67
  '(input)': 'event($event)',
69
68
  '(invalid)': 'event($event)',
70
69
  '(select)': 'event($event)'
71
- }, imports: [MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent, TranslateModule, NgIf], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-amount-widget__container adf-amount-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\"\n>\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n </div>\n <div>\n <mat-form-field class=\"adf-amount-widget__input adf-form-field-input\" [hideRequiredMarker]=\"true\" [floatLabel]=\"placeholder ? 'always' : null\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></mat-label\n >\n <span matTextPrefix class=\"adf-amount-widget__prefix-spacing\">{{ currency }}&nbsp;</span>\n <input\n matInput\n [title]=\"field.tooltip\"\n class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [placeholder]=\"placeholder\"\n [value]=\"field.value\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n (blur)=\"markAsTouched()\"\n />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-amount-widget{width:100%;margin-top:15px}.adf-amount-widget .adf-left-label{line-height:36px}.adf-amount-widget__input{margin-top:-15px}.adf-amount-widget__input .mat-focused{transition:none}.adf-amount-widget__input .mat-mdc-form-field-text-prefix{padding-top:16px;padding-bottom:16px;align-self:flex-end}.adf-amount-widget__input .adf-input{margin-top:3px}.adf-amount-widget__input:not(.mat-focused):not(.mat-form-field-invalid) .adf-amount-widget__prefix-spacing{color:var(--adf-theme-foreground-secondary-text-color)}\n"] }]
70
+ }, imports: [MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent, TranslatePipe, NgIf], encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-amount-widget__container adf-amount-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\"\n>\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n </div>\n <div>\n <mat-form-field class=\"adf-amount-widget__input adf-form-field-input\" [floatLabel]=\"placeholder ? 'always' : null\">\n @if ( (field.name || field?.required) && !field.leftLabels) { <mat-label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</mat-label> }\n <span matTextPrefix class=\"adf-amount-widget__prefix-spacing\">{{ currency }}&nbsp;</span>\n <input\n matInput\n [title]=\"field.tooltip\"\n class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [required]=\"field.required && field.isVisible\"\n [placeholder]=\"placeholder\"\n [value]=\"field.value\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n (blur)=\"markAsTouched()\"\n />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-amount-widget{width:100%;margin-top:15px}.adf-amount-widget .adf-left-label{line-height:36px}.adf-amount-widget__input{margin-top:-15px}.adf-amount-widget__input .mat-focused{transition:none}.adf-amount-widget__input .mat-mdc-form-field-text-prefix{padding-top:16px;padding-bottom:16px;align-self:flex-end}.adf-amount-widget__input .adf-input{margin-top:3px}.adf-amount-widget__input:not(.mat-focused):not(.mat-form-field-invalid) .adf-amount-widget__prefix-spacing{color:var(--adf-theme-foreground-secondary-text-color)}\n"] }]
72
71
  }], ctorParameters: () => [{ type: i1.FormService }, { type: undefined, decorators: [{
73
72
  type: Inject,
74
73
  args: [ADF_AMOUNT_SETTINGS]
75
74
  }, {
76
75
  type: Optional
77
76
  }] }] });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1vdW50LndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvYW1vdW50L2Ftb3VudC53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2Ftb3VudC9hbW91bnQud2lkZ2V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFNdEQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQXVCLHFCQUFxQixDQUFDLENBQUM7QUFxQm5HLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFlO2FBQy9DLHFCQUFnQixHQUFXLEdBQUcsQUFBZCxDQUFlO0lBS3RDLElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM5RCxDQUFDO0lBRUQsWUFDVyxXQUF3QixFQUd2QixRQUE4QjtRQUV0QyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFMWixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUd2QixhQUFRLEdBQVIsUUFBUSxDQUFzQjtRQVpsQyxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUUvQixhQUFRLEdBQVcscUJBQXFCLENBQUMsZ0JBQWdCLENBQUM7SUFhMUQsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUN4QyxDQUFDO1lBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsdUJBQXVCLENBQUM7WUFDbEUsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOytHQTdCUSxxQkFBcUIsNkNBWWxCLG1CQUFtQjttR0FadEIscUJBQXFCLDJXQ3REbEMsNjdEQXlDQSx5a0JEVWMsa0JBQWtCLDJhQUFFLGNBQWMsMFdBQUUsV0FBVyw0MEJBQUUsb0JBQW9CLHVGQUFFLGVBQWUsNEZBQUUsSUFBSTs7NEZBRzdGLHFCQUFxQjtrQkFuQmpDLFNBQVM7K0JBQ0ksZUFBZSxjQUNiLElBQUksUUFHVjt3QkFDRixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsUUFBUSxFQUFFLGVBQWU7d0JBQ3pCLFVBQVUsRUFBRSxlQUFlO3dCQUMzQixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFlBQVksRUFBRSxlQUFlO3dCQUM3QixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFVBQVUsRUFBRSxlQUFlO3FCQUM5QixXQUNRLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLGlCQUN4RixpQkFBaUIsQ0FBQyxJQUFJOzswQkFjaEMsTUFBTTsyQkFBQyxtQkFBbUI7OzBCQUMxQixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yICovXG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBJbmplY3Rpb25Ub2tlbiwgSW5qZWN0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBBbW91bnRXaWRnZXRTZXR0aW5ncyB7XG4gICAgc2hvd1JlYWRvbmx5UGxhY2Vob2xkZXI6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBBREZfQU1PVU5UX1NFVFRJTkdTID0gbmV3IEluamVjdGlvblRva2VuPEFtb3VudFdpZGdldFNldHRpbmdzPignYWRmLWFtb3VudC1zZXR0aW5ncycpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Ftb3VudC13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Ftb3VudC53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYW1vdW50LndpZGdldC5zY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW5wdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGludmFsaWQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKHNlbGVjdCknOiAnZXZlbnQoJGV2ZW50KSdcbiAgICB9LFxuICAgIGltcG9ydHM6IFtNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnQsIFRyYW5zbGF0ZU1vZHVsZSwgTmdJZl0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBBbW91bnRXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHN0YXRpYyBERUZBVUxUX0NVUlJFTkNZOiBzdHJpbmcgPSAnJCc7XG4gICAgcHJpdmF0ZSBzaG93UGxhY2Vob2xkZXIgPSB0cnVlO1xuXG4gICAgY3VycmVuY3k6IHN0cmluZyA9IEFtb3VudFdpZGdldENvbXBvbmVudC5ERUZBVUxUX0NVUlJFTkNZO1xuXG4gICAgZ2V0IHBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dQbGFjZWhvbGRlciA/IHRoaXMuZmllbGQucGxhY2Vob2xkZXIgOiAnJztcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSxcbiAgICAgICAgQEluamVjdChBREZfQU1PVU5UX1NFVFRJTkdTKVxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBwcml2YXRlIHNldHRpbmdzOiBBbW91bnRXaWRnZXRTZXR0aW5nc1xuICAgICkge1xuICAgICAgICBzdXBlcihmb3JtU2VydmljZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZC5jdXJyZW5jeSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVuY3kgPSB0aGlzLmZpZWxkLmN1cnJlbmN5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZC5yZWFkT25seSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hvd1BsYWNlaG9sZGVyID0gdGhpcy5zZXR0aW5ncz8uc2hvd1JlYWRvbmx5UGxhY2Vob2xkZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJhZGYtYW1vdW50LXdpZGdldF9fY29udGFpbmVyIGFkZi1hbW91bnQtd2lkZ2V0IHt7ZmllbGQuY2xhc3NOYW1lfX1cIlxuICAgIFtjbGFzcy5hZGYtaW52YWxpZF09XCIhZmllbGQuaXNWYWxpZCAmJiBpc1RvdWNoZWQoKVwiXG4gICAgW2NsYXNzLmFkZi1yZWFkb25seV09XCJmaWVsZC5yZWFkT25seVwiXG4gICAgW2NsYXNzLmFkZi1sZWZ0LWxhYmVsLWlucHV0LWNvbnRhaW5lcl09XCJmaWVsZC5sZWZ0TGFiZWxzXCJcbj5cbiAgICA8ZGl2ICpuZ0lmPVwiZmllbGQubGVmdExhYmVsc1wiPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJhZGYtbGFiZWwgYWRmLWxlZnQtbGFiZWxcIiBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIlxuICAgICAgICAgICAgPnt7ZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fTxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPjwvbGFiZWxcbiAgICAgICAgPlxuICAgIDwvZGl2PlxuICAgIDxkaXY+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImFkZi1hbW91bnQtd2lkZ2V0X19pbnB1dCBhZGYtZm9ybS1maWVsZC1pbnB1dFwiIFtoaWRlUmVxdWlyZWRNYXJrZXJdPVwidHJ1ZVwiIFtmbG9hdExhYmVsXT1cInBsYWNlaG9sZGVyID8gJ2Fsd2F5cycgOiBudWxsXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsXCIgKm5nSWY9XCIhZmllbGQubGVmdExhYmVsc1wiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgPnt7ZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fTxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPjwvbWF0LWxhYmVsXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBtYXRUZXh0UHJlZml4IGNsYXNzPVwiYWRmLWFtb3VudC13aWRnZXRfX3ByZWZpeC1zcGFjaW5nXCI+e3sgY3VycmVuY3kgfX0mbmJzcDs8L3NwYW4+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJmaWVsZC50b29sdGlwXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi1pbnB1dFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImlzUmVxdWlyZWQoKVwiXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uRmllbGRDaGFuZ2VkKGZpZWxkKVwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZpZWxkLnJlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAoYmx1cik9XCJtYXJrQXNUb3VjaGVkKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1lcnJvci1tZXNzYWdlcy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxlcnJvci13aWRnZXQgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICAgICAgICAgIDxlcnJvci13aWRnZXRcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzSW52YWxpZEZpZWxkUmVxdWlyZWQoKSAmJiBpc1RvdWNoZWQoKVwiXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ9XCJ7eyAnRk9STS5GSUVMRC5SRVFVSVJFRCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1vdW50LndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvYW1vdW50L2Ftb3VudC53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2Ftb3VudC9hbW91bnQud2lkZ2V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQU10RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBdUIscUJBQXFCLENBQUMsQ0FBQztBQXFCbkcsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQWU7YUFDL0MscUJBQWdCLEdBQVcsR0FBRyxBQUFkLENBQWU7SUFLdEMsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFRCxZQUNXLFdBQXdCLEVBR3ZCLFFBQThCO1FBRXRDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUxaLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBR3ZCLGFBQVEsR0FBUixRQUFRLENBQXNCO1FBWmxDLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBRS9CLGFBQVEsR0FBVyxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQztJQWExRCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQ3hDLENBQUM7WUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSx1QkFBdUIsQ0FBQztZQUNsRSxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7K0dBN0JRLHFCQUFxQiw2Q0FZbEIsbUJBQW1CO21HQVp0QixxQkFBcUIsMldDdERsQyx3MURBdUNBLHlrQkRZYyxrQkFBa0IsMmFBQUUsY0FBYywwV0FBRSxXQUFXLDQwQkFBRSxvQkFBb0IsbUZBQUUsYUFBYSxrREFBRSxJQUFJOzs0RkFHM0YscUJBQXFCO2tCQW5CakMsU0FBUzsrQkFDSSxlQUFlLGNBQ2IsSUFBSSxRQUdWO3dCQUNGLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixRQUFRLEVBQUUsZUFBZTt3QkFDekIsVUFBVSxFQUFFLGVBQWU7d0JBQzNCLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixXQUFXLEVBQUUsZUFBZTt3QkFDNUIsWUFBWSxFQUFFLGVBQWU7d0JBQzdCLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixXQUFXLEVBQUUsZUFBZTt3QkFDNUIsVUFBVSxFQUFFLGVBQWU7cUJBQzlCLFdBQ1EsQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQ3RGLGlCQUFpQixDQUFDLElBQUk7OzBCQWNoQyxNQUFNOzJCQUFDLG1CQUFtQjs7MEJBQzFCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIEluamVjdGlvblRva2VuLCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBBbW91bnRXaWRnZXRTZXR0aW5ncyB7XG4gICAgc2hvd1JlYWRvbmx5UGxhY2Vob2xkZXI6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBBREZfQU1PVU5UX1NFVFRJTkdTID0gbmV3IEluamVjdGlvblRva2VuPEFtb3VudFdpZGdldFNldHRpbmdzPignYWRmLWFtb3VudC1zZXR0aW5ncycpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Ftb3VudC13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Ftb3VudC53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYW1vdW50LndpZGdldC5zY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW5wdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGludmFsaWQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKHNlbGVjdCknOiAnZXZlbnQoJGV2ZW50KSdcbiAgICB9LFxuICAgIGltcG9ydHM6IFtNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnQsIFRyYW5zbGF0ZVBpcGUsIE5nSWZdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQW1vdW50V2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBzdGF0aWMgREVGQVVMVF9DVVJSRU5DWTogc3RyaW5nID0gJyQnO1xuICAgIHByaXZhdGUgc2hvd1BsYWNlaG9sZGVyID0gdHJ1ZTtcblxuICAgIGN1cnJlbmN5OiBzdHJpbmcgPSBBbW91bnRXaWRnZXRDb21wb25lbnQuREVGQVVMVF9DVVJSRU5DWTtcblxuICAgIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5zaG93UGxhY2Vob2xkZXIgPyB0aGlzLmZpZWxkLnBsYWNlaG9sZGVyIDogJyc7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoQURGX0FNT1VOVF9TRVRUSU5HUylcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgcHJpdmF0ZSBzZXR0aW5nczogQW1vdW50V2lkZ2V0U2V0dGluZ3NcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZm9ybVNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy5maWVsZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQuY3VycmVuY3kpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbmN5ID0gdGhpcy5maWVsZC5jdXJyZW5jeTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGQucmVhZE9ubHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dQbGFjZWhvbGRlciA9IHRoaXMuc2V0dGluZ3M/LnNob3dSZWFkb25seVBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiYWRmLWFtb3VudC13aWRnZXRfX2NvbnRhaW5lciBhZGYtYW1vdW50LXdpZGdldCB7e2ZpZWxkLmNsYXNzTmFtZX19XCJcbiAgICBbY2xhc3MuYWRmLWludmFsaWRdPVwiIWZpZWxkLmlzVmFsaWQgJiYgaXNUb3VjaGVkKClcIlxuICAgIFtjbGFzcy5hZGYtcmVhZG9ubHldPVwiZmllbGQucmVhZE9ubHlcIlxuICAgIFtjbGFzcy5hZGYtbGVmdC1sYWJlbC1pbnB1dC1jb250YWluZXJdPVwiZmllbGQubGVmdExhYmVsc1wiXG4+XG4gICAgPGRpdiAqbmdJZj1cImZpZWxkLmxlZnRMYWJlbHNcIj5cbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsIGFkZi1sZWZ0LWxhYmVsXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCJcbiAgICAgICAgICAgID57e2ZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX08c3BhbiBjbGFzcz1cImFkZi1hc3Rlcmlza1wiIFtzdHlsZS52aXNpYmlsaXR5XT1cImlzUmVxdWlyZWQoKSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXCI+Kjwvc3Bhbj48L2xhYmVsXG4gICAgICAgID5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhZGYtYW1vdW50LXdpZGdldF9faW5wdXQgYWRmLWZvcm0tZmllbGQtaW5wdXRcIiBbZmxvYXRMYWJlbF09XCJwbGFjZWhvbGRlciA/ICdhbHdheXMnIDogbnVsbFwiPlxuICAgICAgICAgICAgQGlmICggKGZpZWxkLm5hbWUgfHwgZmllbGQ/LnJlcXVpcmVkKSAmJiAhZmllbGQubGVmdExhYmVscykgeyA8bWF0LWxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+e3tmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+IH1cbiAgICAgICAgICAgIDxzcGFuIG1hdFRleHRQcmVmaXggY2xhc3M9XCJhZGYtYW1vdW50LXdpZGdldF9fcHJlZml4LXNwYWNpbmdcIj57eyBjdXJyZW5jeSB9fSZuYnNwOzwvc3Bhbj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRmLWlucHV0XCJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmlkXCJcbiAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWQgJiYgZmllbGQuaXNWaXNpYmxlXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJmaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25GaWVsZENoYW5nZWQoZmllbGQpXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgIChibHVyKT1cIm1hcmtBc1RvdWNoZWQoKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWVycm9yLW1lc3NhZ2VzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGVycm9yLXdpZGdldCBbZXJyb3JdPVwiZmllbGQudmFsaWRhdGlvblN1bW1hcnlcIiAvPlxuICAgICAgICAgICAgPGVycm9yLXdpZGdldFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNJbnZhbGlkRmllbGRSZXF1aXJlZCgpICYmIGlzVG91Y2hlZCgpXCJcbiAgICAgICAgICAgICAgICByZXF1aXJlZD1cInt7ICdGT1JNLkZJRUxELlJFUVVJUkVEJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -16,14 +16,13 @@
16
16
  */
17
17
  import { NgIf } from '@angular/common';
18
18
  import { Component, ViewEncapsulation } from '@angular/core';
19
- import { TranslateModule } from '@ngx-translate/core';
19
+ import { TranslatePipe } from '@ngx-translate/core';
20
20
  import { ViewerComponent } from '../../../../viewer';
21
21
  import { FormService } from '../../../services/form.service';
22
22
  import { ErrorWidgetComponent } from '../error/error.component';
23
23
  import { WidgetComponent } from '../widget.component';
24
24
  import * as i0 from "@angular/core";
25
25
  import * as i1 from "../../../services/form.service";
26
- import * as i2 from "@ngx-translate/core";
27
26
  /* eslint-disable @angular-eslint/component-selector */
28
27
  export class BaseViewerWidgetComponent extends WidgetComponent {
29
28
  constructor(formService) {
@@ -41,7 +40,7 @@ export class BaseViewerWidgetComponent extends WidgetComponent {
41
40
  }
42
41
  }
43
42
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseViewerWidgetComponent, deps: [{ token: i1.FormService }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseViewerWidgetComponent, isStandalone: true, selector: "base-viewer-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-base-viewer-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <adf-viewer [urlFile]=\"field.value.urlFile\"\n [blobFile]=\"field.value.blobFile\"\n [fileName]=\"field.value.fileName\"\n [showViewer]=\"field.value?.blobFile || field.value?.urlFile\"\n [allowGoBack]=\"false\" />\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n </div>\n</div>\n", styles: ["base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer{position:relative}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "component", type: ViewerComponent, selector: "adf-viewer", inputs: ["urlFile", "blobFile", "showViewer", "allowGoBack", "allowFullScreen", "showToolbar", "overlayMode", "allowNavigate", "canNavigateBefore", "canNavigateNext", "allowLeftSidebar", "allowRightSidebar", "showRightSidebar", "showLeftSidebar", "sidebarRightTemplate", "sidebarLeftTemplate", "readOnly", "allowedEditActions", "tracks", "mimeType", "sidebarRightTemplateContext", "sidebarLeftTemplateContext", "closeButtonPosition", "hideInfoButton", "viewerExtensions", "nodeId", "nodeMimeType", "customError", "showToolbarDividers", "fileName"], outputs: ["downloadFile", "navigateBefore", "navigateNext", "showViewerChange", "submitFile"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseViewerWidgetComponent, isStandalone: true, selector: "base-viewer-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-base-viewer-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <adf-viewer [urlFile]=\"field.value.urlFile\"\n [blobFile]=\"field.value.blobFile\"\n [fileName]=\"field.value.fileName\"\n [showViewer]=\"field.value?.blobFile || field.value?.urlFile\"\n [allowGoBack]=\"false\" />\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n </div>\n</div>\n", styles: ["base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer{position:relative}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"], dependencies: [{ kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: ViewerComponent, selector: "adf-viewer", inputs: ["urlFile", "blobFile", "showViewer", "allowGoBack", "allowFullScreen", "showToolbar", "overlayMode", "allowNavigate", "canNavigateBefore", "canNavigateNext", "allowLeftSidebar", "allowRightSidebar", "showRightSidebar", "showLeftSidebar", "sidebarRightTemplate", "sidebarLeftTemplate", "readOnly", "allowedEditActions", "tracks", "mimeType", "sidebarRightTemplateContext", "sidebarLeftTemplateContext", "closeButtonPosition", "hideInfoButton", "viewerExtensions", "nodeId", "nodeMimeType", "customError", "showToolbarDividers", "fileName"], outputs: ["downloadFile", "navigateBefore", "navigateNext", "showViewerChange", "submitFile"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
45
44
  }
46
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseViewerWidgetComponent, decorators: [{
47
46
  type: Component,
@@ -55,6 +54,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
55
54
  '(input)': 'event($event)',
56
55
  '(invalid)': 'event($event)',
57
56
  '(select)': 'event($event)'
58
- }, imports: [NgIf, TranslateModule, ViewerComponent, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-base-viewer-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <adf-viewer [urlFile]=\"field.value.urlFile\"\n [blobFile]=\"field.value.blobFile\"\n [fileName]=\"field.value.fileName\"\n [showViewer]=\"field.value?.blobFile || field.value?.urlFile\"\n [allowGoBack]=\"false\" />\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n </div>\n</div>\n", styles: ["base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer{position:relative}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"] }]
57
+ }, imports: [NgIf, TranslatePipe, ViewerComponent, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-base-viewer-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <adf-viewer [urlFile]=\"field.value.urlFile\"\n [blobFile]=\"field.value.blobFile\"\n [fileName]=\"field.value.fileName\"\n [showViewer]=\"field.value?.blobFile || field.value?.urlFile\"\n [allowGoBack]=\"false\" />\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n </div>\n</div>\n", styles: ["base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget{height:100%;width:100%}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer{position:relative}base-viewer-widget .adf-base-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"] }]
59
58
  }], ctorParameters: () => [{ type: i1.FormService }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS12aWV3ZXIud2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNlLXZpZXdlci9iYXNlLXZpZXdlci53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2Jhc2Utdmlld2VyL2Jhc2Utdmlld2VyLndpZGdldC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQUV0RCx1REFBdUQ7QUFxQnZELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxlQUFlO0lBQzFELFlBQVksV0FBd0I7UUFDaEMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3BCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDakUsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0IsQ0FBQztpQkFBTSxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNyRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0MsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOytHQWRRLHlCQUF5QjttR0FBekIseUJBQXlCLGdYQzlDdEMseXdCQWVBLHFYRDRCb0IsZUFBZSw0RkFBRSxlQUFlLDJyQkFBRSxvQkFBb0I7OzRGQUc3RCx5QkFBeUI7a0JBbkJyQyxTQUFTOytCQUNJLG9CQUFvQixjQUNsQixJQUFJLFFBR1Y7d0JBQ0YsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFFBQVEsRUFBRSxlQUFlO3dCQUN6QixVQUFVLEVBQUUsZUFBZTt3QkFDM0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixZQUFZLEVBQUUsZUFBZTt3QkFDN0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixVQUFVLEVBQUUsZUFBZTtxQkFDOUIsV0FDUSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixDQUFDLGlCQUN4RCxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi92aWV3ZXInO1xuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9lcnJvci9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LmNvbXBvbmVudCc7XG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYXNlLXZpZXdlci13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Jhc2Utdmlld2VyLndpZGdldC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXNlLXZpZXdlci53aWRnZXQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBWaWV3ZXJDb21wb25lbnQsIEVycm9yV2lkZ2V0Q29tcG9uZW50XSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VWaWV3ZXJXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSkge1xuICAgICAgICBzdXBlcihmb3JtU2VydmljZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy52YWx1ZSkge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5maWVsZC52YWx1ZSkgJiYgdGhpcy5maWVsZC52YWx1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZSA9IHRoaXMuZmllbGQudmFsdWVbMF07XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IGZpbGUuaWQ7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLmZpZWxkLnZhbHVlID09PSAnb2JqZWN0JyAmJiB0aGlzLmZpZWxkLnZhbHVlLmlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IHRoaXMuZmllbGQudmFsdWUuaWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWRmLWJhc2Utdmlld2VyLXdpZGdldCB7eyBmaWVsZC5jbGFzc05hbWUgfX1cIlxuICAgICBbY2xhc3MuYWRmLWludmFsaWRdPVwiIWZpZWxkLmlzVmFsaWRcIlxuICAgICBbY2xhc3MuYWRmLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRPbmx5XCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+XG4gICAgICAgIHt7IGZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+PC9sYWJlbD5cbiAgICA8YWRmLXZpZXdlciBbdXJsRmlsZV09XCJmaWVsZC52YWx1ZS51cmxGaWxlXCJcbiAgICAgICAgICAgICAgICBbYmxvYkZpbGVdPVwiZmllbGQudmFsdWUuYmxvYkZpbGVcIlxuICAgICAgICAgICAgICAgIFtmaWxlTmFtZV09XCJmaWVsZC52YWx1ZS5maWxlTmFtZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dWaWV3ZXJdPVwiZmllbGQudmFsdWU/LmJsb2JGaWxlIHx8IGZpZWxkLnZhbHVlPy51cmxGaWxlXCJcbiAgICAgICAgICAgICAgICBbYWxsb3dHb0JhY2tdPVwiZmFsc2VcIiAvPlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtZXJyb3ItbWVzc2FnZXMtY29udGFpbmVyXCI+XG4gICAgICAgIDxlcnJvci13aWRnZXQgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS12aWV3ZXIud2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9iYXNlLXZpZXdlci9iYXNlLXZpZXdlci53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2Jhc2Utdmlld2VyL2Jhc2Utdmlld2VyLndpZGdldC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBRXRELHVEQUF1RDtBQXFCdkQsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGVBQWU7SUFDMUQsWUFBWSxXQUF3QjtRQUNoQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDcEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNqRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMvQixDQUFDO2lCQUFNLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMzQyxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7K0dBZFEseUJBQXlCO21HQUF6Qix5QkFBeUIsZ1hDOUN0Qyx5d0JBZUEsaVhENEJvQixhQUFhLGtEQUFFLGVBQWUsMnJCQUFFLG9CQUFvQjs7NEZBRzNELHlCQUF5QjtrQkFuQnJDLFNBQVM7K0JBQ0ksb0JBQW9CLGNBQ2xCLElBQUksUUFHVjt3QkFDRixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsUUFBUSxFQUFFLGVBQWU7d0JBQ3pCLFVBQVUsRUFBRSxlQUFlO3dCQUMzQixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFlBQVksRUFBRSxlQUFlO3dCQUM3QixTQUFTLEVBQUUsZUFBZTt3QkFDMUIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLFVBQVUsRUFBRSxlQUFlO3FCQUM5QixXQUNRLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLENBQUMsaUJBQ3RELGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi92aWV3ZXInO1xuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9lcnJvci9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LmNvbXBvbmVudCc7XG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYXNlLXZpZXdlci13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Jhc2Utdmlld2VyLndpZGdldC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXNlLXZpZXdlci53aWRnZXQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlUGlwZSwgVmlld2VyQ29tcG9uZW50LCBFcnJvcldpZGdldENvbXBvbmVudF0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBCYXNlVmlld2VyV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBjb25zdHJ1Y3Rvcihmb3JtU2VydmljZTogRm9ybVNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoZm9ybVNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWVsZD8udmFsdWUpIHtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuZmllbGQudmFsdWUpICYmIHRoaXMuZmllbGQudmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGUgPSB0aGlzLmZpZWxkLnZhbHVlWzBdO1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSBmaWxlLmlkO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5maWVsZC52YWx1ZSA9PT0gJ29iamVjdCcgJiYgdGhpcy5maWVsZC52YWx1ZS5pZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSB0aGlzLmZpZWxkLnZhbHVlLmlkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZi1iYXNlLXZpZXdlci13aWRnZXQge3sgZmllbGQuY2xhc3NOYW1lIH19XCJcbiAgICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cIiFmaWVsZC5pc1ZhbGlkXCJcbiAgICAgW2NsYXNzLmFkZi1yZWFkb25seV09XCJmaWVsZC5yZWFkT25seVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImFkZi1sYWJlbFwiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICB7eyBmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPjwvbGFiZWw+XG4gICAgPGFkZi12aWV3ZXIgW3VybEZpbGVdPVwiZmllbGQudmFsdWUudXJsRmlsZVwiXG4gICAgICAgICAgICAgICAgW2Jsb2JGaWxlXT1cImZpZWxkLnZhbHVlLmJsb2JGaWxlXCJcbiAgICAgICAgICAgICAgICBbZmlsZU5hbWVdPVwiZmllbGQudmFsdWUuZmlsZU5hbWVcIlxuICAgICAgICAgICAgICAgIFtzaG93Vmlld2VyXT1cImZpZWxkLnZhbHVlPy5ibG9iRmlsZSB8fCBmaWVsZC52YWx1ZT8udXJsRmlsZVwiXG4gICAgICAgICAgICAgICAgW2FsbG93R29CYWNrXT1cImZhbHNlXCIgLz5cbiAgICA8ZGl2IGNsYXNzPVwiYWRmLWVycm9yLW1lc3NhZ2VzLWNvbnRhaW5lclwiPlxuICAgICAgICA8ZXJyb3Itd2lkZ2V0IFtlcnJvcl09XCJmaWVsZC52YWxpZGF0aW9uU3VtbWFyeVwiIC8+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==