@ifsworld/granite-components 13.4.2 → 13.5.0

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 (114) hide show
  1. package/esm2022/date-picker/lib/date-picker-base.mjs +4 -4
  2. package/esm2022/date-picker/lib/date-picker-trigger-for.directive.mjs +4 -4
  3. package/esm2022/date-picker/lib/date-picker.component.mjs +5 -5
  4. package/esm2022/date-picker/lib/date-picker.module.mjs +5 -5
  5. package/esm2022/date-picker/lib/date-range-picker.component.mjs +5 -5
  6. package/esm2022/lib/arrange-grid/arrange-grid-item.component.mjs +4 -4
  7. package/esm2022/lib/arrange-grid/arrange-grid.component.mjs +4 -4
  8. package/esm2022/lib/arrange-grid/arrange-grid.module.mjs +5 -5
  9. package/esm2022/lib/avatar/avatar-default-status/avatar-default-status.component.mjs +5 -5
  10. package/esm2022/lib/avatar/avatar.component.mjs +20 -8
  11. package/esm2022/lib/avatar/avatar.module.mjs +5 -5
  12. package/esm2022/lib/avatar/custom-avatar-status.directive.mjs +4 -4
  13. package/esm2022/lib/avatar/empty-avatar/empty-avatar.component.mjs +14 -8
  14. package/esm2022/lib/badge/badge.component.mjs +5 -5
  15. package/esm2022/lib/badge/badge.module.mjs +5 -5
  16. package/esm2022/lib/button/button.component.mjs +9 -9
  17. package/esm2022/lib/button/button.module.mjs +5 -5
  18. package/esm2022/lib/card-list/card/card-avatar.component.mjs +4 -4
  19. package/esm2022/lib/card-list/card/card-content/card-actions.component.mjs +5 -5
  20. package/esm2022/lib/card-list/card/card-content/card-body.component.mjs +5 -5
  21. package/esm2022/lib/card-list/card/card-content/card-content.component.mjs +5 -5
  22. package/esm2022/lib/card-list/card/card-content/card-footer.component.mjs +5 -5
  23. package/esm2022/lib/card-list/card/card-content/card-header-subtitle.component.mjs +5 -5
  24. package/esm2022/lib/card-list/card/card-content/card-header-title.component.mjs +4 -4
  25. package/esm2022/lib/card-list/card/card-content/card-header.component.mjs +5 -5
  26. package/esm2022/lib/card-list/card/card.component.mjs +5 -5
  27. package/esm2022/lib/card-list/card-list.component.mjs +5 -5
  28. package/esm2022/lib/card-list/card-list.module.mjs +5 -5
  29. package/esm2022/lib/checkbox/checkbox-group.component.mjs +5 -5
  30. package/esm2022/lib/checkbox/checkbox.component.mjs +5 -5
  31. package/esm2022/lib/checkbox/checkbox.module.mjs +5 -5
  32. package/esm2022/lib/chips/chip-input.mjs +4 -4
  33. package/esm2022/lib/chips/chip-list.component.mjs +5 -5
  34. package/esm2022/lib/chips/chip.component.mjs +5 -5
  35. package/esm2022/lib/chips/chips.module.mjs +5 -5
  36. package/esm2022/lib/collapsible-group/collapsible-group-body.directive.mjs +4 -4
  37. package/esm2022/lib/collapsible-group/collapsible-group-header.directive.mjs +4 -4
  38. package/esm2022/lib/collapsible-group/collapsible-group.component.mjs +5 -5
  39. package/esm2022/lib/collapsible-group/collapsible-group.module.mjs +5 -5
  40. package/esm2022/lib/contacts/contact-item/contact-item.component.mjs +5 -5
  41. package/esm2022/lib/contacts/contact-item-default-status/contact-item-default-status.component.mjs +4 -4
  42. package/esm2022/lib/contacts/contact-item-title/contact-item-title.component.mjs +4 -4
  43. package/esm2022/lib/contacts/contacts-profile/contacts-profile.component.mjs +5 -5
  44. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-data.mjs +4 -4
  45. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-for.directive.mjs +4 -4
  46. package/esm2022/lib/contacts/contacts.component.mjs +5 -5
  47. package/esm2022/lib/contacts/contacts.module.mjs +5 -5
  48. package/esm2022/lib/contacts/custom-profile.directive.mjs +4 -4
  49. package/esm2022/lib/contacts/custom-status.directive.mjs +4 -4
  50. package/esm2022/lib/core/common-behaviors/disabled.mjs +4 -4
  51. package/esm2022/lib/core/core.module.mjs +5 -5
  52. package/esm2022/lib/core/devices/client-input-desktop.directive.mjs +4 -4
  53. package/esm2022/lib/core/devices/client-input-touch.directive.mjs +4 -4
  54. package/esm2022/lib/core/devices/client-output-desktop.directive.mjs +4 -4
  55. package/esm2022/lib/core/devices/client-output-touch.directive.mjs +4 -4
  56. package/esm2022/lib/core/hide-on-overflow.directive.mjs +4 -4
  57. package/esm2022/lib/core/overlay-base.mjs +4 -4
  58. package/esm2022/lib/core/overlay-trigger-for-base.directive.mjs +4 -4
  59. package/esm2022/lib/core/overlay.service.mjs +4 -4
  60. package/esm2022/lib/core/pipes/pure-pipes.module.mjs +5 -5
  61. package/esm2022/lib/core/pipes/title.pipe.mjs +4 -4
  62. package/esm2022/lib/core/radio-checkbox-base.mjs +4 -4
  63. package/esm2022/lib/file-upload/directives/file-drag-and-drop.directive.mjs +4 -4
  64. package/esm2022/lib/file-upload/file-upload.component.mjs +4 -4
  65. package/esm2022/lib/file-upload/file-upload.module.mjs +5 -5
  66. package/esm2022/lib/grid/grid.component.mjs +7 -7
  67. package/esm2022/lib/grid/grid.module.mjs +5 -5
  68. package/esm2022/lib/icon/icon.component.mjs +4 -4
  69. package/esm2022/lib/icon/icon.module.mjs +5 -5
  70. package/esm2022/lib/input-field/input-field.component.mjs +5 -5
  71. package/esm2022/lib/input-field/input-field.module.mjs +5 -5
  72. package/esm2022/lib/label/label.component.mjs +4 -4
  73. package/esm2022/lib/label/label.module.mjs +5 -5
  74. package/esm2022/lib/menu/divider.directive.mjs +4 -4
  75. package/esm2022/lib/menu/menu-base.mjs +4 -6
  76. package/esm2022/lib/menu/menu-item.component.mjs +6 -8
  77. package/esm2022/lib/menu/menu-touch-close.component.mjs +5 -5
  78. package/esm2022/lib/menu/menu-touch-title.component.mjs +6 -6
  79. package/esm2022/lib/menu/menu-trigger-for.directive.mjs +4 -7
  80. package/esm2022/lib/menu/menu.component.mjs +4 -4
  81. package/esm2022/lib/menu/menu.module.mjs +5 -5
  82. package/esm2022/lib/menu/title.directive.mjs +4 -4
  83. package/esm2022/lib/progress-bar/progress-bar-legend/progress-bar-legend.component.mjs +5 -5
  84. package/esm2022/lib/progress-bar/progress-bar-legend-base.mjs +4 -4
  85. package/esm2022/lib/progress-bar/progress-bar-legend-trigger-for.directive.mjs +4 -4
  86. package/esm2022/lib/progress-bar/progress-bar.component.mjs +4 -4
  87. package/esm2022/lib/progress-bar/progress-bar.module.mjs +5 -5
  88. package/esm2022/lib/radio-button/radio-button.component.mjs +5 -5
  89. package/esm2022/lib/radio-button/radio-button.module.mjs +5 -5
  90. package/esm2022/lib/radio-button/radio-group.component.mjs +5 -5
  91. package/esm2022/lib/toggle-switch/toggle-switch.component.mjs +5 -5
  92. package/esm2022/lib/toggle-switch/toggle-switch.module.mjs +5 -5
  93. package/esm2022/table/lib/cell/cell-align/cell-align-classes.directive.mjs +4 -4
  94. package/esm2022/table/lib/cell/cell.mjs +4 -4
  95. package/esm2022/table/lib/cell/table-data-cell.component.mjs +4 -4
  96. package/esm2022/table/lib/cell/table-header-cell.component.mjs +4 -4
  97. package/esm2022/table/lib/column/table-column.directive.mjs +4 -4
  98. package/esm2022/table/lib/column-size/column-size.directive.mjs +4 -4
  99. package/esm2022/table/lib/table.component.mjs +4 -4
  100. package/esm2022/table/lib/table.module.mjs +5 -5
  101. package/esm2022/tooltip/lib/tooltip-trigger-for.directive.mjs +4 -4
  102. package/esm2022/tooltip/lib/tooltip.component.mjs +4 -4
  103. package/esm2022/tooltip/lib/tooltip.module.mjs +5 -5
  104. package/fesm2022/ifsworld-granite-components-date-picker.mjs +18 -18
  105. package/fesm2022/ifsworld-granite-components-date-picker.mjs.map +1 -1
  106. package/fesm2022/ifsworld-granite-components-table.mjs +25 -25
  107. package/fesm2022/ifsworld-granite-components-table.mjs.map +1 -1
  108. package/fesm2022/ifsworld-granite-components-tooltip.mjs +10 -10
  109. package/fesm2022/ifsworld-granite-components-tooltip.mjs.map +1 -1
  110. package/fesm2022/ifsworld-granite-components.mjs +343 -332
  111. package/fesm2022/ifsworld-granite-components.mjs.map +1 -1
  112. package/lib/avatar/avatar.component.d.ts +3 -1
  113. package/lib/avatar/empty-avatar/empty-avatar.component.d.ts +2 -1
  114. package/package.json +10 -10
