@dereekb/dbx-firebase 5.2.1 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/auth/auth.mjs +8 -1
- package/esm2020/lib/auth/service/firebase.auth.service.delegate.mjs +22 -0
- package/esm2020/lib/auth/service/firebase.auth.service.mjs +44 -4
- package/esm2020/lib/auth/service/index.mjs +2 -1
- package/esm2020/lib/firebase/firebase.module.mjs +3 -3
- package/esm2020/lib/model/store/index.mjs +2 -1
- package/esm2020/lib/model/store/store.document.crud.mjs +43 -0
- package/esm2020/lib/model/store/store.document.mjs +26 -10
- package/esm2020/lib/model/store/store.subcollection.document.mjs +1 -1
- package/esm2020/lib/model/store/store.subcollection.rxjs.mjs +1 -1
- package/fesm2015/dereekb-dbx-firebase.mjs +141 -24
- package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-firebase.mjs +145 -24
- package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
- package/lib/auth/auth.d.ts +2 -0
- package/lib/auth/service/firebase.auth.service.d.ts +19 -1
- package/lib/auth/service/firebase.auth.service.delegate.d.ts +13 -0
- package/lib/auth/service/index.d.ts +1 -0
- package/lib/model/store/index.d.ts +1 -0
- package/lib/model/store/store.document.crud.d.ts +27 -0
- package/lib/model/store/store.document.d.ts +39 -11
- package/lib/model/store/store.subcollection.document.d.ts +3 -3
- package/package.json +6 -6
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { urlWithoutParameters, addToSet, removeFromSet, filterMaybeValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, forEachKeyValue, readableError, isMaybeSo } from '@dereekb/util';
|
|
1
|
+
import { urlWithoutParameters, cachedGetter, addToSet, removeFromSet, filterMaybeValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, addToSetCopy, forEachKeyValue, readableError, isMaybeSo, firstValue } from '@dereekb/util';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { InjectionToken, Injectable, Inject, Optional, Component, Input, Directive, EventEmitter, Output, NgModule, Injector, forwardRef, Host } from '@angular/core';
|
|
4
4
|
import { getToken, initializeAppCheck, ReCaptchaV3Provider } from 'firebase/app-check';
|
|
5
|
-
import { switchMap, from, first, map, of, shareReplay, timeout, startWith, distinctUntilChanged, BehaviorSubject, combineLatest, tap,
|
|
5
|
+
import { switchMap, from, first, map, of, shareReplay, timeout, startWith, distinctUntilChanged, firstValueFrom, BehaviorSubject, combineLatest, tap, Subject, throttleTime, NEVER, filter, take, exhaustMap } from 'rxjs';
|
|
6
6
|
import * as i1 from '@angular/fire/app-check';
|
|
7
7
|
import { provideAppCheck } from '@angular/fire/app-check';
|
|
8
8
|
import * as i4 from '@angular/material/button';
|
|
@@ -11,7 +11,7 @@ import * as i2 from '@angular/material/icon';
|
|
|
11
11
|
import { MatIconModule } from '@angular/material/icon';
|
|
12
12
|
import * as i6 from '@angular/common';
|
|
13
13
|
import { CommonModule } from '@angular/common';
|
|
14
|
-
import { filterMaybe, isNot, SubscriptionObject, cleanupDestroyable, accumulatorFlattenPageListLoadingState, useFirst, successResult, beginLoading, loadingStateFromObs, errorResult, cleanup } from '@dereekb/rxjs';
|
|
14
|
+
import { filterMaybe, isNot, SubscriptionObject, cleanupDestroyable, accumulatorFlattenPageListLoadingState, useFirst, successResult, beginLoading, loadingStateFromObs, errorResult, lazyFrom, cleanup } from '@dereekb/rxjs';
|
|
15
15
|
import * as i3$1 from '@dereekb/dbx-core';
|
|
16
16
|
import { loggedInObsFromIsLoggedIn, loggedOutObsFromIsLoggedIn, authUserIdentifier, DbxInjectionContext, AbstractForwardDbxInjectionContextDirective, DBX_INJECTION_COMPONENT_DATA, DbxInjectionComponentModule, DbxAuthService, AbstractSubscriptionDirective, AbstractIfDirective, LockSetComponentStore } from '@dereekb/dbx-core';
|
|
17
17
|
import * as i1$1 from '@angular/fire/auth';
|
|
@@ -118,6 +118,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
118
118
|
args: [DBX_FIREBASE_OPTIONS_TOKEN]
|
|
119
119
|
}] }, { type: i1.AppCheck }]; } });
|
|
120
120
|
|
|
121
|
+
function authUserInfoFromAuthUser(user) {
|
|
122
|
+
return {
|
|
123
|
+
displayName: user?.displayName,
|
|
124
|
+
email: user.email,
|
|
125
|
+
phoneNumber: user.phoneNumber,
|
|
126
|
+
photoURL: user.photoURL,
|
|
127
|
+
uid: user.uid
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
function firebaseAuthTokenFromUser(user) {
|
|
131
|
+
return {
|
|
132
|
+
email: user.email,
|
|
133
|
+
emailVerified: user.emailVerified,
|
|
134
|
+
phoneNumber: user.phoneNumber
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
|
|
121
138
|
/**
|
|
122
139
|
* Derives a user state from the input firebase auth service.
|
|
123
140
|
*
|
|
@@ -156,16 +173,7 @@ function readValueFromIdToken(dbxFirebaseAuthService, readBooleanFromIdToken, de
|
|
|
156
173
|
}));
|
|
157
174
|
}
|
|
158
175
|
|
|
159
|
-
|
|
160
|
-
return {
|
|
161
|
-
displayName: user?.displayName,
|
|
162
|
-
email: user.email,
|
|
163
|
-
phoneNumber: user.phoneNumber,
|
|
164
|
-
photoURL: user.photoURL,
|
|
165
|
-
uid: user.uid
|
|
166
|
-
};
|
|
167
|
-
}
|
|
168
|
-
|
|
176
|
+
// MARK: Delegate
|
|
169
177
|
class DbxFirebaseAuthServiceDelegate {
|
|
170
178
|
}
|
|
171
179
|
const DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE = {
|
|
@@ -179,6 +187,7 @@ const DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE = {
|
|
|
179
187
|
return dbxFirebaseAuthService.authUserState$.pipe(map((x) => x === 'user'));
|
|
180
188
|
}
|
|
181
189
|
};
|
|
190
|
+
// MARK: Service
|
|
182
191
|
class DbxFirebaseAuthService {
|
|
183
192
|
constructor(firebaseAuth, delegate) {
|
|
184
193
|
this.firebaseAuth = firebaseAuth;
|
|
@@ -204,6 +213,21 @@ class DbxFirebaseAuthService {
|
|
|
204
213
|
this.authUserState$ = delegate.authUserStateObs(this).pipe(distinctUntilChanged(), shareReplay(1));
|
|
205
214
|
this.authRoles$ = delegate.authRolesObs(this);
|
|
206
215
|
this.isOnboarded$ = delegate.isOnboarded(this);
|
|
216
|
+
this._authRoleClaimsService = delegate.authRoleClaimsService;
|
|
217
|
+
}
|
|
218
|
+
rolesForClaims(claims) {
|
|
219
|
+
let result;
|
|
220
|
+
if (this._authRoleClaimsService) {
|
|
221
|
+
return this._authRoleClaimsService.toRoles(claims);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
console.warn('DbxFirebaseAuthService: rolesForClaims called with no authRoleClaimsService provided. An empty set is returned.');
|
|
225
|
+
result = new Set();
|
|
226
|
+
}
|
|
227
|
+
return result;
|
|
228
|
+
}
|
|
229
|
+
getAuthContextInfo() {
|
|
230
|
+
return firstValueFrom(this.authUser$).then((user) => (user ? new DbxFirebaseAuthContextInfo(this, user) : undefined));
|
|
207
231
|
}
|
|
208
232
|
logInWithGoogle() {
|
|
209
233
|
return this.logInWithPopup(new GoogleAuthProvider());
|
|
@@ -254,6 +278,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
254
278
|
}], ctorParameters: function () { return [{ type: i1$1.Auth }, { type: DbxFirebaseAuthServiceDelegate, decorators: [{
|
|
255
279
|
type: Optional
|
|
256
280
|
}] }]; } });
|
|
281
|
+
/**
|
|
282
|
+
* FirebaseAuthContextInfo implementation from DbxFirebaseAuthService.
|
|
283
|
+
*/
|
|
284
|
+
class DbxFirebaseAuthContextInfo {
|
|
285
|
+
constructor(service, user) {
|
|
286
|
+
this.service = service;
|
|
287
|
+
this.user = user;
|
|
288
|
+
this._token = cachedGetter(() => firebaseAuthTokenFromUser(this.user));
|
|
289
|
+
}
|
|
290
|
+
get uid() {
|
|
291
|
+
return this.user.uid;
|
|
292
|
+
}
|
|
293
|
+
loadClaims() {
|
|
294
|
+
return this.user.getIdTokenResult().then((x) => x.claims);
|
|
295
|
+
}
|
|
296
|
+
loadAuthRoles() {
|
|
297
|
+
return this.loadClaims().then((x) => this.service.rolesForClaims(x));
|
|
298
|
+
}
|
|
299
|
+
get token() {
|
|
300
|
+
return this._token();
|
|
301
|
+
}
|
|
302
|
+
}
|
|
257
303
|
|
|
258
304
|
class DbxFirebaseLoginTermsConfig {
|
|
259
305
|
}
|
|
@@ -1340,6 +1386,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
1340
1386
|
}]
|
|
1341
1387
|
}], ctorParameters: function () { return [{ type: DbxFirebaseLoginModuleRootConfig }, { type: DbxFirebaseAuthLoginService }]; } });
|
|
1342
1388
|
|
|
1389
|
+
function authRolesObsWithClaimsService(config) {
|
|
1390
|
+
const { addAuthUserStateToRoles: addAuthUserState, claimsService } = config;
|
|
1391
|
+
return (dbxFirebaseAuthService) => {
|
|
1392
|
+
let obs = dbxFirebaseAuthService.idTokenResult$.pipe(map((x) => claimsService.toRoles(x.claims)));
|
|
1393
|
+
if (addAuthUserState) {
|
|
1394
|
+
obs = obs.pipe(switchMap((authRoleSet) => dbxFirebaseAuthService.authUserState$.pipe(map((userState) => addToSetCopy(authRoleSet, [userState])))));
|
|
1395
|
+
}
|
|
1396
|
+
return obs;
|
|
1397
|
+
};
|
|
1398
|
+
}
|
|
1399
|
+
function defaultDbxFirebaseAuthServiceDelegateWithClaimsService(config) {
|
|
1400
|
+
return {
|
|
1401
|
+
authUserStateObs: DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE.authUserStateObs,
|
|
1402
|
+
authRolesObs: authRolesObsWithClaimsService(config),
|
|
1403
|
+
isOnboarded: DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE.isOnboarded,
|
|
1404
|
+
authRoleClaimsService: config.claimsService
|
|
1405
|
+
};
|
|
1406
|
+
}
|
|
1407
|
+
|
|
1343
1408
|
class DbxFirebaseAuthModule {
|
|
1344
1409
|
static forRoot(config) {
|
|
1345
1410
|
const providers = [
|
|
@@ -1442,7 +1507,7 @@ DbxFirebaseDefaultAppCheckProviderModule.ɵinj = i0.ɵɵngDeclareInjector({ minV
|
|
|
1442
1507
|
provider: new ReCaptchaV3Provider(appCheckOptions.reCaptchaV3),
|
|
1443
1508
|
isTokenAutoRefreshEnabled: appCheckOptions.isTokenAutoRefreshEnabled ?? true
|
|
1444
1509
|
});
|
|
1445
|
-
console.
|
|
1510
|
+
console.log('Enabled AppCheck.');
|
|
1446
1511
|
}
|
|
1447
1512
|
else {
|
|
1448
1513
|
appCheck = undefined;
|
|
@@ -1473,7 +1538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
1473
1538
|
provider: new ReCaptchaV3Provider(appCheckOptions.reCaptchaV3),
|
|
1474
1539
|
isTokenAutoRefreshEnabled: appCheckOptions.isTokenAutoRefreshEnabled ?? true
|
|
1475
1540
|
});
|
|
1476
|
-
console.
|
|
1541
|
+
console.log('Enabled AppCheck.');
|
|
1477
1542
|
}
|
|
1478
1543
|
else {
|
|
1479
1544
|
appCheck = undefined;
|
|
@@ -2237,27 +2302,36 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
|
|
|
2237
2302
|
super(...arguments);
|
|
2238
2303
|
// MARK: Effects
|
|
2239
2304
|
// MARK: Accessors
|
|
2305
|
+
this.currentFirestoreCollectionLike$ = this.state$.pipe(map((x) => x.firestoreCollection ?? x.firestoreCollectionLike), distinctUntilChanged(), shareReplay(1));
|
|
2240
2306
|
this.currentFirestoreCollection$ = this.state$.pipe(map((x) => x.firestoreCollection), distinctUntilChanged(), shareReplay(1));
|
|
2307
|
+
this.firestoreCollectionLike$ = this.currentFirestoreCollectionLike$.pipe(filterMaybe());
|
|
2241
2308
|
this.firestoreCollection$ = this.currentFirestoreCollection$.pipe(filterMaybe());
|
|
2242
2309
|
this.currentInputId$ = this.state$.pipe(map((x) => x.id), distinctUntilChanged(), shareReplay(1));
|
|
2243
2310
|
this.inputId$ = this.currentInputId$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
|
|
2311
|
+
this.currentInputKey$ = this.state$.pipe(map((x) => x.key), distinctUntilChanged(), shareReplay(1));
|
|
2312
|
+
this.inputKey$ = this.currentInputKey$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
|
|
2244
2313
|
this.currentInputRef$ = this.state$.pipe(map((x) => x.ref), distinctUntilChanged(), shareReplay(1));
|
|
2245
2314
|
this.inputRef$ = this.currentInputRef$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
|
|
2246
|
-
this.currentDocument$ = combineLatest([this.
|
|
2315
|
+
this.currentDocument$ = combineLatest([this.currentInputId$, this.currentInputKey$, this.currentInputRef$]).pipe(switchMap(([id, key, ref]) => {
|
|
2247
2316
|
let document;
|
|
2248
|
-
if (
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2317
|
+
if (ref) {
|
|
2318
|
+
document = this.firestoreCollectionLike$.pipe(map((x) => x.documentAccessor().loadDocument(ref)));
|
|
2319
|
+
}
|
|
2320
|
+
else if (key) {
|
|
2321
|
+
document = this.firestoreCollectionLike$.pipe(map((x) => x.documentAccessor().loadDocumentForKey(key)));
|
|
2322
|
+
}
|
|
2323
|
+
else if (id) {
|
|
2324
|
+
document = this.firestoreCollection$.pipe(map((x) => x.documentAccessor().loadDocumentForPath(id)));
|
|
2325
|
+
}
|
|
2326
|
+
else {
|
|
2327
|
+
document = of(undefined);
|
|
2255
2328
|
}
|
|
2256
2329
|
return document;
|
|
2257
2330
|
}), distinctUntilChanged(), shareReplay(1));
|
|
2258
2331
|
this.document$ = this.currentDocument$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
|
|
2259
2332
|
this.documentLoadingState$ = this.currentDocument$.pipe(map((x) => (x ? successResult(x) : beginLoading())), shareReplay(1));
|
|
2260
2333
|
this.id$ = this.document$.pipe(map((x) => x.id), shareReplay());
|
|
2334
|
+
this.key$ = this.document$.pipe(map((x) => x.key), shareReplay());
|
|
2261
2335
|
this.ref$ = this.document$.pipe(map((x) => x.documentRef), shareReplay());
|
|
2262
2336
|
this.snapshot$ = this.document$.pipe(switchMap((x) => x.accessor.stream()), shareReplay(1));
|
|
2263
2337
|
this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(() => loadingStateFromObs(this.snapshot$)), shareReplay(1));
|
|
@@ -2284,16 +2358,23 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
|
|
|
2284
2358
|
}), shareReplay(1));
|
|
2285
2359
|
this.exists$ = this.currentData$.pipe(map((x) => isMaybeSo(x)), shareReplay(1));
|
|
2286
2360
|
this.doesNotExist$ = this.exists$.pipe(map((x) => !x), shareReplay(1));
|
|
2361
|
+
this.modelIdentity$ = this.document$.pipe(map((x) => x.modelIdentity), shareReplay(1));
|
|
2287
2362
|
// MARK: State Changes
|
|
2288
2363
|
/**
|
|
2289
2364
|
* Sets the id of the document to load.
|
|
2290
2365
|
*/
|
|
2291
2366
|
this.setId = this.updater((state, id) => (id ? { ...state, id, ref: undefined } : { ...state, id }));
|
|
2367
|
+
/**
|
|
2368
|
+
* Sets the key of the document to load.
|
|
2369
|
+
*/
|
|
2370
|
+
this.setKey = this.updater((state, key) => (key ? { ...state, key, ref: undefined } : { ...state, key }));
|
|
2292
2371
|
/**
|
|
2293
2372
|
* Sets the ref of the document to load.
|
|
2294
2373
|
*/
|
|
2295
2374
|
this.setRef = this.updater((state, ref) => (ref ? { ...state, id: undefined, ref } : { ...state, ref }));
|
|
2375
|
+
this.clearRefs = this.updater((state) => ({ ...state, id: undefined, key: undefined, ref: undefined }));
|
|
2296
2376
|
this.setFirestoreCollection = this.updater((state, firestoreCollection) => ({ ...state, firestoreCollection }));
|
|
2377
|
+
this.setFirestoreCollectionLike = this.updater((state, firestoreCollectionLike) => ({ ...state, firestoreCollectionLike }));
|
|
2297
2378
|
}
|
|
2298
2379
|
}
|
|
2299
2380
|
AbstractDbxFirebaseDocumentStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseDocumentStore, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -2302,6 +2383,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
2302
2383
|
type: Injectable
|
|
2303
2384
|
}] });
|
|
2304
2385
|
|
|
2386
|
+
/**
|
|
2387
|
+
* Creates a function for a store that DbxFirebaseDocumentStore captures the ModelFirebaseCreateFunction result and sets the key of the created value.
|
|
2388
|
+
*
|
|
2389
|
+
* @param store
|
|
2390
|
+
* @param fn
|
|
2391
|
+
* @returns
|
|
2392
|
+
*/
|
|
2393
|
+
function firebaseDocumentStoreCreateFunction(store, fn) {
|
|
2394
|
+
return (params) => loadingStateFromObs(lazyFrom(() => fn(params).then((result) => {
|
|
2395
|
+
const modelKeys = result.modelKeys;
|
|
2396
|
+
const firstKey = firstValue(modelKeys);
|
|
2397
|
+
if (firstKey) {
|
|
2398
|
+
store.setKey(firstKey);
|
|
2399
|
+
}
|
|
2400
|
+
return result;
|
|
2401
|
+
})));
|
|
2402
|
+
}
|
|
2403
|
+
function firebaseDocumentStoreUpdateFunction(store, fn) {
|
|
2404
|
+
return (params) => loadingStateFromObs(store.key$.pipe(first(), switchMap((key) => fn({
|
|
2405
|
+
...params,
|
|
2406
|
+
key // inject key into the parameters.
|
|
2407
|
+
}))));
|
|
2408
|
+
}
|
|
2409
|
+
/**
|
|
2410
|
+
* Deletes a function for a store that DbxFirebaseDocumentStore captures the ModelFirebaseDeleteFunction result and sets the key of the created value.
|
|
2411
|
+
*
|
|
2412
|
+
* @param store
|
|
2413
|
+
* @param fn
|
|
2414
|
+
* @returns
|
|
2415
|
+
*/
|
|
2416
|
+
function firebaseDocumentStoreDeleteFunction(store, fn) {
|
|
2417
|
+
return (params) => loadingStateFromObs(store.key$.pipe(first(), switchMap((key) => fn({
|
|
2418
|
+
...params,
|
|
2419
|
+
key // inject key into the parameters.
|
|
2420
|
+
}).then((result) => {
|
|
2421
|
+
store.clearRefs();
|
|
2422
|
+
return result;
|
|
2423
|
+
}))));
|
|
2424
|
+
}
|
|
2425
|
+
|
|
2305
2426
|
function setParentStoreEffect(store) {
|
|
2306
2427
|
return store.effect((input) => {
|
|
2307
2428
|
return input.pipe(map((parentStore) => {
|
|
@@ -2499,5 +2620,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
2499
2620
|
* Generated bundle index. Do not edit.
|
|
2500
2621
|
*/
|
|
2501
2622
|
|
|
2502
|
-
export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_OPTIONS_TOKEN, DBX_FIREBASE_ROUTER_SYNC_DEFAULT_ID_PARAM_KEY, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultAppCheckProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultFunctionsProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDocumentAuthIdDirective, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreRouteIdDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginModuleRootConfig, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModule, DbxFirebaseParsedEmulatorsConfig, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirestoreContextService, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthService, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, defaultFirebaseAuthLoginProvidersFactory, enableAppCheckDebugTokenGeneration, firebaseAuthErrorToReadableError, modelDoesNotExistError, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDocumentStoreDirective, readValueFromIdToken, setParentStoreEffect };
|
|
2623
|
+
export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_OPTIONS_TOKEN, DBX_FIREBASE_ROUTER_SYNC_DEFAULT_ID_PARAM_KEY, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthContextInfo, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultAppCheckProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultFunctionsProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDocumentAuthIdDirective, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreRouteIdDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginModuleRootConfig, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModule, DbxFirebaseParsedEmulatorsConfig, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirestoreContextService, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, authRolesObsWithClaimsService, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthService, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, defaultDbxFirebaseAuthServiceDelegateWithClaimsService, defaultFirebaseAuthLoginProvidersFactory, enableAppCheckDebugTokenGeneration, firebaseAuthErrorToReadableError, firebaseAuthTokenFromUser, firebaseDocumentStoreCreateFunction, firebaseDocumentStoreDeleteFunction, firebaseDocumentStoreUpdateFunction, modelDoesNotExistError, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDocumentStoreDirective, readValueFromIdToken, setParentStoreEffect };
|
|
2503
2624
|
//# sourceMappingURL=dereekb-dbx-firebase.mjs.map
|