keevo-components 2.0.219 → 2.0.220

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 (168) hide show
  1. package/esm2022/lib/api/base-components/base-component-button.mjs +4 -4
  2. package/esm2022/lib/api/base-components/base-component-chart.mjs +4 -4
  3. package/esm2022/lib/api/base-components/base-component-crud-form.mjs +4 -4
  4. package/esm2022/lib/api/base-components/base-component-crud-list.mjs +4 -4
  5. package/esm2022/lib/api/base-components/base-component-crud.mjs +4 -4
  6. package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +4 -4
  7. package/esm2022/lib/api/base-components/base-component-dropdown.mjs +4 -4
  8. package/esm2022/lib/api/base-components/base-component-input.mjs +4 -4
  9. package/esm2022/lib/api/base-components/base-component-multi-select.mjs +4 -4
  10. package/esm2022/lib/api/base-components/base-component-table.mjs +4 -4
  11. package/esm2022/lib/api/base-components/base-component.mjs +4 -4
  12. package/esm2022/lib/api/directives/directives.module.mjs +5 -5
  13. package/esm2022/lib/api/directives/drag/drag.directive.mjs +4 -4
  14. package/esm2022/lib/api/directives/stepper/dynamicinput.directive.mjs +4 -4
  15. package/esm2022/lib/api/directives/template/template.directive.mjs +4 -4
  16. package/esm2022/lib/api/modules/primeng.module.mjs +5 -5
  17. package/esm2022/lib/api/pipes/capitalize.pipe.mjs +4 -4
  18. package/esm2022/lib/api/pipes/cpfcnpj.pipe.mjs +4 -4
  19. package/esm2022/lib/api/pipes/mask.pipe.mjs +4 -4
  20. package/esm2022/lib/api/pipes/pipes.module.mjs +5 -5
  21. package/esm2022/lib/api/pipes/telefone.pipe.mjs +4 -4
  22. package/esm2022/lib/api/services/base.api.service.mjs +4 -4
  23. package/esm2022/lib/api/services/breadcrumbs.service.mjs +4 -4
  24. package/esm2022/lib/api/services/chat.service.mjs +4 -4
  25. package/esm2022/lib/api/services/component.service.mjs +4 -4
  26. package/esm2022/lib/api/services/docs.service.mjs +4 -4
  27. package/esm2022/lib/api/services/enum.utils.service.mjs +2 -13
  28. package/esm2022/lib/api/services/form.service.mjs +4 -4
  29. package/esm2022/lib/api/services/image.cutter.service.mjs +7 -7
  30. package/esm2022/lib/api/services/imagens.service.mjs +4 -4
  31. package/esm2022/lib/api/services/notification.service.mjs +4 -4
  32. package/esm2022/lib/api/services/object.service.mjs +4 -4
  33. package/esm2022/lib/api/services/orgchart.service.mjs +4 -4
  34. package/esm2022/lib/api/services/pdf.service.mjs +4 -4
  35. package/esm2022/lib/components/keevo-components.module.mjs +5 -5
  36. package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +4 -4
  37. package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +5 -5
  38. package/esm2022/lib/components/kv-button/kv-button.component.mjs +4 -4
  39. package/esm2022/lib/components/kv-button/kv-button.module.mjs +5 -5
  40. package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +4 -4
  41. package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +4 -4
  42. package/esm2022/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.mjs +4 -4
  43. package/esm2022/lib/components/kv-buttons/kv-button-success/kv-button-success.component.mjs +4 -4
  44. package/esm2022/lib/components/kv-buttons/kv-button.module.mjs +5 -5
  45. package/esm2022/lib/components/kv-card-selection/kv-card-selection.component.mjs +4 -4
  46. package/esm2022/lib/components/kv-card-selection/kv-card-selection.module.mjs +5 -5
  47. package/esm2022/lib/components/kv-carousel/kv-carousel.component.mjs +4 -4
  48. package/esm2022/lib/components/kv-carousel/kv-carousel.module.mjs +5 -5
  49. package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +4 -4
  50. package/esm2022/lib/components/kv-chart/kv-chart.module.mjs +5 -5
  51. package/esm2022/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.mjs +4 -4
  52. package/esm2022/lib/components/kv-confirmation-modal/kv-confirmation-modal.module.mjs +5 -5
  53. package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.component.mjs +4 -4
  54. package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.module.mjs +5 -5
  55. package/esm2022/lib/components/kv-detailed-list/kv-detailed-list.component.mjs +4 -4
  56. package/esm2022/lib/components/kv-error/kv-error.component.mjs +4 -4
  57. package/esm2022/lib/components/kv-error/kv-error.module.mjs +5 -5
  58. package/esm2022/lib/components/kv-file-upload/kv-file-upload.component.mjs +4 -4
  59. package/esm2022/lib/components/kv-file-upload/kv-file-upload.module.mjs +5 -5
  60. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.component.mjs +4 -4
  61. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.module.mjs +5 -5
  62. package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.mjs +4 -4
  63. package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.mjs +5 -5
  64. package/esm2022/lib/components/kv-filter-card/kv-filter-card.component.mjs +4 -4
  65. package/esm2022/lib/components/kv-filter-card/kv-filter-card.module.mjs +5 -5
  66. package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.component.mjs +4 -4
  67. package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.module.mjs +5 -5
  68. package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.pipe.mjs +4 -4
  69. package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.mjs +4 -4
  70. package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.mjs +5 -5
  71. package/esm2022/lib/components/kv-g-icon/kv-g-icon.component.mjs +4 -4
  72. package/esm2022/lib/components/kv-g-icon/kv-g-icon.module.mjs +5 -5
  73. package/esm2022/lib/components/kv-home-card/kv-home-card.component.mjs +4 -4
  74. package/esm2022/lib/components/kv-home-card/kv-home-card.module.mjs +5 -5
  75. package/esm2022/lib/components/kv-icon/kv-icon.component.mjs +4 -4
  76. package/esm2022/lib/components/kv-icon/kv-icon.module.mjs +5 -5
  77. package/esm2022/lib/components/kv-image-upload/kv-image-upload.component.mjs +4 -4
  78. package/esm2022/lib/components/kv-image-upload/kv-image-upload.module.mjs +5 -5
  79. package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +4 -4
  80. package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +4 -4
  81. package/esm2022/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.mjs +4 -4
  82. package/esm2022/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.mjs +4 -4
  83. package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +4 -4
  84. package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-mention.service.mjs +4 -4
  85. package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-pdf.service.mjs +4 -4
  86. package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.mjs +4 -4
  87. package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-relatorio.service.mjs +4 -4
  88. package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +4 -4
  89. package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +4 -4
  90. package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +4 -4
  91. package/esm2022/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.mjs +4 -4
  92. package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +4 -4
  93. package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +4 -4
  94. package/esm2022/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.mjs +4 -4
  95. package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +4 -4
  96. package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +4 -4
  97. package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +4 -4
  98. package/esm2022/lib/components/kv-inputs/kv-inputs.module.mjs +5 -5
  99. package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +4 -4
  100. package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +4 -4
  101. package/esm2022/lib/components/kv-inputs/kv-select-button/kv-select-button.component.mjs +4 -4
  102. package/esm2022/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.mjs +4 -4
  103. package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +4 -4
  104. package/esm2022/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.mjs +5 -5
  105. package/esm2022/lib/components/kv-label/kv-label.component.mjs +4 -4
  106. package/esm2022/lib/components/kv-label/kv-label.module.mjs +5 -5
  107. package/esm2022/lib/components/kv-layout/dropdown-master/dropdown-master.component.mjs +4 -4
  108. package/esm2022/lib/components/kv-layout/kv-layout.module.mjs +5 -5
  109. package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +4 -4
  110. package/esm2022/lib/components/kv-layout/top-icons/top-icons.component.mjs +4 -4
  111. package/esm2022/lib/components/kv-loader/kv-loader.component.mjs +4 -4
  112. package/esm2022/lib/components/kv-loader/kv-loader.module.mjs +5 -5
  113. package/esm2022/lib/components/kv-loader/kv-loader.service.mjs +4 -4
  114. package/esm2022/lib/components/kv-login/kv-login.component.mjs +4 -4
  115. package/esm2022/lib/components/kv-login/kv-login.module.mjs +5 -5
  116. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +4 -4
  117. package/esm2022/lib/components/kv-modal/kv-modal.module.mjs +5 -5
  118. package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +4 -4
  119. package/esm2022/lib/components/kv-orgchart/kv-orgchart.module.mjs +5 -5
  120. package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +4 -4
  121. package/esm2022/lib/components/kv-page-form/kv-page-form.module.mjs +5 -5
  122. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.component.mjs +4 -4
  123. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +5 -5
  124. package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +4 -4
  125. package/esm2022/lib/components/kv-pick-list/kv-pick-list.module.mjs +5 -5
  126. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.component.mjs +4 -4
  127. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.module.mjs +5 -5
  128. package/esm2022/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.mjs +4 -4
  129. package/esm2022/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.module.mjs +5 -5
  130. package/esm2022/lib/components/kv-report/kv-report.component.mjs +4 -4
  131. package/esm2022/lib/components/kv-report/kv-report.module.mjs +5 -5
  132. package/esm2022/lib/components/kv-stacked-bar-chart/kv-stacked-bar-chart.component.mjs +4 -4
  133. package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +4 -4
  134. package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +5 -5
  135. package/esm2022/lib/components/kv-steps/kv-steps.component.mjs +4 -4
  136. package/esm2022/lib/components/kv-table/kv-table.component.mjs +4 -4
  137. package/esm2022/lib/components/kv-table/kv-table.module.mjs +5 -5
  138. package/esm2022/lib/components/kv-table-draggable/kv-table-draggable.component.mjs +4 -4
  139. package/esm2022/lib/components/kv-table-draggable/kv-table-draggable.module.mjs +5 -5
  140. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +4 -4
  141. package/esm2022/lib/components/kv-table-edit/kv-table-edit.module.mjs +5 -5
  142. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.component.mjs +4 -4
  143. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.module.mjs +5 -5
  144. package/esm2022/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.mjs +4 -4
  145. package/esm2022/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.mjs +4 -4
  146. package/esm2022/lib/components/kv-table-viewer/kv-table-viewer.component.mjs +4 -4
  147. package/esm2022/lib/components/kv-tag/kv-tag.component.mjs +4 -4
  148. package/esm2022/lib/components/kv-tag/kv-tag.module.mjs +5 -5
  149. package/esm2022/lib/components/kv-tags/kv-tags.component.mjs +4 -4
  150. package/esm2022/lib/components/kv-tags/kv-tags.module.mjs +5 -5
  151. package/esm2022/lib/components/kv-timeline/kv-timeline.component.mjs +4 -4
  152. package/esm2022/lib/components/kv-tree-environment/components/kv-tree-environment/kv-tree-environment.component.mjs +4 -4
  153. package/esm2022/lib/components/kv-tree-environment/components/no-arvore/no-arvore.component.mjs +4 -4
  154. package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +4 -4
  155. package/esm2022/lib/components/kv-tree-table/kv-tree-table.module.mjs +5 -5
  156. package/esm2022/lib/components/kv-tree-view/kv-tree-view.component.mjs +4 -4
  157. package/esm2022/lib/components/kv-tree-view/kv-tree-view.module.mjs +5 -5
  158. package/esm2022/lib/components/kv-widget-card/kv-widget-card.component.mjs +4 -4
  159. package/esm2022/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.mjs +4 -4
  160. package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +5 -5
  161. package/esm2022/lib/components/kv-workspace/logo/kv-workspace-logo.component.mjs +4 -4
  162. package/esm2022/lib/components/kv-workspace/master/kv-workspace-master.component.mjs +4 -4
  163. package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +4 -4
  164. package/fesm2022/keevo-components.mjs +540 -549
  165. package/fesm2022/keevo-components.mjs.map +1 -1
  166. package/lib/api/services/enum.utils.service.d.ts +1 -5
  167. package/lib/components/kv-filter-cards/kv-filter-cards.component.d.ts +1 -1
  168. package/package.json +1 -1