@@ -126,10 +126,10 @@ export class GraniteFileUploadComponent {
126
126
  const exp = Math.floor(Math.log(bytes) / Math.log(bytesPerKB));
127
127
  return `${parseFloat((bytes / Math.pow(bytesPerKB, exp)).toFixed(decimalPoints))} ${fileSizes[exp]}`;
128
128
  }
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
130
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: GraniteFileUploadComponent, selector: "granite-file-upload", inputs: { accept: "accept", uploadTitle: "uploadTitle", uploadIcon: "uploadIcon", browseIcon: "browseIcon", dropZoneText: "dropZoneText", browseButtonText: "browseButtonText", dropPlaceholderText: "dropPlaceholderText", dropZoneHint: "dropZoneHint", removeButtonText: "removeButtonText", uploadButtonText: "uploadButtonText", retryButtonText: "retryButtonText", cancelButtonText: "cancelButtonText", uploadStatus: "uploadStatus", autoUpload: "autoUpload" }, outputs: { browseOrDragFiles: "browseOrDragFiles", removeFiles: "removeFiles", filesUpload: "filesUpload", fileUploadValidation: "fileUploadValidation" }, viewQueries: [{ propertyName: "fileDropRef", first: true, predicate: ["fileDropRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload-wrapper\">\n <h2 class=\"file-upload-title\">{{ uploadTitle }}</h2>\n <div\n class=\"file-dropzone\"\n [ngClass]=\"{ 'upload-failed': uploadStatus === FileUploadStatus.Failed }\"\n graniteFileDragAndDrop\n (droppedFiles)=\"onFilesDropHandler($event)\"\n (isFileOver)=\"onFileOverDropzone($event)\"\n (fileUploadValidation)=\"onFileDropError($event)\"\n [multiFileUploadEnabled]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n [currentFiles]=\"selectedFiles\"\n >\n <input\n class=\"file-input\"\n #fileDropRef\n type=\"file\"\n title=\"fileUpload\"\n (change)=\"fileBrowseHandler($event)\"\n [multiple]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n />\n <div class=\"file-upload-body\">\n @if (!isFileOnDropzone && !fileError) {\n <div\n class=\"file-upload-browse\"\n *ngIf=\"previewReadyFiles.length === 0; else filePreview\"\n >\n <granite-icon\n class=\"file-upload-icon\"\n [fontIcon]=\"uploadIcon\"\n ></granite-icon>\n <div class=\"file-selection\">\n <h2 class=\"file-upload-body-text\">{{ dropZoneText }}</h2>\n <button\n class=\"file-select-button\"\n graniteButton\n (click)=\"fileDropRef.click()\"\n >\n <granite-icon\n class=\"browse-button-icon\"\n [fontIcon]=\"browseIcon\"\n ></granite-icon>\n <div class=\"browse-button-text\">{{ browseButtonText }}</div>\n </button>\n </div>\n <p *ngIf=\"dropZoneHint\" class=\"file-upload-hint\">\n {{ dropZoneHint }}\n </p>\n </div>\n <ng-template #filePreview>\n <div\n class=\"file-preview-container\"\n *ngFor=\"let previewFile of previewReadyFiles; let i = index\"\n >\n @if (previewFile?.imageUrl) {\n <a\n class=\"file-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n [href]=\"previewFile?.imageUrl\"\n target=\"_blank\"\n >\n <div class=\"file-preview-holder\">\n <img\n role=\"presentation\"\n [src]=\"previewFile?.imageUrl\"\n [alt]=\"previewFile?.file?.name\"\n />\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.Failed\"\n [ngTemplateOutlet]=\"uploadFailedOverlay\"\n >\n </ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </a>\n } @else {\n <div\n class=\"document-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n >\n <div class=\"document-preview-holder\">\n <granite-icon\n class=\"document-file-preview\"\n [class.upload-failed]=\"\n uploadStatus === FileUploadStatus.Failed\n \"\n [fontIcon]=\"'icon-document-alt'\"\n ></granite-icon>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </div>\n }\n <button\n graniteButton\n *ngIf=\"\n [\n FileUploadStatus.Completed,\n FileUploadStatus.NotStarted\n ].includes(uploadStatus)\n \"\n (click)=\"fileRemoveHandler(i)\"\n >\n {{ removeButtonText }}\n </button>\n </div>\n </ng-template>\n } @else {\n <p class=\"drop-area-placeholder\">\n {{ dropPlaceholderText }}\n </p>\n }\n </div>\n </div>\n <div class=\"file-upload-footer\">\n <div class=\"footer-container\" *ngIf=\"previewReadyFiles.length > 0\">\n <button\n *ngIf=\"!autoUpload && uploadStatus === FileUploadStatus.NotStarted\"\n granitePrimaryButton\n (click)=\"uploadFiles()\"\n >\n {{ uploadButtonText }}\n </button>\n <ng-container *ngIf=\"uploadStatus === FileUploadStatus.Failed\">\n <button graniteButton (click)=\"cancelUpload()\">\n {{ cancelButtonText }}\n </button>\n <button\n class=\"retry-upload-button\"\n granitePrimaryButton\n (click)=\"retryUpload()\"\n >\n {{ retryButtonText }}\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-template #uploadingOverlay>\n <div class=\"file-preview-overlay\"></div>\n <div class=\"loading-container\">\n <div class=\"uploading-spinner\"></div>\n </div>\n</ng-template>\n\n<ng-template #uploadFailedOverlay>\n <div class=\"file-preview-overlay\"></div>\n</ng-template>\n", styles: [":host{width:100%}.file-upload-wrapper{display:flex;flex-direction:column;background-color:var(--granite-color-background);box-shadow:var(--granite-shadow-s);height:100%;width:100%}.file-upload-wrapper .file-upload-title{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-medium);font-weight:var(--granite-font-weight-bold);line-height:var(--granite-line-height-base-rem);color:var(--granite-color-text-weak);margin:0;padding:var(--granite-spacing-8) calc(var(--granite-spacing-16) * .813)}.file-upload-wrapper .file-dropzone{display:flex;flex-direction:column;border-width:var(--granite-border-width-focus);border-style:dashed;border-color:var(--granite-color-background-selected);border-radius:var(--granite-radius-m);margin:var(--granite-spacing-8);height:100%}.file-upload-wrapper .file-dropzone.upload-failed{border-color:var(--granite-color-categorical-4)}.file-upload-wrapper .file-dropzone.file-error{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-failure);border-color:var(--granite-color-state-error);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-error .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone.file-over{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-info);border-color:var(--granite-color-background-active);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-over .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone .file-input{opacity:0;position:absolute;width:0}.file-upload-wrapper .file-dropzone .file-upload-body{display:flex;align-items:center;justify-content:center;height:100%}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse{display:flex;flex-direction:column;gap:var(--granite-spacing-4);justify-content:center;align-items:center;padding:0 var(--granite-spacing-16)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-icon{font-size:var(--granite-font-size-display-small);color:var(--granite-color-text)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection{display:flex;justify-content:space-between;align-items:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-upload-body-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;width:100%;margin-inline-end:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button{display:flex;justify-content:space-between;align-items:center;color:var(--granite-color-text-link);padding-top:calc(var(--granite-spacing-24) / 4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-icon{font-size:var(--granite-font-size-body);color:var(--granite-color-text-link);margin-inline-end:var(--granite-spacing-4);padding:0}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-flowing) / 2);margin-top:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-icon,.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-text{color:var(--granite-color-text-inverse)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-hint{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * 1.125);text-align:center;color:var(--granite-color-text-hint);margin:calc(var(--granite-spacing-base-rem) * .625) 0 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container{display:flex;flex-direction:column;align-items:center;width:100%;max-height:100%;padding:calc(var(--granite-spacing-base-rem) * .375)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-size{text-decoration:underline}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:80px;height:114px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(250%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .file-preview-overlay{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder img{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.2}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder img,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-link);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-link);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:60px;height:60px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview{font-size:calc(var(--granite-font-size-body) * 3);color:var(--granite-color-text-hint);padding:calc(var(--granite-spacing-4) * 3) 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview.upload-failed{color:var(--granite-color-background-failure)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-10%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .document-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .document-file-preview,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-weak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-week);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-upload-footer{margin-inline:var(--granite-spacing-8);margin-bottom:var(--granite-spacing-8)}.file-upload-wrapper .file-upload-footer .footer-container{display:flex;justify-content:flex-end;align-items:center}.file-upload-wrapper .file-upload-footer .footer-container .retry-upload-button{margin-inline-start:var(--granite-spacing-8)}@keyframes loading-keyframe{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GraniteButtonComponent, selector: "button[graniteButton],\n button[granitePrimaryButton],\n button[graniteFlatButton],\n button[graniteToolbarButton]\n ", inputs: ["disabled", "toggled"], exportAs: ["graniteButton"] }, { kind: "component", type: i3.GraniteIconComponent, selector: "granite-icon", inputs: ["fontIcon"] }, { kind: "directive", type: i4.GraniteFileDragAndDropDirective, selector: "[graniteFileDragAndDrop]", inputs: ["multiFileUploadEnabled", "accept", "currentFiles"], outputs: ["droppedFiles", "isFileOver", "fileUploadValidation"], exportAs: ["graniteFileDragAndDrop"] }] }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
130
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: GraniteFileUploadComponent, selector: "granite-file-upload", inputs: { accept: "accept", uploadTitle: "uploadTitle", uploadIcon: "uploadIcon", browseIcon: "browseIcon", dropZoneText: "dropZoneText", browseButtonText: "browseButtonText", dropPlaceholderText: "dropPlaceholderText", dropZoneHint: "dropZoneHint", removeButtonText: "removeButtonText", uploadButtonText: "uploadButtonText", retryButtonText: "retryButtonText", cancelButtonText: "cancelButtonText", uploadStatus: "uploadStatus", autoUpload: "autoUpload" }, outputs: { browseOrDragFiles: "browseOrDragFiles", removeFiles: "removeFiles", filesUpload: "filesUpload", fileUploadValidation: "fileUploadValidation" }, viewQueries: [{ propertyName: "fileDropRef", first: true, predicate: ["fileDropRef"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"file-upload-wrapper\">\n <h2 class=\"file-upload-title\">{{ uploadTitle }}</h2>\n <div\n class=\"file-dropzone\"\n [ngClass]=\"{ 'upload-failed': uploadStatus === FileUploadStatus.Failed }\"\n graniteFileDragAndDrop\n (droppedFiles)=\"onFilesDropHandler($event)\"\n (isFileOver)=\"onFileOverDropzone($event)\"\n (fileUploadValidation)=\"onFileDropError($event)\"\n [multiFileUploadEnabled]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n [currentFiles]=\"selectedFiles\"\n >\n <input\n class=\"file-input\"\n #fileDropRef\n type=\"file\"\n title=\"fileUpload\"\n (change)=\"fileBrowseHandler($event)\"\n [multiple]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n />\n <div class=\"file-upload-body\">\n @if (!isFileOnDropzone && !fileError) {\n <div\n class=\"file-upload-browse\"\n *ngIf=\"previewReadyFiles.length === 0; else filePreview\"\n >\n <granite-icon\n class=\"file-upload-icon\"\n [fontIcon]=\"uploadIcon\"\n ></granite-icon>\n <div class=\"file-selection\">\n <h2 class=\"file-upload-body-text\">{{ dropZoneText }}</h2>\n <button\n class=\"file-select-button\"\n graniteButton\n (click)=\"fileDropRef.click()\"\n >\n <granite-icon\n class=\"browse-button-icon\"\n [fontIcon]=\"browseIcon\"\n ></granite-icon>\n <div class=\"browse-button-text\">{{ browseButtonText }}</div>\n </button>\n </div>\n <p *ngIf=\"dropZoneHint\" class=\"file-upload-hint\">\n {{ dropZoneHint }}\n </p>\n </div>\n <ng-template #filePreview>\n <div\n class=\"file-preview-container\"\n *ngFor=\"let previewFile of previewReadyFiles; let i = index\"\n >\n @if (previewFile?.imageUrl) {\n <a\n class=\"file-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n [href]=\"previewFile?.imageUrl\"\n target=\"_blank\"\n >\n <div class=\"file-preview-holder\">\n <img\n role=\"presentation\"\n [src]=\"previewFile?.imageUrl\"\n [alt]=\"previewFile?.file?.name\"\n />\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.Failed\"\n [ngTemplateOutlet]=\"uploadFailedOverlay\"\n >\n </ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </a>\n } @else {\n <div\n class=\"document-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n >\n <div class=\"document-preview-holder\">\n <granite-icon\n class=\"document-file-preview\"\n [class.upload-failed]=\"\n uploadStatus === FileUploadStatus.Failed\n \"\n [fontIcon]=\"'icon-document-alt'\"\n ></granite-icon>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </div>\n }\n <button\n graniteButton\n *ngIf=\"\n [\n FileUploadStatus.Completed,\n FileUploadStatus.NotStarted\n ].includes(uploadStatus)\n \"\n (click)=\"fileRemoveHandler(i)\"\n >\n {{ removeButtonText }}\n </button>\n </div>\n </ng-template>\n } @else {\n <p class=\"drop-area-placeholder\">\n {{ dropPlaceholderText }}\n </p>\n }\n </div>\n </div>\n <div class=\"file-upload-footer\">\n <div class=\"footer-container\" *ngIf=\"previewReadyFiles.length > 0\">\n <button\n *ngIf=\"!autoUpload && uploadStatus === FileUploadStatus.NotStarted\"\n granitePrimaryButton\n (click)=\"uploadFiles()\"\n >\n {{ uploadButtonText }}\n </button>\n <ng-container *ngIf=\"uploadStatus === FileUploadStatus.Failed\">\n <button graniteButton (click)=\"cancelUpload()\">\n {{ cancelButtonText }}\n </button>\n <button\n class=\"retry-upload-button\"\n granitePrimaryButton\n (click)=\"retryUpload()\"\n >\n {{ retryButtonText }}\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-template #uploadingOverlay>\n <div class=\"file-preview-overlay\"></div>\n <div class=\"loading-container\">\n <div class=\"uploading-spinner\"></div>\n </div>\n</ng-template>\n\n<ng-template #uploadFailedOverlay>\n <div class=\"file-preview-overlay\"></div>\n</ng-template>\n", styles: [":host{width:100%}.file-upload-wrapper{display:flex;flex-direction:column;background-color:var(--granite-color-background);box-shadow:var(--granite-shadow-s);height:100%;width:100%}.file-upload-wrapper .file-upload-title{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-medium);font-weight:var(--granite-font-weight-bold);line-height:var(--granite-line-height-base-rem);color:var(--granite-color-text-weak);margin:0;padding:var(--granite-spacing-8) calc(var(--granite-spacing-16) * .813)}.file-upload-wrapper .file-dropzone{display:flex;flex-direction:column;border-width:var(--granite-border-width-focus);border-style:dashed;border-color:var(--granite-color-background-selected);border-radius:var(--granite-radius-m);margin:var(--granite-spacing-8);height:100%}.file-upload-wrapper .file-dropzone.upload-failed{border-color:var(--granite-color-categorical-4)}.file-upload-wrapper .file-dropzone.file-error{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-failure);border-color:var(--granite-color-state-error);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-error .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone.file-over{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-info);border-color:var(--granite-color-background-active);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-over .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone .file-input{opacity:0;position:absolute;width:0}.file-upload-wrapper .file-dropzone .file-upload-body{display:flex;align-items:center;justify-content:center;height:100%}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse{display:flex;flex-direction:column;gap:var(--granite-spacing-4);justify-content:center;align-items:center;padding:0 var(--granite-spacing-16)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-icon{font-size:var(--granite-font-size-display-small);color:var(--granite-color-text)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection{display:flex;justify-content:space-between;align-items:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-upload-body-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;width:100%;margin-inline-end:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button{display:flex;justify-content:space-between;align-items:center;color:var(--granite-color-text-link);padding-top:calc(var(--granite-spacing-24) / 4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-icon{font-size:var(--granite-font-size-body);color:var(--granite-color-text-link);margin-inline-end:var(--granite-spacing-4);padding:0}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-flowing) / 2);margin-top:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-icon,.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-text{color:var(--granite-color-text-inverse)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-hint{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * 1.125);text-align:center;color:var(--granite-color-text-hint);margin:calc(var(--granite-spacing-base-rem) * .625) 0 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container{display:flex;flex-direction:column;align-items:center;width:100%;max-height:100%;padding:calc(var(--granite-spacing-base-rem) * .375)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-size{text-decoration:underline}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:80px;height:114px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(250%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .file-preview-overlay{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder img{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.2}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder img,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-link);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-link);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:60px;height:60px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview{font-size:calc(var(--granite-font-size-body) * 3);color:var(--granite-color-text-hint);padding:calc(var(--granite-spacing-4) * 3) 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview.upload-failed{color:var(--granite-color-background-failure)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-10%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .document-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .document-file-preview,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-weak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-week);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-upload-footer{margin-inline:var(--granite-spacing-8);margin-bottom:var(--granite-spacing-8)}.file-upload-wrapper .file-upload-footer .footer-container{display:flex;justify-content:flex-end;align-items:center}.file-upload-wrapper .file-upload-footer .footer-container .retry-upload-button{margin-inline-start:var(--granite-spacing-8)}@keyframes loading-keyframe{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GraniteButtonComponent, selector: "button[graniteButton],\n button[granitePrimaryButton],\n button[graniteFlatButton],\n button[graniteToolbarButton]\n ", inputs: ["disabled", "toggled"], exportAs: ["graniteButton"] }, { kind: "component", type: i3.GraniteIconComponent, selector: "granite-icon", inputs: ["fontIcon"] }, { kind: "directive", type: i4.GraniteFileDragAndDropDirective, selector: "[graniteFileDragAndDrop]", inputs: ["multiFileUploadEnabled", "accept", "currentFiles"], outputs: ["droppedFiles", "isFileOver", "fileUploadValidation"], exportAs: ["graniteFileDragAndDrop"] }] }); }
131
131
  }
132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadComponent, decorators: [{
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadComponent, decorators: [{
133
133
  type: Component,
134
134
  args: [{ selector: 'granite-file-upload', template: "<div class=\"file-upload-wrapper\">\n <h2 class=\"file-upload-title\">{{ uploadTitle }}</h2>\n <div\n class=\"file-dropzone\"\n [ngClass]=\"{ 'upload-failed': uploadStatus === FileUploadStatus.Failed }\"\n graniteFileDragAndDrop\n (droppedFiles)=\"onFilesDropHandler($event)\"\n (isFileOver)=\"onFileOverDropzone($event)\"\n (fileUploadValidation)=\"onFileDropError($event)\"\n [multiFileUploadEnabled]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n [currentFiles]=\"selectedFiles\"\n >\n <input\n class=\"file-input\"\n #fileDropRef\n type=\"file\"\n title=\"fileUpload\"\n (change)=\"fileBrowseHandler($event)\"\n [multiple]=\"supportMultiFileUpload\"\n [accept]=\"accept\"\n />\n <div class=\"file-upload-body\">\n @if (!isFileOnDropzone && !fileError) {\n <div\n class=\"file-upload-browse\"\n *ngIf=\"previewReadyFiles.length === 0; else filePreview\"\n >\n <granite-icon\n class=\"file-upload-icon\"\n [fontIcon]=\"uploadIcon\"\n ></granite-icon>\n <div class=\"file-selection\">\n <h2 class=\"file-upload-body-text\">{{ dropZoneText }}</h2>\n <button\n class=\"file-select-button\"\n graniteButton\n (click)=\"fileDropRef.click()\"\n >\n <granite-icon\n class=\"browse-button-icon\"\n [fontIcon]=\"browseIcon\"\n ></granite-icon>\n <div class=\"browse-button-text\">{{ browseButtonText }}</div>\n </button>\n </div>\n <p *ngIf=\"dropZoneHint\" class=\"file-upload-hint\">\n {{ dropZoneHint }}\n </p>\n </div>\n <ng-template #filePreview>\n <div\n class=\"file-preview-container\"\n *ngFor=\"let previewFile of previewReadyFiles; let i = index\"\n >\n @if (previewFile?.imageUrl) {\n <a\n class=\"file-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n [href]=\"previewFile?.imageUrl\"\n target=\"_blank\"\n >\n <div class=\"file-preview-holder\">\n <img\n role=\"presentation\"\n [src]=\"previewFile?.imageUrl\"\n [alt]=\"previewFile?.file?.name\"\n />\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.Failed\"\n [ngTemplateOutlet]=\"uploadFailedOverlay\"\n >\n </ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </a>\n } @else {\n <div\n class=\"document-preview-link\"\n [ngClass]=\"{\n 'uploading-in-progress':\n uploadStatus === FileUploadStatus.InProgress,\n 'upload-failed': uploadStatus === FileUploadStatus.Failed\n }\"\n >\n <div class=\"document-preview-holder\">\n <granite-icon\n class=\"document-file-preview\"\n [class.upload-failed]=\"\n uploadStatus === FileUploadStatus.Failed\n \"\n [fontIcon]=\"'icon-document-alt'\"\n ></granite-icon>\n <ng-container\n *ngIf=\"uploadStatus === FileUploadStatus.InProgress\"\n [ngTemplateOutlet]=\"uploadingOverlay\"\n ></ng-container>\n </div>\n <p class=\"file-name\" [title]=\"previewFile?.file?.name\">\n {{ previewFile?.file?.name }}\n </p>\n <p class=\"file-size\">{{ previewFile?.readableSize }}</p>\n </div>\n }\n <button\n graniteButton\n *ngIf=\"\n [\n FileUploadStatus.Completed,\n FileUploadStatus.NotStarted\n ].includes(uploadStatus)\n \"\n (click)=\"fileRemoveHandler(i)\"\n >\n {{ removeButtonText }}\n </button>\n </div>\n </ng-template>\n } @else {\n <p class=\"drop-area-placeholder\">\n {{ dropPlaceholderText }}\n </p>\n }\n </div>\n </div>\n <div class=\"file-upload-footer\">\n <div class=\"footer-container\" *ngIf=\"previewReadyFiles.length > 0\">\n <button\n *ngIf=\"!autoUpload && uploadStatus === FileUploadStatus.NotStarted\"\n granitePrimaryButton\n (click)=\"uploadFiles()\"\n >\n {{ uploadButtonText }}\n </button>\n <ng-container *ngIf=\"uploadStatus === FileUploadStatus.Failed\">\n <button graniteButton (click)=\"cancelUpload()\">\n {{ cancelButtonText }}\n </button>\n <button\n class=\"retry-upload-button\"\n granitePrimaryButton\n (click)=\"retryUpload()\"\n >\n {{ retryButtonText }}\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n\n<ng-template #uploadingOverlay>\n <div class=\"file-preview-overlay\"></div>\n <div class=\"loading-container\">\n <div class=\"uploading-spinner\"></div>\n </div>\n</ng-template>\n\n<ng-template #uploadFailedOverlay>\n <div class=\"file-preview-overlay\"></div>\n</ng-template>\n", styles: [":host{width:100%}.file-upload-wrapper{display:flex;flex-direction:column;background-color:var(--granite-color-background);box-shadow:var(--granite-shadow-s);height:100%;width:100%}.file-upload-wrapper .file-upload-title{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-medium);font-weight:var(--granite-font-weight-bold);line-height:var(--granite-line-height-base-rem);color:var(--granite-color-text-weak);margin:0;padding:var(--granite-spacing-8) calc(var(--granite-spacing-16) * .813)}.file-upload-wrapper .file-dropzone{display:flex;flex-direction:column;border-width:var(--granite-border-width-focus);border-style:dashed;border-color:var(--granite-color-background-selected);border-radius:var(--granite-radius-m);margin:var(--granite-spacing-8);height:100%}.file-upload-wrapper .file-dropzone.upload-failed{border-color:var(--granite-color-categorical-4)}.file-upload-wrapper .file-dropzone.file-error{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-failure);border-color:var(--granite-color-state-error);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-error .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone.file-over{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;background-color:var(--granite-color-background-lobby-info);border-color:var(--granite-color-background-active);transition:background .15s ease}.file-upload-wrapper .file-dropzone.file-over .drop-area-placeholder{margin:0}.file-upload-wrapper .file-dropzone .file-input{opacity:0;position:absolute;width:0}.file-upload-wrapper .file-dropzone .file-upload-body{display:flex;align-items:center;justify-content:center;height:100%}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse{display:flex;flex-direction:column;gap:var(--granite-spacing-4);justify-content:center;align-items:center;padding:0 var(--granite-spacing-16)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-icon{font-size:var(--granite-font-size-display-small);color:var(--granite-color-text)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection{display:flex;justify-content:space-between;align-items:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-upload-body-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text);text-align:center;width:100%;margin-inline-end:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button{display:flex;justify-content:space-between;align-items:center;color:var(--granite-color-text-link);padding-top:calc(var(--granite-spacing-24) / 4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-icon{font-size:var(--granite-font-size-body);color:var(--granite-color-text-link);margin-inline-end:var(--granite-spacing-4);padding:0}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button .browse-button-text{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-flowing) / 2);margin-top:var(--granite-spacing-4)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-icon,.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-selection .file-select-button:hover .browse-button-text{color:var(--granite-color-text-inverse)}.file-upload-wrapper .file-dropzone .file-upload-body .file-upload-browse .file-upload-hint{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * 1.125);text-align:center;color:var(--granite-color-text-hint);margin:calc(var(--granite-spacing-base-rem) * .625) 0 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container{display:flex;flex-direction:column;align-items:center;width:100%;max-height:100%;padding:calc(var(--granite-spacing-base-rem) * .375)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link:hover .file-size{text-decoration:underline}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:80px;height:114px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(250%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .file-preview-overlay{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder img{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.2}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder img,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-link);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .file-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-link);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link{display:flex;flex-direction:column;align-items:center;max-width:50%;padding:0 var(--granite-spacing-8);text-decoration:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder{display:flex;justify-content:center;align-items:flex-end;position:relative;width:60px;height:60px}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview{font-size:calc(var(--granite-font-size-body) * 3);color:var(--granite-color-text-hint);padding:calc(var(--granite-spacing-4) * 3) 0}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .document-file-preview.upload-failed{color:var(--granite-color-background-failure)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container{position:absolute;top:50%;inset-inline-start:50%;transform:translate(-50%,-10%)}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .document-preview-holder .loading-container .uploading-spinner{width:50px;height:50px;border-radius:50%;border:6px solid;border-color:var(--granite-color-background-page);border-right-color:var(--granite-color-background-active);animation:loading-keyframe 1s infinite linear}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .document-preview-holder .file-preview-overlay{background-color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.upload-failed .file-size{color:var(--granite-color-signal-failure);opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress{pointer-events:none}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .document-file-preview,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .document-preview-holder .file-preview-overlay,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-name,.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link.uploading-in-progress .file-size{opacity:.4}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-name{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:var(--granite-line-height-flowing);color:var(--granite-color-text-weak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:calc(var(--granite-spacing-base-rem) * .375) 0 0;width:100%;text-align:center}.file-upload-wrapper .file-dropzone .file-upload-body .file-preview-container .document-preview-link .file-size{font-family:var(--granite-font-family-default);font-size:var(--granite-font-size-micro);font-weight:var(--granite-font-weight-regular);line-height:calc(var(--granite-line-height-base-rem) * .625);color:var(--granite-color-text-week);margin:0 0 calc(var(--granite-spacing-base-rem) * .875)}.file-upload-wrapper .file-upload-footer{margin-inline:var(--granite-spacing-8);margin-bottom:var(--granite-spacing-8)}.file-upload-wrapper .file-upload-footer .footer-container{display:flex;justify-content:flex-end;align-items:center}.file-upload-wrapper .file-upload-footer .footer-container .retry-upload-button{margin-inline-start:var(--granite-spacing-8)}@keyframes loading-keyframe{to{transform:rotate(360deg)}}\n"] }]
135
135
  }], propDecorators: { fileDropRef: [{
@@ -172,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
172
172
  }], autoUpload: [{
173
173
  type: Input
174
174
  }] } });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQiw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0IsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQiwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLFNBQVMsRUFFVCxnQkFBZ0IsRUFDaEIsbUJBQW1CLEdBRXBCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFPckQsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQVVFLFdBQU0sR0FBVyxtQkFBbUIsQ0FBQztRQUdyQyxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBRzNDLGVBQVUsR0FBVyxtQkFBbUIsQ0FBQztRQUd6QyxlQUFVLEdBQVcsK0JBQStCLENBQUM7UUFHckQsaUJBQVksR0FBVyxxQkFBcUIsQ0FBQztRQUc3QyxxQkFBZ0IsR0FBVywwQkFBMEIsQ0FBQztR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cnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIERFRkFVTFRfQlJPV1NFX0JVVFRPTl9URVhULFxuICBERUZBVUxUX0NBTkNFTF9CVVRUT05fVEVYVCxcbiAgREVGQVVMVF9EUk9QX1BMQUNFSE9MREVSX1RFWFQsXG4gIERFRkFVTFRfRFJPUFpPTkVfSElOVCxcbiAgREVGQVVMVF9EUk9QWk9ORV9URVhULFxuICBERUZBVUxUX0ZJTEVfQlJPV1NFX0JVVFRPTl9JQ09OLFxuICBERUZBVUxUX0FDQ0VQVF9UWVBFLFxuICBERUZBVUxUX01VTFRJX0ZJTEVfU1VQUE9SVCxcbiAgREVGQVVMVF9SRU1PVkVfQlVUVE9OX1RFWFQsXG4gIERFRkFVTFRfUkVUUllfQlVUVE9OX1RFWFQsXG4gIERFRkFVTFRfVVBMT0FEX0JVVFRPTl9URVhULFxuICBERUZBVUxUX1VQTE9BRF9JQ09OLFxuICBERUZBVUxUX1VQTE9BRF9USVRMRSxcbiAgZmlsZVNpemVzLFxuICBGaWxlVXBsb2FkRXJyb3IsXG4gIEZpbGVVcGxvYWRTdGF0dXMsXG4gIEZpbFVwbG9hZEVycm9yVHlwZXMsXG4gIFNlbGVjdGVkRmlsZSxcbn0gZnJvbSAnLi9maWxlLXVwbG9hZC5jb25zdGFudHMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IHZhbGlkRmlsZVR5cGVzIH0gZnJvbSAnLi9maWxlLXVwbG9hZC51dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtZmlsZS11cGxvYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlRmlsZVVwbG9hZENvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2ZpbGVEcm9wUmVmJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIGZpbGVEcm9wUmVmITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBASW5wdXQoKVxuICBhY2NlcHQ6IHN0cmluZyA9IERFRkFVTFRfQUNDRVBUX1RZUEU7XG5cbiAgQElucHV0KClcbiAgdXBsb2FkVGl0bGU6IHN0cmluZyA9IERFRkFVTFRfVVBMT0FEX1RJVExFO1xuXG4gIEBJbnB1dCgpXG4gIHVwbG9hZEljb246IHN0cmluZyA9IERFRkFVTFRfVVBMT0FEX0lDT047XG5cbiAgQElucHV0KClcbiAgYnJvd3NlSWNvbjogc3RyaW5nID0gREVGQVVMVF9GSUxFX0JST1dTRV9CVVRUT05fSUNPTjtcblxuICBASW5wdXQoKVxuICBkcm9wWm9uZVRleHQ6IHN0cmluZyA9IERFRkFVTFRfRFJPUFpPTkVfVEVYVDtcblxuICBASW5wdXQoKVxuICBicm93c2VCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX0JST1dTRV9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICBkcm9wUGxhY2Vob2xkZXJUZXh0OiBzdHJpbmcgPSBERUZBVUxUX0RST1BfUExBQ0VIT0xERVJfVEVYVDtcblxuICBASW5wdXQoKVxuICBkcm9wWm9uZUhpbnQ6IHN0cmluZyA9IERFRkFVTFRfRFJPUFpPTkVfSElOVDtcblxuICBASW5wdXQoKVxuICByZW1vdmVCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX1JFTU9WRV9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICB1cGxvYWRCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX1VQTE9BRF9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICByZXRyeUJ1dHRvblRleHQ6IHN0cmluZyA9IERFRkFVTFRfUkVUUllfQlVUVE9OX1RFWFQ7XG5cbiAgQElucHV0KClcbiAgY2FuY2VsQnV0dG9uVGV4dDogc3RyaW5nID0gREVGQVVMVF9DQU5DRUxfQlVUVE9OX1RFWFQ7XG5cbiAgQE91dHB1dCgpXG4gIGJyb3dzZU9yRHJhZ0ZpbGVzOiBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBTZWxlY3RlZEZpbGVbXVxuICA+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlbW92ZUZpbGVzOiBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBTZWxlY3RlZEZpbGVbXVxuICA+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGZpbGVzVXBsb2FkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGZpbGVVcGxvYWRWYWxpZGF0aW9uOiBFdmVudEVtaXR0ZXI8RmlsZVVwbG9hZEVycm9yPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGaWxlVXBsb2FkRXJyb3I+KCk7XG5cbiAgc2VsZWN0ZWRGaWxlczogRmlsZVtdID0gW107XG4gIHByZXZpZXdSZWFkeUZpbGVzOiBTZWxlY3RlZEZpbGVbXSA9IFtdO1xuICBpc0ZpbGVPbkRyb3B6b25lOiBib29sZWFuID0gZmFsc2U7XG4gIEZpbGVVcGxvYWRTdGF0dXMgPSBGaWxlVXBsb2FkU3RhdHVzO1xuICBmaWxlRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZmlsZURyb3BFcnJvclR5cGU6IHN0cmluZztcbiAgLy8gVE9ETzogdGhpcyBiZWNvbWVzIGlucHV0IHdoZW4gbXVsdGlwbGUgZmlsZSB1cGxvYWQgc3VwcG9ydCB3aXRoIGNhcm91c2VsIGNvbXBvbmVudCB3YXMgZG9uZS5cbiAgc3VwcG9ydE11bHRpRmlsZVVwbG9hZDogYm9vbGVhbiA9IERFRkFVTFRfTVVMVElfRklMRV9TVVBQT1JUO1xuXG4gIHByb3RlY3RlZCBfdXBsb2FkU3RhdHVzOiBGaWxlVXBsb2FkU3RhdHVzID0gRmlsZVVwbG9hZFN0YXR1cy5Ob3RTdGFydGVkO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB1cGxvYWRTdGF0dXMoKTogRmlsZVVwbG9hZFN0YXR1cyB7XG4gICAgcmV0dXJuIHRoaXMuX3VwbG9hZFN0YXR1cztcbiAgfVxuXG4gIHNldCB1cGxvYWRTdGF0dXMoc3RhdHVzOiBGaWxlVXBsb2FkU3RhdHVzKSB7XG4gICAgdGhpcy5fdXBsb2FkU3RhdHVzID0gc3RhdHVzO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9hdXRvVXBsb2FkOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBnZXQgYXV0b1VwbG9hZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b1VwbG9hZDtcbiAgfVxuXG4gIHNldCBhdXRvVXBsb2FkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fYXV0b1VwbG9hZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBmaWxlQnJvd3NlSGFuZGxlcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCBmaWxlczogRmlsZVtdID0gQXJyYXkuZnJvbSh0YXJnZXQuZmlsZXMpO1xuXG4gICAgaWYgKCF2YWxpZEZpbGVUeXBlcyh0aGlzLmFjY2VwdCwgZmlsZXMpKSB7XG4gICAgICB0aGlzLmZpbGVVcGxvYWRWYWxpZGF0aW9uLmVtaXQoe1xuICAgICAgICBpc0Vycm9yOiB0cnVlLFxuICAgICAgICB0eXBlOiBGaWxVcGxvYWRFcnJvclR5cGVzLkV4dGVuc2lvbk5vdFN1cHBvcnRlZCxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5maWxlRHJvcFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbLi4udGhpcy5zZWxlY3RlZEZpbGVzLCAuLi5maWxlc107XG4gICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcyA9IHRoaXMucHJlcGFyZVNlbGVjdGVkRmlsZXModGhpcy5zZWxlY3RlZEZpbGVzKTtcbiAgICB0aGlzLmJyb3dzZU9yRHJhZ0ZpbGVzLmVtaXQodGhpcy5wcmV2aWV3UmVhZHlGaWxlcyk7XG4gIH1cblxuICBmaWxlUmVtb3ZlSGFuZGxlcihpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEZpbGVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgaWYgKFxuICAgICAgdGhpcy5zZWxlY3RlZEZpbGVzLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHRoaXMuZmlsZURyb3BSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLnVwbG9hZFN0YXR1cyA9IEZpbGVVcGxvYWRTdGF0dXMuTm90U3RhcnRlZDtcbiAgICB9XG5cbiAgICB0aGlzLnJlbW92ZUZpbGVzLmVtaXQodGhpcy5wcmV2aWV3UmVhZHlGaWxlcyk7XG4gIH1cblxuICBvbkZpbGVzRHJvcEhhbmRsZXIoZmlsZXM6IEZpbGVbXSk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLnN1cHBvcnRNdWx0aUZpbGVVcGxvYWQgJiZcbiAgICAgICh0aGlzLnNlbGVjdGVkRmlsZXMubGVuZ3RoID09PSAxIHx8IGZpbGVzLmxlbmd0aCAhPT0gMSlcbiAgICApIHtcbiAgICAgIHRoaXMuZmlsZUVycm9yID0gdHJ1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBmaWxlcztcblxuICAgIHRoaXMucHJldmlld1JlYWR5RmlsZXMgPSB0aGlzLnByZXBhcmVTZWxlY3RlZEZpbGVzKHRoaXMuc2VsZWN0ZWRGaWxlcyk7XG4gICAgdGhpcy5icm93c2VPckRyYWdGaWxlcy5lbWl0KHRoaXMucHJldmlld1JlYWR5RmlsZXMpO1xuICB9XG5cbiAgb25GaWxlT3ZlckRyb3B6b25lKGlzRmlsZU92ZXI6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRmlsZU9uRHJvcHpvbmUgPSBpc0ZpbGVPdmVyO1xuICB9XG5cbiAgb25GaWxlRHJvcEVycm9yKHZhbGlkYXRpb246IEZpbGVVcGxvYWRFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuZmlsZUVycm9yID0gdmFsaWRhdGlvbi5pc0Vycm9yO1xuICAgIHRoaXMuZmlsZURyb3BFcnJvclR5cGUgPSB2YWxpZGF0aW9uLnR5cGU7XG4gIH1cblxuICBwcmVwYXJlU2VsZWN0ZWRGaWxlcyhmaWxlczogRmlsZVtdKTogU2VsZWN0ZWRGaWxlW10ge1xuICAgIHJldHVybiBmaWxlcy5tYXAoKGZpbGU6IEZpbGUpID0+ICh7XG4gICAgICBmaWxlLFxuICAgICAgcmVhZGFibGVTaXplOiB0aGlzLmZvcm1hdEJ5dGVzVG9SZWFkYWJsZVNpemUoZmlsZS5zaXplLCAyKSxcbiAgICAgIGltYWdlVXJsOiBmaWxlLnR5cGUuc3RhcnRzV2l0aCgnaW1hZ2UvJylcbiAgICAgICAgPyBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpXG4gICAgICAgIDogbnVsbCxcbiAgICB9KSk7XG4gIH1cblxuICB1cGxvYWRGaWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVzVXBsb2FkLmVtaXQoKTtcbiAgfVxuXG4gIHJldHJ5VXBsb2FkKCk6IHZvaWQge1xuICAgIHRoaXMuZmlsZXNVcGxvYWQuZW1pdCgpO1xuICB9XG5cbiAgY2FuY2VsVXBsb2FkKCk6IHZvaWQge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy5maWxlUmVtb3ZlSGFuZGxlcihpKTtcbiAgICB9XG4gIH1cblxuICByZXNldEZpbGVVcGxvYWQoKTogdm9pZCB7XG4gICAgdGhpcy5maWxlRHJvcFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB0aGlzLmZpbGVFcnJvciA9IGZhbHNlO1xuICAgIHRoaXMuZmlsZURyb3BFcnJvclR5cGUgPSAnJztcbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbXTtcbiAgICB0aGlzLnByZXZpZXdSZWFkeUZpbGVzID0gW107XG4gICAgdGhpcy51cGxvYWRTdGF0dXMgPSBGaWxlVXBsb2FkU3RhdHVzLk5vdFN0YXJ0ZWQ7XG4gIH1cblxuICBmb3JtYXRCeXRlc1RvUmVhZGFibGVTaXplKGJ5dGVzOiBudW1iZXIsIGRlY2ltYWxzOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmIChieXRlcyA9PT0gMCkge1xuICAgICAgcmV0dXJuIGAwICR7ZmlsZVNpemVzWzBdfWA7XG4gICAgfVxuXG4gICAgY29uc3QgYnl0ZXNQZXJLQiA9IDEwMjQ7XG4gICAgY29uc3QgZGVjaW1hbFBvaW50cyA9IGRlY2ltYWxzIDw9IDAgPyAwIDogZGVjaW1hbHMgfHwgMjtcbiAgICBjb25zdCBleHAgPSBNYXRoLmZsb29yKE1hdGgubG9nKGJ5dGVzKSAvIE1hdGgubG9nKGJ5dGVzUGVyS0IpKTtcbiAgICByZXR1cm4gYCR7cGFyc2VGbG9hdChcbiAgICAgIChieXRlcyAvIE1hdGgucG93KGJ5dGVzUGVyS0IsIGV4cCkpLnRvRml4ZWQoZGVjaW1hbFBvaW50cylcbiAgICApfSAke2ZpbGVTaXplc1tleHBdfWA7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZC13cmFwcGVyXCI+XG4gIDxoMiBjbGFzcz1cImZpbGUtdXBsb2FkLXRpdGxlXCI+e3sgdXBsb2FkVGl0bGUgfX08L2gyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJmaWxlLWRyb3B6b25lXCJcbiAgICBbbmdDbGFzc109XCJ7ICd1cGxvYWQtZmFpbGVkJzogdXBsb2FkU3RhdHVzID09PSBGaWxlVXBsb2FkU3RhdHVzLkZhaWxlZCB9XCJcbiAgICBncmFuaXRlRmlsZURyYWdBbmREcm9wXG4gICAgKGRyb3BwZWRGaWxlcyk9XCJvbkZpbGVzRHJvcEhhbmRsZXIoJGV2ZW50KVwiXG4gICAgKGlzRmlsZU92ZXIpPVwib25GaWxlT3ZlckRyb3B6b25lKCRldmVudClcIlxuICAgIChmaWxlVXBsb2FkVmFsaWRhdGlvbik9XCJvbkZpbGVEcm9wRXJyb3IoJGV2ZW50KVwiXG4gICAgW211bHRpRmlsZVVwbG9hZEVuYWJsZWRdPVwic3VwcG9ydE11bHRpRmlsZVVwbG9hZFwiXG4gICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIFtjdXJyZW50RmlsZXNdPVwic2VsZWN0ZWRGaWxlc1wiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIGNsYXNzPVwiZmlsZS1pbnB1dFwiXG4gICAgICAjZmlsZURyb3BSZWZcbiAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgIHRpdGxlPVwiZmlsZVVwbG9hZFwiXG4gICAgICAoY2hhbmdlKT1cImZpbGVCcm93c2VIYW5kbGVyKCRldmVudClcIlxuICAgICAgW211bHRpcGxlXT1cInN1cHBvcnRNdWx0aUZpbGVVcGxvYWRcIlxuICAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkLWJvZHlcIj5cbiAgICAgIEBpZiAoIWlzRmlsZU9uRHJvcHpvbmUgJiYgIWZpbGVFcnJvcikge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmaWxlLXVwbG9hZC1icm93c2VcIlxuICAgICAgICAgICpuZ0lmPVwicHJldmlld1JlYWR5RmlsZXMubGVuZ3RoID09PSAwOyBlbHNlIGZpbGVQcmV2aWV3XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxncmFuaXRlLWljb25cbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS11cGxvYWQtaWNvblwiXG4gICAgICAgICAgICBbZm9udEljb25dPVwidXBsb2FkSWNvblwiXG4gICAgICAgICAgPjwvZ3Jhbml0ZS1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLXNlbGVjdGlvblwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZmlsZS11cGxvYWQtYm9keS10ZXh0XCI+e3sgZHJvcFpvbmVUZXh0IH19PC9oMj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLXNlbGVjdC1idXR0b25cIlxuICAgICAgICAgICAgICBncmFuaXRlQnV0dG9uXG4gICAgICAgICAgICAgIChjbGljayk9XCJmaWxlRHJvcFJlZi5jbGljaygpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGdyYW5pdGUtaWNvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnJvd3NlLWJ1dHRvbi1pY29uXCJcbiAgICAgICAgICAgICAgICBbZm9udEljb25dPVwiYnJvd3NlSWNvblwiXG4gICAgICAgICAgICAgID48L2dyYW5pdGUtaWNvbj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJyb3dzZS1idXR0b24tdGV4dFwiPnt7IGJyb3dzZUJ1dHRvblRleHQgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxwICpuZ0lmPVwiZHJvcFpvbmVIaW50XCIgY2xhc3M9XCJmaWxlLXVwbG9hZC1oaW50XCI+XG4gICAgICAgICAgICB7eyBkcm9wWm9uZUhpbnQgfX1cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctdGVtcGxhdGUgI2ZpbGVQcmV2aWV3PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS1wcmV2aWV3LWNvbnRhaW5lclwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJldmlld0ZpbGUgb2YgcHJldmlld1JlYWR5RmlsZXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIEBpZiAocHJldmlld0ZpbGU/LmltYWdlVXJsKSB7XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLXByZXZpZXctbGlua1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3VwbG9hZGluZy1pbi1wcm9ncmVzcyc6XG4gICAgICAgICAgICAgICAgICAgIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgJ3VwbG9hZC1mYWlsZWQnOiB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgW2hyZWZdPVwicHJldmlld0ZpbGU/LmltYWdlVXJsXCJcbiAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtcHJldmlldy1ob2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cInByZXNlbnRhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwicHJldmlld0ZpbGU/LmltYWdlVXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJwcmV2aWV3RmlsZT8uZmlsZT8ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidXBsb2FkaW5nT3ZlcmxheVwiXG4gICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidXBsb2FkU3RhdHVzID09PSBGaWxlVXBsb2FkU3RhdHVzLkZhaWxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInVwbG9hZEZhaWxlZE92ZXJsYXlcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJmaWxlLW5hbWVcIiBbdGl0bGVdPVwicHJldmlld0ZpbGU/LmZpbGU/Lm5hbWVcIj5cbiAgICAgICAgICAgICAgICAgIHt7IHByZXZpZXdGaWxlPy5maWxlPy5uYW1lIH19XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZmlsZS1zaXplXCI+e3sgcHJldmlld0ZpbGU/LnJlYWRhYmxlU2l6ZSB9fTwvcD5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRvY3VtZW50LXByZXZpZXctbGlua1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3VwbG9hZGluZy1pbi1wcm9ncmVzcyc6XG4gICAgICAgICAgICAgICAgICAgIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgJ3VwbG9hZC1mYWlsZWQnOiB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtcHJldmlldy1ob2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxncmFuaXRlLWljb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2N1bWVudC1maWxlLXByZXZpZXdcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudXBsb2FkLWZhaWxlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgIFtmb250SWNvbl09XCInaWNvbi1kb2N1bWVudC1hbHQnXCJcbiAgICAgICAgICAgICAgICAgID48L2dyYW5pdGUtaWNvbj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuSW5Qcm9ncmVzc1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInVwbG9hZGluZ092ZXJsYXlcIlxuICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZmlsZS1uYW1lXCIgW3RpdGxlXT1cInByZXZpZXdGaWxlPy5maWxlPy5uYW1lXCI+XG4gICAgICAgICAgICAgICAgICB7eyBwcmV2aWV3RmlsZT8uZmlsZT8ubmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImZpbGUtc2l6ZVwiPnt7IHByZXZpZXdGaWxlPy5yZWFkYWJsZVNpemUgfX08L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBncmFuaXRlQnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgRmlsZVVwbG9hZFN0YXR1cy5Db21wbGV0ZWQsXG4gICAgICAgICAgICAgICAgICBGaWxlVXBsb2FkU3RhdHVzLk5vdFN0YXJ0ZWRcbiAgICAgICAgICAgICAgICBdLmluY2x1ZGVzKHVwbG9hZFN0YXR1cylcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImZpbGVSZW1vdmVIYW5kbGVyKGkpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgcmVtb3ZlQnV0dG9uVGV4dCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPHAgY2xhc3M9XCJkcm9wLWFyZWEtcGxhY2Vob2xkZXJcIj5cbiAgICAgICAgICB7eyBkcm9wUGxhY2Vob2xkZXJUZXh0IH19XG4gICAgICAgIDwvcD5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZC1mb290ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyLWNvbnRhaW5lclwiICpuZ0lmPVwicHJldmlld1JlYWR5RmlsZXMubGVuZ3RoID4gMFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFhdXRvVXBsb2FkICYmIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5Ob3RTdGFydGVkXCJcbiAgICAgICAgZ3Jhbml0ZVByaW1hcnlCdXR0b25cbiAgICAgICAgKGNsaWNrKT1cInVwbG9hZEZpbGVzKClcIlxuICAgICAgPlxuICAgICAgICB7eyB1cGxvYWRCdXR0b25UZXh0IH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXCI+XG4gICAgICAgIDxidXR0b24gZ3Jhbml0ZUJ1dHRvbiAoY2xpY2spPVwiY2FuY2VsVXBsb2FkKClcIj5cbiAgICAgICAgICB7eyBjYW5jZWxCdXR0b25UZXh0IH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJyZXRyeS11cGxvYWQtYnV0dG9uXCJcbiAgICAgICAgICBncmFuaXRlUHJpbWFyeUJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJyZXRyeVVwbG9hZCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHJldHJ5QnV0dG9uVGV4dCB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3VwbG9hZGluZ092ZXJsYXk+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXByZXZpZXctb3ZlcmxheVwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibG9hZGluZy1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkaW5nLXNwaW5uZXJcIj48L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3VwbG9hZEZhaWxlZE92ZXJsYXk+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXByZXZpZXctb3ZlcmxheVwiPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLDBCQUEwQixFQUMxQiw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0IsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQiwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLFNBQVMsRUFFVCxnQkFBZ0IsRUFDaEIsbUJBQW1CLEdBRXBCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFPckQsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQVVFLFdBQU0sR0FBVyxtQkFBbUIsQ0FBQztRQUdyQyxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBRzNDLGVBQVUsR0FBVyxtQkFBbUIsQ0FBQztRQUd6QyxlQUFVLEdBQVcsK0JBQStCLENBQUM7UUFHckQsaUJBQVksR0FBVyxxQkFBcUIsQ0FBQztRQUc3QyxxQkFBZ0IsR0FBVywwQkFBMEIsQ0FBQztR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cnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIERFRkFVTFRfQlJPV1NFX0JVVFRPTl9URVhULFxuICBERUZBVUxUX0NBTkNFTF9CVVRUT05fVEVYVCxcbiAgREVGQVVMVF9EUk9QX1BMQUNFSE9MREVSX1RFWFQsXG4gIERFRkFVTFRfRFJPUFpPTkVfSElOVCxcbiAgREVGQVVMVF9EUk9QWk9ORV9URVhULFxuICBERUZBVUxUX0ZJTEVfQlJPV1NFX0JVVFRPTl9JQ09OLFxuICBERUZBVUxUX0FDQ0VQVF9UWVBFLFxuICBERUZBVUxUX01VTFRJX0ZJTEVfU1VQUE9SVCxcbiAgREVGQVVMVF9SRU1PVkVfQlVUVE9OX1RFWFQsXG4gIERFRkFVTFRfUkVUUllfQlVUVE9OX1RFWFQsXG4gIERFRkFVTFRfVVBMT0FEX0JVVFRPTl9URVhULFxuICBERUZBVUxUX1VQTE9BRF9JQ09OLFxuICBERUZBVUxUX1VQTE9BRF9USVRMRSxcbiAgZmlsZVNpemVzLFxuICBGaWxlVXBsb2FkRXJyb3IsXG4gIEZpbGVVcGxvYWRTdGF0dXMsXG4gIEZpbFVwbG9hZEVycm9yVHlwZXMsXG4gIFNlbGVjdGVkRmlsZSxcbn0gZnJvbSAnLi9maWxlLXVwbG9hZC5jb25zdGFudHMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IHZhbGlkRmlsZVR5cGVzIH0gZnJvbSAnLi9maWxlLXVwbG9hZC51dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtZmlsZS11cGxvYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlRmlsZVVwbG9hZENvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2ZpbGVEcm9wUmVmJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIGZpbGVEcm9wUmVmITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBASW5wdXQoKVxuICBhY2NlcHQ6IHN0cmluZyA9IERFRkFVTFRfQUNDRVBUX1RZUEU7XG5cbiAgQElucHV0KClcbiAgdXBsb2FkVGl0bGU6IHN0cmluZyA9IERFRkFVTFRfVVBMT0FEX1RJVExFO1xuXG4gIEBJbnB1dCgpXG4gIHVwbG9hZEljb246IHN0cmluZyA9IERFRkFVTFRfVVBMT0FEX0lDT047XG5cbiAgQElucHV0KClcbiAgYnJvd3NlSWNvbjogc3RyaW5nID0gREVGQVVMVF9GSUxFX0JST1dTRV9CVVRUT05fSUNPTjtcblxuICBASW5wdXQoKVxuICBkcm9wWm9uZVRleHQ6IHN0cmluZyA9IERFRkFVTFRfRFJPUFpPTkVfVEVYVDtcblxuICBASW5wdXQoKVxuICBicm93c2VCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX0JST1dTRV9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICBkcm9wUGxhY2Vob2xkZXJUZXh0OiBzdHJpbmcgPSBERUZBVUxUX0RST1BfUExBQ0VIT0xERVJfVEVYVDtcblxuICBASW5wdXQoKVxuICBkcm9wWm9uZUhpbnQ6IHN0cmluZyA9IERFRkFVTFRfRFJPUFpPTkVfSElOVDtcblxuICBASW5wdXQoKVxuICByZW1vdmVCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX1JFTU9WRV9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICB1cGxvYWRCdXR0b25UZXh0OiBzdHJpbmcgPSBERUZBVUxUX1VQTE9BRF9CVVRUT05fVEVYVDtcblxuICBASW5wdXQoKVxuICByZXRyeUJ1dHRvblRleHQ6IHN0cmluZyA9IERFRkFVTFRfUkVUUllfQlVUVE9OX1RFWFQ7XG5cbiAgQElucHV0KClcbiAgY2FuY2VsQnV0dG9uVGV4dDogc3RyaW5nID0gREVGQVVMVF9DQU5DRUxfQlVUVE9OX1RFWFQ7XG5cbiAgQE91dHB1dCgpXG4gIGJyb3dzZU9yRHJhZ0ZpbGVzOiBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBTZWxlY3RlZEZpbGVbXVxuICA+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlbW92ZUZpbGVzOiBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBTZWxlY3RlZEZpbGVbXVxuICA+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGZpbGVzVXBsb2FkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGZpbGVVcGxvYWRWYWxpZGF0aW9uOiBFdmVudEVtaXR0ZXI8RmlsZVVwbG9hZEVycm9yPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGaWxlVXBsb2FkRXJyb3I+KCk7XG5cbiAgc2VsZWN0ZWRGaWxlczogRmlsZVtdID0gW107XG4gIHByZXZpZXdSZWFkeUZpbGVzOiBTZWxlY3RlZEZpbGVbXSA9IFtdO1xuICBpc0ZpbGVPbkRyb3B6b25lOiBib29sZWFuID0gZmFsc2U7XG4gIEZpbGVVcGxvYWRTdGF0dXMgPSBGaWxlVXBsb2FkU3RhdHVzO1xuICBmaWxlRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZmlsZURyb3BFcnJvclR5cGU6IHN0cmluZztcbiAgLy8gVE9ETzogdGhpcyBiZWNvbWVzIGlucHV0IHdoZW4gbXVsdGlwbGUgZmlsZSB1cGxvYWQgc3VwcG9ydCB3aXRoIGNhcm91c2VsIGNvbXBvbmVudCB3YXMgZG9uZS5cbiAgc3VwcG9ydE11bHRpRmlsZVVwbG9hZDogYm9vbGVhbiA9IERFRkFVTFRfTVVMVElfRklMRV9TVVBQT1JUO1xuXG4gIHByb3RlY3RlZCBfdXBsb2FkU3RhdHVzOiBGaWxlVXBsb2FkU3RhdHVzID0gRmlsZVVwbG9hZFN0YXR1cy5Ob3RTdGFydGVkO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB1cGxvYWRTdGF0dXMoKTogRmlsZVVwbG9hZFN0YXR1cyB7XG4gICAgcmV0dXJuIHRoaXMuX3VwbG9hZFN0YXR1cztcbiAgfVxuXG4gIHNldCB1cGxvYWRTdGF0dXMoc3RhdHVzOiBGaWxlVXBsb2FkU3RhdHVzKSB7XG4gICAgdGhpcy5fdXBsb2FkU3RhdHVzID0gc3RhdHVzO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9hdXRvVXBsb2FkOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBnZXQgYXV0b1VwbG9hZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b1VwbG9hZDtcbiAgfVxuXG4gIHNldCBhdXRvVXBsb2FkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fYXV0b1VwbG9hZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBmaWxlQnJvd3NlSGFuZGxlcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCBmaWxlczogRmlsZVtdID0gQXJyYXkuZnJvbSh0YXJnZXQuZmlsZXMpO1xuXG4gICAgaWYgKCF2YWxpZEZpbGVUeXBlcyh0aGlzLmFjY2VwdCwgZmlsZXMpKSB7XG4gICAgICB0aGlzLmZpbGVVcGxvYWRWYWxpZGF0aW9uLmVtaXQoe1xuICAgICAgICBpc0Vycm9yOiB0cnVlLFxuICAgICAgICB0eXBlOiBGaWxVcGxvYWRFcnJvclR5cGVzLkV4dGVuc2lvbk5vdFN1cHBvcnRlZCxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5maWxlRHJvcFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbLi4udGhpcy5zZWxlY3RlZEZpbGVzLCAuLi5maWxlc107XG4gICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcyA9IHRoaXMucHJlcGFyZVNlbGVjdGVkRmlsZXModGhpcy5zZWxlY3RlZEZpbGVzKTtcbiAgICB0aGlzLmJyb3dzZU9yRHJhZ0ZpbGVzLmVtaXQodGhpcy5wcmV2aWV3UmVhZHlGaWxlcyk7XG4gIH1cblxuICBmaWxlUmVtb3ZlSGFuZGxlcihpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEZpbGVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgaWYgKFxuICAgICAgdGhpcy5zZWxlY3RlZEZpbGVzLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHRoaXMuZmlsZURyb3BSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLnVwbG9hZFN0YXR1cyA9IEZpbGVVcGxvYWRTdGF0dXMuTm90U3RhcnRlZDtcbiAgICB9XG5cbiAgICB0aGlzLnJlbW92ZUZpbGVzLmVtaXQodGhpcy5wcmV2aWV3UmVhZHlGaWxlcyk7XG4gIH1cblxuICBvbkZpbGVzRHJvcEhhbmRsZXIoZmlsZXM6IEZpbGVbXSk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLnN1cHBvcnRNdWx0aUZpbGVVcGxvYWQgJiZcbiAgICAgICh0aGlzLnNlbGVjdGVkRmlsZXMubGVuZ3RoID09PSAxIHx8IGZpbGVzLmxlbmd0aCAhPT0gMSlcbiAgICApIHtcbiAgICAgIHRoaXMuZmlsZUVycm9yID0gdHJ1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBmaWxlcztcblxuICAgIHRoaXMucHJldmlld1JlYWR5RmlsZXMgPSB0aGlzLnByZXBhcmVTZWxlY3RlZEZpbGVzKHRoaXMuc2VsZWN0ZWRGaWxlcyk7XG4gICAgdGhpcy5icm93c2VPckRyYWdGaWxlcy5lbWl0KHRoaXMucHJldmlld1JlYWR5RmlsZXMpO1xuICB9XG5cbiAgb25GaWxlT3ZlckRyb3B6b25lKGlzRmlsZU92ZXI6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRmlsZU9uRHJvcHpvbmUgPSBpc0ZpbGVPdmVyO1xuICB9XG5cbiAgb25GaWxlRHJvcEVycm9yKHZhbGlkYXRpb246IEZpbGVVcGxvYWRFcnJvcik6IHZvaWQge1xuICAgIHRoaXMuZmlsZUVycm9yID0gdmFsaWRhdGlvbi5pc0Vycm9yO1xuICAgIHRoaXMuZmlsZURyb3BFcnJvclR5cGUgPSB2YWxpZGF0aW9uLnR5cGU7XG4gIH1cblxuICBwcmVwYXJlU2VsZWN0ZWRGaWxlcyhmaWxlczogRmlsZVtdKTogU2VsZWN0ZWRGaWxlW10ge1xuICAgIHJldHVybiBmaWxlcy5tYXAoKGZpbGU6IEZpbGUpID0+ICh7XG4gICAgICBmaWxlLFxuICAgICAgcmVhZGFibGVTaXplOiB0aGlzLmZvcm1hdEJ5dGVzVG9SZWFkYWJsZVNpemUoZmlsZS5zaXplLCAyKSxcbiAgICAgIGltYWdlVXJsOiBmaWxlLnR5cGUuc3RhcnRzV2l0aCgnaW1hZ2UvJylcbiAgICAgICAgPyBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpXG4gICAgICAgIDogbnVsbCxcbiAgICB9KSk7XG4gIH1cblxuICB1cGxvYWRGaWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVzVXBsb2FkLmVtaXQoKTtcbiAgfVxuXG4gIHJldHJ5VXBsb2FkKCk6IHZvaWQge1xuICAgIHRoaXMuZmlsZXNVcGxvYWQuZW1pdCgpO1xuICB9XG5cbiAgY2FuY2VsVXBsb2FkKCk6IHZvaWQge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wcmV2aWV3UmVhZHlGaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy5maWxlUmVtb3ZlSGFuZGxlcihpKTtcbiAgICB9XG4gIH1cblxuICByZXNldEZpbGVVcGxvYWQoKTogdm9pZCB7XG4gICAgdGhpcy5maWxlRHJvcFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB0aGlzLmZpbGVFcnJvciA9IGZhbHNlO1xuICAgIHRoaXMuZmlsZURyb3BFcnJvclR5cGUgPSAnJztcbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbXTtcbiAgICB0aGlzLnByZXZpZXdSZWFkeUZpbGVzID0gW107XG4gICAgdGhpcy51cGxvYWRTdGF0dXMgPSBGaWxlVXBsb2FkU3RhdHVzLk5vdFN0YXJ0ZWQ7XG4gIH1cblxuICBmb3JtYXRCeXRlc1RvUmVhZGFibGVTaXplKGJ5dGVzOiBudW1iZXIsIGRlY2ltYWxzOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmIChieXRlcyA9PT0gMCkge1xuICAgICAgcmV0dXJuIGAwICR7ZmlsZVNpemVzWzBdfWA7XG4gICAgfVxuXG4gICAgY29uc3QgYnl0ZXNQZXJLQiA9IDEwMjQ7XG4gICAgY29uc3QgZGVjaW1hbFBvaW50cyA9IGRlY2ltYWxzIDw9IDAgPyAwIDogZGVjaW1hbHMgfHwgMjtcbiAgICBjb25zdCBleHAgPSBNYXRoLmZsb29yKE1hdGgubG9nKGJ5dGVzKSAvIE1hdGgubG9nKGJ5dGVzUGVyS0IpKTtcbiAgICByZXR1cm4gYCR7cGFyc2VGbG9hdChcbiAgICAgIChieXRlcyAvIE1hdGgucG93KGJ5dGVzUGVyS0IsIGV4cCkpLnRvRml4ZWQoZGVjaW1hbFBvaW50cylcbiAgICApfSAke2ZpbGVTaXplc1tleHBdfWA7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZC13cmFwcGVyXCI+XG4gIDxoMiBjbGFzcz1cImZpbGUtdXBsb2FkLXRpdGxlXCI+e3sgdXBsb2FkVGl0bGUgfX08L2gyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJmaWxlLWRyb3B6b25lXCJcbiAgICBbbmdDbGFzc109XCJ7ICd1cGxvYWQtZmFpbGVkJzogdXBsb2FkU3RhdHVzID09PSBGaWxlVXBsb2FkU3RhdHVzLkZhaWxlZCB9XCJcbiAgICBncmFuaXRlRmlsZURyYWdBbmREcm9wXG4gICAgKGRyb3BwZWRGaWxlcyk9XCJvbkZpbGVzRHJvcEhhbmRsZXIoJGV2ZW50KVwiXG4gICAgKGlzRmlsZU92ZXIpPVwib25GaWxlT3ZlckRyb3B6b25lKCRldmVudClcIlxuICAgIChmaWxlVXBsb2FkVmFsaWRhdGlvbik9XCJvbkZpbGVEcm9wRXJyb3IoJGV2ZW50KVwiXG4gICAgW211bHRpRmlsZVVwbG9hZEVuYWJsZWRdPVwic3VwcG9ydE11bHRpRmlsZVVwbG9hZFwiXG4gICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIFtjdXJyZW50RmlsZXNdPVwic2VsZWN0ZWRGaWxlc1wiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIGNsYXNzPVwiZmlsZS1pbnB1dFwiXG4gICAgICAjZmlsZURyb3BSZWZcbiAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgIHRpdGxlPVwiZmlsZVVwbG9hZFwiXG4gICAgICAoY2hhbmdlKT1cImZpbGVCcm93c2VIYW5kbGVyKCRldmVudClcIlxuICAgICAgW211bHRpcGxlXT1cInN1cHBvcnRNdWx0aUZpbGVVcGxvYWRcIlxuICAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkLWJvZHlcIj5cbiAgICAgIEBpZiAoIWlzRmlsZU9uRHJvcHpvbmUgJiYgIWZpbGVFcnJvcikge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmaWxlLXVwbG9hZC1icm93c2VcIlxuICAgICAgICAgICpuZ0lmPVwicHJldmlld1JlYWR5RmlsZXMubGVuZ3RoID09PSAwOyBlbHNlIGZpbGVQcmV2aWV3XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxncmFuaXRlLWljb25cbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS11cGxvYWQtaWNvblwiXG4gICAgICAgICAgICBbZm9udEljb25dPVwidXBsb2FkSWNvblwiXG4gICAgICAgICAgPjwvZ3Jhbml0ZS1pY29uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLXNlbGVjdGlvblwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZmlsZS11cGxvYWQtYm9keS10ZXh0XCI+e3sgZHJvcFpvbmVUZXh0IH19PC9oMj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLXNlbGVjdC1idXR0b25cIlxuICAgICAgICAgICAgICBncmFuaXRlQnV0dG9uXG4gICAgICAgICAgICAgIChjbGljayk9XCJmaWxlRHJvcFJlZi5jbGljaygpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGdyYW5pdGUtaWNvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnJvd3NlLWJ1dHRvbi1pY29uXCJcbiAgICAgICAgICAgICAgICBbZm9udEljb25dPVwiYnJvd3NlSWNvblwiXG4gICAgICAgICAgICAgID48L2dyYW5pdGUtaWNvbj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJyb3dzZS1idXR0b24tdGV4dFwiPnt7IGJyb3dzZUJ1dHRvblRleHQgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxwICpuZ0lmPVwiZHJvcFpvbmVIaW50XCIgY2xhc3M9XCJmaWxlLXVwbG9hZC1oaW50XCI+XG4gICAgICAgICAgICB7eyBkcm9wWm9uZUhpbnQgfX1cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctdGVtcGxhdGUgI2ZpbGVQcmV2aWV3PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS1wcmV2aWV3LWNvbnRhaW5lclwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJldmlld0ZpbGUgb2YgcHJldmlld1JlYWR5RmlsZXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIEBpZiAocHJldmlld0ZpbGU/LmltYWdlVXJsKSB7XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLXByZXZpZXctbGlua1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3VwbG9hZGluZy1pbi1wcm9ncmVzcyc6XG4gICAgICAgICAgICAgICAgICAgIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgJ3VwbG9hZC1mYWlsZWQnOiB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgW2hyZWZdPVwicHJldmlld0ZpbGU/LmltYWdlVXJsXCJcbiAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtcHJldmlldy1ob2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cInByZXNlbnRhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwicHJldmlld0ZpbGU/LmltYWdlVXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJwcmV2aWV3RmlsZT8uZmlsZT8ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidXBsb2FkaW5nT3ZlcmxheVwiXG4gICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidXBsb2FkU3RhdHVzID09PSBGaWxlVXBsb2FkU3RhdHVzLkZhaWxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInVwbG9hZEZhaWxlZE92ZXJsYXlcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJmaWxlLW5hbWVcIiBbdGl0bGVdPVwicHJldmlld0ZpbGU/LmZpbGU/Lm5hbWVcIj5cbiAgICAgICAgICAgICAgICAgIHt7IHByZXZpZXdGaWxlPy5maWxlPy5uYW1lIH19XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZmlsZS1zaXplXCI+e3sgcHJldmlld0ZpbGU/LnJlYWRhYmxlU2l6ZSB9fTwvcD5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRvY3VtZW50LXByZXZpZXctbGlua1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3VwbG9hZGluZy1pbi1wcm9ncmVzcyc6XG4gICAgICAgICAgICAgICAgICAgIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5JblByb2dyZXNzLFxuICAgICAgICAgICAgICAgICAgJ3VwbG9hZC1mYWlsZWQnOiB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtcHJldmlldy1ob2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxncmFuaXRlLWljb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2N1bWVudC1maWxlLXByZXZpZXdcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudXBsb2FkLWZhaWxlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgIFtmb250SWNvbl09XCInaWNvbi1kb2N1bWVudC1hbHQnXCJcbiAgICAgICAgICAgICAgICAgID48L2dyYW5pdGUtaWNvbj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuSW5Qcm9ncmVzc1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInVwbG9hZGluZ092ZXJsYXlcIlxuICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZmlsZS1uYW1lXCIgW3RpdGxlXT1cInByZXZpZXdGaWxlPy5maWxlPy5uYW1lXCI+XG4gICAgICAgICAgICAgICAgICB7eyBwcmV2aWV3RmlsZT8uZmlsZT8ubmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImZpbGUtc2l6ZVwiPnt7IHByZXZpZXdGaWxlPy5yZWFkYWJsZVNpemUgfX08L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBncmFuaXRlQnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgRmlsZVVwbG9hZFN0YXR1cy5Db21wbGV0ZWQsXG4gICAgICAgICAgICAgICAgICBGaWxlVXBsb2FkU3RhdHVzLk5vdFN0YXJ0ZWRcbiAgICAgICAgICAgICAgICBdLmluY2x1ZGVzKHVwbG9hZFN0YXR1cylcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImZpbGVSZW1vdmVIYW5kbGVyKGkpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgcmVtb3ZlQnV0dG9uVGV4dCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPHAgY2xhc3M9XCJkcm9wLWFyZWEtcGxhY2Vob2xkZXJcIj5cbiAgICAgICAgICB7eyBkcm9wUGxhY2Vob2xkZXJUZXh0IH19XG4gICAgICAgIDwvcD5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZC1mb290ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyLWNvbnRhaW5lclwiICpuZ0lmPVwicHJldmlld1JlYWR5RmlsZXMubGVuZ3RoID4gMFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFhdXRvVXBsb2FkICYmIHVwbG9hZFN0YXR1cyA9PT0gRmlsZVVwbG9hZFN0YXR1cy5Ob3RTdGFydGVkXCJcbiAgICAgICAgZ3Jhbml0ZVByaW1hcnlCdXR0b25cbiAgICAgICAgKGNsaWNrKT1cInVwbG9hZEZpbGVzKClcIlxuICAgICAgPlxuICAgICAgICB7eyB1cGxvYWRCdXR0b25UZXh0IH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1cGxvYWRTdGF0dXMgPT09IEZpbGVVcGxvYWRTdGF0dXMuRmFpbGVkXCI+XG4gICAgICAgIDxidXR0b24gZ3Jhbml0ZUJ1dHRvbiAoY2xpY2spPVwiY2FuY2VsVXBsb2FkKClcIj5cbiAgICAgICAgICB7eyBjYW5jZWxCdXR0b25UZXh0IH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJyZXRyeS11cGxvYWQtYnV0dG9uXCJcbiAgICAgICAgICBncmFuaXRlUHJpbWFyeUJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJyZXRyeVVwbG9hZCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHJldHJ5QnV0dG9uVGV4dCB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3VwbG9hZGluZ092ZXJsYXk+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXByZXZpZXctb3ZlcmxheVwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibG9hZGluZy1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkaW5nLXNwaW5uZXJcIj48L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3VwbG9hZEZhaWxlZE92ZXJsYXk+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXByZXZpZXctb3ZlcmxheVwiPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -6,11 +6,11 @@ import { GraniteFileDragAndDropDirective } from './directives/file-drag-and-drop
6
6
  import { GraniteIconModule } from '../icon/icon.module';
7
7
  import * as i0 from "@angular/core";
8
8
  export class GraniteFileUploadModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadModule, declarations: [GraniteFileUploadComponent, GraniteFileDragAndDropDirective], imports: [CommonModule, GraniteButtonModule, GraniteIconModule], exports: [GraniteFileUploadComponent] }); }
11
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadModule, imports: [CommonModule, GraniteButtonModule, GraniteIconModule] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadModule, declarations: [GraniteFileUploadComponent, GraniteFileDragAndDropDirective], imports: [CommonModule, GraniteButtonModule, GraniteIconModule], exports: [GraniteFileUploadComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadModule, imports: [CommonModule, GraniteButtonModule, GraniteIconModule] }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteFileUploadModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteFileUploadModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [GraniteFileUploadComponent, GraniteFileDragAndDropDirective],
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
18
18
  imports: [CommonModule, GraniteButtonModule, GraniteIconModule],
19
19
  }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBT3hELE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjsrR0FBdkIsdUJBQXVCLGlCQUpuQiwwQkFBMEIsRUFBRSwrQkFBK0IsYUFFaEUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixhQURwRCwwQkFBMEI7K0dBR3pCLHVCQUF1QixZQUZ4QixZQUFZLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCOzsyRkFFbkQsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixFQUFFLCtCQUErQixDQUFDO29CQUMzRSxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDO2lCQUNoRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgR3Jhbml0ZUZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmFuaXRlQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xuaW1wb3J0IHsgR3Jhbml0ZUZpbGVEcmFnQW5kRHJvcERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9maWxlLWRyYWctYW5kLWRyb3AuZGlyZWN0aXZlJztcbmltcG9ydCB7IEdyYW5pdGVJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0dyYW5pdGVGaWxlVXBsb2FkQ29tcG9uZW50LCBHcmFuaXRlRmlsZURyYWdBbmREcm9wRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0dyYW5pdGVGaWxlVXBsb2FkQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgR3Jhbml0ZUJ1dHRvbk1vZHVsZSwgR3Jhbml0ZUljb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlRmlsZVVwbG9hZE1vZHVsZSB7fVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBT3hELE1BQU0sT0FBTyx1QkFBdUI7K0dBQXZCLHVCQUF1QjtnSEFBdkIsdUJBQXVCLGlCQUpuQiwwQkFBMEIsRUFBRSwrQkFBK0IsYUFFaEUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixhQURwRCwwQkFBMEI7Z0hBR3pCLHVCQUF1QixZQUZ4QixZQUFZLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCOzs0RkFFbkQsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixFQUFFLCtCQUErQixDQUFDO29CQUMzRSxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDO2lCQUNoRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgR3Jhbml0ZUZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmFuaXRlQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xuaW1wb3J0IHsgR3Jhbml0ZUZpbGVEcmFnQW5kRHJvcERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9maWxlLWRyYWctYW5kLWRyb3AuZGlyZWN0aXZlJztcbmltcG9ydCB7IEdyYW5pdGVJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0dyYW5pdGVGaWxlVXBsb2FkQ29tcG9uZW50LCBHcmFuaXRlRmlsZURyYWdBbmREcm9wRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0dyYW5pdGVGaWxlVXBsb2FkQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgR3Jhbml0ZUJ1dHRvbk1vZHVsZSwgR3Jhbml0ZUljb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlRmlsZVVwbG9hZE1vZHVsZSB7fVxuIl19
@@ -30,10 +30,10 @@ export class GraniteGridItemComponent {
30
30
  setStyle(property, value) {
31
31
  this.renderer.setStyle(this.element.nativeElement, property, value || '');
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteGridItemComponent, selector: "granite-grid-item", inputs: { columnStart: "columnStart", columnEnd: "columnEnd", rowStart: "rowStart", rowEnd: "rowEnd" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteGridItemComponent, selector: "granite-grid-item", inputs: { columnStart: "columnStart", columnEnd: "columnEnd", rowStart: "rowStart", rowEnd: "rowEnd" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridItemComponent, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridItemComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{
39
39
  selector: 'granite-grid-item',
@@ -114,10 +114,10 @@ export class GraniteGridComponent {
114
114
  updateRowStyles() {
115
115
  this.setCssProperty('--rows', (this._rows && this._rows.toString()) || null);
116
116
  }
117
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
118
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteGridComponent, selector: "granite-grid", inputs: { cols: "cols", rows: "rows" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{--cols: 1;--rows: 1;display:grid;grid-template-columns:repeat(var(--cols, 1),1fr);grid-template-rows:repeat(var(--rows, 1),1fr)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteGridComponent, selector: "granite-grid", inputs: { cols: "cols", rows: "rows" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{--cols: 1;--rows: 1;display:grid;grid-template-columns:repeat(var(--cols, 1),1fr);grid-template-rows:repeat(var(--rows, 1),1fr)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
119
119
  }
120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridComponent, decorators: [{
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridComponent, decorators: [{
121
121
  type: Component,
122
122
  args: [{ selector: 'granite-grid', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{--cols: 1;--rows: 1;display:grid;grid-template-columns:repeat(var(--cols, 1),1fr);grid-template-rows:repeat(var(--rows, 1),1fr)}\n"] }]
123
123
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { cols: [{
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
125
125
  }], rows: [{
126
126
  type: Input
127
127
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2dyaWQvZ3JpZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFFTCxTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTdEOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sd0JBQXdCO0lBYW5DLFlBQ1UsT0FBZ0MsRUFDaEMsUUFBbUI7UUFEbkIsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUMxQixDQUFDO0lBRUosV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFFBQVEsQ0FBQyxRQUFnQixFQUFFLEtBQVU7UUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM1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dCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFJlbmRlcmVyMixcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuLyoqXG4gKiBHcmlkIGl0ZW0gY29tcG9uZW50XG4gKlxuICogTWVyZWx5IGEgd3JhcHBlciBmb3IgQ1NTIEdyaWQgaXRlbXMsIGFjY2VwdGluZyBpdGVtIHN0eWxlIGFzIGlucHV0IHBhcmFtZXRlcnMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVHcmlkSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIGNvbHVtblN0YXJ0OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgY29sdW1uRW5kOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgcm93U3RhcnQ6IG51bWJlcjtcblxuICBASW5wdXQoKVxuICByb3dFbmQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVTdHlsZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgZWxlbWVudCBzdHlsZXNcbiAgICovXG4gIHVwZGF0ZVN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNldFN0eWxlKCdncmlkQ29sdW1uU3RhcnQnLCB0aGlzLmNvbHVtblN0YXJ0KTtcbiAgICB0aGlzLnNldFN0eWxlKCdncmlkQ29sdW1uRW5kJywgdGhpcy5jb2x1bW5FbmQpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ2dyaWRSb3dTdGFydCcsIHRoaXMucm93U3RhcnQpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ2dyaWRSb3dFbmQnLCB0aGlzLnJvd0VuZCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZWxlbWVudCBzdHlsZS4gTmVlZHMgdG8gYmUgc2V0IG1hbnVhbGx5IHRvIGF2b2lkIFwiQ2hhbmdlZCBhZnRlclxuICAgKiBjaGVja2VkXCIgZXJyb3JzIHRoYXQgd291bGQgb2NjdXIgd2l0aCBIb3N0QmluZGluZy5cbiAgICovXG4gIHByaXZhdGUgc2V0U3R5bGUocHJvcGVydHk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHByb3BlcnR5LCB2YWx1ZSB8fCAnJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBHcmlkXG4gKlxuICogQSB3cmFwcGVyIGFyb3VuZCBhIG5hdGl2ZSBDU1MgR3JpZC4gQW55dGhpbmcgY2FuIGJlIHVzZWQgZm9yIGdyaWQgaXRlbXMsIGJ1dFxuICogYEdyaWRJdGVtQ29tcG9uZW50YCBpcyByZWNvbW1lbmRlZCBmb3IgY29tbW9uIGNhc2VzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmFuaXRlLWdyaWQnLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdHlsZVVybHM6IFsnZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUdyaWRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogTnVtYmVyIG9mIGdyaWQgY29sdW1ucywgdW5sZXNzIHNldCB2aWEgc3R5bGluZyAoZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKVxuICAgKlxuICAgKiBTZXR0aW5nIHRoaXMgdmFsdWUgd2lsbCBwcm9kdWNlIGVxdWFsbHkgc2l6ZWQgY29sdW1uc1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNvbHModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2NvbHMgPSBNYXRoLm1heCgxLCBNYXRoLnJvdW5kKGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSkpO1xuICB9XG5cbiAgZ2V0IGNvbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY29scztcbiAgfVxuXG4gIC8qKiBOdW1iZXIgb2YgY29sdW1ucyB0byByZW5kZXIgKi9cbiAgcHJvdGVjdGVkIF9jb2xzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBncmlkIHJvd3MsIHVubGVzcyBzZXQgdmlhIHN0eWxpbmcgKGdyaWQtdGVtcGxhdGUtcm93cylcbiAgICpcbiAgICogU2V0dGluZyB0aGlzIHZhbHVlIHdpbGwgcHJvZHVjZSBlcXVhbGx5IHNpemVkIHJvd3NcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCByb3dzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9yb3dzID0gTWF0aC5tYXgoMSwgTWF0aC5yb3VuZChjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpKTtcbiAgfVxuXG4gIGdldCByb3dzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3M7XG4gIH1cblxuICAvKiogTnVtYmVyIG9mIHJvd3MgdG8gcmVuZGVyICovXG4gIHByb3RlY3RlZCBfcm93czogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHt9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlU3R5bGVzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgKGNoYW5nZXMuY29scyAmJiAhY2hhbmdlcy5jb2xzLmlzRmlyc3RDaGFuZ2UoKSkgfHxcbiAgICAgIChjaGFuZ2VzLnJvd3MgJiYgIWNoYW5nZXMucm93cy5pc0ZpcnN0Q2hhbmdlKCkpXG4gICAgKSB7XG4gICAgICB0aGlzLnVwZGF0ZVN0eWxlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBVcGRhdGUgZWxlbWVudCBzdHlsZXMgKi9cbiAgdXBkYXRlU3R5bGVzKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQ29sdW1uU3R5bGVzKCk7XG4gICAgdGhpcy51cGRhdGVSb3dTdHlsZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgQ1NTIHZhcmlhYmxlIHZhbHVlIG9yIHJlbW92ZSBpdCBpZiBhIG51bGwgdmFsdWUgaXMgZ2l2ZW4uXG4gICAqIFdvdWxkIG9mIGNvdXJzZSByYXRoZXIgaGF2ZSB1c2VkIHByb3BlcnR5IGJpbmRpbmcgYnV0IHRoYXQgaXMgbm90XG4gICAqIHN1cHBvcnRlZCB1bnRpbCAocGVyaGFwcykgQW5ndWxhciA5LlxuICAgKiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzkzNDNcbiAgICpcbiAgICogVE9ETzogUmVwbGFjZSB3aXRoIHByb3BlcnR5IGJpbmRpbmcgd2l0aCBBbmd1bGFyIDkgdXBncmFkZVxuICAgKi9cbiAgcHJvdGVjdGVkIHNldENzc1Byb3BlcnR5KHZhcmlhYmxlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkodmFyaWFibGUsIHZhbHVlKTtcbiAgfVxuXG4gIC8qKiBVcGRhdGUgZ3JpZCBjb2x1bW4gdGVtcGxhdGUgc3R5bGUgICovXG4gIHByb3RlY3RlZCB1cGRhdGVDb2x1bW5TdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDc3NQcm9wZXJ0eShcbiAgICAgICctLWNvbHMnLFxuICAgICAgKHRoaXMuX2NvbHMgJiYgdGhpcy5fY29scy50b1N0cmluZygpKSB8fCBudWxsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBVcGRhdGUgZ3JpZCByb3cgdGVtcGxhdGUgc3R5bGUgICovXG4gIHByb3RlY3RlZCB1cGRhdGVSb3dTdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDc3NQcm9wZXJ0eShcbiAgICAgICctLXJvd3MnLFxuICAgICAgKHRoaXMuX3Jvd3MgJiYgdGhpcy5fcm93cy50b1N0cmluZygpKSB8fCBudWxsXG4gICAgKTtcbiAgfVxufVxuIl19
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2dyaWQvZ3JpZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFFTCxTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTdEOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sd0JBQXdCO0lBYW5DLFlBQ1UsT0FBZ0MsRUFDaEMsUUFBbUI7UUFEbkIsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUMxQixDQUFDO0lBRUosV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFFBQVEsQ0FBQyxRQUFnQixFQUFFLEtBQVU7UUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM1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dCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFJlbmRlcmVyMixcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuLyoqXG4gKiBHcmlkIGl0ZW0gY29tcG9uZW50XG4gKlxuICogTWVyZWx5IGEgd3JhcHBlciBmb3IgQ1NTIEdyaWQgaXRlbXMsIGFjY2VwdGluZyBpdGVtIHN0eWxlIGFzIGlucHV0IHBhcmFtZXRlcnMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVHcmlkSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIGNvbHVtblN0YXJ0OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgY29sdW1uRW5kOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgcm93U3RhcnQ6IG51bWJlcjtcblxuICBASW5wdXQoKVxuICByb3dFbmQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVTdHlsZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgZWxlbWVudCBzdHlsZXNcbiAgICovXG4gIHVwZGF0ZVN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNldFN0eWxlKCdncmlkQ29sdW1uU3RhcnQnLCB0aGlzLmNvbHVtblN0YXJ0KTtcbiAgICB0aGlzLnNldFN0eWxlKCdncmlkQ29sdW1uRW5kJywgdGhpcy5jb2x1bW5FbmQpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ2dyaWRSb3dTdGFydCcsIHRoaXMucm93U3RhcnQpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ2dyaWRSb3dFbmQnLCB0aGlzLnJvd0VuZCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZWxlbWVudCBzdHlsZS4gTmVlZHMgdG8gYmUgc2V0IG1hbnVhbGx5IHRvIGF2b2lkIFwiQ2hhbmdlZCBhZnRlclxuICAgKiBjaGVja2VkXCIgZXJyb3JzIHRoYXQgd291bGQgb2NjdXIgd2l0aCBIb3N0QmluZGluZy5cbiAgICovXG4gIHByaXZhdGUgc2V0U3R5bGUocHJvcGVydHk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHByb3BlcnR5LCB2YWx1ZSB8fCAnJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBHcmlkXG4gKlxuICogQSB3cmFwcGVyIGFyb3VuZCBhIG5hdGl2ZSBDU1MgR3JpZC4gQW55dGhpbmcgY2FuIGJlIHVzZWQgZm9yIGdyaWQgaXRlbXMsIGJ1dFxuICogYEdyaWRJdGVtQ29tcG9uZW50YCBpcyByZWNvbW1lbmRlZCBmb3IgY29tbW9uIGNhc2VzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmFuaXRlLWdyaWQnLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdHlsZVVybHM6IFsnZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUdyaWRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogTnVtYmVyIG9mIGdyaWQgY29sdW1ucywgdW5sZXNzIHNldCB2aWEgc3R5bGluZyAoZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKVxuICAgKlxuICAgKiBTZXR0aW5nIHRoaXMgdmFsdWUgd2lsbCBwcm9kdWNlIGVxdWFsbHkgc2l6ZWQgY29sdW1uc1xuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGNvbHModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2NvbHMgPSBNYXRoLm1heCgxLCBNYXRoLnJvdW5kKGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSkpO1xuICB9XG5cbiAgZ2V0IGNvbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fY29scztcbiAgfVxuXG4gIC8qKiBOdW1iZXIgb2YgY29sdW1ucyB0byByZW5kZXIgKi9cbiAgcHJvdGVjdGVkIF9jb2xzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBncmlkIHJvd3MsIHVubGVzcyBzZXQgdmlhIHN0eWxpbmcgKGdyaWQtdGVtcGxhdGUtcm93cylcbiAgICpcbiAgICogU2V0dGluZyB0aGlzIHZhbHVlIHdpbGwgcHJvZHVjZSBlcXVhbGx5IHNpemVkIHJvd3NcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCByb3dzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9yb3dzID0gTWF0aC5tYXgoMSwgTWF0aC5yb3VuZChjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpKTtcbiAgfVxuXG4gIGdldCByb3dzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Jvd3M7XG4gIH1cblxuICAvKiogTnVtYmVyIG9mIHJvd3MgdG8gcmVuZGVyICovXG4gIHByb3RlY3RlZCBfcm93czogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHt9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlU3R5bGVzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgKGNoYW5nZXMuY29scyAmJiAhY2hhbmdlcy5jb2xzLmlzRmlyc3RDaGFuZ2UoKSkgfHxcbiAgICAgIChjaGFuZ2VzLnJvd3MgJiYgIWNoYW5nZXMucm93cy5pc0ZpcnN0Q2hhbmdlKCkpXG4gICAgKSB7XG4gICAgICB0aGlzLnVwZGF0ZVN0eWxlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBVcGRhdGUgZWxlbWVudCBzdHlsZXMgKi9cbiAgdXBkYXRlU3R5bGVzKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQ29sdW1uU3R5bGVzKCk7XG4gICAgdGhpcy51cGRhdGVSb3dTdHlsZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgQ1NTIHZhcmlhYmxlIHZhbHVlIG9yIHJlbW92ZSBpdCBpZiBhIG51bGwgdmFsdWUgaXMgZ2l2ZW4uXG4gICAqIFdvdWxkIG9mIGNvdXJzZSByYXRoZXIgaGF2ZSB1c2VkIHByb3BlcnR5IGJpbmRpbmcgYnV0IHRoYXQgaXMgbm90XG4gICAqIHN1cHBvcnRlZCB1bnRpbCAocGVyaGFwcykgQW5ndWxhciA5LlxuICAgKiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzkzNDNcbiAgICpcbiAgICogVE9ETzogUmVwbGFjZSB3aXRoIHByb3BlcnR5IGJpbmRpbmcgd2l0aCBBbmd1bGFyIDkgdXBncmFkZVxuICAgKi9cbiAgcHJvdGVjdGVkIHNldENzc1Byb3BlcnR5KHZhcmlhYmxlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkodmFyaWFibGUsIHZhbHVlKTtcbiAgfVxuXG4gIC8qKiBVcGRhdGUgZ3JpZCBjb2x1bW4gdGVtcGxhdGUgc3R5bGUgICovXG4gIHByb3RlY3RlZCB1cGRhdGVDb2x1bW5TdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDc3NQcm9wZXJ0eShcbiAgICAgICctLWNvbHMnLFxuICAgICAgKHRoaXMuX2NvbHMgJiYgdGhpcy5fY29scy50b1N0cmluZygpKSB8fCBudWxsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBVcGRhdGUgZ3JpZCByb3cgdGVtcGxhdGUgc3R5bGUgICovXG4gIHByb3RlY3RlZCB1cGRhdGVSb3dTdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDc3NQcm9wZXJ0eShcbiAgICAgICctLXJvd3MnLFxuICAgICAgKHRoaXMuX3Jvd3MgJiYgdGhpcy5fcm93cy50b1N0cmluZygpKSB8fCBudWxsXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -3,11 +3,11 @@ import { CommonModule } from '@angular/common';
3
3
  import { GraniteGridComponent, GraniteGridItemComponent, } from './grid.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class GraniteGridModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridModule, declarations: [GraniteGridComponent, GraniteGridItemComponent], imports: [CommonModule], exports: [GraniteGridComponent, GraniteGridItemComponent] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridModule, imports: [CommonModule] }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridModule, declarations: [GraniteGridComponent, GraniteGridItemComponent], imports: [CommonModule], exports: [GraniteGridComponent, GraniteGridItemComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridModule, imports: [CommonModule] }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteGridModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteGridModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [GraniteGridComponent, GraniteGridItemComponent],
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
15
15
  exports: [GraniteGridComponent, GraniteGridItemComponent],
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2dyaWQvZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUNMLG9CQUFvQixFQUNwQix3QkFBd0IsR0FDekIsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPMUIsTUFBTSxPQUFPLGlCQUFpQjs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBSmIsb0JBQW9CLEVBQUUsd0JBQXdCLGFBQ25ELFlBQVksYUFDWixvQkFBb0IsRUFBRSx3QkFBd0I7K0dBRTdDLGlCQUFpQixZQUhsQixZQUFZOzsyRkFHWCxpQkFBaUI7a0JBTDdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUsd0JBQXdCLENBQUM7b0JBQzlELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMsb0JBQW9CLEVBQUUsd0JBQXdCLENBQUM7aUJBQzFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7XG4gIEdyYW5pdGVHcmlkQ29tcG9uZW50LFxuICBHcmFuaXRlR3JpZEl0ZW1Db21wb25lbnQsXG59IGZyb20gJy4vZ3JpZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtHcmFuaXRlR3JpZENvbXBvbmVudCwgR3Jhbml0ZUdyaWRJdGVtQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtHcmFuaXRlR3JpZENvbXBvbmVudCwgR3Jhbml0ZUdyaWRJdGVtQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUdyaWRNb2R1bGUge31cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2dyaWQvZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUNMLG9CQUFvQixFQUNwQix3QkFBd0IsR0FDekIsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPMUIsTUFBTSxPQUFPLGlCQUFpQjsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBSmIsb0JBQW9CLEVBQUUsd0JBQXdCLGFBQ25ELFlBQVksYUFDWixvQkFBb0IsRUFBRSx3QkFBd0I7Z0hBRTdDLGlCQUFpQixZQUhsQixZQUFZOzs0RkFHWCxpQkFBaUI7a0JBTDdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUsd0JBQXdCLENBQUM7b0JBQzlELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMsb0JBQW9CLEVBQUUsd0JBQXdCLENBQUM7aUJBQzFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7XG4gIEdyYW5pdGVHcmlkQ29tcG9uZW50LFxuICBHcmFuaXRlR3JpZEl0ZW1Db21wb25lbnQsXG59IGZyb20gJy4vZ3JpZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtHcmFuaXRlR3JpZENvbXBvbmVudCwgR3Jhbml0ZUdyaWRJdGVtQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtHcmFuaXRlR3JpZENvbXBvbmVudCwgR3Jhbml0ZUdyaWRJdGVtQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUdyaWRNb2R1bGUge31cbiJdfQ==
@@ -25,10 +25,10 @@ export class GraniteIconComponent {
25
25
  this._previousFontIconClass = this.fontIcon;
26
26
  }
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: 'aria-hidden', attribute: true }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: GraniteIconComponent, selector: "granite-icon", inputs: { fontIcon: "fontIcon" }, host: { attributes: { "role": "img" }, classAttribute: "granite-icon" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host.granite-icon{background-repeat:no-repeat;display:inline-block;padding:0 calc(var(--granite-spacing-4) / 2);font-size:1em;line-height:1em;position:relative;top:.1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: 'aria-hidden', attribute: true }], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteIconComponent, selector: "granite-icon", inputs: { fontIcon: "fontIcon" }, host: { attributes: { "role": "img" }, classAttribute: "granite-icon" }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host.granite-icon{background-repeat:no-repeat;display:inline-block;padding:0 calc(var(--granite-spacing-4) / 2);font-size:1em;line-height:1em;position:relative;top:.1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconComponent, decorators: [{
32
32
  type: Component,
33
33
  args: [{ selector: 'granite-icon', template: '<ng-content></ng-content>', host: {
34
34
  role: 'img',
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
40
40
  }] }], propDecorators: { fontIcon: [{
41
41
  type: Input
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ljb24vaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDOztBQVl2QixNQUFNLE9BQU8sb0JBQW9CO0lBTS9CLFlBQ1MsV0FBdUIsRUFDdEIsUUFBbUIsRUFDRCxVQUFrQjtRQUZyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRzNCLHNGQUFzRjtRQUN0RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3hCLFdBQVcsQ0FBQyxhQUFhLEVBQ3pCLGFBQWEsRUFDYixNQUFNLENBQ1AsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQ2xELElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLHNCQUFzQixDQUM1QixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEUsQ0FBQztZQUNELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlDLENBQUM7SUFDSCxDQUFDOzhHQXhDVSxvQkFBb0IscUVBU2xCLGFBQWE7a0dBVGYsb0JBQW9CLG9MQVJyQiwyQkFBMkI7OzJGQVExQixvQkFBb0I7a0JBVmhDLFNBQVM7K0JBQ0UsY0FBYyxZQUNkLDJCQUEyQixRQUUvQjt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxLQUFLLEVBQUUsY0FBYztxQkFDdEIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07OzBCQVc1QyxTQUFTOzJCQUFDLGFBQWE7eUNBUDFCLFFBQVE7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhbml0ZS1pY29uJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgY2xhc3M6ICdncmFuaXRlLWljb24nLFxuICB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUljb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBmb250SWNvbjogc3RyaW5nO1xuXG4gIHByaXZhdGUgX3ByZXZpb3VzRm9udEljb25DbGFzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKSBhcmlhSGlkZGVuOiBzdHJpbmdcbiAgKSB7XG4gICAgLy8gYXJpYS1oaWRkZW4gd2lsbCBiZSBzZXQgdG8gdHJ1ZSBieSBkZWZhdWx0LCB1bmxlc3MgaXQncyBvdmVycmlkZGVuIGJ5IHRoZSBkZXZlbG9wZXJcbiAgICBpZiAoIWFyaWFIaWRkZW4pIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgICBfZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAnYXJpYS1oaWRkZW4nLFxuICAgICAgICAndHJ1ZSdcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmZvbnRJY29uKSB7XG4gICAgICB0aGlzLl91cGRhdGVGb250SWNvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUZvbnRJY29uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZvbnRJY29uICE9PSB0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MpIHtcbiAgICAgIGlmICh0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhcbiAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgdGhpcy5fcHJldmlvdXNGb250SWNvbkNsYXNzXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5mb250SWNvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb250SWNvbik7XG4gICAgICB9XG4gICAgICB0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MgPSB0aGlzLmZvbnRJY29uO1xuICAgIH1cbiAgfVxufVxuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ljb24vaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDOztBQVl2QixNQUFNLE9BQU8sb0JBQW9CO0lBTS9CLFlBQ1MsV0FBdUIsRUFDdEIsUUFBbUIsRUFDRCxVQUFrQjtRQUZyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRzNCLHNGQUFzRjtRQUN0RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3hCLFdBQVcsQ0FBQyxhQUFhLEVBQ3pCLGFBQWEsRUFDYixNQUFNLENBQ1AsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQ2xELElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFDOUIsSUFBSSxDQUFDLHNCQUFzQixDQUM1QixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEUsQ0FBQztZQUNELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlDLENBQUM7SUFDSCxDQUFDOytHQXhDVSxvQkFBb0IscUVBU2xCLGFBQWE7bUdBVGYsb0JBQW9CLG9MQVJyQiwyQkFBMkI7OzRGQVExQixvQkFBb0I7a0JBVmhDLFNBQVM7K0JBQ0UsY0FBYyxZQUNkLDJCQUEyQixRQUUvQjt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxLQUFLLEVBQUUsY0FBYztxQkFDdEIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07OzBCQVc1QyxTQUFTOzJCQUFDLGFBQWE7eUNBUDFCLFFBQVE7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhbml0ZS1pY29uJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgY2xhc3M6ICdncmFuaXRlLWljb24nLFxuICB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUljb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBmb250SWNvbjogc3RyaW5nO1xuXG4gIHByaXZhdGUgX3ByZXZpb3VzRm9udEljb25DbGFzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nKSBhcmlhSGlkZGVuOiBzdHJpbmdcbiAgKSB7XG4gICAgLy8gYXJpYS1oaWRkZW4gd2lsbCBiZSBzZXQgdG8gdHJ1ZSBieSBkZWZhdWx0LCB1bmxlc3MgaXQncyBvdmVycmlkZGVuIGJ5IHRoZSBkZXZlbG9wZXJcbiAgICBpZiAoIWFyaWFIaWRkZW4pIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgICBfZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAnYXJpYS1oaWRkZW4nLFxuICAgICAgICAndHJ1ZSdcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmZvbnRJY29uKSB7XG4gICAgICB0aGlzLl91cGRhdGVGb250SWNvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUZvbnRJY29uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZvbnRJY29uICE9PSB0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MpIHtcbiAgICAgIGlmICh0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhcbiAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgdGhpcy5fcHJldmlvdXNGb250SWNvbkNsYXNzXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5mb250SWNvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5mb250SWNvbik7XG4gICAgICB9XG4gICAgICB0aGlzLl9wcmV2aW91c0ZvbnRJY29uQ2xhc3MgPSB0aGlzLmZvbnRJY29uO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
2
2
  import { GraniteIconComponent } from './icon.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class GraniteIconModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconModule, declarations: [GraniteIconComponent], exports: [GraniteIconComponent] }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconModule }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconModule, declarations: [GraniteIconComponent], exports: [GraniteIconComponent] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconModule }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: GraniteIconModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteIconModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [GraniteIconComponent],
13
13
  exports: [GraniteIconComponent],
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ljb24vaWNvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFNeEQsTUFBTSxPQUFPLGlCQUFpQjs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBSGIsb0JBQW9CLGFBQ3pCLG9CQUFvQjsrR0FFbkIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUo3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3Jhbml0ZUljb25Db21wb25lbnQgfSBmcm9tICcuL2ljb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbR3Jhbml0ZUljb25Db21wb25lbnRdLFxuICBleHBvcnRzOiBbR3Jhbml0ZUljb25Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlSWNvbk1vZHVsZSB7fVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2ljb24vaWNvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFNeEQsTUFBTSxPQUFPLGlCQUFpQjsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBSGIsb0JBQW9CLGFBQ3pCLG9CQUFvQjtnSEFFbkIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUo3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3Jhbml0ZUljb25Db21wb25lbnQgfSBmcm9tICcuL2ljb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbR3Jhbml0ZUljb25Db21wb25lbnRdLFxuICBleHBvcnRzOiBbR3Jhbml0ZUljb25Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlSWNvbk1vZHVsZSB7fVxuIl19