@dereekb/dbx-firebase 5.0.0 → 5.2.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.
Files changed (122) hide show
  1. package/_index.scss +4 -4
  2. package/esm2020/lib/auth/appcheck/appcheck.interceptor.mjs +80 -0
  3. package/esm2020/lib/auth/appcheck/appcheck.mjs +11 -0
  4. package/esm2020/lib/auth/appcheck/index.mjs +3 -0
  5. package/esm2020/lib/auth/auth.mjs +1 -1
  6. package/esm2020/lib/auth/error.mjs +1 -1
  7. package/esm2020/lib/auth/firebase.auth.module.mjs +1 -1
  8. package/esm2020/lib/auth/index.mjs +2 -1
  9. package/esm2020/lib/auth/login/firebase.login.module.mjs +49 -57
  10. package/esm2020/lib/auth/login/login.anonymous.component.mjs +3 -3
  11. package/esm2020/lib/auth/login/login.apple.component.mjs +3 -3
  12. package/esm2020/lib/auth/login/login.button.component.mjs +34 -36
  13. package/esm2020/lib/auth/login/login.component.mjs +3 -3
  14. package/esm2020/lib/auth/login/login.context.back.component.mjs +4 -4
  15. package/esm2020/lib/auth/login/login.context.directive.mjs +13 -9
  16. package/esm2020/lib/auth/login/login.context.mjs +2 -2
  17. package/esm2020/lib/auth/login/login.email.component.mjs +4 -4
  18. package/esm2020/lib/auth/login/login.email.content.component.mjs +4 -4
  19. package/esm2020/lib/auth/login/login.email.form.component.mjs +11 -7
  20. package/esm2020/lib/auth/login/login.email.recovery.form.component.mjs +9 -5
  21. package/esm2020/lib/auth/login/login.facebook.component.mjs +3 -3
  22. package/esm2020/lib/auth/login/login.github.component.mjs +3 -3
  23. package/esm2020/lib/auth/login/login.google.component.mjs +3 -3
  24. package/esm2020/lib/auth/login/login.list.component.mjs +11 -13
  25. package/esm2020/lib/auth/login/login.microsoft.component.mjs +3 -3
  26. package/esm2020/lib/auth/login/login.mjs +1 -1
  27. package/esm2020/lib/auth/login/login.password.mjs +1 -1
  28. package/esm2020/lib/auth/login/login.service.mjs +8 -8
  29. package/esm2020/lib/auth/login/login.terms.component.mjs +10 -6
  30. package/esm2020/lib/auth/login/login.terms.mjs +1 -1
  31. package/esm2020/lib/auth/login/login.terms.simple.component.mjs +12 -12
  32. package/esm2020/lib/auth/login/login.twitter.component.mjs +3 -3
  33. package/esm2020/lib/auth/login/register.component.mjs +8 -4
  34. package/esm2020/lib/auth/login/register.email.component.mjs +4 -4
  35. package/esm2020/lib/auth/service/firebase.auth.rxjs.mjs +3 -3
  36. package/esm2020/lib/auth/service/firebase.auth.service.mjs +12 -12
  37. package/esm2020/lib/firebase/appcheck.mjs +2 -0
  38. package/esm2020/lib/firebase/emulators.mjs +1 -1
  39. package/esm2020/lib/firebase/firebase.emulator.module.mjs +6 -4
  40. package/esm2020/lib/firebase/firebase.module.mjs +106 -13
  41. package/esm2020/lib/firebase/index.mjs +2 -1
  42. package/esm2020/lib/firebase/options.mjs +3 -2
  43. package/esm2020/lib/firestore/firebase.firestore.context.service.mjs +1 -1
  44. package/esm2020/lib/firestore/firebase.firestore.module.mjs +11 -8
  45. package/esm2020/lib/function/firebase.function.module.mjs +8 -6
  46. package/esm2020/lib/model/error.mjs +2 -2
  47. package/esm2020/lib/model/loader/collection.loader.instance.mjs +9 -10
  48. package/esm2020/lib/model/loader/collection.loader.mjs +1 -1
  49. package/esm2020/lib/model/model.module.mjs +4 -6
  50. package/esm2020/lib/model/store/index.mjs +2 -1
  51. package/esm2020/lib/model/store/model.store.module.mjs +10 -30
  52. package/esm2020/lib/model/store/store.collection.change.directive.mjs +6 -4
  53. package/esm2020/lib/model/store/store.collection.change.if.directive.mjs +1 -1
  54. package/esm2020/lib/model/store/store.collection.directive.mjs +5 -3
  55. package/esm2020/lib/model/store/store.collection.list.directive.mjs +2 -2
  56. package/esm2020/lib/model/store/store.collection.mjs +8 -8
  57. package/esm2020/lib/model/store/store.document.auth.directive.mjs +4 -4
  58. package/esm2020/lib/model/store/store.document.directive.mjs +5 -3
  59. package/esm2020/lib/model/store/store.document.mjs +12 -12
  60. package/esm2020/lib/model/store/store.document.router.directive.mjs +1 -1
  61. package/esm2020/lib/model/store/store.subcollection.directive.mjs +30 -0
  62. package/esm2020/lib/model/store/store.subcollection.document.mjs +23 -6
  63. package/esm2020/lib/model/store/store.subcollection.mjs +53 -11
  64. package/esm2020/lib/model/store/store.subcollection.rxjs.mjs +4 -23
  65. package/esm2020/lib/module.mjs +4 -6
  66. package/fesm2015/dereekb-dbx-firebase.mjs +509 -263
  67. package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
  68. package/fesm2020/dereekb-dbx-firebase.mjs +501 -263
  69. package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
  70. package/lib/auth/appcheck/appcheck.d.ts +8 -0
  71. package/lib/auth/appcheck/appcheck.interceptor.d.ts +19 -0
  72. package/lib/auth/appcheck/index.d.ts +2 -0
  73. package/lib/auth/auth.d.ts +1 -1
  74. package/lib/auth/error.d.ts +1 -1
  75. package/lib/auth/index.d.ts +1 -0
  76. package/lib/auth/login/_login.scss +5 -5
  77. package/lib/auth/login/login.anonymous.component.d.ts +1 -1
  78. package/lib/auth/login/login.apple.component.d.ts +1 -1
  79. package/lib/auth/login/login.button.component.d.ts +5 -5
  80. package/lib/auth/login/login.context.back.component.d.ts +1 -1
  81. package/lib/auth/login/login.context.d.ts +1 -1
  82. package/lib/auth/login/login.context.directive.d.ts +2 -2
  83. package/lib/auth/login/login.email.component.d.ts +1 -1
  84. package/lib/auth/login/login.email.content.component.d.ts +2 -2
  85. package/lib/auth/login/login.email.form.component.d.ts +6 -6
  86. package/lib/auth/login/login.email.recovery.form.component.d.ts +2 -2
  87. package/lib/auth/login/login.facebook.component.d.ts +1 -1
  88. package/lib/auth/login/login.github.component.d.ts +1 -1
  89. package/lib/auth/login/login.google.component.d.ts +1 -1
  90. package/lib/auth/login/login.list.component.d.ts +1 -1
  91. package/lib/auth/login/login.microsoft.component.d.ts +1 -1
  92. package/lib/auth/login/login.password.d.ts +1 -1
  93. package/lib/auth/login/login.service.d.ts +4 -4
  94. package/lib/auth/login/login.terms.component.d.ts +1 -1
  95. package/lib/auth/login/login.twitter.component.d.ts +1 -1
  96. package/lib/auth/login/register.email.component.d.ts +1 -1
  97. package/lib/auth/service/firebase.auth.rxjs.d.ts +1 -1
  98. package/lib/auth/service/firebase.auth.service.d.ts +3 -3
  99. package/lib/firebase/appcheck.d.ts +21 -0
  100. package/lib/firebase/firebase.module.d.ts +20 -10
  101. package/lib/firebase/index.d.ts +1 -0
  102. package/lib/firebase/options.d.ts +10 -3
  103. package/lib/firestore/firebase.firestore.module.d.ts +3 -3
  104. package/lib/function/firebase.function.module.d.ts +4 -4
  105. package/lib/model/loader/collection.loader.d.ts +4 -4
  106. package/lib/model/loader/collection.loader.instance.d.ts +8 -8
  107. package/lib/model/store/index.d.ts +1 -0
  108. package/lib/model/store/store.collection.change.directive.d.ts +2 -2
  109. package/lib/model/store/store.collection.d.ts +7 -7
  110. package/lib/model/store/store.collection.directive.d.ts +3 -3
  111. package/lib/model/store/store.document.auth.directive.d.ts +4 -4
  112. package/lib/model/store/store.document.directive.d.ts +2 -2
  113. package/lib/model/store/store.subcollection.d.ts +29 -9
  114. package/lib/model/store/store.subcollection.directive.d.ts +23 -0
  115. package/lib/model/store/store.subcollection.document.d.ts +9 -8
  116. package/lib/model/store/store.subcollection.rxjs.d.ts +12 -11
  117. package/lib/style/_config.scss +8 -6
  118. package/lib/style/_core.scss +1 -1
  119. package/lib/style/_mixin.scss +1 -1
  120. package/lib/style/_theming.scss +2 -12
  121. package/lib/style/_variables.scss +1 -1
  122. package/package.json +8 -7
