@dereekb/firebase 4.0.1 → 5.0.1

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 (103) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/LICENSE +21 -0
  3. package/package.json +13 -6
  4. package/src/lib/client/firestore/driver.accessor.batch.d.ts +5 -5
  5. package/src/lib/client/firestore/driver.accessor.batch.js +1 -1
  6. package/src/lib/client/firestore/driver.accessor.batch.js.map +1 -1
  7. package/src/lib/client/firestore/driver.accessor.d.ts +1 -1
  8. package/src/lib/client/firestore/driver.accessor.default.d.ts +4 -4
  9. package/src/lib/client/firestore/driver.accessor.default.js +1 -1
  10. package/src/lib/client/firestore/driver.accessor.default.js.map +1 -1
  11. package/src/lib/client/firestore/driver.accessor.js.map +1 -1
  12. package/src/lib/client/firestore/driver.accessor.transaction.d.ts +5 -5
  13. package/src/lib/client/firestore/driver.accessor.transaction.js +1 -1
  14. package/src/lib/client/firestore/driver.accessor.transaction.js.map +1 -1
  15. package/src/lib/client/firestore/driver.d.ts +1 -2
  16. package/src/lib/client/firestore/driver.query.d.ts +6 -6
  17. package/src/lib/client/firestore/driver.query.js +2 -2
  18. package/src/lib/client/firestore/driver.query.js.map +1 -1
  19. package/src/lib/client/firestore/firestore.d.ts +1 -1
  20. package/src/lib/client/function/function.d.ts +2 -2
  21. package/src/lib/client/function/function.factory.d.ts +2 -2
  22. package/src/lib/client/function/function.factory.js.map +1 -1
  23. package/src/lib/common/firestore/accessor/accessor.batch.d.ts +2 -2
  24. package/src/lib/common/firestore/accessor/accessor.d.ts +10 -9
  25. package/src/lib/common/firestore/accessor/accessor.default.d.ts +1 -1
  26. package/src/lib/common/firestore/accessor/accessor.js.map +1 -1
  27. package/src/lib/common/firestore/accessor/accessor.transaction.d.ts +3 -3
  28. package/src/lib/common/firestore/accessor/context.batch.d.ts +2 -2
  29. package/src/lib/common/firestore/accessor/context.d.ts +1 -1
  30. package/src/lib/common/firestore/accessor/context.default.d.ts +1 -1
  31. package/src/lib/common/firestore/accessor/context.transaction.d.ts +2 -2
  32. package/src/lib/common/firestore/accessor/document.js +3 -2
  33. package/src/lib/common/firestore/accessor/document.js.map +1 -1
  34. package/src/lib/common/firestore/accessor/document.utility.js +4 -4
  35. package/src/lib/common/firestore/accessor/document.utility.js.map +1 -1
  36. package/src/lib/common/firestore/collection/collection.d.ts +10 -10
  37. package/src/lib/common/firestore/collection/collection.js +2 -2
  38. package/src/lib/common/firestore/collection/collection.js.map +1 -1
  39. package/src/lib/common/firestore/collection/collection.query.d.ts +5 -5
  40. package/src/lib/common/firestore/collection/collection.query.js +3 -3
  41. package/src/lib/common/firestore/collection/collection.query.js.map +1 -1
  42. package/src/lib/common/firestore/collection/subcollection.d.ts +1 -1
  43. package/src/lib/common/firestore/collection/subcollection.js.map +1 -1
  44. package/src/lib/common/firestore/collection/subcollection.single.d.ts +1 -1
  45. package/src/lib/common/firestore/collection/subcollection.single.js.map +1 -1
  46. package/src/lib/common/firestore/context.d.ts +3 -4
  47. package/src/lib/common/firestore/context.js.map +1 -1
  48. package/src/lib/common/firestore/driver/driver.d.ts +2 -2
  49. package/src/lib/common/firestore/driver/query.d.ts +2 -2
  50. package/src/lib/common/firestore/driver/query.handler.d.ts +1 -1
  51. package/src/lib/common/firestore/driver/query.handler.js.map +1 -1
  52. package/src/lib/common/firestore/driver/transaction.d.ts +4 -1
  53. package/src/lib/common/firestore/query/accumulator.d.ts +5 -5
  54. package/src/lib/common/firestore/query/accumulator.js +1 -1
  55. package/src/lib/common/firestore/query/accumulator.js.map +1 -1
  56. package/src/lib/common/firestore/query/constraint.d.ts +13 -9
  57. package/src/lib/common/firestore/query/constraint.js +3 -3
  58. package/src/lib/common/firestore/query/constraint.js.map +1 -1
  59. package/src/lib/common/firestore/query/iterator.d.ts +6 -6
  60. package/src/lib/common/firestore/query/iterator.js +7 -6
  61. package/src/lib/common/firestore/query/iterator.js.map +1 -1
  62. package/src/lib/common/firestore/query/query.d.ts +4 -4
  63. package/src/lib/common/firestore/query/query.util.d.ts +2 -2
  64. package/src/lib/common/firestore/query/query.util.js +2 -3
  65. package/src/lib/common/firestore/query/query.util.js.map +1 -1
  66. package/src/lib/common/firestore/query/watcher.d.ts +7 -7
  67. package/src/lib/common/firestore/query/watcher.js +13 -9
  68. package/src/lib/common/firestore/query/watcher.js.map +1 -1
  69. package/src/lib/common/firestore/reference.d.ts +2 -2
  70. package/src/lib/common/firestore/snapshot/snapshot.d.ts +61 -12
  71. package/src/lib/common/firestore/snapshot/snapshot.field.d.ts +37 -20
  72. package/src/lib/common/firestore/snapshot/snapshot.field.js +60 -22
  73. package/src/lib/common/firestore/snapshot/snapshot.field.js.map +1 -1
  74. package/src/lib/common/firestore/snapshot/snapshot.js +12 -5
  75. package/src/lib/common/firestore/snapshot/snapshot.js.map +1 -1
  76. package/src/lib/common/firestore/types.d.ts +14 -9
  77. package/src/lib/common/firestore/types.js +1 -2
  78. package/src/lib/common/firestore/types.js.map +1 -1
  79. package/src/lib/common/function/action.d.ts +1 -1
  80. package/src/lib/model/user.d.ts +2 -3
  81. package/test/CHANGELOG.md +22 -0
  82. package/test/package.json +7 -8
  83. package/test/src/lib/client/firestore.d.ts +1 -1
  84. package/test/src/lib/client/firestore.js.map +1 -1
  85. package/test/src/lib/common/firestore.js +1 -1
  86. package/test/src/lib/common/firestore.js.map +1 -1
  87. package/test/src/lib/common/firestore.mock.d.ts +2 -2
  88. package/test/src/lib/common/firestore.mock.item.d.ts +44 -20
  89. package/test/src/lib/common/firestore.mock.item.fixture.d.ts +1 -1
  90. package/test/src/lib/common/firestore.mock.item.fixture.js +3 -3
  91. package/test/src/lib/common/firestore.mock.item.fixture.js.map +1 -1
  92. package/test/src/lib/common/firestore.mock.item.js +24 -26
  93. package/test/src/lib/common/firestore.mock.item.js.map +1 -1
  94. package/test/src/lib/common/firestore.mock.js.map +1 -1
  95. package/test/src/lib/common/test.driver.accessor.d.ts +1 -1
  96. package/test/src/lib/common/test.driver.accessor.js +37 -35
  97. package/test/src/lib/common/test.driver.accessor.js.map +1 -1
  98. package/test/src/lib/common/test.driver.query.d.ts +1 -1
  99. package/test/src/lib/common/test.driver.query.js +43 -8
  100. package/test/src/lib/common/test.driver.query.js.map +1 -1
  101. package/test/src/lib/common/test.iterator.d.ts +1 -1
  102. package/test/src/lib/common/test.iterator.js +8 -8
  103. package/test/src/lib/common/test.iterator.js.map +1 -1
