Skip to content

Commit 205d1c8

Browse files
committed
Merge branch 'master' into wuandy/Bundles
# Conflicts: # packages/firestore/src/api/database.ts # packages/firestore/test/unit/specs/spec_builder.ts
2 parents 1b3d633 + eff049b commit 205d1c8

File tree

148 files changed

+3136
-1819
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

148 files changed

+3136
-1819
lines changed

.changeset/config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"@firebase/performance-types-exp",
2525
"@firebase/remote-config-exp",
2626
"@firebase/remote-config-types-exp",
27+
"@firebase/remote-config-compat",
2728
"firebase-exp",
2829
"@firebase/app-compat",
2930
"@firebase/changelog-generator",

.changeset/fast-impalas-tickle.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@firebase/firestore": patch
3+
---
4+
5+
Fixed an issue that caused `DocumentReference`s in `DocumentSnapshot`s to be returned with the custom converter of the original `DocumentReference`.

.changeset/gentle-gifts-sort.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@firebase/auth': patch
3+
---
4+
5+
Retry IndexedDB errors a fixed number of times to handle connection issues in mobile webkit.

.changeset/short-mangos-beg.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@firebase/firestore": patch
3+
---
4+
5+
Internal changes to support upcoming modular API.

.github/CODEOWNERS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,4 +103,5 @@ packages/performance-types-exp @alikn @zijianjoy @firebase/jssdk-global-approve
103103

104104
# RC-Exp Code
105105
packages/remote-config-exp @erikeldridge @firebase/jssdk-global-approvers
106-
packages/remote-config-types-exp @erikeldridge @firebase/jssdk-global-approvers
106+
packages/remote-config-types-exp @erikeldridge @firebase/jssdk-global-approvers
107+
packages/remote-config-compat @erikeldridge @firebase/jssdk-global-approvers

common/api-review/auth-exp.api.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import { Auth } from '@firebase/auth-types-exp';
88
import { CompleteFn } from '@firebase/util';
9+
import { ErrorFactory } from '@firebase/util';
910
import { ErrorFn } from '@firebase/util';
1011
import * as externs from '@firebase/auth-types-exp';
1112
import { FirebaseApp } from '@firebase/app-types-exp';
@@ -82,6 +83,9 @@ export function createUserWithEmailAndPassword(auth: externs.Auth, email: string
8283
// @public
8384
export type CustomParameters = Record<string, string>;
8485

86+
// @public
87+
export const debugErrorMap: externs.AuthErrorMap;
88+
8589
// @public
8690
export function deleteUser(user: externs.User): Promise<void>;
8791

@@ -309,6 +313,9 @@ export class PhoneMultiFactorGenerator implements externs.PhoneMultiFactorGenera
309313
static assertion(credential: externs.PhoneAuthCredential): externs.PhoneMultiFactorAssertion;
310314
}
311315

316+
// @public
317+
export const prodErrorMap: externs.AuthErrorMap;
318+
312319
// @public
313320
export function reauthenticateWithCredential(user: externs.User, credential: externs.AuthCredential): Promise<externs.UserCredential>;
314321

common/api-review/remote-config-exp.api.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,37 +9,37 @@ import { LogLevel } from '@firebase/remote-config-types-exp';
99
import { RemoteConfig } from '@firebase/remote-config-types-exp';
1010
import { Value } from '@firebase/remote-config-types-exp';
1111

12-
// @public (undocumented)
12+
// @public
1313
export function activate(remoteConfig: RemoteConfig): Promise<boolean>;
1414

15-
// @public (undocumented)
15+
// @public
1616
export function ensureInitialized(remoteConfig: RemoteConfig): Promise<void>;
1717

18-
// @public (undocumented)
18+
// @public
1919
export function fetchAndActivate(remoteConfig: RemoteConfig): Promise<boolean>;
2020

21-
// @public (undocumented)
21+
// @public
2222
export function fetchConfig(remoteConfig: RemoteConfig): Promise<void>;
2323

