@dereekb/firebase 8.1.1 → 8.3.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/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ # [8.3.0](https://github.com/dereekb/dbx-components/compare/v8.2.0-dev...v8.3.0) (2022-06-20)
6
+
7
+
8
+ ### Features
9
+
10
+ * added DbxFirebaseDocumentLoaderInstance ([523d1df](https://github.com/dereekb/dbx-components/commit/523d1dff22ac979b75bd310677770665ec76ff63))
11
+ * added getDocumentSnapshotsData() ([dc26340](https://github.com/dereekb/dbx-components/commit/dc26340972df9f1a7a8b8767e2929ca956e9e4a5))
12
+
13
+
14
+
15
+ # [8.2.0](https://github.com/dereekb/dbx-components/compare/v8.1.2-dev...v8.2.0) (2022-06-20)
16
+
17
+
18
+ ### Features
19
+
20
+ * added DbxRouteParamReader ([a855283](https://github.com/dereekb/dbx-components/commit/a8552835aabbfa85814984a8fdafd7bd1fb2963e))
21
+
22
+
23
+
24
+ ## [8.1.2](https://github.com/dereekb/dbx-components/compare/v8.1.1-dev...v8.1.2) (2022-06-19)
25
+
26
+
27
+
5
28
  ## [8.1.1](https://github.com/dereekb/dbx-components/compare/v8.1.0-dev...v8.1.1) (2022-06-18)
6
29
 
7
30
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase",
3
- "version": "8.1.1",
3
+ "version": "8.3.0",
4
4
  "devDependencies": {
5
5
  "@firebase/rules-unit-testing": "^2.0.0"
6
6
  },
@@ -23,16 +23,16 @@
23
23
  "rxfire": "^6.0.3",
24
24
  "rxjs": "^7.0.0",
25
25
  "firebase": "^9.8.0",
26
- "@dereekb/util": "8.1.1",
26
+ "@dereekb/util": "8.3.0",
27
27
  "make-error": "^1.3.0",
28
28
  "ts-essentials": "^9.1.2",
29
29
  "extra-set": "^2.2.11",
30
- "@dereekb/rxjs": "8.1.1",
30
+ "@dereekb/rxjs": "8.3.0",
31
31
  "ms": "^3.0.0-canary.1",
32
- "@dereekb/model": "8.1.1",
32
+ "@dereekb/model": "8.3.0",
33
33
  "class-transformer": "^0.5.1",
34
34
  "class-validator": "^0.13.2",
35
- "@dereekb/date": "8.1.1",
35
+ "@dereekb/date": "8.3.0",
36
36
  "date-fns": "^2.28.0",
37
37
  "date-fns-tz": "^1.3.0",
38
38
  "rrule": "2.7.0",
@@ -1,28 +1,29 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { FirestoreAccessorDriverRef } from '../driver/accessor';
3
- import { FirestoreModelId, FirestoreModelIdRef, FirestoreModelKey, FirestoreModelKeyRef, FirestoreModelName } from './../collection/collection';
3
+ import { FirestoreCollectionNameRef, FirestoreModelId, FirestoreModelIdentityCollectionName, FirestoreModelIdentityModelType, FirestoreModelIdentityRef, FirestoreModelIdRef, FirestoreModelKey, FirestoreModelKeyRef } from './../collection/collection';
4
4
  import { DocumentReference, CollectionReference, Transaction, WriteBatch, DocumentSnapshot, SnapshotOptions, WriteResult } from '../types';
5
5
  import { FirestoreDocumentDataAccessor } from './accessor';
6
6
  import { CollectionReferenceRef, DocumentReferenceRef, FirestoreContextReference, FirestoreDataConverterRef } from '../reference';
7
7
  import { FirestoreDocumentContext } from './context';
8
8
  import { Maybe } from '@dereekb/util';
9
- import { FirestoreModelNameRef, FirestoreModelIdentity, FirestoreModelIdentityRef } from '../collection/collection';
9
+ import { FirestoreModelTypeRef, FirestoreModelIdentity, FirestoreModelTypeModelIdentityRef } from '../collection/collection';
10
10
  import { InterceptAccessorFactoryFunction } from './accessor.wrap';
11
- export interface FirestoreDocument<T, M extends FirestoreModelName = FirestoreModelName> extends DocumentReferenceRef<T>, CollectionReferenceRef<T>, FirestoreModelIdentityRef<M>, FirestoreModelNameRef<M>, FirestoreModelKeyRef, FirestoreModelIdRef {
11
+ export interface FirestoreDocument<T, I extends FirestoreModelIdentity = FirestoreModelIdentity> extends DocumentReferenceRef<T>, CollectionReferenceRef<T>, FirestoreModelIdentityRef<I>, FirestoreModelTypeRef<FirestoreModelIdentityModelType<I>>, FirestoreCollectionNameRef<FirestoreModelIdentityCollectionName<I>>, FirestoreModelKeyRef, FirestoreModelIdRef {
12
12
  readonly accessor: FirestoreDocumentDataAccessor<T>;
13
13
  readonly id: string;
14
14
  }
15
15
  /**
16
16
  * Abstract FirestoreDocument implementation that extends a FirestoreDocumentDataAccessor.
17
17
  */
18
- export declare abstract class AbstractFirestoreDocument<T, D extends AbstractFirestoreDocument<T, any, M>, M extends FirestoreModelName = FirestoreModelName> implements FirestoreDocument<T>, LimitedFirestoreDocumentAccessorRef<T, D>, CollectionReferenceRef<T> {
18
+ export declare abstract class AbstractFirestoreDocument<T, D extends AbstractFirestoreDocument<T, any, I>, I extends FirestoreModelIdentity = FirestoreModelIdentity> implements FirestoreDocument<T>, LimitedFirestoreDocumentAccessorRef<T, D>, CollectionReferenceRef<T> {
19
19
  readonly accessor: FirestoreDocumentDataAccessor<T>;
20
20
  readonly documentAccessor: LimitedFirestoreDocumentAccessor<T, D>;
21
21
  readonly stream$: Observable<DocumentSnapshot<T>>;
22
22
  readonly data$: Observable<T>;
23
23
  constructor(accessor: FirestoreDocumentDataAccessor<T>, documentAccessor: LimitedFirestoreDocumentAccessor<T, D>);
24
- abstract get modelIdentity(): FirestoreModelIdentity<M>;
25
- get modelType(): M;
24
+ abstract get modelIdentity(): I;
25
+ get modelType(): FirestoreModelIdentityModelType<I>;
26
+ get collectionName(): FirestoreModelIdentityCollectionName<I>;
26
27
  get id(): FirestoreModelId;
27
28
  get key(): FirestoreModelKey;
28
29
  get documentRef(): DocumentReference<T>;
@@ -41,7 +42,7 @@ export interface LimitedFirestoreDocumentAccessorRef<T, D extends FirestoreDocum
41
42
  readonly documentAccessor: A;
42
43
  }
43
44
  export declare type FirestoreDocumentAccessorRef<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> = LimitedFirestoreDocumentAccessorRef<T, D, FirestoreDocumentAccessor<T, D>>;
44
- export interface LimitedFirestoreDocumentAccessor<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreModelIdentityRef, FirestoreAccessorDriverRef {
45
+ export interface LimitedFirestoreDocumentAccessor<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreModelTypeModelIdentityRef, FirestoreAccessorDriverRef {
45
46
  readonly databaseContext: FirestoreDocumentContext<T>;
46
47
  /**
47
48
  * Loads a document from the datastore.
@@ -110,7 +111,7 @@ export interface LimitedFirestoreDocumentAccessorFactory<T, D extends FirestoreD
110
111
  /**
111
112
  * FirestoreDocumentAccessor configuration.
112
113
  */
113
- export interface LimitedFirestoreDocumentAccessorFactoryConfig<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreDataConverterRef<T>, FirestoreModelIdentityRef, FirestoreContextReference, FirestoreAccessorDriverRef {
114
+ export interface LimitedFirestoreDocumentAccessorFactoryConfig<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreDataConverterRef<T>, FirestoreModelTypeModelIdentityRef, FirestoreContextReference, FirestoreAccessorDriverRef {
114
115
  /**
115
116
  * Optional InterceptAccessorFactoryFunction to intercept/return a modified accessor factory.
116
117
  */
@@ -159,10 +160,10 @@ export interface FirestoreDocumentAccessorContextExtension<T, D extends Firestor
159
160
  }
160
161
  export declare function firestoreDocumentAccessorContextExtension<T, D extends FirestoreDocument<T> = FirestoreDocument<T>>({ documentAccessor, firestoreAccessorDriver }: FirestoreDocumentAccessorContextExtensionConfig<T, D>): FirestoreDocumentAccessorContextExtension<T, D>;
161
162
  export declare function firestoreDocumentAccessorContextExtension<T, D extends FirestoreDocument<T> = FirestoreDocument<T>>({ documentAccessor, firestoreAccessorDriver }: LimitedFirestoreDocumentAccessorContextExtensionConfig<T, D>): LimitedFirestoreDocumentAccessorContextExtension<T, D>;
162
- export interface FirestoreDocumentWithParent<P, T> extends FirestoreDocument<T> {
163
+ export interface FirestoreDocumentWithParent<P, T, I extends FirestoreModelIdentity = FirestoreModelIdentity> extends FirestoreDocument<T, I> {
163
164
  readonly parent: DocumentReference<P>;
164
165
  }
165
- export declare abstract class AbstractFirestoreDocumentWithParent<P, T, D extends AbstractFirestoreDocument<T, any>> extends AbstractFirestoreDocument<T, D> implements FirestoreDocumentWithParent<P, T> {
166
+ export declare abstract class AbstractFirestoreDocumentWithParent<P, T, D extends AbstractFirestoreDocument<T, any, I>, I extends FirestoreModelIdentity = FirestoreModelIdentity> extends AbstractFirestoreDocument<T, D, I> implements FirestoreDocumentWithParent<P, T> {
166
167
  get parent(): DocumentReference<P>;
167
168
  constructor(accessor: FirestoreDocumentDataAccessor<T>, documentAccessor: LimitedFirestoreDocumentAccessor<T, D>);
168
169
  }
@@ -18,6 +18,9 @@ class AbstractFirestoreDocument {
18
18
  get modelType() {
19
19
  return this.modelIdentity.modelType;
20
20
  }
21
+ get collectionName() {
22
+ return this.modelIdentity.collectionName;
23
+ }
21
24
  get id() {
22
25
  return this.documentRef.id;
23
26
  }
@@ -49,7 +52,7 @@ class AbstractFirestoreDocument {
49
52
  exports.AbstractFirestoreDocument = AbstractFirestoreDocument;
50
53
  function limitedFirestoreDocumentAccessorFactory(config) {
51
54
  const { firestoreContext, firestoreAccessorDriver, makeDocument, accessorFactory: interceptAccessorFactory, converter, modelIdentity } = config;
52
- const expectedCollectionName = firestoreAccessorDriver.fuzzedPathForPath ? firestoreAccessorDriver.fuzzedPathForPath(modelIdentity.collection) : modelIdentity.collection;
55
+ const expectedCollectionName = firestoreAccessorDriver.fuzzedPathForPath ? firestoreAccessorDriver.fuzzedPathForPath(modelIdentity.collectionName) : modelIdentity.collectionName;
53
56
  return (context) => {
54
57
  const databaseContext = context !== null && context !== void 0 ? context : config.firestoreAccessorDriver.defaultContextFactory();
55
58
  const dataAccessorFactory = interceptAccessorFactory ? interceptAccessorFactory(databaseContext.accessorFactory) : databaseContext.accessorFactory;
@@ -64,7 +67,7 @@ function limitedFirestoreDocumentAccessorFactory(config) {
64
67
  var _a;
65
68
  const ref = firestoreAccessorDriver.docAtPath(firestoreContext.firestore, fullPath);
66
69
  if (((_a = ref.parent) === null || _a === void 0 ? void 0 : _a.id) !== expectedCollectionName) {
67
- throw new Error(`unexpected key/path "${fullPath}" for expected type "${modelIdentity.collection}"/"${modelIdentity.modelType}".`);
70
+ throw new Error(`unexpected key/path "${fullPath}" for expected type "${modelIdentity.collectionName}"/"${modelIdentity.modelType}".`);
68
71
  }
69
72
  return ref.withConverter(converter);
70
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { AsyncGetterOrValue, Maybe, UseAsync } from '@dereekb/util';
2
+ import { FirestoreModelId, FirestoreModelKey } from '../collection';
2
3
  import { DocumentDataWithId, DocumentReference, DocumentSnapshot, QuerySnapshot, Transaction } from '../types';
3
4
  import { FirestoreDocument, FirestoreDocumentAccessor, LimitedFirestoreDocumentAccessor, LimitedFirestoreDocumentAccessorContextExtension } from './document';
4
5
  export declare function newDocuments<T, D extends FirestoreDocument<T>>(documentAccessor: FirestoreDocumentAccessor<T, D>, count: number): D[];
@@ -24,9 +25,22 @@ export interface MakeDocumentsParams<T, D extends FirestoreDocument<T> = Firesto
24
25
  */
25
26
  export declare function makeDocuments<T, D extends FirestoreDocument<T>>(documentAccessor: FirestoreDocumentAccessor<T, D>, make: MakeDocumentsParams<T, D>): Promise<D[]>;
26
27
  export declare function getDocumentSnapshots<T, D extends FirestoreDocument<T>>(documents: D[]): Promise<DocumentSnapshot<T>[]>;
28
+ export declare function getDocumentSnapshotsData<T, D extends FirestoreDocument<T>>(documents: D[]): Promise<DocumentDataWithId<T>[]>;
29
+ export declare function getDocumentSnapshotsData<T, D extends FirestoreDocument<T>>(documents: D[], withId: true): Promise<DocumentDataWithId<T>[]>;
30
+ export declare function getDocumentSnapshotsData<T, D extends FirestoreDocument<T>>(documents: D[], withId: false): Promise<T[]>;
31
+ export declare function getDocumentSnapshotsData<T, D extends FirestoreDocument<T>>(documents: D[], withId?: boolean): Promise<DocumentDataWithId<T>[] | T[]>;
32
+ export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[]): DocumentDataWithId<T>[];
33
+ export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[], withId: true): DocumentDataWithId<T>[];
34
+ export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[], withId: false): T[];
35
+ export declare function getDataFromDocumentSnapshots<T>(snapshots: DocumentSnapshot<T>[], withId?: boolean): DocumentDataWithId<T>[] | T[];
27
36
  export declare function loadDocumentsForSnapshots<T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, snapshots: QuerySnapshot<T>): D[];
37
+ export declare function loadDocumentsForDocumentReferencesFromValues<I, T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, values: I[], getRef: (value: I) => DocumentReference<T>): D[];
38
+ export declare const loadDocumentsForValues: typeof loadDocumentsForDocumentReferencesFromValues;
28
39
  export declare function loadDocumentsForDocumentReferences<T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, refs: DocumentReference<T>[]): D[];
29
- export declare function loadDocumentsForValues<I, T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, values: I[], getRef: (value: I) => DocumentReference<T>): D[];
40
+ export declare function loadDocumentsForKeysFromValues<I, T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, values: I[], getKey: (value: I) => FirestoreModelKey): D[];
41
+ export declare function loadDocumentsForKeys<T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, keys: FirestoreModelKey[]): D[];
42
+ export declare function loadDocumentsForIdsFromValues<I, T, D extends FirestoreDocument<T>>(accessor: LimitedFirestoreDocumentAccessor<T, D>, values: I[], getId: (value: I) => FirestoreModelId): D[];
43
+ export declare function loadDocumentsForIds<T, D extends FirestoreDocument<T>>(accessor: FirestoreDocumentAccessor<T, D>, ids: FirestoreModelId[]): D[];
30
44
  /**
31
45
  * Used for loading documents for the input references.
32
46
  */
@@ -38,6 +52,20 @@ export declare type FirestoreDocumentLoader<T, D extends FirestoreDocument<T>> =
38
52
  * @returns
39
53
  */
40
54
  export declare function firestoreDocumentLoader<T, D extends FirestoreDocument<T>>(accessorContext: LimitedFirestoreDocumentAccessorContextExtension<T, D>): FirestoreDocumentLoader<T, D>;
55
+ /**
56
+ * Creates the document data from the snapshot.
57
+ *
58
+ * @param snapshot
59
+ * @returns
60
+ */
61
+ export declare function documentData<T>(snapshot: DocumentSnapshot<T>): Maybe<DocumentDataWithId<T>>;
62
+ export declare function documentData<T>(snapshot: DocumentSnapshot<T>, withId: true): Maybe<DocumentDataWithId<T>>;
63
+ export declare function documentData<T>(snapshot: DocumentSnapshot<T>, withId: false): Maybe<T>;
64
+ export declare type DocumentDataFunction<T> = (snapshot: DocumentSnapshot<T>) => Maybe<T>;
65
+ export declare type DocumentDataWithIdFunction<T> = (snapshot: DocumentSnapshot<T>) => Maybe<DocumentDataWithId<T>>;
66
+ export declare function documentDataFunction<T>(withId: true): DocumentDataWithIdFunction<T>;
67
+ export declare function documentDataFunction<T>(withId: false): DocumentDataFunction<T>;
68
+ export declare function documentDataFunction<T>(withId: boolean): DocumentDataWithIdFunction<T> | DocumentDataFunction<T>;
41
69
  /**
42
70
  * Creates a DocumentDataWithId from the input DocumentSnapshot. If the data does not exist, returns undefined.
43
71
  *
@@ -57,4 +85,10 @@ export declare function useDocumentSnapshot<T, D extends FirestoreDocument<T>, O
57
85
  /**
58
86
  * MappedUseAsyncFunction to load snapshot data from the input document and use it.
59
87
  */
60
- export declare const useDocumentSnapshotData: import("@dereekb/util").MappedUseAsyncFunction<FirestoreDocument<unknown, string>, unknown>;
88
+ export declare const useDocumentSnapshotData: import("@dereekb/util").MappedUseAsyncFunction<FirestoreDocument<unknown, import("../collection").FirestoreModelIdentity<string, string>>, unknown>;
89
+ export declare function firestoreModelIdFromDocument<T, D extends FirestoreDocument<T>>(document: D): FirestoreModelId;
90
+ export declare function firestoreModelIdsFromDocuments<T, D extends FirestoreDocument<T>>(documents: D[]): FirestoreModelId[];
91
+ export declare function firestoreModelKeyFromDocument<T, D extends FirestoreDocument<T>>(document: D): FirestoreModelKey;
92
+ export declare function firestoreModelKeysFromDocuments<T, D extends FirestoreDocument<T>>(documents: D[]): FirestoreModelKey[];
93
+ export declare function documentReferenceFromDocument<T, D extends FirestoreDocument<T>>(document: D): DocumentReference<T>;
94
+ export declare function documentReferencesFromDocuments<T, D extends FirestoreDocument<T>>(documents: D[]): DocumentReference<T>[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useDocumentSnapshotData = exports.useDocumentSnapshot = exports.documentDataWithId = exports.firestoreDocumentLoader = exports.loadDocumentsForValues = exports.loadDocumentsForDocumentReferences = exports.loadDocumentsForSnapshots = exports.getDocumentSnapshots = exports.makeDocuments = exports.newDocuments = void 0;
3
+ exports.documentReferencesFromDocuments = exports.documentReferenceFromDocument = exports.firestoreModelKeysFromDocuments = exports.firestoreModelKeyFromDocument = exports.firestoreModelIdsFromDocuments = exports.firestoreModelIdFromDocument = exports.useDocumentSnapshotData = exports.useDocumentSnapshot = exports.documentDataWithId = exports.documentDataFunction = exports.documentData = exports.firestoreDocumentLoader = exports.loadDocumentsForIds = exports.loadDocumentsForIdsFromValues = exports.loadDocumentsForKeys = exports.loadDocumentsForKeysFromValues = exports.loadDocumentsForDocumentReferences = exports.loadDocumentsForValues = exports.loadDocumentsForDocumentReferencesFromValues = exports.loadDocumentsForSnapshots = exports.getDataFromDocumentSnapshots = exports.getDocumentSnapshotsData = exports.getDocumentSnapshots = exports.makeDocuments = exports.newDocuments = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const util_1 = require("@dereekb/util");
6
6
  function newDocuments(documentAccessor, count) {
@@ -34,18 +34,44 @@ function getDocumentSnapshots(documents) {
34
34
  return util_1.PromiseUtility.runTasksForValues(documents, (x) => x.accessor.get());
35
35
  }
36
36
  exports.getDocumentSnapshots = getDocumentSnapshots;
37
+ function getDocumentSnapshotsData(documents, withId = true) {
38
+ return getDocumentSnapshots(documents).then((x) => getDataFromDocumentSnapshots(x, withId));
39
+ }
40
+ exports.getDocumentSnapshotsData = getDocumentSnapshotsData;
41
+ function getDataFromDocumentSnapshots(snapshots, withId = true) {
42
+ const mapFn = documentDataFunction(withId);
43
+ return (0, util_1.filterMaybeValues)(snapshots.map(mapFn));
44
+ }
45
+ exports.getDataFromDocumentSnapshots = getDataFromDocumentSnapshots;
37
46
  function loadDocumentsForSnapshots(accessor, snapshots) {
38
47
  return snapshots.docs.map((x) => accessor.loadDocument(x.ref));
39
48
  }
40
49
  exports.loadDocumentsForSnapshots = loadDocumentsForSnapshots;
50
+ function loadDocumentsForDocumentReferencesFromValues(accessor, values, getRef) {
51
+ return loadDocumentsForDocumentReferences(accessor, values.map(getRef));
52
+ }
53
+ exports.loadDocumentsForDocumentReferencesFromValues = loadDocumentsForDocumentReferencesFromValues;
54
+ exports.loadDocumentsForValues = loadDocumentsForDocumentReferencesFromValues;
41
55
  function loadDocumentsForDocumentReferences(accessor, refs) {
42
56
  return refs.map((x) => accessor.loadDocument(x));
43
57
  }
44
58
  exports.loadDocumentsForDocumentReferences = loadDocumentsForDocumentReferences;
45
- function loadDocumentsForValues(accessor, values, getRef) {
46
- return values.map((x) => accessor.loadDocument(getRef(x)));
59
+ function loadDocumentsForKeysFromValues(accessor, values, getKey) {
60
+ return loadDocumentsForKeys(accessor, values.map(getKey));
61
+ }
62
+ exports.loadDocumentsForKeysFromValues = loadDocumentsForKeysFromValues;
63
+ function loadDocumentsForKeys(accessor, keys) {
64
+ return keys.map((x) => accessor.loadDocumentForKey(x));
47
65
  }
48
- exports.loadDocumentsForValues = loadDocumentsForValues;
66
+ exports.loadDocumentsForKeys = loadDocumentsForKeys;
67
+ function loadDocumentsForIdsFromValues(accessor, values, getId) {
68
+ return loadDocumentsForKeys(accessor, values.map(getId));
69
+ }
70
+ exports.loadDocumentsForIdsFromValues = loadDocumentsForIdsFromValues;
71
+ function loadDocumentsForIds(accessor, ids) {
72
+ return ids.map((x) => accessor.loadDocumentForId(x));
73
+ }
74
+ exports.loadDocumentsForIds = loadDocumentsForIds;
49
75
  /**
50
76
  * Used to make a FirestoreDocumentLoader.
51
77
  *
@@ -59,6 +85,19 @@ function firestoreDocumentLoader(accessorContext) {
59
85
  };
60
86
  }
61
87
  exports.firestoreDocumentLoader = firestoreDocumentLoader;
88
+ function documentData(snapshot, withId = false) {
89
+ if (withId) {
90
+ return documentDataWithId(snapshot);
91
+ }
92
+ else {
93
+ return snapshot.data();
94
+ }
95
+ }
96
+ exports.documentData = documentData;
97
+ function documentDataFunction(withId) {
98
+ return withId ? documentDataWithId : (snapshot) => snapshot.data();
99
+ }
100
+ exports.documentDataFunction = documentDataFunction;
62
101
  /**
63
102
  * Creates a DocumentDataWithId from the input DocumentSnapshot. If the data does not exist, returns undefined.
64
103
  *
@@ -92,4 +131,29 @@ exports.useDocumentSnapshot = useDocumentSnapshot;
92
131
  * MappedUseAsyncFunction to load snapshot data from the input document and use it.
93
132
  */
94
133
  exports.useDocumentSnapshotData = (0, util_1.wrapUseAsyncFunction)(useDocumentSnapshot, (x) => x.data());
134
+ // MARK: Key Accessors
135
+ function firestoreModelIdFromDocument(document) {
136
+ return document.id;
137
+ }
138
+ exports.firestoreModelIdFromDocument = firestoreModelIdFromDocument;
139
+ function firestoreModelIdsFromDocuments(documents) {
140
+ return documents.map(firestoreModelIdFromDocument);
141
+ }
142
+ exports.firestoreModelIdsFromDocuments = firestoreModelIdsFromDocuments;
143
+ function firestoreModelKeyFromDocument(document) {
144
+ return document.key;
145
+ }
146
+ exports.firestoreModelKeyFromDocument = firestoreModelKeyFromDocument;
147
+ function firestoreModelKeysFromDocuments(documents) {
148
+ return documents.map(firestoreModelKeyFromDocument);
149
+ }
150
+ exports.firestoreModelKeysFromDocuments = firestoreModelKeysFromDocuments;
151
+ function documentReferenceFromDocument(document) {
152
+ return document.documentRef;
153
+ }
154
+ exports.documentReferenceFromDocument = documentReferenceFromDocument;
155
+ function documentReferencesFromDocuments(documents) {
156
+ return documents.map(documentReferenceFromDocument);
157
+ }
158
+ exports.documentReferencesFromDocuments = documentReferencesFromDocuments;
95
159
  //# sourceMappingURL=document.utility.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document.utility.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.utility.ts"],"names":[],"mappings":";;;;AAAA,wCAAsJ;AAItJ,SAAgB,YAAY,CAAoC,gBAAiD,EAAE,KAAa;IAC9H,OAAO,IAAA,sBAAe,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAFD,oCAEC;AAkBD;;;;;;GAMG;AACH,SAAgB,aAAa,CAAoC,gBAAiD,EAAE,IAA+B;;IACjJ,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;IACjF,OAAO,IAAA,sBAAe,EAAC;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,CAAO,CAAS,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAE1C,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACnC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAA;KACF,CAAC,CAAC;AACL,CAAC;AAfD,sCAeC;AAED,SAAgB,oBAAoB,CAAoC,SAAc;IACpF,OAAO,qBAAc,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9E,CAAC;AAFD,oDAEC;AAED,SAAgB,yBAAyB,CAAoC,QAAgD,EAAE,SAA2B;IACxJ,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACjE,CAAC;AAFD,8DAEC;AAED,SAAgB,kCAAkC,CAAoC,QAAgD,EAAE,IAA4B;IAClK,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,gFAEC;AAED,SAAgB,sBAAsB,CAAuC,QAAgD,EAAE,MAAW,EAAE,MAA0C;IACpL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAFD,wDAEC;AAOD;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAoC,eAAuE;IAChJ,OAAO,CAAC,UAAkC,EAAE,WAAyB,EAAE,EAAE;QACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;QAChI,OAAO,kCAAkC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC,CAAC;AACJ,CAAC;AALD,0DAKC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,QAA6B;IACjE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAA2B,CAAC;IAEtD,IAAI,IAAI,EAAE;QACR,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,wBAAwB;KAChD;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,gDAQC;AAED;;;;;;;GAOG;AACH,SAAsB,mBAAmB,CAA8C,QAAkB,EAAE,GAAqC,EAAE,YAA2C;;QAC3L,MAAM,QAAQ,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC,GAAG,EAAE,CAAA,CAAC;QAChD,OAAO,IAAA,eAAQ,EAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAC/C,CAAC;CAAA;AAHD,kDAGC;AAED;;GAEG;AACU,QAAA,uBAAuB,GAAG,IAAA,2BAAoB,EAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"document.utility.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/accessor/document.utility.ts"],"names":[],"mappings":";;;;AAAA,wCAAyK;AAKzK,SAAgB,YAAY,CAAoC,gBAAiD,EAAE,KAAa;IAC9H,OAAO,IAAA,sBAAe,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;AAFD,oCAEC;AAkBD;;;;;;GAMG;AACH,SAAgB,aAAa,CAAoC,gBAAiD,EAAE,IAA+B;;IACjJ,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;IACjF,OAAO,IAAA,sBAAe,EAAC;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,CAAO,CAAS,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAM,aAAa,CAAC,gBAAgB,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAE1C,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACnC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAA;KACF,CAAC,CAAC;AACL,CAAC;AAfD,sCAeC;AAED,SAAgB,oBAAoB,CAAoC,SAAc;IACpF,OAAO,qBAAc,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9E,CAAC;AAFD,oDAEC;AAMD,SAAgB,wBAAwB,CAAoC,SAAc,EAAE,MAAM,GAAG,IAAI;IACvG,OAAO,oBAAoB,CAAO,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAwB,EAAE,EAAE,CAAC,4BAA4B,CAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC9H,CAAC;AAFD,4DAEC;AAMD,SAAgB,4BAA4B,CAAI,SAAgC,EAAE,SAAkB,IAAI;IACtG,MAAM,KAAK,GAAG,oBAAoB,CAAI,MAAM,CAAC,CAAC;IAC9C,OAAO,IAAA,wBAAiB,EAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACpD,CAAC;AAHD,oEAGC;AAED,SAAgB,yBAAyB,CAAoC,QAAgD,EAAE,SAA2B;IACxJ,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACjE,CAAC;AAFD,8DAEC;AAED,SAAgB,4CAA4C,CAAuC,QAAgD,EAAE,MAAW,EAAE,MAA0C;IAC1M,OAAO,kCAAkC,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1E,CAAC;AAFD,oGAEC;AAEY,QAAA,sBAAsB,GAAG,4CAA4C,CAAC;AAEnF,SAAgB,kCAAkC,CAAoC,QAAgD,EAAE,IAA4B;IAClK,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,gFAEC;AAED,SAAgB,8BAA8B,CAAuC,QAAgD,EAAE,MAAW,EAAE,MAAuC;IACzL,OAAO,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,wEAEC;AAED,SAAgB,oBAAoB,CAAoC,QAAgD,EAAE,IAAyB;IACjJ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAFD,oDAEC;AAED,SAAgB,6BAA6B,CAAuC,QAAgD,EAAE,MAAW,EAAE,KAAqC;IACtL,OAAO,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC;AAFD,sEAEC;AAED,SAAgB,mBAAmB,CAAoC,QAAyC,EAAE,GAAuB;IACvI,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,kDAEC;AAOD;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAoC,eAAuE;IAChJ,OAAO,CAAC,UAAkC,EAAE,WAAyB,EAAE,EAAE;QACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;QAChI,OAAO,kCAAkC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC,CAAC;AACJ,CAAC;AALD,0DAKC;AAWD,SAAgB,YAAY,CAAI,QAA6B,EAAE,MAAM,GAAG,KAAK;IAC3E,IAAI,MAAM,EAAE;QACV,OAAO,kBAAkB,CAAC,QAAQ,CAAC,CAAC;KACrC;SAAM;QACL,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;KACxB;AACH,CAAC;AAND,oCAMC;AAQD,SAAgB,oBAAoB,CAAI,MAAe;IACrD,OAAO,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AACrE,CAAC;AAFD,oDAEC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,QAA6B;IACjE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAA2B,CAAC;IAEtD,IAAI,IAAI,EAAE;QACR,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,wBAAwB;KAChD;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,gDAQC;AAED;;;;;;;GAOG;AACH,SAAsB,mBAAmB,CAA8C,QAAkB,EAAE,GAAqC,EAAE,YAA2C;;QAC3L,MAAM,QAAQ,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC,GAAG,EAAE,CAAA,CAAC;QAChD,OAAO,IAAA,eAAQ,EAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAC/C,CAAC;CAAA;AAHD,kDAGC;AAED;;GAEG;AACU,QAAA,uBAAuB,GAAG,IAAA,2BAAoB,EAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAElG,sBAAsB;AACtB,SAAgB,4BAA4B,CAAoC,QAAW;IACzF,OAAO,QAAQ,CAAC,EAAE,CAAC;AACrB,CAAC;AAFD,oEAEC;AAED,SAAgB,8BAA8B,CAAoC,SAAc;IAC9F,OAAO,SAAS,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AACrD,CAAC;AAFD,wEAEC;AAED,SAAgB,6BAA6B,CAAoC,QAAW;IAC1F,OAAO,QAAQ,CAAC,GAAG,CAAC;AACtB,CAAC;AAFD,sEAEC;AAED,SAAgB,+BAA+B,CAAoC,SAAc;IAC/F,OAAO,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AACtD,CAAC;AAFD,0EAEC;AAED,SAAgB,6BAA6B,CAAoC,QAAW;IAC1F,OAAO,QAAQ,CAAC,WAAW,CAAC;AAC9B,CAAC;AAFD,sEAEC;AAED,SAAgB,+BAA+B,CAAoC,SAAc;IAC/F,OAAO,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AACtD,CAAC;AAFD,0EAEC"}
@@ -4,7 +4,7 @@ import { FirestoreItemPageIterationBaseConfig, FirestoreItemPageIterationFactory
4
4
  import { FirestoreQueryFactory } from '../query/query';
5
5
  import { FirestoreDrivers } from '../driver/driver';
6
6
  import { FirestoreCollectionQueryFactory } from './collection.query';
7
- import { ModelKey, ModelTypeString } from '@dereekb/util';
7
+ import { ArrayOrValue, ModelKey, ModelTypeString } from '@dereekb/util';
8
8
  /**
9
9
  * The camelCase model name/type.
10
10
  */
@@ -21,14 +21,23 @@ export declare type FirestoreModelIdentityType = 'root' | 'nested';
21
21
  /**
22
22
  * A firestore model's identity
23
23
  */
24
- export declare type FirestoreModelIdentity<M extends FirestoreModelType = FirestoreModelType, C extends FirestoreCollectionName = FirestoreCollectionName> = FirestoreModelTypeRef<M> & {
24
+ export declare type FirestoreModelIdentity<M extends FirestoreModelType = FirestoreModelType, C extends FirestoreCollectionName = FirestoreCollectionName> = FirestoreModelTypeRef<M> & FirestoreCollectionNameRef<C> & {
25
25
  readonly type: FirestoreModelIdentityType;
26
+ /**
27
+ * @deprecated use collectionName instead.
28
+ *
29
+ * Will be removed in the future.
30
+ */
26
31
  readonly collection: C;
27
32
  /**
28
33
  * @deprecated use modelType instead.
34
+ *
35
+ * Will be removed in the future.
29
36
  */
30
37
  readonly model: M;
31
38
  };
39
+ export declare type FirestoreModelIdentityModelType<I> = I extends FirestoreModelIdentity<infer M> ? M : never;
40
+ export declare type FirestoreModelIdentityCollectionName<I> = I extends FirestoreModelIdentity<infer M, infer C> ? C : never;
32
41
  /**
33
42
  * A root-level FirestoreModelIdentity
34
43
  */
@@ -58,7 +67,7 @@ export declare function firestoreModelIdentity<P extends FirestoreModelIdentity<
58
67
  export declare function firestoreModelIdentity<M extends FirestoreModelType, C extends FirestoreCollectionName = FirestoreCollectionName>(modelName: M, collectionName: C): RootFirestoreModelIdentity<M, C>;
59
68
  export declare function firestoreModelIdentity<P extends FirestoreModelIdentity<string, string>, M extends FirestoreModelType, C extends FirestoreCollectionName = FirestoreCollectionName>(parent: P, modelName: M, collectionName: C): FirestoreModelIdentityWithParent<P, M, C>;
60
69
  /**
61
- * Reference to a FirestoreCollectionName
70
+ * Reference to a FirestoreModelType
62
71
  */
63
72
  export interface FirestoreModelTypeRef<M extends FirestoreModelType = FirestoreModelType> {
64
73
  /**
@@ -76,20 +85,29 @@ export declare function firestoreModelType(modelTypeInput: FirestoreModelType |
76
85
  /**
77
86
  * Reference to a FirestoreCollectionName
78
87
  */
79
- export interface FirestoreCollectionNameRef {
88
+ export interface FirestoreCollectionNameRef<C extends FirestoreCollectionName = FirestoreCollectionName> {
80
89
  /**
81
90
  * Returns the FirestoreCollectionName for this context.
82
91
  */
83
- readonly collectionName: FirestoreCollectionName;
92
+ readonly collectionName: C;
93
+ }
94
+ /**
95
+ * Reference to a FirestoreModelIdentity via the FirestoreModelType and FirestoreCollectionName
96
+ */
97
+ export interface FirestoreModelTypeModelIdentityRef<M extends FirestoreModelType = FirestoreModelType, C extends FirestoreCollectionName = FirestoreCollectionName> {
98
+ /**
99
+ * Returns the FirestoreModelIdentity for this context.
100
+ */
101
+ readonly modelIdentity: FirestoreModelIdentity<M, C>;
84
102
  }
85
103
  /**
86
104
  * Reference to a FirestoreModelIdentity
87
105
  */
88
- export interface FirestoreModelIdentityRef<M extends FirestoreModelType = FirestoreModelType> {
106
+ export interface FirestoreModelIdentityRef<I extends FirestoreModelIdentity> {
89
107
  /**
90
108
  * Returns the FirestoreModelIdentity for this context.
91
109
  */
92
- readonly modelIdentity: FirestoreModelIdentity<M>;
110
+ readonly modelIdentity: I;
93
111
  }
94
112
  /**
95
113
  * The model's id within a collection.
@@ -118,15 +136,54 @@ export interface FirestoreModelIdRef {
118
136
  * collection/12345/subcollection/67890
119
137
  */
120
138
  export declare type FirestoreModelKey = ModelKey;
121
- export declare type FirestoreIdentityModelKey<I extends RootFirestoreModelIdentity, K extends FirestoreModelId = FirestoreModelId> = I extends RootFirestoreModelIdentity<infer M, infer C> ? `${C}/${K}` : never;
122
139
  /**
123
- * Creates a firestoreModelKey for root identities.
140
+ * A part of a FirestoreModelKey.
141
+ */
142
+ export declare type FirestoreModelKeyPart<C extends FirestoreCollectionName = FirestoreCollectionName, K extends FirestoreModelId = FirestoreModelId> = `${C}/${K}`;
143
+ /**
144
+ * One part of a FirestoreModelKe
145
+ */
146
+ export declare type FirestoreCollectionModelKeyPart<N extends FirestoreCollectionNameRef = FirestoreCollectionNameRef, K extends FirestoreModelId = FirestoreModelId> = N extends FirestoreCollectionNameRef<infer C> ? FirestoreModelKeyPart<C, K> : never;
147
+ export declare type FirestoreCollectionModelKey<N extends FirestoreCollectionNameRef = FirestoreCollectionNameRef, K extends FirestoreModelId = FirestoreModelId> = FirestoreCollectionModelKeyPart<N, K>;
148
+ /**
149
+ * Creates a firestoreModelKeyPart
124
150
  *
125
151
  * @param identity
126
152
  * @param id
127
153
  * @returns
128
154
  */
129
- export declare function firestoreModelKey<I extends RootFirestoreModelIdentity, K extends FirestoreModelId = FirestoreModelId>(identity: I, id: K): FirestoreIdentityModelKey<I, K>;
155
+ export declare function firestoreModelKeyPart<N extends FirestoreCollectionNameRef, K extends FirestoreModelId = FirestoreModelId>(identity: N, id: K): FirestoreCollectionModelKeyPart<N, K>;
156
+ /**
157
+ * Creates a firestoreModelKey for RootFirestoreModelIdentity values.
158
+ *
159
+ * @param identity
160
+ * @param id
161
+ * @returns
162
+ */
163
+ export declare const firestoreModelKey: <I extends RootFirestoreModelIdentity<string, string>, K extends string = string>(identity: I, id: K) => FirestoreCollectionModelKeyPart<I, K>;
164
+ /**
165
+ * Creates an array of FirestoreCollectionModelKey values from the input ids.
166
+ *
167
+ * @param identity
168
+ * @param ids
169
+ * @returns
170
+ */
171
+ export declare function firestoreModelKeys<I extends RootFirestoreModelIdentity, K extends FirestoreModelId = FirestoreModelId>(identity: I, ids: K[]): FirestoreCollectionModelKey<I, K>[];
172
+ /**
173
+ * Joins together a number of FirestoreModelKeyPart values.
174
+ *
175
+ * @param parts
176
+ * @returns
177
+ */
178
+ export declare function firestoreModelKeyPath(...parts: FirestoreModelKeyPart[]): FirestoreModelKey;
179
+ /**
180
+ * Creates a number of child paths from the parent path.
181
+ *
182
+ * @param parent
183
+ * @param children
184
+ * @returns
185
+ */
186
+ export declare function childFirestoreModelKeyPath(parent: FirestoreModelKeyPart, children: ArrayOrValue<FirestoreModelKeyPart>): FirestoreModelKey[];
130
187
  /**
131
188
  * Reference to a FirestoreModelKey
132
189
  */
@@ -166,10 +223,15 @@ export interface FirestoreCollectionRef<T, D extends FirestoreDocument<T> = Fire
166
223
  export declare function makeFirestoreCollection<T, D extends FirestoreDocument<T>>(inputConfig: FirestoreCollectionConfig<T, D>): FirestoreCollection<T, D>;
167
224
  /**
168
225
  * Alternative name for FirestoreModelType.
226
+ *
227
+ * @deprecated replaced by FirestoreModelType
169
228
  */
170
229
  export declare type FirestoreModelName = FirestoreModelType;
171
230
  /**
172
231
  * @deprecated replaced by FirestoreModelTypeRef
173
232
  */
174
233
  export declare type FirestoreModelNameRef<M extends FirestoreModelType = FirestoreModelType> = FirestoreModelTypeRef<M>;
234
+ /**
235
+ * @deprecated replaced by FirestoreModelTypes
236
+ */
175
237
  export declare type FirestoreModelNames<I extends FirestoreModelIdentity> = FirestoreModelTypes<I>;
@@ -1,25 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeFirestoreCollection = exports.firestoreModelKey = exports.firestoreModelType = exports.firestoreModelIdentity = void 0;
3
+ exports.makeFirestoreCollection = exports.childFirestoreModelKeyPath = exports.firestoreModelKeyPath = exports.firestoreModelKeys = exports.firestoreModelKey = exports.firestoreModelKeyPart = exports.firestoreModelType = exports.firestoreModelIdentity = void 0;
4
4
  const document_1 = require("../accessor/document");
5
5
  const iterator_1 = require("../query/iterator");
6
6
  const query_1 = require("../query/query");
7
7
  const collection_query_1 = require("./collection.query");
8
- function firestoreModelIdentity(parentOrModelName, collectionNameOrModelName, collectionName) {
8
+ function firestoreModelIdentity(parentOrModelName, collectionNameOrModelName, inputCollectionName) {
9
9
  var _a, _b;
10
10
  if (typeof parentOrModelName === 'object') {
11
+ const collectionName = (_a = inputCollectionName) !== null && _a !== void 0 ? _a : collectionNameOrModelName.toLowerCase();
11
12
  return {
12
13
  type: 'nested',
13
14
  parent: parentOrModelName,
14
- collection: (_a = collectionName) !== null && _a !== void 0 ? _a : collectionNameOrModelName.toLowerCase(),
15
+ collectionName,
16
+ collection: collectionName,
15
17
  model: collectionNameOrModelName,
16
18
  modelType: collectionNameOrModelName
17
19
  };
18
20
  }
19
21
  else {
22
+ const collectionName = (_b = collectionNameOrModelName) !== null && _b !== void 0 ? _b : parentOrModelName.toLowerCase();
20
23
  return {
21
24
  type: 'root',
22
- collection: (_b = collectionNameOrModelName) !== null && _b !== void 0 ? _b : parentOrModelName.toLowerCase(),
25
+ collectionName,
26
+ collection: collectionName,
23
27
  model: parentOrModelName,
24
28
  modelType: parentOrModelName
25
29
  };
@@ -41,16 +45,61 @@ function firestoreModelType(modelTypeInput) {
41
45
  }
42
46
  exports.firestoreModelType = firestoreModelType;
43
47
  /**
44
- * Creates a firestoreModelKey for root identities.
48
+ * Creates a firestoreModelKeyPart
45
49
  *
46
50
  * @param identity
47
51
  * @param id
48
52
  * @returns
49
53
  */
50
- function firestoreModelKey(identity, id) {
51
- return `${identity.collection}/${id}`;
54
+ function firestoreModelKeyPart(identity, id) {
55
+ return `${identity.collectionName}/${id}`;
52
56
  }
53
- exports.firestoreModelKey = firestoreModelKey;
57
+ exports.firestoreModelKeyPart = firestoreModelKeyPart;
58
+ /**
59
+ * Creates a firestoreModelKey for RootFirestoreModelIdentity values.
60
+ *
61
+ * @param identity
62
+ * @param id
63
+ * @returns
64
+ */
65
+ exports.firestoreModelKey = firestoreModelKeyPart;
66
+ /**
67
+ * Creates an array of FirestoreCollectionModelKey values from the input ids.
68
+ *
69
+ * @param identity
70
+ * @param ids
71
+ * @returns
72
+ */
73
+ function firestoreModelKeys(identity, ids) {
74
+ return ids.map((x) => (0, exports.firestoreModelKey)(identity, x));
75
+ }
76
+ exports.firestoreModelKeys = firestoreModelKeys;
77
+ /**
78
+ * Joins together a number of FirestoreModelKeyPart values.
79
+ *
80
+ * @param parts
81
+ * @returns
82
+ */
83
+ function firestoreModelKeyPath(...parts) {
84
+ return parts.join('/');
85
+ }
86
+ exports.firestoreModelKeyPath = firestoreModelKeyPath;
87
+ /**
88
+ * Creates a number of child paths from the parent path.
89
+ *
90
+ * @param parent
91
+ * @param children
92
+ * @returns
93
+ */
94
+ function childFirestoreModelKeyPath(parent, children) {
95
+ if (Array.isArray(children)) {
96
+ return children.map((childPath) => `${parent}/${childPath}`);
97
+ }
98
+ else {
99
+ return [`${parent}/${children}`];
100
+ }
101
+ }
102
+ exports.childFirestoreModelKeyPath = childFirestoreModelKeyPath;
54
103
  /**
55
104
  * Creates a new FirestoreCollection from the input config.
56
105
  */
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.ts"],"names":[],"mappings":";;;AACA,mDAc8B;AAC9B,gDAA0L;AAC1L,0CAA8E;AAE9E,yDAAsG;AA+DtG,SAAgB,sBAAsB,CAA8I,iBAAwB,EAAE,yBAAiC,EAAE,cAAkB;;IACjQ,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,iBAAsB;YAC9B,UAAU,EAAE,MAAC,cAAoB,mCAAM,yBAA+B,CAAC,WAAW,EAAQ;YAC1F,KAAK,EAAE,yBAA8B;YACrC,SAAS,EAAE,yBAA8B;SAC1C,CAAC;KACH;SAAM;QACL,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,MAAC,yBAA+B,mCAAK,iBAAiB,CAAC,WAAW,EAAQ;YACtF,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,iBAAiB;SAC7B,CAAC;KACH;AACH,CAAC;AAjBD,wDAiBC;AAYD;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,cAA0D;IAC3F,MAAM,SAAS,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC;IAEjG,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AARD,gDAQC;AAsDD;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAsF,QAAW,EAAE,EAAK;IACvI,OAAO,GAAG,QAAQ,CAAC,UAAU,IAAI,EAAE,EAAqC,CAAC;AAC3E,CAAC;AAFD,8CAEC;AAgDD;;GAEG;AACH,SAAgB,uBAAuB,CAAoC,WAA4C;IACrH,MAAM,MAAM,GAAG,WAAyE,CAAC;IAEzF,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;IACxE,MAAwD,CAAC,SAAS,GAAG,UAAU,CAAC;IAEjF,MAAM,kBAAkB,GAAiD,IAAA,4CAAiC,EAAC,MAAM,CAAC,CAAC;IACnH,MAAM,gBAAgB,GAAmD,IAAA,2CAAgC,EAAC,MAAM,CAAC,CAAC;IAClH,MAAM,YAAY,GAA6B,IAAA,6BAAqB,EAAC,MAAM,CAAC,CAAC;IAE7E,MAAM,yBAAyB,GAAG,IAAA,oDAAyC,EAAC,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC3H,MAAM,EAAE,aAAa,EAAE,GAAG,IAAA,kDAA+B,EAAC,YAAY,EAAE,yBAAyB,CAAC,CAAC;IACnG,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC;IAE/B,qCACE,MAAM;QACN,UAAU,EACV,SAAS,EAAE,UAAU,EACrB,gBAAgB,IACb,yBAAyB,KAC5B,kBAAkB;QAClB,KAAK;QACL,aAAa,IACb;AACJ,CAAC;AAxBD,0DAwBC"}
1
+ {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.ts"],"names":[],"mappings":"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"}
@@ -21,4 +21,5 @@ export declare function firebaseQuerySnapshotAccumulator<O, T>(iteration: Firest
21
21
  * @param iteration
22
22
  */
23
23
  export declare function firebaseQueryItemAccumulator<T>(iteration: FirestoreItemPageIterationInstance<T>): FirebaseQueryItemAccumulator<T>;
24
- export declare function firebaseQueryItemAccumulator<U, T>(iteration: FirestoreItemPageIterationInstance<T>, mapItem?: MapFunction<DocumentDataWithId<T>, U>): MappedFirebaseQuerySnapshotAccumulator<U[], T>;
24
+ export declare function firebaseQueryItemAccumulator<U, T>(iteration: FirestoreItemPageIterationInstance<T>, mapItem: MapFunction<DocumentDataWithId<T>, U>): MappedFirebaseQuerySnapshotAccumulator<U[], T>;
25
+ export declare function firebaseQueryItemAccumulator<U, T>(iteration: FirestoreItemPageIterationInstance<T>, mapItem?: MapFunction<DocumentDataWithId<T>, U>): FirebaseQueryItemAccumulator<T> | MappedFirebaseQuerySnapshotAccumulator<U[], T>;
@@ -2,18 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.firebaseQueryItemAccumulator = exports.firebaseQuerySnapshotAccumulator = void 0;
4
4
  const rxjs_1 = require("@dereekb/rxjs");
5
+ const util_1 = require("@dereekb/util");
6
+ const accessor_1 = require("../accessor");
5
7
  function firebaseQuerySnapshotAccumulator(iteration, mapSnapshots) {
6
8
  return (0, rxjs_1.itemAccumulator)(iteration, mapSnapshots);
7
9
  }
8
10
  exports.firebaseQuerySnapshotAccumulator = firebaseQuerySnapshotAccumulator;
9
11
  function firebaseQueryItemAccumulator(iteration, mapItem) {
10
12
  mapItem = mapItem !== null && mapItem !== void 0 ? mapItem : ((x) => x);
13
+ const snapshotData = (0, accessor_1.documentDataFunction)(true);
11
14
  const mapFn = (x) => {
12
- const result = x.map((y) => {
13
- const data = y.data();
14
- data.id = y.id;
15
- return mapItem(data);
16
- });
15
+ const result = (0, util_1.filterMaybeValues)(x.map((y) => {
16
+ const data = snapshotData(y);
17
+ return data ? mapItem(data) : undefined;
18
+ }));
17
19
  return result;
18
20
  };
19
21
  return firebaseQuerySnapshotAccumulator(iteration, mapFn);
@@ -1 +1 @@
1
- {"version":3,"file":"accumulator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/accumulator.ts"],"names":[],"mappings":";;;AAAA,wCAAwH;AAoBxH,SAAgB,gCAAgC,CAAO,SAAgD,EAAE,YAA2E;IAClL,OAAO,IAAA,sBAAe,EAAqF,SAAS,EAAE,YAAY,CAAC,CAAC;AACtI,CAAC;AAFD,4EAEC;AASD,SAAgB,4BAA4B,CAAO,SAAgD,EAAE,OAA+C;IAClJ,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAK,CAAC,CAAC,CAAwB,EAAE,EAAE,CAAC,CAAC,CAAsD,CAAC;IAE7G,MAAM,KAAK,GAAmE,CAAC,CAAgC,EAAE,EAAE;QACjH,MAAM,MAAM,GAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAA2B,CAAC;YAC/C,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YACf,OAAQ,OAAiD,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,gCAAgC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAdD,oEAcC"}
1
+ {"version":3,"file":"accumulator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/accumulator.ts"],"names":[],"mappings":";;;AAAA,wCAAwH;AACxH,wCAA+D;AAC/D,0CAAmD;AAmBnD,SAAgB,gCAAgC,CAAO,SAAgD,EAAE,YAA2E;IAClL,OAAO,IAAA,sBAAe,EAAqF,SAAS,EAAE,YAAY,CAAC,CAAC;AACtI,CAAC;AAFD,4EAEC;AAUD,SAAgB,4BAA4B,CAAO,SAAgD,EAAE,OAA+C;IAClJ,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAK,CAAC,CAAC,CAAwB,EAAE,EAAE,CAAC,CAAC,CAAsD,CAAC;IAE7G,MAAM,YAAY,GAAG,IAAA,+BAAoB,EAAI,IAAI,CAAC,CAAC;IACnD,MAAM,KAAK,GAAmE,CAAC,CAAgC,EAAE,EAAE;QACjH,MAAM,MAAM,GAAQ,IAAA,wBAAiB,EACnC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC,CAAC,CAAE,OAAiD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,gCAAgC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC;AAhBD,oEAgBC"}
package/test/CHANGELOG.md CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ # [8.3.0](https://github.com/dereekb/dbx-components/compare/v8.2.0-dev...v8.3.0) (2022-06-20)
6
+
7
+
8
+
9
+ # [8.2.0](https://github.com/dereekb/dbx-components/compare/v8.1.2-dev...v8.2.0) (2022-06-20)
10
+
11
+
12
+ ### Features
13
+
14
+ * added DbxRouteParamReader ([a855283](https://github.com/dereekb/dbx-components/commit/a8552835aabbfa85814984a8fdafd7bd1fb2963e))
15
+
16
+
17
+
18
+ ## [8.1.2](https://github.com/dereekb/dbx-components/compare/v8.1.1-dev...v8.1.2) (2022-06-19)
19
+
20
+
21
+
5
22
  ## [8.1.1](https://github.com/dereekb/dbx-components/compare/v8.1.0-dev...v8.1.1) (2022-06-18)
6
23
 
7
24
 
package/test/package.json CHANGED
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "@dereekb/firebase/test",
3
- "version": "8.1.1",
3
+ "version": "8.3.0",
4
4
  "main": "./src/index.js",
5
5
  "typings": "./src/index.d.ts",
6
6
  "dependencies": {},
7
7
  "peerDependencies": {
8
- "@dereekb/util/test": "8.1.1",
9
- "@dereekb/util": "8.1.1",
8
+ "@dereekb/util/test": "8.3.0",
9
+ "@dereekb/util": "8.3.0",
10
10
  "make-error": "^1.3.0",
11
11
  "ts-essentials": "^9.1.2",
12
12
  "extra-set": "^2.2.11",
13
- "@dereekb/firebase": "8.1.1",
13
+ "@dereekb/firebase": "8.3.0",
14
14
  "rxfire": "^6.0.3",
15
15
  "rxjs": "^7.0.0",
16
16
  "firebase": "^9.8.0",
17
- "@dereekb/rxjs": "8.1.1",
17
+ "@dereekb/rxjs": "8.3.0",
18
18
  "ms": "^3.0.0-canary.1",
19
- "@dereekb/model": "8.1.1",
19
+ "@dereekb/model": "8.3.0",
20
20
  "class-transformer": "^0.5.1",
21
21
  "class-validator": "^0.13.2",
22
- "@dereekb/date": "8.1.1",
22
+ "@dereekb/date": "8.3.0",
23
23
  "date-fns": "^2.28.0",
24
24
  "date-fns-tz": "^1.3.0",
25
25
  "rrule": "2.7.0",
@@ -1,5 +1,5 @@
1
1
  import { Maybe } from '@dereekb/util';
2
- import { CollectionReference, FirestoreCollection, FirestoreContext, AbstractFirestoreDocument, SingleItemFirestoreCollection, FirestoreCollectionWithParent, AbstractFirestoreDocumentWithParent, ExpectedFirestoreModelData, FirestoreModelData, CollectionGroup, FirestoreCollectionGroup, FirestoreModelIdentity, UserRelated, UserRelatedById } from '@dereekb/firebase';
2
+ import { CollectionReference, FirestoreCollection, FirestoreContext, AbstractFirestoreDocument, SingleItemFirestoreCollection, FirestoreCollectionWithParent, AbstractFirestoreDocumentWithParent, ExpectedFirestoreModelData, FirestoreModelData, CollectionGroup, FirestoreCollectionGroup, UserRelated, UserRelatedById } from '@dereekb/firebase';
3
3
  import { GrantedReadRole } from '@dereekb/model';
4
4
  export declare type MockItemTypes = typeof mockItemIdentity | typeof mockItemPrivateIdentity | typeof mockItemUserIdentity | typeof mockItemSubItemIdentity | typeof mockItemSubItemDeepIdentity;
5
5
  export declare const mockItemIdentity: import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">;
@@ -14,7 +14,7 @@ export interface MockItem {
14
14
  test: boolean;
15
15
  }
16
16
  export declare type MockItemRoles = GrantedReadRole | 'admin';
17
- export declare class MockItemDocument extends AbstractFirestoreDocument<MockItem, MockItemDocument> {
17
+ export declare class MockItemDocument extends AbstractFirestoreDocument<MockItem, MockItemDocument, typeof mockItemIdentity> {
18
18
  get modelIdentity(): import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">;
19
19
  }
20
20
  /**
@@ -61,7 +61,7 @@ export declare type MockItemPrivateRoles = GrantedReadRole | 'admin';
61
61
  /**
62
62
  * FirestoreDocument for MockItem
63
63
  */
64
- export declare class MockItemPrivateDocument extends AbstractFirestoreDocument<MockItemPrivate, MockItemPrivateDocument> {
64
+ export declare class MockItemPrivateDocument extends AbstractFirestoreDocument<MockItemPrivate, MockItemPrivateDocument, typeof mockItemPrivateIdentity> {
65
65
  get modelIdentity(): import("@dereekb/firebase").FirestoreModelIdentityWithParent<import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">, "mockItemPrivate", "mip">;
66
66
  }
67
67
  export declare type MockItemPrivateData = FirestoreModelData<MockItemPrivate, {}>;
@@ -102,7 +102,7 @@ export declare type MockItemUserRoles = GrantedReadRole | 'admin';
102
102
  /**
103
103
  * FirestoreDocument for MockItem
104
104
  */
105
- export declare class MockItemUserDocument extends AbstractFirestoreDocument<MockItemUser, MockItemUserDocument> {
105
+ export declare class MockItemUserDocument extends AbstractFirestoreDocument<MockItemUser, MockItemUserDocument, typeof mockItemUserIdentity> {
106
106
  get modelIdentity(): import("@dereekb/firebase").FirestoreModelIdentityWithParent<import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">, "mockItemUser", "miu">;
107
107
  }
108
108
  export declare type MockItemUserData = FirestoreModelData<MockItemUser, {}>;
@@ -148,8 +148,8 @@ export declare type MockItemSubItemRoles = GrantedReadRole | 'admin';
148
148
  /**
149
149
  * FirestoreDocument for MockItem
150
150
  */
151
- export declare class MockItemSubItemDocument extends AbstractFirestoreDocumentWithParent<MockItem, MockItemSubItem, MockItemSubItemDocument> {
152
- get modelIdentity(): FirestoreModelIdentity;
151
+ export declare class MockItemSubItemDocument extends AbstractFirestoreDocumentWithParent<MockItem, MockItemSubItem, MockItemSubItemDocument, typeof mockItemSubItemIdentity> {
152
+ get modelIdentity(): import("@dereekb/firebase").FirestoreModelIdentityWithParent<import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">, "mockItemSub", "misi">;
153
153
  }
154
154
  export declare type MockItemSubItemData = ExpectedFirestoreModelData<MockItemSubItem>;
155
155
  /**
@@ -176,7 +176,7 @@ export declare type MockItemSubItemDeepRoles = GrantedReadRole | 'admin';
176
176
  /**
177
177
  * FirestoreDocument for MockSubItem
178
178
  */
179
- export declare class MockItemSubItemDeepDocument extends AbstractFirestoreDocumentWithParent<MockItemSubItem, MockItemSubItemDeep, MockItemSubItemDeepDocument> {
179
+ export declare class MockItemSubItemDeepDocument extends AbstractFirestoreDocumentWithParent<MockItemSubItem, MockItemSubItemDeep, MockItemSubItemDeepDocument, typeof mockItemSubItemDeepIdentity> {
180
180
  get modelIdentity(): import("@dereekb/firebase").FirestoreModelIdentityWithParent<import("@dereekb/firebase").FirestoreModelIdentityWithParent<import("@dereekb/firebase").RootFirestoreModelIdentity<"mockItem", "mi">, "mockItemSub", "misi">, "mockItemSubItemDeep", "misid">;
181
181
  }
182
182
  export declare type MockItemSubItemDeepData = ExpectedFirestoreModelData<MockItemSubItemDeep>;
@@ -27,7 +27,7 @@ exports.mockItemConverter = (0, firebase_1.snapshotConverterFunctions)({
27
27
  * @returns
28
28
  */
29
29
  function mockItemCollectionReference(context) {
30
- return context.collection(exports.mockItemIdentity.collection);
30
+ return context.collection(exports.mockItemIdentity.collectionName);
31
31
  }
32
32
  exports.mockItemCollectionReference = mockItemCollectionReference;
33
33
  function mockItemFirestoreCollection(firestoreContext) {
@@ -71,7 +71,7 @@ exports.mockItemPrivateConverter = (0, firebase_1.snapshotConverterFunctions)({
71
71
  */
72
72
  function mockItemPrivateCollectionReferenceFactory(context) {
73
73
  return (parent) => {
74
- return context.subcollection(parent.documentRef, exports.mockItemPrivateIdentity.collection);
74
+ return context.subcollection(parent.documentRef, exports.mockItemPrivateIdentity.collectionName);
75
75
  };
76
76
  }
77
77
  exports.mockItemPrivateCollectionReferenceFactory = mockItemPrivateCollectionReferenceFactory;
@@ -92,7 +92,7 @@ function mockItemPrivateFirestoreCollection(firestoreContext) {
92
92
  }
93
93
  exports.mockItemPrivateFirestoreCollection = mockItemPrivateFirestoreCollection;
94
94
  function mockItemPrivateCollectionReference(context) {
95
- return context.collectionGroup(exports.mockItemPrivateIdentity.collection);
95
+ return context.collectionGroup(exports.mockItemPrivateIdentity.collectionName);
96
96
  }
97
97
  exports.mockItemPrivateCollectionReference = mockItemPrivateCollectionReference;
98
98
  function mockItemPrivateFirestoreCollectionGroup(firestoreContext) {
@@ -197,7 +197,7 @@ exports.mockItemSubItemConverter = (0, firebase_1.snapshotConverterFunctions)({
197
197
  });
198
198
  function mockItemSubItemCollectionReferenceFactory(context) {
199
199
  return (parent) => {
200
- return context.subcollection(parent.documentRef, exports.mockItemSubItemIdentity.collection);
200
+ return context.subcollection(parent.documentRef, exports.mockItemSubItemIdentity.collectionName);
201
201
  };
202
202
  }
203
203
  exports.mockItemSubItemCollectionReferenceFactory = mockItemSubItemCollectionReferenceFactory;
@@ -217,7 +217,7 @@ function mockItemSubItemFirestoreCollection(firestoreContext) {
217
217
  }
218
218
  exports.mockItemSubItemFirestoreCollection = mockItemSubItemFirestoreCollection;
219
219
  function mockItemSubItemCollectionReference(context) {
220
- return context.collectionGroup(exports.mockItemSubItemIdentity.collection);
220
+ return context.collectionGroup(exports.mockItemSubItemIdentity.collectionName);
221
221
  }
222
222
  exports.mockItemSubItemCollectionReference = mockItemSubItemCollectionReference;
223
223
  function mockItemSubItemFirestoreCollectionGroup(firestoreContext) {
@@ -252,7 +252,7 @@ exports.mockItemSubItemDeepConverter = (0, firebase_1.snapshotConverterFunctions
252
252
  });
253
253
  function mockItemSubItemDeepCollectionReferenceFactory(context) {
254
254
  return (parent) => {
255
- return context.subcollection(parent.documentRef, exports.mockItemSubItemDeepIdentity.collection);
255
+ return context.subcollection(parent.documentRef, exports.mockItemSubItemDeepIdentity.collectionName);
256
256
  };
257
257
  }
258
258
  exports.mockItemSubItemDeepCollectionReferenceFactory = mockItemSubItemDeepCollectionReferenceFactory;
@@ -272,7 +272,7 @@ function mockItemSubItemDeepFirestoreCollection(firestoreContext) {
272
272
  }
273
273
  exports.mockItemSubItemDeepFirestoreCollection = mockItemSubItemDeepFirestoreCollection;
274
274
  function mockItemSubItemDeepCollectionReference(context) {
275
- return context.collectionGroup(exports.mockItemSubItemDeepIdentity.collection);
275
+ return context.collectionGroup(exports.mockItemSubItemDeepIdentity.collectionName);
276
276
  }
277
277
  exports.mockItemSubItemDeepCollectionReference = mockItemSubItemDeepCollectionReference;
278
278
  function mockItemSubItemDeepFirestoreCollectionGroup(firestoreContext) {
@@ -1 +1 @@
1
- {"version":3,"file":"firestore.mock.item.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firestore.mock.item.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/firestore.mock.item.ts"],"names":[],"mappings":";;;AAAA,wCAA6D;AAC7D,gDAwB2B;AAM3B,kBAAkB;AACL,QAAA,gBAAgB,GAAG,IAAA,iCAAsB,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAgBzE,MAAa,gBAAiB,SAAQ,oCAA8E;IAClH,IAAI,aAAa;QACf,OAAO,wBAAgB,CAAC;IAC1B,CAAC;CACF;AAJD,4CAIC;AAiBD;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAA,qCAA0B,EAAyB;IAClF,MAAM,EAAE;QACN,KAAK,EAAE,IAAA,kCAAuB,GAAE;QAChC,IAAI,EAAE,IAAA,2BAAgB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;KAC1C;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACH,SAAgB,2BAA2B,CAAC,OAAyB;IACnE,OAAO,OAAO,CAAC,UAAU,CAAC,wBAAgB,CAAC,cAAc,CAAC,CAAC;AAC7D,CAAC;AAFD,kEAEC;AAID,SAAgB,2BAA2B,CAAC,gBAAkC;IAC5E,OAAO,gBAAgB,CAAC,mBAAmB,CAAC;QAC1C,SAAS,EAAE,yBAAiB;QAC5B,aAAa,EAAE,wBAAgB;QAC/B,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,2BAA2B,CAAC,gBAAgB,CAAC;QACzD,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC;QAClD,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AATD,kEASC;AAED,wBAAwB;AACX,QAAA,uBAAuB,GAAG,IAAA,iCAAsB,EAAC,wBAAgB,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;AAe1G;;GAEG;AACH,MAAa,uBAAwB,SAAQ,oCAAmG;IAC9I,IAAI,aAAa;QACf,OAAO,+BAAuB,CAAC;IACjC,CAAC;CACF;AAJD,0DAIC;AAIY,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAE7C;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAA,qCAA0B,EAAC;IACjE,gBAAgB,EAAE,IAAA,4BAAqB,EAAuC;QAC5E,QAAQ,EAAE,IAAA,kCAAuB,GAAE;QACnC,MAAM,EAAE,IAAA,qCAA0B,GAAE;QACpC,SAAS,EAAE,IAAA,wBAAa,EAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;KACrD,CAAC;CACH,CAAC,CAAC;AAEH;;;;;GAKG;AACH,SAAgB,yCAAyC,CAAC,OAAyB;IACjF,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,CAAC,CAAC;IAC3F,CAAC,CAAC;AACJ,CAAC;AAJD,8FAIC;AAKD,SAAgB,kCAAkC,CAAC,gBAAkC;IACnF,MAAM,OAAO,GAAG,yCAAyC,CAAC,gBAAgB,CAAC,CAAC;IAE5E,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,gBAAgB,CAAC,6BAA6B,CAAC;YACpD,aAAa,EAAE,+BAAuB;YACtC,SAAS,EAAE,gCAAwB;YACnC,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;YAC3B,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;YACzD,gBAAgB;YAChB,MAAM;YACN,oBAAoB,EAAE,iCAAyB;SAChD,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,gFAeC;AAED,SAAgB,kCAAkC,CAAC,OAAyB;IAC1E,OAAO,OAAO,CAAC,eAAe,CAAC,+BAAuB,CAAC,cAAc,CAAC,CAAC;AACzE,CAAC;AAFD,gFAEC;AAID,SAAgB,uCAAuC,CAAC,gBAAkC;IACxF,OAAO,gBAAgB,CAAC,wBAAwB,CAAC;QAC/C,aAAa,EAAE,+BAAuB;QACtC,SAAS,EAAE,gCAAwB;QACnC,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,kCAAkC,CAAC,gBAAgB,CAAC;QAC/D,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACrG,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AATD,0FASC;AAED,qBAAqB;AACR,QAAA,oBAAoB,GAAG,IAAA,iCAAsB,EAAC,wBAAgB,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AAWpG;;GAEG;AACH,MAAa,oBAAqB,SAAQ,oCAA0F;IAClI,IAAI,aAAa;QACf,OAAO,4BAAoB,CAAC;IAC9B,CAAC;CACF;AAJD,oDAIC;AAID;;GAEG;AACU,QAAA,0BAA0B,GAAG,cAAc,CAAC;AAC5C,QAAA,sBAAsB,GAAG,GAAG,CAAC;AAE1C;;GAEG;AACU,QAAA,qBAAqB,GAAG,IAAA,qCAA0B,EAAC;IAC9D,gBAAgB,EAAE,IAAA,4BAAqB,EAAiC;QACtE,GAAG,EAAE,IAAA,uBAAY,GAAE;QACnB,IAAI,EAAE,IAAA,0BAAe,GAAE;KACxB,CAAC;CACH,CAAC,CAAC;AAEH;;;;;GAKG;AACH,SAAgB,sCAAsC,CAAC,OAAyB;IAC9E,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,kCAA0B,CAAC,CAAC;IAC/E,CAAC,CAAC;AACJ,CAAC;AAJD,wFAIC;AAEY,QAAA,2BAA2B,GAAG,IAAA,qDAA0C,GAAgB,CAAC;AAKtG,SAAgB,+BAA+B,CAAC,gBAAkC;IAChF,MAAM,OAAO,GAAG,sCAAsC,CAAC,gBAAgB,CAAC,CAAC;IAEzE,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,gBAAgB,CAAC,6BAA6B,CAAC;YACpD,aAAa,EAAE,4BAAoB;YACnC,SAAS,EAAE,6BAAqB;YAChC,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;YAC3B,eAAe,EAAE,mCAA2B;YAC5C,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;YACtD,gBAAgB;YAChB,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,0EAeC;AAED,SAAgB,+BAA+B,CAAC,OAAyB;IACvE,OAAO,OAAO,CAAC,eAAe,CAAC,kCAA0B,CAAC,CAAC;AAC7D,CAAC;AAFD,0EAEC;AAID,SAAgB,oCAAoC,CAAC,gBAAkC;IACrF,OAAO,gBAAgB,CAAC,wBAAwB,CAAC;QAC/C,aAAa,EAAE,4BAAoB;QACnC,SAAS,EAAE,6BAAqB;QAChC,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,+BAA+B,CAAC,gBAAgB,CAAC;QAC5D,eAAe,EAAE,mCAA2B;QAC5C,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,IAAI,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QAClG,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AAVD,oFAUC;AAED,wBAAwB;AACX,QAAA,uBAAuB,GAAG,IAAA,iCAAsB,EAAC,wBAAgB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAavG;;GAEG;AACH,MAAa,uBAAwB,SAAQ,8CAAuH;IAClK,IAAI,aAAa;QACf,OAAO,+BAAuB,CAAC;IACjC,CAAC;CACF;AAJD,0DAIC;AAID;;GAEG;AACU,QAAA,wBAAwB,GAAG,IAAA,qCAA0B,EAAuC;IACvG,MAAM,EAAE;QACN,KAAK,EAAE,IAAA,kCAAuB,GAAE;KACjC;CACF,CAAC,CAAC;AAEH,SAAgB,yCAAyC,CAAC,OAAyB;IACjF,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,CAAC,CAAC;IAC3F,CAAC,CAAC;AACJ,CAAC;AAJD,8FAIC;AAKD,SAAgB,kCAAkC,CAAC,gBAAkC;IACnF,MAAM,OAAO,GAAG,yCAAyC,CAAC,gBAAgB,CAAC,CAAC;IAE5E,OAAO,CAAC,MAAwB,EAAE,EAAE;QAClC,OAAO,gBAAgB,CAAC,6BAA6B,CAAC;YACpD,aAAa,EAAE,+BAAuB;YACtC,SAAS,EAAE,gCAAwB;YACnC,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;YAC3B,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;YACzD,gBAAgB;YAChB,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAdD,gFAcC;AAED,SAAgB,kCAAkC,CAAC,OAAyB;IAC1E,OAAO,OAAO,CAAC,eAAe,CAAC,+BAAuB,CAAC,cAAc,CAAC,CAAC;AACzE,CAAC;AAFD,gFAEC;AAID,SAAgB,uCAAuC,CAAC,gBAAkC;IACxF,OAAO,gBAAgB,CAAC,wBAAwB,CAAC;QAC/C,aAAa,EAAE,+BAAuB;QACtC,SAAS,EAAE,gCAAwB;QACnC,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,kCAAkC,CAAC,gBAAgB,CAAC;QAC/D,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACrG,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AATD,0FASC;AAED,qBAAqB;AACR,QAAA,2BAA2B,GAAG,IAAA,iCAAsB,EAAC,+BAAuB,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;AAa3H;;GAEG;AACH,MAAa,2BAA4B,SAAQ,8CAA0I;IACzL,IAAI,aAAa;QACf,OAAO,mCAA2B,CAAC;IACrC,CAAC;CACF;AAJD,kEAIC;AAID;;GAEG;AACU,QAAA,4BAA4B,GAAG,IAAA,qCAA0B,EAA+C;IACnH,MAAM,EAAE;QACN,KAAK,EAAE,IAAA,kCAAuB,GAAE;KACjC;CACF,CAAC,CAAC;AAEH,SAAgB,6CAA6C,CAAC,OAAyB;IACrF,OAAO,CAAC,MAA+B,EAAE,EAAE;QACzC,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,mCAA2B,CAAC,cAAc,CAAC,CAAC;IAC/F,CAAC,CAAC;AACJ,CAAC;AAJD,sGAIC;AAKD,SAAgB,sCAAsC,CAAC,gBAAkC;IACvF,MAAM,OAAO,GAAG,6CAA6C,CAAC,gBAAgB,CAAC,CAAC;IAEhF,OAAO,CAAC,MAA+B,EAAE,EAAE;QACzC,OAAO,gBAAgB,CAAC,6BAA6B,CAAC;YACpD,aAAa,EAAE,mCAA2B;YAC1C,SAAS,EAAE,oCAA4B;YACvC,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;YAC3B,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7D,gBAAgB;YAChB,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAdD,wFAcC;AAED,SAAgB,sCAAsC,CAAC,OAAyB;IAC9E,OAAO,OAAO,CAAC,eAAe,CAAC,mCAA2B,CAAC,cAAc,CAAC,CAAC;AAC7E,CAAC;AAFD,wFAEC;AAID,SAAgB,2CAA2C,CAAC,gBAAkC;IAC5F,OAAO,gBAAgB,CAAC,wBAAwB,CAAC;QAC/C,aAAa,EAAE,mCAA2B;QAC1C,SAAS,EAAE,oCAA4B;QACvC,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,sCAAsC,CAAC,gBAAgB,CAAC;QACnE,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,IAAI,2BAA2B,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACzG,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AATD,kGASC"}