@@ -1,31 +1,51 @@
1
- import { Observable } from 'rxjs';
2
- import { FirestoreCollectionWithParentFactory, FirestoreDocument } from '@dereekb/firebase';
3
1
  import { Maybe } from '@dereekb/util';
2
+ import { ObservableOrValue } from '@dereekb/rxjs';
3
+ import { Observable, Subscription } from 'rxjs';
4
+ import { FirestoreCollectionGroup, FirestoreCollectionWithParentFactory, FirestoreDocument } from '@dereekb/firebase';
4
5
  import { AbstractDbxFirebaseCollectionStore, DbxFirebaseCollectionStore, DbxFirebaseCollectionStoreContextState } from './store.collection';
5
- import { DbxFirebaseComponentStoreWithParent, DbxFirebaseComponentStoreWithParentContextState, DbxFirebaseComponentStoreWithParentSetParentEffectFunction, DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction } from './store.subcollection.rxjs';
6
+ import { DbxFirebaseComponentStoreSetParentEffectFunction, DbxFirebaseComponentStoreWithParent, DbxFirebaseComponentStoreWithParentContextState, DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction } from './store.subcollection.rxjs';
6
7
  import * as i0 from "@angular/core";
7
- export interface DbxFirebaseCollectionWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseCollectionStore<T, D>, DbxFirebaseComponentStoreWithParent<T, PT, D, PD> {
8
- }
8
+ /**
9
+ * Whether or not to load values from a parent or a group.
10
+ */
11
+ export declare type DbxFirebaseComponentStoreWithParentSourceMode = 'parent' | 'group';
9
12
  export interface DbxFirebaseCollectionWithParentStoreContextState<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseCollectionStoreContextState<T, D>, DbxFirebaseComponentStoreWithParentContextState<T, PT, D, PD> {
13
+ readonly mode?: Maybe<DbxFirebaseComponentStoreWithParentSourceMode>;
14
+ readonly collectionGroup?: Maybe<FirestoreCollectionGroup<T, D>>;
15
+ }
16
+ export declare type DbxFirebaseComponentStoreWithParentSetParentSourceModeFunction = (observableOrValue: ObservableOrValue<Maybe<DbxFirebaseComponentStoreWithParentSourceMode>>) => Subscription;
17
+ export interface DbxFirebaseCollectionWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseCollectionStore<T, D>, DbxFirebaseComponentStoreWithParent<T, PT, D, PD> {
18
+ readonly setSourceMode: DbxFirebaseComponentStoreWithParentSetParentSourceModeFunction;
19
+ readonly setCollectionGroup: (observableOrValue: FirestoreCollectionGroup<T, D> | Observable<FirestoreCollectionGroup<T, D>>) => Subscription;
20
+ readonly currentCollectionGroup$: Observable<Maybe<FirestoreCollectionGroup<T, D>>>;
21
+ readonly collectionGroup$: Observable<FirestoreCollectionGroup<T, D>>;
10
22
  }
