@firebase/firestore 3.4.1-2021118224937 → 3.4.1-canary.4c042b2f9

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 (58) hide show
  1. package/CHANGELOG.md +4 -2
  2. package/dist/firestore/src/lite-api/reference.d.ts +4 -2
  3. package/dist/firestore/src/lite-api/reference_impl.d.ts +5 -0
  4. package/dist/firestore/src/lite-api/transaction.d.ts +4 -0
  5. package/dist/firestore/src/lite-api/write_batch.d.ts +3 -0
  6. package/dist/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
  7. package/dist/firestore/src/model/collections.d.ts +0 -4
  8. package/dist/firestore/src/model/document.d.ts +3 -1
  9. package/dist/index.d.ts +11 -2
  10. package/dist/index.esm2017.js +159 -159
  11. package/dist/index.esm2017.js.map +1 -1
  12. package/dist/index.esm5.js +68 -68
  13. package/dist/index.esm5.js.map +1 -1
  14. package/dist/index.node.cjs.js +7 -7
  15. package/dist/index.node.cjs.js.map +1 -1
  16. package/dist/index.node.mjs +7 -7
  17. package/dist/index.node.mjs.map +1 -1
  18. package/dist/index.rn.js +175 -175
  19. package/dist/index.rn.js.map +1 -1
  20. package/dist/internal.d.ts +15 -3
  21. package/dist/lite/firestore/src/lite-api/reference.d.ts +4 -2
  22. package/dist/lite/firestore/src/lite-api/reference_impl.d.ts +5 -0
  23. package/dist/lite/firestore/src/lite-api/transaction.d.ts +4 -0
  24. package/dist/lite/firestore/src/lite-api/write_batch.d.ts +3 -0
  25. package/dist/lite/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
  26. package/dist/lite/firestore/src/model/collections.d.ts +0 -4
  27. package/dist/lite/firestore/src/model/document.d.ts +3 -1
  28. package/dist/lite/index.browser.esm2017.js +4 -3
  29. package/dist/lite/index.browser.esm2017.js.map +1 -1
  30. package/dist/lite/index.browser.esm5.js +4 -3
  31. package/dist/lite/index.browser.esm5.js.map +1 -1
  32. package/dist/lite/index.d.ts +16 -2
  33. package/dist/lite/index.node.cjs.js +4 -3
  34. package/dist/lite/index.node.cjs.js.map +1 -1
  35. package/dist/lite/index.node.mjs +4 -3
  36. package/dist/lite/index.node.mjs.map +1 -1
  37. package/dist/lite/index.rn.esm2017.js +61 -60
  38. package/dist/lite/index.rn.esm2017.js.map +1 -1
  39. package/dist/lite/internal.d.ts +83 -2
  40. package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +1 -0
  41. package/dist/lite/packages/firestore/src/lite-api/reference.d.ts +4 -2
  42. package/dist/lite/packages/firestore/src/lite-api/reference_impl.d.ts +5 -0
  43. package/dist/lite/packages/firestore/src/lite-api/transaction.d.ts +4 -0
  44. package/dist/lite/packages/firestore/src/lite-api/write_batch.d.ts +3 -0
  45. package/dist/lite/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
  46. package/dist/lite/packages/firestore/src/model/collections.d.ts +0 -4
  47. package/dist/lite/packages/firestore/src/model/document.d.ts +3 -1
  48. package/dist/lite/private.d.ts +83 -2
  49. package/dist/packages/firestore/dist/index.esm2017.d.ts +21 -21
  50. package/dist/packages/firestore/src/lite-api/reference.d.ts +4 -2
  51. package/dist/packages/firestore/src/lite-api/reference_impl.d.ts +5 -0
  52. package/dist/packages/firestore/src/lite-api/transaction.d.ts +4 -0
  53. package/dist/packages/firestore/src/lite-api/write_batch.d.ts +3 -0
  54. package/dist/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
  55. package/dist/packages/firestore/src/model/collections.d.ts +0 -4
  56. package/dist/packages/firestore/src/model/document.d.ts +3 -1
  57. package/dist/private.d.ts +15 -3
  58. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,10 +1,12 @@
1
1
  # @firebase/firestore
2
2
 