24-
// @public (undocumented)
24+
// @public
2525
export function getAll(remoteConfig: RemoteConfig): Record<string, Value>;
2626

27-
// @public (undocumented)
27+
// @public
2828
export function getBoolean(remoteConfig: RemoteConfig, key: string): boolean;
2929

30-
// @public (undocumented)
30+
// @public
3131
export function getNumber(remoteConfig: RemoteConfig, key: string): number;
3232

3333
// @public (undocumented)
3434
export function getRemoteConfig(app: FirebaseApp): RemoteConfig;
3535

36-
// @public (undocumented)
36+
// @public
3737
export function getString(remoteConfig: RemoteConfig, key: string): string;
3838

39-
// @public (undocumented)
39+
// @public
4040
export function getValue(remoteConfig: RemoteConfig, key: string): Value;
4141

42-
// @public (undocumented)
42+
// @public
4343
export function setLogLevel(remoteConfig: RemoteConfig, logLevel: LogLevel): void;
4444

4545

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
## API Report File for "@firebase/remote-config-types-exp"
2+
3+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4+
5+
```ts
6+
7+
// @public
8+
export type FetchStatus = 'no-fetch-yet' | 'success' | 'failure' | 'throttle';
9+
10+
// @public
11+
export type LogLevel = 'debug' | 'error' | 'silent';
12+
13+
// @public
14+
export interface RemoteConfig {
15+
defaultConfig: { [key: string]: string | number | boolean };
16+
17+
fetchTimeMillis: number;
18+
19+
lastFetchStatus: FetchStatus;
20+
21+
settings: Settings;
22+
}
23+
24+
// @public
25+
export interface Settings {
26+
fetchTimeoutMillis: number;
27+
28+
minimumFetchIntervalMillis: number;
29+
}
30+
31+
// @public
32+
export interface Value {
33+
asBoolean(): boolean;
34+
35+
asNumber(): number;
36+
37+
asString(): string;
38+
39+
getSource(): ValueSource;
40+
}
41+
42+
// @public
43+
export type ValueSource = 'static' | 'default' | 'remote';
44+
45+
46+
// (No @packageDocumentation comment for this package)
47+
48+
```

docs-exp/auth.autherrorcode.md

Lines changed: 0 additions & 112 deletions
This file was deleted.