11
23
  /**
12
24
  * Abstract DbxFirebaseCollectionStore that has a parent document from which is derives it's FiresbaseCollection from.
13
25
  */
14
26
  export declare class AbstractDbxFirebaseCollectionWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>, C extends DbxFirebaseCollectionWithParentStoreContextState<T, PT, D, PD> = DbxFirebaseCollectionWithParentStoreContextState<T, PT, D, PD>> extends AbstractDbxFirebaseCollectionStore<T, D, C> implements DbxFirebaseCollectionWithParentStore<T, PT, D, PD> {
15
- readonly setParent: DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
27
+ constructor(state: C, defaultSourceMode?: DbxFirebaseComponentStoreWithParentSourceMode);
16
28
  readonly setParentStore: DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction<PT, PD>;
29
+ readonly setSourceMode: DbxFirebaseComponentStoreWithParentSetParentSourceModeFunction;
17
30
  readonly currentParent$: Observable<Maybe<PD>>;
18
31
  readonly parent$: Observable<PD>;
19
32
  readonly currentCollectionFactory$: Observable<Maybe<FirestoreCollectionWithParentFactory<T, PT, D, PD>>>;
20
33
  readonly collectionFactory$: Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD>>;
34
+ readonly currentCollectionGroup$: Observable<Maybe<FirestoreCollectionGroup<T, D>>>;
35
+ readonly collectionGroup$: Observable<FirestoreCollectionGroup<T, D>>;
21
36
  /**
22
37
  * Sets the collection factory function to use.
23
38
  */
24
- readonly setCollectionFactory: (observableOrValue: FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>> | Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>>>) => import("rxjs").Subscription;
39
+ readonly setCollectionFactory: (observableOrValue: FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>> | Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>>>) => Subscription;
40
+ /**
41
+ * Sets the collection group to use.
42
+ */
43
+ readonly setCollectionGroup: (observableOrValue: Maybe<FirestoreCollectionGroup<T, D>> | Observable<Maybe<FirestoreCollectionGroup<T, D>>>) => Subscription;
25
44
  /**
26
45
  * Sets the parent on the current state.
27
46
  */
28
- readonly _setParentDocument: (() => void) | ((observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => import("rxjs").Subscription) | (PD extends void ? () => void : (observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => import("rxjs").Subscription);
29
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxFirebaseCollectionWithParentStore<any, any, any, any, any>, never>;
47
+ readonly _setParentDocument: (() => void) | ((observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => Subscription) | (PD extends void ? () => void : (observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => Subscription);
48
+ readonly _setParent: DbxFirebaseComponentStoreSetParentEffectFunction<PD>;
49
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxFirebaseCollectionWithParentStore<any, any, any, any, any>, [{ optional: true; }, { optional: true; }]>;
30
50
  static ɵprov: i0.ɵɵInjectableDeclaration<AbstractDbxFirebaseCollectionWithParentStore<any, any, any, any, any>>;
31
51
  }
@@ -0,0 +1,23 @@
1
+ import { Provider, Type } from '@angular/core';
2
+ import { FirestoreDocument } from '@dereekb/firebase';
3
+ import { Maybe } from '@dereekb/util';
4
+ import { DbxFirebaseCollectionStoreDirective } from './store.collection.directive';
5
+ import { DbxFirebaseCollectionWithParentStore, DbxFirebaseComponentStoreWithParentSourceMode } from './store.subcollection';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Abstract directive that contains a DbxFirebaseCollectionWithParentStore and provides an interface for communicating with other directives.
9
+ */
10
+ export declare abstract class DbxFirebaseCollectionWithParentStoreDirective<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>, S extends DbxFirebaseCollectionWithParentStore<T, PT, D, PD> = DbxFirebaseCollectionWithParentStore<T, PT, D, PD>> extends DbxFirebaseCollectionStoreDirective<T, D, S> {
11
+ set sourceMode(sourceMode: Maybe<DbxFirebaseComponentStoreWithParentSourceMode>);
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxFirebaseCollectionWithParentStoreDirective<any, any, any, any, any>, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxFirebaseCollectionWithParentStoreDirective<any, any, any, any, any>, never, never, { "sourceMode": "sourceMode"; }, {}, never>;
14
+ }
15
+ /**
16
+ * Configures providers for a DbxFirebaseCollectionWithParentStoreDirective.
17
+ *
18
+ * Can optionally also provide the actual store type to include in the providers array so it is instantiated by Angular.
19
+ *
20
+ * @param sourceType
21
+ */
22
+ export declare function provideDbxFirebaseCollectionWithParentStoreDirective<S extends DbxFirebaseCollectionWithParentStoreDirective<any, any, any, any, any>>(sourceType: Type<S>): Provider[];
23
+ export declare function provideDbxFirebaseCollectionWithParentStoreDirective<S extends DbxFirebaseCollectionWithParentStore<any, any, any, any>, C extends DbxFirebaseCollectionWithParentStoreDirective<any, any, any, any, S> = DbxFirebaseCollectionWithParentStoreDirective<any, any, any, any, S>>(sourceType: Type<C>, storeType?: Type<S>): Provider[];
@@ -1,19 +1,20 @@
1
- import { Observable } from 'rxjs';
2
- import { FirestoreDocument, FirestoreCollectionWithParentFactory } from '@dereekb/firebase';
1
+ import { Observable, Subscription } from 'rxjs';
2
+ import { FirestoreDocument, FirestoreCollectionWithParentFactory, FirestoreCollection } from '@dereekb/firebase';
3
3
  import { Maybe } from '@dereekb/util';
4
4
  import { AbstractDbxFirebaseDocumentStore, DbxFirebaseDocumentStore, DbxFirebaseDocumentStoreContextState } from './store.document';
5
- import { DbxFirebaseComponentStoreWithParentSetParentEffectFunction, DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction, DbxFirebaseComponentStoreWithParent, DbxFirebaseComponentStoreWithParentContextState } from './store.subcollection.rxjs';
5
+ import { DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction, DbxFirebaseComponentStoreWithParent, DbxFirebaseComponentStoreWithParentContextState, DbxFirebaseComponentStoreWithParentSetParentEffectFunction } from './store.subcollection.rxjs';
6
6
  import * as i0 from "@angular/core";
7
- export interface DbxFirebaseDocumentWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseDocumentStore<T, D>, DbxFirebaseComponentStoreWithParent<T, PT, D, PD> {
8
- }
9
7
  export interface DbxFirebaseDocumentWithParentStoreContextState<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseDocumentStoreContextState<T, D>, DbxFirebaseComponentStoreWithParentContextState<T, PT, D, PD> {
10
8
  }
9
+ export interface DbxFirebaseDocumentWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends DbxFirebaseDocumentStore<T, D>, DbxFirebaseComponentStoreWithParent<T, PT, D, PD, FirestoreCollection<T, D>> {
10
+ }
11
11
  /**
12
12
  * Abstract DbxFirebaseDocumentStore that has a parent document from which is derives it's FiresbaseCollection from.
13
13
  */
14
14
  export declare class AbstractDbxFirebaseDocumentWithParentStore<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>, C extends DbxFirebaseDocumentWithParentStoreContextState<T, PT, D, PD> = DbxFirebaseDocumentWithParentStoreContextState<T, PT, D, PD>> extends AbstractDbxFirebaseDocumentStore<T, D, C> implements DbxFirebaseDocumentWithParentStore<T, PT, D, PD> {
15
- readonly setParent: DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
16
15
  readonly setParentStore: DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction<PT, PD>;
16
+ readonly setParent: DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
17
+ readonly _setParent: DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
17
18
  readonly currentParent$: Observable<Maybe<PD>>;
18
19
  readonly parent$: Observable<PD>;
19
20
  readonly currentCollectionFactory$: Observable<Maybe<FirestoreCollectionWithParentFactory<T, PT, D, PD>>>;
@@ -21,11 +22,11 @@ export declare class AbstractDbxFirebaseDocumentWithParentStore<T, PT, D extends
21
22
  /**
22
23
  * Sets the collection factory function to use.
23
24
  */
24
- readonly setCollectionFactory: (observableOrValue: FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>> | Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>>>) => import("rxjs").Subscription;
25
+ readonly setCollectionFactory: (observableOrValue: FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>> | Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD, import("@dereekb/firebase").FirestoreCollectionWithParent<T, PT, D, PD>>>) => Subscription;
25
26
  /**
26
27
  * Sets the parent on the current state.
27
28
  */
28
- readonly _setParentDocument: (() => void) | ((observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => import("rxjs").Subscription) | (PD extends void ? () => void : (observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => import("rxjs").Subscription);
29
+ readonly _setParentDocument: (() => void) | ((observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => Subscription) | (PD extends void ? () => void : (observableOrValue: Maybe<PD> | Observable<Maybe<PD>>) => Subscription);
29
30
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxFirebaseDocumentWithParentStore<any, any, any, any, any>, never>;
30
31
  static ɵprov: i0.ɵɵInjectableDeclaration<AbstractDbxFirebaseDocumentWithParentStore<any, any, any, any, any>>;
31
32
  }
@@ -1,23 +1,24 @@
1
1
  import { LockSetComponentStore } from '@dereekb/dbx-core';
2
- import { FirestoreCollection, FirestoreCollectionWithParentFactory, FirestoreDocument } from "@dereekb/firebase";
3
- import { ObservableOrValue } from "@dereekb/rxjs";
4
- import { Maybe } from "@dereekb/util";
5
- import { ComponentStore } from "@ngrx/component-store";
6
- import { Observable, Subscription } from "rxjs";
7
- import { DbxFirebaseDocumentStore } from "./store.document";
2
+ import { FirestoreCollectionLike, FirestoreCollectionWithParentFactory, FirestoreDocument } from '@dereekb/firebase';
3
+ import { ObservableOrValue } from '@dereekb/rxjs';
4
+ import { Maybe } from '@dereekb/util';
5
+ import { ComponentStore } from '@ngrx/component-store';
6
+ import { Observable, Subscription } from 'rxjs';
7
+ import { DbxFirebaseDocumentStore } from './store.document';
8
8
  export interface DbxFirebaseComponentStoreWithParentContextState<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> {
9
9
  readonly parent?: Maybe<PD>;
10
10
  readonly collectionFactory?: Maybe<FirestoreCollectionWithParentFactory<T, PT, D, PD>>;
11
11
  }
12
+ export declare type DbxFirebaseComponentStoreSetParentEffectFunction<PD> = (parent: Observable<Maybe<PD>>) => Subscription;
12
13
  export declare type DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD> = (observableOrValue: ObservableOrValue<Maybe<PD>>) => Subscription;
13
14
  export declare type DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction<PT, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> = (observableOrValue: ObservableOrValue<DbxFirebaseDocumentStore<PT, PD>>) => Subscription;
14
- export interface DbxFirebaseComponentStoreWithParent<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends LockSetComponentStore<object>, Pick<ComponentStore<DbxFirebaseComponentStoreWithParentContextState<T, PT, D, PD>>, 'effect'> {
15
+ export interface DbxFirebaseComponentStoreWithParent<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>, A extends FirestoreCollectionLike<T, D> = FirestoreCollectionLike<T, D>> extends LockSetComponentStore<object>, Pick<ComponentStore<DbxFirebaseComponentStoreWithParentContextState<T, PT, D, PD>>, 'effect'> {
15
16
  readonly currentParent$: Observable<Maybe<PD>>;
16
17
  readonly parent$: Observable<PD>;
18
+ readonly currentCollectionFactory$: Observable<Maybe<FirestoreCollectionWithParentFactory<T, PT, D, PD>>>;
17
19
  readonly collectionFactory$: Observable<FirestoreCollectionWithParentFactory<T, PT, D, PD>>;
18
- readonly setParent: DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
20
+ readonly _setParent: DbxFirebaseComponentStoreSetParentEffectFunction<PD>;
19
21
  readonly _setParentDocument: (() => void) | ((observableOrValue: ObservableOrValue<Maybe<PD>>) => Subscription);
20
- readonly setFirestoreCollection: (() => void) | ((observableOrValue: ObservableOrValue<Maybe<FirestoreCollection<T, D>>>) => Subscription);
22
+ readonly setFirestoreCollection: (() => void) | ((observableOrValue: ObservableOrValue<Maybe<A>>) => Subscription);
21
23
  }
22
- export declare function setParentStoreEffect<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>>(store: DbxFirebaseComponentStoreWithParent<T, PT, D, PD>): DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction<PT, PD>;
23
- export declare function setParentEffect<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>>(store: DbxFirebaseComponentStoreWithParent<T, PT, D, PD>): DbxFirebaseComponentStoreWithParentSetParentEffectFunction<PD>;
24
+ export declare function setParentStoreEffect<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>, A extends FirestoreCollectionLike<T, D> = FirestoreCollectionLike<T, D>>(store: DbxFirebaseComponentStoreWithParent<T, PT, D, PD, A>): DbxFirebaseComponentStoreWithParentSetParentStoreEffectFunction<PT, PD>;
@@ -1,18 +1,20 @@
1
- @use "sass:map";
1
+ @use 'sass:map';
2
2
  @use './variables';
3
3
 
4
4
  // theme
5
5
  @function define-dbx-firebase-theme-config($theme-config, $input-dbx-firebase-theme-config: null) {
6
-
7
6
  @if ($input-dbx-firebase-theme-config == null) {
8
7
  $input-dbx-firebase-theme-config: ();
9
8
  }
10
-
9
+
11
10
  $dbx-firebase-theme-config: ();
12
11
 
13
- @return map.merge($theme-config, (
14
- 'dbx-firebase': $dbx-firebase-theme-config
15
- ));
12
+ @return map.merge(
13
+ $theme-config,
14
+ (
15
+ 'dbx-firebase': $dbx-firebase-theme-config
16
+ )
17
+ );
16
18
  }
17
19
 
18
20
  @function get-dbx-firebase-theme-config($theme-config) {
@@ -1,4 +1,4 @@
1
- @use "sass:map";
1
+ @use 'sass:map';
2
2
  @use './all-core';
3
3
  @use './all-typography';
4
4
  @use './config';
@@ -1,3 +1,3 @@
1
- @use "sass:map";
1
+ @use 'sass:map';
2
2
  @use './config';
3
3
  @use './variables';
@@ -1,16 +1,6 @@
1
- @forward '@angular/material'show define-light-theme,
2
- define-dark-theme,
3
- define-palette,
4
- get-contrast-color-from-palette,
5
- get-color-from-palette,
6
- get-color-config,
7
- get-typography-config,
8
- get-density-config,
9
- elevation;
1
+ @forward '@angular/material' show define-light-theme, define-dark-theme, define-palette, get-contrast-color-from-palette, get-color-from-palette, get-color-config, get-typography-config, get-density-config, elevation;
10
2
 
11
- @forward 'node_modules/@angular/material/core/theming/theming'
12
- show private-check-duplicate-theme-styles,
13
- $theme-ignore-duplication-warnings;
3
+ @forward 'node_modules/@angular/material/core/theming/theming' show private-check-duplicate-theme-styles, $theme-ignore-duplication-warnings;
14
4
 
15
5
  @forward 'node_modules/@angular/material/core/typography/typography-utils';
16
6
 
@@ -1 +1 @@
1
- @use "sass:map";
1
+ @use 'sass:map';
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "name": "@dereekb/dbx-firebase",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0",
7
+ "@dereekb/util": "5.2.0",
7
8
  "firebase": "^9.8.0",
8
- "@dereekb/util": "5.0.0",
9
- "@dereekb/dbx-core": "5.0.0",
10
- "@angular/material": "^13.0.0",
11
- "@dereekb/dbx-web": "5.0.0",
12
- "@dereekb/dbx-form": "5.0.0",
9
+ "rxjs": "^7.0.0",
13
10
  "@angular/fire": "^7.3.0-canary.8d5bc12",
14
- "@dereekb/firebase": "5.0.0"
11
+ "@dereekb/dbx-core": "5.2.0",
12
+ "@angular/material": "^13.0.0",
13
+ "@dereekb/dbx-web": "5.2.0",
14
+ "@dereekb/dbx-form": "5.2.0",
15
+ "@dereekb/firebase": "5.2.0"
15
16
  },
16
17
  "dependencies": {
17
18
  "tslib": "^2.3.0"