@agorapulse/ui-components 18.0.0-beta.9 → 18.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/agorapulse-ui-components-18.0.1.tgz +0 -0
  2. package/avatar/avatar.component.d.ts +56 -43
  3. package/datepicker/datepicker.component.d.ts +5 -3
  4. package/esm2022/autocomplete/autocomplete.component.mjs +2 -2
  5. package/esm2022/avatar/avatar.component.mjs +112 -180
  6. package/esm2022/button/button.component.mjs +2 -2
  7. package/esm2022/checkbox/checkbox.component.mjs +1 -1
  8. package/esm2022/datepicker/datepicker.component.mjs +7 -5
  9. package/esm2022/form-message/form-message.component.mjs +1 -1
  10. package/esm2022/icon-button/icon-button.component.mjs +2 -2
  11. package/esm2022/infobox/infobox.component.mjs +2 -2
  12. package/esm2022/input-search/input-search.component.mjs +1 -1
  13. package/esm2022/labels/label.component.mjs +1 -1
  14. package/esm2022/legacy/input/input.component.mjs +1 -1
  15. package/esm2022/legacy/select/select.component.mjs +2 -2
  16. package/esm2022/legacy/textarea/textarea.component.mjs +1 -1
  17. package/esm2022/media-display-overlay/media-display-overlay-dialog.component.mjs +2 -2
  18. package/esm2022/modal/modal.component.mjs +2 -2
  19. package/esm2022/neo-datepicker/neo-datepicker.component.mjs +2 -2
  20. package/esm2022/paginator/paginator.component.mjs +2 -2
  21. package/esm2022/password-input/password-input.component.mjs +2 -2
  22. package/esm2022/phone-number-input/phone-number-input.component.mjs +38 -24
  23. package/esm2022/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.mjs +2 -2
  24. package/esm2022/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.mjs +2 -2
  25. package/esm2022/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.mjs +2 -2
  26. package/esm2022/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.mjs +2 -2
  27. package/esm2022/select/dropdown-search-form/dropdown-search-form.component.mjs +2 -2
  28. package/esm2022/select/select-base.directive.mjs +3 -3
  29. package/esm2022/select/select-label-multiple/select-label-multiple.component.mjs +2 -2
  30. package/esm2022/select/select-label-single/select-label-single.component.mjs +1 -1
  31. package/esm2022/snackbars-thread/component/snackbars-thread.component.mjs +2 -2
  32. package/esm2022/social-button/social-button.component.mjs +2 -2
  33. package/esm2022/split-button/split-button.component.mjs +5 -8
  34. package/esm2022/stepper/stepper.component.mjs +2 -2
  35. package/esm2022/tag/tag.component.mjs +1 -1
  36. package/esm2022/toggle/toggle.component.mjs +5 -5
  37. package/fesm2022/agorapulse-ui-components-add-comment.mjs +1 -1
  38. package/fesm2022/agorapulse-ui-components-autocomplete.mjs +2 -2
  39. package/fesm2022/agorapulse-ui-components-autocomplete.mjs.map +1 -1
  40. package/fesm2022/agorapulse-ui-components-avatar.mjs +112 -180
  41. package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -1
  42. package/fesm2022/agorapulse-ui-components-badge.mjs +1 -1
  43. package/fesm2022/agorapulse-ui-components-button.mjs +2 -2
  44. package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -1
  45. package/fesm2022/agorapulse-ui-components-checkbox.mjs +2 -2
  46. package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -1
  47. package/fesm2022/agorapulse-ui-components-confirm-modal.mjs +1 -1
  48. package/fesm2022/agorapulse-ui-components-counter.mjs +1 -1
  49. package/fesm2022/agorapulse-ui-components-datepicker.mjs +7 -5
  50. package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -1
  51. package/fesm2022/agorapulse-ui-components-directives.mjs +1 -1
  52. package/fesm2022/agorapulse-ui-components-dot-stepper.mjs +1 -1
  53. package/fesm2022/agorapulse-ui-components-form-field.mjs +1 -1
  54. package/fesm2022/agorapulse-ui-components-form-message.mjs +2 -2
  55. package/fesm2022/agorapulse-ui-components-form-message.mjs.map +1 -1
  56. package/fesm2022/agorapulse-ui-components-icon-button.mjs +2 -2
  57. package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -1
  58. package/fesm2022/agorapulse-ui-components-infobox.mjs +2 -2
  59. package/fesm2022/agorapulse-ui-components-infobox.mjs.map +1 -1
  60. package/fesm2022/agorapulse-ui-components-input-group.mjs +1 -1
  61. package/fesm2022/agorapulse-ui-components-input-search.mjs +3 -3
  62. package/fesm2022/agorapulse-ui-components-input-search.mjs.map +1 -1
  63. package/fesm2022/agorapulse-ui-components-labels-selector.mjs +1 -1
  64. package/fesm2022/agorapulse-ui-components-labels.mjs +2 -2
  65. package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
  66. package/fesm2022/agorapulse-ui-components-legacy-input.mjs +3 -3
  67. package/fesm2022/agorapulse-ui-components-legacy-input.mjs.map +1 -1
  68. package/fesm2022/agorapulse-ui-components-legacy-select.mjs +2 -2
  69. package/fesm2022/agorapulse-ui-components-legacy-select.mjs.map +1 -1
  70. package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs +3 -3
  71. package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs.map +1 -1
  72. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs +2 -2
  73. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs.map +1 -1
  74. package/fesm2022/agorapulse-ui-components-modal.mjs +2 -2
  75. package/fesm2022/agorapulse-ui-components-modal.mjs.map +1 -1
  76. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs +2 -2
  77. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs.map +1 -1
  78. package/fesm2022/agorapulse-ui-components-notification.mjs +1 -1
  79. package/fesm2022/agorapulse-ui-components-paginator.mjs +2 -2
  80. package/fesm2022/agorapulse-ui-components-paginator.mjs.map +1 -1
  81. package/fesm2022/agorapulse-ui-components-password-input.mjs +2 -2
  82. package/fesm2022/agorapulse-ui-components-password-input.mjs.map +1 -1
  83. package/fesm2022/agorapulse-ui-components-phone-number-input.mjs +39 -25
  84. package/fesm2022/agorapulse-ui-components-phone-number-input.mjs.map +1 -1
  85. package/fesm2022/agorapulse-ui-components-popmenu.mjs +2 -2
  86. package/fesm2022/agorapulse-ui-components-radio.mjs +1 -1
  87. package/fesm2022/agorapulse-ui-components-range-slider.mjs +2 -2
  88. package/fesm2022/agorapulse-ui-components-select.mjs +9 -9
  89. package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -1
  90. package/fesm2022/agorapulse-ui-components-slide-toggle.mjs +1 -1
  91. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +2 -2
  92. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -1
  93. package/fesm2022/agorapulse-ui-components-social-button.mjs +2 -2
  94. package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -1
  95. package/fesm2022/agorapulse-ui-components-split-button.mjs +4 -7
  96. package/fesm2022/agorapulse-ui-components-split-button.mjs.map +1 -1
  97. package/fesm2022/agorapulse-ui-components-status-card.mjs +1 -1
  98. package/fesm2022/agorapulse-ui-components-status.mjs +1 -1
  99. package/fesm2022/agorapulse-ui-components-stepper.mjs +2 -2
  100. package/fesm2022/agorapulse-ui-components-stepper.mjs.map +1 -1
  101. package/fesm2022/agorapulse-ui-components-tag.mjs +2 -2
  102. package/fesm2022/agorapulse-ui-components-tag.mjs.map +1 -1
  103. package/fesm2022/agorapulse-ui-components-textarea.mjs +1 -1
  104. package/fesm2022/agorapulse-ui-components-toggle.mjs +5 -5
  105. package/fesm2022/agorapulse-ui-components-toggle.mjs.map +1 -1
  106. package/fesm2022/agorapulse-ui-components.mjs +2 -2
  107. package/package.json +31 -31
  108. package/phone-number-input/phone-number-input.component.d.ts +5 -3
  109. package/split-button/split-button.component.d.ts +3 -3
  110. package/agorapulse-ui-components-18.0.0-beta.9.tgz +0 -0
@@ -96,7 +96,7 @@ export class TextareaComponent {
96
96
  useExisting: TextareaComponent,
97
97
  multi: true,
98
98
  },
99
- ], queries: [{ propertyName: "symbols", predicate: SymbolComponent }], ngImport: i0, template: "@if (label) {\n <label [for]=\"textareaId\">\n <span>\n {{ label }}\n </span>\n @if (description) {\n <span class=\"description\">\n {{ description }}\n </span>\n }\n </label>\n}\n\n<textarea\n [class.with-error]=\"errorMessage\"\n [class.with-success]=\"successMessage\"\n [class.with-resize]=\"resize\"\n [placeholder]=\"placeholder\"\n [attr.data-test]=\"hostDataTest() ? hostDataTest() : name\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [id]=\"textareaId\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [attr.aria-disabled]=\"disabled?.toString()\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange()\"></textarea>\n@if (errorMessage) {\n <div class=\"form-message error\">\n <ap-symbol\n symbolId=\"error_fill\"\n size=\"sm\" />\n <span>\n {{ errorMessage }}\n </span>\n </div>\n}\n\n@if (successMessage) {\n <div class=\"form-message success\">\n <ap-symbol\n symbolId=\"rounded-check_fill\"\n size=\"sm\" />\n <span>\n {{ successMessage }}\n </span>\n </div>\n}\n", styles: ["ap-textarea{display:flex;flex-direction:column;gap:var(--ref-spacing-xxs);--border-width: 1px}ap-textarea label{display:flex;flex-direction:column;gap:var(--comp-forms-label-spacing-vertical);font-size:var(--comp-forms-label-size);font-weight:var(--comp-forms-label-font-weight);line-height:var(--comp-forms-label-line-height);font-family:var(--comp-forms-label-font-family);color:var(--comp-forms-label-text-color)}ap-textarea label .description{font-size:var(--comp-forms-label-description-text-size);font-weight:var(--comp-forms-label-description-text-font-weight);line-height:var(--comp-forms-label-description-text-line-height);font-family:var(--comp-forms-label-description-text-font-family);color:var(--comp-forms-label-description-text-color)}ap-textarea textarea{resize:none;width:256px;border:var(--border-width) solid var(--comp-input-border-default-color);background-color:var(--ref-color-white);padding:var(--ref-spacing-xxs) var(--ref-spacing-xs) var(--ref-spacing-xxs) var(--ref-spacing-xs);border-radius:var(--ref-border-radius-sm)}ap-textarea textarea::placeholder{color:var(--comp-input-text-placeholder-color)}ap-textarea textarea:not(.transparent):not(.valid):not(.invalid):not(:focus):not([disabled]):hover{border-color:var(--comp-input-border-hover-color)}ap-textarea textarea:active{border-color:var(--comp-input-border-focused-color)}ap-textarea textarea:disabled{background-color:var(--comp-input-fill-disabled-color);color:var(--comp-input-text-disabled-color);cursor:default}ap-textarea textarea.with-error{border-color:var(--comp-input-border-error-color)}ap-textarea textarea.with-success{border-color:var(--comp-input-border-success-color)}ap-textarea textarea.with-resize{resize:vertical}.form-message{font-size:var(--sys-text-style-body-size);font-weight:var(--sys-text-style-body-weight);line-height:var(--sys-text-style-body-line-height);font-family:var(--sys-text-style-body-font-family);margin:0;display:flex;gap:var(--ref-spacing-xxxs)}.form-message.error{color:var(--comp-forms-status-text-error-color)}.form-message.error ap-symbol{color:var(--comp-forms-status-icon-error-color)}.form-message.success{color:var(--comp-forms-status-text-success-color)}.form-message.success ap-symbol{color:var(--comp-forms-status-icon-success-color)}form.ng-submitted ap-textarea.ng-valid textarea{border-color:var(--comp-input-border-success-color)}form.ng-submitted ap-textarea.ng-invalid textarea{border-color:var(--comp-input-border-error-color)}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
99
+ ], queries: [{ propertyName: "symbols", predicate: SymbolComponent }], ngImport: i0, template: "@if (label) {\n <label [for]=\"textareaId\">\n <span>\n {{ label }}\n </span>\n @if (description) {\n <span class=\"description\">\n {{ description }}\n </span>\n }\n </label>\n}\n\n<textarea\n [class.with-error]=\"errorMessage\"\n [class.with-success]=\"successMessage\"\n [class.with-resize]=\"resize\"\n [placeholder]=\"placeholder\"\n [attr.data-test]=\"hostDataTest() ? hostDataTest() : name\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [id]=\"textareaId\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledBy || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [attr.aria-disabled]=\"disabled?.toString()\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange()\"></textarea>\n@if (errorMessage) {\n <div class=\"form-message error\">\n <ap-symbol\n symbolId=\"error_fill\"\n size=\"sm\" />\n <span>\n {{ errorMessage }}\n </span>\n </div>\n}\n\n@if (successMessage) {\n <div class=\"form-message success\">\n <ap-symbol\n symbolId=\"rounded-check_fill\"\n size=\"sm\" />\n <span>\n {{ successMessage }}\n </span>\n </div>\n}\n", styles: ["ap-textarea{display:flex;flex-direction:column;gap:var(--ref-spacing-xxs);--border-width: 1px}ap-textarea label{display:flex;flex-direction:column;gap:var(--comp-forms-label-spacing-vertical);font-size:var(--comp-forms-label-size);font-weight:var(--comp-forms-label-font-weight);line-height:var(--comp-forms-label-line-height);font-family:var(--comp-forms-label-font-family);color:var(--comp-forms-label-text-color)}ap-textarea label .description{font-size:var(--comp-forms-label-description-text-size);font-weight:var(--comp-forms-label-description-text-font-weight);line-height:var(--comp-forms-label-description-text-line-height);font-family:var(--comp-forms-label-description-text-font-family);color:var(--comp-forms-label-description-text-color)}ap-textarea textarea{resize:none;width:256px;border:var(--border-width) solid var(--comp-input-border-default-color);background-color:var(--ref-color-white);padding:var(--ref-spacing-xxs) var(--ref-spacing-xs) var(--ref-spacing-xxs) var(--ref-spacing-xs);border-radius:var(--ref-border-radius-sm)}ap-textarea textarea::placeholder{color:var(--comp-input-text-placeholder-color)}ap-textarea textarea:not(.transparent):not(.valid):not(.invalid):not(:focus):not([disabled]):hover{border-color:var(--comp-input-border-hover-color)}ap-textarea textarea:active{border-color:var(--comp-input-border-focused-color)}ap-textarea textarea:disabled{background-color:var(--comp-input-fill-disabled-color);color:var(--comp-input-text-disabled-color);cursor:default}ap-textarea textarea.with-error{border-color:var(--comp-input-border-error-color)}ap-textarea textarea.with-success{border-color:var(--comp-input-border-success-color)}ap-textarea textarea.with-resize{resize:vertical}.form-message{font-size:var(--sys-text-style-body-size);font-weight:var(--sys-text-style-body-weight);line-height:var(--sys-text-style-body-line-height);font-family:var(--sys-text-style-body-font-family);margin:0;display:flex;gap:var(--ref-spacing-xxxs)}.form-message.error{color:var(--comp-forms-status-text-error-color)}.form-message.error ap-symbol{color:var(--comp-forms-status-icon-error-color)}.form-message.success{color:var(--comp-forms-status-text-success-color)}.form-message.success ap-symbol{color:var(--comp-forms-status-icon-success-color)}form.ng-submitted ap-textarea.ng-valid textarea{border-color:var(--comp-input-border-success-color)}form.ng-submitted ap-textarea.ng-invalid textarea{border-color:var(--comp-input-border-error-color)}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
100
100
  }