@@ -45,10 +45,10 @@ export class ImageCutterService {
45
45
  };
46
46
  const dialogRef = FormService.openDialog(this.dialogservice, SimpleComponent, () => { }, params);
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: ImageCutterService, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: ImageCutterService, providedIn: 'root' }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageCutterService, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageCutterService, providedIn: 'root' }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: ImageCutterService, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageCutterService, decorators: [{
52
52
  type: Injectable,
53
53
  args: [{ providedIn: 'root' }]
54
54
  }], ctorParameters: () => [{ type: i1.DialogService }] });
@@ -118,8 +118,8 @@ class SimpleComponent {
118
118
  } }));
119
119
  this.closeCropModal();
120
120
  }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SimpleComponent, deps: [{ token: i1.DynamicDialogRef }, { token: i1.DialogService }, { token: i1.DynamicDialogConfig }], target: i0.ɵɵFactoryTarget.Component }); }
122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: SimpleComponent, isStandalone: true, selector: "app-simple-component", ngImport: i0, template: `
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SimpleComponent, deps: [{ token: i1.DynamicDialogRef }, { token: i1.DialogService }, { token: i1.DynamicDialogConfig }], target: i0.ɵɵFactoryTarget.Component }); }
122
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SimpleComponent, isStandalone: true, selector: "app-simple-component", ngImport: i0, template: `
123
123
  <div class="modal-content">
