Skip to content

Commit 1cf961b

Browse files
committed
Cleaning up the DI tokens
1 parent e5be927 commit 1cf961b

File tree

11 files changed

+55
-47
lines changed

11 files changed

+55
-47
lines changed

src/analytics/analytics.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { Observable, from, of } from 'rxjs';
33
import { map, switchMap, tap, filter } from 'rxjs/operators';
44
import { FirebaseAppConfig, FirebaseOptions, runOutsideAngular } from '@angular/fire';
55
import { Router, NavigationEnd } from '@angular/router';
6-
import { FirebaseAnalytics, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory } from '@angular/fire';
6+
import { FirebaseAnalytics, FIREBASE_OPTIONS, FIREBASE_APP_NAME, _firebaseAppFactory } from '@angular/fire';
77

88
export const AUTOMATICALLY_SET_CURRENT_SCREEN = new InjectionToken<boolean>('angularfire2.analytics.setCurrentScreen');
99
export const ANALYTICS_COLLECTION_ENABLED = new InjectionToken<boolean>('angularfire2.analytics.analyticsCollectionEnabled');
@@ -18,8 +18,8 @@ export class AngularFireAnalytics {
1818
public readonly analytics: Observable<FirebaseAnalytics>;
1919

2020
constructor(
21-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
22-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
21+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
22+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
2323
@Optional() router:Router,
2424
@Optional() @Inject(AUTOMATICALLY_SET_CURRENT_SCREEN) automaticallySetCurrentScreen:boolean|null,
2525
@Optional() @Inject(ANALYTICS_COLLECTION_ENABLED) analyticsCollectionEnabled:boolean|null,

src/auth/auth.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
import { Injectable, Inject, Optional, NgZone, PLATFORM_ID } from '@angular/core';
22
import { Observable, of, from } from 'rxjs';
33
import { switchMap } from 'rxjs/operators';
4-
import { FirebaseAppConfig, FirebaseOptions } from '@angular/fire';
4+
import { FIREBASE_OPTIONS, FIREBASE_APP_NAME, FirebaseOptions, FirebaseAppConfig, FirebaseAuth, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
55
import { User, auth } from 'firebase/app';
66

7-
import { FirebaseAuth, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
8-
97
@Injectable()
108
export class AngularFireAuth {
119

@@ -37,8 +35,8 @@ export class AngularFireAuth {
3735
public readonly idTokenResult: Observable<auth.IdTokenResult|null>;
3836

3937
constructor(
40-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
41-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
38+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
39+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
4240
@Inject(PLATFORM_ID) platformId: Object,
4341
private zone: NgZone
4442
) {

src/core/angularfire2.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { Observable, Subscription, queueScheduler as queue } from 'rxjs';
44

55
// Put in database.ts when we drop database-depreciated
66
export const RealtimeDatabaseURL = new InjectionToken<string>('angularfire2.realtimeDatabaseURL');
7+
export const DATABASE_URL = RealtimeDatabaseURL;
78

89
export class FirebaseZoneScheduler {
910
constructor(public zone: NgZone, private platformId: Object) {}

src/core/firebase.app.module.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@ export type FirebaseOptions = {[key:string]: any};
88
export type FirebaseAppConfig = {[key:string]: any};
99

1010
export const FirebaseOptionsToken = new InjectionToken<FirebaseOptions>('angularfire2.app.options');
11-
export const FirebaseNameOrConfigToken = new InjectionToken<string|FirebaseAppConfig|undefined>('angularfire2.app.nameOrConfig')
11+
export const FirebaseNameOrConfigToken = new InjectionToken<string|FirebaseAppConfig|undefined>('angularfire2.app.nameOrConfig');
12+
13+
export const FIREBASE_OPTIONS = FirebaseOptionsToken;
14+
export const FIREBASE_APP_NAME = FirebaseNameOrConfigToken;
1215

1316
export type FirebaseDatabase = database.Database;
1417
export type FirebaseAuth = auth.Auth;
@@ -51,8 +54,8 @@ const FirebaseAppProvider = {
5154
provide: FirebaseApp,
5255
useFactory: _firebaseAppFactory,
5356
deps: [
54-
FirebaseOptionsToken,
55-
[new Optional(), FirebaseNameOrConfigToken]
57+
FIREBASE_OPTIONS,
58+
[new Optional(), FIREBASE_APP_NAME]
5659
]
5760
};
5861

@@ -64,8 +67,8 @@ export class AngularFireModule {
6467
return {
6568
ngModule: AngularFireModule,
6669
providers: [
67-
{ provide: FirebaseOptionsToken, useValue: options },
68-
{ provide: FirebaseNameOrConfigToken, useValue: nameOrConfig }
70+
{ provide: FIREBASE_OPTIONS, useValue: options },
71+
{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }
6972
]
7073
}
7174
}

src/database-deprecated/database.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { FirebaseListFactoryOpts, FirebaseObjectFactoryOpts, PathReference } fro
55
import { FirebaseObjectFactory } from './firebase_object_factory';
66
import { FirebaseObjectObservable } from './firebase_object_observable';
77
import * as utils from './utils';
8-
import { FirebaseDatabase, FirebaseOptions, FirebaseAppConfig, FirebaseOptionsToken, FirebaseNameOrConfigToken, RealtimeDatabaseURL, _firebaseAppFactory } from '@angular/fire';
8+
import { FirebaseDatabase, FirebaseOptions, FirebaseAppConfig, RealtimeDatabaseURL, FIREBASE_OPTIONS, FIREBASE_APP_NAME, DATABASE_URL, _firebaseAppFactory } from '@angular/fire';
99

1010
@Injectable()
1111
export class AngularFireDatabase {
@@ -16,9 +16,9 @@ export class AngularFireDatabase {
1616
database: FirebaseDatabase;
1717

1818
constructor(
19-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
20-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
21-
@Optional() @Inject(RealtimeDatabaseURL) databaseURL:string|null,
19+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
20+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
21+
@Optional() @Inject(DATABASE_URL) databaseURL:string|null,
2222
zone: NgZone
2323
) {
2424
this.database = zone.runOutsideAngular(() => {
@@ -39,4 +39,4 @@ export class AngularFireDatabase {
3939

4040
}
4141

42-
export { RealtimeDatabaseURL };
42+
export { DATABASE_URL };

src/database/database.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ import { getRef } from './utils';
44
import { InjectionToken } from '@angular/core';
55
import { createListReference } from './list/create-reference';
66
import { createObjectReference } from './object/create-reference';
7-
import { FirebaseDatabase, FirebaseOptions, FirebaseAppConfig, FirebaseOptionsToken, FirebaseNameOrConfigToken, RealtimeDatabaseURL, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
7+
import { FirebaseDatabase, FirebaseOptions, FirebaseAppConfig, RealtimeDatabaseURL, FIREBASE_OPTIONS, FIREBASE_APP_NAME, DATABASE_URL, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
88

99
@Injectable()
1010
export class AngularFireDatabase {
1111
public readonly database: FirebaseDatabase;
1212
public readonly scheduler: FirebaseZoneScheduler;
1313

1414
constructor(
15-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
16-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
17-
@Optional() @Inject(RealtimeDatabaseURL) databaseURL:string|null,
15+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
16+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
17+
@Optional() @Inject(DATABASE_URL) databaseURL:string|null,
1818
@Inject(PLATFORM_ID) platformId: Object,
1919
zone: NgZone
2020
) {
@@ -58,4 +58,4 @@ export {
5858
SnapshotAction
5959
} from './interfaces';
6060

61-
export { RealtimeDatabaseURL };
61+
export { RealtimeDatabaseURL, DATABASE_URL };

src/firestore/firestore.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { AngularFirestoreDocument } from './document/document';
77
import { AngularFirestoreCollection } from './collection/collection';
88
import { AngularFirestoreCollectionGroup } from './collection-group/collection-group';
99

10-
import { FirebaseFirestore, FirebaseOptions, FirebaseAppConfig, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
10+
import { FirebaseFirestore, FirebaseOptions, FirebaseAppConfig, FIREBASE_OPTIONS, FIREBASE_APP_NAME, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
1111
import { isPlatformServer } from '@angular/common';
1212

1313
// Workaround for Nodejs build
@@ -24,6 +24,10 @@ export const EnablePersistenceToken = new InjectionToken<boolean>('angularfire2.
2424
export const PersistenceSettingsToken = new InjectionToken<PersistenceSettings|undefined>('angularfire2.firestore.persistenceSettings');
2525
export const FirestoreSettingsToken = new InjectionToken<Settings>('angularfire2.firestore.settings');
2626

27+
export const ENABLE_PERSISTENCE = EnablePersistenceToken;
28+
export const PERSISTENCE_SETTINGS = PersistenceSettingsToken
29+
export const FIRESTORE_SETTINGS = FirestoreSettingsToken;
30+
2731
// timestampsInSnapshots was depreciated in 5.8.0
2832
const major = parseInt(firebase.SDK_VERSION.split('.')[0]);
2933
const minor = parseInt(firebase.SDK_VERSION.split('.')[1]);
@@ -115,13 +119,13 @@ export class AngularFirestore {
115119
* @param app
116120
*/
117121
constructor(
118-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
119-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
120-
@Optional() @Inject(EnablePersistenceToken) shouldEnablePersistence: boolean|null,
121-
@Optional() @Inject(FirestoreSettingsToken) settings: Settings|null,
122+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
123+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
124+
@Optional() @Inject(ENABLE_PERSISTENCE) shouldEnablePersistence: boolean|null,
125+
@Optional() @Inject(FIRESTORE_SETTINGS) settings: Settings|null,
122126
@Inject(PLATFORM_ID) platformId: Object,
123127
zone: NgZone,
124-
@Optional() @Inject(PersistenceSettingsToken) persistenceSettings: PersistenceSettings|null,
128+
@Optional() @Inject(PERSISTENCE_SETTINGS) persistenceSettings: PersistenceSettings|null,
125129
) {
126130
this.scheduler = new FirebaseZoneScheduler(zone, platformId);
127131
this.firestore = zone.runOutsideAngular(() => {

src/functions/functions.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { Injectable, Inject, Optional, NgZone, PLATFORM_ID, InjectionToken } from '@angular/core';
22
import { Observable, from } from 'rxjs';
33
import { map } from 'rxjs/operators';
4-
import { FirebaseOptions, FirebaseAppConfig } from '@angular/fire';
5-
import { FirebaseFunctions, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
4+
import { FirebaseOptions, FirebaseAppConfig, FIREBASE_APP_NAME } from '@angular/fire';
5+
import { FirebaseFunctions, FIREBASE_OPTIONS, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
66

77
// SEMVER: @ v6 remove FunctionsRegionToken in favor of FUNCTIONS_REGION
88
export const FunctionsRegionToken = new InjectionToken<string>('angularfire2.functions.region');
@@ -20,8 +20,8 @@ export class AngularFireFunctions {
2020
public readonly scheduler: FirebaseZoneScheduler;
2121

2222
constructor(
23-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
24-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
23+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
24+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
2525
@Inject(PLATFORM_ID) platformId: Object,
2626
zone: NgZone,
2727
@Optional() @Inject(FUNCTIONS_REGION) region:string|null,

src/messaging/messaging.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ import { isPlatformServer } from '@angular/common';
33
import { messaging } from 'firebase/app';
44
import { Observable, empty, from, of, throwError } from 'rxjs';
55
import { mergeMap, catchError, map, switchMap, concat, defaultIfEmpty } from 'rxjs/operators';
6-
import { FirebaseOptions, FirebaseAppConfig, runOutsideAngular } from '@angular/fire';
7-
import { FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
6+
import { FirebaseOptions, FirebaseAppConfig, runOutsideAngular, FIREBASE_APP_NAME, FIREBASE_OPTIONS } from '@angular/fire';
7+
import { _firebaseAppFactory, FirebaseZoneScheduler } from '@angular/fire';
88

99
@Injectable()
1010
export class AngularFireMessaging {
@@ -17,8 +17,8 @@ export class AngularFireMessaging {
1717
deleteToken: (token: string) => Observable<boolean>;
1818

1919
constructor(
20-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
21-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
20+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
21+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
2222
@Inject(PLATFORM_ID) platformId: Object,
2323
zone: NgZone
2424
) {

src/remote-config/remote-config.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
import { Injectable, Inject, Optional, NgZone, InjectionToken } from '@angular/core';
22
import { Observable, from } from 'rxjs';
33
import { map, switchMap, tap } from 'rxjs/operators';
4-
import { FirebaseAppConfig, FirebaseOptions } from '@angular/fire';
4+
import { FirebaseAppConfig, FirebaseOptions, FIREBASE_OPTIONS, FIREBASE_APP_NAME } from '@angular/fire';
55
import { remoteConfig } from 'firebase/app';
66

77
export interface DefaultConfig {[key:string]: string|number|boolean};
88

9-
export const SETTINGS = new InjectionToken<remoteConfig.Settings>('angularfire2.remoteConfig.settings');
9+
export const REMOTE_CONFIG_SETTINGS = new InjectionToken<remoteConfig.Settings>('angularfire2.remoteConfig.settings');
1010
export const DEFAULT_CONFIG = new InjectionToken<DefaultConfig>('angularfire2.remoteConfig.defaultConfig');
1111

12-
import { FirebaseRemoteConfig, FirebaseOptionsToken, FirebaseNameOrConfigToken, _firebaseAppFactory, runOutsideAngular } from '@angular/fire';
12+
import { FirebaseRemoteConfig, _firebaseAppFactory, runOutsideAngular } from '@angular/fire';
1313

1414
@Injectable()
1515
export class AngularFireRemoteConfig {
@@ -24,9 +24,9 @@ export class AngularFireRemoteConfig {
2424
public readonly configuration: Observable<{[key:string]: remoteConfig.Value}>;
2525

2626
constructor(
27-
@Inject(FirebaseOptionsToken) options:FirebaseOptions,
28-
@Optional() @Inject(FirebaseNameOrConfigToken) nameOrConfig:string|FirebaseAppConfig|null|undefined,
29-
@Optional() @Inject(SETTINGS) settings:remoteConfig.Settings|null,
27+
@Inject(FIREBASE_OPTIONS) options:FirebaseOptions,
28+
@Optional() @Inject(FIREBASE_APP_NAME) nameOrConfig:string|FirebaseAppConfig|null|undefined,
29+
@Optional() @Inject(REMOTE_CONFIG_SETTINGS) settings:remoteConfig.Settings|null,
3030
@Optional() @Inject(DEFAULT_CONFIG) defaultConfig:DefaultConfig|null,
3131
private zone: NgZone
3232
) {

0 commit comments

Comments
 (0)