@firebase/firestore 3.4.1-canary.c2fff0c6a → 3.4.2-canary.044a8d7f9

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 (70) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
  3. package/dist/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
  4. package/dist/firestore/src/index/index_byte_encoder.d.ts +14 -0
  5. package/dist/firestore/src/index/ordered_code_writer.d.ts +60 -0
  6. package/dist/firestore/src/lite-api/reference.d.ts +4 -2
  7. package/dist/firestore/src/model/values.d.ts +3 -0
  8. package/dist/firestore/src/util/byte_string.d.ts +1 -0
  9. package/dist/firestore/src/util/error.d.ts +2 -3
  10. package/dist/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
  11. package/dist/firestore/test/util/helpers.d.ts +1 -0
  12. package/dist/index.d.ts +6 -21
  13. package/dist/index.esm2017.js +2639 -2630
  14. package/dist/index.esm2017.js.map +1 -1
  15. package/dist/index.esm5.js +2601 -2591
  16. package/dist/index.esm5.js.map +1 -1
  17. package/dist/index.node.cjs.js +38 -20
  18. package/dist/index.node.cjs.js.map +1 -1
  19. package/dist/index.node.mjs +38 -20
  20. package/dist/index.node.mjs.map +1 -1
  21. package/dist/index.rn.js +2837 -2828
  22. package/dist/index.rn.js.map +1 -1
  23. package/dist/internal.d.ts +7 -21
  24. package/dist/lite/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
  25. package/dist/lite/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
  26. package/dist/lite/firestore/src/index/index_byte_encoder.d.ts +14 -0
  27. package/dist/lite/firestore/src/index/ordered_code_writer.d.ts +60 -0
  28. package/dist/lite/firestore/src/lite-api/reference.d.ts +4 -2
  29. package/dist/lite/firestore/src/model/values.d.ts +3 -0
  30. package/dist/lite/firestore/src/util/byte_string.d.ts +1 -0
  31. package/dist/lite/firestore/src/util/error.d.ts +2 -3
  32. package/dist/lite/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
  33. package/dist/lite/firestore/test/util/helpers.d.ts +1 -0
  34. package/dist/lite/index.browser.esm2017.js +834 -822
  35. package/dist/lite/index.browser.esm2017.js.map +1 -1
  36. package/dist/lite/index.browser.esm5.js +835 -822
  37. package/dist/lite/index.browser.esm5.js.map +1 -1
  38. package/dist/lite/index.d.ts +6 -21
  39. package/dist/lite/index.node.cjs.js +23 -6
  40. package/dist/lite/index.node.cjs.js.map +1 -1
  41. package/dist/lite/index.node.mjs +24 -7
  42. package/dist/lite/index.node.mjs.map +1 -1
  43. package/dist/lite/index.rn.esm2017.js +833 -821
  44. package/dist/lite/index.rn.esm2017.js.map +1 -1
  45. package/dist/lite/internal.d.ts +7 -21
  46. package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +109 -109
  47. package/dist/lite/packages/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
  48. package/dist/lite/packages/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
  49. package/dist/lite/packages/firestore/src/index/index_byte_encoder.d.ts +14 -0
  50. package/dist/lite/packages/firestore/src/index/ordered_code_writer.d.ts +60 -0
  51. package/dist/lite/packages/firestore/src/lite-api/reference.d.ts +4 -2
  52. package/dist/lite/packages/firestore/src/model/values.d.ts +3 -0
  53. package/dist/lite/packages/firestore/src/util/byte_string.d.ts +1 -0
  54. package/dist/lite/packages/firestore/src/util/error.d.ts +2 -3
  55. package/dist/lite/packages/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
  56. package/dist/lite/packages/firestore/test/util/helpers.d.ts +1 -0
  57. package/dist/lite/private.d.ts +6 -21
  58. package/dist/packages/firestore/dist/index.esm2017.d.ts +156 -156
  59. package/dist/packages/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
  60. package/dist/packages/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
  61. package/dist/packages/firestore/src/index/index_byte_encoder.d.ts +14 -0
  62. package/dist/packages/firestore/src/index/ordered_code_writer.d.ts +60 -0
  63. package/dist/packages/firestore/src/lite-api/reference.d.ts +4 -2
  64. package/dist/packages/firestore/src/model/values.d.ts +3 -0
  65. package/dist/packages/firestore/src/util/byte_string.d.ts +1 -0
  66. package/dist/packages/firestore/src/util/error.d.ts +2 -3
  67. package/dist/packages/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
  68. package/dist/packages/firestore/test/util/helpers.d.ts +1 -0
  69. package/dist/private.d.ts +6 -21
  70. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @firebase/firestore