124
124
 
125
125
  <image-cropper
@@ -149,7 +149,7 @@ class SimpleComponent {
149
149
 
150
150
  `, isInline: true, styles: ["img{border-style:solid;border-width:2px;border-radius:50%;object-fit:cover}i{font-size:22px}.botao-alterar-foto{border-style:none;width:max-content;background-color:#002542;color:#000;font-weight:700;cursor:pointer;padding:7px 9px}.botao-alterar-foto i{color:#fff}.botao-excluir-foto{border-style:none;width:max-content;background-color:#002542;color:#000;font-weight:700;cursor:pointer;padding:7px 9px}.botao-excluir-foto i{color:#fff}.btn{position:absolute;top:87%;left:87%;transform:translate(-50%,-50%)}.image-container{display:inline-block;position:relative}.modal-content{height:60vh;position:relative;background-color:#fefefe;margin:1% auto;padding:20px;width:80%;max-width:fit-content;text-align:center;border-radius:12px;display:flex;align-items:center;justify-content:center}.crop-container{display:flex;justify-content:center;align-items:center}.crop-canvas{border:1px solid #d1d5db;border-radius:12px;width:100%;height:auto}.crop-border{position:absolute;border:2px dashed #9ca3af;pointer-events:none}.zoom-container{padding-top:20px;padding-bottom:20px}.button-container{display:flex;align-items:center;justify-content:flex-end;flex-direction:row;margin-top:24px;position:fixed;bottom:0;background:#fff;width:90%;padding:15px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: DialogModule }, { kind: "ngmodule", type: KvModalModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: KvButtonModule }, { kind: "component", type: i2.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "iconPosition", "label", "disabled", "items", "popup", "popupIcon"], outputs: ["iconChange", "onClick"] }, { kind: "ngmodule", type: KvLabelModule }, { kind: "component", type: ImageCropperComponent, selector: "image-cropper", inputs: ["imageChangedEvent", "imageURL", "imageBase64", "imageFile", "imageAltText", "options", "cropperFrameAriaLabel", "output", "format", "autoCrop", "cropper", "transform", "maintainAspectRatio", "aspectRatio", "resetCropOnAspectRatioChange", "resizeToWidth", "resizeToHeight", "cropperMinWidth", "cropperMinHeight", "cropperMaxHeight", "cropperMaxWidth", "cropperStaticWidth", "cropperStaticHeight", "canvasRotation", "initialStepSize", "roundCropper", "onlyScaleDown", "imageQuality", "backgroundColor", "containWithinAspectRatio", "hideResizeSquares", "allowMoveImage", "checkImageType", "alignImage", "disabled", "hidden"], outputs: ["imageCropped", "startCropImage", "imageLoaded", "cropperReady", "loadImageFailed", "transformChange", "cropperChange"] }] }); }
151
151
  }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SimpleComponent, decorators: [{
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SimpleComponent, decorators: [{
153
153
  type: Component,
154
154
  args: [{ selector: 'app-simple-component', template: `
155
155
  <div class="modal-content">
@@ -190,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
190
190
  ImageCropperComponent
191
191
  ], styles: ["img{border-style:solid;border-width:2px;border-radius:50%;object-fit:cover}i{font-size:22px}.botao-alterar-foto{border-style:none;width:max-content;background-color:#002542;color:#000;font-weight:700;cursor:pointer;padding:7px 9px}.botao-alterar-foto i{color:#fff}.botao-excluir-foto{border-style:none;width:max-content;background-color:#002542;color:#000;font-weight:700;cursor:pointer;padding:7px 9px}.botao-excluir-foto i{color:#fff}.btn{position:absolute;top:87%;left:87%;transform:translate(-50%,-50%)}.image-container{display:inline-block;position:relative}.modal-content{height:60vh;position:relative;background-color:#fefefe;margin:1% auto;padding:20px;width:80%;max-width:fit-content;text-align:center;border-radius:12px;display:flex;align-items:center;justify-content:center}.crop-container{display:flex;justify-content:center;align-items:center}.crop-canvas{border:1px solid #d1d5db;border-radius:12px;width:100%;height:auto}.crop-border{position:absolute;border:2px dashed #9ca3af;pointer-events:none}.zoom-container{padding-top:20px;padding-bottom:20px}.button-container{display:flex;align-items:center;justify-content:flex-end;flex-direction:row;margin-top:24px;position:fixed;bottom:0;background:#fff;width:90%;padding:15px}\n"] }]
