diff --git a/demo-shell-ng2/app/components/files/files.component.html b/demo-shell-ng2/app/components/files/files.component.html index 3e57b097aa..49a91e1dd7 100644 --- a/demo-shell-ng2/app/components/files/files.component.html +++ b/demo-shell-ng2/app/components/files/files.component.html @@ -203,6 +203,7 @@ [disableWithNoPermission]="true" (permissionEvent)="handlePermissionError($event)" title="{{'DOCUMENT_LIST.ACTIONS.DOCUMENT.DELETE' | translate}}" + (success)="onDeleteActionSuccess($event)" handler="delete"> diff --git a/demo-shell-ng2/app/components/files/files.component.ts b/demo-shell-ng2/app/components/files/files.component.ts index 50a3d24b03..49fa245059 100644 --- a/demo-shell-ng2/app/components/files/files.component.ts +++ b/demo-shell-ng2/app/components/files/files.component.ts @@ -206,6 +206,10 @@ export class FilesComponent implements OnInit { this.notificationService.openSnackMessage(translatedMessage.value, 4000); } + onDeleteActionSuccess(message) { + this.uploadService.fileDeleted.next(message); + } + onCreateFolderClicked(event: Event) { let dialogRef = this.dialog.open(CreateFolderDialogComponent); dialogRef.afterClosed().subscribe(folderName => { diff --git a/demo-shell-ng2/package.json b/demo-shell-ng2/package.json index ac22040726..91ca1bb903 100644 --- a/demo-shell-ng2/package.json +++ b/demo-shell-ng2/package.json @@ -63,7 +63,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-activiti-analytics/package.json b/ng2-components/ng2-activiti-analytics/package.json index 4e27dba939..ddf55636ca 100644 --- a/ng2-components/ng2-activiti-analytics/package.json +++ b/ng2-components/ng2-activiti-analytics/package.json @@ -39,7 +39,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-activiti-diagrams/package.json b/ng2-components/ng2-activiti-diagrams/package.json index d8508b1eca..20e6cfc111 100644 --- a/ng2-components/ng2-activiti-diagrams/package.json +++ b/ng2-components/ng2-activiti-diagrams/package.json @@ -35,7 +35,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-activiti-form/package.json b/ng2-components/ng2-activiti-form/package.json index 1d2254ba4b..ceb21647fe 100644 --- a/ng2-components/ng2-activiti-form/package.json +++ b/ng2-components/ng2-activiti-form/package.json @@ -42,7 +42,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-activiti-processlist/package.json b/ng2-components/ng2-activiti-processlist/package.json index 85f6f681e8..6cc8a42d67 100644 --- a/ng2-components/ng2-activiti-processlist/package.json +++ b/ng2-components/ng2-activiti-processlist/package.json @@ -41,7 +41,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-activiti-tasklist/package.json b/ng2-components/ng2-activiti-tasklist/package.json index 98e96baf9e..c4d9edc1a7 100644 --- a/ng2-components/ng2-activiti-tasklist/package.json +++ b/ng2-components/ng2-activiti-tasklist/package.json @@ -45,7 +45,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-core/package.json b/ng2-components/ng2-alfresco-core/package.json index 09d013b51b..1df18ca155 100644 --- a/ng2-components/ng2-alfresco-core/package.json +++ b/ng2-components/ng2-alfresco-core/package.json @@ -50,7 +50,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-core/src/services/upload.service.ts b/ng2-components/ng2-alfresco-core/src/services/upload.service.ts index ea4cabd539..bfd3395873 100644 --- a/ng2-components/ng2-alfresco-core/src/services/upload.service.ts +++ b/ng2-components/ng2-alfresco-core/src/services/upload.service.ts @@ -43,6 +43,7 @@ export class UploadService { fileUploadError: Subject = new Subject(); fileUploadComplete: Subject = new Subject(); fileUploadDeleted: Subject = new Subject(); + fileDeleted: Subject = new Subject(); constructor(private apiService: AlfrescoApiService, private appConfigService: AppConfigService) { this.excludedFileList = this.appConfigService.get('files.excluded'); diff --git a/ng2-components/ng2-alfresco-datatable/package.json b/ng2-components/ng2-alfresco-datatable/package.json index b01e3a6b7b..b82f9b63d7 100644 --- a/ng2-components/ng2-alfresco-datatable/package.json +++ b/ng2-components/ng2-alfresco-datatable/package.json @@ -41,7 +41,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-documentlist/README.md b/ng2-components/ng2-alfresco-documentlist/README.md index 369e7bed35..cc3160f01e 100644 --- a/ng2-components/ng2-alfresco-documentlist/README.md +++ b/ng2-components/ng2-alfresco-documentlist/README.md @@ -729,7 +729,7 @@ Events: | --- | --- | --- | | `execute` | All | Emitted when user clicks on the action. For combined handlers see below | | `permissionEvent` | All | Emitted when a permission error happens | -| `success` | copy, move | Emitted on successful action with the success string message | +| `success` | copy, move, delete | Emitted on successful action with the success string message | | `error` | copy, move | Emitted on unsuccessful action with the error event | DocumentList supports declarative actions for Documents and Folders. diff --git a/ng2-components/ng2-alfresco-documentlist/package.json b/ng2-components/ng2-alfresco-documentlist/package.json index 32e3a500e4..80c1ab9e1a 100644 --- a/ng2-components/ng2-alfresco-documentlist/package.json +++ b/ng2-components/ng2-alfresco-documentlist/package.json @@ -49,7 +49,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.spec.ts b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.spec.ts index 2711423e4c..228d5c2751 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.spec.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.spec.ts @@ -267,4 +267,20 @@ describe('DocumentActionsService', () => { expect(documentListService.deleteNode).toHaveBeenCalled(); expect(target.reload).toHaveBeenCalled(); }); + + it('should emit success event upon node deletion', (done) => { + service.success.subscribe((nodeId) => { + expect(nodeId).not.toBeNull(); + done(); + }); + spyOn(documentListService, 'deleteNode').and.callThrough(); + + let target = jasmine.createSpyObj('obj', ['reload']); + let permission = 'delete'; + let file = new FileNode(); + let fileWithPermission: any = file; + fileWithPermission.entry.allowableOperations = [permission]; + service.getHandler('delete')(fileWithPermission, target, permission); + + }); }); diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.ts b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.ts index 7b7236747d..78ee959391 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.ts @@ -115,6 +115,7 @@ export class DocumentActionsService { if (target && typeof target.reload === 'function') { target.reload(); } + this.success.next(obj.entry.id); }); return handlerObservable; } else { diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.spec.ts b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.spec.ts index 6dbf127862..6c3f6ce354 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.spec.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.spec.ts @@ -249,4 +249,26 @@ describe('FolderActionsService', () => { expect(documentListService.deleteNode).toHaveBeenCalled(); }); + + it('should emit success event upon node deletion', (done) => { + spyOn(documentListService, 'deleteNode').and.callFake(() => { + return new Observable(observer => { + observer.next(); + observer.complete(); + }); + }); + + service.success.subscribe((nodeId) => { + expect(nodeId).not.toBeNull(); + done(); + }); + + let permission = 'delete'; + let target = jasmine.createSpyObj('obj', ['reload']); + let folder = new FolderNode(); + let folderWithPermission: any = folder; + folderWithPermission.entry.allowableOperations = [permission]; + + service.getHandler('delete')(folderWithPermission, target, permission); + }); }); diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.ts b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.ts index 6aa7d76392..943538854b 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.ts @@ -100,6 +100,7 @@ export class FolderActionsService { if (target && typeof target.reload === 'function') { target.reload(); } + this.success.next(obj.entry.id); }); return handlerObservable; } else { diff --git a/ng2-components/ng2-alfresco-login/package.json b/ng2-components/ng2-alfresco-login/package.json index 563af29688..a7165e207e 100644 --- a/ng2-components/ng2-alfresco-login/package.json +++ b/ng2-components/ng2-alfresco-login/package.json @@ -53,7 +53,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-search/package.json b/ng2-components/ng2-alfresco-search/package.json index 8df90dbe11..8d6d808fb8 100644 --- a/ng2-components/ng2-alfresco-search/package.json +++ b/ng2-components/ng2-alfresco-search/package.json @@ -49,7 +49,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-social/package.json b/ng2-components/ng2-alfresco-social/package.json index 688a57a77c..8b04a55ce7 100644 --- a/ng2-components/ng2-alfresco-social/package.json +++ b/ng2-components/ng2-alfresco-social/package.json @@ -29,7 +29,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-tag/package.json b/ng2-components/ng2-alfresco-tag/package.json index e6c3a9e77c..a1c30daec6 100644 --- a/ng2-components/ng2-alfresco-tag/package.json +++ b/ng2-components/ng2-alfresco-tag/package.json @@ -29,7 +29,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-upload/README.md b/ng2-components/ng2-alfresco-upload/README.md index 09f4f444c0..4981d1641d 100644 --- a/ng2-components/ng2-alfresco-upload/README.md +++ b/ng2-components/ng2-alfresco-upload/README.md @@ -201,6 +201,7 @@ Provides access to various APIs related to file upload features. | fileUploadError | FileUploadEvent | Raised when an error occurs to file upload. | | fileUploadComplete | FileUploadCompleteEvent | Raised when file upload is complete. | | fileUploadDelete | FileUploadDeleteEvent | Raised when uploaded file is removed from server. | +| fileDeleted | string | This can be invoked when a file is deleted from an external source to upload the file dialog status. | ### Details diff --git a/ng2-components/ng2-alfresco-upload/package.json b/ng2-components/ng2-alfresco-upload/package.json index b1da7e5139..241eab48d1 100644 --- a/ng2-components/ng2-alfresco-upload/package.json +++ b/ng2-components/ng2-alfresco-upload/package.json @@ -50,7 +50,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts index ad835a3f34..349020c525 100644 --- a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts +++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts @@ -17,7 +17,7 @@ import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit, ViewChild } from '@angular/core'; import { FileModel, FileUploadCompleteEvent, FileUploadDeleteEvent, - FileUploadErrorEvent, UploadService } from 'ng2-alfresco-core'; + FileUploadErrorEvent, FileUploadStatus, UploadService } from 'ng2-alfresco-core'; import { Observable, Subscription } from 'rxjs/Rx'; import { FileUploadingListComponent } from './file-uploading-list.component'; @@ -78,6 +78,18 @@ export class FileUploadingDialogComponent implements OnInit, OnDestroy { .fileUpload.subscribe(() => { this.changeDetecor.detectChanges(); }); + + this.uploadService.fileDeleted.subscribe((objId) => { + if (this.filesUploadingList) { + let file = this.filesUploadingList.find((item) => { + return item.data.entry.id === objId; + }); + if (file) { + file.status = FileUploadStatus.Cancelled; + this.changeDetecor.detectChanges(); + } + } + }); } /** diff --git a/ng2-components/ng2-alfresco-userinfo/package.json b/ng2-components/ng2-alfresco-userinfo/package.json index 0fd34017b8..74bd5cb06b 100644 --- a/ng2-components/ng2-alfresco-userinfo/package.json +++ b/ng2-components/ng2-alfresco-userinfo/package.json @@ -29,7 +29,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-viewer/package.json b/ng2-components/ng2-alfresco-viewer/package.json index 804a361326..df49ddeb3b 100644 --- a/ng2-components/ng2-alfresco-viewer/package.json +++ b/ng2-components/ng2-alfresco-viewer/package.json @@ -44,7 +44,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/ng2-alfresco-webscript/package.json b/ng2-components/ng2-alfresco-webscript/package.json index 43a483efb9..2f33d5f8f4 100644 --- a/ng2-components/ng2-alfresco-webscript/package.json +++ b/ng2-components/ng2-alfresco-webscript/package.json @@ -29,7 +29,7 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", diff --git a/ng2-components/package.json b/ng2-components/package.json index d91e9a65d8..6a5b54a1b7 100644 --- a/ng2-components/package.json +++ b/ng2-components/package.json @@ -7,8 +7,7 @@ "clean": "rimraf node_modules", "clean-lock": "rimraf package-lock.json", "rimraf": "rimraf", - "build": "npm run build-style && npm run toc && npm run markdownlint && npm run webpack -- --config config/webpack.build.js --progress --profile --bail", - "build-style": "npm run webpack -- --config config/webpack.style.js --progress --profile --bail", + "build": "npm run toc && npm run markdownlint && npm run webpack -- --config config/webpack.build.js --progress --profile --bail", "test": "node node_modules/karma/bin/karma start --reporters mocha,coverage --single-run --component .", "test-browser": "node node_modules/karma/bin/karma start karma.conf.js --reporters kjhtml", "coverage": "", @@ -69,32 +68,32 @@ "@angular/core": "4.2.5", "@angular/forms": "4.2.5", "@angular/http": "4.2.5", - "@angular/material": "^2.0.0-beta.8", + "@angular/material": "2.0.0-beta.8", "@angular/platform-browser": "4.2.5", "@angular/platform-browser-dynamic": "4.2.5", "@angular/router": "4.2.5", "@ngx-translate/core": "7.0.0", - "alfresco-js-api": "^1.8.0-9feb5d0164d6c5f994df8758e41ed126a8f69db2", - "chart.js": "2.5.0", + "alfresco-js-api": "1.7.0", "core-js": "2.4.1", "hammerjs": "2.0.8", "material-design-icons": "2.2.3", "material-design-lite": "1.2.1", - "minimatch": "3.0.4", "moment": "2.15.1", - "ng2-activiti-diagrams": "1.7.0", - "ng2-activiti-form": "1.7.0", - "ng2-activiti-tasklist": "1.7.0", - "ng2-alfresco-core": "1.7.0", - "ng2-alfresco-datatable": "1.7.0", - "ng2-alfresco-documentlist": "1.7.0", - "ng2-charts": "1.6.0", - "pdfjs-dist": "1.5.404", - "raphael": "2.2.7", "reflect-metadata": "0.1.10", "rxjs": "5.1.0", "systemjs": "0.19.27", - "zone.js": "0.6.26" + "zone.js": "0.6.26", + "ng2-alfresco-core": "1.7.0", + "raphael": "2.2.7", + "chart.js": "2.5.0", + "ng2-activiti-diagrams": "1.7.0", + "ng2-charts": "1.6.0", + "ng2-activiti-form": "1.7.0", + "ng2-alfresco-datatable": "1.7.0", + "ng2-activiti-tasklist": "1.7.0", + "ng2-alfresco-documentlist": "1.7.0", + "minimatch": "3.0.4", + "pdfjs-dist": "1.5.404" }, "devDependencies": { "@types/hammerjs": "2.0.34",