firebase-admin-edge 1.0.24 → 1.1.0

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 (62) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +343 -46
  3. package/dist/auth/auth-endpoint-errors.d.ts.map +1 -1
  4. package/dist/auth/auth-endpoint-errors.js +11 -0
  5. package/dist/auth/auth-endpoint-errors.js.map +1 -1
  6. package/dist/auth/auth-endpoint-errors.test.js +8 -0
  7. package/dist/auth/auth-endpoint-errors.test.js.map +1 -1
  8. package/dist/auth/auth-error-codes.d.ts +32 -0
  9. package/dist/auth/auth-error-codes.d.ts.map +1 -1
  10. package/dist/auth/auth-error-codes.js +32 -0
  11. package/dist/auth/auth-error-codes.js.map +1 -1
  12. package/dist/auth/firebase-admin-auth.d.ts +48 -0
  13. package/dist/auth/firebase-admin-auth.d.ts.map +1 -1
  14. package/dist/auth/firebase-admin-auth.js +248 -1
  15. package/dist/auth/firebase-admin-auth.js.map +1 -1
  16. package/dist/auth/firebase-admin-auth.test.js +391 -1
  17. package/dist/auth/firebase-admin-auth.test.js.map +1 -1
  18. package/dist/auth/firebase-auth-endpoints.d.ts +174 -1
  19. package/dist/auth/firebase-auth-endpoints.d.ts.map +1 -1
  20. package/dist/auth/firebase-auth-endpoints.js +232 -4
  21. package/dist/auth/firebase-auth-endpoints.js.map +1 -1
  22. package/dist/auth/firebase-auth-endpoints.test.js +210 -3
  23. package/dist/auth/firebase-auth-endpoints.test.js.map +1 -1
  24. package/dist/auth/firebase-auth.d.ts +7 -0
  25. package/dist/auth/firebase-auth.d.ts.map +1 -1
  26. package/dist/auth/firebase-auth.js +45 -3
  27. package/dist/auth/firebase-auth.js.map +1 -1
  28. package/dist/auth/firebase-auth.test.js +3 -3
  29. package/dist/auth/firebase-auth.test.js.map +1 -1
  30. package/dist/auth/firebase-types.d.ts +16 -6
  31. package/dist/auth/firebase-types.d.ts.map +1 -1
  32. package/dist/auth/oauth.d.ts +2 -2
  33. package/dist/auth/oauth.d.ts.map +1 -1
  34. package/dist/auth/oauth.js +8 -8
  35. package/dist/auth/oauth.js.map +1 -1
  36. package/dist/auth/oauth.test.js +11 -7
  37. package/dist/auth/oauth.test.js.map +1 -1
  38. package/dist/auth/user-record.d.ts +69 -0
  39. package/dist/auth/user-record.d.ts.map +1 -0
  40. package/dist/auth/user-record.js +104 -0
  41. package/dist/auth/user-record.js.map +1 -0
  42. package/dist/auth/user-record.test.d.ts +2 -0
  43. package/dist/auth/user-record.test.d.ts.map +1 -0
  44. package/dist/auth/user-record.test.js +198 -0
  45. package/dist/auth/user-record.test.js.map +1 -0
  46. package/dist/auth/user-request.d.ts +88 -0
  47. package/dist/auth/user-request.d.ts.map +1 -0
  48. package/dist/auth/user-request.js +242 -0
  49. package/dist/auth/user-request.js.map +1 -0
  50. package/dist/auth/user-request.test.d.ts +2 -0
  51. package/dist/auth/user-request.test.d.ts.map +1 -0
  52. package/dist/auth/user-request.test.js +269 -0
  53. package/dist/auth/user-request.test.js.map +1 -0
  54. package/dist/firebase-edge-errors.d.ts +4 -0
  55. package/dist/firebase-edge-errors.d.ts.map +1 -1
  56. package/dist/firebase-edge-errors.js +4 -0
  57. package/dist/firebase-edge-errors.js.map +1 -1
  58. package/dist/firebase-edge-server.d.ts +32 -0
  59. package/dist/firebase-edge-server.d.ts.map +1 -1
  60. package/dist/firebase-edge-server.js +170 -3
  61. package/dist/firebase-edge-server.js.map +1 -1
  62. package/package.json +8 -4
@@ -1,22 +1,74 @@
1
- import type { FirebaseCreateAuthUriResponse, FirebaseIdpSignInResponse, FirebaseRefreshTokenResponse, FirebaseUpdateAccountResponse, UserInfo } from './firebase-types.js';
1
+ import type { FirebaseCreateAuthUriResponse, FirebaseIdpSignInResponse, FirebaseRefreshTokenResponse, FirebaseUpdateAccountResponse, UpdateAccountRequest, UserInfo } from './firebase-types.js';
2
2
  import type { JsonWebKey } from 'crypto';