@@ -1,27 +1,27 @@
1
- import { FirestoreDocument, FirestoreDocumentAccessorFactory, FirestoreDocumentAccessorFactoryConfig, FirestoreDocumentAccessorForTransactionFactory, FirestoreDocumentAccessorForWriteBatchFactory } from "../accessor/document";
2
- import { FirestoreItemPageIterationBaseConfig, FirestoreItemPageIterationFactory } from "../query/iterator";
3
- import { CollectionReferenceRef, FirestoreContextReference } from "../reference";
1
+ import { FirestoreDocument, FirestoreDocumentAccessorFactory, FirestoreDocumentAccessorFactoryConfig, FirestoreDocumentAccessorForTransactionFactory, FirestoreDocumentAccessorForWriteBatchFactory } from '../accessor/document';
2
+ import { FirestoreItemPageIterationBaseConfig, FirestoreItemPageIterationFactory } from '../query/iterator';
3
+ import { CollectionReferenceRef, FirestoreContextReference } from '../reference';
4
4
  import { FirestoreQueryFactory } from '../query/query';
5
5
  import { FirestoreDrivers } from '../driver/driver';
6
- import { FirestoreCollectionQueryFactory } from "./collection.query";
6
+ import { FirestoreCollectionQueryFactory } from './collection.query';
7
7
  /**
8
8
  * FirestoreCollection configuration
9
9
  */
10
10
  export interface FirestoreCollectionConfig<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreContextReference, FirestoreDrivers, FirestoreItemPageIterationBaseConfig<T>, FirestoreDocumentAccessorFactoryConfig<T, D> {
11
11
  }
12
12
  /**
13
- * Instance that provides several accessors for accessing documents of a collection.
14
- */
13
+ * Instance that provides several accessors for accessing documents of a collection.
14
+ */
15
15
  export interface FirestoreCollection<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends FirestoreContextReference, CollectionReferenceRef<T>, FirestoreItemPageIterationFactory<T>, FirestoreDocumentAccessorFactory<T, D>, FirestoreQueryFactory<T>, FirestoreDocumentAccessorForTransactionFactory<T, D>, FirestoreDocumentAccessorForWriteBatchFactory<T, D>, FirestoreCollectionQueryFactory<T, D> {
16
16
  readonly config: FirestoreCollectionConfig<T, D>;
17
17
  }
18
18
  /**
19
- * Ref to a FirestoreCollection
20
- */
19
+ * Ref to a FirestoreCollection
20
+ */
21
21
  export interface FirestoreCollectionRef<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> {
22
22
  readonly firestoreCollection: FirestoreCollection<T, D>;
23
23
  }
24
24
  /**
25
- * Creates a new FirestoreCollection from the input config.
26
- */
25
+ * Creates a new FirestoreCollection from the input config.
26
+ */
27
27
  export declare function makeFirestoreCollection<T, D extends FirestoreDocument<T>>(config: FirestoreCollectionConfig<T, D>): FirestoreCollection<T, D>;
@@ -6,8 +6,8 @@ const iterator_1 = require("../query/iterator");
6
6
  const query_1 = require("../query/query");
7
7
  const collection_query_1 = require("./collection.query");
