From 3dd2c0e952cffcdbec9ea3df7e1ca9b5fcd1ffa1 Mon Sep 17 00:00:00 2001 From: Dmitriy Shekhovtsov Date: Thu, 12 May 2016 15:50:50 +0300 Subject: [PATCH] Merge of onBuildForm --- components/file-upload/file-item.class.ts | 8 ++++++++ components/file-upload/file-uploader.class.ts | 11 +++++++++++ 2 files changed, 19 insertions(+) diff --git a/components/file-upload/file-item.class.ts b/components/file-upload/file-item.class.ts index 1151510..d8db025 100644 --- a/components/file-upload/file-item.class.ts +++ b/components/file-upload/file-item.class.ts @@ -57,6 +57,10 @@ export class FileItem { return void 0; } + public onBuildForm(form:any):any { + return {form}; + } + public onProgress(progress:number):any { return {progress}; } @@ -88,6 +92,10 @@ export class FileItem { this.onBeforeUpload(); } + public _onBuildForm(form:any):void { + this.onBuildForm(form); + } + public _onProgress(progress:number):void { this._zone.run(() => { this.progress = progress; diff --git a/components/file-upload/file-uploader.class.ts b/components/file-upload/file-uploader.class.ts index 76448c6..b014b2d 100644 --- a/components/file-upload/file-uploader.class.ts +++ b/components/file-upload/file-uploader.class.ts @@ -189,6 +189,10 @@ export class FileUploader { return {fileItems}; } + public onBuildItemForm(fileItem:any, form:any):any { + return {fileItem, form}; + } + public onAfterAddingFile(fileItem:any):any { return {fileItem}; } @@ -283,6 +287,8 @@ export class FileUploader { if (typeof item._file.size !== 'number') { throw new TypeError('The file specified is no longer valid'); } + this._onBuildItemForm(item, form); + form.append(item.alias, item._file, item.file.name); xhr.upload.onprogress = (event:any) => { let progress = Math.round(event.lengthComputable ? event.loaded * 100 / event.total : 0); @@ -428,6 +434,11 @@ export class FileUploader { this.onBeforeUploadItem(item); } + private _onBuildItemForm(item:any, form:any):void { + item._onBuildForm(form); + this.onBuildItemForm(item, form); + } + private _onProgressItem(item:any, progress:any):void { let total = this._getTotalProgress(progress); this.progress = total;