3
3
  import type { FirebaseEdgeError } from './errors.js';
4
+ import type { ListUsersResponse } from './user-record.js';
5
+ import type { UsersLookupRequest } from './user-request.js';
6
+ /** Look up a validated batch, allowing successful responses with no matching users. */
7
+ export declare function getAccountsInfo(identifiers: UsersLookupRequest, token: string, projectId: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
8
+ data: null;
9
+ error: Error;
10
+ } | {
11
+ data: ListUsersResponse;
12
+ error: null;
13
+ }>;
14
+ /**
15
+ * Exchanges a refresh token for a new Firebase ID token.
16
+ *
17
+ * @param refreshToken Firebase refresh token.
18
+ * @param key Firebase Web API key.
19
+ * @param fetchFn Optional fetch implementation (useful for runtimes like edge).
20
+ */
4
21
  export declare function refreshFirebaseIdToken(refreshToken: string, key: string, fetchFn?: typeof globalThis.fetch): Promise<{
5
22
  data: FirebaseRefreshTokenResponse | null;
6
23
  error: FirebaseEdgeError | null;
7
24
  }>;
25
+ /**
26
+ * Creates an Auth URI to initiate an OAuth sign-in flow (Google by default).
27
+ *
28
+ * @param redirect_uri Redirect/continue URL.
29
+ * @param key Firebase Web API key.
30
+ * @param tenantId Optional tenant ID.
31
+ * @param fetchFn Optional fetch implementation.
32
+ */
8
33
  export declare function createAuthUri(redirect_uri: string, key: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
9
34
  data: FirebaseCreateAuthUriResponse | null;
10
35
  error: FirebaseEdgeError | null;
11
36
  }>;
37
+ /**
38
+ * Signs a user in via an identity provider (Google/GitHub/etc.) using the IdP token.
39
+ *
40
+ * @param providerIdToken The IdP token (GitHub access token or OIDC ID token).
41
+ * @param requestUri The origin/URL of the sign-in request.
42
+ * @param providerId Provider ID (e.g. "google.com", "github.com").
43
+ * @param key Firebase Web API key.
44
+ * @param tenantId Optional tenant ID.
45
+ * @param fetchFn Optional fetch implementation.
46
+ */
12
47
  export declare function signInWithIdp(providerIdToken: string, requestUri: string, providerId: string | undefined, key: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
13
48
  data: FirebaseIdpSignInResponse | null;
14
49
  error: FirebaseEdgeError | null;
15
50
  }>;
51
+ /**
52
+ * Signs a user in with a Firebase custom token.
53
+ *
54
+ * @param jwtToken Firebase custom token (JWT).
55
+ * @param key Firebase Web API key.
56
+ * @param tenantId Optional tenant ID.
57
+ * @param fetchFn Optional fetch implementation.
58
+ */
16
59
  export declare function signInWithCustomToken(jwtToken: string, key: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
17
60
  data: FirebaseIdpSignInResponse | null;
18
61
  error: FirebaseEdgeError | null;
19
62
  }>;
