@eqproject/eqp-attachments 0.1.8 → 0.1.9
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.
- package/bundles/eqproject-eqp-attachments.umd.js +1 -1
- package/bundles/eqproject-eqp-attachments.umd.js.map +1 -1
- package/bundles/eqproject-eqp-attachments.umd.min.js +1 -1
- package/bundles/eqproject-eqp-attachments.umd.min.js.map +1 -1
- package/eqproject-eqp-attachments.metadata.json +1 -1
- package/esm2015/lib/eqp-attachments.component.js +2 -2
- package/esm5/lib/eqp-attachments.component.js +2 -2
- package/fesm2015/eqproject-eqp-attachments.js +1 -1
- package/fesm2015/eqproject-eqp-attachments.js.map +1 -1
- package/fesm5/eqproject-eqp-attachments.js +1 -1
- package/fesm5/eqproject-eqp-attachments.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"EqpAttachmentsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"eqp-attachments","template":"<!-- Se richiesta la gestione multipla mostra il pulsante di aggiunta e la tabella con l'elenco allegati -->\r\n<div *ngIf=\"multipleAttachment == true\">\r\n <mat-card [ngStyle]=\"{ 'box-shadow': showMatCard == false ? 'none' : null }\">\r\n <mat-card-header>\r\n <div class=\"col-md-6\">\r\n <div class=\"text-nowrap eqp-attachments-header-title\" *ngIf=\"showHeader == true\">\r\n {{headerTitle}}\r\n </div>\r\n </div>\r\n <div class=\"col-md-6 text-right\">\r\n <div class=\"row justify-content-end\">\r\n <!-- Template del button per l'aggiunta di un allegato -->\r\n <ng-container *ngTemplateOutlet=\"addAttachmentButton\"></ng-container>\r\n </div>\r\n </div>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <eqp-table #attachmentTable [createMatCard]=\"false\" #table [columns]=\"attachmentsColumns\"\r\n [data]=\"attachmentsList\" [emptyTableMessage]=\"emptyTableMessage\" [searchText]=\"eqpTableSearchText\">\r\n </eqp-table>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n\r\n<!-- Se richiesta la gestione singola mostra il pulsante di caricamento di un singolo file -->\r\n<div *ngIf=\"multipleAttachment != true\">\r\n <!-- Template del button per l'aggiunta di un allegato -->\r\n <ng-container *ngTemplateOutlet=\"addAttachmentButton\"></ng-container>\r\n\r\n <button class=\"mb-2 mr-2 eqp-attachments-download-btn\" (click)=\"viewAttachment(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0]\" color=\"primary\">\r\n <mat-icon *ngIf=\"attachmentsList[0].AttachmentType == AttachmentType.FILE\">download</mat-icon>\r\n <mat-icon *ngIf=\"attachmentsList[0].AttachmentType != AttachmentType.FILE\">open_in_new</mat-icon>\r\n {{attachmentsList[0].AttachmentType == AttachmentType.FILE ? downloadLabel : openLinkLabel}}\r\n </button>\r\n <button class=\"mb-2 mr-2 eqp-attachments-preview-btn\" (click)=\"openPreviewDialog(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button color=\"primary\"\r\n *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0] && (!attachmentsList[0].FileContentType || (!attachmentsList[0].FileContentType.startsWith('video') && !attachmentsList[0].FileContentType.startsWith('audio')))\">\r\n <mat-icon>visibility</mat-icon> {{previewLabel}}\r\n </button>\r\n <button class=\"mb-2 eqp-attachments-delete-btn\" (click)=\"deleteAttachment(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0]\"\r\n [disabled]=\"isDisabled\">\r\n <mat-icon>delete</mat-icon> {{deleteLabel}}\r\n </button>\r\n\r\n <div class=\"row\" style=\"margin-top: 10px;\"\r\n *ngIf=\"attachmentsList.length > 0 && attachmentsList[0] && attachmentsList[0].FileDataBase64 && attachmentsList[0].IsImage == true\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"single-attachment-inline-preview-container\">\r\n <img src=\"data:image/png;base64,{{attachmentsList[0].FileDataBase64}}\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"attachmentsList.length > 0 && attachmentsList[0] && attachmentsList[0].IsImage != true\">\r\n <div class=\"col-sm-12\">\r\n <mat-form-field>\r\n <mat-label>{{fileNameLabel}}</mat-label>\r\n <input readonly matInput [(ngModel)]=\"attachmentsList[0].FileName\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n<ng-template #dialogAddAttachment>\r\n <div class=\"container-fluid eqp-attachments-dialog-add-container\"\r\n style=\"max-height: 70vh !important; overflow-x: hidden; overflow-y: auto;\">\r\n <form [formGroup]=\"newAttachmentForm\" (ngSubmit)=\"confirmAddAttachment()\" *ngIf=\"newAttachmentForm\">\r\n <div class=\"row\">\r\n <div class=\"header-title-standard\"> {{addButtonLabel}} {{ newAttachment.AttachmentType ==\r\n attachmentType.FILE ?\r\n 'File' : 'Link'}} </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == attachmentType.FILE\">\r\n <input #imageInput style=\"display:none;\" id=\"file_attachment\" name=\"file_attachment\" type=\"file\"\r\n (change)=\"onFileInputChange($event)\" [accept]=\"acceptedFileTypes\" />\r\n <button (click)=\"imageInput.click()\" type=\"button\" style=\"margin-left: 10px;\" id=\"file_attachment\"\r\n mat-raised-button color=\"primary\" [disabled]=\"showCropImage == true\"\r\n class=\"mb-2 btn btn-primary eqp-attachments-upload-btn\" *ngIf=\"!newAttachment.FileDataBase64\">\r\n <mat-icon>cloud_upload</mat-icon>\r\n {{uploadFileLabel}}\r\n </button>\r\n <button (click)=\"abortFile()\" type=\"button\" style=\"margin-left: 10px;\" mat-raised-button\r\n *ngIf=\"newAttachment.FileDataBase64\" class=\"mb-2 eqp-attachments-delete-btn\">\r\n <mat-icon>delete</mat-icon> {{deleteLabel}}\r\n </button>\r\n </div>\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == 2 || selectedFile\">\r\n <mat-form-field>\r\n <mat-label> {{fileNameLabel}} </mat-label>\r\n <input formControlName=\"name\" matInput [(ngModel)]=\"newAttachment.FileName\">\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == 2\">\r\n <mat-form-field>\r\n <mat-label> Link </mat-label>\r\n <input formControlName=\"path\" required matInput [(ngModel)]=\"newAttachment.FilePath\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\"\r\n *ngIf=\"showCropImage != true && newAttachment.FileDataBase64 && newAttachment.IsImage == true\"\r\n style=\"margin-top: 10px;\">\r\n <div class=\"col-4\">\r\n <div class=\"single-attachment-inline-preview-container\">\r\n <img src=\"data:image/png;base64,{{newAttachment.FileDataBase64}}\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row mt-2 mb-2\" *ngIf=\"showCropImage == true\">\r\n <div class=\"col-md-12 d-flex align-items-center justify-content-center\">\r\n <span class=\"mr-1\">Max H(px):</span>\r\n <mat-form-field>\r\n <input formControlName=\"customHeight\" type=\"number\" matInput [(ngModel)]=\"customHeight\"\r\n (change)=\"onDimensionsChange('H')\">\r\n </mat-form-field>\r\n\r\n <span class=\"ml-2 mr-1\">Max W(px):</span>\r\n <mat-form-field>\r\n <input formControlName=\"customWidth\" type=\"number\" matInput [(ngModel)]=\"customWidth\"\r\n (change)=\"onDimensionsChange('W')\">\r\n </mat-form-field>\r\n\r\n <button class=\"btn btn-primary mat-raised-button ml-2\" (click)=\"restoreOriginalDimensions()\"\r\n [disabled]=\"customWidth == originalWidth && customHeight == originalHeight\">\r\n <mat-icon style=\"vertical-align: middle;\">replay</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row justify-content-center\" *ngIf=\"showCropImage == true\">\r\n <div style=\"max-height: 450px; max-width: 450px;\">\r\n <image-cropper [imageChangedEvent]=\"imageChangedEvent\" [maintainAspectRatio]=\"false\"\r\n [autoCrop]=\"false\" [containWithinAspectRatio]=\"false\" [aspectRatio]=\"4/3\"\r\n [cropperMinWidth]=\"128\" [onlyScaleDown]=\"true\" [roundCropper]=\"false\" [canvasRotation]=\"0\"\r\n [transform]=\"transform\" [alignImage]=\"'left'\" format=\"png\" (imageCropped)=\"imageCropped($event)\"\r\n [resizeToWidth]=\"customWidth\" [resizeToHeight]=\"customHeight\">\r\n </image-cropper>\r\n </div>\r\n </div>\r\n <div class=\"row justify-content-center mt-2\" *ngIf=\"showCropImage == true\">\r\n <div style=\"max-height: 450px; max-width: 450px;\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-confirm-btn mr-2\" type=\"button\"\r\n (click)=\"confirmCrop()\">\r\n {{confirmLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-abort-btn\" type=\"button\" (click)=\"abortFile()\">\r\n {{abortLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-sm-12 text-right\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-save-btn mr-2\" type=\"submit\"\r\n [disabled]=\"showCropImage == true || newAttachmentForm?.disabled == true || disableSave()\">\r\n {{saveLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-exit-btn\" (click)=\"close()\"\r\n [disabled]=\"showCropImage == true\" type=\"button\">\r\n {{exitLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n </form>\r\n\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #inlinePreviewTemplate let-row=\"row\">\r\n <div class=\"inline-preview-container\" *ngIf=\"row.IsImage\" (click)=\"openPreviewDialog(row)\">\r\n <img src=\"data:image/png;base64,{{row.FileThumbnailBase64 ? row.FileThumbnailBase64 : row.FileDataBase64}}\">\r\n </div>\r\n <div class=\"inline-preview-container\" *ngIf=\"!row.IsImage\" (click)=\"openPreviewDialog(row)\">\r\n <i [ngClass]=\"getAttachmentIcon(row)\"></i>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n<ng-template #dialogPreview>\r\n <div class=\"container-fluid\" style=\"max-height: 70vh !important;\" *ngIf=\"selectedAttachment\">\r\n <div class=\"row\">\r\n <div class=\"header-title-standard\">\r\n {{previewLabel}} {{ selectedAttachment?.AttachmentType == attachmentType.FILE ? 'File' : 'Link'}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <!-- ANTEPRIMA IMMAGINE -->\r\n <div class=\"col-12 text-center preview-container\" *ngIf=\"selectedAttachment.IsImage\">\r\n <img class=\"image-preview\"\r\n src=\"data:image/png;base64,{{selectedAttachment.FileDataBase64 ? selectedAttachment.FileDataBase64 : selectedAttachment.FileThumbnailBase64}}\">\r\n </div>\r\n\r\n <!-- ANTEPRIMA LINK -->\r\n <div class=\"col-12 preview-container\" *ngIf=\"!selectedAttachment.IsImage\">\r\n <iframe class=\"link-preview\" [src]=\"selectedAttachment.TrustedUrl\"\r\n [title]=\"selectedAttachment.FileName\"></iframe>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-12 text-right\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-save-btn mr-2\" type=\"submit\"\r\n (click)=\"viewAttachment(selectedAttachment)\"\r\n *ngIf=\"selectedAttachment.AttachmentType != AttachmentType.LINK\">\r\n {{downloadLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-exit-btn\" mat-dialog-close type=\"button\"\r\n (click)=\"selectedAttachment = null\">\r\n {{exitLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n<!-- TEMPLATE PER IL PULSANTE DI AGGIUNTA NUOVO ALLEGATO -->\r\n<ng-template #addAttachmentButton>\r\n\r\n <!-- \r\n Pulsanti per l'aggiunta di un file o un link. Ne viene visualizzato uno se:\r\n - gli allowedTypes sono stati specificati, nell'array ne è presente uno solo, quello inserito è AttachmentType.FILE (o AttachmentType.LINK) \r\n e sono nella gestione di più allegati (multipleAttachment == true)\r\n OPPURE\r\n - gli allowedTypes sono stati specificati, nell'array ne è presente uno solo, quello inserito è AttachmentType.FILE (o AttachmentType.LINK) \r\n e sono nella gestione di un singolo allegato (multipleAttachment == true) e non ne è ancora stato selezionato uno (ovvero attachmentsList non esiste o non ha elementi)\r\n -->\r\n <button class=\"btn btn-primary mb-4 mr-5 eqp-attachments-add-btn\" mat-raised-button color=\"primary\" type=\"button\"\r\n *ngIf=\"allowedTypes && allowedTypes.length == 1 && (multipleAttachment == true || (!attachmentsList || attachmentsList.length == 0 || (attachmentsList.length > 0 && !attachmentsList[0])))\"\r\n (click)=\"openModalAddAttachment(allowedTypes[0])\">\r\n <!-- Per l'aggiunta dei file mostro un'icona diversa dall'aggiunta dei link -->\r\n <mat-icon *ngIf=\"allowedTypes[0] == 1\">cloud_upload</mat-icon>\r\n <i class=\"fas fa-link\" *ngIf=\"allowedTypes[0] == 2\"></i>\r\n <span style=\"margin-left: 10px;\">{{addButtonLabel}} {{allowedTypes[0] == 1 ? \"file\" : \"link\"}}</span>\r\n </button>\r\n\r\n\r\n <!-- Pulsante per aprire il menu per la scelta del tipo di Attachment da creare -->\r\n <button class=\"btn btn-primary mb-4 mr-5 eqp-attachments-add-btn\" mat-raised-button color=\"primary\" type=\"button\"\r\n [matMenuTriggerFor]=\"attachmentTypeMenu\" [disabled]=\"isDisabled\"\r\n *ngIf=\"allowedTypes && allowedTypes.length > 1 && (multipleAttachment == true || (!attachmentsList || attachmentsList.length == 0 || (attachmentsList.length > 0 && !attachmentsList[0])))\">\r\n <mat-icon *ngIf=\"multipleAttachment != true\">cloud_upload</mat-icon>\r\n <mat-icon *ngIf=\"multipleAttachment == true\">add</mat-icon>\r\n <span style=\"margin-left: 0px;\"> {{addButtonLabel}} </span>\r\n </button>\r\n <mat-menu #attachmentTypeMenu=\"matMenu\">\r\n <button mat-menu-item (click)=\"openModalAddAttachment(1)\" class=\"eqp-attachments-file-btn\">\r\n <i class=\"fas fa-file\"></i>\r\n <span style=\"margin-left: 10px;\">File</span>\r\n </button>\r\n <button mat-menu-item (click)=\"openModalAddAttachment(2)\" class=\"eqp-attachments-link-btn\">\r\n <i class=\"fas fa-link\"></i>\r\n <span style=\"margin-left: 10px;\">Link</span>\r\n </button>\r\n </mat-menu>\r\n</ng-template>","styles":[".eqp-attachments-header-title{font-weight:700;font-size:19px;line-height:24px;margin-bottom:auto}.single-attachment-inline-preview-container{max-height:400px;max-width:400px;display:flex;align-items:center}.single-attachment-inline-preview-container img{max-width:100%;max-height:120px}.inline-preview-container{max-height:100px;max-width:100px;display:flex;align-items:center;justify-content:center;width:100%;cursor:pointer}.inline-preview-container img{max-width:100%;max-height:100px}.inline-preview-container i{font-size:25px;margin:auto}.preview-container{max-height:60vh;max-width:100%}.preview-container .image-preview{max-width:100%;max-height:100%}.preview-container .link-preview{width:70vw;height:55vh}"]}]}],"members":{"disableAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3},"arguments":["disableAction"]}]}],"showHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3},"arguments":["showHeader"]}]}],"headerTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":3},"arguments":["headerTitle"]}]}],"attachmentsList":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3},"arguments":["attachmentsList"]}]}],"showMatCard":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3},"arguments":["showMatCard"]}]}],"multipleAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3},"arguments":["multipleAttachment"]}]}],"attachmentsColumns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":3},"arguments":["attachmentsColumns"]}]}],"emptyTableMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":68,"character":3},"arguments":["emptyTableMessage"]}]}],"allowOnlyImages":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":3},"arguments":["allowOnlyImages"]}]}],"acceptedFileTypes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":80,"character":3},"arguments":["acceptedFileTypes"]}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":85,"character":3},"arguments":["isDisabled"]}]}],"showInlinePreview":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":90,"character":3},"arguments":["showInlinePreview"]}]}],"getAttachmentEndpoint":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":98,"character":3},"arguments":["getAttachmentEndpoint"]}]}],"productionBaseUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":106,"character":3},"arguments":["productionBaseUrl"]}]}],"compressionOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":111,"character":3},"arguments":["compressionOptions"]}]}],"allowedTypes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":3},"arguments":["allowedTypes"]}]}],"downloadTooltipPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":121,"character":3},"arguments":["downloadTooltipPosition"]}]}],"openLinkLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":3},"arguments":["openLinkLabel"]}]}],"addButtonLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":123,"character":3},"arguments":["addButtonLabel"]}]}],"downloadLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":3},"arguments":["downloadLabel"]}]}],"deleteLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":125,"character":3},"arguments":["deleteLabel"]}]}],"fileNameLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3},"arguments":["fileNameLabel"]}]}],"previewLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":127,"character":3},"arguments":["previewLabel"]}]}],"uploadFileLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":128,"character":3},"arguments":["uploadFileLabel"]}]}],"confirmLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":129,"character":3},"arguments":["confirmLabel"]}]}],"abortLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":130,"character":3},"arguments":["abortLabel"]}]}],"saveLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":131,"character":3},"arguments":["saveLabel"]}]}],"exitLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":132,"character":3},"arguments":["exitLabel"]}]}],"eqpTableSearchText":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":133,"character":3},"arguments":["eqpTableSearchText"]}]}],"deleteDialogTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":134,"character":3},"arguments":["deleteDialogTitle"]}]}],"deleteDialogMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":135,"character":3},"arguments":["deleteDialogMessage"]}]}],"noImageSelectedErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":136,"character":3},"arguments":["noImageSelectedErrorMessage"]}]}],"wrongTypeSelectedErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":137,"character":3},"arguments":["wrongTypeSelectedErrorMessage"]}]}],"videoPreviewErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":138,"character":3},"arguments":["videoPreviewErrorMessage"]}]}],"audioPreviewErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":139,"character":3},"arguments":["videoPreviewErrorMessage"]}]}],"localEditedAttachments":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":147,"character":3}}]}],"downloadAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":152,"character":3},"arguments":["downloadAttachment"]}]}],"onDeleteAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":157,"character":3},"arguments":["onDeleteAttachment"]}]}],"dialogAddAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":168,"character":3},"arguments":["dialogAddAttachment",{"static":true}]}]}],"imageCropper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":175,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-image-cropper","name":"ImageCropperComponent","line":175,"character":13}]}]}],"imageInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":176,"character":3},"arguments":["imageInput"]}]}],"attachmentTable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":187,"character":3},"arguments":["attachmentTable",{"static":false}]}]}],"inlinePreviewTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":188,"character":3},"arguments":["inlinePreviewTemplate",{"static":true}]}]}],"dialogPreview":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":189,"character":3},"arguments":["dialogPreview",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialog","line":192,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":193,"character":25},{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":194,"character":23},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":195,"character":18}]}],"ngOnInit":[{"__symbolic":"method"}],"reloadData":[{"__symbolic":"method"}],"checkAttachmentImage":[{"__symbolic":"method"}],"configureColumns":[{"__symbolic":"method"}],"deleteAttachment":[{"__symbolic":"method"}],"removeAttachmentFromList":[{"__symbolic":"method"}],"viewAttachment":[{"__symbolic":"method"}],"getAttachmentIcon":[{"__symbolic":"method"}],"openModalAddAttachment":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"disableSave":[{"__symbolic":"method"}],"confirmAddAttachment":[{"__symbolic":"method"}],"openPreviewDialog":[{"__symbolic":"method"}],"getAttachmentByID":[{"__symbolic":"method"}],"onFileInputChange":[{"__symbolic":"method"}],"checkAcceptedFiles":[{"__symbolic":"method"}],"getImageDimensions":[{"__symbolic":"method"}],"restoreOriginalDimensions":[{"__symbolic":"method"}],"onDimensionsChange":[{"__symbolic":"method"}],"imageCropped":[{"__symbolic":"method"}],"getCroppedAndUpload":[{"__symbolic":"method"}],"confirmCrop":[{"__symbolic":"method"}],"abortFile":[{"__symbolic":"method"}]}},"EqpAttachmentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"EqpAttachmentsComponent"}],"imports":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":15,"character":4},{"__symbolic":"reference","module":"ngx-image-cropper","name":"ImageCropperModule","line":16,"character":4},{"__symbolic":"reference","module":"@eqproject/eqp-table","name":"EqpTableModule","line":17,"character":4}],"exports":[{"__symbolic":"reference","name":"EqpAttachmentsComponent"}]}]}],"members":{}},"IAttachmentDTO":{"__symbolic":"interface"},"AttachmentType":{"FILE":1,"LINK":2},"IOptions":{"__symbolic":"interface"},"AttachmentHelperService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"imageMimeTypes":["image/bmp","image/gif","image/jpeg","image/tiff","image/png"],"fileExtensionIcon":{"txt":"fas fa-file-text","pdf":"fas fa-file-pdf","doc":"fas fa-file-word","docx":"fas fa-file-word","xls":"fas fa-file-excel","xlsx":"fas fa-file-excel","jpg":"fas fa-file-image","jpeg":"fas fa-file-image","png":"fas fa-file-image","bmp":"fas fa-file-image","mkv":"fas fa-file-video","flv":"fas fa-file-video","gif":"fas fa-file-video","gifv":"fas fa-file-video","avi":"fas fa-file-video","wmv":"fas fa-file-video","mp4":"fas fa-file-video","m4p":"fas fa-file-video","m4v":"fas fa-file-video","mpg":"fas fa-file-video","mp2":"fas fa-file-video","mpeg":"fas fa-file-video","mpe":"fas fa-file-video","mpv":"fas fa-file-video","m2v":"fas fa-file-video","3gp":"fas fa-file-video","3g2":"fas fa-file-video","mp3":"fas fa-file-audio","$quoted$":["txt","pdf","doc","docx","xls","xlsx","jpg","jpeg","png","bmp","mkv","flv","gif","gifv","avi","wmv","mp4","m4p","m4v","mpg","mp2","mpeg","mpe","mpv","m2v","3gp","3g2","mp3"]},"checkImageFromMimeType":{"__symbolic":"function","parameters":["mimeType"],"value":{"__symbolic":"binop","operator":"!=","left":{"__symbolic":"error","message":"Expression form not supported","line":50,"character":15,"module":"./lib/helpers/attachment.helper"},"right":null}},"ɵprov":{}}},"EqpAttachmentDialogService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":36,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":38,"character":4},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":39,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":40,"character":4},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":41,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":42,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":43,"character":4},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":44,"character":4},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":45,"character":4},{"__symbolic":"reference","module":"@angular/material/slider","name":"MatSliderModule","line":46,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":47,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":48,"character":4},{"__symbolic":"reference","module":"@angular/material/sidenav","name":"MatSidenavModule","line":49,"character":4},{"__symbolic":"reference","module":"@angular/material/toolbar","name":"MatToolbarModule","line":50,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":51,"character":4},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":52,"character":4},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":53,"character":4},{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":54,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":55,"character":4},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":56,"character":4},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":57,"character":4},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":58,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":59,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":60,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-bar","name":"MatProgressBarModule","line":61,"character":4},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":62,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":63,"character":4},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":64,"character":4},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":65,"character":4},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":66,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":67,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":68,"character":4},{"__symbolic":"reference","module":"@angular/material/core","name":"MatNativeDateModule","line":69,"character":4}],"exports":[{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":72,"character":4},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":73,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":74,"character":4},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":75,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":76,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":77,"character":4},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":78,"character":4},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":79,"character":4},{"__symbolic":"reference","module":"@angular/material/slider","name":"MatSliderModule","line":80,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":81,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":82,"character":4},{"__symbolic":"reference","module":"@angular/material/sidenav","name":"MatSidenavModule","line":83,"character":4},{"__symbolic":"reference","module":"@angular/material/toolbar","name":"MatToolbarModule","line":84,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":85,"character":4},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":86,"character":4},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":87,"character":4},{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":88,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":89,"character":4},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":90,"character":4},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":91,"character":4},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":92,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":93,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":94,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-bar","name":"MatProgressBarModule","line":95,"character":4},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":96,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":97,"character":4},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":98,"character":4},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":99,"character":4},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":100,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":101,"character":4}]}]}],"members":{}}},"origins":{"EqpAttachmentsComponent":"./lib/eqp-attachments.component","EqpAttachmentsModule":"./lib/eqp-attachments.module","IAttachmentDTO":"./lib/interfaces/IAttachment","AttachmentType":"./lib/interfaces/IAttachment","IOptions":"./lib/interfaces/IOptions","AttachmentHelperService":"./lib/helpers/attachment.helper","EqpAttachmentDialogService":"./lib/services/eqp-attachment-dialog.service","ɵa":"./lib/modules/material.module"},"importAs":"@eqproject/eqp-attachments"}
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"EqpAttachmentsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"eqp-attachments","template":"<!-- Se richiesta la gestione multipla mostra il pulsante di aggiunta e la tabella con l'elenco allegati -->\r\n<div *ngIf=\"multipleAttachment == true\">\r\n <mat-card [ngStyle]=\"{ 'box-shadow': showMatCard == false ? 'none' : null }\">\r\n <mat-card-header>\r\n <div class=\"col-md-6\">\r\n <div class=\"text-nowrap eqp-attachments-header-title\" *ngIf=\"showHeader == true\">\r\n {{headerTitle}}\r\n </div>\r\n </div>\r\n <div class=\"col-md-6 text-right\">\r\n <div class=\"row justify-content-end\">\r\n <!-- Template del button per l'aggiunta di un allegato -->\r\n <ng-container *ngTemplateOutlet=\"addAttachmentButton\"></ng-container>\r\n </div>\r\n </div>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <eqp-table #attachmentTable [createMatCard]=\"false\" #table [columns]=\"attachmentsColumns\"\r\n [data]=\"attachmentsList\" [emptyTableMessage]=\"emptyTableMessage\" [searchText]=\"eqpTableSearchText\">\r\n </eqp-table>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n\r\n<!-- Se richiesta la gestione singola mostra il pulsante di caricamento di un singolo file -->\r\n<div *ngIf=\"multipleAttachment != true\">\r\n <!-- Template del button per l'aggiunta di un allegato -->\r\n <ng-container *ngTemplateOutlet=\"addAttachmentButton\"></ng-container>\r\n\r\n <button class=\"mb-2 mr-2 eqp-attachments-download-btn\" (click)=\"viewAttachment(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0]\" color=\"primary\">\r\n <mat-icon *ngIf=\"attachmentsList[0].AttachmentType == AttachmentType.FILE\">download</mat-icon>\r\n <mat-icon *ngIf=\"attachmentsList[0].AttachmentType != AttachmentType.FILE\">open_in_new</mat-icon>\r\n {{attachmentsList[0].AttachmentType == AttachmentType.FILE ? downloadLabel : openLinkLabel}}\r\n </button>\r\n <button class=\"mb-2 mr-2 eqp-attachments-preview-btn\" (click)=\"openPreviewDialog(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button color=\"primary\"\r\n *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0] && (!attachmentsList[0].FileContentType || (!attachmentsList[0].FileContentType.startsWith('video') && !attachmentsList[0].FileContentType.startsWith('audio')))\">\r\n <mat-icon>visibility</mat-icon> {{previewLabel}}\r\n </button>\r\n <button class=\"mb-2 eqp-attachments-delete-btn\" (click)=\"deleteAttachment(attachmentsList[0])\" type=\"button\"\r\n mat-raised-button *ngIf=\"attachmentsList && attachmentsList.length > 0 && attachmentsList[0]\"\r\n [disabled]=\"isDisabled\">\r\n <mat-icon>delete</mat-icon> {{deleteLabel}}\r\n </button>\r\n\r\n <div class=\"row\" style=\"margin-top: 10px;\"\r\n *ngIf=\"attachmentsList.length > 0 && attachmentsList[0] && attachmentsList[0].FileDataBase64 && attachmentsList[0].IsImage == true\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"single-attachment-inline-preview-container\">\r\n <img src=\"data:image/png;base64,{{attachmentsList[0].FileDataBase64}}\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"attachmentsList.length > 0 && attachmentsList[0] && attachmentsList[0].IsImage != true\">\r\n <div class=\"col-sm-12\">\r\n <mat-form-field>\r\n <mat-label>{{fileNameLabel}}</mat-label>\r\n <input readonly matInput [(ngModel)]=\"attachmentsList[0].FileName\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n<ng-template #dialogAddAttachment>\r\n <div class=\"container-fluid eqp-attachments-dialog-add-container\"\r\n style=\"max-height: 70vh !important; overflow-x: hidden; overflow-y: auto;\">\r\n <form [formGroup]=\"newAttachmentForm\" (ngSubmit)=\"confirmAddAttachment()\" *ngIf=\"newAttachmentForm\">\r\n <div class=\"row\">\r\n <div class=\"header-title-standard\"> {{addButtonLabel}} {{ newAttachment.AttachmentType ==\r\n attachmentType.FILE ?\r\n 'File' : 'Link'}} </div>\r\n </div>\r\n <div class=\"row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == attachmentType.FILE\">\r\n <input #imageInput style=\"display:none;\" id=\"file_attachment\" name=\"file_attachment\" type=\"file\"\r\n (change)=\"onFileInputChange($event)\" [accept]=\"acceptedFileTypes\" />\r\n <button (click)=\"imageInput.click()\" type=\"button\" style=\"margin-left: 10px;\" id=\"file_attachment\"\r\n mat-raised-button color=\"primary\" [disabled]=\"showCropImage == true\"\r\n class=\"mb-2 btn btn-primary eqp-attachments-upload-btn\" *ngIf=\"!newAttachment.FileDataBase64\">\r\n <mat-icon>cloud_upload</mat-icon>\r\n {{uploadFileLabel}}\r\n </button>\r\n <button (click)=\"abortFile()\" type=\"button\" style=\"margin-left: 10px;\" mat-raised-button\r\n *ngIf=\"newAttachment.FileDataBase64\" class=\"mb-2 eqp-attachments-delete-btn\">\r\n <mat-icon>delete</mat-icon> {{deleteLabel}}\r\n </button>\r\n </div>\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == 2 || selectedFile\">\r\n <mat-form-field>\r\n <mat-label> {{fileNameLabel}} </mat-label>\r\n <input formControlName=\"name\" matInput [(ngModel)]=\"newAttachment.FileName\">\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-sm-12\" *ngIf=\"newAttachment.AttachmentType == 2\">\r\n <mat-form-field>\r\n <mat-label> Link </mat-label>\r\n <input formControlName=\"path\" required matInput [(ngModel)]=\"newAttachment.FilePath\">\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\"\r\n *ngIf=\"showCropImage != true && newAttachment.FileDataBase64 && newAttachment.IsImage == true\"\r\n style=\"margin-top: 10px;\">\r\n <div class=\"col-4\">\r\n <div class=\"single-attachment-inline-preview-container\">\r\n <img src=\"data:image/png;base64,{{newAttachment.FileDataBase64}}\">\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row mt-2 mb-2\" *ngIf=\"showCropImage == true\">\r\n <div class=\"col-md-12 d-flex align-items-center justify-content-center\">\r\n <span class=\"mr-1\">Max H(px):</span>\r\n <mat-form-field>\r\n <input formControlName=\"customHeight\" type=\"number\" matInput [(ngModel)]=\"customHeight\"\r\n (change)=\"onDimensionsChange('H')\">\r\n </mat-form-field>\r\n\r\n <span class=\"ml-2 mr-1\">Max W(px):</span>\r\n <mat-form-field>\r\n <input formControlName=\"customWidth\" type=\"number\" matInput [(ngModel)]=\"customWidth\"\r\n (change)=\"onDimensionsChange('W')\">\r\n </mat-form-field>\r\n\r\n <button class=\"btn btn-primary mat-raised-button ml-2\" (click)=\"restoreOriginalDimensions()\"\r\n [disabled]=\"customWidth == originalWidth && customHeight == originalHeight\">\r\n <mat-icon style=\"vertical-align: middle;\">replay</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row justify-content-center\" *ngIf=\"showCropImage == true\">\r\n <div style=\"max-height: 450px; max-width: 450px;\">\r\n <image-cropper [imageChangedEvent]=\"imageChangedEvent\" [maintainAspectRatio]=\"false\"\r\n [autoCrop]=\"false\" [containWithinAspectRatio]=\"false\" [aspectRatio]=\"4/3\"\r\n [cropperMinWidth]=\"128\" [onlyScaleDown]=\"true\" [roundCropper]=\"false\" [canvasRotation]=\"0\"\r\n [transform]=\"transform\" [alignImage]=\"'left'\" format=\"png\" (imageCropped)=\"imageCropped($event)\"\r\n [resizeToWidth]=\"customWidth\" [resizeToHeight]=\"customHeight\">\r\n </image-cropper>\r\n </div>\r\n </div>\r\n <div class=\"row justify-content-center mt-2\" *ngIf=\"showCropImage == true\">\r\n <div style=\"max-height: 450px; max-width: 450px;\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-confirm-btn mr-2\" type=\"button\"\r\n (click)=\"confirmCrop()\">\r\n {{confirmLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-abort-btn\" type=\"button\" (click)=\"abortFile()\">\r\n {{abortLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-sm-12 text-right\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-save-btn mr-2\" type=\"submit\"\r\n [disabled]=\"showCropImage == true || newAttachmentForm?.disabled == true || disableSave()\">\r\n {{saveLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-exit-btn\" (click)=\"close()\"\r\n [disabled]=\"showCropImage == true\" type=\"button\">\r\n {{exitLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n </form>\r\n\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #inlinePreviewTemplate let-row=\"row\">\r\n <div class=\"inline-preview-container\" *ngIf=\"row.IsImage\" (click)=\"openPreviewDialog(row)\">\r\n <img src=\"data:image/png;base64,{{row.FileThumbnailBase64 ? row.FileThumbnailBase64 : row.FileDataBase64}}\">\r\n </div>\r\n <div class=\"inline-preview-container\" *ngIf=\"!row.IsImage\" (click)=\"openPreviewDialog(row)\">\r\n <i [ngClass]=\"getAttachmentIcon(row)\"></i>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n<ng-template #dialogPreview>\r\n <div class=\"container-fluid\" style=\"max-height: 70vh !important;\" *ngIf=\"selectedAttachment\">\r\n <div class=\"row\">\r\n <div class=\"header-title-standard\">\r\n {{previewLabel}} {{ selectedAttachment?.AttachmentType == attachmentType.FILE ? 'File' : 'Link'}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <!-- ANTEPRIMA IMMAGINE -->\r\n <div class=\"col-12 text-center preview-container\" *ngIf=\"selectedAttachment.IsImage\">\r\n <img class=\"image-preview\"\r\n src=\"data:image/png;base64,{{selectedAttachment.FileDataBase64 ? selectedAttachment.FileDataBase64 : selectedAttachment.FileThumbnailBase64}}\">\r\n </div>\r\n\r\n <!-- ANTEPRIMA LINK -->\r\n <div class=\"col-12 preview-container\" *ngIf=\"!selectedAttachment.IsImage\">\r\n <iframe class=\"link-preview\" [src]=\"selectedAttachment.TrustedUrl\"\r\n [title]=\"selectedAttachment.FileName\"></iframe>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-12 text-right\">\r\n <button class=\"btn btn-primary mat-raised-button eqp-attachments-save-btn mr-2\" type=\"submit\"\r\n (click)=\"viewAttachment(selectedAttachment)\"\r\n *ngIf=\"selectedAttachment.AttachmentType != AttachmentType.LINK\">\r\n {{downloadLabel}}\r\n </button>\r\n <button class=\"btn mat-raised-button eqp-attachments-exit-btn\" mat-dialog-close type=\"button\"\r\n (click)=\"selectedAttachment = null\">\r\n {{exitLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n<!-- TEMPLATE PER IL PULSANTE DI AGGIUNTA NUOVO ALLEGATO -->\r\n<ng-template #addAttachmentButton>\r\n\r\n <!-- \r\n Pulsanti per l'aggiunta di un file o un link. Ne viene visualizzato uno se:\r\n - gli allowedTypes sono stati specificati, nell'array ne è presente uno solo, quello inserito è AttachmentType.FILE (o AttachmentType.LINK) \r\n e sono nella gestione di più allegati (multipleAttachment == true)\r\n OPPURE\r\n - gli allowedTypes sono stati specificati, nell'array ne è presente uno solo, quello inserito è AttachmentType.FILE (o AttachmentType.LINK) \r\n e sono nella gestione di un singolo allegato (multipleAttachment == true) e non ne è ancora stato selezionato uno (ovvero attachmentsList non esiste o non ha elementi)\r\n -->\r\n <button class=\"btn btn-primary mb-4 mr-5 eqp-attachments-add-btn\" mat-raised-button color=\"primary\" type=\"button\"\r\n *ngIf=\"allowedTypes && allowedTypes.length == 1 && (multipleAttachment == true || (!attachmentsList || attachmentsList.length == 0 || (attachmentsList.length > 0 && !attachmentsList[0])))\"\r\n (click)=\"openModalAddAttachment(allowedTypes[0])\" [disabled]=\"isDisabled\">\r\n <!-- Per l'aggiunta dei file mostro un'icona diversa dall'aggiunta dei link -->\r\n <mat-icon *ngIf=\"allowedTypes[0] == 1\">cloud_upload</mat-icon>\r\n <i class=\"fas fa-link\" *ngIf=\"allowedTypes[0] == 2\"></i>\r\n <span style=\"margin-left: 10px;\">{{addButtonLabel}} {{allowedTypes[0] == 1 ? \"file\" : \"link\"}}</span>\r\n </button>\r\n\r\n\r\n <!-- Pulsante per aprire il menu per la scelta del tipo di Attachment da creare -->\r\n <button class=\"btn btn-primary mb-4 mr-5 eqp-attachments-add-btn\" mat-raised-button color=\"primary\" type=\"button\"\r\n [matMenuTriggerFor]=\"attachmentTypeMenu\" [disabled]=\"isDisabled\"\r\n *ngIf=\"allowedTypes && allowedTypes.length > 1 && (multipleAttachment == true || (!attachmentsList || attachmentsList.length == 0 || (attachmentsList.length > 0 && !attachmentsList[0])))\">\r\n <mat-icon *ngIf=\"multipleAttachment != true\">cloud_upload</mat-icon>\r\n <mat-icon *ngIf=\"multipleAttachment == true\">add</mat-icon>\r\n <span style=\"margin-left: 0px;\"> {{addButtonLabel}} </span>\r\n </button>\r\n <mat-menu #attachmentTypeMenu=\"matMenu\">\r\n <button mat-menu-item (click)=\"openModalAddAttachment(1)\" class=\"eqp-attachments-file-btn\">\r\n <i class=\"fas fa-file\"></i>\r\n <span style=\"margin-left: 10px;\">File</span>\r\n </button>\r\n <button mat-menu-item (click)=\"openModalAddAttachment(2)\" class=\"eqp-attachments-link-btn\">\r\n <i class=\"fas fa-link\"></i>\r\n <span style=\"margin-left: 10px;\">Link</span>\r\n </button>\r\n </mat-menu>\r\n</ng-template>","styles":[".eqp-attachments-header-title{font-weight:700;font-size:19px;line-height:24px;margin-bottom:auto}.single-attachment-inline-preview-container{max-height:400px;max-width:400px;display:flex;align-items:center}.single-attachment-inline-preview-container img{max-width:100%;max-height:120px}.inline-preview-container{max-height:100px;max-width:100px;display:flex;align-items:center;justify-content:center;width:100%;cursor:pointer}.inline-preview-container img{max-width:100%;max-height:100px}.inline-preview-container i{font-size:25px;margin:auto}.preview-container{max-height:60vh;max-width:100%}.preview-container .image-preview{max-width:100%;max-height:100%}.preview-container .link-preview{width:70vw;height:55vh}"]}]}],"members":{"disableAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3},"arguments":["disableAction"]}]}],"showHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3},"arguments":["showHeader"]}]}],"headerTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":3},"arguments":["headerTitle"]}]}],"attachmentsList":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3},"arguments":["attachmentsList"]}]}],"showMatCard":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3},"arguments":["showMatCard"]}]}],"multipleAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3},"arguments":["multipleAttachment"]}]}],"attachmentsColumns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":3},"arguments":["attachmentsColumns"]}]}],"emptyTableMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":68,"character":3},"arguments":["emptyTableMessage"]}]}],"allowOnlyImages":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":3},"arguments":["allowOnlyImages"]}]}],"acceptedFileTypes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":80,"character":3},"arguments":["acceptedFileTypes"]}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":85,"character":3},"arguments":["isDisabled"]}]}],"showInlinePreview":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":90,"character":3},"arguments":["showInlinePreview"]}]}],"getAttachmentEndpoint":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":98,"character":3},"arguments":["getAttachmentEndpoint"]}]}],"productionBaseUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":106,"character":3},"arguments":["productionBaseUrl"]}]}],"compressionOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":111,"character":3},"arguments":["compressionOptions"]}]}],"allowedTypes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":3},"arguments":["allowedTypes"]}]}],"downloadTooltipPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":121,"character":3},"arguments":["downloadTooltipPosition"]}]}],"openLinkLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":3},"arguments":["openLinkLabel"]}]}],"addButtonLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":123,"character":3},"arguments":["addButtonLabel"]}]}],"downloadLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":3},"arguments":["downloadLabel"]}]}],"deleteLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":125,"character":3},"arguments":["deleteLabel"]}]}],"fileNameLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":3},"arguments":["fileNameLabel"]}]}],"previewLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":127,"character":3},"arguments":["previewLabel"]}]}],"uploadFileLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":128,"character":3},"arguments":["uploadFileLabel"]}]}],"confirmLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":129,"character":3},"arguments":["confirmLabel"]}]}],"abortLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":130,"character":3},"arguments":["abortLabel"]}]}],"saveLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":131,"character":3},"arguments":["saveLabel"]}]}],"exitLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":132,"character":3},"arguments":["exitLabel"]}]}],"eqpTableSearchText":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":133,"character":3},"arguments":["eqpTableSearchText"]}]}],"deleteDialogTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":134,"character":3},"arguments":["deleteDialogTitle"]}]}],"deleteDialogMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":135,"character":3},"arguments":["deleteDialogMessage"]}]}],"noImageSelectedErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":136,"character":3},"arguments":["noImageSelectedErrorMessage"]}]}],"wrongTypeSelectedErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":137,"character":3},"arguments":["wrongTypeSelectedErrorMessage"]}]}],"videoPreviewErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":138,"character":3},"arguments":["videoPreviewErrorMessage"]}]}],"audioPreviewErrorMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":139,"character":3},"arguments":["videoPreviewErrorMessage"]}]}],"localEditedAttachments":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":147,"character":3}}]}],"downloadAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":152,"character":3},"arguments":["downloadAttachment"]}]}],"onDeleteAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":157,"character":3},"arguments":["onDeleteAttachment"]}]}],"dialogAddAttachment":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":168,"character":3},"arguments":["dialogAddAttachment",{"static":true}]}]}],"imageCropper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":175,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-image-cropper","name":"ImageCropperComponent","line":175,"character":13}]}]}],"imageInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":176,"character":3},"arguments":["imageInput"]}]}],"attachmentTable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":187,"character":3},"arguments":["attachmentTable",{"static":false}]}]}],"inlinePreviewTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":188,"character":3},"arguments":["inlinePreviewTemplate",{"static":true}]}]}],"dialogPreview":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":189,"character":3},"arguments":["dialogPreview",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialog","line":192,"character":20},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":193,"character":25},{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":194,"character":23},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":195,"character":18}]}],"ngOnInit":[{"__symbolic":"method"}],"reloadData":[{"__symbolic":"method"}],"checkAttachmentImage":[{"__symbolic":"method"}],"configureColumns":[{"__symbolic":"method"}],"deleteAttachment":[{"__symbolic":"method"}],"removeAttachmentFromList":[{"__symbolic":"method"}],"viewAttachment":[{"__symbolic":"method"}],"getAttachmentIcon":[{"__symbolic":"method"}],"openModalAddAttachment":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"disableSave":[{"__symbolic":"method"}],"confirmAddAttachment":[{"__symbolic":"method"}],"openPreviewDialog":[{"__symbolic":"method"}],"getAttachmentByID":[{"__symbolic":"method"}],"onFileInputChange":[{"__symbolic":"method"}],"checkAcceptedFiles":[{"__symbolic":"method"}],"getImageDimensions":[{"__symbolic":"method"}],"restoreOriginalDimensions":[{"__symbolic":"method"}],"onDimensionsChange":[{"__symbolic":"method"}],"imageCropped":[{"__symbolic":"method"}],"getCroppedAndUpload":[{"__symbolic":"method"}],"confirmCrop":[{"__symbolic":"method"}],"abortFile":[{"__symbolic":"method"}]}},"EqpAttachmentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"EqpAttachmentsComponent"}],"imports":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":15,"character":4},{"__symbolic":"reference","module":"ngx-image-cropper","name":"ImageCropperModule","line":16,"character":4},{"__symbolic":"reference","module":"@eqproject/eqp-table","name":"EqpTableModule","line":17,"character":4}],"exports":[{"__symbolic":"reference","name":"EqpAttachmentsComponent"}]}]}],"members":{}},"IAttachmentDTO":{"__symbolic":"interface"},"AttachmentType":{"FILE":1,"LINK":2},"IOptions":{"__symbolic":"interface"},"AttachmentHelperService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"imageMimeTypes":["image/bmp","image/gif","image/jpeg","image/tiff","image/png"],"fileExtensionIcon":{"txt":"fas fa-file-text","pdf":"fas fa-file-pdf","doc":"fas fa-file-word","docx":"fas fa-file-word","xls":"fas fa-file-excel","xlsx":"fas fa-file-excel","jpg":"fas fa-file-image","jpeg":"fas fa-file-image","png":"fas fa-file-image","bmp":"fas fa-file-image","mkv":"fas fa-file-video","flv":"fas fa-file-video","gif":"fas fa-file-video","gifv":"fas fa-file-video","avi":"fas fa-file-video","wmv":"fas fa-file-video","mp4":"fas fa-file-video","m4p":"fas fa-file-video","m4v":"fas fa-file-video","mpg":"fas fa-file-video","mp2":"fas fa-file-video","mpeg":"fas fa-file-video","mpe":"fas fa-file-video","mpv":"fas fa-file-video","m2v":"fas fa-file-video","3gp":"fas fa-file-video","3g2":"fas fa-file-video","mp3":"fas fa-file-audio","$quoted$":["txt","pdf","doc","docx","xls","xlsx","jpg","jpeg","png","bmp","mkv","flv","gif","gifv","avi","wmv","mp4","m4p","m4v","mpg","mp2","mpeg","mpe","mpv","m2v","3gp","3g2","mp3"]},"checkImageFromMimeType":{"__symbolic":"function","parameters":["mimeType"],"value":{"__symbolic":"binop","operator":"!=","left":{"__symbolic":"error","message":"Expression form not supported","line":50,"character":15,"module":"./lib/helpers/attachment.helper"},"right":null}},"ɵprov":{}}},"EqpAttachmentDialogService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":36,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":38,"character":4},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":39,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":40,"character":4},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":41,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":42,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":43,"character":4},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":44,"character":4},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":45,"character":4},{"__symbolic":"reference","module":"@angular/material/slider","name":"MatSliderModule","line":46,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":47,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":48,"character":4},{"__symbolic":"reference","module":"@angular/material/sidenav","name":"MatSidenavModule","line":49,"character":4},{"__symbolic":"reference","module":"@angular/material/toolbar","name":"MatToolbarModule","line":50,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":51,"character":4},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":52,"character":4},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":53,"character":4},{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":54,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":55,"character":4},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":56,"character":4},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":57,"character":4},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":58,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":59,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":60,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-bar","name":"MatProgressBarModule","line":61,"character":4},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":62,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":63,"character":4},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":64,"character":4},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":65,"character":4},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":66,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":67,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":68,"character":4},{"__symbolic":"reference","module":"@angular/material/core","name":"MatNativeDateModule","line":69,"character":4}],"exports":[{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":72,"character":4},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":73,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":74,"character":4},{"__symbolic":"reference","module":"@angular/material/autocomplete","name":"MatAutocompleteModule","line":75,"character":4},{"__symbolic":"reference","module":"@angular/material/datepicker","name":"MatDatepickerModule","line":76,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":77,"character":4},{"__symbolic":"reference","module":"@angular/material/radio","name":"MatRadioModule","line":78,"character":4},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":79,"character":4},{"__symbolic":"reference","module":"@angular/material/slider","name":"MatSliderModule","line":80,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":81,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":82,"character":4},{"__symbolic":"reference","module":"@angular/material/sidenav","name":"MatSidenavModule","line":83,"character":4},{"__symbolic":"reference","module":"@angular/material/toolbar","name":"MatToolbarModule","line":84,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":85,"character":4},{"__symbolic":"reference","module":"@angular/material/grid-list","name":"MatGridListModule","line":86,"character":4},{"__symbolic":"reference","module":"@angular/material/card","name":"MatCardModule","line":87,"character":4},{"__symbolic":"reference","module":"@angular/material/stepper","name":"MatStepperModule","line":88,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":89,"character":4},{"__symbolic":"reference","module":"@angular/material/expansion","name":"MatExpansionModule","line":90,"character":4},{"__symbolic":"reference","module":"@angular/material/button-toggle","name":"MatButtonToggleModule","line":91,"character":4},{"__symbolic":"reference","module":"@angular/material/chips","name":"MatChipsModule","line":92,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":93,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":94,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-bar","name":"MatProgressBarModule","line":95,"character":4},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":96,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":97,"character":4},{"__symbolic":"reference","module":"@angular/material/snack-bar","name":"MatSnackBarModule","line":98,"character":4},{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableModule","line":99,"character":4},{"__symbolic":"reference","module":"@angular/material/sort","name":"MatSortModule","line":100,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":101,"character":4}]}]}],"members":{}}},"origins":{"EqpAttachmentsComponent":"./lib/eqp-attachments.component","EqpAttachmentsModule":"./lib/eqp-attachments.module","IAttachmentDTO":"./lib/interfaces/IAttachment","AttachmentType":"./lib/interfaces/IAttachment","IOptions":"./lib/interfaces/IOptions","AttachmentHelperService":"./lib/helpers/attachment.helper","EqpAttachmentDialogService":"./lib/services/eqp-attachment-dialog.service","ɵa":"./lib/modules/material.module"},"importAs":"@eqproject/eqp-attachments"}
|