@firebase/firestore 3.4.3 → 3.4.4-canary.aaeab08ac

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 (81) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/firestore/src/api/database.d.ts +14 -9
  3. package/dist/firestore/src/api/index_configuration.d.ts +117 -0
  4. package/dist/firestore/src/api.d.ts +1 -0
  5. package/dist/firestore/src/core/firestore_client.d.ts +2 -0
  6. package/dist/firestore/src/local/local_serializer.d.ts +1 -1
  7. package/dist/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
  8. package/dist/firestore/src/model/document.d.ts +7 -0
  9. package/dist/firestore/src/model/document_key.d.ts +1 -0
  10. package/dist/firestore/src/model/field_index.d.ts +152 -0
  11. package/dist/firestore/test/integration/api/index_configuration.test.d.ts +17 -0
  12. package/dist/firestore/test/unit/local/test_remote_document_cache.d.ts +1 -1
  13. package/dist/firestore/test/unit/model/field_index.test.d.ts +17 -0
  14. package/dist/firestore/test/util/helpers.d.ts +6 -0
  15. package/dist/index.d.ts +15 -9
  16. package/dist/index.esm2017.js +1204 -1052
  17. package/dist/index.esm2017.js.map +1 -1
  18. package/dist/index.esm5.js +1862 -1720
  19. package/dist/index.esm5.js.map +1 -1
  20. package/dist/index.node.cjs.js +308 -75
  21. package/dist/index.node.cjs.js.map +1 -1
  22. package/dist/index.node.mjs +308 -76
  23. package/dist/index.node.mjs.map +1 -1
  24. package/dist/index.rn.js +1204 -1052
  25. package/dist/index.rn.js.map +1 -1
  26. package/dist/internal.d.ts +131 -21
  27. package/dist/lite/firestore/src/api/database.d.ts +14 -9
  28. package/dist/lite/firestore/src/api/index_configuration.d.ts +117 -0
  29. package/dist/lite/firestore/src/api.d.ts +1 -0
  30. package/dist/lite/firestore/src/core/firestore_client.d.ts +2 -0
  31. package/dist/lite/firestore/src/local/local_serializer.d.ts +1 -1
  32. package/dist/lite/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
  33. package/dist/lite/firestore/src/model/document.d.ts +7 -0
  34. package/dist/lite/firestore/src/model/document_key.d.ts +1 -0
  35. package/dist/lite/firestore/src/model/field_index.d.ts +152 -0
  36. package/dist/lite/firestore/test/integration/api/index_configuration.test.d.ts +17 -0
  37. package/dist/lite/firestore/test/unit/local/test_remote_document_cache.d.ts +1 -1
  38. package/dist/lite/firestore/test/unit/model/field_index.test.d.ts +17 -0
  39. package/dist/lite/firestore/test/util/helpers.d.ts +6 -0
  40. package/dist/lite/index.browser.esm2017.js +76 -69
  41. package/dist/lite/index.browser.esm2017.js.map +1 -1
  42. package/dist/lite/index.browser.esm5.js +52 -47
  43. package/dist/lite/index.browser.esm5.js.map +1 -1
  44. package/dist/lite/index.node.cjs.js +16 -8
  45. package/dist/lite/index.node.cjs.js.map +1 -1
  46. package/dist/lite/index.node.mjs +16 -8
  47. package/dist/lite/index.node.mjs.map +1 -1
  48. package/dist/lite/index.rn.esm2017.js +95 -88
  49. package/dist/lite/index.rn.esm2017.js.map +1 -1
  50. package/dist/lite/internal.d.ts +8 -0
  51. package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +19 -19
  52. package/dist/lite/packages/firestore/src/api/database.d.ts +14 -9
  53. package/dist/lite/packages/firestore/src/api/index_configuration.d.ts +117 -0
  54. package/dist/lite/packages/firestore/src/api.d.ts +1 -0
  55. package/dist/lite/packages/firestore/src/core/firestore_client.d.ts +2 -0
  56. package/dist/lite/packages/firestore/src/local/local_serializer.d.ts +1 -1
  57. package/dist/lite/packages/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
  58. package/dist/lite/packages/firestore/src/model/document.d.ts +7 -0
  59. package/dist/lite/packages/firestore/src/model/document_key.d.ts +1 -0
  60. package/dist/lite/packages/firestore/src/model/field_index.d.ts +152 -0
  61. package/dist/lite/packages/firestore/test/integration/api/index_configuration.test.d.ts +17 -0
  62. package/dist/lite/packages/firestore/test/unit/local/test_remote_document_cache.d.ts +1 -1
  63. package/dist/lite/packages/firestore/test/unit/model/field_index.test.d.ts +17 -0
  64. package/dist/lite/packages/firestore/test/util/helpers.d.ts +6 -0
  65. package/dist/lite/private.d.ts +7 -0
  66. package/dist/packages/firestore/dist/index.esm2017.d.ts +34 -12
  67. package/dist/packages/firestore/src/api/database.d.ts +14 -9
  68. package/dist/packages/firestore/src/api/index_configuration.d.ts +117 -0
  69. package/dist/packages/firestore/src/api.d.ts +1 -0
  70. package/dist/packages/firestore/src/core/firestore_client.d.ts +2 -0
  71. package/dist/packages/firestore/src/local/local_serializer.d.ts +1 -1
  72. package/dist/packages/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
  73. package/dist/packages/firestore/src/model/document.d.ts +7 -0
  74. package/dist/packages/firestore/src/model/document_key.d.ts +1 -0
  75. package/dist/packages/firestore/src/model/field_index.d.ts +152 -0
  76. package/dist/packages/firestore/test/integration/api/index_configuration.test.d.ts +17 -0
  77. package/dist/packages/firestore/test/unit/local/test_remote_document_cache.d.ts +1 -1
  78. package/dist/packages/firestore/test/unit/model/field_index.test.d.ts +17 -0
  79. package/dist/packages/firestore/test/util/helpers.d.ts +6 -0
  80. package/dist/private.d.ts +34 -21
  81. package/package.json +10 -10