8
8
  /**
9
- * Creates a new FirestoreCollection from the input config.
10
- */
9
+ * Creates a new FirestoreCollection from the input config.
10
+ */
11
11
  function makeFirestoreCollection(config) {
12
12
  const { collection, firestoreContext, firestoreAccessorDriver } = config;
13
13
  const firestoreIteration = (0, iterator_1.firestoreItemPageIterationFactory)(config);
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.ts"],"names":[],"mappings":";;;AAAA,mDAAyV;AACzV,gDAA0L;AAE1L,0CAA8E;AAE9E,yDAAsG;AAyBtG;;EAEE;AACF,SAAgB,uBAAuB,CAAoC,MAAuC;IAChH,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;IACzE,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;QACV,gBAAgB,IACb,yBAAyB,KAC5B,kBAAkB;QAClB,KAAK;QACL,aAAa,IACb;AACJ,CAAC;AAnBD,0DAmBC"}
1
+ {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.ts"],"names":[],"mappings":";;;AAAA,mDAAyV;AACzV,gDAA0L;AAE1L,0CAA8E;AAE9E,yDAAsG;AA6BtG;;GAEG;AACH,SAAgB,uBAAuB,CAAoC,MAAuC;IAChH,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;IACzE,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;QACV,gBAAgB,IACb,yBAAyB,KAC5B,kBAAkB;QAClB,KAAK;QACL,aAAa,IACb;AACJ,CAAC;AAnBD,0DAmBC"}
@@ -1,9 +1,9 @@
1
1
  import { FirestoreDocumentAccessorContextExtension } from './../accessor/document';
2
- import { ArrayOrValue, Maybe } from "@dereekb/util";
3
- import { FirestoreDocument } from "../accessor/document";
4
- import { FirestoreExecutableQuery, FirestoreQueryFactory } from "../query";
5
- import { FirestoreQueryConstraint } from "../query/constraint";
6
- import { Transaction } from "../types";
2
+ import { ArrayOrValue, Maybe } from '@dereekb/util';
3
+ import { FirestoreDocument } from '../accessor/document';
4
+ import { FirestoreExecutableQuery, FirestoreQueryFactory } from '../query';
5
+ import { FirestoreQueryConstraint } from '../query/constraint';
6
+ import { Transaction } from '../types';
7
7
  import { Observable } from 'rxjs';
8
8
  export interface FirestoreCollectionExecutableDocumentQuery<T, D extends FirestoreDocument<T>> {
9
9
  readonly baseQuery: FirestoreExecutableQuery<T>;
@@ -12,10 +12,10 @@ function firestoreCollectionQueryFactory(queryFactory, accessorContext) {
12
12
  baseQuery,
13
13
  getFirstDoc: (transaction) => tslib_1.__awaiter(this, void 0, void 0, function* () {
14
14
  const result = yield baseQuery.getFirstDoc(transaction);
15
- return (result) ? documentLoader([result.ref])[0] : undefined;
15
+ return result ? documentLoader([result.ref])[0] : undefined;
16
16
  }),
17
- getDocs: (transaction) => baseQuery.getDocs(transaction).then(x => documentLoader((0, query_1.documentReferencesFromSnapshot)(x))),
18
- streamDocs: () => baseQuery.streamDocs().pipe((0, rxjs_1.map)(x => documentLoader((0, query_1.documentReferencesFromSnapshot)(x)))),
17
+ getDocs: (transaction) => baseQuery.getDocs(transaction).then((x) => documentLoader((0, query_1.documentReferencesFromSnapshot)(x))),
18
+ streamDocs: () => baseQuery.streamDocs().pipe((0, rxjs_1.map)((x) => documentLoader((0, query_1.documentReferencesFromSnapshot)(x)))),
19
19
  filter: (...queryConstraints) => wrapQuery(baseQuery.filter(...queryConstraints))
20
20
  };
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"collection.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.query.ts"],"names":[],"mappings":";;;;AAGA,oCAA2G;AAG3G,+BAAuC;AACvC,0CAAsD;AAiCtD,SAAgB,+BAA+B,CAAoC,YAAsC,EAAE,eAAgE;IACzL,MAAM,cAAc,GAAG,IAAA,kCAAuB,EAAC,eAAe,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAiG,CAAC,SAAsC,EAAE,EAAE;QACzJ,OAAO;YACL,SAAS;YACT,WAAW,EAAE,CAAO,WAAyB,EAAE,EAAE;gBAC/C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACxD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,CAAC,CAAA;YACD,OAAO,EAAE,CAAC,WAAyB,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,IAAA,sCAA8B,EAAC,CAAC,CAAC,CAAC,CAAC;YACnI,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,IAAA,sCAA8B,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1G,MAAM,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAAC,CAAC;SAC5H,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,aAAa,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,CAAC;KACrI,CAAC;AACJ,CAAC;AAnBD,0EAmBC"}
1
+ {"version":3,"file":"collection.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/collection.query.ts"],"names":[],"mappings":";;;;AAGA,oCAA2G;AAG3G,+BAAuC;AACvC,0CAAsD;AAiCtD,SAAgB,+BAA+B,CAAoC,YAAsC,EAAE,eAAgE;IACzL,MAAM,cAAc,GAAG,IAAA,kCAAuB,EAAC,eAAe,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAiG,CAAC,SAAsC,EAAE,EAAE;QACzJ,OAAO;YACL,SAAS;YACT,WAAW,EAAE,CAAO,WAAyB,EAAE,EAAE;gBAC/C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACxD,OAAO,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,CAAC,CAAA;YACD,OAAO,EAAE,CAAC,WAAyB,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAA,sCAA8B,EAAC,CAAC,CAAC,CAAC,CAAC;YACrI,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAA,sCAA8B,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5G,MAAM,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAAC,CAAC;SAC5H,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,aAAa,EAAE,CAAC,GAAG,gBAA0D,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,CAAC;KACrI,CAAC;AACJ,CAAC;AAnBD,0EAmBC"}
@@ -1,4 +1,4 @@
1
- import { FirestoreDocument } from "../accessor/document";
1
+ import { FirestoreDocument } from '../accessor/document';
2
2
  import { FirestoreCollection, FirestoreCollectionConfig } from './collection';
3
3
  /**
4
4
  * Used for collections that are a subcollection of a document.
@@ -1 +1 @@
1
- {"version":3,"file":"subcollection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/subcollection.ts"],"names":[],"mappings":";;;AACA,6CAAuG;AA0BvG;;GAEG;AACH,SAAgB,iCAAiC,CAAyH,MAAyD;IACjO,MAAM,MAAM,GAAG,IAAA,oCAAuB,EAAC,MAAM,CAA+C,CAAC;IAC7F,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,8EAIC"}
1
+ {"version":3,"file":"subcollection.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/subcollection.ts"],"names":[],"mappings":";;;AACA,6CAAuG;AAyBvG;;GAEG;AACH,SAAgB,iCAAiC,CAAyH,MAAyD;IACjO,MAAM,MAAM,GAAG,IAAA,oCAAuB,EAAC,MAAM,CAA+C,CAAC;IAC7F,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,8EAIC"}
@@ -1,4 +1,4 @@
1
- import { FirestoreDocument, FirestoreSingleDocumentAccessor } from "../accessor/document";
1
+ import { FirestoreDocument, FirestoreSingleDocumentAccessor } from '../accessor/document';
2
2
  import { FirestoreCollectionWithParent, FirestoreCollectionWithParentConfig } from './subcollection';
3
3
  export interface SingleItemFirestoreCollectionConfig<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends FirestoreCollectionWithParentConfig<T, PT, D, PD> {
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"subcollection.single.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/subcollection.single.ts"],"names":[],"mappings":";;;AAAA,mDAA2H;AAC3H,mDAAwI;AAiBxI,SAAgB,iCAAiC,CAAyH,MAAyD;IACjO,MAAM,UAAU,GAAG,IAAA,iDAAiC,EAAC,MAAM,CAAC,CAAC;IAE7D,uBACE,UAAU,IACP,IAAA,0CAA+B,EAAC;QACjC,SAAS,EAAE,UAAU;QACrB,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;KAClD,CAAC,EACF;AACJ,CAAC;AAVD,8EAUC"}
1
+ {"version":3,"file":"subcollection.single.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/collection/subcollection.single.ts"],"names":[],"mappings":";;;AAAA,mDAA2H;AAC3H,mDAAwI;AAcxI,SAAgB,iCAAiC,CAAyH,MAAyD;IACjO,MAAM,UAAU,GAAG,IAAA,iDAAiC,EAAC,MAAM,CAAC,CAAC;IAE7D,uBACE,UAAU,IACP,IAAA,0CAA+B,EAAC;QACjC,SAAS,EAAE,UAAU;QACrB,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;KAClD,CAAC,EACF;AACJ,CAAC;AAVD,8EAUC"}
@@ -1,8 +1,8 @@
1
1
  import { FirestoreDocument } from './accessor/document';
2
- import { FirestoreCollection, FirestoreCollectionConfig, FirestoreCollectionWithParent, SingleItemFirestoreCollection } from "./collection";
2
+ import { FirestoreCollection, FirestoreCollectionConfig, FirestoreCollectionWithParent, SingleItemFirestoreCollection } from './collection';
3
3
  import { FirestoreDrivers } from './driver/driver';
4
4
  import { WriteBatchFactoryReference, RunTransactionFactoryReference } from './driver';
5
- import { DocumentReference, CollectionReference, DocumentData, Firestore } from "./types";
5
+ import { DocumentReference, CollectionReference, DocumentData, Firestore } from './types';
6
6
  /**
7
7
  * A @dereekb/firestore FirestoreContext. Wraps the main Firestore context and the drivers, as well as utility/convenience functions.
8
8
  */
