From ae42d42390c972fb55e3741a0229d608282d48cc Mon Sep 17 00:00:00 2001 From: James Daniels Date: Fri, 31 Aug 2018 14:39:09 -0700 Subject: [PATCH 1/6] Better imports for the docs --- docs/auth/getting-started.md | 4 ++-- docs/ionic/v2.md | 4 ++-- docs/ionic/v3.md | 6 +++--- docs/version-4-upgrade.md | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/auth/getting-started.md b/docs/auth/getting-started.md index 0e7309034..5a91a3520 100644 --- a/docs/auth/getting-started.md +++ b/docs/auth/getting-started.md @@ -11,7 +11,7 @@ the Firebase docs for more information on what methods are available.](https://f ```ts import { Component } from '@angular/core'; import { AngularFireAuth } from 'angularfire2/auth'; -import { auth } from 'firebase'; +import firebase from 'firebase/app'; @Component({ selector: 'app-root', @@ -30,7 +30,7 @@ export class AppComponent { constructor(public afAuth: AngularFireAuth) { } login() { - this.afAuth.auth.signInWithPopup(new auth.GoogleAuthProvider()); + this.afAuth.auth.signInWithPopup(new firebase.auth.GoogleAuthProvider()); } logout() { this.afAuth.auth.signOut(); diff --git a/docs/ionic/v2.md b/docs/ionic/v2.md index 77cfc06b1..ddf317973 100644 --- a/docs/ionic/v2.md +++ b/docs/ionic/v2.md @@ -264,7 +264,7 @@ import { Observable } from 'rxjs/Observable'; import { Injectable } from '@angular/core'; import { AngularFireAuth } from 'AngularFire/auth'; // Do not import from 'firebase' as you'll lose the tree shaking benefits -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; @Injectable() export class AuthService { @@ -467,7 +467,7 @@ import { Observable } from 'rxjs/Observable'; import { Injectable } from '@angular/core'; import { AngularFireAuth } from 'AngularFire/auth'; // Do not import from 'firebase' as you'll lose the tree shaking benefits -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; import { Platform } from 'ionic-angular'; import { Facebook } from 'ionic-native'; diff --git a/docs/ionic/v3.md b/docs/ionic/v3.md index c53fb145c..325e59230 100644 --- a/docs/ionic/v3.md +++ b/docs/ionic/v3.md @@ -370,7 +370,7 @@ import { Component } from '@angular/core'; import { NavController } from 'ionic-angular'; import { AngularFireAuth } from 'angularfire2/auth'; -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; @Component({ selector: 'page-home', @@ -423,7 +423,7 @@ import { Component } from '@angular/core'; import { NavController } from 'ionic-angular'; import { AngularFireAuth } from 'angularfire2/auth'; -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; @Component({ selector: 'page-home', @@ -581,7 +581,7 @@ import { Component } from '@angular/core'; import { NavController } from 'ionic-angular'; import { AngularFireAuth } from 'angularfire2/auth'; -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; import { Platform } from 'ionic-angular'; import { Facebook } from '@ionic-native/facebook'; diff --git a/docs/version-4-upgrade.md b/docs/version-4-upgrade.md index 56ad8a80d..787d3fa87 100644 --- a/docs/version-4-upgrade.md +++ b/docs/version-4-upgrade.md @@ -36,7 +36,7 @@ In 4.0 we've reduced the complexity of the auth module by providing only [`fireb ```typescript import { AngularFireAuth } from 'angularfire2/auth'; // Do not import from 'firebase' as you'd lose the tree shaking benefits -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; ... user: Observable; @@ -75,7 +75,7 @@ import { AngularFireAuthModule, AngularFireAuth } from 'angularfire2/auth'; import { environment } from '../environments/environment'; // Do not import from 'firebase' as you'd lose the tree shaking benefits -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; @NgModule({ From 2eaf9fe7f4ec0dc747c89599d5c44e5dad290800 Mon Sep 17 00:00:00 2001 From: James Daniels Date: Fri, 31 Aug 2018 15:08:10 -0700 Subject: [PATCH 2/6] chore(core): Add comment linking to the JS SDK PR --- src/core/firebase.app.module.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/firebase.app.module.ts b/src/core/firebase.app.module.ts index c1315af5e..ae449ff7b 100644 --- a/src/core/firebase.app.module.ts +++ b/src/core/firebase.app.module.ts @@ -1,6 +1,6 @@ import { InjectionToken, NgZone, NgModule, Optional } from '@angular/core'; import { app, auth, database, firestore, functions, messaging, storage } from 'firebase'; -// @ts-ignore +// @ts-ignore (No default export https://github.com/firebase/firebase-js-sdk/pull/1184) import firebase from 'firebase/app'; // Public types don't expose FirebaseOptions or FirebaseAppConfig From 7a00c5ec3a9b93721c65b368199a8355cf985a7c Mon Sep 17 00:00:00 2001 From: James Daniels Date: Tue, 4 Sep 2018 10:23:55 -0700 Subject: [PATCH 3/6] chore(): Cleaning up the types --- src/auth/auth.spec.ts | 3 +-- src/auth/auth.ts | 2 +- src/core/angularfire2.spec.ts | 6 +++--- src/core/firebase.app.module.ts | 8 +++----- src/database-deprecated/firebase_object_observable.ts | 2 +- src/database-deprecated/interfaces.ts | 2 +- src/database/interfaces.ts | 2 +- src/database/list/changes.spec.ts | 2 +- src/database/list/remove.ts | 2 +- src/database/list/snapshot-changes.spec.ts | 2 +- src/database/list/state-changes.spec.ts | 2 +- src/firestore/interfaces.ts | 2 +- src/firestore/utils.spec.ts | 2 +- src/messaging/messaging.ts | 2 +- src/storage/interfaces.ts | 2 +- src/storage/observable/fromTask.ts | 2 +- 16 files changed, 20 insertions(+), 23 deletions(-) diff --git a/src/auth/auth.spec.ts b/src/auth/auth.spec.ts index 557301c41..5260556fe 100644 --- a/src/auth/auth.spec.ts +++ b/src/auth/auth.spec.ts @@ -1,5 +1,4 @@ -import { User } from 'firebase'; -import { ReflectiveInjector, Provider } from '@angular/core'; +import { User } from 'firebase/app'; import { Observable, Subject } from 'rxjs' import { TestBed, inject } from '@angular/core/testing'; import { FirebaseApp, FirebaseOptionsToken, AngularFireModule, FirebaseNameOrConfigToken } from 'angularfire2'; diff --git a/src/auth/auth.ts b/src/auth/auth.ts index 5d3b3685b..bcc46a5d1 100644 --- a/src/auth/auth.ts +++ b/src/auth/auth.ts @@ -3,7 +3,7 @@ import { Observable, of, from } from 'rxjs'; import { switchMap } from 'rxjs/operators'; import { FirebaseAppConfig, FirebaseOptions } from 'angularfire2'; -import { User, auth } from 'firebase'; +import { User, auth } from 'firebase/app'; import { FirebaseAuth, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from 'angularfire2'; diff --git a/src/core/angularfire2.spec.ts b/src/core/angularfire2.spec.ts index fe2575563..ce63cb7cd 100644 --- a/src/core/angularfire2.spec.ts +++ b/src/core/angularfire2.spec.ts @@ -1,11 +1,11 @@ -import { TestBed, inject, withModule, async } from '@angular/core/testing'; -import { ReflectiveInjector, Provider, PlatformRef, NgModule, Compiler, ApplicationRef, CompilerFactory } from '@angular/core'; +import { TestBed, inject } from '@angular/core/testing'; +import { PlatformRef, NgModule, CompilerFactory } from '@angular/core'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { Subscription } from 'rxjs'; import { COMMON_CONFIG } from './test-config'; import { BrowserModule } from '@angular/platform-browser'; -import { database } from 'firebase'; +import { database } from 'firebase/app'; describe('angularfire', () => { let subscription:Subscription; diff --git a/src/core/firebase.app.module.ts b/src/core/firebase.app.module.ts index ae449ff7b..ad4af66c3 100644 --- a/src/core/firebase.app.module.ts +++ b/src/core/firebase.app.module.ts @@ -1,7 +1,5 @@ -import { InjectionToken, NgZone, NgModule, Optional } from '@angular/core'; -import { app, auth, database, firestore, functions, messaging, storage } from 'firebase'; -// @ts-ignore (No default export https://github.com/firebase/firebase-js-sdk/pull/1184) -import firebase from 'firebase/app'; +import { InjectionToken, NgModule, Optional } from '@angular/core'; +import { default as firebase, app, auth, database, firestore, functions, messaging, storage } from 'firebase/app'; // Public types don't expose FirebaseOptions or FirebaseAppConfig export type FirebaseOptions = {[key:string]: any}; @@ -38,7 +36,7 @@ export function _firebaseAppFactory(options: FirebaseOptions, nameOrConfig?: str config.name = config.name || name; const existingApp = firebase.apps.filter(app => app && app.name === config.name)[0]; // We support FirebaseConfig, initializeApp's public type only accepts string; need to cast as any - return (existingApp || firebase.initializeApp(options, config)) as FirebaseApp; + return (existingApp || firebase.initializeApp(options, config as any)) as FirebaseApp; } const FirebaseAppProvider = { diff --git a/src/database-deprecated/firebase_object_observable.ts b/src/database-deprecated/firebase_object_observable.ts index d1dc06725..eaad39eb7 100644 --- a/src/database-deprecated/firebase_object_observable.ts +++ b/src/database-deprecated/firebase_object_observable.ts @@ -1,6 +1,6 @@ import { Observable, Operator, Subscriber, Subscription } from 'rxjs'; import { Reference } from './interfaces'; -import { database } from 'firebase'; +import { database } from 'firebase/app'; export class FirebaseObjectObservable extends Observable { constructor(subscribe?: (subscriber: Subscriber) => Subscription | Function | void, public $ref?:Reference) { diff --git a/src/database-deprecated/interfaces.ts b/src/database-deprecated/interfaces.ts index 0adf81ff6..cda58bfc4 100644 --- a/src/database-deprecated/interfaces.ts +++ b/src/database-deprecated/interfaces.ts @@ -1,5 +1,5 @@ import { Observable } from 'rxjs'; -import { database } from 'firebase'; +import { database } from 'firebase/app'; export type Reference = database.Reference; export type DataSnapshot = database.DataSnapshot; diff --git a/src/database/interfaces.ts b/src/database/interfaces.ts index 17c992c9e..d278ffcbb 100644 --- a/src/database/interfaces.ts +++ b/src/database/interfaces.ts @@ -1,5 +1,5 @@ import { Observable } from 'rxjs'; -import { database } from 'firebase'; +import { database } from 'firebase/app'; export type FirebaseOperation = string | database.Reference | database.DataSnapshot; diff --git a/src/database/list/changes.spec.ts b/src/database/list/changes.spec.ts index 147252c7a..1275c77a6 100644 --- a/src/database/list/changes.spec.ts +++ b/src/database/list/changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase'; +import { database } from 'firebase/app'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, listChanges } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/database/list/remove.ts b/src/database/list/remove.ts index 2c7978485..49751a340 100644 --- a/src/database/list/remove.ts +++ b/src/database/list/remove.ts @@ -1,6 +1,6 @@ import { DatabaseReference, DataSnapshot, FirebaseOperation, DatabaseSnapshot } from '../interfaces'; import { checkOperationCases } from '../utils'; -import { database } from 'firebase'; +import { database } from 'firebase/app'; // TODO(davideast): Find out why TS thinks this returns firebase.Primise // instead of Promise. diff --git a/src/database/list/snapshot-changes.spec.ts b/src/database/list/snapshot-changes.spec.ts index c4df5849e..5f9f1a430 100644 --- a/src/database/list/snapshot-changes.spec.ts +++ b/src/database/list/snapshot-changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase'; +import { database } from 'firebase/app'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, snapshotChanges, ChildEvent } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/database/list/state-changes.spec.ts b/src/database/list/state-changes.spec.ts index d594cb5cf..52aca3413 100644 --- a/src/database/list/state-changes.spec.ts +++ b/src/database/list/state-changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase'; +import { database } from 'firebase/app'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, stateChanges, ChildEvent } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/firestore/interfaces.ts b/src/firestore/interfaces.ts index 55985d5d9..0c6e174a9 100644 --- a/src/firestore/interfaces.ts +++ b/src/firestore/interfaces.ts @@ -1,5 +1,5 @@ import { Subscriber } from 'rxjs'; -import { firestore } from 'firebase'; +import { firestore } from 'firebase/app'; export type Settings = firestore.Settings; export type CollectionReference = firestore.CollectionReference; diff --git a/src/firestore/utils.spec.ts b/src/firestore/utils.spec.ts index 88a4afc90..3280cc6f1 100644 --- a/src/firestore/utils.spec.ts +++ b/src/firestore/utils.spec.ts @@ -1,4 +1,4 @@ -import { firestore } from 'firebase'; +import { firestore } from 'firebase/app'; import { AngularFirestoreCollection } from './collection/collection'; export interface Stock { diff --git a/src/messaging/messaging.ts b/src/messaging/messaging.ts index 2fc84fc18..36715febe 100644 --- a/src/messaging/messaging.ts +++ b/src/messaging/messaging.ts @@ -1,6 +1,6 @@ import { Injectable, Inject, Optional, NgZone, PLATFORM_ID } from '@angular/core'; import { isPlatformBrowser } from '@angular/common'; -import { messaging } from 'firebase'; +import { messaging } from 'firebase/app'; import { Observable, empty, from, of, throwError } from 'rxjs'; import { mergeMap, catchError, map, switchMap, concat, defaultIfEmpty } from 'rxjs/operators'; import { FirebaseOptions, FirebaseAppConfig, runOutsideAngular } from 'angularfire2'; diff --git a/src/storage/interfaces.ts b/src/storage/interfaces.ts index 96d75d89d..c46200066 100644 --- a/src/storage/interfaces.ts +++ b/src/storage/interfaces.ts @@ -1,4 +1,4 @@ -import { storage } from 'firebase'; +import { storage } from 'firebase/app'; export type UploadTask = storage.UploadTask; export type UploadTaskSnapshot = storage.UploadTaskSnapshot; diff --git a/src/storage/observable/fromTask.ts b/src/storage/observable/fromTask.ts index 35372cf2b..0aac5f2e6 100644 --- a/src/storage/observable/fromTask.ts +++ b/src/storage/observable/fromTask.ts @@ -1,6 +1,6 @@ import { Observable } from 'rxjs'; import { UploadTask, UploadTaskSnapshot } from '../interfaces'; -import { storage } from 'firebase'; +import { storage } from 'firebase/app'; export function fromTask(task: UploadTask) { return new Observable(subscriber => { From f9621e1af2e6cdd6b89ec6d5aa77f434d96b8ea1 Mon Sep 17 00:00:00 2001 From: James Daniels Date: Wed, 5 Sep 2018 21:03:36 -0700 Subject: [PATCH 4/6] Getting this right now --- docs/ionic/authentication.md | 2 +- src/auth/auth.spec.ts | 2 +- src/auth/auth.ts | 3 +-- src/core/angularfire2.spec.ts | 3 +-- src/core/firebase.app.module.ts | 8 ++++++-- src/database-deprecated/firebase_object_observable.ts | 2 +- src/database-deprecated/interfaces.ts | 2 +- src/database/interfaces.ts | 2 +- src/database/list/changes.spec.ts | 2 +- src/database/list/remove.ts | 2 +- src/database/list/snapshot-changes.spec.ts | 2 +- src/database/list/state-changes.spec.ts | 2 +- src/firestore/collection/collection.ts | 2 +- src/firestore/firestore.ts | 2 +- src/firestore/interfaces.ts | 2 +- src/firestore/utils.spec.ts | 2 +- src/messaging/messaging.ts | 2 +- src/storage/interfaces.ts | 2 +- src/storage/observable/fromTask.ts | 2 +- 19 files changed, 24 insertions(+), 22 deletions(-) diff --git a/docs/ionic/authentication.md b/docs/ionic/authentication.md index 2182e6cae..ea2486fa1 100644 --- a/docs/ionic/authentication.md +++ b/docs/ionic/authentication.md @@ -47,7 +47,7 @@ at `login.service.ts` add this function: ```ts import { AngularFireAuth } from 'angularfire2/auth'; -import * as firebase from 'firebase/app'; +import firebase from 'firebase/app'; import AuthProvider = firebase.auth.AuthProvider; export class AuthService { diff --git a/src/auth/auth.spec.ts b/src/auth/auth.spec.ts index 5260556fe..3e7fd6df1 100644 --- a/src/auth/auth.spec.ts +++ b/src/auth/auth.spec.ts @@ -1,4 +1,4 @@ -import { User } from 'firebase/app'; +import { User } from 'firebase'; import { Observable, Subject } from 'rxjs' import { TestBed, inject } from '@angular/core/testing'; import { FirebaseApp, FirebaseOptionsToken, AngularFireModule, FirebaseNameOrConfigToken } from 'angularfire2'; diff --git a/src/auth/auth.ts b/src/auth/auth.ts index bcc46a5d1..8f12d57d8 100644 --- a/src/auth/auth.ts +++ b/src/auth/auth.ts @@ -2,8 +2,7 @@ import { Injectable, Inject, Optional, NgZone, PLATFORM_ID } from '@angular/core import { Observable, of, from } from 'rxjs'; import { switchMap } from 'rxjs/operators'; import { FirebaseAppConfig, FirebaseOptions } from 'angularfire2'; - -import { User, auth } from 'firebase/app'; +import { User, auth } from 'firebase'; import { FirebaseAuth, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from 'angularfire2'; diff --git a/src/core/angularfire2.spec.ts b/src/core/angularfire2.spec.ts index ce63cb7cd..0aa158b30 100644 --- a/src/core/angularfire2.spec.ts +++ b/src/core/angularfire2.spec.ts @@ -1,11 +1,10 @@ - import { TestBed, inject } from '@angular/core/testing'; import { PlatformRef, NgModule, CompilerFactory } from '@angular/core'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { Subscription } from 'rxjs'; import { COMMON_CONFIG } from './test-config'; import { BrowserModule } from '@angular/platform-browser'; -import { database } from 'firebase/app'; +import { database } from 'firebase'; describe('angularfire', () => { let subscription:Subscription; diff --git a/src/core/firebase.app.module.ts b/src/core/firebase.app.module.ts index ad4af66c3..4cbe1355a 100644 --- a/src/core/firebase.app.module.ts +++ b/src/core/firebase.app.module.ts @@ -1,5 +1,7 @@ import { InjectionToken, NgModule, Optional } from '@angular/core'; -import { default as firebase, app, auth, database, firestore, functions, messaging, storage } from 'firebase/app'; +import {app, auth, database, firestore, functions, messaging, storage } from 'firebase'; +// @ts-ignore (https://github.com/firebase/firebase-js-sdk/pull/1206) +import firebase from 'firebase/app'; // Public types don't expose FirebaseOptions or FirebaseAppConfig export type FirebaseOptions = {[key:string]: any}; @@ -34,8 +36,10 @@ export function _firebaseAppFactory(options: FirebaseOptions, nameOrConfig?: str const name = typeof nameOrConfig === 'string' && nameOrConfig || '[DEFAULT]'; const config = typeof nameOrConfig === 'object' && nameOrConfig || {}; config.name = config.name || name; - const existingApp = firebase.apps.filter(app => app && app.name === config.name)[0]; + // Added any due to some inconsistency between @firebase/app and firebase types + const existingApp = firebase.apps.filter(app => app && app.name === config.name)[0] as any; // We support FirebaseConfig, initializeApp's public type only accepts string; need to cast as any + // Should be solved with https://github.com/firebase/firebase-js-sdk/pull/1206 return (existingApp || firebase.initializeApp(options, config as any)) as FirebaseApp; } diff --git a/src/database-deprecated/firebase_object_observable.ts b/src/database-deprecated/firebase_object_observable.ts index eaad39eb7..d1dc06725 100644 --- a/src/database-deprecated/firebase_object_observable.ts +++ b/src/database-deprecated/firebase_object_observable.ts @@ -1,6 +1,6 @@ import { Observable, Operator, Subscriber, Subscription } from 'rxjs'; import { Reference } from './interfaces'; -import { database } from 'firebase/app'; +import { database } from 'firebase'; export class FirebaseObjectObservable extends Observable { constructor(subscribe?: (subscriber: Subscriber) => Subscription | Function | void, public $ref?:Reference) { diff --git a/src/database-deprecated/interfaces.ts b/src/database-deprecated/interfaces.ts index cda58bfc4..0adf81ff6 100644 --- a/src/database-deprecated/interfaces.ts +++ b/src/database-deprecated/interfaces.ts @@ -1,5 +1,5 @@ import { Observable } from 'rxjs'; -import { database } from 'firebase/app'; +import { database } from 'firebase'; export type Reference = database.Reference; export type DataSnapshot = database.DataSnapshot; diff --git a/src/database/interfaces.ts b/src/database/interfaces.ts index d278ffcbb..17c992c9e 100644 --- a/src/database/interfaces.ts +++ b/src/database/interfaces.ts @@ -1,5 +1,5 @@ import { Observable } from 'rxjs'; -import { database } from 'firebase/app'; +import { database } from 'firebase'; export type FirebaseOperation = string | database.Reference | database.DataSnapshot; diff --git a/src/database/list/changes.spec.ts b/src/database/list/changes.spec.ts index 1275c77a6..147252c7a 100644 --- a/src/database/list/changes.spec.ts +++ b/src/database/list/changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase/app'; +import { database } from 'firebase'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, listChanges } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/database/list/remove.ts b/src/database/list/remove.ts index 49751a340..2c7978485 100644 --- a/src/database/list/remove.ts +++ b/src/database/list/remove.ts @@ -1,6 +1,6 @@ import { DatabaseReference, DataSnapshot, FirebaseOperation, DatabaseSnapshot } from '../interfaces'; import { checkOperationCases } from '../utils'; -import { database } from 'firebase/app'; +import { database } from 'firebase'; // TODO(davideast): Find out why TS thinks this returns firebase.Primise // instead of Promise. diff --git a/src/database/list/snapshot-changes.spec.ts b/src/database/list/snapshot-changes.spec.ts index 5f9f1a430..c4df5849e 100644 --- a/src/database/list/snapshot-changes.spec.ts +++ b/src/database/list/snapshot-changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase/app'; +import { database } from 'firebase'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, snapshotChanges, ChildEvent } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/database/list/state-changes.spec.ts b/src/database/list/state-changes.spec.ts index 52aca3413..d594cb5cf 100644 --- a/src/database/list/state-changes.spec.ts +++ b/src/database/list/state-changes.spec.ts @@ -1,4 +1,4 @@ -import { database } from 'firebase/app'; +import { database } from 'firebase'; import { FirebaseApp, AngularFireModule } from 'angularfire2'; import { AngularFireDatabase, AngularFireDatabaseModule, stateChanges, ChildEvent } from 'angularfire2/database'; import { TestBed, inject } from '@angular/core/testing'; diff --git a/src/firestore/collection/collection.ts b/src/firestore/collection/collection.ts index bb1ec1a09..8cbc9571a 100644 --- a/src/firestore/collection/collection.ts +++ b/src/firestore/collection/collection.ts @@ -1,7 +1,7 @@ import { Observable, from } from 'rxjs'; import { fromCollectionRef } from '../observable/fromRef'; import { map, filter, scan } from 'rxjs/operators'; -import { firestore } from 'firebase/app'; +import { firestore } from 'firebase'; import { DocumentChangeType, CollectionReference, Query, DocumentReference, DocumentData, QueryFn, AssociatedReference, DocumentChangeAction, DocumentChange } from '../interfaces'; import { docChanges, sortedChanges } from './changes'; diff --git a/src/firestore/firestore.ts b/src/firestore/firestore.ts index 9e3d5163a..646976461 100644 --- a/src/firestore/firestore.ts +++ b/src/firestore/firestore.ts @@ -2,7 +2,7 @@ import { InjectionToken, NgZone, PLATFORM_ID, Injectable, Inject, Optional } fro import { Observable, of, from } from 'rxjs'; import { catchError } from 'rxjs/operators'; -import { firestore } from 'firebase/app'; +import { firestore } from 'firebase'; import { Settings, CollectionReference, DocumentReference, QueryFn, AssociatedReference } from './interfaces'; import { AngularFirestoreDocument } from './document/document'; diff --git a/src/firestore/interfaces.ts b/src/firestore/interfaces.ts index 0c6e174a9..55985d5d9 100644 --- a/src/firestore/interfaces.ts +++ b/src/firestore/interfaces.ts @@ -1,5 +1,5 @@ import { Subscriber } from 'rxjs'; -import { firestore } from 'firebase/app'; +import { firestore } from 'firebase'; export type Settings = firestore.Settings; export type CollectionReference = firestore.CollectionReference; diff --git a/src/firestore/utils.spec.ts b/src/firestore/utils.spec.ts index 3280cc6f1..88a4afc90 100644 --- a/src/firestore/utils.spec.ts +++ b/src/firestore/utils.spec.ts @@ -1,4 +1,4 @@ -import { firestore } from 'firebase/app'; +import { firestore } from 'firebase'; import { AngularFirestoreCollection } from './collection/collection'; export interface Stock { diff --git a/src/messaging/messaging.ts b/src/messaging/messaging.ts index 36715febe..2fc84fc18 100644 --- a/src/messaging/messaging.ts +++ b/src/messaging/messaging.ts @@ -1,6 +1,6 @@ import { Injectable, Inject, Optional, NgZone, PLATFORM_ID } from '@angular/core'; import { isPlatformBrowser } from '@angular/common'; -import { messaging } from 'firebase/app'; +import { messaging } from 'firebase'; import { Observable, empty, from, of, throwError } from 'rxjs'; import { mergeMap, catchError, map, switchMap, concat, defaultIfEmpty } from 'rxjs/operators'; import { FirebaseOptions, FirebaseAppConfig, runOutsideAngular } from 'angularfire2'; diff --git a/src/storage/interfaces.ts b/src/storage/interfaces.ts index c46200066..96d75d89d 100644 --- a/src/storage/interfaces.ts +++ b/src/storage/interfaces.ts @@ -1,4 +1,4 @@ -import { storage } from 'firebase/app'; +import { storage } from 'firebase'; export type UploadTask = storage.UploadTask; export type UploadTaskSnapshot = storage.UploadTaskSnapshot; diff --git a/src/storage/observable/fromTask.ts b/src/storage/observable/fromTask.ts index 0aac5f2e6..35372cf2b 100644 --- a/src/storage/observable/fromTask.ts +++ b/src/storage/observable/fromTask.ts @@ -1,6 +1,6 @@ import { Observable } from 'rxjs'; import { UploadTask, UploadTaskSnapshot } from '../interfaces'; -import { storage } from 'firebase/app'; +import { storage } from 'firebase'; export function fromTask(task: UploadTask) { return new Observable(subscriber => { From fdc41454b71d8c7fe89b0a79f3f3c9f248954199 Mon Sep 17 00:00:00 2001 From: James Daniels Date: Wed, 5 Sep 2018 21:04:58 -0700 Subject: [PATCH 5/6] Missed one firebase/app ref --- src/firestore/document/document.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/firestore/document/document.ts b/src/firestore/document/document.ts index 4f5effcbd..dca90ca99 100644 --- a/src/firestore/document/document.ts +++ b/src/firestore/document/document.ts @@ -5,7 +5,7 @@ import { map } from 'rxjs/operators'; import { AngularFirestore, associateQuery } from '../firestore'; import { AngularFirestoreCollection } from '../collection/collection'; -import { firestore } from 'firebase/app'; +import { firestore } from 'firebase'; import { runInZone } from 'angularfire2'; /** From 21a93295548739826240089bb3afa5e62eac9235 Mon Sep 17 00:00:00 2001 From: James Daniels Date: Wed, 5 Sep 2018 21:09:17 -0700 Subject: [PATCH 6/6] Was a little overzealous on the find/replace --- docs/auth/getting-started.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/auth/getting-started.md b/docs/auth/getting-started.md index 5a91a3520..0e7309034 100644 --- a/docs/auth/getting-started.md +++ b/docs/auth/getting-started.md @@ -11,7 +11,7 @@ the Firebase docs for more information on what methods are available.](https://f ```ts import { Component } from '@angular/core'; import { AngularFireAuth } from 'angularfire2/auth'; -import firebase from 'firebase/app'; +import { auth } from 'firebase'; @Component({ selector: 'app-root', @@ -30,7 +30,7 @@ export class AppComponent { constructor(public afAuth: AngularFireAuth) { } login() { - this.afAuth.auth.signInWithPopup(new firebase.auth.GoogleAuthProvider()); + this.afAuth.auth.signInWithPopup(new auth.GoogleAuthProvider()); } logout() { this.afAuth.auth.signOut();