package/dist/private.d.ts CHANGED
@@ -757,6 +757,11 @@ declare interface Document_2 {
757
757
  * document was guaranteed to not exist.
758
758
  */
759
759
  readonly version: SnapshotVersion;
760
+ /**
761
+ * The timestamp at which this document was read from the remote server. Uses
762
+ * `SnapshotVersion.min()` for documents created by the user.
763
+ */
764
+ readonly readTime: SnapshotVersion;
760
765
  /** The underlying data of this document or an empty value if no data exists. */
761
766
  readonly data: ObjectValue;
762
767
  /** Returns whether local mutations were applied via the mutation queue. */
@@ -1352,6 +1357,7 @@ declare class FirestoreClient {
1352
1357
  private user;
1353
1358
  private readonly clientId;
1354
1359
  private authCredentialListener;
1360
+ private appCheckCredentialListener;
1355
1361
  offlineComponents?: OfflineComponentProvider;
1356
1362
  onlineComponents?: OnlineComponentProvider;
1357
1363
  constructor(authCredentials: CredentialsProvider<User>, appCheckCredentials: CredentialsProvider<string>,
@@ -1366,6 +1372,7 @@ declare class FirestoreClient {
1366
1372
  asyncQueue: AsyncQueue, databaseInfo: DatabaseInfo);
1367
1373
  getConfiguration(): Promise<ComponentConfiguration>;
1368
1374
  setCredentialChangeListener(listener: (user: User) => Promise<void>): void;
1375
+ setAppCheckTokenChangeListener(listener: (appCheckToken: string, user: User) => Promise<void>): void;
1369
1376
  /**
1370
1377
  * Checks that the client has not been terminated. Ensures that other methods on
1371
1378
  * this class cannot be called after the client is terminated.
@@ -2139,6 +2146,12 @@ export declare function getFirestore(app?: FirebaseApp): Firestore;
2139
2146
  */
2140
2147
  export declare function increment(n: number): FieldValue;
2141
2148
 
2149
+ /* Excluded from this release type: Index */
2150
+
2151
+ /* Excluded from this release type: IndexConfiguration */
2152
+
2153
+ /* Excluded from this release type: IndexField */
2154
+
2142
2155
  declare type IndexFieldMode = 'MODE_UNSPECIFIED' | 'ASCENDING' | 'DESCENDING';
2143
2156
 
2144
2157
  /**
@@ -2267,13 +2280,13 @@ declare class LLRBNode<K, V> {
2267
2280
  /**
2268
2281
  * Loads a Firestore bundle into the local cache.
2269
2282
  *
2270
- * @param firestore - The {@link Firestore} instance to load bundles for for.
2271
- * @param bundleData - An object representing the bundle to be loaded. Valid objects are
2272
- * `ArrayBuffer`, `ReadableStream<Uint8Array>` or `string`.
2283
+ * @param firestore - The {@link Firestore} instance to load bundles for.
2284
+ * @param bundleData - An object representing the bundle to be loaded. Valid
2285
+ * objects are `ArrayBuffer`, `ReadableStream<Uint8Array>` or `string`.
2273
2286
  *
2274
- * @returns
2275
- * A `LoadBundleTask` object, which notifies callers with progress updates, and completion
2276
- * or error events. It can be used as a `Promise<LoadBundleTaskProgress>`.
2287
+ * @returns A `LoadBundleTask` object, which notifies callers with progress
2288
+ * updates, and completion or error events. It can be used as a
2289
+ * `Promise<LoadBundleTaskProgress>`.
2277
2290
  */
2278
2291
  export declare function loadBundle(firestore: Firestore, bundleData: ReadableStream<Uint8Array> | ArrayBuffer | string): LoadBundleTask;
2279
2292
 
@@ -2417,6 +2430,7 @@ declare class MutableDocument implements Document_2 {
2417
2430
  readonly key: _DocumentKey;
2418
2431
  private documentType;
2419
2432
  version: SnapshotVersion;
2433
+ readTime: SnapshotVersion;
2420
2434
  data: ObjectValue;
2421
2435
  private documentState;
2422
2436
  private constructor();
@@ -2456,6 +2470,7 @@ declare class MutableDocument implements Document_2 {
2456
2470
  convertToUnknownDocument(version: SnapshotVersion): MutableDocument;
2457
2471
  setHasCommittedMutations(): MutableDocument;
2458
2472
  setHasLocalMutations(): MutableDocument;
2473
+ setReadTime(readTime: SnapshotVersion): MutableDocument;
2459
2474
  get hasLocalMutations(): boolean;
2460
2475
  get hasCommittedMutations(): boolean;
2461
2476
  get hasPendingWrites(): boolean;
@@ -2748,11 +2763,16 @@ declare interface NamedQuery {
2748
2763
  }
2749
2764
 
2750
2765
  /**
2751
- * Reads a Firestore {@link Query} from local cache, identified by the given name.
2766
+ * Reads a Firestore {@link Query} from local cache, identified by the given
2767
+ * name.
2752
2768
  *
2753
2769
  * The named queries are packaged into bundles on the server side (along
2754
- * with resulting documents), and loaded to local cache using `loadBundle`. Once in local
2755
- * cache, use this method to extract a {@link Query} by name.
2770
+ * with resulting documents), and loaded to local cache using `loadBundle`. Once
2771
+ * in local cache, use this method to extract a {@link Query} by name.
2772
+ *
2773
+ * @param firestore - The {@link Firestore} instance to read the query from.
2774
+ * @param name - The name of the query.
2775
+ * @returns A `Promise` that is resolved with the Query or `null`.
2756
2776
  */
2757
2777
  export declare function namedQuery(firestore: Firestore, name: string): Promise<Query | null>;
2758
2778
 
@@ -3767,14 +3787,6 @@ declare interface RemoteDocumentCache {
3767
3787
  getSize(transaction: PersistenceTransaction): PersistencePromise<number>;
3768
3788
  }
3769
3789
 
3770
- /**
3771
- * Represents a document change to be applied to remote document cache.
3772
- */
3773
- declare interface RemoteDocumentChange {
3774
- readonly document: MutableDocument;
3775
- readonly readTime: SnapshotVersion | null;
3776
- }
3777
-
3778
3790
  /**
3779
3791
  * An in-memory buffer of entries to be written to a RemoteDocumentCache.
3780
3792
  * It can be used to batch up a set of changes to be written to the cache, but
@@ -3790,26 +3802,25 @@ declare interface RemoteDocumentChange {
3790
3802
  * porting this class as part of that implementation work.
3791
3803
  */
3792
3804
  declare abstract class RemoteDocumentChangeBuffer {
3793
- protected changes: ObjectMap<_DocumentKey, RemoteDocumentChange>;
3805
+ protected changes: ObjectMap<_DocumentKey, MutableDocument>;
3794
3806
  private changesApplied;
3795
3807
  protected abstract getFromCache(transaction: PersistenceTransaction, documentKey: _DocumentKey): PersistencePromise<MutableDocument>;
3796
3808
  protected abstract getAllFromCache(transaction: PersistenceTransaction, documentKeys: DocumentKeySet): PersistencePromise<MutableDocumentMap>;
3797
3809
  protected abstract applyChanges(transaction: PersistenceTransaction): PersistencePromise<void>;
3798
- protected getReadTime(key: _DocumentKey): SnapshotVersion;
3799
3810
  /**
3800
3811
  * Buffers a `RemoteDocumentCache.addEntry()` call.
3801
3812
  *
3802
3813
  * You can only modify documents that have already been retrieved via
3803
3814
  * `getEntry()/getEntries()` (enforced via IndexedDbs `apply()`).
3804
3815
  */
3805
- addEntry(document: MutableDocument, readTime: SnapshotVersion): void;
3816
+ addEntry(document: MutableDocument): void;
3806
3817
  /**
3807
3818
  * Buffers a `RemoteDocumentCache.removeEntry()` call.
3808
3819
  *
3809
3820
  * You can only remove documents that have already been retrieved via
3810
3821
  * `getEntry()/getEntries()` (enforced via IndexedDbs `apply()`).
3811
3822
  */
3812
- removeEntry(key: _DocumentKey, readTime?: SnapshotVersion | null): void;
3823
+ removeEntry(key: _DocumentKey, readTime: SnapshotVersion): void;
3813
3824
  /**
3814
3825
  * Looks up an entry in the cache. The buffered changes will first be checked,
3815
3826
  * and if no buffered change applies, this will forward to
@@ -4031,6 +4042,8 @@ export declare function setDoc<T>(reference: DocumentReference<T>, data: WithFie
4031
4042
  */
4032
4043
  export declare function setDoc<T>(reference: DocumentReference<T>, data: PartialWithFieldValue<T>, options: SetOptions): Promise<void>;
4033
4044
 
4045
+ /* Excluded from this release type: _setIndexConfiguration */
4046
+
4034
4047
  /**
4035
4048
  * Sets the verbosity of Cloud Firestore logs (debug, error, or silent).
4036
4049
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firebase/firestore",
3
- "version": "3.4.3",
3
+ "version": "3.4.4-canary.aaeab08ac",
4
4
  "engines": {
5
5
  "node": ">=10.10.0"
6
6
  },
@@ -77,22 +77,22 @@
77
77
  "lite/package.json"
78
78
  ],
79
79
  "dependencies": {
80
- "@firebase/component": "0.5.10",
81
- "@firebase/logger": "0.3.2",
82
- "@firebase/util": "1.4.3",
83
- "@firebase/webchannel-wrapper": "0.6.1",
80
+ "@firebase/component": "0.5.10-canary.aaeab08ac",
81
+ "@firebase/logger": "0.3.2-canary.aaeab08ac",
82
+ "@firebase/util": "1.4.3-canary.aaeab08ac",
83
+ "@firebase/webchannel-wrapper": "0.6.1-canary.aaeab08ac",
84
84
  "@grpc/grpc-js": "^1.3.2",
85
85
  "@grpc/proto-loader": "^0.6.0",
86
- "node-fetch": "2.6.5",
86
+ "node-fetch": "2.6.7",
87
87
  "tslib": "^2.1.0"
88
88
  },
89
89
  "peerDependencies": {
90
- "@firebase/app": "0.x"
90
+ "@firebase/app": "0.7.15-canary.aaeab08ac"
91
91
  },
92
92
  "devDependencies": {
93
- "@firebase/app": "0.7.13",
94
- "@firebase/app-compat": "0.1.14",
95
- "@firebase/auth": "0.19.5",
93
+ "@firebase/app": "0.7.15-canary.aaeab08ac",
94
+ "@firebase/app-compat": "0.1.16-canary.aaeab08ac",
95
+ "@firebase/auth": "0.19.7-canary.aaeab08ac",
96
96
  "@rollup/plugin-alias": "3.1.5",
97
97
  "@rollup/plugin-json": "4.1.0",
98
98
  "@types/eslint": "7.28.0",