@@ -15,8 +15,7 @@ export interface FirestoreContext<F extends Firestore = Firestore> extends RunTr
15
15
  firestoreCollectionWithParent<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>>(config: FirestoreContextFirestoreCollectionWithParentConfig<T, PT, D, PD>): FirestoreCollectionWithParent<T, PT, D, PD>;
16
16
  singleItemFirestoreCollection<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>>(config: FirestoreContextSingleItemFirestoreCollectionConfig<T, PT, D, PD>): SingleItemFirestoreCollection<T, PT, D, PD>;
17
17
  }
18
- export interface FirestoreContextFirestoreCollectionConfig<T, D extends FirestoreDocument<T>> extends Omit<FirestoreCollectionConfig<T, D>, 'driverIdentifier' | 'driverType' | 'firestoreQueryDriver' | 'firestoreAccessorDriver'> {
19
- }
18
+ export declare type FirestoreContextFirestoreCollectionConfig<T, D extends FirestoreDocument<T>> = Omit<FirestoreCollectionConfig<T, D>, 'driverIdentifier' | 'driverType' | 'firestoreQueryDriver' | 'firestoreAccessorDriver'>;
20
19
  export interface FirestoreContextFirestoreCollectionWithParentConfig<T, PT, D extends FirestoreDocument<T> = FirestoreDocument<T>, PD extends FirestoreDocument<PT> = FirestoreDocument<PT>> extends FirestoreContextFirestoreCollectionConfig<T, D> {
21
20
  readonly parent: PD;
22
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/context.ts"],"names":[],"mappings":";;;AACA,6CAAqT;AA+BrT;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAkC,OAAyB;IAChG,OAAO,CAAC,SAAY,EAAE,EAAE;QACtB,MAAM,6BAA6B,GAAG,CAAoC,MAAmM,EAAE,EAAE,CAAC,iCAC7Q,MAAM,KACT,gBAAgB,EAAE,OAAO,EACzB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAC1C,UAAU,EAAE,OAAO,CAAC,UAAU,EAC9B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAClD,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,IACxD,CAAC;QAEH,MAAM,mBAAmB,GAAG,CAAoC,MAAuD,EAAE,EAAE,CAAC,IAAA,oCAAuB,EAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3L,MAAM,OAAO,GAAwB;YACnC,SAAS;YACT,OAAO;YACP,UAAU,EAAE,CAAC,IAAY,EAAE,GAAG,YAAsB,EAAE,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;YACrI,aAAa,EAAE,OAAO,CAAC,uBAAuB,CAAC,aAAa;YAC5D,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,8BAA8B,CAAC,SAAS,CAAC;YACzF,KAAK,EAAE,OAAO,CAAC,uBAAuB,CAAC,6BAA6B,CAAC,SAAS,CAAC;YAC/E,mBAAmB;YACnB,6BAA6B,CAAyH,WAA8D;gBAClN,MAAM,MAAM,GAAsD,6BAA6B,CAAC,WAAW,CAAsD,CAAC;gBAClK,OAAO,IAAA,8CAAiC,EAAC,MAAM,CAAC,CAAC;YACnD,CAAC;YACD,6BAA6B,CAAyH,WAA8E;gBAClO,MAAM,MAAM,GAAsD,6BAA6B,CAAC,WAAW,CAAsD,CAAC;gBAClK,OAAO,IAAA,8CAAiC,EAAC,MAAM,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;AACJ,CAAC;AAjCD,0DAiCC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/firestore/context.ts"],"names":[],"mappings":";;;AACA,6CAAqT;AA+BrT;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAkC,OAAyB;IAChG,OAAO,CAAC,SAAY,EAAE,EAAE;QACtB,MAAM,6BAA6B,GAAG,CAAyH,MAA+L,EAAE,EAAE,CAAC,iCAC9V,MAAM,KACT,gBAAgB,EAAE,OAAO,EACzB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAC1C,UAAU,EAAE,OAAO,CAAC,UAAU,EAC9B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAClD,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,IACxD,CAAC;QAEH,MAAM,mBAAmB,GAAG,CAAoC,MAAuD,EAAE,EAAE,CAAC,IAAA,oCAAuB,EAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3L,MAAM,OAAO,GAAwB;YACnC,SAAS;YACT,OAAO;YACP,UAAU,EAAE,CAAC,IAAY,EAAE,GAAG,YAAsB,EAAE,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;YACrI,aAAa,EAAE,OAAO,CAAC,uBAAuB,CAAC,aAAa;YAC5D,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,8BAA8B,CAAC,SAAS,CAAC;YACzF,KAAK,EAAE,OAAO,CAAC,uBAAuB,CAAC,6BAA6B,CAAC,SAAS,CAAC;YAC/E,mBAAmB;YACnB,6BAA6B,CAAyH,WAA8D;gBAClN,MAAM,MAAM,GAAsD,6BAA6B,CAAC,WAAW,CAAsD,CAAC;gBAClK,OAAO,IAAA,8CAAiC,EAAC,MAAM,CAAC,CAAC;YACnD,CAAC;YACD,6BAA6B,CAAyH,WAA8E;gBAClO,MAAM,MAAM,GAAsD,6BAA6B,CAAC,WAAW,CAAsD,CAAC;gBAClK,OAAO,IAAA,8CAAiC,EAAC,MAAM,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;AACJ,CAAC;AAjCD,0DAiCC"}
@@ -1,5 +1,5 @@
1
- import { FirestoreAccessorDriverRef } from "./accessor";
2
- import { FirestoreQueryDriverRef } from "./query";
1
+ import { FirestoreAccessorDriverRef } from './accessor';
2
+ import { FirestoreQueryDriverRef } from './query';
3
3
  export declare type FirestoreDriverIdentifier = string;
4
4
  export declare type FirestoreDriverType = 'production' | 'testing';
5
5
  /**
@@ -1,7 +1,7 @@
1
1
  import { SnapshotListenOptions, Transaction } from './../types';
2
2
  import { Observable } from 'rxjs';
3
- import { Query, QuerySnapshot } from "../types";
4
- import { FirestoreQueryConstraint } from "../query/constraint";
3
+ import { Query, QuerySnapshot } from '../types';
4
+ import { FirestoreQueryConstraint } from '../query/constraint';
5
5
  import { Maybe } from '@dereekb/util';
6
6
  export declare type FirestoreQueryDriverQueryFunction = <T>(query: Query<T>, ...queryConstraints: FirestoreQueryConstraint[]) => Query<T>;
7
7
  export interface FirestoreQueryConstraintFunctionsDriver {
@@ -1,5 +1,5 @@
1
1
  import { Query } from '../types';
2
- import { FirestoreQueryConstraintHandlerMap } from "../query/constraint";
2
+ import { FirestoreQueryConstraintHandlerMap } from '../query/constraint';
3
3
  import { FirestoreQueryConstraintFunctionsDriver } from './query';
4
4
  export interface MakeFirestoreQueryConstraintFunctionsDriver<B> {
5
5
  mapping: FirestoreQueryConstraintHandlerMap<B>;
@@ -1 +1 @@
1
- {"version":3,"file":"query.handler.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/query.handler.ts"],"names":[],"mappings":";;;AAAA,wCAA4C;AAW5C,SAAgB,2CAA2C,CAAI,MAAsD;IACnH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACxC,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,wBAAwB,GAAgB,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAsC,CAAI,KAAe,EAAE,GAAG,gBAA4C,EAAE,EAAE;QACvH,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAE1B,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAA2B,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;aACpG;YAED,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAE,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,OAAO;QACL,wBAAwB;QACxB,KAAK;KACN,CAAC;AACJ,CAAC;AAxBD,kGAwBC"}
1
+ {"version":3,"file":"query.handler.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/driver/query.handler.ts"],"names":[],"mappings":";;;AAAA,wCAA4C;AAW5C,SAAgB,2CAA2C,CAAI,MAAsD;IACnH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACxC,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,wBAAwB,GAAgB,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAsC,CAAI,KAAe,EAAE,GAAG,gBAA4C,EAAE,EAAE;QACvH,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAE1B,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAA2B,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;aACpG;YAED,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,OAAO;QACL,wBAAwB;QACxB,KAAK;KACN,CAAC;AACJ,CAAC;AAxBD,kGAwBC"}
@@ -2,9 +2,12 @@ import { Firestore, Transaction, ReadOnlyTransactionOptions, ReadWriteTransactio
2
2
  /**
3
3
  * Function that runs in a transaction context and returns a value.
4
4
  */
5
- export declare type TransactionFunction<T = any> = (transaction: Transaction) => Promise<T>;
5
+ export declare type TransactionFunction<T = unknown> = (transaction: Transaction) => Promise<T>;
6
6
  /**
7
7
  * Factory for running transactions. Creates a new Transaction, runs it with the input TransactionFunction, and returns the result.
8
+ *
9
+ * All transactions require a read. The read should occur before any writes occur. Not reading within a Transaction can leave
10
+ * the transaction in a bad state. (It also defeats the idempotent purpose of transactions!)
8
11
  */
9
12
  export declare type RunTransaction = <T>(fn: TransactionFunction<T>, options?: RunTransactionParams) => Promise<T>;
10
13
  export declare type RunTransactionParams = ReadOnlyTransactionOptions | ReadWriteTransactionOptions;
@@ -1,7 +1,7 @@
1
- import { ItemAccumulatorInstance, ItemAccumulatorMapFunction, PageItemIteration } from "@dereekb/rxjs";
2
- import { MapFunction } from "@dereekb/util";
3
- import { DocumentDataWithId, QueryDocumentSnapshotArray } from "../types";
4
- import { FirestoreItemPageIterationInstance } from "./iterator";
1
+ import { ItemAccumulatorInstance, ItemAccumulatorMapFunction, PageItemIteration } from '@dereekb/rxjs';
2
+ import { MapFunction } from '@dereekb/util';
3
+ import { DocumentDataWithId, QueryDocumentSnapshotArray } from '../types';
4
+ import { FirestoreItemPageIterationInstance } from './iterator';
5
5
  export declare type MappedFirebaseQuerySnapshotAccumulator<O, T> = ItemAccumulatorInstance<O, QueryDocumentSnapshotArray<T>, PageItemIteration<QueryDocumentSnapshotArray<T>>>;
6
6
  export declare type FirebaseQuerySnapshotAccumulator<T> = MappedFirebaseQuerySnapshotAccumulator<QueryDocumentSnapshotArray<T>, T>;
7
7
  /**
@@ -13,7 +13,7 @@ export declare type FirebaseQueryItemAccumulator<T> = MappedFirebaseQuerySnapsho
13
13
  *
14
14
  * @param iteration
15
15
  */
16
- export declare function firebaseQuerySnapshotAccumulator<O, T>(iteration: FirestoreItemPageIterationInstance<T>): FirebaseQuerySnapshotAccumulator<T>;
16
+ export declare function firebaseQuerySnapshotAccumulator<T>(iteration: FirestoreItemPageIterationInstance<T>): FirebaseQuerySnapshotAccumulator<T>;
17
17
  export declare function firebaseQuerySnapshotAccumulator<O, T>(iteration: FirestoreItemPageIterationInstance<T>, mapSnapshots?: ItemAccumulatorMapFunction<O, QueryDocumentSnapshotArray<T>>): MappedFirebaseQuerySnapshotAccumulator<O, T>;
18
18
  /**
19
19
  * Convenience function for creating a FirebaseQueryItemAccumulator
@@ -9,7 +9,7 @@ exports.firebaseQuerySnapshotAccumulator = firebaseQuerySnapshotAccumulator;
9
9
  function firebaseQueryItemAccumulator(iteration, mapItem) {
10
10
  mapItem = mapItem !== null && mapItem !== void 0 ? mapItem : ((x) => x);
11
11
  const mapFn = (x) => {
12
- const result = x.map(y => {
12
+ const result = x.map((y) => {
13
13
  const data = y.data();
14
14
  data.id = y.id;
15
15
  return mapItem(data);
@@ -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;YAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAA2B,CAAC;YAC/C,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YACf,OAAO,OAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,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;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,16 +1,15 @@
1
- import { ArrayOrValue, SeparateResult } from '@dereekb/util';
2
- import { SortingOrder, Maybe, ObjectMap } from '@dereekb/util';
1
+ import { ArrayOrValue, SeparateResult, SortingOrder, Maybe } from '@dereekb/util';
3
2
  import { DocumentSnapshot, DocumentData, FieldPath } from '../types';
4
3
  export declare type FirestoreQueryConstraintType = string;
5
4
  /**
6
5
  * A constraint. Used by drivers to apply native firebase query constraints.
7
6
  */
8
- export interface FirestoreQueryConstraint<T = any> {
7
+ export interface FirestoreQueryConstraint<T = unknown> {
9
8
  type: FirestoreQueryConstraintType;
10
9
  data: T;
11
10
  }
12
- export declare function firestoreQueryConstraint<T>(type: string, data: T): FirestoreQueryConstraint<T>;
13
- export declare function firestoreQueryConstraintFactory(type: string): <T>(data: T) => FirestoreQueryConstraint<T>;
11
+ export declare function firestoreQueryConstraint<T = unknown>(type: string, data: T): FirestoreQueryConstraint<T>;
12
+ export declare function firestoreQueryConstraintFactory(type: string): <T = unknown>(data: T) => FirestoreQueryConstraint<T>;
14
13
  export declare const FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE = "limit";
15
14
  export interface LimitQueryConstraintData {
16
15
  limit: number;
@@ -38,7 +37,7 @@ export interface OffsetQueryConstraintData {
38
37
  }
39
38
  export declare function offset(offset: number): FirestoreQueryConstraint<OffsetQueryConstraintData>;
40
39
  export declare const FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = "where";
41
- export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
40
+ export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'not-in';
42
41
  export interface WhereQueryConstraintData {
43
42
  fieldPath: string | FieldPath;
44
43
  opStr: WhereFilterOp;
@@ -86,8 +85,13 @@ export declare function endBefore<T = DocumentData>(snapshot: DocumentSnapshot<T
86
85
  /**
87
86
  * Updates the input builder with the passed constraint value.
88
87
  */
89
- export declare type FirestoreQueryConstraintHandlerFunction<B, D = any> = (builder: B, data: D, constraint: FirestoreQueryConstraint<D>) => B;
90
- export declare type FirestoreQueryConstraintHandlerMap<B> = ObjectMap<Maybe<FirestoreQueryConstraintHandlerFunction<B>>>;
88
+ export declare type FirestoreQueryConstraintHandlerFunction<B, D = unknown> = (builder: B, data: D, constraint: FirestoreQueryConstraint<D>) => B;
89
+ export declare type FirestoreQueryConstraintHandlerMap<B> = {
90
+ [key: string]: Maybe<FirestoreQueryConstraintHandlerFunction<B, any>>;
91
+ };
92
+ /**
93
+ * The full list of known firestore query constraints, and the data associated with it.
94
+ */
91
95
  export declare type FullFirestoreQueryConstraintDataMapping = {
92
96
  [FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE]: LimitQueryConstraintData;
93
97
  [FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE]: LimitToLastQueryConstraintData;
@@ -105,7 +109,7 @@ export declare type FullFirestoreQueryConstraintMapping = {
105
109
  export declare type FullFirestoreQueryConstraintHandlersMapping<B> = {
106
110
  [K in keyof FullFirestoreQueryConstraintMapping]: Maybe<FirestoreQueryConstraintHandlerFunction<B, FullFirestoreQueryConstraintDataMapping[K]>>;
107
111
  };
108
- export declare function addOrReplaceLimitInConstraints(limit: number, addedLimitType?: (typeof FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE | typeof FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE)): (constraints: FirestoreQueryConstraint[]) => FirestoreQueryConstraint[];
112
+ export declare function addOrReplaceLimitInConstraints(limit: number, addedLimitType?: typeof FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE | typeof FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE): (constraints: FirestoreQueryConstraint[]) => FirestoreQueryConstraint[];
109
113
  export declare type FirestoreQueryConstraintMapFunction = (constraints: FirestoreQueryConstraint[]) => FirestoreQueryConstraint[];
110
114
  export declare function filterConstraintsOfType(...types: FirestoreQueryConstraintType[]): FirestoreQueryConstraintMapFunction;
111
115
  export declare function replaceConstraints(replaceFn: (constraints: FirestoreQueryConstraint[]) => Maybe<ArrayOrValue<FirestoreQueryConstraint>>, types: FirestoreQueryConstraintType[]): (constraints: FirestoreQueryConstraint[]) => FirestoreQueryConstraint[];
@@ -45,7 +45,7 @@ exports.offset = offset;
45
45
  // MARK: Where
46
46
  exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE = 'where';
47
47
  function where(fieldPath, opStr, value) {
48
- return firestoreQueryConstraint(exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, { fieldPath, opStr, value });
48
+ return firestoreQueryConstraint(exports.FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, { fieldPath: fieldPath, opStr, value });
49
49
  }
50
50
  exports.where = where;
51
51
  // MARK: OrderBy
@@ -110,7 +110,7 @@ function addOrReplaceLimitInConstraints(limit, addedLimitType = exports.FIRESTOR
110
110
  exports.addOrReplaceLimitInConstraints = addOrReplaceLimitInConstraints;
111
111
  function filterConstraintsOfType(...types) {
112
112
  const typesToFilterOut = new Set(types);
113
- return (constraints) => constraints.filter(x => !typesToFilterOut.has(x.type));
113
+ return (constraints) => constraints.filter((x) => !typesToFilterOut.has(x.type));
114
114
  }
115
115
  exports.filterConstraintsOfType = filterConstraintsOfType;
116
116
  function replaceConstraints(replaceFn, types) {
@@ -118,7 +118,7 @@ function replaceConstraints(replaceFn, types) {
118
118
  return (constraints) => {
119
119
  const separated = separateFn(constraints);
120
120
  const replacements = (0, util_1.asArray)(replaceFn(separated.excluded));
121
- return (replacements) ? (0, util_1.mergeArrayOrValueIntoArray)(separated.included, replacements) : separated.included;
121
+ return replacements ? (0, util_1.mergeArrayOrValueIntoArray)(separated.included, replacements) : separated.included;
122
122
  };
123
123
  }
124
124
  exports.replaceConstraints = replaceConstraints;
@@ -1 +1 @@
1
- {"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/constraint.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { PageLoadingState, ItemPageIterator, ItemPageIterationInstance, ItemPageIterationConfig, ItemPageIteratorDelegate, MappedPageItemIterationInstance, ItemPageLimit } from '@dereekb/rxjs';
2
- import { QueryDocumentSnapshotArray, QuerySnapshot, SnapshotListenOptions } from "../types";
2
+ import { QueryDocumentSnapshotArray, QuerySnapshot, SnapshotListenOptions } from '../types';
3
3
  import { Maybe, ArrayOrValue } from '@dereekb/util';
4
- import { Observable } from "rxjs";
4
+ import { Observable } from 'rxjs';
5
5
  import { CollectionReferenceRef } from '../reference';
6
6
  import { FirestoreQueryDriverRef } from '../driver/query';
7
7
  import { FirestoreQueryConstraint } from './constraint';
@@ -40,9 +40,9 @@ export interface FirestoreItemPageQueryResult<T> {
40
40
  /**
41
41
  * Streams these results.
42
42
  */
43
- stream(options?: FirestoreItemPageQueryResultStreamOptions<T>): Observable<QuerySnapshot<T>>;
43
+ stream(options?: FirestoreItemPageQueryResultStreamOptions): Observable<QuerySnapshot<T>>;
44
44
  }
45
- export interface FirestoreItemPageQueryResultStreamOptions<T> {
45
+ export interface FirestoreItemPageQueryResultStreamOptions {
46
46
  options?: Maybe<SnapshotListenOptions>;
47
47
  }
48
48
  export declare type FirestoreItemPageIteratorDelegate<T> = ItemPageIteratorDelegate<FirestoreItemPageQueryResult<T>, FirestoreItemPageIteratorFilter, FirestoreItemPageIterationConfig<T>>;
@@ -70,6 +70,6 @@ export declare type FirestoreItemPageIterationFactoryFunction<T> = (filter?: Fir
70
70
  * @returns FirestoreItemPageIterationInstance
71
71
  */
72
72
  export declare function firestoreItemPageIterationFactory<T>(baseConfig: FirestoreItemPageIterationBaseConfig<T>): FirestoreItemPageIterationFactoryFunction<T>;
73
- export declare const FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE: FirestoreItemPageIteratorDelegate<any>;
74
- export declare const FIRESTORE_ITEM_PAGE_ITERATOR: ItemPageIterator<FirestoreItemPageQueryResult<any>, FirestoreItemPageIteratorFilter, FirestoreItemPageIterationConfig<any>>;
73
+ export declare const FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE: FirestoreItemPageIteratorDelegate<unknown>;
74
+ export declare const FIRESTORE_ITEM_PAGE_ITERATOR: ItemPageIterator<FirestoreItemPageQueryResult<unknown>, FirestoreItemPageIteratorFilter, FirestoreItemPageIterationConfig<unknown>>;
75
75
  export declare function firestoreItemPageIteration<T>(config: FirestoreItemPageIterationConfig<T>): FirestoreItemPageIterationInstance<T>;
@@ -7,18 +7,19 @@ const rxjs_2 = require("rxjs");
7
7
  const constraint_1 = require("./constraint");
8
8
  function filterDisallowedFirestoreItemPageIteratorInputContraints(constraints) {
9
9
  const isIllegal = new Set([constraint_1.FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE]);
10
- return constraints.filter(x => !isIllegal.has(x.type));
10
+ return constraints.filter((x) => !isIllegal.has(x.type));
11
11
  }
12
12
  exports.filterDisallowedFirestoreItemPageIteratorInputContraints = filterDisallowedFirestoreItemPageIteratorInputContraints;
13
13
  function makeFirestoreItemPageIteratorDelegate() {
14
14
  return {
15
15
  loadItemsForPage: (request) => {
16
16
  const { page, iteratorConfig } = request;
17
- const prevQueryResult$ = (page > 0) ? request.lastItem$ : (0, rxjs_2.of)(undefined);
17
+ const prevQueryResult$ = page > 0 ? request.lastItem$ : (0, rxjs_2.of)(undefined);
18
18
  const { collection, itemsPerPage, filter, firestoreQueryDriver: driver } = iteratorConfig;
19
19
  const { limit: filterLimit, constraints: filterConstraints } = filter !== null && filter !== void 0 ? filter : {};
20
20
  return prevQueryResult$.pipe((0, rxjs_2.exhaustMap)((prevResult) => {
21
- if ((prevResult === null || prevResult === void 0 ? void 0 : prevResult.snapshot.empty) === true) { // TODO: Shouldn't happen. Remove this later.
21
+ if ((prevResult === null || prevResult === void 0 ? void 0 : prevResult.snapshot.empty) === true) {
22
+ // TODO: Shouldn't happen. Remove this later.
22
23
  return (0, rxjs_2.of)({ end: true });
23
24
  }
24
25
  else {
@@ -28,13 +29,13 @@ function makeFirestoreItemPageIteratorDelegate() {
28
29
  (0, util_1.mergeIntoArray)(constraints, filterDisallowedFirestoreItemPageIteratorInputContraints((0, util_1.asArray)(filterConstraints)));
29
30
  }
30
31
  // Add cursor
31
- const cursorDocument = (prevResult) ? (0, util_1.lastValue)(prevResult.docs) : undefined;
32
- const startAfterFilter = (cursorDocument) ? (0, constraint_1.startAfter)(cursorDocument) : undefined;
32
+ const cursorDocument = prevResult ? (0, util_1.lastValue)(prevResult.docs) : undefined;
33
+ const startAfterFilter = cursorDocument ? (0, constraint_1.startAfter)(cursorDocument) : undefined;
33
34
  if (startAfterFilter) {
34
35
  constraints.push(startAfterFilter);
35
36
  }
36
37
  // Add Limit
37
- const limitCount = filterLimit !== null && filterLimit !== void 0 ? filterLimit : itemsPerPage + ((startAfterFilter) ? 1 : 0); // todo: may not be needed.
38
+ const limitCount = filterLimit !== null && filterLimit !== void 0 ? filterLimit : itemsPerPage + (startAfterFilter ? 1 : 0); // todo: may not be needed.
38
39
  const limitConstraint = (0, constraint_1.limit)(limitCount);
39
40
  const constraintsWithLimit = [...constraints, limitConstraint];
40
41
  // make query
@@ -1 +1 @@
1
- {"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/iterator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/iterator.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Observable } from 'rxjs';
2
- import { ArrayOrValue, Maybe } from "@dereekb/util";
3
- import { CollectionReferenceRef } from "../reference";
4
- import { Query, QueryDocumentSnapshot, QuerySnapshot, Transaction } from "../types";
5
- import { FirestoreQueryConstraint } from "./constraint";
2
+ import { ArrayOrValue, Maybe } from '@dereekb/util';
3
+ import { CollectionReferenceRef } from '../reference';
4
+ import { Query, QueryDocumentSnapshot, QuerySnapshot, Transaction } from '../types';
5
+ import { FirestoreQueryConstraint } from './constraint';
6
6
  import { FirestoreQueryDriverRef } from '../driver/query';
7
7
  export interface FirestoreExecutableQueryGetDocsContext {
8
8
  readonly transaction?: Transaction;
@@ -1,8 +1,8 @@
1
1
  import { DocumentReference, QuerySnapshot } from './../types';
2
- import { Observable } from "rxjs";
2
+ import { Observable } from 'rxjs';
3
3
  export interface StreamDocsWithOnSnapshotFunctionParams<O> {
4
4
  next: (value?: O | undefined) => void;
5
- error: (err?: any) => void;
5
+ error: (err?: unknown) => void;
6
6
  complete: () => void;
7
7
  }
8
8
  export declare type StreamDocsUnsubscribeFunction = () => void;
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.documentReferencesFromSnapshot = exports.streamFromOnSnapshot = void 0;
4
4
  const rxjs_1 = require("rxjs");
5
- ;
6
5
  /**
7
6
  * Use to build an Observable that reacts to OnSnapshot events from queries.
8
7
  *
@@ -14,14 +13,14 @@ function streamFromOnSnapshot(callOnSnapshot) {
14
13
  const unsubscribe = callOnSnapshot({
15
14
  next: subscriber.next.bind(subscriber),
16
15
  error: subscriber.error.bind(subscriber),
17
- complete: subscriber.complete.bind(subscriber),
16
+ complete: subscriber.complete.bind(subscriber)
18
17
  });
19
18
  return { unsubscribe };
20
19
  });
21
20
  }
22
21
  exports.streamFromOnSnapshot = streamFromOnSnapshot;
23
22
  function documentReferencesFromSnapshot(snapshots) {
24
- return snapshots.docs.map(x => x.ref);
23
+ return snapshots.docs.map((x) => x.ref);
25
24
  }
26
25
  exports.documentReferencesFromSnapshot = documentReferencesFromSnapshot;
27
26
  //# sourceMappingURL=query.util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.util.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.util.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAOjC,CAAC;AAIF;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,cAAoG;IAC1I,OAAO,IAAI,iBAAU,CAAC,CAAC,UAAU,EAAE,EAAE;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC;YACjC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACtC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;YACxC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO,EAAE,WAAW,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AATD,oDASC;AAED,SAAgB,8BAA8B,CAAI,SAA2B;IAC3E,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC;AAFD,wEAEC"}
1
+ {"version":3,"file":"query.util.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/firestore/query/query.util.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAWlC;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,cAAoG;IAC1I,OAAO,IAAI,iBAAU,CAAC,CAAC,UAAU,EAAE,EAAE;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC;YACjC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACtC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;YACxC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;SAC/C,CAAC,CAAC;QACH,OAAO,EAAE,WAAW,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AATD,oDASC;AAED,SAAgB,8BAA8B,CAAI,SAA2B;IAC3E,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC;AAFD,wEAEC"}
@@ -1,15 +1,15 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { DocumentChange, QuerySnapshot } from '../types';
3
- import { FirestoreItemPageIterationInstance } from "./iterator";
3
+ import { FirestoreItemPageIterationInstance } from './iterator';
4
4
  export declare const DEFAULT_QUERY_CHANGE_WATCHER_DELAY = 0;
5
- export interface IterationQueryDocChangeWatcherConfig<T = any> {
5
+ export interface IterationQueryDocChangeWatcherConfig<T = unknown> {
6
6
  readonly instance: FirestoreItemPageIterationInstance<T>;
7
7
  readonly delay?: number;
8
8
  }
9
9
  /**
10
10
  * Interface for watching query result changes events.
11
11
  */
12
- export interface IterationQueryDocChangeWatcher<T = any> {
12
+ export interface IterationQueryDocChangeWatcher<T = unknown> {
13
13
  /**
14
14
  * Streams all subsequent query changes.
15
15
  */
@@ -19,16 +19,16 @@ export interface IterationQueryDocChangeWatcher<T = any> {
19
19
  */
20
20
  readonly event$: Observable<IterationQueryDocChangeWatcherEvent<T>>;
21
21
  }
22
- export interface IterationQueryDocChangeWatcherEvent<T = any> extends IterationQueryDocChangeWatcherChangeGroup<T> {
22
+ export interface IterationQueryDocChangeWatcherEvent<T = unknown> extends IterationQueryDocChangeWatcherChangeGroup<T> {
23
23
  readonly time: Date;
24
24
  readonly changes: DocumentChange<T>[];
25
25
  readonly type: IterationQueryDocChangeWatcherChangeType;
26
26
  }
27
- export interface IterationQueryDocChangeWatcherChangeGroup<T = any> {
27
+ export interface IterationQueryDocChangeWatcherChangeGroup<T = unknown> {
28
28
  readonly added: DocumentChange<T>[];
29
29
  readonly removed: DocumentChange<T>[];
30
30
  readonly modified: DocumentChange<T>[];
31
31
  }
32
32
  export declare type IterationQueryDocChangeWatcherChangeType = 'addedAndRemoved' | 'added' | 'removed' | 'modified' | 'none';
33
- export declare function iterationQueryDocChangeWatcher<T = any>(config: IterationQueryDocChangeWatcherConfig<T>): IterationQueryDocChangeWatcher<T>;
34
- export declare function iterationQueryDocChangeWatcherChangeTypeForGroup<T = any>(group: IterationQueryDocChangeWatcherChangeGroup<T>): IterationQueryDocChangeWatcherChangeType;
33
+ export declare function iterationQueryDocChangeWatcher<T = unknown>(config: IterationQueryDocChangeWatcherConfig<T>): IterationQueryDocChangeWatcher<T>;
34
+ export declare function iterationQueryDocChangeWatcherChangeTypeForGroup<T = unknown>(group: IterationQueryDocChangeWatcherChangeGroup<T>): IterationQueryDocChangeWatcherChangeType;
@@ -15,16 +15,20 @@ function iterationQueryDocChangeWatcher(config) {
15
15
  return (0, rxjs_1.timer)((_a = beginCheckingAt.expiresAt) !== null && _a !== void 0 ? _a : new Date()).pipe((0, rxjs_1.switchMap)(() => stream().pipe((0, rxjs_1.skip)(1) // skip the first value, as it should be equivalent to the query results given.
16
16
  )));
17
17
  }), (0, rxjs_1.shareReplay)(1));
18
- const event$ = stream$.pipe((0, rxjs_1.map)(event => {
19
- var _a, _b, _c;
18
+ const event$ = stream$.pipe((0, rxjs_1.map)((event) => {
20
19
  const changes = event.docChanges();
21
- const results = (0, util_1.groupValues)(changes, (x) => x.type);
22
- results.time = new Date();
23
- results.changes = changes;
24
- results.added = (_a = results.added) !== null && _a !== void 0 ? _a : [];
25
- results.removed = (_b = results.removed) !== null && _b !== void 0 ? _b : [];
26
- results.modified = (_c = results.modified) !== null && _c !== void 0 ? _c : [];
27
- results.type = iterationQueryDocChangeWatcherChangeTypeForGroup(results);
20
+ const results = (0, util_1.build)({
21
+ base: (0, util_1.groupValues)(changes, (x) => x.type),
22
+ build: (x) => {
23
+ var _a, _b, _c;
24
+ x.time = new Date();
25
+ x.changes = changes;
26
+ x.added = (_a = x.added) !== null && _a !== void 0 ? _a : [];
27
+ x.removed = (_b = x.removed) !== null && _b !== void 0 ? _b : [];
28
+ x.modified = (_c = x.modified) !== null && _c !== void 0 ? _c : [];
29
+ x.type = iterationQueryDocChangeWatcherChangeTypeForGroup(x);
30
+ }
31
+ });
28
32
  return results;
29
33
  }), (0, rxjs_1.shareReplay)(1));
30
34
  return {