101
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TextareaComponent, decorators: [{
102
102
  type: Component,
@@ -104,7 +104,7 @@ export class MediaDisplayOverlayDialogComponent {
104
104
  }
105
105
  }
106
106
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: MediaDisplayOverlayDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
107
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: MediaDisplayOverlayDialogComponent, isStandalone: true, selector: "ap-media-display-overlay", host: { listeners: { "window:keyup": "keyEvent($event)" } }, viewQueries: [{ propertyName: "videoPlayer", first: true, predicate: ["videoPlayer"], descendants: true }], ngImport: i0, template: "<div\n class=\"full\"\n (click)=\"onClose()\">\n <div class=\"media-display ap-new\">\n <header class=\"ap-modal-header\">\n <ap-symbol\n symbolId=\"close\"\n color=\"white\"\n size=\"sm\"\n (click)=\"onClose()\" />\n </header>\n <slot class=\"ap-modal-content\">\n @if (mediaInfo.length > 1) {\n <div\n class=\"next-prev-container left\"\n [class.disabled]=\"currentUrlIndex <= 1\"\n (click)=\"onPrevious($event)\">\n <div class=\"icon-container\">\n <ap-symbol\n symbolId=\"arrow-left-1\"\n size=\"lg\"\n [color]=\"currentUrlIndex <= 1 ? 'grey-blue' : 'white'\" />\n </div>\n </div>\n }\n <div class=\"media-container\">\n @if (url && mediaType === 'PHOTO') {\n <img\n apFrozenGif\n [apFrozen]=\"!supportGif\"\n [src]=\"url\"\n (click)=\"$event.stopPropagation()\" />\n }\n @if (url && mediaType === 'VIDEO') {\n <div class=\"media-container-video\">\n <video\n #videoPlayer\n controls\n disablepictureinpicture\n muted\n controlsList=\"nofullscreen\"\n [id]=\"'video-' + currentUrlIndex\"\n [poster]=\"thumbnailCover\"\n [src]=\"url\"\n (click)=\"play($event)\"\n (playing)=\"isPlayingVideo = true\"\n (pause)=\"isPlayingVideo = false\"\n (ended)=\"isPlayingVideo = false\"></video>\n <svg\n class=\"play-button\"\n xmlns=\"http://www.w3.org/2000/svg\"\n (click)=\"play($event)\">\n @if (!isPlayingVideo) {\n <path d=\"M11,10 L18,13.74 18,22.28 11,26 M18,13.74 L26,18 26,18 18,22.28\" />\n }\n </svg>\n </div>\n }\n </div>\n @if (mediaInfo.length > 1) {\n <div\n class=\"next-prev-container right\"\n [class.disabled]=\"currentUrlIndex >= mediaInfo.length\"\n (click)=\"onNext($event)\">\n <div class=\"icon-container\">\n <ap-symbol\n symbolId=\"chevron-right\"\n size=\"lg\"\n [color]=\"currentUrlIndex >= mediaInfo.length ? 'grey-blue' : 'white'\" />\n </div>\n </div>\n }\n </slot>\n @if (mediaInfo && mediaInfo.length > 1) {\n <footer class=\"ap-modal-footer\">\n <div class=\"index-container\">{{ currentUrlIndex }} / {{ mediaInfo.length }}</div>\n </footer>\n }\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{width:100%;height:100%}.full{height:100%;width:100%}::ng-deep .full-screen-modal .mat-mdc-dialog-container .mdc-dialog__surface{background:none;padding:var(--ref-spacing-md)}.media-display{background:transparent;display:flex;flex-direction:column;width:100%;height:100%}.media-display .media-container{margin:auto;align-items:center;flex-direction:column;display:flex}.media-display .media-container img,.media-display .media-container video{max-width:80%}.media-display .media-container .media-container-video{display:inherit;justify-content:center;position:relative}.media-display .media-container .media-container-video .play-button{z-index:1000;position:absolute;inset:0;width:var(--ref-font-line-height-xl);height:var(--ref-font-line-height-xl);transform:scale(2);margin:auto;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}.media-display .media-container .media-container-video .play-button path{fill:#fffc}.media-display .ap-modal-content{display:block;padding-bottom:10px;margin:auto}.media-display .ap-modal-header{background:transparent;border-bottom:none;display:flex;justify-content:flex-end}.media-display .ap-modal-header .ap-modal-close{color:#fff}.media-display .ap-modal-header .ap-modal-close.ap-icon{font-size:45px}.media-display .ap-modal-footer{justify-content:flex-end;background:transparent;border:none;margin-bottom:24px;align-items:center;display:flex;flex-direction:column}.media-display .ap-modal-footer .index-container{color:#fff;font-size:24px;display:inline;background-color:#0000001a;border-radius:20px;padding:16px}.media-display .next-prev-container{display:flex;justify-content:center;align-items:center;width:60px;height:60px;position:absolute;top:45%;cursor:pointer;background-color:#0000001a;border-radius:60px;color:#fff}.media-display .next-prev-container .ap-icon{font-size:45px}.media-display .next-prev-container.right{margin-right:24px;right:0}.media-display .next-prev-container.right .icon-container{margin-left:7px}.media-display .next-prev-container[disabled] .ap-icon{color:#dfe3e9}.media-display .next-prev-container.left{margin-left:24px;left:0}.media-display .next-prev-container.left .icon-container{margin-right:5px}.media-display .next-prev-container.disabled{cursor:not-allowed}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "directive", type: FrozenGifDirective, selector: "img[apFrozenGif]", inputs: ["src", "apFrozen", "apGifEvents"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
107
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: MediaDisplayOverlayDialogComponent, isStandalone: true, selector: "ap-media-display-overlay", host: { listeners: { "window:keyup": "keyEvent($event)" } }, viewQueries: [{ propertyName: "videoPlayer", first: true, predicate: ["videoPlayer"], descendants: true }], ngImport: i0, template: "<div\n class=\"full\"\n (click)=\"onClose()\">\n <div class=\"media-display ap-new\">\n <header class=\"ap-modal-header\">\n <ap-symbol\n symbolId=\"close\"\n color=\"white\"\n size=\"sm\"\n (click)=\"onClose()\" />\n </header>\n <slot class=\"ap-modal-content\">\n @if (mediaInfo.length > 1) {\n <div\n class=\"next-prev-container left\"\n [class.disabled]=\"currentUrlIndex <= 1\"\n (click)=\"onPrevious($event)\">\n <div class=\"icon-container\">\n <ap-symbol\n symbolId=\"arrow-left-1\"\n size=\"lg\"\n [color]=\"currentUrlIndex <= 1 ? 'grey-blue' : 'white'\" />\n </div>\n </div>\n }\n <div class=\"media-container\">\n @if (url && mediaType === 'PHOTO') {\n <img\n apFrozenGif\n [apFrozen]=\"!supportGif\"\n [src]=\"url\"\n (click)=\"$event.stopPropagation()\" />\n }\n @if (url && mediaType === 'VIDEO') {\n <div class=\"media-container-video\">\n <video\n #videoPlayer\n controls\n disablepictureinpicture\n muted\n controlsList=\"nofullscreen\"\n [id]=\"'video-' + currentUrlIndex\"\n [poster]=\"thumbnailCover\"\n [src]=\"url\"\n (click)=\"play($event)\"\n (playing)=\"isPlayingVideo = true\"\n (pause)=\"isPlayingVideo = false\"\n (ended)=\"isPlayingVideo = false\"></video>\n <svg\n class=\"play-button\"\n xmlns=\"http://www.w3.org/2000/svg\"\n (click)=\"play($event)\">\n @if (!isPlayingVideo) {\n <path d=\"M11,10 L18,13.74 18,22.28 11,26 M18,13.74 L26,18 26,18 18,22.28\" />\n }\n </svg>\n </div>\n }\n </div>\n @if (mediaInfo.length > 1) {\n <div\n class=\"next-prev-container right\"\n [class.disabled]=\"currentUrlIndex >= mediaInfo.length\"\n (click)=\"onNext($event)\">\n <div class=\"icon-container\">\n <ap-symbol\n symbolId=\"chevron-right\"\n size=\"lg\"\n [color]=\"currentUrlIndex >= mediaInfo.length ? 'grey-blue' : 'white'\" />\n </div>\n </div>\n }\n </slot>\n @if (mediaInfo && mediaInfo.length > 1) {\n <footer class=\"ap-modal-footer\">\n <div class=\"index-container\">{{ currentUrlIndex }} / {{ mediaInfo.length }}</div>\n </footer>\n }\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{width:100%;height:100%}.full{height:100%;width:100%}::ng-deep .full-screen-modal .mat-mdc-dialog-container .mdc-dialog__surface{background:none;padding:var(--ref-spacing-md)}.media-display{background:transparent;display:flex;flex-direction:column;width:100%;height:100%}.media-display .media-container{margin:auto;align-items:center;flex-direction:column;display:flex}.media-display .media-container img,.media-display .media-container video{max-width:80%}.media-display .media-container .media-container-video{display:inherit;justify-content:center;position:relative}.media-display .media-container .media-container-video .play-button{z-index:1000;position:absolute;inset:0;width:var(--ref-font-line-height-xl);height:var(--ref-font-line-height-xl);transform:scale(2);margin:auto;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}.media-display .media-container .media-container-video .play-button path{fill:#fffc}.media-display .ap-modal-content{display:block;padding-bottom:10px;margin:auto}.media-display .ap-modal-header{background:transparent;border-bottom:none;display:flex;justify-content:flex-end}.media-display .ap-modal-header .ap-modal-close{color:#fff}.media-display .ap-modal-header .ap-modal-close.ap-icon{font-size:45px}.media-display .ap-modal-footer{justify-content:flex-end;background:transparent;border:none;margin-bottom:24px;align-items:center;display:flex;flex-direction:column}.media-display .ap-modal-footer .index-container{color:#fff;font-size:24px;display:inline;background-color:#0000001a;border-radius:20px;padding:16px}.media-display .next-prev-container{display:flex;justify-content:center;align-items:center;width:60px;height:60px;position:absolute;top:45%;cursor:pointer;background-color:#0000001a;border-radius:60px;color:#fff}.media-display .next-prev-container .ap-icon{font-size:45px}.media-display .next-prev-container.right{margin-right:24px;right:0}.media-display .next-prev-container.right .icon-container{margin-left:7px}.media-display .next-prev-container[disabled] .ap-icon{color:#dfe3e9}.media-display .next-prev-container.left{margin-left:24px;left:0}.media-display .next-prev-container.left .icon-container{margin-right:5px}.media-display .next-prev-container.disabled{cursor:not-allowed}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "directive", type: FrozenGifDirective, selector: "img[apFrozenGif]", inputs: ["src", "apFrozen", "apGifEvents"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
108
108
  }