63
+ /**
64
+ * Looks up a user record by UID, email, or phone number.
65
+ *
66
+ * @param identifier Lookup key (uid/email/phoneNumber).
67
+ * @param token Google OAuth access token with Identity Toolkit scope.
68
+ * @param project_id Firebase project ID.
69
+ * @param tenantId Optional tenant ID.
70
+ * @param fetchFn Optional fetch implementation.
71
+ */
20
72
  export declare function getAccountInfo(identifier: {
21
73
  uid: string;
22
74
  } | {
@@ -27,20 +79,62 @@ export declare function getAccountInfo(identifier: {
27
79
  data: UserInfo | null | undefined;
28
80
  error: FirebaseEdgeError | null;
29
81
  }>;
82
+ /**
83
+ * Downloads one page of user accounts for FirebaseAdminAuth.listUsers.
84
+ * @param token Google OAuth access token.
85
+ * @param project_id Firebase project ID.
86
+ * @param maxResults Page size, already validated by the admin auth method.
87
+ * @param pageToken Optional token from the previous page.
88
+ * @param tenantId Optional tenant ID.
89
+ * @param fetchFn Optional fetch implementation.
90
+ * @internal
91
+ */
92
+ export declare function downloadAccount(token: string, project_id: string, maxResults?: number, pageToken?: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
93
+ data: null;
94
+ error: Error;
95
+ } | {
96
+ data: ListUsersResponse;
97
+ error: null;
98
+ }>;
99
+ /**
100
+ * Creates a Firebase session cookie from an ID token.
101
+ *
102
+ * @param idToken Firebase ID token.
103
+ * @param token Google OAuth access token with Identity Toolkit scope.
104
+ * @param project_id Firebase project ID.
105
+ * @param expiresIn_ms Session cookie TTL in milliseconds.
106
+ * @param tenantId Optional tenant ID.
107
+ * @param fetchFn Optional fetch implementation.
108
+ */
30
109
  export declare function createSessionCookie(idToken: string, token: string, project_id: string, expiresIn_ms?: number, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
31
110
  data: string | null;
32
111
  error: FirebaseEdgeError | null;
33
112
  }>;
113
+ /**
114
+ * Fetches Secure Token Service JSON Web Keys (JWKs) used to verify Firebase ID tokens.
115
+ *
116
+ * @param fetchFn Optional fetch implementation.
117
+ */
34
118
  export declare function getJWKs(fetchFn?: typeof globalThis.fetch): Promise<{
35
119
  data: (JsonWebKey & {
36
120
  kid: string;
37
121
  })[] | null;
38
122
  error: FirebaseEdgeError | null;
39
123
  }>;
124
+ /**
125
+ * Fetches Firebase Auth public keys (legacy endpoint).
126
+ *
127
+ * @param fetchFn Optional fetch implementation.
128
+ */
40
129
  export declare function getPublicKeys(fetchFn?: typeof globalThis.fetch): Promise<{
41
130
  data: Record<string, string> | null;
42
131
  error: FirebaseEdgeError | null;
43
132
  }>;
133
+ /**
134
+ * Sends an out-of-band email action.
135
+ *
136
+ * Overloads support password reset and email verification.
137
+ */
44
138
  export declare function sendOobCode(requestType: 'PASSWORD_RESET', key: string, options: {
45
139
  email: string;
46
140
  locale?: string;
@@ -61,16 +155,95 @@ export declare function sendOobCode(requestType: 'VERIFY_EMAIL', key: string, op
61
155
  } | null;
62
156
  error: FirebaseEdgeError | null;
63
157
  }>;
158
+ /**
159
+ * Completes email-link sign-in using an OOB code.
160
+ *
161
+ * @param oobCode Out-of-band code from the email link.
162
+ * @param email Email address used in the sign-in flow.
163
+ * @param key Firebase Web API key.
164
+ * @param idToken Optional existing ID token (for linking flows).
165
+ * @param tenantId Optional tenant ID.
166
+ * @param fetchFn Optional fetch implementation.
167
+ */
64
168
  export declare function signInWithEmailLink(oobCode: string, email: string, key: string, idToken?: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
65
169
  data: FirebaseIdpSignInResponse | null;
66
170
  error: FirebaseEdgeError | null;
67
171
  }>;
172
+ /**
173
+ * Links an OAuth credential to an existing Firebase user.
174
+ *
175
+ * @param idToken Current user's Firebase ID token.
176
+ * @param providerIdToken The IdP token (GitHub access token or OIDC ID token).
177
+ * @param requestUri The origin/URL of the linking request.
178
+ * @param providerId Provider ID (e.g. "google.com", "github.com").
179
+ * @param key Firebase Web API key.
180
+ * @param tenantId Optional tenant ID.
181
+ * @param fetchFn Optional fetch implementation.
182
+ */
68
183
  export declare function linkWithOAuthCredential(idToken: string, providerIdToken: string, requestUri: string, providerId: string, key: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
69
184
  data: FirebaseIdpSignInResponse | null;
70
185
  error: FirebaseEdgeError | null;
71
186
  }>;
187
+ /**
188
+ * Unlinks a provider from a Firebase user.
189
+ *
190
+ * @param idToken Current user's Firebase ID token.
191
+ * @param providerId Provider ID to remove.
192
+ * @param key Firebase Web API key.
193
+ * @param tenantId Optional tenant ID.
194
+ * @param fetchFn Optional fetch implementation.
195
+ */
72
196
  export declare function unlinkProvider(idToken: string, providerId: string, key: string, tenantId?: string, fetchFn?: typeof globalThis.fetch): Promise<{
73
197
  data: FirebaseUpdateAccountResponse | null;
74
198
  error: FirebaseEdgeError | null;
75
199
  }>;
200
+ /**
201
+ * Updates a user via the Identity Toolkit Admin API.
202
+ *
203
+ * @param projectId Firebase project ID.
204
+ * @param localId User UID.
205
+ * @param updates UpdateAccount request fields.
206
+ * @param googleOAuthAccessToken Google OAuth access token with Identity Toolkit scope.
207
+ * @param fetchFn Optional fetch implementation.
208
+ * @param tenantId Optional tenant ID.
209
+ */
210
+ export declare function updateAccountAdmin(projectId: string, localId: string, updates: UpdateAccountRequest, googleOAuthAccessToken: string, fetchFn?: typeof globalThis.fetch, tenantId?: string): Promise<{
211
+ data: null;
212
+ error: Error;
213
+ } | {
214
+ data: FirebaseUpdateAccountResponse;
215
+ error: null;
216
+ }>;
217
+ /** Create an account using already validated and translated admin properties. */
218
+ export declare function createAccountAdmin(projectId: string, properties: UpdateAccountRequest, token: string, fetchFn?: typeof globalThis.fetch, tenantId?: string): Promise<{
219
+ data: null;
220
+ error: Error;
221
+ } | {
222
+ data: {
223
+ localId: string;
224
+ };
225
+ error: null;
226
+ }>;
227
+ /** Delete a single user account using admin credentials. */
228
+ export declare function deleteAccountAdmin(projectId: string, uid: string, token: string, fetchFn?: typeof globalThis.fetch, tenantId?: string): Promise<{
229
+ error: Error;
230
+ } | {
231
+ error: null;
232
+ }>;
233
+ /**
234
+ * Revokes refresh tokens for a user by setting `validSince` to now.
235
+ *
236
+ * @param projectId Firebase project ID.
237
+ * @param uid User UID.
238
+ * @param googleOAuthAccessToken Google OAuth access token with Identity Toolkit scope.
239
+ * @param fetchFn Optional fetch implementation.
240
+ * @param tenantId Optional tenant ID.
241
+ */
242
+ export declare function revokeRefreshTokens(projectId: string, uid: string, googleOAuthAccessToken: string, fetchFn?: typeof globalThis.fetch, tenantId?: string): Promise<{
243
+ data: null;
244
+ error: Error;
245
+ } | {
246
+ data: FirebaseUpdateAccountResponse;
247
+ error: null;
248
+ }>;
76
249
  //# sourceMappingURL=firebase-auth-endpoints.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"firebase-auth-endpoints.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-auth-endpoints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"firebase-auth-endpoints.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-auth-endpoints.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,53 @@
1
1
  import { restFetch } from '../rest-fetch.js';
2
2
  import { mapFirebaseError } from './auth-endpoint-errors.js';
3
+ import { ensureError } from './errors.js';
4
+ /** Look up a validated batch, allowing successful responses with no matching users. */
5
+ export async function getAccountsInfo(identifiers, token, projectId, tenantId, fetchFn) {
6
+ const url = createAdminIdentityURL(projectId, 'lookup', true, tenantId);
7
+ const { data, error } = await restFetch(url, {
8
+ body: identifiers,
9
+ bearerToken: token,
10
+ global: { fetch: fetchFn }
11
+ });
12
+ if (error)
13
+ return {
14
+ data: null,
15
+ error: typeof error === 'object' && error.error
16
+ ? mapFirebaseError(error.error)
17
+ : ensureError(error)
18
+ };
19
+ return { data, error: null };
20
+ }
3
21
  // Functions
22
+ /**
23
+ * Builds an Identity Toolkit Admin API URL.
24
+ *
25
+ * If a tenant ID is provided, the URL targets Identity Platform tenant resources.
26
+ */
4
27
  function createAdminIdentityURL(project_id, name, accounts = true, tenantId) {
28
+ const action = name ? `:${name}` : '';
5
29
  if (tenantId) {
6
30
  // Use Identity Platform API for tenant-specific operations
7
- return `https://identitytoolkit.googleapis.com/v1/projects/${project_id}/tenants/${tenantId}${accounts ? '/accounts' : ''}:${name}`;
31
+ return `https://identitytoolkit.googleapis.com/v1/projects/${project_id}/tenants/${tenantId}${accounts ? '/accounts' : ''}${action}`;
8
32
  }
9
- return `https://identitytoolkit.googleapis.com/v1/projects/${project_id}${accounts ? '/accounts' : ''}:${name}`;
33
+ return `https://identitytoolkit.googleapis.com/v1/projects/${project_id}${accounts ? '/accounts' : ''}${action}`;
10
34
  }
35
+ /**
36
+ * Builds a standard Firebase Auth REST API URL.
37
+ *
38
+ * Note: tenant ID is provided in the request body for these endpoints.
39
+ */
11
40
  function createIdentityURL(name) {
12
41
  // Standard Firebase Auth REST API - tenant ID goes in request body, not URL
13
42
  return `https://identitytoolkit.googleapis.com/v1/accounts:${name}`;
14
43
  }
44
+ /**
45
+ * Exchanges a refresh token for a new Firebase ID token.
46
+ *
47
+ * @param refreshToken Firebase refresh token.
48
+ * @param key Firebase Web API key.
49
+ * @param fetchFn Optional fetch implementation (useful for runtimes like edge).
50
+ */
15
51
  export async function refreshFirebaseIdToken(refreshToken, key, fetchFn) {
16
52
  const url = `https://securetoken.googleapis.com/v1/token`;
17
53
  const { data, error } = await restFetch(url, {
@@ -30,6 +66,14 @@ export async function refreshFirebaseIdToken(refreshToken, key, fetchFn) {
30
66
  error: error ? mapFirebaseError(error.error) : null
31
67
  };
32
68
  }
69
+ /**
70
+ * Creates an Auth URI to initiate an OAuth sign-in flow (Google by default).
71
+ *
72
+ * @param redirect_uri Redirect/continue URL.
73
+ * @param key Firebase Web API key.
74
+ * @param tenantId Optional tenant ID.
75
+ * @param fetchFn Optional fetch implementation.
76
+ */
33
77
  export async function createAuthUri(redirect_uri, key, tenantId, fetchFn) {
34
78
  const url = createIdentityURL('createAuthUri');
35
79
  const body = {
@@ -49,6 +93,16 @@ export async function createAuthUri(redirect_uri, key, tenantId, fetchFn) {
49
93
  error: error ? mapFirebaseError(error.error) : null
50
94
  };
51
95
  }
96
+ /**
97
+ * Signs a user in via an identity provider (Google/GitHub/etc.) using the IdP token.
98
+ *
99
+ * @param providerIdToken The IdP token (GitHub access token or OIDC ID token).
100
+ * @param requestUri The origin/URL of the sign-in request.
101
+ * @param providerId Provider ID (e.g. "google.com", "github.com").
102
+ * @param key Firebase Web API key.
103
+ * @param tenantId Optional tenant ID.
104
+ * @param fetchFn Optional fetch implementation.
105
+ */
52
106
  export async function signInWithIdp(providerIdToken, requestUri, providerId = 'google.com', key, tenantId, fetchFn) {
53
107
  const url = createIdentityURL('signInWithIdp');
54
108
  const tokenField = providerId === 'github.com' ? 'access_token' : 'id_token';
@@ -75,6 +129,14 @@ export async function signInWithIdp(providerIdToken, requestUri, providerId = 'g
75
129
  error: error ? mapFirebaseError(error.error) : null
76
130
  };
77
131
  }
132
+ /**
133
+ * Signs a user in with a Firebase custom token.
134
+ *
135
+ * @param jwtToken Firebase custom token (JWT).
136
+ * @param key Firebase Web API key.
137
+ * @param tenantId Optional tenant ID.
138
+ * @param fetchFn Optional fetch implementation.
139
+ */
78
140
  export async function signInWithCustomToken(jwtToken, key, tenantId, fetchFn) {
79
141
  const url = createIdentityURL('signInWithCustomToken');
80
142
  const body = {
@@ -94,10 +156,19 @@ export async function signInWithCustomToken(jwtToken, key, tenantId, fetchFn) {
94
156
  error: error ? mapFirebaseError(error.error) : null
95
157
  };
96
158
  }
159
+ /**
160
+ * Looks up a user record by UID, email, or phone number.
161
+ *
162
+ * @param identifier Lookup key (uid/email/phoneNumber).
163
+ * @param token Google OAuth access token with Identity Toolkit scope.
164
+ * @param project_id Firebase project ID.
165
+ * @param tenantId Optional tenant ID.
166
+ * @param fetchFn Optional fetch implementation.
167
+ */
97
168
  export async function getAccountInfo(identifier, token, project_id, tenantId, fetchFn) {
98
169
  const url = createAdminIdentityURL(project_id, 'lookup', true, tenantId);
99
170
  const body = {
100
- ...('uid' in identifier && { localId: identifier.uid }),
171
+ ...('uid' in identifier && { localId: [identifier.uid] }),
101
172
  ...('email' in identifier && { email: [identifier.email] }),
102
173
  ...('phoneNumber' in identifier && {
103
174
  phoneNumber: [identifier.phoneNumber]
@@ -109,12 +180,53 @@ export async function getAccountInfo(identifier, token, project_id, tenantId, fe
109
180
  body,
110
181
  bearerToken: token
111
182
  });
112
- const userData = data?.users.length ? data.users[0] : null;
183
+ const userData = data?.users?.length ? data.users[0] : null;
113
184
  return {
114
185
  data: userData,
115
186
  error: error ? mapFirebaseError(error.error) : null
116
187
  };
117
188
  }
189
+ /**
190
+ * Downloads one page of user accounts for FirebaseAdminAuth.listUsers.
191
+ * @param token Google OAuth access token.
192
+ * @param project_id Firebase project ID.
193
+ * @param maxResults Page size, already validated by the admin auth method.
194
+ * @param pageToken Optional token from the previous page.
195
+ * @param tenantId Optional tenant ID.
196
+ * @param fetchFn Optional fetch implementation.
197
+ * @internal
198
+ */
199
+ export async function downloadAccount(token, project_id, maxResults = 1000, pageToken, tenantId, fetchFn) {
200
+ const url = createAdminIdentityURL(project_id, 'batchGet', true, tenantId);
201
+ const { data, error } = await restFetch(url, {
202
+ method: 'GET',
203
+ bearerToken: token,
204
+ global: { fetch: fetchFn },
205
+ params: {
206
+ maxResults: String(maxResults),
207
+ ...(pageToken !== undefined && { nextPageToken: pageToken })
208
+ }
209
+ });
210
+ if (error) {
211
+ return {
212
+ data: null,
213
+ error: typeof error === 'object' && error.error
214
+ ? mapFirebaseError(error.error)
215
+ : ensureError(error)
216
+ };
217
+ }
218
+ return { data, error: null };
219
+ }
220
+ /**
221
+ * Creates a Firebase session cookie from an ID token.
222
+ *
223
+ * @param idToken Firebase ID token.
224
+ * @param token Google OAuth access token with Identity Toolkit scope.
225
+ * @param project_id Firebase project ID.
226
+ * @param expiresIn_ms Session cookie TTL in milliseconds.
227
+ * @param tenantId Optional tenant ID.
228
+ * @param fetchFn Optional fetch implementation.
229
+ */
118
230
  export async function createSessionCookie(idToken, token, project_id, expiresIn_ms = 60 * 60 * 24 * 14 * 1000, tenantId, fetchFn) {
119
231
  const url = createAdminIdentityURL(project_id, 'createSessionCookie', false, tenantId);
120
232
  const body = {
@@ -132,6 +244,11 @@ export async function createSessionCookie(idToken, token, project_id, expiresIn_
132
244
  error: error ? mapFirebaseError(error.error) : null
133
245
  };
134
246
  }
247
+ /**
248
+ * Fetches Secure Token Service JSON Web Keys (JWKs) used to verify Firebase ID tokens.
249
+ *
250
+ * @param fetchFn Optional fetch implementation.
251
+ */
135
252
  export async function getJWKs(fetchFn) {
136
253
  const url = 'https://www.googleapis.com/service_accounts/v1/jwk/securetoken@system.gserviceaccount.com';
137
254
  const { data, error } = await restFetch(url, {
@@ -143,6 +260,11 @@ export async function getJWKs(fetchFn) {
143
260
  error: error ? mapFirebaseError(error.error) : null
144
261
  };
145
262
  }
263
+ /**
264
+ * Fetches Firebase Auth public keys (legacy endpoint).
265
+ *
266
+ * @param fetchFn Optional fetch implementation.
267
+ */
146
268
  export async function getPublicKeys(fetchFn) {
147
269
  const url = 'https://www.googleapis.com/identitytoolkit/v3/relyingparty/publicKeys';
148
270
  const { data, error } = await restFetch(url, {
@@ -181,6 +303,16 @@ export async function sendOobCode(requestType, key, options, tenantId, fetchFn)
181
303
  error: error ? mapFirebaseError(error.error) : null
182
304
  };
183
305
  }
306
+ /**
307
+ * Completes email-link sign-in using an OOB code.
308
+ *
309
+ * @param oobCode Out-of-band code from the email link.
310
+ * @param email Email address used in the sign-in flow.
311
+ * @param key Firebase Web API key.
312
+ * @param idToken Optional existing ID token (for linking flows).
313
+ * @param tenantId Optional tenant ID.
314
+ * @param fetchFn Optional fetch implementation.
315
+ */
184
316
  export async function signInWithEmailLink(oobCode, email, key, idToken, tenantId, fetchFn) {
185
317
  const url = createIdentityURL('signInWithEmailLink');
186
318
  const body = {
@@ -201,6 +333,17 @@ export async function signInWithEmailLink(oobCode, email, key, idToken, tenantId
201
333
  error: error ? mapFirebaseError(error.error) : null
202
334
  };
203
335
  }
336
+ /**
337
+ * Links an OAuth credential to an existing Firebase user.
338
+ *
339
+ * @param idToken Current user's Firebase ID token.
340
+ * @param providerIdToken The IdP token (GitHub access token or OIDC ID token).
341
+ * @param requestUri The origin/URL of the linking request.
342
+ * @param providerId Provider ID (e.g. "google.com", "github.com").
343
+ * @param key Firebase Web API key.
344
+ * @param tenantId Optional tenant ID.
345
+ * @param fetchFn Optional fetch implementation.
346
+ */
204
347
  export async function linkWithOAuthCredential(idToken, providerIdToken, requestUri, providerId, key, tenantId, fetchFn) {
205
348
  const url = createIdentityURL('signInWithIdp');
206
349
  const tokenField = providerId === 'github.com' ? 'access_token' : 'id_token';
@@ -228,6 +371,15 @@ export async function linkWithOAuthCredential(idToken, providerIdToken, requestU
228
371
  error: error ? mapFirebaseError(error.error) : null
229
372
  };
230
373
  }
374
+ /**
375
+ * Unlinks a provider from a Firebase user.
376
+ *
377
+ * @param idToken Current user's Firebase ID token.
378
+ * @param providerId Provider ID to remove.
379
+ * @param key Firebase Web API key.
380
+ * @param tenantId Optional tenant ID.
381
+ * @param fetchFn Optional fetch implementation.
382
+ */
231
383
  export async function unlinkProvider(idToken, providerId, key, tenantId, fetchFn) {
232
384
  const url = createIdentityURL('update');
233
385
  const body = {
@@ -247,4 +399,80 @@ export async function unlinkProvider(idToken, providerId, key, tenantId, fetchFn
247
399
  error: error ? mapFirebaseError(error.error) : null
248
400
  };
249
401
  }
402
+ /**
403
+ * Updates a user via the Identity Toolkit Admin API.
404
+ *
405
+ * @param projectId Firebase project ID.
406
+ * @param localId User UID.
407
+ * @param updates UpdateAccount request fields.
408
+ * @param googleOAuthAccessToken Google OAuth access token with Identity Toolkit scope.
409
+ * @param fetchFn Optional fetch implementation.
410
+ * @param tenantId Optional tenant ID.
411
+ */
412
+ export async function updateAccountAdmin(projectId, localId, updates, googleOAuthAccessToken, fetchFn, tenantId) {
413
+ const url = createAdminIdentityURL(projectId, 'update', true, tenantId);
414
+ const body = {
415
+ localId,
416
+ ...updates
417
+ };
418
+ const { data, error } = await restFetch(url, {
419
+ global: { fetch: fetchFn },
420
+ body,
421
+ bearerToken: googleOAuthAccessToken
422
+ });
423
+ if (error)
424
+ return {
425
+ data: null,
426
+ error: typeof error === 'object' && error.error
427
+ ? mapFirebaseError(error.error)
428
+ : ensureError(error)
429
+ };
430
+ return { data, error: null };
431
+ }
432
+ /** Create an account using already validated and translated admin properties. */
433
+ export async function createAccountAdmin(projectId, properties, token, fetchFn, tenantId) {
434
+ const url = createAdminIdentityURL(projectId, '', true, tenantId);
435
+ const { data, error } = await restFetch(url, {
436
+ body: properties,
437
+ bearerToken: token,
438
+ global: { fetch: fetchFn }
439
+ });
440
+ if (error)
441
+ return {
442
+ data: null,
443
+ error: typeof error === 'object' && error.error
444
+ ? mapFirebaseError(error.error)
445
+ : ensureError(error)
446
+ };
447
+ return { data, error: null };
448
+ }
449
+ /** Delete a single user account using admin credentials. */
450
+ export async function deleteAccountAdmin(projectId, uid, token, fetchFn, tenantId) {
451
+ const url = createAdminIdentityURL(projectId, 'delete', true, tenantId);
452
+ const { error } = await restFetch(url, {
453
+ body: { localId: uid },
454
+ bearerToken: token,
455
+ global: { fetch: fetchFn }
456
+ });
457
+ if (error)
458
+ return {
459
+ error: typeof error === 'object' && error.error
460
+ ? mapFirebaseError(error.error)
461
+ : ensureError(error)
462
+ };
463
+ return { error: null };
464
+ }
465
+ /**
466
+ * Revokes refresh tokens for a user by setting `validSince` to now.
467
+ *
468
+ * @param projectId Firebase project ID.
469
+ * @param uid User UID.
470
+ * @param googleOAuthAccessToken Google OAuth access token with Identity Toolkit scope.
471
+ * @param fetchFn Optional fetch implementation.
472
+ * @param tenantId Optional tenant ID.
473
+ */
474
+ export async function revokeRefreshTokens(projectId, uid, googleOAuthAccessToken, fetchFn, tenantId) {
475
+ const nowSeconds = Math.floor(Date.now() / 1000).toString();
476
+ return updateAccountAdmin(projectId, uid, { validSince: nowSeconds }, googleOAuthAccessToken, fetchFn, tenantId);
477
+ }
250
478
  //# sourceMappingURL=firebase-auth-endpoints.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"firebase-auth-endpoints.js","sourceRoot":"","sources":["../../src/auth/firebase-auth-endpoints.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,YAAY;AAEZ,SAAS,sBAAsB,CAC3B,UAAkB,EAClB,IAAY,EACZ,QAAQ,GAAG,IAAI,EACf,QAAiB;IAEjB,IAAI,QAAQ,EAAE,CAAC;QACX,2DAA2D;QAC3D,OAAO,sDAAsD,UAAU,YAAY,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IACxI,CAAC;IACD,OAAO,sDAAsD,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;AACpH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACnC,4EAA4E;IAC5E,OAAO,sDAAsD,IAAI,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,YAAoB,EACpB,GAAW,EACX,OAAiC;IAEjC,MAAM,GAAG,GAAG,6CAA6C,CAAC;IAE1D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI,EAAE;YACF,UAAU,EAAE,eAAe;YAC3B,aAAa,EAAE,YAAY;SAC9B;QACD,MAAM,EAAE;YACJ,GAAG;SACN;QACD,IAAI,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAC/B,YAAoB,EACpB,GAAW,EACX,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAE/C,MAAM,IAAI,GAAG;QACT,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,YAAqB;QACjC,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAC/B,eAAuB,EACvB,UAAkB,EAClB,UAAU,GAAG,YAAY,EACzB,GAAW,EACX,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAE/C,MAAM,UAAU,GACZ,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC;IAE9D,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;QACjC,CAAC,UAAU,CAAC,EAAE,eAAe;QAC7B,UAAU;KACb,CAAC,CAAC,QAAQ,EAAE,CAAC;IAEd,MAAM,IAAI,GAAG;QACT,QAAQ;QACR,UAAU;QACV,iBAAiB,EAAE,IAAa;QAChC,mBAAmB,EAAE,IAAa;QAClC,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACvC,QAAgB,EAChB,GAAW,EACX,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG;QACT,KAAK,EAAE,QAAQ;QACf,iBAAiB,EAAE,IAAa;QAChC,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,UAAyE,EACzE,KAAa,EACb,UAAkB,EAClB,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,sBAAsB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEzE,MAAM,IAAI,GAAwB;QAC9B,GAAG,CAAC,KAAK,IAAI,UAAU,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC;QACvD,GAAG,CAAC,OAAO,IAAI,UAAU,IAAI,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,aAAa,IAAI,UAAU,IAAI;YAC/B,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;SACxC,CAAC;QACF,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,WAAW,EAAE,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3D,OAAO;QACH,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,OAAe,EACf,KAAa,EACb,UAAkB,EAClB,eAAuB,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAC/C,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,sBAAsB,CAC9B,UAAU,EACV,qBAAqB,EACrB,KAAK,EACL,QAAQ,CACX,CAAC;IAEF,MAAM,IAAI,GAAG;QACT,OAAO;QACP,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC9C,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,WAAW,EAAE,KAAK;KACrB,CAAC,CAAC;IAEH,OAAO;QACH,IAAI,EAAE,IAAI,EAAE,aAAa,IAAI,IAAI;QACjC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAiC;IAC3D,MAAM,GAAG,GACL,2FAA2F,CAAC;IAEhG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,MAAM,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO;QACH,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI;QACxB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAiC;IACjE,MAAM,GAAG,GACL,uEAAuE,CAAC;IAE5E,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,MAAM,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AA0BD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC7B,WAA8C,EAC9C,GAAW,EACX,OAKC,EACD,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAE7C,MAAM,IAAI,GAAwB;QAC9B,WAAW;QACX,kBAAkB,EAAE,KAAK;QACzB,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAC9C,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QACpD,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;QAChE,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAClD,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;QACD,OAAO;KACV,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,OAAe,EACf,KAAa,EACb,GAAW,EACX,OAAgB,EAChB,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG;QACT,OAAO;QACP,KAAK;QACL,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,CAAC;QAC3B,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CACzC,OAAe,EACf,eAAuB,EACvB,UAAkB,EAClB,UAAkB,EAClB,GAAW,EACX,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAE/C,MAAM,UAAU,GACZ,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC;IAE9D,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC;QACjC,CAAC,UAAU,CAAC,EAAE,eAAe;QAC7B,UAAU;KACb,CAAC,CAAC,QAAQ,EAAE,CAAC;IAEd,MAAM,IAAI,GAAG;QACT,OAAO;QACP,QAAQ;QACR,UAAU;QACV,iBAAiB,EAAE,IAAa;QAChC,mBAAmB,EAAE,IAAa;QAClC,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,OAAe,EACf,UAAkB,EAClB,GAAW,EACX,QAAiB,EACjB,OAAiC;IAEjC,MAAM,GAAG,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAExC,MAAM,IAAI,GAAG;QACT,OAAO;QACP,cAAc,EAAE,CAAC,UAAU,CAAC;QAC5B,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAGrC,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1B,IAAI;QACJ,MAAM,EAAE;YACJ,GAAG;SACN;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,IAAI;QACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KACtD,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"firebase-auth-endpoints.js","sourceRoot":"","sources":["../../src/auth/firebase-auth-endpoints.ts"],"names":[],"mappings":"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"}