fixed some flow and eslint errors

This commit is contained in:
Ben Styles 2017-04-28 11:03:12 +01:00
parent 6cee2609b1
commit 80b519158f
2 changed files with 46 additions and 11 deletions

View File

@ -83,7 +83,12 @@ export default class Database extends Base {
* @param origCB * @param origCB
* @returns {*} * @returns {*}
*/ */
off(refId: number, listeners: Array<DatabaseListener>, remainingListenersCount: number) { off(
refId: number,
// $FlowFixMe
listeners: Array<DatabaseListener>,
remainingListenersCount: number
) {
this.log.debug('off() : ', refId, listeners); this.log.debug('off() : ', refId, listeners);
// Delete the reference if there are no more listeners // Delete the reference if there are no more listeners

View File

@ -26,9 +26,13 @@ declare type FuncSnapshotType = null|(snapshot: UploadTaskSnapshotType) => any;
declare type FuncErrorType = null|(error: Error) => any; declare type FuncErrorType = null|(error: Error) => any;
declare type NextOrObserverType = null declare type NextOrObserverType = null |
|{ next?: FuncSnapshotType, error?: FuncErrorType, complete?:FuncSnapshotType } {
|FuncSnapshotType; next?: FuncSnapshotType,
error?: FuncErrorType,
complete?:FuncSnapshotType
} |
FuncSnapshotType;
/** /**
* @url https://firebase.google.com/docs/reference/js/firebase.storage.UploadTask * @url https://firebase.google.com/docs/reference/js/firebase.storage.UploadTask
@ -93,15 +97,41 @@ export default class StorageTask {
* @private * @private
*/ */
_subscribe(nextOrObserver: NextOrObserverType, error: FuncErrorType, complete: FuncSnapshotType): Function { _subscribe(nextOrObserver: NextOrObserverType, error: FuncErrorType, complete: FuncSnapshotType): Function {
const observer = isObject(nextOrObserver); let _error;
let _next;
let _complete;
const _error = this._interceptErrorEvent(observer ? nextOrObserver.error : error); if (typeof nextOrObserver === 'function') {
const _next = this._interceptSnapshotEvent(observer ? nextOrObserver.next : nextOrObserver); _error = this._interceptErrorEvent(error);
const _complete = this._interceptSnapshotEvent(observer ? nextOrObserver.complete : complete); _next = this._interceptSnapshotEvent(nextOrObserver);
_complete = this._interceptSnapshotEvent(complete);
} else if (nextOrObserver) {
_error = this._interceptErrorEvent(nextOrObserver.error);
_next = this._interceptSnapshotEvent(nextOrObserver.next);
_complete = this._interceptSnapshotEvent(nextOrObserver.complete);
}
if (_next) this.storage._addListener(this.path, StorageStatics.TaskEvent.STATE_CHANGED, _next); if (_next) {
if (_error) this.storage._addListener(this.path, `${this.type}_failure`, _error); this.storage._addListener(
if (_complete) this.storage._addListener(this.path, `${this.type}_success`, _complete); this.path,
StorageStatics.TaskEvent.STATE_CHANGED,
_next
);
}
if (_error) {
this.storage._addListener(
this.path,
`${this.type}_failure`,
_error
);
}
if (_complete) {
this.storage._addListener(
this.path,
`${this.type}_success`,
_complete
);
}
return () => { return () => {
if (_next) this.storage._removeListener(this.path, StorageStatics.TaskEvent.STATE_CHANGED, _next); if (_next) this.storage._removeListener(this.path, StorageStatics.TaskEvent.STATE_CHANGED, _next);