109
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: MediaDisplayOverlayDialogComponent, decorators: [{
110
110
  type: Component,
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
119
119
  type: HostListener,
120
120
  args: ['window:keyup', ['$event']]
121
121
  }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtZGlzcGxheS1vdmVybGF5LWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbWVkaWEtZGlzcGxheS1vdmVybGF5L3NyYy9tZWRpYS1kaXNwbGF5LW92ZXJsYXktZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9tZWRpYS1kaXNwbGF5LW92ZXJsYXkvc3JjL21lZGlhLWRpc3BsYXktb3ZlcmxheS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBa0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsZUFBZSxFQUFpQyxNQUFNLDBCQUEwQixDQUFDOzs7O0FBUTFGLE1BQU0sQ0FBTixJQUFZLFFBR1g7QUFIRCxXQUFZLFFBQVE7SUFDaEIsc0RBQWdCLENBQUE7SUFDaEIsb0RBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSFcsUUFBUSxLQUFSLFFBQVEsUUFHbkI7QUFnQkQsTUFBTSxPQUFPLGtDQUFrQztJQTBCaEM7SUFDeUI7SUFDekI7SUEzQmUsV0FBVyxDQUEyQztJQUVoRixNQUFNLENBQUMsTUFBTSxHQUFzQztRQUMvQyxRQUFRLEVBQUU7WUFDTixHQUFHLEVBQUUsTUFBTTtZQUNYLEtBQUssRUFBRSxNQUFNO1lBQ2IsSUFBSSxFQUFFLE1BQU07U0FDZjtRQUNELE1BQU0sRUFBRSxNQUFNO1FBQ2QsS0FBSyxFQUFFLE1BQU07UUFD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LEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQzNDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUdELFFBQVEsQ0FBQyxLQUFvQjtRQUN6QixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQzt1R0FwR1Esa0NBQWtDLDhDQTJCL0IsZUFBZTsyRkEzQmxCLGtDQUFrQyw2UEMvQi9DLHMzR0FnRkEsZ3FQRG5EYyxlQUFlLDZGQUFFLGtCQUFrQjs7MkZBRXBDLGtDQUFrQztrQkFSOUMsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLDBCQUEwQixjQUd4QixJQUFJLFdBQ1AsQ0FBQyxlQUFlLEVBQUUsa0JBQWtCLENBQUM7OzBCQTZCekMsTUFBTTsyQkFBQyxlQUFlO3NFQTFCRCxXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBMkZ4QixRQUFRO3NCQURQLFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRnJvemVuR2lmRGlyZWN0aXZlIH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFN5bWJvbENvbXBvbmVudCwgU3ltYm9sUmVnaXN0cnksIGFwQXJyb3dMZWZ0MSwgYXBBcnJvd1JpZ2h0MSwgYXBDbG9zZSwgYXBDaGV2cm9uUmlnaHQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lZGlhRGlzcGxheURhdGEge1xuICAgIG1lZGlhSW5mbzogTWVkaWFJbmZvW107XG4gICAgY2xpY2tlZE1lZGlhPzogTWVkaWFJbmZvO1xuICAgIHN1cHBvcnRHaWY6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBlbnVtIEtFWV9DT0RFIHtcbiAgICBSSUdIVF9BUlJPVyA9IDM5LFxuICAgIExFRlRfQVJST1cgPSAzNyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZWRpYUluZm8ge1xuICAgIHVybDogc3RyaW5nO1xuICAgIHR5cGU6ICdQSE9UTycgfCAnVklERU8nO1xuICAgIHRodW1ibmFpbD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc2VsZWN0b3I6ICdhcC1tZWRpYS1kaXNwbGF5LW92ZXJsYXknLFxuICAgIHN0eWxlVXJsczogWycuL21lZGlhLWRpc3BsYXktb3ZlcmxheS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWVkaWEtZGlzcGxheS1vdmVybGF5LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbU3ltYm9sQ29tcG9uZW50LCBGcm96ZW5HaWZEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBNZWRpYURpc3BsYXlPdmVybGF5RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCd2aWRlb1BsYXllcicpIHZpZGVvUGxheWVyOiBFbGVtZW50UmVmPEhUTUxWaWRlb0VsZW1lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICAgc3RhdGljIGNvbmZpZzogTWF0RGlhbG9nQ29uZmlnPE1lZGlhRGlzcGxheURhdGE+ID0ge1xuICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgICAgdG9wOiAnMTBweCcsXG4gICAgICAgICAgICByaWdodDogJzEwcHgnLFxuICAgICAgICAgICAgbGVmdDogJzEwcHgnLFxuICAgICAgICB9LFxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgbWF4V2lkdGg6ICdub25lJyxcbiAgICAgICAgcGFuZWxDbGFzczogJ2Z1bGwtc2NyZWVuLW1vZGFsJyxcbiAgICAgICAgYmFja2Ryb3BDbGFzczogJ2RhcmstYmFja2Ryb3AnLFxuICAgIH07XG5cbiAgICBjdXJyZW50VXJsSW5kZXggPSAxO1xuICAgIG1lZGlhSW5mbzogTWVkaWFJbmZvW10gPSBbXTsgLy8gYWxsIHVybHMgYW5kIHR5cGVzXG4gICAgbWVkaWFUeXBlOiAnUEhPVE8nIHwgJ1ZJREVPJyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBzdXBwb3J0R2lmID0gdHJ1ZTtcbiAgICB0aHVtYm5haWxDb3Zlcjogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgdXJsczogc3RyaW5nW10gPSBbXTsgLy8gYWxsIHVybHNcbiAgICB1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDsgLy8gY3VycmVudCBkaXNwbGF5ZWQgdXJsXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPE1lZGlhRGlzcGxheU92ZXJsYXlEaWFsb2dDb21wb25lbnQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IE1lZGlhRGlzcGxheURhdGEsXG4gICAgICAgIHB1YmxpYyBzeW1ib2xSZWdpc3RyeTogU3ltYm9sUmVnaXN0cnlcbiAgICApIHtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQ2xvc2UsIGFwQ2hldnJvblJpZ2h0LCBhcEFycm93TGVmdDEsIGFwQXJyb3dSaWdodDFdKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc3QgZGF0YSA9IE1vZGFsU2VydmljZS5nZXRNb2RhbCgnbWVkaWEtZGlzcGxheS1vdmVybGF5JykgfHwge307XG4gICAgICAgIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEubWVkaWFJbmZvICYmIHRoaXMuZGF0YS5tZWRpYUluZm8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMubWVkaWFJbmZvID0gdGhpcy5kYXRhLm1lZGlhSW5mbztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuY2xpY2tlZE1lZGlhPy51cmwgJiYgdGhpcy5kYXRhLmNsaWNrZWRNZWRpYS51cmwubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRNZWRpYTogTWVkaWFJbmZvID0gdGhpcy5kYXRhLmNsaWNrZWRNZWRpYTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tZWRpYUluZm8ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWVkaWFJbmZvID0gW2N1cnJlbnRNZWRpYV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5kYXRhLmNsaWNrZWRNZWRpYS51cmw7XG4gICAgICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLmRhdGEuY2xpY2tlZE1lZGlhLnR5cGU7XG4gICAgICAgICAgICAgICAgdGhpcy50aHVtYm5haWxDb3ZlciA9IHRoaXMuZGF0YS5jbGlja2VkTWVkaWEudGh1bWJuYWlsO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNQbGF5aW5nVmlkZW8gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRVcmxJbmRleCA9IHRoaXMubWVkaWFJbmZvLmZpbmRJbmRleChtZWRpYSA9PiBtZWRpYS51cmwgPT09IGN1cnJlbnRNZWRpYS51cmwpICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2xvc2UoKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgb25OZXh0KCRldmVudDogVUlFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50VXJsSW5kZXggPCB0aGlzLm1lZGlhSW5mby5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybEluZGV4ICs9IDE7XG4gICAgICAgICAgICB0aGlzLnVybCA9IHRoaXMubWVkaWFJbmZvW3RoaXMuY3VycmVudFVybEluZGV4IC0gMV0udXJsO1xuICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLm1lZGlhSW5mb1t0aGlzLmN1cnJlbnRVcmxJbmRleCAtIDFdLnR5cGU7XG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbENvdmVyID0gdGhpcy5tZWRpYUluZm9bdGhpcy5jdXJyZW50VXJsSW5kZXggLSAxXS50aHVtYm5haWw7XG4gICAgICAgICAgICB0aGlzLmlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG9uUHJldmlvdXMoJGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRVcmxJbmRleCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybEluZGV4IC09IDE7XG4gICAgICAgICAgICB0aGlzLnVybCA9IHRoaXMubWVkaWFJbmZvW3RoaXMuY3VycmVudFVybEluZGV4IC0gMV0udXJsO1xuICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLm1lZGlhSW5mb1t0aGlzLmN1cnJlbnRVcmxJbmRleCAtIDFdLnR5cGU7XG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbENvdmVyID0gdGhpcy5tZWRpYUluZm9bdGhpcy5jdXJyZW50VXJsSW5kZXggLSAxXS50aHVtYm5haWw7XG4gICAgICAgICAgICB0aGlzLmlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHBsYXkoJGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnZpZGVvUGxheWVyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc1BsYXlpbmdWaWRlbykge1xuICAgICAgICAgICAgICAgIHRoaXMudmlkZW9QbGF5ZXIubmF0aXZlRWxlbWVudC5wYXVzZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZpZGVvUGxheWVyLm5hdGl2ZUVsZW1lbnQucGxheSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc1BsYXlpbmdWaWRlbyA9ICF0aGlzLmlzUGxheWluZ1ZpZGVvO1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwJywgWyckZXZlbnQnXSlcbiAgICBrZXlFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gS0VZX0NPREUuUklHSFRfQVJST1cpIHtcbiAgICAgICAgICAgIHRoaXMub25OZXh0KGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC5rZXlDb2RlID09PSBLRVlfQ09ERS5MRUZUX0FSUk9XKSB7XG4gICAgICAgICAgICB0aGlzLm9uUHJldmlvdXMoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiZnVsbFwiXG4gICAgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtZWRpYS1kaXNwbGF5IGFwLW5ld1wiPlxuICAgICAgICA8aGVhZGVyIGNsYXNzPVwiYXAtbW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJjbG9zZVwiXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbG9zZSgpXCIgLz5cbiAgICAgICAgPC9oZWFkZXI+XG4gICAgICAgIDxzbG90IGNsYXNzPVwiYXAtbW9kYWwtY29udGVudFwiPlxuICAgICAgICAgICAgQGlmIChtZWRpYUluZm8ubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuZXh0LXByZXYtY29udGFpbmVyIGxlZnRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiY3VycmVudFVybEluZGV4IDw9IDFcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25QcmV2aW91cygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbElkPVwiYXJyb3ctbGVmdC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJjdXJyZW50VXJsSW5kZXggPD0gMSA/ICdncmV5LWJsdWUnIDogJ3doaXRlJ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZGlhLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIEBpZiAodXJsICYmIG1lZGlhVHlwZSA9PT0gJ1BIT1RPJykge1xuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBhcEZyb3plbkdpZlxuICAgICAgICAgICAgICAgICAgICAgICAgW2FwRnJvemVuXT1cIiFzdXBwb3J0R2lmXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKHVybCAmJiBtZWRpYVR5cGUgPT09ICdWSURFTycpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZGlhLWNvbnRhaW5lci12aWRlb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZGVvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI3ZpZGVvUGxheWVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlcGljdHVyZWlucGljdHVyZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11dGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbHNMaXN0PVwibm9mdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ3ZpZGVvLScgKyBjdXJyZW50VXJsSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwb3N0ZXJdPVwidGh1bWJuYWlsQ292ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicGxheSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGxheWluZyk9XCJpc1BsYXlpbmdWaWRlbyA9IHRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXVzZSk9XCJpc1BsYXlpbmdWaWRlbyA9IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZW5kZWQpPVwiaXNQbGF5aW5nVmlkZW8gPSBmYWxzZVwiPjwvdmlkZW8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwbGF5LWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBsYXkoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoIWlzUGxheWluZ1ZpZGVvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEsMTAgTDE4LDEzLjc0IDE4LDIyLjI4IDExLDI2IE0xOCwxMy43NCBMMjYsMTggMjYsMTggMTgsMjIuMjhcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAobWVkaWFJbmZvLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmV4dC1wcmV2LWNvbnRhaW5lciByaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJjdXJyZW50VXJsSW5kZXggPj0gbWVkaWFJbmZvLmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5leHQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImNoZXZyb24tcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImN1cnJlbnRVcmxJbmRleCA+PSBtZWRpYUluZm8ubGVuZ3RoID8gJ2dyZXktYmx1ZScgOiAnd2hpdGUnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvc2xvdD5cbiAgICAgICAgQGlmIChtZWRpYUluZm8gJiYgbWVkaWFJbmZvLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIDxmb290ZXIgY2xhc3M9XCJhcC1tb2RhbC1mb290ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5kZXgtY29udGFpbmVyXCI+e3sgY3VycmVudFVybEluZGV4IH19IC8ge3sgbWVkaWFJbmZvLmxlbmd0aCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtZGlzcGxheS1vdmVybGF5LWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbWVkaWEtZGlzcGxheS1vdmVybGF5L3NyYy9tZWRpYS1kaXNwbGF5LW92ZXJsYXktZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9tZWRpYS1kaXNwbGF5LW92ZXJsYXkvc3JjL21lZGlhLWRpc3BsYXktb3ZlcmxheS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBa0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsZUFBZSxFQUFpQyxNQUFNLDBCQUEwQixDQUFDOzs7O0FBUTFGLE1BQU0sQ0FBTixJQUFZLFFBR1g7QUFIRCxXQUFZLFFBQVE7SUFDaEIsc0RBQWdCLENBQUE7SUFDaEIsb0RBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSFcsUUFBUSxLQUFSLFFBQVEsUUFHbkI7QUFnQkQsTUFBTSxPQUFPLGtDQUFrQztJQTBCaEM7SUFDeUI7SUFDekI7SUEzQmUsV0FBVyxDQUEyQztJQUVoRixNQUFNLENBQUMsTUFBTSxHQUFzQztRQUMvQyxRQUFRLEVBQUU7WUFDTixHQUFHLEVBQUUsTUFBTTtZQUNYLEtBQUssRUFBRSxNQUFNO1lBQ2IsSUFBSSxFQUFFLE1BQU07U0FDZjtRQUNELE1BQU0sRUFBRSxNQUFNO1FBQ2QsS0FBSyxFQUFFLE1BQU07UUFD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LEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQzNDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUdELFFBQVEsQ0FBQyxLQUFvQjtRQUN6QixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQzt1R0FwR1Esa0NBQWtDLDhDQTJCL0IsZUFBZTsyRkEzQmxCLGtDQUFrQyw2UEMvQi9DLHMzR0FnRkEsZ3FQRG5EYyxlQUFlLHNIQUFFLGtCQUFrQjs7MkZBRXBDLGtDQUFrQztrQkFSOUMsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLDBCQUEwQixjQUd4QixJQUFJLFdBQ1AsQ0FBQyxlQUFlLEVBQUUsa0JBQWtCLENBQUM7OzBCQTZCekMsTUFBTTsyQkFBQyxlQUFlO3NFQTFCRCxXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBMkZ4QixRQUFRO3NCQURQLFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRnJvemVuR2lmRGlyZWN0aXZlIH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFN5bWJvbENvbXBvbmVudCwgU3ltYm9sUmVnaXN0cnksIGFwQXJyb3dMZWZ0MSwgYXBBcnJvd1JpZ2h0MSwgYXBDbG9zZSwgYXBDaGV2cm9uUmlnaHQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lZGlhRGlzcGxheURhdGEge1xuICAgIG1lZGlhSW5mbzogTWVkaWFJbmZvW107XG4gICAgY2xpY2tlZE1lZGlhPzogTWVkaWFJbmZvO1xuICAgIHN1cHBvcnRHaWY6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBlbnVtIEtFWV9DT0RFIHtcbiAgICBSSUdIVF9BUlJPVyA9IDM5LFxuICAgIExFRlRfQVJST1cgPSAzNyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZWRpYUluZm8ge1xuICAgIHVybDogc3RyaW5nO1xuICAgIHR5cGU6ICdQSE9UTycgfCAnVklERU8nO1xuICAgIHRodW1ibmFpbD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc2VsZWN0b3I6ICdhcC1tZWRpYS1kaXNwbGF5LW92ZXJsYXknLFxuICAgIHN0eWxlVXJsczogWycuL21lZGlhLWRpc3BsYXktb3ZlcmxheS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWVkaWEtZGlzcGxheS1vdmVybGF5LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbU3ltYm9sQ29tcG9uZW50LCBGcm96ZW5HaWZEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBNZWRpYURpc3BsYXlPdmVybGF5RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCd2aWRlb1BsYXllcicpIHZpZGVvUGxheWVyOiBFbGVtZW50UmVmPEhUTUxWaWRlb0VsZW1lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICAgc3RhdGljIGNvbmZpZzogTWF0RGlhbG9nQ29uZmlnPE1lZGlhRGlzcGxheURhdGE+ID0ge1xuICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgICAgdG9wOiAnMTBweCcsXG4gICAgICAgICAgICByaWdodDogJzEwcHgnLFxuICAgICAgICAgICAgbGVmdDogJzEwcHgnLFxuICAgICAgICB9LFxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgbWF4V2lkdGg6ICdub25lJyxcbiAgICAgICAgcGFuZWxDbGFzczogJ2Z1bGwtc2NyZWVuLW1vZGFsJyxcbiAgICAgICAgYmFja2Ryb3BDbGFzczogJ2RhcmstYmFja2Ryb3AnLFxuICAgIH07XG5cbiAgICBjdXJyZW50VXJsSW5kZXggPSAxO1xuICAgIG1lZGlhSW5mbzogTWVkaWFJbmZvW10gPSBbXTsgLy8gYWxsIHVybHMgYW5kIHR5cGVzXG4gICAgbWVkaWFUeXBlOiAnUEhPVE8nIHwgJ1ZJREVPJyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBzdXBwb3J0R2lmID0gdHJ1ZTtcbiAgICB0aHVtYm5haWxDb3Zlcjogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgdXJsczogc3RyaW5nW10gPSBbXTsgLy8gYWxsIHVybHNcbiAgICB1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDsgLy8gY3VycmVudCBkaXNwbGF5ZWQgdXJsXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPE1lZGlhRGlzcGxheU92ZXJsYXlEaWFsb2dDb21wb25lbnQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IE1lZGlhRGlzcGxheURhdGEsXG4gICAgICAgIHB1YmxpYyBzeW1ib2xSZWdpc3RyeTogU3ltYm9sUmVnaXN0cnlcbiAgICApIHtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQ2xvc2UsIGFwQ2hldnJvblJpZ2h0LCBhcEFycm93TGVmdDEsIGFwQXJyb3dSaWdodDFdKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc3QgZGF0YSA9IE1vZGFsU2VydmljZS5nZXRNb2RhbCgnbWVkaWEtZGlzcGxheS1vdmVybGF5JykgfHwge307XG4gICAgICAgIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEubWVkaWFJbmZvICYmIHRoaXMuZGF0YS5tZWRpYUluZm8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMubWVkaWFJbmZvID0gdGhpcy5kYXRhLm1lZGlhSW5mbztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuY2xpY2tlZE1lZGlhPy51cmwgJiYgdGhpcy5kYXRhLmNsaWNrZWRNZWRpYS51cmwubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRNZWRpYTogTWVkaWFJbmZvID0gdGhpcy5kYXRhLmNsaWNrZWRNZWRpYTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tZWRpYUluZm8ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWVkaWFJbmZvID0gW2N1cnJlbnRNZWRpYV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5kYXRhLmNsaWNrZWRNZWRpYS51cmw7XG4gICAgICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLmRhdGEuY2xpY2tlZE1lZGlhLnR5cGU7XG4gICAgICAgICAgICAgICAgdGhpcy50aHVtYm5haWxDb3ZlciA9IHRoaXMuZGF0YS5jbGlja2VkTWVkaWEudGh1bWJuYWlsO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNQbGF5aW5nVmlkZW8gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRVcmxJbmRleCA9IHRoaXMubWVkaWFJbmZvLmZpbmRJbmRleChtZWRpYSA9PiBtZWRpYS51cmwgPT09IGN1cnJlbnRNZWRpYS51cmwpICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2xvc2UoKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgb25OZXh0KCRldmVudDogVUlFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50VXJsSW5kZXggPCB0aGlzLm1lZGlhSW5mby5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybEluZGV4ICs9IDE7XG4gICAgICAgICAgICB0aGlzLnVybCA9IHRoaXMubWVkaWFJbmZvW3RoaXMuY3VycmVudFVybEluZGV4IC0gMV0udXJsO1xuICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLm1lZGlhSW5mb1t0aGlzLmN1cnJlbnRVcmxJbmRleCAtIDFdLnR5cGU7XG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbENvdmVyID0gdGhpcy5tZWRpYUluZm9bdGhpcy5jdXJyZW50VXJsSW5kZXggLSAxXS50aHVtYm5haWw7XG4gICAgICAgICAgICB0aGlzLmlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG9uUHJldmlvdXMoJGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRVcmxJbmRleCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybEluZGV4IC09IDE7XG4gICAgICAgICAgICB0aGlzLnVybCA9IHRoaXMubWVkaWFJbmZvW3RoaXMuY3VycmVudFVybEluZGV4IC0gMV0udXJsO1xuICAgICAgICAgICAgdGhpcy5tZWRpYVR5cGUgPSB0aGlzLm1lZGlhSW5mb1t0aGlzLmN1cnJlbnRVcmxJbmRleCAtIDFdLnR5cGU7XG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbENvdmVyID0gdGhpcy5tZWRpYUluZm9bdGhpcy5jdXJyZW50VXJsSW5kZXggLSAxXS50aHVtYm5haWw7XG4gICAgICAgICAgICB0aGlzLmlzUGxheWluZ1ZpZGVvID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHBsYXkoJGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnZpZGVvUGxheWVyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc1BsYXlpbmdWaWRlbykge1xuICAgICAgICAgICAgICAgIHRoaXMudmlkZW9QbGF5ZXIubmF0aXZlRWxlbWVudC5wYXVzZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZpZGVvUGxheWVyLm5hdGl2ZUVsZW1lbnQucGxheSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc1BsYXlpbmdWaWRlbyA9ICF0aGlzLmlzUGxheWluZ1ZpZGVvO1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwJywgWyckZXZlbnQnXSlcbiAgICBrZXlFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gS0VZX0NPREUuUklHSFRfQVJST1cpIHtcbiAgICAgICAgICAgIHRoaXMub25OZXh0KGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC5rZXlDb2RlID09PSBLRVlfQ09ERS5MRUZUX0FSUk9XKSB7XG4gICAgICAgICAgICB0aGlzLm9uUHJldmlvdXMoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiZnVsbFwiXG4gICAgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtZWRpYS1kaXNwbGF5IGFwLW5ld1wiPlxuICAgICAgICA8aGVhZGVyIGNsYXNzPVwiYXAtbW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJjbG9zZVwiXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbG9zZSgpXCIgLz5cbiAgICAgICAgPC9oZWFkZXI+XG4gICAgICAgIDxzbG90IGNsYXNzPVwiYXAtbW9kYWwtY29udGVudFwiPlxuICAgICAgICAgICAgQGlmIChtZWRpYUluZm8ubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuZXh0LXByZXYtY29udGFpbmVyIGxlZnRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiY3VycmVudFVybEluZGV4IDw9IDFcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25QcmV2aW91cygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbElkPVwiYXJyb3ctbGVmdC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJjdXJyZW50VXJsSW5kZXggPD0gMSA/ICdncmV5LWJsdWUnIDogJ3doaXRlJ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZGlhLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIEBpZiAodXJsICYmIG1lZGlhVHlwZSA9PT0gJ1BIT1RPJykge1xuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBhcEZyb3plbkdpZlxuICAgICAgICAgICAgICAgICAgICAgICAgW2FwRnJvemVuXT1cIiFzdXBwb3J0R2lmXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKHVybCAmJiBtZWRpYVR5cGUgPT09ICdWSURFTycpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZGlhLWNvbnRhaW5lci12aWRlb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHZpZGVvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI3ZpZGVvUGxheWVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlcGljdHVyZWlucGljdHVyZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11dGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbHNMaXN0PVwibm9mdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJ3ZpZGVvLScgKyBjdXJyZW50VXJsSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwb3N0ZXJdPVwidGh1bWJuYWlsQ292ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicGxheSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGxheWluZyk9XCJpc1BsYXlpbmdWaWRlbyA9IHRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXVzZSk9XCJpc1BsYXlpbmdWaWRlbyA9IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZW5kZWQpPVwiaXNQbGF5aW5nVmlkZW8gPSBmYWxzZVwiPjwvdmlkZW8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwbGF5LWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBsYXkoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoIWlzUGxheWluZ1ZpZGVvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTEsMTAgTDE4LDEzLjc0IDE4LDIyLjI4IDExLDI2IE0xOCwxMy43NCBMMjYsMTggMjYsMTggMTgsMjIuMjhcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAobWVkaWFJbmZvLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmV4dC1wcmV2LWNvbnRhaW5lciByaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJjdXJyZW50VXJsSW5kZXggPj0gbWVkaWFJbmZvLmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5leHQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImNoZXZyb24tcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImN1cnJlbnRVcmxJbmRleCA+PSBtZWRpYUluZm8ubGVuZ3RoID8gJ2dyZXktYmx1ZScgOiAnd2hpdGUnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvc2xvdD5cbiAgICAgICAgQGlmIChtZWRpYUluZm8gJiYgbWVkaWFJbmZvLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIDxmb290ZXIgY2xhc3M9XCJhcC1tb2RhbC1mb290ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5kZXgtY29udGFpbmVyXCI+e3sgY3VycmVudFVybEluZGV4IH19IC8ge3sgbWVkaWFJbmZvLmxlbmd0aCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -76,7 +76,7 @@ export class ModalComponent {
76
76
  this.dialogRef.close();
77
77
  }
78
78
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ModalComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
79
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ModalComponent, isStandalone: true, selector: "ap-modal", inputs: { closable: "closable", headerBottomBorderEnabled: "headerBottomBorderEnabled", footerTemplate: "footerTemplate", footerVisible: "footerVisible", headerTemplate: "headerTemplate", headerVisible: "headerVisible", mainTemplate: "mainTemplate", sidePaneTemplate: "sidePaneTemplate", sidePaneStyle: "sidePaneStyle", containerStyle: "containerStyle", headerStyle: "headerStyle", contentStyle: "contentStyle", footerStyle: "footerStyle", defaultLayout: "defaultLayout" }, ngImport: i0, template: "@if (sidePaneTemplate) {\n <div\n [ngStyle]=\"sidePaneStyle\"\n [ngClass]=\"{ pane: defaultLayout }\">\n <ng-template [ngTemplateOutlet]=\"sidePaneTemplate\" />\n </div>\n}\n\n<div\n class=\"modal-wrapper\"\n [ngStyle]=\"containerStyle\"\n [class.default-layout]=\"defaultLayout\">\n @if (closable) {\n <ap-icon-button\n class=\"close-button\"\n ariaLabel=\"Close button\"\n name=\"close-button\"\n color=\"none\"\n type=\"flat\"\n (onClick)=\"close()\">\n <ap-symbol symbolId=\"close\" />\n </ap-icon-button>\n }\n @if (headerTemplate && headerVisible) {\n <div\n [ngStyle]=\"headerStyle\"\n [ngClass]=\"{ header: defaultLayout }\"\n [class.border-bottom]=\"headerBottomBorderEnabled\">\n <ng-template [ngTemplateOutlet]=\"headerTemplate\" />\n </div>\n }\n @if (mainTemplate) {\n <div\n [ngStyle]=\"contentStyle\"\n [class.content]=\"defaultLayout\">\n <ng-template [ngTemplateOutlet]=\"mainTemplate\" />\n </div>\n }\n @if (footerTemplate && footerVisible) {\n <div\n [ngStyle]=\"footerStyle\"\n [ngClass]=\"{ footer: defaultLayout }\">\n <ng-template [ngTemplateOutlet]=\"footerTemplate\" />\n </div>\n }\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{display:flex;flex-direction:row;max-height:90vh}.modal-wrapper{position:relative;width:100%;display:flex;flex-direction:column}.modal-wrapper.default-layout{padding-top:24px;padding-bottom:16px}.modal-wrapper .close-button{margin:-12px;position:absolute;right:24px;top:24px}.modal-wrapper .close-button ap-symbol{height:12px;width:12px}.modal-wrapper .header{padding:0 24px 16px}.modal-wrapper .header ::ng-deep h2{margin-top:0}.modal-wrapper .header.border-bottom{border-bottom:1px solid #eaecef;margin-bottom:16px}.modal-wrapper .content{color:#5d6a82;font-size:16px;padding:0 24px;flex:1;overflow-y:auto;overflow-x:hidden}.modal-wrapper .footer{align-items:center;box-shadow:0 1px #eaecef inset;display:flex;justify-content:flex-end;margin-top:24px;padding:16px 24px 0}.pane{padding:24px}::ng-deep .modal-container{max-width:100vw!important;margin:24px 24px 64px}::ng-deep .modal-container .mat-mdc-dialog-container .mdc-dialog__surface{border-radius:10px;box-shadow:0 25px 50px #0000000a;max-width:100vw;padding:0}::ng-deep .cdk-overlay-dark-backdrop{background:#344563b3}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
79
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ModalComponent, isStandalone: true, selector: "ap-modal", inputs: { closable: "closable", headerBottomBorderEnabled: "headerBottomBorderEnabled", footerTemplate: "footerTemplate", footerVisible: "footerVisible", headerTemplate: "headerTemplate", headerVisible: "headerVisible", mainTemplate: "mainTemplate", sidePaneTemplate: "sidePaneTemplate", sidePaneStyle: "sidePaneStyle", containerStyle: "containerStyle", headerStyle: "headerStyle", contentStyle: "contentStyle", footerStyle: "footerStyle", defaultLayout: "defaultLayout" }, ngImport: i0, template: "@if (sidePaneTemplate) {\n <div\n [ngStyle]=\"sidePaneStyle\"\n [ngClass]=\"{ pane: defaultLayout }\">\n <ng-template [ngTemplateOutlet]=\"sidePaneTemplate\" />\n </div>\n}\n\n<div\n class=\"modal-wrapper\"\n [ngStyle]=\"containerStyle\"\n [class.default-layout]=\"defaultLayout\">\n @if (closable) {\n <ap-icon-button\n class=\"close-button\"\n ariaLabel=\"Close button\"\n name=\"close-button\"\n color=\"none\"\n type=\"flat\"\n (onClick)=\"close()\">\n <ap-symbol symbolId=\"close\" />\n </ap-icon-button>\n }\n @if (headerTemplate && headerVisible) {\n <div\n [ngStyle]=\"headerStyle\"\n [ngClass]=\"{ header: defaultLayout }\"\n [class.border-bottom]=\"headerBottomBorderEnabled\">\n <ng-template [ngTemplateOutlet]=\"headerTemplate\" />\n </div>\n }\n @if (mainTemplate) {\n <div\n [ngStyle]=\"contentStyle\"\n [class.content]=\"defaultLayout\">\n <ng-template [ngTemplateOutlet]=\"mainTemplate\" />\n </div>\n }\n @if (footerTemplate && footerVisible) {\n <div\n [ngStyle]=\"footerStyle\"\n [ngClass]=\"{ footer: defaultLayout }\">\n <ng-template [ngTemplateOutlet]=\"footerTemplate\" />\n </div>\n }\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{display:flex;flex-direction:row;max-height:90vh}.modal-wrapper{position:relative;width:100%;display:flex;flex-direction:column}.modal-wrapper.default-layout{padding-top:24px;padding-bottom:16px}.modal-wrapper .close-button{margin:-12px;position:absolute;right:24px;top:24px}.modal-wrapper .close-button ap-symbol{height:12px;width:12px}.modal-wrapper .header{padding:0 24px 16px}.modal-wrapper .header ::ng-deep h2{margin-top:0}.modal-wrapper .header.border-bottom{border-bottom:1px solid #eaecef;margin-bottom:16px}.modal-wrapper .content{color:#5d6a82;font-size:16px;padding:0 24px;flex:1;overflow-y:auto;overflow-x:hidden}.modal-wrapper .footer{align-items:center;box-shadow:0 1px #eaecef inset;display:flex;justify-content:flex-end;margin-top:24px;padding:16px 24px 0}.pane{padding:24px}::ng-deep .modal-container{max-width:100vw!important;margin:24px 24px 64px}::ng-deep .modal-container .mat-mdc-dialog-container .mdc-dialog__surface{border-radius:10px;box-shadow:0 25px 50px #0000000a;max-width:100vw;padding:0}::ng-deep .cdk-overlay-dark-backdrop{background:#344563b3}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
80
  }