docs-exp/auth.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,6 @@
2323
| [RecaptchaVerifier](./auth.recaptchaverifier.md) | An [reCAPTCHA](https://www.google.com/recaptcha/)<!-- -->-based application verifier. |
2424
| [TwitterAuthProvider](./auth.twitterauthprovider.md) | Provider for generating an [OAuthCredential](./auth.oauthcredential.md) for [ProviderId.TWITTER](./auth-types.providerid.twitter.md)<!-- -->. |
2525

26-
## Enumerations
27-
28-
| Enumeration | Description |
29-
| --- | --- |
30-
| [AuthErrorCode](./auth.autherrorcode.md) | Enumeration of Firebase Auth error codes. |
31-
3226
## Functions
3327

3428
| Function | Description |

docs-exp/auth.reauthenticatewithcredential.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,5 @@ Promise&lt;externs.[UserCredential](./auth-types.usercredential.md)<!-- -->&gt;
2525

2626
## Remarks
2727

28-
Use before operations such as [updatePassword()](./auth.updatepassword.md) that require tokens from recent sign-in attempts. This method can be used to recover from a [AuthErrorCode.CREDENTIAL\_TOO\_OLD\_LOGIN\_AGAIN](./auth.autherrorcode.credential_too_old_login_again.md) error.
28+
Use before operations such as [updatePassword()](./auth.updatepassword.md) that require tokens from recent sign-in attempts. This method can be used to recover from a error.
2929

docs-exp/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,6 @@
1919
| [@firebase/installations-types](./installations-types.md) | |
2020
| [@firebase/performance](./performance.md) | |
2121
| [@firebase/performance-types](./performance-types.md) | |
22+
| [@firebase/remote-config](./remote-config.md) | |
23+
| [@firebase/remote-config-types](./remote-config-types.md) | |
2224

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md) &gt; [FetchStatus](./remote-config-types.fetchstatus.md)
4+
5+
## FetchStatus type
6+
7+
Summarizes the outcome of the last attempt to fetch config from the Firebase Remote Config server.
8+
9+
<ul> <li>"no-fetch-yet" indicates the [RemoteConfig](./remote-config-types.remoteconfig.md) instance has not yet attempted to fetch config, or that SDK initialization is incomplete.</li> <li>"success" indicates the last attempt succeeded.</li> <li>"failure" indicates the last attempt failed.</li> <li>"throttle" indicates the last attempt was rate-limited.</li> </ul>
10+
11+
<b>Signature:</b>
12+
13+
```typescript
14+
export type FetchStatus = 'no-fetch-yet' | 'success' | 'failure' | 'throttle';
15+
```
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md) &gt; [LogLevel](./remote-config-types.loglevel.md)
4+
5+
## LogLevel type
6+
7+
Defines levels of Remote Config logging.
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
export type LogLevel = 'debug' | 'error' | 'silent';
13+
```

docs-exp/remote-config-types.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md)
4+
5+
## remote-config-types package
6+
7+
## Interfaces
8+
9+
| Interface | Description |
10+
| --- | --- |
11+
| [RemoteConfig](./remote-config-types.remoteconfig.md) | The Firebase Remote Config service interface. |
12+
| [Settings](./remote-config-types.settings.md) | Defines configuration options for the Remote Config SDK. |
13+
| [Value](./remote-config-types.value.md) | Wraps a value with metadata and type-safe getters. |
14+
15+
## Type Aliases
16+
17+
| Type Alias | Description |
18+
| --- | --- |
19+
| [FetchStatus](./remote-config-types.fetchstatus.md) | Summarizes the outcome of the last attempt to fetch config from the Firebase Remote Config server.<ul> <li>"no-fetch-yet" indicates the [RemoteConfig](./remote-config-types.remoteconfig.md) instance has not yet attempted to fetch config, or that SDK initialization is incomplete.</li> <li>"success" indicates the last attempt succeeded.</li> <li>"failure" indicates the last attempt failed.</li> <li>"throttle" indicates the last attempt was rate-limited.</li> </ul> |
20+
| [LogLevel](./remote-config-types.loglevel.md) | Defines levels of Remote Config logging. |
21+
| [ValueSource](./remote-config-types.valuesource.md) | Indicates the source of a value.<ul> <li>"static" indicates the value was defined by a static constant.</li> <li>"default" indicates the value was defined by default config.</li> <li>"remote" indicates the value was defined by fetched config.</li> </ul> |
22+
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md) &gt; [RemoteConfig](./remote-config-types.remoteconfig.md) &gt; [defaultConfig](./remote-config-types.remoteconfig.defaultconfig.md)
4+
5+
## RemoteConfig.defaultConfig property
6+
7+
Object containing default values for conigs.
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
defaultConfig: { [key: string]: string | number | boolean };
13+
```
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md) &gt; [RemoteConfig](./remote-config-types.remoteconfig.md) &gt; [fetchTimeMillis](./remote-config-types.remoteconfig.fetchtimemillis.md)
4+
5+
## RemoteConfig.fetchTimeMillis property
6+
7+
The Unix timestamp in milliseconds of the last <i>successful</i> fetch, or negative one if the [RemoteConfig](./remote-config-types.remoteconfig.md) instance either hasn't fetched or initialization is incomplete.
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
fetchTimeMillis: number;
13+
```
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@firebase/remote-config-types](./remote-config-types.md) &gt; [RemoteConfig](./remote-config-types.remoteconfig.md) &gt; [lastFetchStatus](./remote-config-types.remoteconfig.lastfetchstatus.md)
4+
5+
## RemoteConfig.lastFetchStatus property
6+
7+
The status of the last fetch <i>attempt</i>.
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
lastFetchStatus: FetchStatus;
13+
```

0 commit comments

Comments
 (0)