192
192
  }], ctorParameters: () => [{ type: i1.DynamicDialogRef }, { type: i1.DialogService }, { type: i1.DynamicDialogConfig }] });
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY3V0dGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvYXBpL3NlcnZpY2VzL2ltYWdlLmN1dHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBcUIscUJBQXFCLEVBQWUsTUFBTSxtQkFBbUIsQ0FBQztBQXlDMUYsd0NBQXdDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7O0FBNUM3RSxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLFlBQTZCLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUU3RCxHQUFHLENBQUMsV0FBbUIsRUFBRSxLQUFhLEVBQUUsTUFBYyxFQUFFLFlBQXFCLEtBQUssRUFBRSxNQUFnQixFQUFFLHNCQUErQixJQUFJO1FBQ3ZJLE1BQU0sU0FBUyxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDakYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxT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c0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlLCBEeW5hbWljRGlhbG9nQ29tcG9uZW50LCBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcclxuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kaWFsb2cnO1xyXG5pbXBvcnQgeyBJbWFnZUNyb3BwZWRFdmVudCwgSW1hZ2VDcm9wcGVyQ29tcG9uZW50LCBMb2FkZWRJbWFnZSB9IGZyb20gJ25neC1pbWFnZS1jcm9wcGVyJztcclxuXHJcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxyXG5leHBvcnQgY2xhc3MgSW1hZ2VDdXR0ZXJTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkaWFsb2dzZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlKSB7fVxyXG5cclxuICBjdXQoaW1hZ2VCYXNlNjQ6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGluZENpcmNsZTogYm9vbGVhbiA9IGZhbHNlLCBhdmF0YXI/OiBib29sZWFuLCBtYWludGFpbkFzcGVjdFJhdGlvOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBjb25zdCBjdXRDb25maWcgPSB7IGltYWdlQmFzZTY0LCB3aWR0aCwgaGVpZ2h0LCBpbmRDaXJjbGUsIG1haW50YWluQXNwZWN0UmF0aW8gfTtcclxuICAgIHRoaXMuYWJyaXJNb2RhbChjdXRDb25maWcsIGF2YXRhcik7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjcm9wSW1hZ2UnLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmKGV2ZW50LmRldGFpbC5zdGF0dXMgPT0gdHJ1ZSApIHtcclxuICAgICAgICAgIHJlc29sdmUoZXZlbnQuZGV0YWlsLnJlc3VsdCk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICByZWplY3QoJ09wZXJhY2FvIGNhbmNlbGFkYS4nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhYnJpck1vZGFsKGN1dENvbmZpZzogeyBpbWFnZUJhc2U2NDogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgaW5kQ2lyY2xlOiBib29sZWFuLCBtYWludGFpbkFzcGVjdFJhdGlvOiBib29sZWFufSwgYXZhdGFyPzogYm9vbGVhbikge1xyXG4gICAgbGV0IHF1YWxpdHkgPSAxMDBcclxuICAgIGlmKGF2YXRhcikge1xyXG4gICAgICBxdWFsaXR5ID0gODBcclxuICAgIH1cclxuICAgIGNvbnN0IHBhcmFtcyA9ICAgICAgIHtcclxuICAgICAgY2xvc2FibGU6IHRydWUsXHJcbiAgICAgIG1heGltaXphYmxlOiBmYWxzZSxcclxuICAgICAgcG9wdXA6IHRydWUsXHJcbiAgICAgIHdpZHRoOiAnNzV2dycsXHJcbiAgICAgIGhlYWRlcjogYENvcnRhcmAgLFxyXG4gICAgICBpZDogeyBpbWFnZW06IGN1dENvbmZpZy5pbWFnZUJhc2U2NCwgd2lkdGg6IGN1dENvbmZpZy53aWR0aCwgaGVpZ2h0OiBjdXRDb25maWcuaGVpZ2h0LCBpbmRDaXJjbGU6IGN1dENvbmZpZy5pbmRDaXJjbGUsIHF1YWxpdHk6IHF1YWxpdHksIG1haW50YWluQXNwZWN0UmF0aW86IGN1dENvbmZpZy5tYWludGFpbkFzcGVjdFJhdGlvIH0sXHJcbiAgICAgIHN0eWxlQ2xhc3M6ICdtb2RhbCcsXHJcbiAgICB9XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYgPSBGb3JtU2VydmljZS5vcGVuRGlhbG9nKHRoaXMuZGlhbG9nc2VydmljZSwgU2ltcGxlQ29tcG9uZW50LCAoKT0+e30sIHBhcmFtcyk7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID8gQ29tcG9uZW50ZSBkZSBtb2RhbCB1c2FkbyBubyBjdXR0ZXJcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEt2TGFiZWxNb2R1bGUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2t2LWxhYmVsL2t2LWxhYmVsLm1vZHVsZSc7XHJcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi9mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBLdk1vZGFsTW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9rdi1tb2RhbC9rdi1tb2RhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdkJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMva3YtYnV0dG9uL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNpbXBsZS1jb21wb25lbnQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XHJcblxyXG4gICAgICAgICAgPGltYWdlLWNyb3BwZXJcclxuICAgICAgICAgICAgW2ltYWdlQmFzZTY0XT1cIl92YXJpYXZpZXNEaWFsb2coKT8uaW1hZ2VtXCJcclxuICAgICAgICAgICAgKGltYWdlQ3JvcHBlZCk9XCJpbWFnZUNyb3BwZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFthc3BlY3RSYXRpb109XCJhc3BlY3RSYXRpbygpXCJcclxuICAgICAgICAgICAgKGltYWdlTG9hZGVkKT1cImltYWdlTG9hZGVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAoY3JvcHBlclJlYWR5KT1cImNyb3BwZXJSZWFkeSgpXCJcclxuICAgICAgICAgICAgKGxvYWRJbWFnZUZhaWxlZCk9XCJsb2FkSW1hZ2VGYWlsZWQoKVwiXHJcbiAgICAgICAgICAgIFtyb3VuZENyb3BwZXJdPVwidGhpcy5fdmFyaWF2aWVzRGlhbG9nKCk/LmluZENpcmNsZVwiXHJcbiAgICAgICAgICAgIFttYWludGFpbkFzcGVjdFJhdGlvXT1cIl92YXJpYXZpZXNEaWFsb2coKT8ubWFpbnRhaW5Bc3BlY3RSYXRpb1wiXHJcbiAgICAgICAgICAgIFtpbWFnZVF1YWxpdHldPVwicXVhbGl0eVwiXHJcbiAgICAgICAgICAgIFtiYWNrZ3JvdW5kQ29sb3JdPVwiJ3doaXRlJ1wiXHJcbiAgICAgICAgICAgIGZvcm1hdD1cImpwZWdcIlxyXG4gICAgICAgICAgICBvdXRwdXQ9J2Jhc2U2NCdcclxuICAgICAgICAgICAgYWxpZ25JbWFnZT1cImNlbnRlclwiXHJcbiAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8a3YtYnV0dG9uIGxhYmVsPVwiQ2FuY2VsYXJcIiBzZXZlcml0eT1cInRlcnRpYXJ5XCIgaWNvbj1cImNsb3NlXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+PC9rdi1idXR0b24+XHJcbiAgICAgICAgICA8a3YtYnV0dG9uIGxhYmVsPVwiUmVjb3J0YXJcIiBzZXZlcml0eT1cInByaW1hcnlcIiBpY29uPVwiY3JvcFwiIChjbGljayk9XCJjcm9wSW1hZ2UoKVwiIGNsYXNzPVwibWwtMlwiPjwva3YtYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcblxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBpIHtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuYm90YW8tYWx0ZXJhci1mb3RvIHtcclxuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xyXG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDI1NDI7XHJcbiAgICAgIGNvbG9yOiBibGFjaztcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgcGFkZGluZzogN3B4IDlweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJvdGFvLWFsdGVyYXItZm90byBpIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5ib3Rhby1leGNsdWlyLWZvdG8ge1xyXG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjU0MjtcclxuICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBwYWRkaW5nOiA3cHggOXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuYm90YW8tZXhjbHVpci1mb3RvIGkge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJ0biB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA4NyU7XHJcbiAgICAgIGxlZnQ6IDg3JTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICBoZWlnaHQ6IDYwdmg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcclxuICAgICAgbWFyZ2luOiAxJSBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICB3aWR0aDogODAlO1xyXG4gICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuY3JvcC1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmNyb3AtY2FudmFzIHtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2QxZDVkYjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmNyb3AtYm9yZGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3JkZXI6IDJweCBkYXNoZWQgIzljYTNhZjtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC56b29tLWNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJ1dHRvbi1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBcclxuICAgIFxyXG4gICAgICBgXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIERpYWxvZ01vZHVsZSxcclxuICAgIEt2TW9kYWxNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBLdkJ1dHRvbk1vZHVsZSxcclxuICAgIEt2TGFiZWxNb2R1bGUsXHJcbiAgICBJbWFnZUNyb3BwZXJDb21wb25lbnRcclxuICBdXHJcbn0pXHJcblxyXG5jbGFzcyBTaW1wbGVDb21wb25lbnQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHJpdmF0ZSBkeW5hbWljRGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnKSB7fVxyXG4gIGltYWdlQ2hhbmdlZEV2ZW50OiBFdmVudCB8IG51bGwgPSBudWxsO1xyXG4gIGNyb3BwZWRJbWFnZTogU2FmZVVybCAgPSAnJztcclxuICBcclxuICBxdWFsaXR5OiBudW1iZXIgPSB0aGlzLmR5bmFtaWNEaWFsb2dDb25maWcuZGF0YS5pZC5xdWFsaXR5O1xyXG4gICAgXHJcbiAgICBmaWxlQ2hhbmdlRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAgIHRoaXMuaW1hZ2VDaGFuZ2VkRXZlbnQgPSBldmVudDtcclxuICAgIH1cclxuICAgIGltYWdlQ3JvcHBlZChldmVudDogSW1hZ2VDcm9wcGVkRXZlbnQpIHtcclxuICAgICAgdGhpcy5jcm9wcGVkSW1hZ2UgPSBldmVudC5iYXNlNjQhO1xyXG4gICAgfVxyXG4gICAgaW1hZ2VMb2FkZWQoaW1hZ2U6IExvYWRlZEltYWdlKSB7fVxyXG4gICAgY3JvcHBlclJlYWR5KCkge31cclxuICAgIGxvYWRJbWFnZUZhaWxlZCgpIHt9XHJcblxyXG5cclxuXHJcbiAgLy8jcmVnaW9uIFZhcmnDoXZlaXMgZGUgY29udHJvbGVcclxuICAgIF92YXJpYXZpZXNEaWFsb2cgPSBzaWduYWw8eyBpbWFnZW06IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGluZENpcmNsZTogYm9vbGVhbiwgbWFpbnRhaW5Bc3BlY3RSYXRpbzpib29sZWFuIH18bnVsbD4obnVsbClcclxuICAgIHByaXZhdGUgZGlhbG9nSW5zdGFuY2UhOkR5bmFtaWNEaWFsb2dDb21wb25lbnQ7XHJcbiAgICBhc3BlY3RSYXRpbyA9IHNpZ25hbDxhbnk+KDEvMSlcclxuICAvLyNlbmRyZWdpb25cclxuXHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVjdXBlcmFyVmFyaWF2aWVzRGlhbG9nKClcclxuICAgIHRoaXMucmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKVxyXG4gICAgdGhpcy5zZXRBc3BlY3RSYXRpbygpXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHNldEFzcGVjdFJhdGlvKHdpZHRoOiBudW1iZXIgPSB0aGlzLl92YXJpYXZpZXNEaWFsb2coKT8ud2lkdGghLCBoZWlnaHQ6IG51bWJlciA9IHRoaXMuX3Zhcmlhdmllc0RpYWxvZygpPy5oZWlnaHQhKSB7XHJcbiAgICBjb25zdCBnY2QgPSAoYTogbnVtYmVyLCBiOiBudW1iZXIpOiBudW1iZXIgPT4gKGIgPT09IDAgPyBhIDogZ2NkKGIsIGEgJSBiKSk7XHJcbiAgICBjb25zdCBkaXZpc29yID0gZ2NkKHdpZHRoLCBoZWlnaHQpO1xyXG4gICAgY29uc3QgYXNwZWN0V2lkdGggPSB3aWR0aCAvIGRpdmlzb3I7XHJcbiAgICBjb25zdCBhc3BlY3RIZWlnaHQgPSBoZWlnaHQgLyBkaXZpc29yO1xyXG4gICAgdGhpcy5hc3BlY3RSYXRpby5zZXQoYXNwZWN0V2lkdGgvYXNwZWN0SGVpZ2h0KVxyXG5cclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBNw6l0b2RvcyBkZSByZWN1cGVyYcOnw6NvIGRlIGRhZG9zXHJcbiAgcmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKTogRHluYW1pY0RpYWxvZ0NvbXBvbmVudCB7XHJcbiAgICBjb25zdCBhcnI6IE1hcDxEeW5hbWljRGlhbG9nUmVmPGFueT4sIENvbXBvbmVudFJlZjxhbnk+PiA9IHRoaXMuZGlhbG9nU2VydmljZS5kaWFsb2dDb21wb25lbnRSZWZNYXBcclxuICAgIGNvbnN0IGVudHJpZXMgPSBhcnIuZW50cmllcygpO1xyXG4gICAgY29uc3QgZmlyc3RFbnRyeSA9IGVudHJpZXMubmV4dCgpLnZhbHVlO1xyXG4gICAgY29uc3QgW2ZpcnN0S2V5LCBmaXJzdFZhbHVlXSA9IGZpcnN0RW50cnkhO1xyXG4gICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0SW5zdGFuY2UoZmlyc3RLZXkpXHJcbiAgICB0aGlzLmRpYWxvZ0luc3RhbmNlID0gaW5zdGFuY2VcclxuICAgIHJldHVybiBpbnN0YW5jZVxyXG4gIH1cclxuXHJcbiAgcmVjdXBlcmFyVmFyaWF2aWVzRGlhbG9nKCk6IHZvaWR7XHJcbiAgICB0aGlzLl92YXJpYXZpZXNEaWFsb2cuc2V0KHRoaXMucmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKS5kYXRhLmlkKVxyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcblxyXG4gIC8vI3JlZ2lvbiBNw6l0b2RvcyBkZSBjb3J0ZSBlIGZlY2hhbWVudG8gZG8gbW9kYWxcclxuICBjcm9wSW1hZ2UoKSB7XHJcbiAgICAgICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2Nyb3BJbWFnZScsIHsgZGV0YWlsOiB7XHJcbiAgICAgICAgICAgIHJlc3VsdDogdGhpcy5jcm9wcGVkSW1hZ2UsXHJcbiAgICAgICAgICAgIHN0YXR1czogdHJ1ZVxyXG4gICAgICAgICAgfSB9KSk7XHJcbiAgICAgICAgICB0aGlzLmNsb3NlQ3JvcE1vZGFsKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZUNyb3BNb2RhbCgpIHtcclxuICAgIHRoaXMuZGlhbG9nSW5zdGFuY2UuY2xvc2UoKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbCgpe1xyXG4gICAgd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjcm9wSW1hZ2UnLCB7IGRldGFpbDp7XHJcbiAgICAgIHJlc3VsdDogUHJvbWlzZS5yZXNvbHZlKCdjYW5jZWwnKSxcclxuICAgICAgc3RhdHVzOiBmYWxzZVxyXG4gICAgfSB9KSk7XHJcblxyXG4gICAgdGhpcy5jbG9zZUNyb3BNb2RhbCgpXHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxufVxyXG4iXX0=
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY3V0dGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvYXBpL3NlcnZpY2VzL2ltYWdlLmN1dHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBcUIscUJBQXFCLEVBQWUsTUFBTSxtQkFBbUIsQ0FBQztBQXlDMUYsd0NBQXdDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7O0FBNUM3RSxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLFlBQTZCLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUU3RCxHQUFHLENBQUMsV0FBbUIsRUFBRSxLQUFhLEVBQUUsTUFBYyxFQUFFLFlBQXFCLEtBQUssRUFBRSxNQUFnQixFQUFFLHNCQUErQixJQUFJO1FBQ3ZJLE1BQU0sU0FBUyxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDakYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUM3QyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ2xELElBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksSUFBSSxFQUFHLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMvQixDQUFDO3FCQUFJLENBQUM7b0JBQ0osTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7Z0JBQ2hDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBQyxTQUFrSCxFQUFFLE1BQWdCO1FBQzdJLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQTtRQUNqQixJQUFHLE1BQU0sRUFBRSxDQUFDO1lBQ1YsT0FBTyxHQUFHLEVBQUUsQ0FBQTtRQUNkLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBUztZQUNuQixRQUFRLEVBQUUsSUFBSTtZQUNkLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLEtBQUssRUFBRSxJQUFJO1lBQ1gsS0FBSyxFQUFFLE1BQU07WUFDYixNQUFNLEVBQUUsUUFBUTtZQUNoQixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTtZQUM3TCxVQUFVLEVBQUUsT0FBTztTQUNwQixDQUFBO1FBQ0QsTUFBTSxTQUFTLEdBQXFCLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsR0FBRSxFQUFFLEdBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xILENBQUM7K0dBakNVLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBRE4sTUFBTTs7NEZBQ2xCLGtCQUFrQjtrQkFEOUIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7O0FBZ0RoQyxNQXdKTSxlQUFlO0lBRW5CLFlBQW9CLGdCQUFrQyxFQUFtQixhQUE0QixFQUFVLG1CQUF3QztRQUFuSSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQW1CLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN2SixzQkFBaUIsR0FBaUIsSUFBSSxDQUFDO1FBQ3ZDLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBRTVCLFlBQU8sR0FBVyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUM7UUFjM0QsK0JBQStCO1FBQzdCLHFCQUFnQixHQUFHLE1BQU0sQ0FBMEcsSUFBSSxDQUFDLENBQUE7UUFFeEksZ0JBQVcsR0FBRyxNQUFNLENBQU0sQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFBO0lBckIwSCxDQUFDO0lBTXpKLGVBQWUsQ0FBQyxLQUFZO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUNELFlBQVksQ0FBQyxLQUF3QjtRQUNuQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxNQUFPLENBQUM7SUFDcEMsQ0FBQztJQUNELFdBQVcsQ0FBQyxLQUFrQixJQUFHLENBQUM7SUFDbEMsWUFBWSxLQUFJLENBQUM7SUFDakIsZUFBZSxLQUFJLENBQUM7SUFRdEIsWUFBWTtJQUdaLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQTtRQUMvQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQTtRQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDdkIsQ0FBQztJQUlELGNBQWMsQ0FBQyxRQUFnQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxLQUFNLEVBQUUsU0FBaUIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTztRQUMvRyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVFLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsTUFBTSxXQUFXLEdBQUcsS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUNwQyxNQUFNLFlBQVksR0FBRyxNQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFdBQVcsR0FBQyxZQUFZLENBQUMsQ0FBQTtJQUVoRCxDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLHVCQUF1QjtRQUNyQixNQUFNLEdBQUcsR0FBa0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQTtRQUNuRyxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDOUIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQztRQUN4QyxNQUFNLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxHQUFHLFVBQVcsQ0FBQztRQUMzQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN6RCxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQTtRQUM5QixPQUFPLFFBQVEsQ0FBQTtJQUNqQixDQUFDO0lBRUQsd0JBQXdCO1FBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ25FLENBQUM7SUFDRCxZQUFZO0lBR1osZ0RBQWdEO0lBQ2hELFNBQVM7UUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRTtnQkFDMUQsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUN6QixNQUFNLEVBQUUsSUFBSTthQUNiLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDTixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUM7Z0JBQ3pELE1BQU0sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztnQkFDakMsTUFBTSxFQUFFLEtBQUs7YUFDZCxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRU4sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3ZCLENBQUM7K0dBakZHLGVBQWU7bUdBQWYsZUFBZSxnRkF0SlQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0QlQsa3lDQStHQyxZQUFZLDhCQUNaLFlBQVksOEJBQ1osYUFBYSw4QkFDYixXQUFXLDhCQUNYLG1CQUFtQiw4QkFDbkIsY0FBYyxzUkFDZCxhQUFhLCtCQUNiLHFCQUFxQjs7NEZBSW5CLGVBQWU7a0JBeEpwQixTQUFTOytCQUNFLHNCQUFzQixZQUN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCVCxjQTZHVyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixxQkFBcUI7cUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlLCBEeW5hbWljRGlhbG9nQ29tcG9uZW50LCBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcclxuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kaWFsb2cnO1xyXG5pbXBvcnQgeyBJbWFnZUNyb3BwZWRFdmVudCwgSW1hZ2VDcm9wcGVyQ29tcG9uZW50LCBMb2FkZWRJbWFnZSB9IGZyb20gJ25neC1pbWFnZS1jcm9wcGVyJztcclxuXHJcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxyXG5leHBvcnQgY2xhc3MgSW1hZ2VDdXR0ZXJTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkaWFsb2dzZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlKSB7fVxyXG5cclxuICBjdXQoaW1hZ2VCYXNlNjQ6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGluZENpcmNsZTogYm9vbGVhbiA9IGZhbHNlLCBhdmF0YXI/OiBib29sZWFuLCBtYWludGFpbkFzcGVjdFJhdGlvOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBjb25zdCBjdXRDb25maWcgPSB7IGltYWdlQmFzZTY0LCB3aWR0aCwgaGVpZ2h0LCBpbmRDaXJjbGUsIG1haW50YWluQXNwZWN0UmF0aW8gfTtcclxuICAgIHRoaXMuYWJyaXJNb2RhbChjdXRDb25maWcsIGF2YXRhcik7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjcm9wSW1hZ2UnLCAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmKGV2ZW50LmRldGFpbC5zdGF0dXMgPT0gdHJ1ZSApIHtcclxuICAgICAgICAgIHJlc29sdmUoZXZlbnQuZGV0YWlsLnJlc3VsdCk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICByZWplY3QoJ09wZXJhY2FvIGNhbmNlbGFkYS4nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhYnJpck1vZGFsKGN1dENvbmZpZzogeyBpbWFnZUJhc2U2NDogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgaW5kQ2lyY2xlOiBib29sZWFuLCBtYWludGFpbkFzcGVjdFJhdGlvOiBib29sZWFufSwgYXZhdGFyPzogYm9vbGVhbikge1xyXG4gICAgbGV0IHF1YWxpdHkgPSAxMDBcclxuICAgIGlmKGF2YXRhcikge1xyXG4gICAgICBxdWFsaXR5ID0gODBcclxuICAgIH1cclxuICAgIGNvbnN0IHBhcmFtcyA9ICAgICAgIHtcclxuICAgICAgY2xvc2FibGU6IHRydWUsXHJcbiAgICAgIG1heGltaXphYmxlOiBmYWxzZSxcclxuICAgICAgcG9wdXA6IHRydWUsXHJcbiAgICAgIHdpZHRoOiAnNzV2dycsXHJcbiAgICAgIGhlYWRlcjogYENvcnRhcmAgLFxyXG4gICAgICBpZDogeyBpbWFnZW06IGN1dENvbmZpZy5pbWFnZUJhc2U2NCwgd2lkdGg6IGN1dENvbmZpZy53aWR0aCwgaGVpZ2h0OiBjdXRDb25maWcuaGVpZ2h0LCBpbmRDaXJjbGU6IGN1dENvbmZpZy5pbmRDaXJjbGUsIHF1YWxpdHk6IHF1YWxpdHksIG1haW50YWluQXNwZWN0UmF0aW86IGN1dENvbmZpZy5tYWludGFpbkFzcGVjdFJhdGlvIH0sXHJcbiAgICAgIHN0eWxlQ2xhc3M6ICdtb2RhbCcsXHJcbiAgICB9XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYgPSBGb3JtU2VydmljZS5vcGVuRGlhbG9nKHRoaXMuZGlhbG9nc2VydmljZSwgU2ltcGxlQ29tcG9uZW50LCAoKT0+e30sIHBhcmFtcyk7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID8gQ29tcG9uZW50ZSBkZSBtb2RhbCB1c2FkbyBubyBjdXR0ZXJcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEt2TGFiZWxNb2R1bGUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2t2LWxhYmVsL2t2LWxhYmVsLm1vZHVsZSc7XHJcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi9mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBLdk1vZGFsTW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9rdi1tb2RhbC9rdi1tb2RhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdkJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMva3YtYnV0dG9uL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXNpbXBsZS1jb21wb25lbnQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XHJcblxyXG4gICAgICAgICAgPGltYWdlLWNyb3BwZXJcclxuICAgICAgICAgICAgW2ltYWdlQmFzZTY0XT1cIl92YXJpYXZpZXNEaWFsb2coKT8uaW1hZ2VtXCJcclxuICAgICAgICAgICAgKGltYWdlQ3JvcHBlZCk9XCJpbWFnZUNyb3BwZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFthc3BlY3RSYXRpb109XCJhc3BlY3RSYXRpbygpXCJcclxuICAgICAgICAgICAgKGltYWdlTG9hZGVkKT1cImltYWdlTG9hZGVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAoY3JvcHBlclJlYWR5KT1cImNyb3BwZXJSZWFkeSgpXCJcclxuICAgICAgICAgICAgKGxvYWRJbWFnZUZhaWxlZCk9XCJsb2FkSW1hZ2VGYWlsZWQoKVwiXHJcbiAgICAgICAgICAgIFtyb3VuZENyb3BwZXJdPVwidGhpcy5fdmFyaWF2aWVzRGlhbG9nKCk/LmluZENpcmNsZVwiXHJcbiAgICAgICAgICAgIFttYWludGFpbkFzcGVjdFJhdGlvXT1cIl92YXJpYXZpZXNEaWFsb2coKT8ubWFpbnRhaW5Bc3BlY3RSYXRpb1wiXHJcbiAgICAgICAgICAgIFtpbWFnZVF1YWxpdHldPVwicXVhbGl0eVwiXHJcbiAgICAgICAgICAgIFtiYWNrZ3JvdW5kQ29sb3JdPVwiJ3doaXRlJ1wiXHJcbiAgICAgICAgICAgIGZvcm1hdD1cImpwZWdcIlxyXG4gICAgICAgICAgICBvdXRwdXQ9J2Jhc2U2NCdcclxuICAgICAgICAgICAgYWxpZ25JbWFnZT1cImNlbnRlclwiXHJcbiAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8a3YtYnV0dG9uIGxhYmVsPVwiQ2FuY2VsYXJcIiBzZXZlcml0eT1cInRlcnRpYXJ5XCIgaWNvbj1cImNsb3NlXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+PC9rdi1idXR0b24+XHJcbiAgICAgICAgICA8a3YtYnV0dG9uIGxhYmVsPVwiUmVjb3J0YXJcIiBzZXZlcml0eT1cInByaW1hcnlcIiBpY29uPVwiY3JvcFwiIChjbGljayk9XCJjcm9wSW1hZ2UoKVwiIGNsYXNzPVwibWwtMlwiPjwva3YtYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcblxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBpIHtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuYm90YW8tYWx0ZXJhci1mb3RvIHtcclxuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xyXG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDI1NDI7XHJcbiAgICAgIGNvbG9yOiBibGFjaztcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgcGFkZGluZzogN3B4IDlweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJvdGFvLWFsdGVyYXItZm90byBpIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5ib3Rhby1leGNsdWlyLWZvdG8ge1xyXG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjU0MjtcclxuICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBwYWRkaW5nOiA3cHggOXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuYm90YW8tZXhjbHVpci1mb3RvIGkge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJ0biB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA4NyU7XHJcbiAgICAgIGxlZnQ6IDg3JTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICBoZWlnaHQ6IDYwdmg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcclxuICAgICAgbWFyZ2luOiAxJSBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICB3aWR0aDogODAlO1xyXG4gICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuY3JvcC1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmNyb3AtY2FudmFzIHtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2QxZDVkYjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmNyb3AtYm9yZGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3JkZXI6IDJweCBkYXNoZWQgIzljYTNhZjtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC56b29tLWNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmJ1dHRvbi1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBcclxuICAgIFxyXG4gICAgICBgXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIERpYWxvZ01vZHVsZSxcclxuICAgIEt2TW9kYWxNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBLdkJ1dHRvbk1vZHVsZSxcclxuICAgIEt2TGFiZWxNb2R1bGUsXHJcbiAgICBJbWFnZUNyb3BwZXJDb21wb25lbnRcclxuICBdXHJcbn0pXHJcblxyXG5jbGFzcyBTaW1wbGVDb21wb25lbnQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHJpdmF0ZSBkeW5hbWljRGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnKSB7fVxyXG4gIGltYWdlQ2hhbmdlZEV2ZW50OiBFdmVudCB8IG51bGwgPSBudWxsO1xyXG4gIGNyb3BwZWRJbWFnZTogU2FmZVVybCAgPSAnJztcclxuICBcclxuICBxdWFsaXR5OiBudW1iZXIgPSB0aGlzLmR5bmFtaWNEaWFsb2dDb25maWcuZGF0YS5pZC5xdWFsaXR5O1xyXG4gICAgXHJcbiAgICBmaWxlQ2hhbmdlRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAgIHRoaXMuaW1hZ2VDaGFuZ2VkRXZlbnQgPSBldmVudDtcclxuICAgIH1cclxuICAgIGltYWdlQ3JvcHBlZChldmVudDogSW1hZ2VDcm9wcGVkRXZlbnQpIHtcclxuICAgICAgdGhpcy5jcm9wcGVkSW1hZ2UgPSBldmVudC5iYXNlNjQhO1xyXG4gICAgfVxyXG4gICAgaW1hZ2VMb2FkZWQoaW1hZ2U6IExvYWRlZEltYWdlKSB7fVxyXG4gICAgY3JvcHBlclJlYWR5KCkge31cclxuICAgIGxvYWRJbWFnZUZhaWxlZCgpIHt9XHJcblxyXG5cclxuXHJcbiAgLy8jcmVnaW9uIFZhcmnDoXZlaXMgZGUgY29udHJvbGVcclxuICAgIF92YXJpYXZpZXNEaWFsb2cgPSBzaWduYWw8eyBpbWFnZW06IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGluZENpcmNsZTogYm9vbGVhbiwgbWFpbnRhaW5Bc3BlY3RSYXRpbzpib29sZWFuIH18bnVsbD4obnVsbClcclxuICAgIHByaXZhdGUgZGlhbG9nSW5zdGFuY2UhOkR5bmFtaWNEaWFsb2dDb21wb25lbnQ7XHJcbiAgICBhc3BlY3RSYXRpbyA9IHNpZ25hbDxhbnk+KDEvMSlcclxuICAvLyNlbmRyZWdpb25cclxuXHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVjdXBlcmFyVmFyaWF2aWVzRGlhbG9nKClcclxuICAgIHRoaXMucmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKVxyXG4gICAgdGhpcy5zZXRBc3BlY3RSYXRpbygpXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHNldEFzcGVjdFJhdGlvKHdpZHRoOiBudW1iZXIgPSB0aGlzLl92YXJpYXZpZXNEaWFsb2coKT8ud2lkdGghLCBoZWlnaHQ6IG51bWJlciA9IHRoaXMuX3Zhcmlhdmllc0RpYWxvZygpPy5oZWlnaHQhKSB7XHJcbiAgICBjb25zdCBnY2QgPSAoYTogbnVtYmVyLCBiOiBudW1iZXIpOiBudW1iZXIgPT4gKGIgPT09IDAgPyBhIDogZ2NkKGIsIGEgJSBiKSk7XHJcbiAgICBjb25zdCBkaXZpc29yID0gZ2NkKHdpZHRoLCBoZWlnaHQpO1xyXG4gICAgY29uc3QgYXNwZWN0V2lkdGggPSB3aWR0aCAvIGRpdmlzb3I7XHJcbiAgICBjb25zdCBhc3BlY3RIZWlnaHQgPSBoZWlnaHQgLyBkaXZpc29yO1xyXG4gICAgdGhpcy5hc3BlY3RSYXRpby5zZXQoYXNwZWN0V2lkdGgvYXNwZWN0SGVpZ2h0KVxyXG5cclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBNw6l0b2RvcyBkZSByZWN1cGVyYcOnw6NvIGRlIGRhZG9zXHJcbiAgcmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKTogRHluYW1pY0RpYWxvZ0NvbXBvbmVudCB7XHJcbiAgICBjb25zdCBhcnI6IE1hcDxEeW5hbWljRGlhbG9nUmVmPGFueT4sIENvbXBvbmVudFJlZjxhbnk+PiA9IHRoaXMuZGlhbG9nU2VydmljZS5kaWFsb2dDb21wb25lbnRSZWZNYXBcclxuICAgIGNvbnN0IGVudHJpZXMgPSBhcnIuZW50cmllcygpO1xyXG4gICAgY29uc3QgZmlyc3RFbnRyeSA9IGVudHJpZXMubmV4dCgpLnZhbHVlO1xyXG4gICAgY29uc3QgW2ZpcnN0S2V5LCBmaXJzdFZhbHVlXSA9IGZpcnN0RW50cnkhO1xyXG4gICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0SW5zdGFuY2UoZmlyc3RLZXkpXHJcbiAgICB0aGlzLmRpYWxvZ0luc3RhbmNlID0gaW5zdGFuY2VcclxuICAgIHJldHVybiBpbnN0YW5jZVxyXG4gIH1cclxuXHJcbiAgcmVjdXBlcmFyVmFyaWF2aWVzRGlhbG9nKCk6IHZvaWR7XHJcbiAgICB0aGlzLl92YXJpYXZpZXNEaWFsb2cuc2V0KHRoaXMucmVjdXBlcmFJbnN0YW5jaWFEaWFsb2coKS5kYXRhLmlkKVxyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcblxyXG4gIC8vI3JlZ2lvbiBNw6l0b2RvcyBkZSBjb3J0ZSBlIGZlY2hhbWVudG8gZG8gbW9kYWxcclxuICBjcm9wSW1hZ2UoKSB7XHJcbiAgICAgICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2Nyb3BJbWFnZScsIHsgZGV0YWlsOiB7XHJcbiAgICAgICAgICAgIHJlc3VsdDogdGhpcy5jcm9wcGVkSW1hZ2UsXHJcbiAgICAgICAgICAgIHN0YXR1czogdHJ1ZVxyXG4gICAgICAgICAgfSB9KSk7XHJcbiAgICAgICAgICB0aGlzLmNsb3NlQ3JvcE1vZGFsKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZUNyb3BNb2RhbCgpIHtcclxuICAgIHRoaXMuZGlhbG9nSW5zdGFuY2UuY2xvc2UoKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbCgpe1xyXG4gICAgd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjcm9wSW1hZ2UnLCB7IGRldGFpbDp7XHJcbiAgICAgIHJlc3VsdDogUHJvbWlzZS5yZXNvbHZlKCdjYW5jZWwnKSxcclxuICAgICAgc3RhdHVzOiBmYWxzZVxyXG4gICAgfSB9KSk7XHJcblxyXG4gICAgdGhpcy5jbG9zZUNyb3BNb2RhbCgpXHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxufVxyXG4iXX0=