81
81
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ModalComponent, decorators: [{
82
82
  type: Component,
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
113
113
  }], defaultLayout: [{
114
114
  type: Input
115
115
  }] } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL21vZGFsL3NyYy9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbW9kYWwvc3JjL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFlLE1BQU0sZUFBZSxDQUFDOzs7O0FBcUJ2RixNQUFNLE9BQU8sY0FBYztJQUlaO0lBQ0E7SUFKWCxNQUFNLENBQVUsV0FBVyxHQUFHLGlCQUFpQixDQUFDO0lBRWhELFlBQ1csU0FBMkMsRUFDM0MsY0FBOEI7UUFEOUIsY0FBUyxHQUFULFNBQVMsQ0FBa0M7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRXJDLFNBQVMsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRVEsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQix5QkFBeUIsR0FBRyxLQUFLLENBQUM7SUFDbEMsY0FBYyxHQUFpQyxTQUFTLENBQUM7SUFDekQsYUFBYSxHQUFHLElBQUksQ0FBQztJQUNyQixjQUFjLEdBQWlDLFNBQVMsQ0FBQztJQUN6RCxhQUFhLEdBQUcs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O0lBQzNCLENBQUM7dUdBckZRLGNBQWM7MkZBQWQsY0FBYyw4aEJDMUIzQiwrNENBOENBLDhoTkR2QmMsZUFBZSw2RkFBRSxPQUFPLDJFQUFFLE9BQU8sb0ZBQW1CLGdCQUFnQixvSkFBRSxtQkFBbUI7OzJGQUcxRixjQUFjO2tCQVIxQixTQUFTO3NDQUNXLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsVUFBVSxjQUVSLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQzs4R0FjM0YsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFJTixZQUFZO3NCQUhYLEtBQUs7dUJBQUM7d0JBQ0gsUUFBUSxFQUFFLElBQUk7cUJBQ2pCO2dCQUVRLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2ljb24tYnV0dG9uJztcbmltcG9ydCB7IGFwQ2xvc2UsIFN5bWJvbENvbXBvbmVudCwgU3ltYm9sUmVnaXN0cnkgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgTmdDbGFzcywgTmdTdHlsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnPFQgPSB1bmtub3duPiBleHRlbmRzIE1vZGFsQ29uZmlnQmFzZTxUPiB7XG4gICAgY2xvc2FibGU/OiBib29sZWFuO1xuICAgIGhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnQmFzZTxUPiB7XG4gICAgYmFja2Ryb3BDbG9zZUVuYWJsZT86IGJvb2xlYW47XG4gICAgbWF0RGlhbG9nQ29uZmlnPzogTWF0RGlhbG9nQ29uZmlnPFQ+O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ2FwLW1vZGFsJyxcbiAgICB0ZW1wbGF0ZVVybDogJ21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtTeW1ib2xDb21wb25lbnQsIE5nU3R5bGUsIE5nQ2xhc3MsIEJ1dHRvbkNvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldCwgSWNvbkJ1dHRvbkNvbXBvbmVudF0sXG4gICAgc3R5bGVVcmxzOiBbJ21vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgUEFORUxfQ0xBU1MgPSAnbW9kYWwtY29udGFpbmVyJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tcG9uZW50VHlwZTxhbnk+PixcbiAgICAgICAgcHVibGljIHN5bWJvbFJlZ2lzdHJ5OiBTeW1ib2xSZWdpc3RyeVxuICAgICkge1xuICAgICAgICBkaWFsb2dSZWYuZGlzYWJsZUNsb3NlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQ2xvc2VdKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBjbG9zYWJsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBmb290ZXJWaXNpYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBoZWFkZXJWaXNpYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoe1xuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuICAgIG1haW5UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgc2lkZVBhbmVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBzaWRlUGFuZVN0eWxlOiB7IFthcmc6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkID0ge307XG4gICAgQElucHV0KCkgY29udGFpbmVyU3R5bGU6IHsgW2FyZzogc3RyaW5nXTogc3RyaW5nIH0gfCB1bmRlZmluZWQgPSB7fTtcbiAgICBASW5wdXQoKSBoZWFkZXJTdHlsZTogeyBbYXJnOiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZCA9IHt9O1xuICAgIEBJbnB1dCgpIGNvbnRlbnRTdHlsZTogeyBbYXJnOiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZCA9IHt9O1xuICAgIEBJbnB1dCgpIGZvb3RlclN0eWxlOiB7IFthcmc6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkID0ge307XG4gICAgQElucHV0KCkgZGVmYXVsdExheW91dCA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBVc2UgaXQgdG8gb3BlbiBhIG1vZGFsIGNvbnRhaW5pbmcgdGhlIHtAbGluayBjb21wb25lbnRUeXBlfSBjb21wb25lbnQsIHdpdGggdGhlIHJpZ2h0IGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgc3RhdGljIG9wZW5XaXRoQ29tcG9uZW50PFQsIFk+KFxuICAgICAgICBtYXREaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgY29uZmlnOiBNb2RhbENvbmZpZ0Jhc2U8WT4gfCB1bmRlZmluZWQsXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGU8VD5cbiAgICApOiBNYXREaWFsb2dSZWY8VD4ge1xuICAgICAgICBsZXQgbWF0RGlhbG9nQ29uZmlnOiBNYXREaWFsb2dDb25maWc8WT4gfCB1bmRlZmluZWQ7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICAgIG1hdERpYWxvZ0NvbmZpZyA9IGNvbmZpZy5tYXREaWFsb2dDb25maWc7XG4gICAgICAgICAgICBpZiAobWF0RGlhbG9nQ29uZmlnICYmIGNvbmZpZy5tYXREaWFsb2dDb25maWcpIHtcbiAgICAgICAgICAgICAgICBtYXREaWFsb2dDb25maWcucGFuZWxDbGFzcyA9IEFycmF5LmlzQXJyYXkoY29uZmlnLm1hdERpYWxvZ0NvbmZpZy5wYW5lbENsYXNzKVxuICAgICAgICAgICAgICAgICAgICA/IFsuLi5jb25maWcubWF0RGlhbG9nQ29uZmlnLnBhbmVsQ2xhc3MsIE1vZGFsQ29tcG9uZW50LlBBTkVMX0NMQVNTXSAvLyBpbiBjYXNlIHdoZXJlIHRoZSBwYW5lbENsYXNzIGlzIGFuIGFycmF5XG4gICAgICAgICAgICAgICAgICAgIDogW2NvbmZpZy5tYXREaWFsb2dDb25maWcucGFuZWxDbGFzcyA/PyAnJywgTW9kYWxDb21wb25lbnQuUEFORUxfQ0xBU1NdOyAvLyBpbiB0aGUgb3RoZXIgY2FzZSwgaXQncyBhIFN0cmluZ1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYXREaWFsb2dDb25maWcgPSB7IHBhbmVsQ2xhc3M6IE1vZGFsQ29tcG9uZW50LlBBTkVMX0NMQVNTIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtYXREaWFsb2dDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgcGFuZWxDbGFzczogTW9kYWxDb21wb25lbnQuUEFORUxfQ0xBU1MsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIG1hdERpYWxvZ0NvbmZpZy5hdXRvRm9jdXMgPSBmYWxzZTsgLy8gUHJldmVudCBmaXJzdCBidXR0b24gdG8gYmUgZm9jdXNlZFxuXG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IG1hdERpYWxvZy5vcGVuKGNvbXBvbmVudFR5cGUsIG1hdERpYWxvZ0NvbmZpZyk7XG4gICAgICAgIGlmIChjb25maWc/LmJhY2tkcm9wQ2xvc2VFbmFibGUgPT09IHRydWUpIHtcbiAgICAgICAgICAgIGRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGlhbG9nUmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVzZSBpdCB0byBvcGVuIGEgbW9kYWwgY29udGFpbmluZyB0aGUgcHJvdmlkZWQgdGVtcGxhdGVzLCB3aXRoIHRoZSByaWdodCBjb25maWd1cmF0aW9uLlxuICAgICAqL1xuICAgIHN0YXRpYyBvcGVuV2l0aFRlbXBsYXRlczxUPihcbiAgICAgICAgbWF0RGlhbG9nOiBNYXREaWFsb2csXG4gICAgICAgIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkLFxuICAgICAgICBtYWluVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgICAgIGZvb3RlclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCxcbiAgICAgICAgY29uZmlnPzogTW9kYWxDb25maWc8VD4sXG4gICAgICAgIHNpZGVQYW5lVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkXG4gICAgKTogTWF0RGlhbG9nUmVmPE1vZGFsQ29tcG9uZW50PiB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IE1vZGFsQ29tcG9uZW50Lm9wZW5XaXRoQ29tcG9uZW50KG1hdERpYWxvZywgY29uZmlnLCBNb2RhbENvbXBvbmVudCk7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jbG9zYWJsZSA9IGNvbmZpZyAmJiBjb25maWcuY2xvc2FibGUgPyBjb25maWcuY2xvc2FibGUgOiBmYWxzZTtcbiAgICAgICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgPVxuICAgICAgICAgICAgY29uZmlnICYmIGNvbmZpZy5oZWFkZXJCb3R0b21Cb3JkZXJFbmFibGVkID8gY29uZmlnLmhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgOiBmYWxzZTtcbiAgICAgICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmhlYWRlclRlbXBsYXRlID0gaGVhZGVyVGVtcGxhdGU7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5tYWluVGVtcGxhdGUgPSBtYWluVGVtcGxhdGU7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5mb290ZXJUZW1wbGF0ZSA9IGZvb3RlclRlbXBsYXRlO1xuICAgICAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2Uuc2lkZVBhbmVUZW1wbGF0ZSA9IHNpZGVQYW5lVGVtcGxhdGU7XG4gICAgICAgIHJldHVybiBkaWFsb2dSZWY7XG4gICAgfVxuXG4gICAgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxufVxuIiwiQGlmIChzaWRlUGFuZVRlbXBsYXRlKSB7XG4gICAgPGRpdlxuICAgICAgICBbbmdTdHlsZV09XCJzaWRlUGFuZVN0eWxlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBwYW5lOiBkZWZhdWx0TGF5b3V0IH1cIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNpZGVQYW5lVGVtcGxhdGVcIiAvPlxuICAgIDwvZGl2PlxufVxuXG48ZGl2XG4gICAgY2xhc3M9XCJtb2RhbC13cmFwcGVyXCJcbiAgICBbbmdTdHlsZV09XCJjb250YWluZXJTdHlsZVwiXG4gICAgW2NsYXNzLmRlZmF1bHQtbGF5b3V0XT1cImRlZmF1bHRMYXlvdXRcIj5cbiAgICBAaWYgKGNsb3NhYmxlKSB7XG4gICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJjbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgYXJpYUxhYmVsPVwiQ2xvc2UgYnV0dG9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJjbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgY29sb3I9XCJub25lXCJcbiAgICAgICAgICAgIHR5cGU9XCJmbGF0XCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgICAgICAgIDxhcC1zeW1ib2wgc3ltYm9sSWQ9XCJjbG9zZVwiIC8+XG4gICAgICAgIDwvYXAtaWNvbi1idXR0b24+XG4gICAgfVxuICAgIEBpZiAoaGVhZGVyVGVtcGxhdGUgJiYgaGVhZGVyVmlzaWJsZSkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBbbmdTdHlsZV09XCJoZWFkZXJTdHlsZVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7IGhlYWRlcjogZGVmYXVsdExheW91dCB9XCJcbiAgICAgICAgICAgIFtjbGFzcy5ib3JkZXItYm90dG9tXT1cImhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWRcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICBAaWYgKG1haW5UZW1wbGF0ZSkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBbbmdTdHlsZV09XCJjb250ZW50U3R5bGVcIlxuICAgICAgICAgICAgW2NsYXNzLmNvbnRlbnRdPVwiZGVmYXVsdExheW91dFwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1haW5UZW1wbGF0ZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICBAaWYgKGZvb3RlclRlbXBsYXRlICYmIGZvb3RlclZpc2libGUpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiZm9vdGVyU3R5bGVcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBmb290ZXI6IGRlZmF1bHRMYXlvdXQgfVwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL21vZGFsL3NyYy9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbW9kYWwvc3JjL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFlLE1BQU0sZUFBZSxDQUFDOzs7O0FBcUJ2RixNQUFNLE9BQU8sY0FBYztJQUlaO0lBQ0E7SUFKWCxNQUFNLENBQVUsV0FBVyxHQUFHLGlCQUFpQixDQUFDO0lBRWhELFlBQ1csU0FBMkMsRUFDM0MsY0FBOEI7UUFEOUIsY0FBUyxHQUFULFNBQVMsQ0FBa0M7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRXJDLFNBQVMsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRVEsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQix5QkFBeUIsR0FBRyxLQUFLLENBQUM7SUFDbEMsY0FBYyxHQUFpQyxTQUFTLENBQUM7SUFDekQsYUFBYSxHQUFHLElBQUksQ0FBQztJQUNyQixjQUFjLEdBQWlDLFNBQVMsQ0FBQztJQUN6RCxhQUFhLEdBQUcs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O0lBQzNCLENBQUM7dUdBckZRLGNBQWM7MkZBQWQsY0FBYyw4aEJDMUIzQiwrNENBOENBLDhoTkR2QmMsZUFBZSxzSEFBRSxPQUFPLDJFQUFFLE9BQU8sb0ZBQW1CLGdCQUFnQixvSkFBRSxtQkFBbUI7OzJGQUcxRixjQUFjO2tCQVIxQixTQUFTO3NDQUNXLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsVUFBVSxjQUVSLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQzs4R0FjM0YsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFJTixZQUFZO3NCQUhYLEtBQUs7dUJBQUM7d0JBQ0gsUUFBUSxFQUFFLElBQUk7cUJBQ2pCO2dCQUVRLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2ljb24tYnV0dG9uJztcbmltcG9ydCB7IGFwQ2xvc2UsIFN5bWJvbENvbXBvbmVudCwgU3ltYm9sUmVnaXN0cnkgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgTmdDbGFzcywgTmdTdHlsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nQ29uZmlnLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnPFQgPSB1bmtub3duPiBleHRlbmRzIE1vZGFsQ29uZmlnQmFzZTxUPiB7XG4gICAgY2xvc2FibGU/OiBib29sZWFuO1xuICAgIGhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnQmFzZTxUPiB7XG4gICAgYmFja2Ryb3BDbG9zZUVuYWJsZT86IGJvb2xlYW47XG4gICAgbWF0RGlhbG9nQ29uZmlnPzogTWF0RGlhbG9nQ29uZmlnPFQ+O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ2FwLW1vZGFsJyxcbiAgICB0ZW1wbGF0ZVVybDogJ21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtTeW1ib2xDb21wb25lbnQsIE5nU3R5bGUsIE5nQ2xhc3MsIEJ1dHRvbkNvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldCwgSWNvbkJ1dHRvbkNvbXBvbmVudF0sXG4gICAgc3R5bGVVcmxzOiBbJ21vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgUEFORUxfQ0xBU1MgPSAnbW9kYWwtY29udGFpbmVyJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tcG9uZW50VHlwZTxhbnk+PixcbiAgICAgICAgcHVibGljIHN5bWJvbFJlZ2lzdHJ5OiBTeW1ib2xSZWdpc3RyeVxuICAgICkge1xuICAgICAgICBkaWFsb2dSZWYuZGlzYWJsZUNsb3NlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQ2xvc2VdKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBjbG9zYWJsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBmb290ZXJWaXNpYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBoZWFkZXJWaXNpYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoe1xuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuICAgIG1haW5UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgc2lkZVBhbmVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBzaWRlUGFuZVN0eWxlOiB7IFthcmc6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkID0ge307XG4gICAgQElucHV0KCkgY29udGFpbmVyU3R5bGU6IHsgW2FyZzogc3RyaW5nXTogc3RyaW5nIH0gfCB1bmRlZmluZWQgPSB7fTtcbiAgICBASW5wdXQoKSBoZWFkZXJTdHlsZTogeyBbYXJnOiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZCA9IHt9O1xuICAgIEBJbnB1dCgpIGNvbnRlbnRTdHlsZTogeyBbYXJnOiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZCA9IHt9O1xuICAgIEBJbnB1dCgpIGZvb3RlclN0eWxlOiB7IFthcmc6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkID0ge307XG4gICAgQElucHV0KCkgZGVmYXVsdExheW91dCA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBVc2UgaXQgdG8gb3BlbiBhIG1vZGFsIGNvbnRhaW5pbmcgdGhlIHtAbGluayBjb21wb25lbnRUeXBlfSBjb21wb25lbnQsIHdpdGggdGhlIHJpZ2h0IGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgc3RhdGljIG9wZW5XaXRoQ29tcG9uZW50PFQsIFk+KFxuICAgICAgICBtYXREaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgY29uZmlnOiBNb2RhbENvbmZpZ0Jhc2U8WT4gfCB1bmRlZmluZWQsXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGU8VD5cbiAgICApOiBNYXREaWFsb2dSZWY8VD4ge1xuICAgICAgICBsZXQgbWF0RGlhbG9nQ29uZmlnOiBNYXREaWFsb2dDb25maWc8WT4gfCB1bmRlZmluZWQ7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICAgIG1hdERpYWxvZ0NvbmZpZyA9IGNvbmZpZy5tYXREaWFsb2dDb25maWc7XG4gICAgICAgICAgICBpZiAobWF0RGlhbG9nQ29uZmlnICYmIGNvbmZpZy5tYXREaWFsb2dDb25maWcpIHtcbiAgICAgICAgICAgICAgICBtYXREaWFsb2dDb25maWcucGFuZWxDbGFzcyA9IEFycmF5LmlzQXJyYXkoY29uZmlnLm1hdERpYWxvZ0NvbmZpZy5wYW5lbENsYXNzKVxuICAgICAgICAgICAgICAgICAgICA/IFsuLi5jb25maWcubWF0RGlhbG9nQ29uZmlnLnBhbmVsQ2xhc3MsIE1vZGFsQ29tcG9uZW50LlBBTkVMX0NMQVNTXSAvLyBpbiBjYXNlIHdoZXJlIHRoZSBwYW5lbENsYXNzIGlzIGFuIGFycmF5XG4gICAgICAgICAgICAgICAgICAgIDogW2NvbmZpZy5tYXREaWFsb2dDb25maWcucGFuZWxDbGFzcyA/PyAnJywgTW9kYWxDb21wb25lbnQuUEFORUxfQ0xBU1NdOyAvLyBpbiB0aGUgb3RoZXIgY2FzZSwgaXQncyBhIFN0cmluZ1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYXREaWFsb2dDb25maWcgPSB7IHBhbmVsQ2xhc3M6IE1vZGFsQ29tcG9uZW50LlBBTkVMX0NMQVNTIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtYXREaWFsb2dDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgcGFuZWxDbGFzczogTW9kYWxDb21wb25lbnQuUEFORUxfQ0xBU1MsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIG1hdERpYWxvZ0NvbmZpZy5hdXRvRm9jdXMgPSBmYWxzZTsgLy8gUHJldmVudCBmaXJzdCBidXR0b24gdG8gYmUgZm9jdXNlZFxuXG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IG1hdERpYWxvZy5vcGVuKGNvbXBvbmVudFR5cGUsIG1hdERpYWxvZ0NvbmZpZyk7XG4gICAgICAgIGlmIChjb25maWc/LmJhY2tkcm9wQ2xvc2VFbmFibGUgPT09IHRydWUpIHtcbiAgICAgICAgICAgIGRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGlhbG9nUmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVzZSBpdCB0byBvcGVuIGEgbW9kYWwgY29udGFpbmluZyB0aGUgcHJvdmlkZWQgdGVtcGxhdGVzLCB3aXRoIHRoZSByaWdodCBjb25maWd1cmF0aW9uLlxuICAgICAqL1xuICAgIHN0YXRpYyBvcGVuV2l0aFRlbXBsYXRlczxUPihcbiAgICAgICAgbWF0RGlhbG9nOiBNYXREaWFsb2csXG4gICAgICAgIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkLFxuICAgICAgICBtYWluVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgICAgIGZvb3RlclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCxcbiAgICAgICAgY29uZmlnPzogTW9kYWxDb25maWc8VD4sXG4gICAgICAgIHNpZGVQYW5lVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkXG4gICAgKTogTWF0RGlhbG9nUmVmPE1vZGFsQ29tcG9uZW50PiB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IE1vZGFsQ29tcG9uZW50Lm9wZW5XaXRoQ29tcG9uZW50KG1hdERpYWxvZywgY29uZmlnLCBNb2RhbENvbXBvbmVudCk7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jbG9zYWJsZSA9IGNvbmZpZyAmJiBjb25maWcuY2xvc2FibGUgPyBjb25maWcuY2xvc2FibGUgOiBmYWxzZTtcbiAgICAgICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgPVxuICAgICAgICAgICAgY29uZmlnICYmIGNvbmZpZy5oZWFkZXJCb3R0b21Cb3JkZXJFbmFibGVkID8gY29uZmlnLmhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWQgOiBmYWxzZTtcbiAgICAgICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmhlYWRlclRlbXBsYXRlID0gaGVhZGVyVGVtcGxhdGU7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5tYWluVGVtcGxhdGUgPSBtYWluVGVtcGxhdGU7XG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5mb290ZXJUZW1wbGF0ZSA9IGZvb3RlclRlbXBsYXRlO1xuICAgICAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2Uuc2lkZVBhbmVUZW1wbGF0ZSA9IHNpZGVQYW5lVGVtcGxhdGU7XG4gICAgICAgIHJldHVybiBkaWFsb2dSZWY7XG4gICAgfVxuXG4gICAgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxufVxuIiwiQGlmIChzaWRlUGFuZVRlbXBsYXRlKSB7XG4gICAgPGRpdlxuICAgICAgICBbbmdTdHlsZV09XCJzaWRlUGFuZVN0eWxlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBwYW5lOiBkZWZhdWx0TGF5b3V0IH1cIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNpZGVQYW5lVGVtcGxhdGVcIiAvPlxuICAgIDwvZGl2PlxufVxuXG48ZGl2XG4gICAgY2xhc3M9XCJtb2RhbC13cmFwcGVyXCJcbiAgICBbbmdTdHlsZV09XCJjb250YWluZXJTdHlsZVwiXG4gICAgW2NsYXNzLmRlZmF1bHQtbGF5b3V0XT1cImRlZmF1bHRMYXlvdXRcIj5cbiAgICBAaWYgKGNsb3NhYmxlKSB7XG4gICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJjbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgYXJpYUxhYmVsPVwiQ2xvc2UgYnV0dG9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJjbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgY29sb3I9XCJub25lXCJcbiAgICAgICAgICAgIHR5cGU9XCJmbGF0XCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgICAgICAgIDxhcC1zeW1ib2wgc3ltYm9sSWQ9XCJjbG9zZVwiIC8+XG4gICAgICAgIDwvYXAtaWNvbi1idXR0b24+XG4gICAgfVxuICAgIEBpZiAoaGVhZGVyVGVtcGxhdGUgJiYgaGVhZGVyVmlzaWJsZSkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBbbmdTdHlsZV09XCJoZWFkZXJTdHlsZVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7IGhlYWRlcjogZGVmYXVsdExheW91dCB9XCJcbiAgICAgICAgICAgIFtjbGFzcy5ib3JkZXItYm90dG9tXT1cImhlYWRlckJvdHRvbUJvcmRlckVuYWJsZWRcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICBAaWYgKG1haW5UZW1wbGF0ZSkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBbbmdTdHlsZV09XCJjb250ZW50U3R5bGVcIlxuICAgICAgICAgICAgW2NsYXNzLmNvbnRlbnRdPVwiZGVmYXVsdExheW91dFwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1haW5UZW1wbGF0ZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICBAaWYgKGZvb3RlclRlbXBsYXRlICYmIGZvb3RlclZpc2libGUpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiZm9vdGVyU3R5bGVcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBmb290ZXI6IGRlZmF1bHRMYXlvdXQgfVwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
