From be70a823030be804f9a03f1c801f44bf2b8ddfe8 Mon Sep 17 00:00:00 2001 From: Daniel Kucal Date: Tue, 17 Jan 2017 14:07:03 +0100 Subject: [PATCH] Allow to extend classes (#468) * private accessors replaced by protected to allow extending of classes * FileItem class protected accessors --- components/file-upload/file-drop.directive.ts | 8 ++-- components/file-upload/file-item.class.ts | 6 +-- .../file-upload/file-select.directive.ts | 2 +- components/file-upload/file-uploader.class.ts | 38 +++++++++---------- 4 files changed, 27 insertions(+), 27 deletions(-) diff --git a/components/file-upload/file-drop.directive.ts b/components/file-upload/file-drop.directive.ts index 13d8f3b..cf271a7 100644 --- a/components/file-upload/file-drop.directive.ts +++ b/components/file-upload/file-drop.directive.ts @@ -8,7 +8,7 @@ export class FileDropDirective { @Output() public fileOver:EventEmitter = new EventEmitter(); @Output() public onFileDrop:EventEmitter = new EventEmitter(); - private element:ElementRef; + protected element:ElementRef; public constructor(element:ElementRef) { this.element = element; @@ -59,16 +59,16 @@ export class FileDropDirective { this.fileOver.emit(false); } - private _getTransfer(event:any):any { + protected _getTransfer(event:any):any { return event.dataTransfer ? event.dataTransfer : event.originalEvent.dataTransfer; // jQuery fix; } - private _preventAndStop(event:any):any { + protected _preventAndStop(event:any):any { event.preventDefault(); event.stopPropagation(); } - private _haveFiles(types:any):any { + protected _haveFiles(types:any):any { if (!types) { return false; } diff --git a/components/file-upload/file-item.class.ts b/components/file-upload/file-item.class.ts index c676860..17fe274 100644 --- a/components/file-upload/file-item.class.ts +++ b/components/file-upload/file-item.class.ts @@ -21,9 +21,9 @@ export class FileItem { public _xhr:XMLHttpRequest; public _form:any; - private uploader:FileUploader; - private some:File; - private options:FileUploaderOptions; + protected uploader:FileUploader; + protected some:File; + protected options:FileUploaderOptions; public constructor(uploader:FileUploader, some:File, options:FileUploaderOptions) { this.uploader = uploader; diff --git a/components/file-upload/file-select.directive.ts b/components/file-upload/file-select.directive.ts index 3bef0b7..ed84cba 100644 --- a/components/file-upload/file-select.directive.ts +++ b/components/file-upload/file-select.directive.ts @@ -8,7 +8,7 @@ import { FileUploader } from './file-uploader.class'; export class FileSelectDirective { @Input() public uploader:FileUploader; - private element:ElementRef; + protected element:ElementRef; public constructor(element:ElementRef) { this.element = element; diff --git a/components/file-upload/file-uploader.class.ts b/components/file-upload/file-uploader.class.ts index 8e9b387..5f17770 100644 --- a/components/file-upload/file-uploader.class.ts +++ b/components/file-upload/file-uploader.class.ts @@ -52,7 +52,7 @@ export class FileUploader { disableMultipart: false }; - private _failFilterIndex:number; + protected _failFilterIndex:number; public constructor(options:FileUploaderOptions) { this.setOptions(options); @@ -361,7 +361,7 @@ export class FileUploader { this._render(); } - private _getTotalProgress(value:number = 0):number { + protected _getTotalProgress(value:number = 0):number { if (this.options.removeAfterUpload) { return value; } @@ -372,7 +372,7 @@ export class FileUploader { return Math.round(uploaded * ratio + current); } - private _getFilters(filters:FilterFunction[]|string):FilterFunction[] { + protected _getFilters(filters:FilterFunction[]|string):FilterFunction[] { if (!filters) { return this.options.filters; } @@ -387,20 +387,20 @@ export class FileUploader { return this.options.filters; } - private _render():any { + protected _render():any { return void 0; // todo: ? } - // private _folderFilter(item:FileItem):boolean { + // protected _folderFilter(item:FileItem):boolean { // return !!(item.size || item.type); // } - private _queueLimitFilter():boolean { + protected _queueLimitFilter():boolean { return this.options.queueLimit === undefined || this.queue.length < this.options.queueLimit; } - private _isValidFile(file:FileLikeObject, filters:FilterFunction[], options:FileUploaderOptions):boolean { + protected _isValidFile(file:FileLikeObject, filters:FilterFunction[], options:FileUploaderOptions):boolean { this._failFilterIndex = -1; return !filters.length ? true : filters.every((filter:FilterFunction) => { this._failFilterIndex++; @@ -408,12 +408,12 @@ export class FileUploader { }); } - private _isSuccessCode(status:number):boolean { + protected _isSuccessCode(status:number):boolean { return (status >= 200 && status < 300) || status === 304; } /* tslint:disable */ - private _transformResponse(response:string, headers:ParsedResponseHeaders):string { + protected _transformResponse(response:string, headers:ParsedResponseHeaders):string { // todo: ? /*var headersGetter = this._headersGetter(headers); forEach($http.defaults.transformResponse, (transformFn) => { @@ -423,7 +423,7 @@ export class FileUploader { } /* tslint:enable */ - private _parseHeaders(headers:string):ParsedResponseHeaders { + protected _parseHeaders(headers:string):ParsedResponseHeaders { let parsed:any = {}; let key:any; let val:any; @@ -442,33 +442,33 @@ export class FileUploader { return parsed; } - /*private _iframeTransport(item:FileItem) { + /*protected _iframeTransport(item:FileItem) { // todo: implement it later }*/ - private _onWhenAddingFileFailed(item:FileLikeObject, filter:any, options:any):void { + protected _onWhenAddingFileFailed(item:FileLikeObject, filter:any, options:any):void { this.onWhenAddingFileFailed(item, filter, options); } - private _onAfterAddingFile(item:FileItem):void { + protected _onAfterAddingFile(item:FileItem):void { this.onAfterAddingFile(item); } - private _onAfterAddingAll(items:any):void { + protected _onAfterAddingAll(items:any):void { this.onAfterAddingAll(items); } - private _onBeforeUploadItem(item:FileItem):void { + protected _onBeforeUploadItem(item:FileItem):void { item._onBeforeUpload(); this.onBeforeUploadItem(item); } - private _onBuildItemForm(item:FileItem, form:any):void { + protected _onBuildItemForm(item:FileItem, form:any):void { item._onBuildForm(form); this.onBuildItemForm(item, form); } - private _onProgressItem(item:FileItem, progress:any):void { + protected _onProgressItem(item:FileItem, progress:any):void { let total = this._getTotalProgress(progress); this.progress = total; item._onProgress(progress); @@ -478,13 +478,13 @@ export class FileUploader { } /* tslint:disable */ - private _onSuccessItem(item:FileItem, response:string, status:number, headers:ParsedResponseHeaders):void { + protected _onSuccessItem(item:FileItem, response:string, status:number, headers:ParsedResponseHeaders):void { item._onSuccess(response, status, headers); this.onSuccessItem(item, response, status, headers); } /* tslint:enable */ - private _onCancelItem(item:FileItem, response:string, status:number, headers:ParsedResponseHeaders):void { + protected _onCancelItem(item:FileItem, response:string, status:number, headers:ParsedResponseHeaders):void { item._onCancel(response, status, headers); this.onCancelItem(item, response, status, headers); }