3
- ## 3.4.1-2021118224937
3
+ ## 3.4.1
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - [`8298cf8a9`](https://github.com/firebase/firebase-js-sdk/commit/8298cf8a9343dbba6c628d64941dfbe5d17c44aa) [#5741](https://github.com/firebase/firebase-js-sdk/pull/5741) - fix firestore node tests
7
+ - [`fd8cd3ec4`](https://github.com/firebase/firebase-js-sdk/commit/fd8cd3ec4b7d0747fca258d468ee094573a08bbb) [#5809](https://github.com/firebase/firebase-js-sdk/pull/5809) - Hardcode grpc-js version as a temporary fix for `createRequire` issues in Node CJS.
8
+
9
+ * [`8298cf8a9`](https://github.com/firebase/firebase-js-sdk/commit/8298cf8a9343dbba6c628d64941dfbe5d17c44aa) [#5741](https://github.com/firebase/firebase-js-sdk/pull/5741) - fix firestore node tests
8
10
 
9
11
  ## 3.4.0
10
12
 
@@ -61,10 +61,12 @@ export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
61
61
  *
62
62
  * @param merge - Changes the behavior of a `setDoc()` call to only replace the
63
63
  * values specified in its data argument. Fields omitted from the `setDoc()`
64
- * call remain untouched.
64
+ * call remain untouched. If your input sets any field to an empty map, all
65
+ * nested fields are overwritten.
65
66
  * @param mergeFields - Changes the behavior of `setDoc()` calls to only replace
66
67
  * the specified field paths. Any field path that is not specified is ignored
67
- * and remains untouched.
68
+ * and remains untouched. If your input sets any field to an empty map, all
69
+ * nested fields are overwritten.
68
70
  */
69
71
  export declare type SetOptions = {
70
72
  readonly merge?: boolean;
@@ -77,6 +77,7 @@ export declare function getDocs<T>(query: Query<T>): Promise<QuerySnapshot<T>>;
77
77
  *
78
78
  * @param reference - A reference to the document to write.
79
79
  * @param data - A map of the fields and values for the document.
80
+ * @throws Error - If the provided input is not a valid Firestore document.
80
81
  * @returns A `Promise` resolved once the data has been successfully written
81
82
  * to the backend.
82
83
  */
@@ -94,6 +95,7 @@ export declare function setDoc<T>(reference: DocumentReference<T>, data: WithFie
94
95
  * @param reference - A reference to the document to write.
95
96
  * @param data - A map of the fields and values for the document.
96
97
  * @param options - An object to configure the set behavior.
98
+ * @throws Error - If the provided input is not a valid Firestore document.
97
99
  * @returns A `Promise` resolved once the data has been successfully written
98
100
  * to the backend.
99
101
  */
@@ -112,6 +114,7 @@ export declare function setDoc<T>(reference: DocumentReference<T>, data: Partial
112
114
  * @param data - An object containing the fields and values with which to
113
115
  * update the document. Fields can contain dots to reference nested fields
114
116
  * within the document.
117
+ * @throws Error - If the provided input is not valid Firestore data.
115
118
  * @returns A `Promise` resolved once the data has been successfully written
116
119
  * to the backend.
117
120
  */
@@ -133,6 +136,7 @@ export declare function updateDoc<T>(reference: DocumentReference<T>, data: Upda
133
136
  * @param field - The first field to update.
134
137
  * @param value - The first value.
135
138
  * @param moreFieldsAndValues - Additional key value pairs.
139
+ * @throws Error - If the provided input is not valid Firestore data.
136
140
  * @returns A `Promise` resolved once the data has been successfully written
137
141
  * to the backend.
138
142
  */
@@ -161,6 +165,7 @@ export declare function deleteDoc(reference: DocumentReference<unknown>): Promis
161
165
  *
162
166
  * @param reference - A reference to the collection to add this document to.
163
167
  * @param data - An Object containing the data for the new document.
168
+ * @throws Error - If the provided input is not a valid Firestore document.
164
169
  * @returns A `Promise` resolved with a `DocumentReference` pointing to the
165
170
  * newly created document after it has been written to the backend.
166
171
  */
@@ -45,6 +45,7 @@ export declare class Transaction {
45
45
  *
46
46
  * @param documentRef - A reference to the document to be set.
47
47
  * @param data - An object of the fields and values for the document.
48
+ * @throws Error - If the provided input is not a valid Firestore document.
48
49
  * @returns This `Transaction` instance. Used for chaining method calls.
49
50
  */
50
51
  set<T>(documentRef: DocumentReference<T>, data: WithFieldValue<T>): this;
@@ -57,6 +58,7 @@ export declare class Transaction {
57
58
  * @param documentRef - A reference to the document to be set.
58
59
  * @param data - An object of the fields and values for the document.
59
60
  * @param options - An object to configure the set behavior.
61
+ * @throws Error - If the provided input is not a valid Firestore document.
60
62
  * @returns This `Transaction` instance. Used for chaining method calls.
61
63
  */
62
64
  set<T>(documentRef: DocumentReference<T>, data: PartialWithFieldValue<T>, options: SetOptions): this;
@@ -69,6 +71,7 @@ export declare class Transaction {
69
71
  * @param data - An object containing the fields and values with which to
70
72
  * update the document. Fields can contain dots to reference nested fields
71
73
  * within the document.
74
+ * @throws Error - If the provided input is not valid Firestore data.
72
75
  * @returns This `Transaction` instance. Used for chaining method calls.
73
76
  */
74
77
  update<T>(documentRef: DocumentReference<T>, data: UpdateData<T>): this;
@@ -84,6 +87,7 @@ export declare class Transaction {
84
87
  * @param field - The first field to update.
85
88
  * @param value - The first value.
86
89
  * @param moreFieldsAndValues - Additional key/value pairs.
90
+ * @throws Error - If the provided input is not valid Firestore data.
87
91
  * @returns This `Transaction` instance. Used for chaining method calls.
88
92
  */
89
93
  update(documentRef: DocumentReference<unknown>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): this;
@@ -53,6 +53,7 @@ export declare class WriteBatch {
53
53
  * @param documentRef - A reference to the document to be set.
54
54
  * @param data - An object of the fields and values for the document.
55
55
  * @param options - An object to configure the set behavior.
56
+ * @throws Error - If the provided input is not a valid Firestore document.
56
57
  * @returns This `WriteBatch` instance. Used for chaining method calls.
57
58
  */
58
59
  set<T>(documentRef: DocumentReference<T>, data: PartialWithFieldValue<T>, options: SetOptions): WriteBatch;
@@ -65,6 +66,7 @@ export declare class WriteBatch {
65
66
  * @param data - An object containing the fields and values with which to
66
67
  * update the document. Fields can contain dots to reference nested fields
67
68
  * within the document.
69
+ * @throws Error - If the provided input is not valid Firestore data.
68
70
  * @returns This `WriteBatch` instance. Used for chaining method calls.
69
71
  */
70
72
  update<T>(documentRef: DocumentReference<T>, data: UpdateData<T>): WriteBatch;
@@ -80,6 +82,7 @@ export declare class WriteBatch {
80
82
  * @param field - The first field to update.
81
83
  * @param value - The first value.
82
84
  * @param moreFieldsAndValues - Additional key value pairs.
85
+ * @throws Error - If the provided input is not valid Firestore data.
83
86
  * @returns This `WriteBatch` instance. Used for chaining method calls.
84
87
  */
85
88
  update(documentRef: DocumentReference<unknown>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): WriteBatch;
@@ -16,11 +16,16 @@
16
16
  */
17
17
  import { SnapshotVersion } from '../core/snapshot_version';
18
18
  import { MutableDocumentMap } from '../model/collections';
19
+ import { MutableDocument } from '../model/document';
19
20
  import { IndexManager } from './index_manager';
20
21
  import { LocalSerializer } from './local_serializer';
21
22
  import { PersistencePromise } from './persistence_promise';
22
23
  import { PersistenceTransaction } from './persistence_transaction';
23
24
  import { RemoteDocumentCache } from './remote_document_cache';
25
+ export interface DocumentSizeEntry {
26
+ document: MutableDocument;
27
+ size: number;
28
+ }
24
29
  export interface IndexedDbRemoteDocumentCache extends RemoteDocumentCache {
25
30
  }
26
31
  /**
@@ -21,10 +21,6 @@ import { SortedSet } from '../util/sorted_set';
21
21
  import { Document, MutableDocument } from './document';
22
22
  import { DocumentKey } from './document_key';
23
23
  /** Miscellaneous collection types / constants. */
24
- export interface DocumentSizeEntry {
25
- document: MutableDocument;
26
- size: number;
27
- }
28
24
  export declare type MutableDocumentMap = SortedMap<DocumentKey, MutableDocument>;
29
25
  export declare function mutableDocumentMap(): MutableDocumentMap;
30
26
  export interface DocumentSizeEntries {
@@ -61,6 +61,8 @@ export interface Document {
61
61
  */
62
62
  isUnknownDocument(): boolean;
63
63
  isEqual(other: Document | null | undefined): boolean;
64
+ /** Creates a mutable copy of this document. */
65
+ mutableCopy(): MutableDocument;
64
66
  toString(): string;
65
67
  }
66
68
  /**
@@ -124,7 +126,7 @@ export declare class MutableDocument implements Document {
124
126
  isNoDocument(): boolean;
125
127
  isUnknownDocument(): boolean;
126
128
  isEqual(other: Document | null | undefined): boolean;
127
- clone(): MutableDocument;
129
+ mutableCopy(): MutableDocument;
128
130
  toString(): string;
129
131
  }
130
132
  /**
package/dist/index.d.ts CHANGED
@@ -1504,10 +1504,12 @@ export declare function setLogLevel(logLevel: LogLevel): void;
1504
1504
  *
1505
1505
  * @param merge - Changes the behavior of a `setDoc()` call to only replace the
1506
1506
  * values specified in its data argument. Fields omitted from the `setDoc()`
1507
- * call remain untouched.
1507
+ * call remain untouched. If your input sets any field to an empty map, all
1508
+ * nested fields are overwritten.
1508
1509
  * @param mergeFields - Changes the behavior of `setDoc()` calls to only replace
1509
1510
  * the specified field paths. Any field path that is not specified is ignored
1510
- * and remains untouched.
1511
+ * and remains untouched. If your input sets any field to an empty map, all
1512
+ * nested fields are overwritten.
1511
1513
  */
1512
1514
  export declare type SetOptions = {
1513
1515
  readonly merge?: boolean;
@@ -1797,6 +1799,7 @@ export declare class Transaction {
1797
1799
  *
1798
1800
  * @param documentRef - A reference to the document to be set.
1799
1801
  * @param data - An object of the fields and values for the document.
1802
+ * @throws Error - If the provided input is not a valid Firestore document.
1800
1803
  * @returns This `Transaction` instance. Used for chaining method calls.
1801
1804
  */
1802
1805
  set<T>(documentRef: DocumentReference<T>, data: WithFieldValue<T>): this;
@@ -1809,6 +1812,7 @@ export declare class Transaction {
1809
1812
  * @param documentRef - A reference to the document to be set.
1810
1813
  * @param data - An object of the fields and values for the document.
1811
1814
  * @param options - An object to configure the set behavior.
1815
+ * @throws Error - If the provided input is not a valid Firestore document.
1812
1816
  * @returns This `Transaction` instance. Used for chaining method calls.
1813
1817
  */
1814
1818
  set<T>(documentRef: DocumentReference<T>, data: PartialWithFieldValue<T>, options: SetOptions): this;
@@ -1821,6 +1825,7 @@ export declare class Transaction {
1821
1825
  * @param data - An object containing the fields and values with which to
1822
1826
  update the document. Fields can contain dots to reference nested fields
1823
1827
  within the document.
1828
+ * @throws Error - If the provided input is not valid Firestore data.
1824
1829
  * @returns This `Transaction` instance. Used for chaining method calls.
1825
1830
  */
1826
1831
  update<T>(documentRef: DocumentReference<T>, data: UpdateData<T>): this;
@@ -1836,6 +1841,7 @@ within the document.
1836
1841
  * @param field - The first field to update.
1837
1842
  * @param value - The first value.
1838
1843
  * @param moreFieldsAndValues - Additional key/value pairs.
1844
+ * @throws Error - If the provided input is not valid Firestore data.
1839
1845
  * @returns This `Transaction` instance. Used for chaining method calls.
1840
1846
  */
1841
1847
  update(documentRef: DocumentReference<unknown>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): this;
@@ -1973,6 +1979,7 @@ export declare class WriteBatch {
1973
1979
  * @param documentRef - A reference to the document to be set.
1974
1980
  * @param data - An object of the fields and values for the document.
1975
1981
  * @param options - An object to configure the set behavior.
1982
+ * @throws Error - If the provided input is not a valid Firestore document.
1976
1983
  * @returns This `WriteBatch` instance. Used for chaining method calls.
1977
1984
  */
1978
1985
  set<T>(documentRef: DocumentReference<T>, data: PartialWithFieldValue<T>, options: SetOptions): WriteBatch;
@@ -1985,6 +1992,7 @@ export declare class WriteBatch {
1985
1992
  * @param data - An object containing the fields and values with which to
1986
1993
  * update the document. Fields can contain dots to reference nested fields
1987
1994
  * within the document.
1995
+ * @throws Error - If the provided input is not valid Firestore data.
1988
1996
  * @returns This `WriteBatch` instance. Used for chaining method calls.
1989
1997
  */
1990
1998
  update<T>(documentRef: DocumentReference<T>, data: UpdateData<T>): WriteBatch;
@@ -2000,6 +2008,7 @@ export declare class WriteBatch {
2000
2008
  * @param field - The first field to update.
2001
2009
  * @param value - The first value.
2002
2010
  * @param moreFieldsAndValues - Additional key value pairs.
2011
+ * @throws Error - If the provided input is not valid Firestore data.
2003
2012
  * @returns This `WriteBatch` instance. Used for chaining method calls.
2004
2013
  */
2005
2014
  update(documentRef: DocumentReference<unknown>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): WriteBatch;