@@ -203,7 +203,7 @@ export class NeoDatepickerComponent {
203
203
  }
204
204
  }
205
205
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NeoDatepickerComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
206
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
206
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
207
207
  }
208
208
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: NeoDatepickerComponent, decorators: [{
209
209
  type: Component,
@@ -238,4 +238,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
238
238
  }], previousMonth: [{
239
239
  type: Output
240
240
  }] } });
241
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVvLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25lby1kYXRlcGlja2VyL3NyYy9uZW8tZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbmVvLWRhdGVwaWNrZXIvc3JjL25lby1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFrQixpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQWUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxVQUFVLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFB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QztRQUN2RyxDQUFDO0lBQ0wsQ0FBQzt1R0FqTlEsc0JBQXNCOzJGQUF0QixzQkFBc0IsNFVBYnBCLENBQUMsZUFBZSxDQUFDLDBCQzNCaEMseStEQWtEQSxvL1BEckJRLGVBQWUsd0ZBQ2YsYUFBYSw2Q0FFYixTQUFTLDhDQUNULGdCQUFnQiwrSUFDaEIsZUFBZSwrQ0FDZixTQUFTLDhDQUNULG1CQUFtQjs7MkZBSWQsc0JBQXNCO2tCQWxCbEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGVBQWUsQ0FBQyxXQUNuQjt3QkFDTCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixTQUFTO3dCQUNULG1CQUFtQjtxQkFDdEIsY0FDVyxJQUFJO21GQU1QLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUlPLE9BQU87c0JBQW5CLEtBQUs7Z0JBU08sT0FBTztzQkFBbkIsS0FBSztnQkFXTyxJQUFJO3NCQUFoQixLQUFLO2dCQVlPLGFBQWE7c0JBQXpCLEtBQUs7Z0JBaUJHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9pY29uLWJ1dHRvbic7XG5pbXBvcnQgeyBTeW1ib2xDb21wb25lbnQsIFN5bWJvbFJlZ2lzdHJ5LCBhcEFycm93QnV0dG9uTGVmdCwgYXBBcnJvd0J1dHRvblJpZ2h0IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgU2xpY2VQaXBlLCBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZGUnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZW4nO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZXMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZnInO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvcHQnO1xuaW1wb3J0IGxvY2FsZURhdGEgZnJvbSAnZGF5anMvcGx1Z2luL2xvY2FsZURhdGEnO1xuaW1wb3J0IHsgaW5qZWN0RGVzdHJveSB9IGZyb20gJ25neHRlbnNpb24vaW5qZWN0LWRlc3Ryb3knO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYXlEZXRhaWwgfSBmcm9tICcuL2RheS1kZXRhaWwubW9kZWwnO1xuaW1wb3J0IHsgRGF5RGlzYWJsZWRQaXBlIH0gZnJvbSAnLi9kYXktZGlzYWJsZWQucGlwZSc7XG5cbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZScgfCAnbXVsdGlwbGUnO1xuZXhwb3J0IHR5cGUgTmVvRGF0ZVBpY2tlclN0YXJ0c09uID0gJ21vbmRheScgfCAnc3VuZGF5JztcbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJMb2NhbGUgPSAnZW4nIHwgJ2VzJyB8ICdmcicgfCAncHQnIHwgJ2RlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1uZW8tZGF0ZS1waWNrZXInLFxuICAgIHN0eWxlVXJsczogWyduZW8tZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnbmVvLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0RheURpc2FibGVkUGlwZV0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBTeW1ib2xDb21wb25lbnQsXG4gICAgICAgIFRpdGxlQ2FzZVBpcGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgU2xpY2VQaXBlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBEYXlEaXNhYmxlZFBpcGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgSWNvbkJ1dHRvbkNvbXBvbmVudCxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE5lb0RhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHJlYWRvbmx5IE9ORV9EQVk6IG51bWJlciA9IDYwICogNjAgKiAyNCAqIDEwMDA7XG4gICAgcmVhZG9ubHkgVE9EQVlfVElNRVNUQU1QOiBudW1iZXIgPSBEYXRlLm5vdygpIC0gKERhdGUubm93KCkgJSB0aGlzLk9ORV9EQVkpICsgbmV3IERhdGUoKS5nZXRUaW1lem9uZU9mZnNldCgpICogMTAwMCAqIDYwO1xuXG4gICAgQElucHV0KCkgZGF5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHsgZGF5OiBEYXlEZXRhaWwgfT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgbG9jYWxlOiBOZW9EYXRlUGlja2VyTG9jYWxlID0gJ2VuJztcblxuICAgIHByaXZhdGUgX21heERhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgc2V0IG1heERhdGUobWF4RGF0ZTogZGF5anMuRGF5anMpIHtcbiAgICAgICAgdGhpcy5fbWF4RGF0ZSA9IG1heERhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZVRpbWVzdGFtcCA9IG1heERhdGUudG9EYXRlKCkuZ2V0VGltZSgpO1xuICAgIH1cbiAgICBnZXQgbWF4RGF0ZSgpOiBkYXlqcy5EYXlqcyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhEYXRlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX21pbkRhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIHNldCBtaW5EYXRlKG1pbkRhdGU6IGRheWpzLkRheWpzKSB7XG4gICAgICAgIHRoaXMuX21pbkRhdGUgPSBtaW5EYXRlO1xuICAgICAgICB0aGlzLm1pbkRhdGVUaW1lc3RhbXAgPSBtaW5EYXRlLnRvRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB9XG4gICAgZ2V0IG1pbkRhdGUoKTogZGF5anMuRGF5anMgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcbiAgICB9XG5cbiAgICBwcmV2aW91c01vbnRoQXZhaWxhYmxlOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX21vZGU6IE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZSc7XG4gICAgQElucHV0KCkgc2V0IG1vZGUobW9kZTogTmVvRGF0ZVBpY2tlck1vZGUpIHtcbiAgICAgICAgdGhpcy5fbW9kZSA9IG1vZGU7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IHRoaXMuX3NlbGVjdGVkRGF0ZXMuc2xpY2UoMCwgMSk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCkuc2xpY2UoMCwgMSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBtb2RlKCk6IE5lb0RhdGVQaWNrZXJNb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWREYXRlczogZGF5anMuRGF5anNbXSA9IFtdO1xuICAgIEBJbnB1dCgpIHNldCBzZWxlY3RlZERhdGVzKGRhdGVzOiBkYXlqcy5EYXlqc1tdKSB7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgZGF0ZXMgPSBkYXRlcy5zbGljZSgwLCAxKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoKTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IGRhdGVzO1xuICAgICAgICBpZiAodGhpcy5fc2VsZWN0ZWREYXRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkRGF0ZXMuZm9yRWFjaChkYXkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmFkZChkYXkudG9EYXRlKCkuZ2V0VGltZSgpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNlbGVjdGVkRGF0ZXMoKTogZGF5anMuRGF5anNbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZERhdGVzO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHN0YXJ0c09uOiBOZW9EYXRlUGlja2VyU3RhcnRzT24gPSAnbW9uZGF5JztcblxuICAgIEBPdXRwdXQoKSBkYXRlc1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8ZGF5anMuRGF5anNbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGRheWpzLkRheWpzW10+KCk7XG4gICAgQE91dHB1dCgpIG5leHRNb250aDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSBwcmV2aW91c01vbnRoOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBjdXJyZW50WWVhciE6IG51bWJlcjtcbiAgICBjdXJyZW50TW9udGghOiBudW1iZXI7XG4gICAgY3VycmVudE1vbnRoRGF0ZXMkOiBCZWhhdmlvclN1YmplY3Q8RGF5RGV0YWlsW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXlEZXRhaWxbXT4oW10pO1xuICAgIG1pbkRhdGVUaW1lc3RhbXA6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBtYXhEYXRlVGltZXN0YW1wOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbW9udGhzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHNlbGVjdGVkRGF5c1RpbWVzdGFtcDogU2V0PG51bWJlcj4gPSBuZXcgU2V0KCk7XG4gICAgd2Vla0RheXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBkYXlEaXNhYmxlZFBpcGU6IERheURpc2FibGVkUGlwZSA9IGluamVjdChEYXlEaXNhYmxlZFBpcGUpO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IGluamVjdERlc3Ryb3koKTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzeW1ib2xSZWdpc3RyeTogU3ltYm9sUmVnaXN0cnkpIHtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQXJyb3dCdXR0b25MZWZ0LCBhcEFycm93QnV0dG9uUmlnaHRdKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgZGF5anMuZXh0ZW5kKGxvY2FsZURhdGEpO1xuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50WWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGggPSBkYXRlLmdldE1vbnRoKCk7XG4gICAgICAgIGlmICh0aGlzLmxvY2FsZSkge1xuICAgICAgICAgICAgZGF5anMubG9jYWxlKHRoaXMubG9jYWxlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1vbnRocyA9IGRheWpzLm1vbnRocygpO1xuICAgICAgICB0aGlzLndlZWtEYXlzID0gWy4uLmRheWpzLndlZWtkYXlzKCldO1xuXG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgY29uc3Qgc3VuZGF5ID0gdGhpcy53ZWVrRGF5cy5zbGljZSgwLCAxKTtcbiAgICAgICAgICAgIHRoaXMud2Vla0RheXMuc3BsaWNlKDAsIDEpO1xuICAgICAgICAgICAgdGhpcy53ZWVrRGF5cyA9IHRoaXMud2Vla0RheXMuY29uY2F0KHN1bmRheSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyQubmV4dCh0aGlzLmdldE1vbnRoRGV0YWlscyh0aGlzLmN1cnJlbnRZZWFyLCB0aGlzLmN1cnJlbnRNb250aCkpO1xuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKCkgPT4gISF0aGlzLm1pbkRhdGVUaW1lc3RhbXApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShjdXJyZW50TW9udGhEYXRlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluRGF0ZUluUHJldmlvdXNNb250aCA9IHRoaXMubWluRGF0ZVRpbWVzdGFtcFxuICAgICAgICAgICAgICAgICAgICA/IG5ldyBEYXRlKHRoaXMubWluRGF0ZVRpbWVzdGFtcCkuZ2V0TW9udGgoKSA8IHRoaXMuY3VycmVudE1vbnRoXG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIHRoaXMucHJldmlvdXNNb250aEF2YWlsYWJsZSA9XG4gICAgICAgICAgICAgICAgICAgICFjdXJyZW50TW9udGhEYXRlcy5zb21lKGRheURldGFpbCA9PiBkYXlEZXRhaWwudGltZXN0YW1wID09PSB0aGlzLm1pbkRhdGVUaW1lc3RhbXApIHx8ICEhbWluRGF0ZUluUHJldmlvdXNNb250aDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldERheURldGFpbHMoaW5kZXg6IG51bWJlciwgZmlyc3REYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgbnVtYmVyT2ZEYXlzOiBudW1iZXIsIHllYXI6IG51bWJlcik6IERheURldGFpbCB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBpbmRleCAtIGZpcnN0RGF5O1xuICAgICAgICBjb25zdCBkYXkgPSBpbmRleCAlIDc7XG4gICAgICAgIGxldCBwcmV2TW9udGggPSBtb250aCAtIDE7XG4gICAgICAgIGxldCBwcmV2WWVhciA9IHllYXI7XG4gICAgICAgIGlmIChwcmV2TW9udGggPCAwKSB7XG4gICAgICAgICAgICBwcmV2TW9udGggPSAxMTtcbiAgICAgICAgICAgIHByZXZZZWFyLS07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcHJldk1vbnRoTnVtYmVyT2ZEYXlzID0gdGhpcy5nZXROdW1iZXJPZkRheXMocHJldlllYXIsIHByZXZNb250aCk7XG4gICAgICAgIGNvbnN0IF9kYXRlID0gKGRhdGUgPCAwID8gcHJldk1vbnRoTnVtYmVyT2ZEYXlzICsgZGF0ZSA6IGRhdGUgJSBudW1iZXJPZkRheXMpICsgMTtcbiAgICAgICAgY29uc3QgX21vbnRoID0gZGF0ZSA8IDAgPyAtMSA6IGRhdGUgPj0gbnVtYmVyT2ZEYXlzID8gMSA6IDA7XG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBfbW9udGggKyBtb250aCwgX2RhdGUpO1xuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXdEYXRlLmdldFRpbWUoKTtcbiAgICAgICAgY29uc3QgZGF5U3RyaW5nID0gdGhpcy53ZWVrRGF5c1tkYXldO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0ZTogX2RhdGUsXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBtb250aDogX21vbnRoLFxuICAgICAgICAgICAgdGltZXN0YW1wLFxuICAgICAgICAgICAgZGF5U3RyaW5nLFxuICAgICAgICAgICAgZGF5anM6IGRheWpzKG5ld0RhdGUpLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGdldE51bWJlck9mRGF5cyh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gNDAgLSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgNDApLmdldERhdGUoKTtcbiAgICB9XG5cbiAgICBnZXRNb250aERldGFpbHMoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogRGF5RGV0YWlsW10ge1xuICAgICAgICBsZXQgZmlyc3REYXkgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCkuZ2V0RGF5KCk7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgZmlyc3REYXkgLT0gMTtcbiAgICAgICAgfVxuICAgICAgICAvLyBJZiB0aGUgZmlyc3QgZGF5IGlzIGJlbG93IDAgaXQgbWVhbnMgdGhlIHN1bmRheSBpcyB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCBzbyB3ZSBuZWVkIHRvIHNob3cgdGhlIGxhc3QgbW9udGhcbiAgICAgICAgaWYgKGZpcnN0RGF5IDwgMCkge1xuICAgICAgICAgICAgZmlyc3REYXkgPSA2O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG51bWJlck9mRGF5cyA9IHRoaXMuZ2V0TnVtYmVyT2ZEYXlzKHllYXIsIG1vbnRoKTtcbiAgICAgICAgY29uc3QgbW9udGhBcnJheSA9IFtdO1xuICAgICAgICBjb25zdCByb3dzID0gNjtcbiAgICAgICAgbGV0IGN1cnJlbnREYXkgPSBudWxsO1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBjb25zdCBjb2xzID0gNztcblxuICAgICAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCByb3dzOyByb3crKykge1xuICAgICAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgY29sczsgY29sKyspIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50RGF5ID0gdGhpcy5nZXREYXlEZXRhaWxzKGluZGV4LCBmaXJzdERheSwgbW9udGgsIG51bWJlck9mRGF5cywgeWVhcik7XG4gICAgICAgICAgICAgICAgbW9udGhBcnJheS5wdXNoKGN1cnJlbnREYXkpO1xuICAgICAgICAgICAgICAgIGluZGV4Kys7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1vbnRoQXJyYXk7XG4gICAgfVxuXG4gICAgb25QcmV2aW91c01vbnRoKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wcmV2aW91c01vbnRoQXZhaWxhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzTW9udGguZW1pdCgpO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGggLT0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aCA9IDExO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgLT0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMkLm5leHQodGhpcy5nZXRNb250aERldGFpbHModGhpcy5jdXJyZW50WWVhciwgdGhpcy5jdXJyZW50TW9udGgpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTmV4dE1vbnRoKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5leHRNb250aC5lbWl0KCk7XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoICs9IDE7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gMTIpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJC5uZXh0KHRoaXMuZ2V0TW9udGhEZXRhaWxzKHRoaXMuY3VycmVudFllYXIsIHRoaXMuY3VycmVudE1vbnRoKSk7XG4gICAgfVxuXG4gICAgb25TZWxlY3REYXkoZGF5RGV0YWlsOiBEYXlEZXRhaWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGF5RGlzYWJsZWQgPSB0aGlzLmRheURpc2FibGVkUGlwZS50cmFuc2Zvcm0oZGF5RGV0YWlsLCB0aGlzLlRPREFZX1RJTUVTVEFNUCwgdGhpcy5taW5EYXRlVGltZXN0YW1wLCB0aGlzLm1heERhdGVUaW1lc3RhbXApO1xuICAgICAgICBpZiAoIWRheURpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5taW5EYXRlICYmIGRheURldGFpbC5kYXlqcy5pc0JlZm9yZShkYXlqcyh0aGlzLm1pbkRhdGUpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLm1heERhdGUgJiYgZGF5RGV0YWlsLmRheWpzLmlzQWZ0ZXIoZGF5anModGhpcy5tYXhEYXRlKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuaGFzKGRheURldGFpbC50aW1lc3RhbXApKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuZGVsZXRlKGRheURldGFpbC50aW1lc3RhbXApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcC5hZGQoZGF5RGV0YWlsLnRpbWVzdGFtcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmRhdGVzU2VsZWN0ZWQuZW1pdChBcnJheS5mcm9tKHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wKS5tYXAodGltZXN0YW1wID0+IGRheWpzKHRpbWVzdGFtcCkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYXRlLXBpY2tlci1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vbnRoLW5hdmlnYXRpb25cIj5cbiAgICAgICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgIG5hbWU9XCJuZW8tZGF0ZS1waWNrZXItcHJldmlvdXMtbW9udGhcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhcHJldmlvdXNNb250aEF2YWlsYWJsZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXNNb250aCgpXCI+XG4gICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImFycm93LWxlZnRcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21cIiAvPlxuICAgICAgICAgICAgPC9hcC1pY29uLWJ1dHRvbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IG1vbnRoc1tjdXJyZW50TW9udGhdIHwgdGl0bGVjYXNlIH19IHt7IGN1cnJlbnRZZWFyIH19PC9zcGFuPlxuICAgICAgICAgICAgPGFwLWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgbmFtZT1cIm5lby1kYXRlLXBpY2tlci1uZXh0LW1vbnRoXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25OZXh0TW9udGgoKVwiPlxuICAgICAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJhcnJvdy1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiIC8+XG4gICAgICAgICAgICA8L2FwLWljb24tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIndlZWstaGVhZGVyXCI+XG4gICAgICAgICAgICBAZm9yIChkYXkgb2Ygd2Vla0RheXM7IHRyYWNrIGRheSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXlcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZGF5IHwgc2xpY2U6IDAgOiAyIHwgdGl0bGVjYXNlIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5cy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIEBmb3IgKGRheSBvZiBjdXJyZW50TW9udGhEYXRlcyQgfCBhc3luYzsgdHJhY2sgZGF5KSB7XG4gICAgICAgICAgICAgICAgQGlmIChkYXlUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkYXlUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkYXk6IGRheSB9XCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICghZGF5VGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkYXlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRheSB8IGRheURpc2FibGVkOiBUT0RBWV9USU1FU1RBTVAgOiBtaW5EYXRlVGltZXN0YW1wIDogbWF4RGF0ZVRpbWVzdGFtcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudG9kYXldPVwiZGF5LnRpbWVzdGFtcCA9PT0gVE9EQVlfVElNRVNUQU1QXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZERheXNUaW1lc3RhbXAuaGFzKGRheS50aW1lc3RhbXApXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdERheShkYXkpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBkYXkuZGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVvLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL25lby1kYXRlcGlja2VyL3NyYy9uZW8tZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvbmVvLWRhdGVwaWNrZXIvc3JjL25lby1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFrQixpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQWUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxVQUFVLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFB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QztRQUN2RyxDQUFDO0lBQ0wsQ0FBQzt1R0FqTlEsc0JBQXNCOzJGQUF0QixzQkFBc0IsNFVBYnBCLENBQUMsZUFBZSxDQUFDLDBCQzNCaEMseStEQWtEQSxvL1BEckJRLGVBQWUsaUhBQ2YsYUFBYSw2Q0FFYixTQUFTLDhDQUNULGdCQUFnQiwrSUFDaEIsZUFBZSwrQ0FDZixTQUFTLDhDQUNULG1CQUFtQjs7MkZBSWQsc0JBQXNCO2tCQWxCbEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGVBQWUsQ0FBQyxXQUNuQjt3QkFDTCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixTQUFTO3dCQUNULG1CQUFtQjtxQkFDdEIsY0FDVyxJQUFJO21GQU1QLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUlPLE9BQU87c0JBQW5CLEtBQUs7Z0JBU08sT0FBTztzQkFBbkIsS0FBSztnQkFXTyxJQUFJO3NCQUFoQixLQUFLO2dCQVlPLGFBQWE7c0JBQXpCLEtBQUs7Z0JBaUJHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9pY29uLWJ1dHRvbic7XG5pbXBvcnQgeyBTeW1ib2xDb21wb25lbnQsIFN5bWJvbFJlZ2lzdHJ5LCBhcEFycm93QnV0dG9uTGVmdCwgYXBBcnJvd0J1dHRvblJpZ2h0IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgU2xpY2VQaXBlLCBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZGUnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZW4nO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZXMnO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvZnInO1xuaW1wb3J0ICdkYXlqcy9sb2NhbGUvcHQnO1xuaW1wb3J0IGxvY2FsZURhdGEgZnJvbSAnZGF5anMvcGx1Z2luL2xvY2FsZURhdGEnO1xuaW1wb3J0IHsgaW5qZWN0RGVzdHJveSB9IGZyb20gJ25neHRlbnNpb24vaW5qZWN0LWRlc3Ryb3knO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEYXlEZXRhaWwgfSBmcm9tICcuL2RheS1kZXRhaWwubW9kZWwnO1xuaW1wb3J0IHsgRGF5RGlzYWJsZWRQaXBlIH0gZnJvbSAnLi9kYXktZGlzYWJsZWQucGlwZSc7XG5cbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZScgfCAnbXVsdGlwbGUnO1xuZXhwb3J0IHR5cGUgTmVvRGF0ZVBpY2tlclN0YXJ0c09uID0gJ21vbmRheScgfCAnc3VuZGF5JztcbmV4cG9ydCB0eXBlIE5lb0RhdGVQaWNrZXJMb2NhbGUgPSAnZW4nIHwgJ2VzJyB8ICdmcicgfCAncHQnIHwgJ2RlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1uZW8tZGF0ZS1waWNrZXInLFxuICAgIHN0eWxlVXJsczogWyduZW8tZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnbmVvLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0RheURpc2FibGVkUGlwZV0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBTeW1ib2xDb21wb25lbnQsXG4gICAgICAgIFRpdGxlQ2FzZVBpcGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgU2xpY2VQaXBlLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBEYXlEaXNhYmxlZFBpcGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgSWNvbkJ1dHRvbkNvbXBvbmVudCxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE5lb0RhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHJlYWRvbmx5IE9ORV9EQVk6IG51bWJlciA9IDYwICogNjAgKiAyNCAqIDEwMDA7XG4gICAgcmVhZG9ubHkgVE9EQVlfVElNRVNUQU1QOiBudW1iZXIgPSBEYXRlLm5vdygpIC0gKERhdGUubm93KCkgJSB0aGlzLk9ORV9EQVkpICsgbmV3IERhdGUoKS5nZXRUaW1lem9uZU9mZnNldCgpICogMTAwMCAqIDYwO1xuXG4gICAgQElucHV0KCkgZGF5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHsgZGF5OiBEYXlEZXRhaWwgfT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgbG9jYWxlOiBOZW9EYXRlUGlja2VyTG9jYWxlID0gJ2VuJztcblxuICAgIHByaXZhdGUgX21heERhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgc2V0IG1heERhdGUobWF4RGF0ZTogZGF5anMuRGF5anMpIHtcbiAgICAgICAgdGhpcy5fbWF4RGF0ZSA9IG1heERhdGU7XG4gICAgICAgIHRoaXMubWF4RGF0ZVRpbWVzdGFtcCA9IG1heERhdGUudG9EYXRlKCkuZ2V0VGltZSgpO1xuICAgIH1cbiAgICBnZXQgbWF4RGF0ZSgpOiBkYXlqcy5EYXlqcyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhEYXRlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX21pbkRhdGU6IGRheWpzLkRheWpzIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIHNldCBtaW5EYXRlKG1pbkRhdGU6IGRheWpzLkRheWpzKSB7XG4gICAgICAgIHRoaXMuX21pbkRhdGUgPSBtaW5EYXRlO1xuICAgICAgICB0aGlzLm1pbkRhdGVUaW1lc3RhbXAgPSBtaW5EYXRlLnRvRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB9XG4gICAgZ2V0IG1pbkRhdGUoKTogZGF5anMuRGF5anMgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcbiAgICB9XG5cbiAgICBwcmV2aW91c01vbnRoQXZhaWxhYmxlOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX21vZGU6IE5lb0RhdGVQaWNrZXJNb2RlID0gJ3NpbmdsZSc7XG4gICAgQElucHV0KCkgc2V0IG1vZGUobW9kZTogTmVvRGF0ZVBpY2tlck1vZGUpIHtcbiAgICAgICAgdGhpcy5fbW9kZSA9IG1vZGU7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IHRoaXMuX3NlbGVjdGVkRGF0ZXMuc2xpY2UoMCwgMSk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoQXJyYXkuZnJvbSh0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCkuc2xpY2UoMCwgMSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBtb2RlKCk6IE5lb0RhdGVQaWNrZXJNb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWREYXRlczogZGF5anMuRGF5anNbXSA9IFtdO1xuICAgIEBJbnB1dCgpIHNldCBzZWxlY3RlZERhdGVzKGRhdGVzOiBkYXlqcy5EYXlqc1tdKSB7XG4gICAgICAgIGlmICh0aGlzLl9tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgZGF0ZXMgPSBkYXRlcy5zbGljZSgwLCAxKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcCA9IG5ldyBTZXQoKTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWREYXRlcyA9IGRhdGVzO1xuICAgICAgICBpZiAodGhpcy5fc2VsZWN0ZWREYXRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkRGF0ZXMuZm9yRWFjaChkYXkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmFkZChkYXkudG9EYXRlKCkuZ2V0VGltZSgpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNlbGVjdGVkRGF0ZXMoKTogZGF5anMuRGF5anNbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZERhdGVzO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHN0YXJ0c09uOiBOZW9EYXRlUGlja2VyU3RhcnRzT24gPSAnbW9uZGF5JztcblxuICAgIEBPdXRwdXQoKSBkYXRlc1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8ZGF5anMuRGF5anNbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGRheWpzLkRheWpzW10+KCk7XG4gICAgQE91dHB1dCgpIG5leHRNb250aDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSBwcmV2aW91c01vbnRoOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBjdXJyZW50WWVhciE6IG51bWJlcjtcbiAgICBjdXJyZW50TW9udGghOiBudW1iZXI7XG4gICAgY3VycmVudE1vbnRoRGF0ZXMkOiBCZWhhdmlvclN1YmplY3Q8RGF5RGV0YWlsW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXlEZXRhaWxbXT4oW10pO1xuICAgIG1pbkRhdGVUaW1lc3RhbXA6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBtYXhEYXRlVGltZXN0YW1wOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbW9udGhzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHNlbGVjdGVkRGF5c1RpbWVzdGFtcDogU2V0PG51bWJlcj4gPSBuZXcgU2V0KCk7XG4gICAgd2Vla0RheXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBkYXlEaXNhYmxlZFBpcGU6IERheURpc2FibGVkUGlwZSA9IGluamVjdChEYXlEaXNhYmxlZFBpcGUpO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IGluamVjdERlc3Ryb3koKTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzeW1ib2xSZWdpc3RyeTogU3ltYm9sUmVnaXN0cnkpIHtcbiAgICAgICAgdGhpcy5zeW1ib2xSZWdpc3RyeS5yZWdpc3RlclN5bWJvbHMoW2FwQXJyb3dCdXR0b25MZWZ0LCBhcEFycm93QnV0dG9uUmlnaHRdKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgZGF5anMuZXh0ZW5kKGxvY2FsZURhdGEpO1xuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50WWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGggPSBkYXRlLmdldE1vbnRoKCk7XG4gICAgICAgIGlmICh0aGlzLmxvY2FsZSkge1xuICAgICAgICAgICAgZGF5anMubG9jYWxlKHRoaXMubG9jYWxlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1vbnRocyA9IGRheWpzLm1vbnRocygpO1xuICAgICAgICB0aGlzLndlZWtEYXlzID0gWy4uLmRheWpzLndlZWtkYXlzKCldO1xuXG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgY29uc3Qgc3VuZGF5ID0gdGhpcy53ZWVrRGF5cy5zbGljZSgwLCAxKTtcbiAgICAgICAgICAgIHRoaXMud2Vla0RheXMuc3BsaWNlKDAsIDEpO1xuICAgICAgICAgICAgdGhpcy53ZWVrRGF5cyA9IHRoaXMud2Vla0RheXMuY29uY2F0KHN1bmRheSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyQubmV4dCh0aGlzLmdldE1vbnRoRGV0YWlscyh0aGlzLmN1cnJlbnRZZWFyLCB0aGlzLmN1cnJlbnRNb250aCkpO1xuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKCkgPT4gISF0aGlzLm1pbkRhdGVUaW1lc3RhbXApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShjdXJyZW50TW9udGhEYXRlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluRGF0ZUluUHJldmlvdXNNb250aCA9IHRoaXMubWluRGF0ZVRpbWVzdGFtcFxuICAgICAgICAgICAgICAgICAgICA/IG5ldyBEYXRlKHRoaXMubWluRGF0ZVRpbWVzdGFtcCkuZ2V0TW9udGgoKSA8IHRoaXMuY3VycmVudE1vbnRoXG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIHRoaXMucHJldmlvdXNNb250aEF2YWlsYWJsZSA9XG4gICAgICAgICAgICAgICAgICAgICFjdXJyZW50TW9udGhEYXRlcy5zb21lKGRheURldGFpbCA9PiBkYXlEZXRhaWwudGltZXN0YW1wID09PSB0aGlzLm1pbkRhdGVUaW1lc3RhbXApIHx8ICEhbWluRGF0ZUluUHJldmlvdXNNb250aDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldERheURldGFpbHMoaW5kZXg6IG51bWJlciwgZmlyc3REYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgbnVtYmVyT2ZEYXlzOiBudW1iZXIsIHllYXI6IG51bWJlcik6IERheURldGFpbCB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBpbmRleCAtIGZpcnN0RGF5O1xuICAgICAgICBjb25zdCBkYXkgPSBpbmRleCAlIDc7XG4gICAgICAgIGxldCBwcmV2TW9udGggPSBtb250aCAtIDE7XG4gICAgICAgIGxldCBwcmV2WWVhciA9IHllYXI7XG4gICAgICAgIGlmIChwcmV2TW9udGggPCAwKSB7XG4gICAgICAgICAgICBwcmV2TW9udGggPSAxMTtcbiAgICAgICAgICAgIHByZXZZZWFyLS07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcHJldk1vbnRoTnVtYmVyT2ZEYXlzID0gdGhpcy5nZXROdW1iZXJPZkRheXMocHJldlllYXIsIHByZXZNb250aCk7XG4gICAgICAgIGNvbnN0IF9kYXRlID0gKGRhdGUgPCAwID8gcHJldk1vbnRoTnVtYmVyT2ZEYXlzICsgZGF0ZSA6IGRhdGUgJSBudW1iZXJPZkRheXMpICsgMTtcbiAgICAgICAgY29uc3QgX21vbnRoID0gZGF0ZSA8IDAgPyAtMSA6IGRhdGUgPj0gbnVtYmVyT2ZEYXlzID8gMSA6IDA7XG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBfbW9udGggKyBtb250aCwgX2RhdGUpO1xuICAgICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXdEYXRlLmdldFRpbWUoKTtcbiAgICAgICAgY29uc3QgZGF5U3RyaW5nID0gdGhpcy53ZWVrRGF5c1tkYXldO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0ZTogX2RhdGUsXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBtb250aDogX21vbnRoLFxuICAgICAgICAgICAgdGltZXN0YW1wLFxuICAgICAgICAgICAgZGF5U3RyaW5nLFxuICAgICAgICAgICAgZGF5anM6IGRheWpzKG5ld0RhdGUpLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGdldE51bWJlck9mRGF5cyh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gNDAgLSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgNDApLmdldERhdGUoKTtcbiAgICB9XG5cbiAgICBnZXRNb250aERldGFpbHMoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogRGF5RGV0YWlsW10ge1xuICAgICAgICBsZXQgZmlyc3REYXkgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCkuZ2V0RGF5KCk7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0c09uID09PSAnbW9uZGF5Jykge1xuICAgICAgICAgICAgZmlyc3REYXkgLT0gMTtcbiAgICAgICAgfVxuICAgICAgICAvLyBJZiB0aGUgZmlyc3QgZGF5IGlzIGJlbG93IDAgaXQgbWVhbnMgdGhlIHN1bmRheSBpcyB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCBzbyB3ZSBuZWVkIHRvIHNob3cgdGhlIGxhc3QgbW9udGhcbiAgICAgICAgaWYgKGZpcnN0RGF5IDwgMCkge1xuICAgICAgICAgICAgZmlyc3REYXkgPSA2O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG51bWJlck9mRGF5cyA9IHRoaXMuZ2V0TnVtYmVyT2ZEYXlzKHllYXIsIG1vbnRoKTtcbiAgICAgICAgY29uc3QgbW9udGhBcnJheSA9IFtdO1xuICAgICAgICBjb25zdCByb3dzID0gNjtcbiAgICAgICAgbGV0IGN1cnJlbnREYXkgPSBudWxsO1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBjb25zdCBjb2xzID0gNztcblxuICAgICAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCByb3dzOyByb3crKykge1xuICAgICAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgY29sczsgY29sKyspIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50RGF5ID0gdGhpcy5nZXREYXlEZXRhaWxzKGluZGV4LCBmaXJzdERheSwgbW9udGgsIG51bWJlck9mRGF5cywgeWVhcik7XG4gICAgICAgICAgICAgICAgbW9udGhBcnJheS5wdXNoKGN1cnJlbnREYXkpO1xuICAgICAgICAgICAgICAgIGluZGV4Kys7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1vbnRoQXJyYXk7XG4gICAgfVxuXG4gICAgb25QcmV2aW91c01vbnRoKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wcmV2aW91c01vbnRoQXZhaWxhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzTW9udGguZW1pdCgpO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGggLT0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aCA9IDExO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgLT0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMkLm5leHQodGhpcy5nZXRNb250aERldGFpbHModGhpcy5jdXJyZW50WWVhciwgdGhpcy5jdXJyZW50TW9udGgpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTmV4dE1vbnRoKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5leHRNb250aC5lbWl0KCk7XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoICs9IDE7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aCA9PT0gMTIpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFllYXIgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzJC5uZXh0KHRoaXMuZ2V0TW9udGhEZXRhaWxzKHRoaXMuY3VycmVudFllYXIsIHRoaXMuY3VycmVudE1vbnRoKSk7XG4gICAgfVxuXG4gICAgb25TZWxlY3REYXkoZGF5RGV0YWlsOiBEYXlEZXRhaWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGF5RGlzYWJsZWQgPSB0aGlzLmRheURpc2FibGVkUGlwZS50cmFuc2Zvcm0oZGF5RGV0YWlsLCB0aGlzLlRPREFZX1RJTUVTVEFNUCwgdGhpcy5taW5EYXRlVGltZXN0YW1wLCB0aGlzLm1heERhdGVUaW1lc3RhbXApO1xuICAgICAgICBpZiAoIWRheURpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5taW5EYXRlICYmIGRheURldGFpbC5kYXlqcy5pc0JlZm9yZShkYXlqcyh0aGlzLm1pbkRhdGUpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLm1heERhdGUgJiYgZGF5RGV0YWlsLmRheWpzLmlzQWZ0ZXIoZGF5anModGhpcy5tYXhEYXRlKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuaGFzKGRheURldGFpbC50aW1lc3RhbXApKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERheXNUaW1lc3RhbXAuZGVsZXRlKGRheURldGFpbC50aW1lc3RhbXApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF5c1RpbWVzdGFtcC5hZGQoZGF5RGV0YWlsLnRpbWVzdGFtcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmRhdGVzU2VsZWN0ZWQuZW1pdChBcnJheS5mcm9tKHRoaXMuc2VsZWN0ZWREYXlzVGltZXN0YW1wKS5tYXAodGltZXN0YW1wID0+IGRheWpzKHRpbWVzdGFtcCkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYXRlLXBpY2tlci1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vbnRoLW5hdmlnYXRpb25cIj5cbiAgICAgICAgICAgIDxhcC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgIG5hbWU9XCJuZW8tZGF0ZS1waWNrZXItcHJldmlvdXMtbW9udGhcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhcHJldmlvdXNNb250aEF2YWlsYWJsZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXNNb250aCgpXCI+XG4gICAgICAgICAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2xJZD1cImFycm93LWxlZnRcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21cIiAvPlxuICAgICAgICAgICAgPC9hcC1pY29uLWJ1dHRvbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IG1vbnRoc1tjdXJyZW50TW9udGhdIHwgdGl0bGVjYXNlIH19IHt7IGN1cnJlbnRZZWFyIH19PC9zcGFuPlxuICAgICAgICAgICAgPGFwLWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgbmFtZT1cIm5lby1kYXRlLXBpY2tlci1uZXh0LW1vbnRoXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25OZXh0TW9udGgoKVwiPlxuICAgICAgICAgICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJhcnJvdy1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiIC8+XG4gICAgICAgICAgICA8L2FwLWljb24tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIndlZWstaGVhZGVyXCI+XG4gICAgICAgICAgICBAZm9yIChkYXkgb2Ygd2Vla0RheXM7IHRyYWNrIGRheSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXlcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZGF5IHwgc2xpY2U6IDAgOiAyIHwgdGl0bGVjYXNlIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5cy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIEBmb3IgKGRheSBvZiBjdXJyZW50TW9udGhEYXRlcyQgfCBhc3luYzsgdHJhY2sgZGF5KSB7XG4gICAgICAgICAgICAgICAgQGlmIChkYXlUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkYXlUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkYXk6IGRheSB9XCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICghZGF5VGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkYXlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRheSB8IGRheURpc2FibGVkOiBUT0RBWV9USU1FU1RBTVAgOiBtaW5EYXRlVGltZXN0YW1wIDogbWF4RGF0ZVRpbWVzdGFtcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudG9kYXldPVwiZGF5LnRpbWVzdGFtcCA9PT0gVE9EQVlfVElNRVNUQU1QXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZERheXNUaW1lc3RhbXAuaGFzKGRheS50aW1lc3RhbXApXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdERheShkYXkpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBkYXkuZGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=