2
2
 
3
+ ## 3.4.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [`3b481f572`](https://github.com/firebase/firebase-js-sdk/commit/3b481f572456e1eab3435bfc25717770d95a8c49) [#5831](https://github.com/firebase/firebase-js-sdk/pull/5831) (fixes [#5754](https://github.com/firebase/firebase-js-sdk/issues/5754)) - FirestoreError and StorageError now extend FirebaseError
8
+
9
+ * [`7f05d22e8`](https://github.com/firebase/firebase-js-sdk/commit/7f05d22e827f1fd0732ad33fda203a20566d3964) [#5835](https://github.com/firebase/firebase-js-sdk/pull/5835) - Fixed an issue that can cause incomplete Query snapshots when the SDK is backgrounded during query execution.
10
+
11
+ * Updated dependencies [[`3b481f572`](https://github.com/firebase/firebase-js-sdk/commit/3b481f572456e1eab3435bfc25717770d95a8c49)]:
12
+ - @firebase/util@1.4.3
13
+ - @firebase/component@0.5.10
14
+
3
15
  ## 3.4.1
4
16
 
5
17
  ### Patch Changes
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { ByteString } from '../util/byte_string';
18
+ /** An index value encoder. */
19
+ export interface DirectionalIndexByteEncoder {
20
+ writeBytes(value: ByteString): void;
21
+ writeString(value: string): void;
22
+ writeNumber(value: number): void;
23
+ writeInfinity(): void;
24
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Value } from '../protos/firestore_proto_api';
18
+ import { DirectionalIndexByteEncoder } from './directional_index_byte_encoder';
19
+ /** Firestore index value writer. */
20
+ export declare class FirestoreIndexValueWriter {
21
+ static INSTANCE: FirestoreIndexValueWriter;
22
+ private constructor();
23
+ /** Writes an index value. */
24
+ writeIndexValue(value: Value, encoder: DirectionalIndexByteEncoder): void;
25
+ private writeIndexValueAux;
26
+ private writeIndexString;
27
+ private writeUnlabeledIndexString;
28
+ private writeIndexMap;
29
+ private writeIndexArray;
30
+ private writeIndexEntityRef;
31
+ private writeValueTypeLabel;
32
+ private writeTruncationMarker;
33
+ }
@@ -0,0 +1,14 @@
1
+ import { DirectionalIndexByteEncoder } from './directional_index_byte_encoder';
2
+ /**
3
+ * Implements `DirectionalIndexByteEncoder` using `OrderedCodeWriter` for the
4
+ * actual encoding.
5
+ */
6
+ export declare class IndexByteEncoder {
7
+ private orderedCode;
8
+ private ascending;
9
+ private descending;
10
+ seed(encodedBytes: Uint8Array): void;
11
+ forKind(kind: 'asc' | 'desc'): DirectionalIndexByteEncoder;
12
+ encodedBytes(): Uint8Array;
13
+ reset(): void;
14
+ }
@@ -0,0 +1,60 @@
1
+ import { ByteString } from '../util/byte_string';
2
+ /**
3
+ * Counts the number of zeros in a byte.
4
+ *
5
+ * Visible for testing.
6
+ */
7
+ export declare function numberOfLeadingZerosInByte(x: number): number;
8
+ /**
9
+ * OrderedCodeWriter is a minimal-allocation implementation of the writing
10
+ * behavior defined by the backend.
11
+ *
12
+ * The code is ported from its Java counterpart.
13
+ */
14
+ export declare class OrderedCodeWriter {
15
+ buffer: Uint8Array;
16
+ position: number;
17
+ writeBytesAscending(value: ByteString): void;
18
+ writeBytesDescending(value: ByteString): void;
19
+ /** Writes utf8 bytes into this byte sequence, ascending. */
20
+ writeUtf8Ascending(sequence: string): void;
21
+ /** Writes utf8 bytes into this byte sequence, descending */
22
+ writeUtf8Descending(sequence: string): void;
23
+ writeNumberAscending(val: number): void;
24
+ writeNumberDescending(val: number): void;
25
+ /**
26
+ * Writes the "infinity" byte sequence that sorts after all other byte
27
+ * sequences written in ascending order.
28
+ */
29
+ writeInfinityAscending(): void;
30
+ /**
31
+ * Writes the "infinity" byte sequence that sorts before all other byte
32
+ * sequences written in descending order.
33
+ */
34
+ writeInfinityDescending(): void;
35
+ /**
36
+ * Resets the buffer such that it is the same as when it was newly
37
+ * constructed.
38
+ */
39
+ reset(): void;
40
+ seed(encodedBytes: Uint8Array): void;
41
+ /** Makes a copy of the encoded bytes in this buffer. */
42
+ encodedBytes(): Uint8Array;
43
+ /**
44
+ * Encodes `val` into an encoding so that the order matches the IEEE 754
45
+ * floating-point comparison results with the following exceptions:
46
+ * -0.0 < 0.0
47
+ * all non-NaN < NaN
48
+ * NaN = NaN
49
+ */
50
+ private toOrderedBits;
51
+ /** Writes a single byte ascending to the buffer. */
52
+ private writeByteAscending;
53
+ /** Writes a single byte descending to the buffer. */
54
+ private writeByteDescending;
55
+ private writeSeparatorAscending;
56
+ private writeSeparatorDescending;
57
+ private writeEscapedByteAscending;
58
+ private writeEscapedByteDescending;
59
+ private ensureAvailable;
60
+ }
@@ -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;
@@ -18,6 +18,7 @@ import { DatabaseId } from '../core/database_info';
18
18
  import { ArrayValue, MapValue, Value } from '../protos/firestore_proto_api';
19
19
  import { DocumentKey } from './document_key';
20
20
  import { TypeOrder } from './type_order';
21
+ export declare const MAX_VALUE: Value;
21
22
  /** Extracts the backend's type order for the provided value. */
22
23
  export declare function typeOrder(value: Value): TypeOrder;
23
24
  /** Tests `left` and `right` for equality based on the backend semantics. */
@@ -73,3 +74,5 @@ export declare function isMapValue(value?: Value | null): value is {
73
74
  };
74
75
  /** Creates a deep copy of `source`. */
75
76
  export declare function deepClone(source: Value): Value;
77
+ /** Returns true if the Value represents the canonical {@link #MAX_VALUE} . */
78
+ export declare function isMaxValue(value: Value): boolean;
@@ -29,6 +29,7 @@ export declare class ByteString {
29
29
  private constructor();
30
30
  static fromBase64String(base64: string): ByteString;
31
31
  static fromUint8Array(array: Uint8Array): ByteString;
32
+ [Symbol.iterator](): Iterator<number>;
32
33
  toBase64(): string;
33
34
  toUint8Array(): Uint8Array;
34
35
  approximateByteSize(): number;
@@ -14,6 +14,7 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
+ import { FirebaseError } from '@firebase/util';
17
18
  /**
18
19
  * The set of Firestore status codes. The codes are the same at the ones
19
20
  * exposed by gRPC here:
@@ -170,7 +171,7 @@ export declare const Code: {
170
171
  DATA_LOSS: FirestoreErrorCode;
171
172
  };
172
173
  /** An error returned by a Firestore operation. */
173
- export declare class FirestoreError extends Error {
174
+ export declare class FirestoreError extends FirebaseError {
174
175
  /**
175
176
  * The backend error code associated with this error.
176
177
  */
@@ -179,8 +180,6 @@ export declare class FirestoreError extends Error {
179
180
  * A custom error description.
180
181
  */
181
182
  readonly message: string;
182
- /** The custom name for all FirestoreErrors. */
183
- readonly name: string;
184
183
  /** The stack of the error. */
185
184
  readonly stack?: string;
186
185
  /** @hideconstructor */
@@ -71,6 +71,7 @@ export declare function bound(values: Array<[string, {}, firestore.OrderByDirect
71
71
  export declare function query(resourcePath: string, ...constraints: Array<OrderBy | Filter>): Query;
72
72
  export declare function targetData(targetId: TargetId, queryPurpose: TargetPurpose, path: string): TargetData;
73
73
  export declare function noChangeEvent(targetId: number, snapshotVersion: number, resumeToken?: ByteString): RemoteEvent;
74
+ export declare function existenceFilterEvent(targetId: number, count: number, snapshotVersion: number): RemoteEvent;
74
75
  export declare function docAddedRemoteEvent(docOrDocs: MutableDocument | MutableDocument[], updatedInTargets?: TargetId[], removedFromTargets?: TargetId[], activeTargets?: TargetId[]): RemoteEvent;
75
76
  export declare function docUpdateRemoteEvent(doc: MutableDocument, updatedInTargets?: TargetId[], removedFromTargets?: TargetId[], limboTargets?: TargetId[]): RemoteEvent;
76
77
  export declare class TestBundledDocuments {
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  import { FirebaseApp } from '@firebase/app';
7
7
  import { LogLevelString as LogLevel } from '@firebase/logger';
8
8
  import { EmulatorMockTokenOptions } from '@firebase/util';
9
+ import { FirebaseError } from '@firebase/util';
9
10
 
10
11
  /**
11
12
  * Add a new document to specified `CollectionReference` with the given data,
@@ -684,7 +685,7 @@ export declare interface FirestoreDataConverter<T> {
684
685
  fromFirestore(snapshot: QueryDocumentSnapshot<DocumentData>, options?: SnapshotOptions): T;
685
686
  }
686
687
  /** An error returned by a Firestore operation. */
687
- export declare class FirestoreError extends Error {
688
+ export declare class FirestoreError extends FirebaseError {
688
689
  /**
689
690
  * The backend error code associated with this error.
690
691
  */
@@ -693,28 +694,10 @@ export declare class FirestoreError extends Error {
693
694
  * A custom error description.
694
695
  */
695
696
  readonly message: string;
696
- /** The custom name for all FirestoreErrors. */
697
- readonly name: string;
698
697
  /** The stack of the error. */
699
698
  readonly stack?: string;
700
699
  private constructor();
701
700
  }
702
- /**
703
- * @license
704
- * Copyright 2017 Google LLC
705
- *
706
- * Licensed under the Apache License, Version 2.0 (the "License");
707
- * you may not use this file except in compliance with the License.
708
- * You may obtain a copy of the License at
709
- *
710
- * http://www.apache.org/licenses/LICENSE-2.0
711
- *
712
- * Unless required by applicable law or agreed to in writing, software
713
- * distributed under the License is distributed on an "AS IS" BASIS,
714
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
715
- * See the License for the specific language governing permissions and
716
- * limitations under the License.
717
- */
718
701
  /**
719
702
  * The set of Firestore status codes. The codes are the same at the ones
720
703
  * exposed by gRPC here:
@@ -1504,10 +1487,12 @@ export declare function setLogLevel(logLevel: LogLevel): void;
1504
1487
  *
1505
1488
  * @param merge - Changes the behavior of a `setDoc()` call to only replace the
1506
1489
  * values specified in its data argument. Fields omitted from the `setDoc()`
1507
- * call remain untouched.
1490
+ * call remain untouched. If your input sets any field to an empty map, all
1491
+ * nested fields are overwritten.
1508
1492
  * @param mergeFields - Changes the behavior of `setDoc()` calls to only replace
1509
1493
  * the specified field paths. Any field path that is not specified is ignored
1510
- * and remains untouched.
1494
+ * and remains untouched. If your input sets any field to an empty map, all
1495
+ * nested fields are overwritten.
1511
1496
  */
1512
1497
  export declare type SetOptions = {
1513
1498
  readonly merge?: boolean;