@sudobility/auth_lib 0.0.102 → 0.0.104

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.
@@ -1,4 +1,4 @@
1
1
  export * from './types';
2
2
  export { createFirebaseAuthContext, type FirebaseAuthContext } from './context';
3
- export { useFirebaseAuthJs } from './useFirebaseAuth';
3
+ export { loadFirebaseJsAuth, useFirebaseAuthJs } from './useFirebaseAuth';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export * from './types';
2
2
  export { createFirebaseAuthContext } from './context';
3
- export { useFirebaseAuthJs } from './useFirebaseAuth';
3
+ export { loadFirebaseJsAuth, useFirebaseAuthJs } from './useFirebaseAuth';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAA4B,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAMA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAA4B,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { OAuthClientConfig, WebAuthBridge } from '../oauth/webAuthFlow';
2
2
  import type { SignInConfig, SignInPlatform } from '../signin/config';
3
+ import type { FirebaseWebConfig, ServiceFileSources } from '../signin/firebase-config';
3
4
  import type { AppleAuthAndroidBridge, AppleAuthBridge, GoogleSignInBridge, ModuleGetter } from '../signin/credentials';
4
5
  export interface AuthUser {
5
6
  uid: string;
@@ -33,10 +34,11 @@ export type GoogleSigninLike = GoogleSignInBridge;
33
34
  export type AppleAuthLike = AppleAuthBridge;
34
35
  export type AppleAuthAndroidLike = AppleAuthAndroidBridge;
35
36
  export interface FirebaseAuthConfig {
36
- firebaseConfig?: Record<string, unknown>;
37
+ firebaseConfig?: FirebaseWebConfig;
37
38
  asyncStorage?: unknown;
38
39
  platform?: SignInPlatform;
39
40
  signIn?: SignInConfig;
41
+ serviceFiles?: ServiceFileSources;
40
42
  googleOAuth?: OAuthClientConfig;
41
43
  webAuth?: WebAuthBridge;
42
44
  googleNative?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAkHA,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAgIA,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { type Auth } from 'firebase/auth';
1
2
  import { type AuthContextValue, type FirebaseAuthConfig } from './types';
3
+ export declare function loadFirebaseJsAuth(config: FirebaseAuthConfig): Promise<Auth | null>;
2
4
  export declare function useFirebaseAuthJs(config: FirebaseAuthConfig): AuthContextValue;
3
5
  //# sourceMappingURL=useFirebaseAuth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFirebaseAuth.d.ts","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"AA4BA,OAAO,EACL,KAAK,gBAAgB,EAGrB,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AA4CjB,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,GACzB,gBAAgB,CAmRlB"}
1
+ {"version":3,"file":"useFirebaseAuth.d.ts","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"AASA,OAAO,EACL,KAAK,IAAI,EASV,MAAM,eAAe,CAAC;AAavB,OAAO,EACL,KAAK,gBAAgB,EAGrB,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AAoBjB,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CA+BtB;AAuCD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,GACzB,gBAAgB,CA0RlB"}
@@ -4,24 +4,50 @@ import { signInWithGoogleOAuthDesktop } from '../oauth/google';
4
4
  import { buildAppleCredential } from '../oauth/credentials';
5
5
  import { appleCredential, googleCredential } from '../signin/credentials';
6
6
  import { createFirebaseJsAuth, } from '../signin/firebase-js-auth';
7
+ import { loadServiceFileFirebaseConfig, } from '../signin/firebase-config';
7
8
  import { DEFAULT_REFRESH_INTERVAL_MS, } from './types';
8
9
  let firebaseAuth = null;
9
- function resolveAuth(config) {
10
- const firebaseConfig = config.firebaseConfig;
11
- if (!firebaseConfig || !firebaseConfig.apiKey)
10
+ let authPromise = null;
11
+ let serviceFileConfig = null;
12
+ export function loadFirebaseJsAuth(config) {
13
+ if (authPromise)
14
+ return authPromise;
15
+ const storage = config.asyncStorage ?? null;
16
+ authPromise = (async () => {
17
+ if ((config.platform === 'ios' || config.platform === 'android') &&
18
+ config.serviceFiles) {
19
+ serviceFileConfig = await loadServiceFileFirebaseConfig(config.serviceFiles);
20
+ if (!serviceFileConfig?.firebase.apiKey)
21
+ return null;
22
+ firebaseAuth = createFirebaseJsAuth(serviceFileConfig.firebase, storage);
23
+ return firebaseAuth;
24
+ }
25
+ const firebaseConfig = config.firebaseConfig;
26
+ if (!firebaseConfig || !firebaseConfig.apiKey)
27
+ return null;
28
+ firebaseAuth = createFirebaseJsAuth(firebaseConfig, storage);
29
+ return firebaseAuth;
30
+ })().catch(error => {
31
+ console.error('[Auth] Could not configure Firebase:', error);
32
+ authPromise = null;
12
33
  return null;
13
- if (!firebaseAuth) {
14
- firebaseAuth = createFirebaseJsAuth(firebaseConfig, config.asyncStorage ?? null);
15
- }
16
- return firebaseAuth;
34
+ });
35
+ return authPromise;
17
36
  }
18
37
  function signInConfigOf(cfg) {
19
- return (cfg.signIn ?? {
38
+ const base = cfg.signIn ?? {
20
39
  googleIosClientId: cfg.googleOAuth?.clientId ?? cfg.googleNative?.iosClientId ?? '',
21
40
  googleWebClientId: cfg.googleNative?.webClientId ?? '',
22
41
  appleServiceId: cfg.appleAndroid?.serviceId ?? '',
23
42
  appleRedirectUri: cfg.appleAndroid?.redirectUri ?? '',
24
- });
43
+ };
44
+ if (!serviceFileConfig)
45
+ return base;
46
+ return {
47
+ ...base,
48
+ googleIosClientId: serviceFileConfig.googleIosClientId || base.googleIosClientId,
49
+ googleWebClientId: serviceFileConfig.googleWebClientId || base.googleWebClientId,
50
+ };
25
51
  }
26
52
  function toAuthUser(firebaseUser) {
27
53
  if (!firebaseUser)
@@ -45,50 +71,58 @@ export function useFirebaseAuthJs(config) {
45
71
  const prevUidRef = useRef(null);
46
72
  useEffect(() => {
47
73
  const cfg = configRef.current;
48
- const auth = resolveAuth(cfg);
74
+ let unsubscribe = null;
75
+ let cancelled = false;
49
76
  cfg.onInit?.();
50
- if (!auth) {
51
- setIsLoading(false);
52
- setIsReady(true);
53
- return;
54
- }
55
- const unsubscribe = onAuthStateChanged(auth, async (firebaseUser) => {
56
- if (!firebaseUser && configRef.current.autoSignInAnonymously) {
57
- try {
58
- await firebaseSignInAnonymously(auth);
59
- }
60
- catch (error) {
61
- console.error('[Auth] Anonymous sign-in failed:', error);
62
- setIsLoading(false);
63
- setIsReady(true);
64
- }
77
+ void loadFirebaseJsAuth(cfg).then(auth => {
78
+ if (cancelled)
79
+ return;
80
+ if (!auth) {
81
+ setIsLoading(false);
82
+ setIsReady(true);
65
83
  return;
66
84
  }
67
- const mapped = toAuthUser(firebaseUser);
68
- const nextUid = mapped?.uid ?? null;
69
- if (prevUidRef.current !== nextUid) {
70
- configRef.current.onIdentityChange?.(prevUidRef.current, nextUid);
71
- prevUidRef.current = nextUid;
72
- }
73
- setUser(mapped);
74
- setRawUser(firebaseUser);
75
- configRef.current.onUserChanged?.(mapped);
76
- if (firebaseUser) {
77
- try {
78
- setToken(await firebaseUser.getIdToken());
85
+ unsubscribe = onAuthStateChanged(auth, async (firebaseUser) => {
86
+ if (!firebaseUser && configRef.current.autoSignInAnonymously) {
87
+ try {
88
+ await firebaseSignInAnonymously(auth);
89
+ }
90
+ catch (error) {
91
+ console.error('[Auth] Anonymous sign-in failed:', error);
92
+ setIsLoading(false);
93
+ setIsReady(true);
94
+ }
95
+ return;
79
96
  }
80
- catch (error) {
81
- console.error('[Auth] Error getting ID token:', error);
97
+ const mapped = toAuthUser(firebaseUser);
98
+ const nextUid = mapped?.uid ?? null;
99
+ if (prevUidRef.current !== nextUid) {
100
+ configRef.current.onIdentityChange?.(prevUidRef.current, nextUid);
101
+ prevUidRef.current = nextUid;
102
+ }
103
+ setUser(mapped);
104
+ setRawUser(firebaseUser);
105
+ configRef.current.onUserChanged?.(mapped);
106
+ if (firebaseUser) {
107
+ try {
108
+ setToken(await firebaseUser.getIdToken());
109
+ }
110
+ catch (error) {
111
+ console.error('[Auth] Error getting ID token:', error);
112
+ setToken(null);
113
+ }
114
+ }
115
+ else {
82
116
  setToken(null);
83
117
  }
84
- }
85
- else {
86
- setToken(null);
87
- }
88
- setIsLoading(false);
89
- setIsReady(true);
118
+ setIsLoading(false);
119
+ setIsReady(true);
120
+ });
90
121
  });
91
- return unsubscribe;
122
+ return () => {
123
+ cancelled = true;
124
+ unsubscribe?.();
125
+ };
92
126
  }, []);
93
127
  useEffect(() => {
94
128
  const intervalMs = configRef.current.refreshIntervalMs;
@@ -104,8 +138,8 @@ export function useFirebaseAuthJs(config) {
104
138
  }, intervalMs ?? DEFAULT_REFRESH_INTERVAL_MS);
105
139
  return () => clearInterval(refreshInterval);
106
140
  }, [rawUser]);
107
- const requireAuth = useCallback(() => {
108
- const auth = resolveAuth(configRef.current);
141
+ const requireAuth = useCallback(async () => {
142
+ const auth = await loadFirebaseJsAuth(configRef.current);
109
143
  if (!auth)
110
144
  throw new Error('Firebase not configured');
111
145
  return auth;
@@ -119,7 +153,7 @@ export function useFirebaseAuthJs(config) {
119
153
  }, []);
120
154
  const signInWithGoogle = useCallback(async () => {
121
155
  requireProvider('google');
122
- const auth = requireAuth();
156
+ const auth = await requireAuth();
123
157
  const cfg = configRef.current;
124
158
  setIsLoading(true);
125
159
  try {
@@ -145,7 +179,7 @@ export function useFirebaseAuthJs(config) {
145
179
  }, [requireAuth, requireProvider]);
146
180
  const signInWithApple = useCallback(async () => {
147
181
  requireProvider('apple');
148
- const auth = requireAuth();
182
+ const auth = await requireAuth();
149
183
  const cfg = configRef.current;
150
184
  if (cfg.platform) {
151
185
  setIsLoading(true);
@@ -187,7 +221,7 @@ export function useFirebaseAuthJs(config) {
187
221
  }, [requireAuth, requireProvider]);
188
222
  const signInAnonymously = useCallback(async () => {
189
223
  requireProvider('anonymous');
190
- const auth = requireAuth();
224
+ const auth = await requireAuth();
191
225
  setIsLoading(true);
192
226
  try {
193
227
  await firebaseSignInAnonymously(auth);
@@ -198,7 +232,7 @@ export function useFirebaseAuthJs(config) {
198
232
  }, [requireAuth, requireProvider]);
199
233
  const signInWithEmail = useCallback(async (email, password) => {
200
234
  requireProvider('emailPassword');
201
- const auth = requireAuth();
235
+ const auth = await requireAuth();
202
236
  setIsLoading(true);
203
237
  try {
204
238
  await signInWithEmailAndPassword(auth, email, password);
@@ -209,7 +243,7 @@ export function useFirebaseAuthJs(config) {
209
243
  }, [requireAuth, requireProvider]);
210
244
  const signUpWithEmail = useCallback(async (email, password) => {
211
245
  requireProvider('emailPassword');
212
- const auth = requireAuth();
246
+ const auth = await requireAuth();
213
247
  setIsLoading(true);
214
248
  try {
215
249
  await createUserWithEmailAndPassword(auth, email, password);
@@ -219,7 +253,7 @@ export function useFirebaseAuthJs(config) {
219
253
  }
220
254
  }, [requireAuth, requireProvider]);
221
255
  const signOut = useCallback(async () => {
222
- const auth = resolveAuth(configRef.current);
256
+ const auth = await loadFirebaseJsAuth(configRef.current);
223
257
  if (!auth)
224
258
  return;
225
259
  setIsLoading(true);
@@ -231,7 +265,7 @@ export function useFirebaseAuthJs(config) {
231
265
  }
232
266
  }, []);
233
267
  const sendPasswordResetEmail = useCallback(async (email) => {
234
- const auth = resolveAuth(configRef.current);
268
+ const auth = await loadFirebaseJsAuth(configRef.current);
235
269
  if (!auth)
236
270
  throw new Error('Firebase not configured');
237
271
  await firebaseSendPasswordResetEmail(auth, email);
@@ -1 +1 @@
1
- {"version":3,"file":"useFirebaseAuth.js","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useFirebaseAuth.js","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export interface OAuthClientConfig {
9
9
  reversedClientId?: string;
10
10
  redirectUri?: string;
11
11
  callbackScheme?: string;
12
+ clientSecret?: string;
12
13
  }
13
14
  export interface OAuthTokenResponse {
14
15
  id_token?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"webAuthFlow.d.ts","sourceRoot":"","sources":["../../src/oauth/webAuthFlow.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAOtD,MAAM,WAAW,aAAa;IAC5B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7E,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IAMjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAoCD,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,uBAAuB,EACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAuCpC"}
1
+ {"version":3,"file":"webAuthFlow.d.ts","sourceRoot":"","sources":["../../src/oauth/webAuthFlow.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAOtD,MAAM,WAAW,aAAa;IAC5B,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7E,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IAMjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc,CAAC,EAAE,MAAM,CAAC;IAMxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAeD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAsCD,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,uBAAuB,EACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CA0CpC"}
@@ -1,4 +1,8 @@
1
1
  import { buildAuthorizeUrl, buildFormBody, parseCallbackParams } from './pkce';
2
+ function loopbackRedirectOf(callbackUrl) {
3
+ const m = /^(http:\/\/(?:127\.0\.0\.1|localhost|\[::1\]):\d+\/[^?#]*)/.exec(callbackUrl);
4
+ return m ? m[1] : null;
5
+ }
2
6
  async function exchangeCodeForTokens(provider, args) {
3
7
  const response = await fetch(provider.tokenEndpoint, {
4
8
  method: 'POST',
@@ -12,6 +16,7 @@ async function exchangeCodeForTokens(provider, args) {
12
16
  code_verifier: args.codeVerifier,
13
17
  grant_type: 'authorization_code',
14
18
  redirect_uri: args.redirectUri,
19
+ ...(args.clientSecret ? { client_secret: args.clientSecret } : {}),
15
20
  }),
16
21
  });
17
22
  if (!response.ok) {
@@ -50,7 +55,8 @@ export async function signInWithOAuthPkce(provider, config, webAuth) {
50
55
  clientId: config.clientId,
51
56
  code,
52
57
  codeVerifier,
53
- redirectUri,
58
+ redirectUri: loopbackRedirectOf(callbackUrl) ?? redirectUri,
59
+ ...(config.clientSecret ? { clientSecret: config.clientSecret } : {}),
54
60
  });
55
61
  }
56
62
  //# sourceMappingURL=webAuthFlow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webAuthFlow.js","sourceRoot":"","sources":["../../src/oauth/webAuthFlow.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAkC/E,KAAK,UAAU,qBAAqB,CAClC,QAAiC,EACjC,IAKC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE;QACnD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,mCAAmC;YACnD,MAAM,EAAE,kBAAkB;SAC3B;QACD,IAAI,EAAE,aAAa,CAAC;YAClB,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,IAAI,CAAC,YAAY;YAChC,UAAU,EAAE,oBAAoB;YAChC,YAAY,EAAE,IAAI,CAAC,WAAW;SAC/B,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,EAAiC,CAAC;AACxD,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAAiC,EACjC,MAAyB,EACzB,OAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,gBAAgB,CAAC;IAChE,MAAM,WAAW,GACf,MAAM,CAAC,WAAW;QAClB,CAAC,MAAM,CAAC,gBAAgB;YACtB,CAAC,CAAC,GAAG,MAAM,CAAC,gBAAgB,kBAAkB;YAC9C,CAAC,CAAC,SAAS,CAAC,CAAC;IACjB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAC1D,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE;QAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,WAAW;QACX,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,MAAM,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,KAAK,MAAM,MAAM,CAAC,iBAAiB,IAAI,EAAE,EAAE,CACnE,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAEpE,OAAO,qBAAqB,CAAC,QAAQ,EAAE;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,IAAI;QACJ,YAAY;QACZ,WAAW;KACZ,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"webAuthFlow.js","sourceRoot":"","sources":["../../src/oauth/webAuthFlow.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  export type SignInPlatform = 'ios' | 'android' | 'macos' | 'windows' | 'web';
2
2
  export interface SignInConfig {
3
3
  googleIosClientId: string;
4
+ googleWindowsClientId?: string;
5
+ googleWindowsClientSecret?: string;
4
6
  googleWebClientId: string;
5
7
  appleServiceId: string;
6
8
  appleRedirectUri: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/signin/config.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC;AAE7E,MAAM,WAAW,YAAY;IAO3B,iBAAiB,EAAE,MAAM,CAAC;IAO1B,iBAAiB,EAAE,MAAM,CAAC;IAM1B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAEnE;AAGD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,GACnB,OAAO,CAST;AAGD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,GACnB,OAAO,CAMT"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/signin/config.ts"],"names":[],"mappings":"AAiBA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC;AAE7E,MAAM,WAAW,YAAY;IAO3B,iBAAiB,EAAE,MAAM,CAAC;IAS1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAOnC,iBAAiB,EAAE,MAAM,CAAC;IAM1B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAEnE;AAGD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,GACnB,OAAO,CAYT;AAGD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,YAAY,GACnB,OAAO,CAMT"}
@@ -3,7 +3,10 @@ export function isDesktopPlatform(platform) {
3
3
  return platform === 'macos' || platform === 'windows';
4
4
  }
5
5
  export function googleSignInAvailable(platform, config) {
6
- if (isDesktopPlatform(platform) || platform === 'ios') {
6
+ if (platform === 'windows') {
7
+ return Boolean(config.googleWindowsClientId);
8
+ }
9
+ if (platform === 'macos' || platform === 'ios') {
7
10
  return reversedGoogleClientId(config.googleIosClientId) !== '';
8
11
  }
9
12
  if (platform === 'android')
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/signin/config.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AA6BzD,MAAM,UAAU,iBAAiB,CAAC,QAAwB;IACxD,OAAO,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,SAAS,CAAC;AACxD,CAAC;AAGD,MAAM,UAAU,qBAAqB,CACnC,QAAwB,EACxB,MAAoB;IAEpB,IAAI,iBAAiB,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QAItD,OAAO,sBAAsB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,iBAAiB,KAAK,EAAE,CAAC;IACnE,OAAO,KAAK,CAAC;AACf,CAAC;AAGD,MAAM,UAAU,oBAAoB,CAClC,QAAwB,EACxB,MAAoB;IAEpB,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC,cAAc,KAAK,EAAE,IAAI,MAAM,CAAC,gBAAgB,KAAK,EAAE,CAAC;IACxE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/signin/config.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAuCzD,MAAM,UAAU,iBAAiB,CAAC,QAAwB;IACxD,OAAO,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,SAAS,CAAC;AACxD,CAAC;AAGD,MAAM,UAAU,qBAAqB,CACnC,QAAwB,EACxB,MAAoB;IAEpB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QAI/C,OAAO,sBAAsB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,iBAAiB,KAAK,EAAE,CAAC;IACnE,OAAO,KAAK,CAAC;AACf,CAAC;AAGD,MAAM,UAAU,oBAAoB,CAClC,QAAwB,EACxB,MAAoB;IAEpB,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC,cAAc,KAAK,EAAE,IAAI,MAAM,CAAC,gBAAgB,KAAK,EAAE,CAAC;IACxE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,17 @@ function missing(what) {
5
5
  throw new Error(`${what} is not available on this platform`);
6
6
  }
7
7
  export async function googleCredential(platform, config, modules) {
8
+ if (platform === 'windows') {
9
+ const webAuth = modules.webAuth ?? missing('WebAuth');
10
+ return signInWithGoogleOAuthDesktop({
11
+ clientId: config.googleWindowsClientId ?? '',
12
+ redirectUri: 'http://127.0.0.1/callback',
13
+ callbackScheme: 'http',
14
+ ...(config.googleWindowsClientSecret
15
+ ? { clientSecret: config.googleWindowsClientSecret }
16
+ : {}),
17
+ }, webAuth);
18
+ }
8
19
  if (isDesktopPlatform(platform)) {
9
20
  const webAuth = modules.webAuth ?? missing('WebAuth');
10
21
  return signInWithGoogleOAuthDesktop({
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { ModuleGetter } from './credentials';
2
+ export interface FirebaseWebConfig {
3
+ [option: string]: unknown;
4
+ apiKey: string;
5
+ authDomain: string;
6
+ projectId: string;
7
+ storageBucket: string;
8
+ messagingSenderId: string;
9
+ appId: string;
10
+ measurementId: string;
11
+ }
12
+ export interface NativeFirebaseOptions {
13
+ apiKey?: string;
14
+ appId: string;
15
+ projectId: string;
16
+ storageBucket?: string;
17
+ messagingSenderId?: string;
18
+ measurementId?: string;
19
+ clientId?: string;
20
+ }
21
+ export interface ServiceFileSources {
22
+ nativeFirebaseOptions: ModuleGetter<NativeFirebaseOptions>;
23
+ googleServicesJson?: unknown;
24
+ }
25
+ export interface ServiceFileFirebaseConfig {
26
+ firebase: FirebaseWebConfig;
27
+ googleIosClientId: string;
28
+ googleWebClientId: string;
29
+ }
30
+ export declare function googleWebClientIdFromServicesJson(json: unknown): string;
31
+ export declare function firebaseConfigFromNativeOptions(options: NativeFirebaseOptions, googleServicesJson?: unknown): ServiceFileFirebaseConfig;
32
+ export declare function loadServiceFileFirebaseConfig(sources: ServiceFileSources): Promise<ServiceFileFirebaseConfig>;
33
+ //# sourceMappingURL=firebase-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firebase-config.d.ts","sourceRoot":"","sources":["../../src/signin/firebase-config.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAOlD,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAE1B,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;IAEnB,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,EAAE,MAAM,CAAC;IAEtB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,KAAK,EAAE,MAAM,CAAC;IAEd,aAAa,EAAE,MAAM,CAAC;CACvB;AAGD,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,kBAAkB;IAEjC,qBAAqB,EAAE,YAAY,CAAC,qBAAqB,CAAC,CAAC;IAE3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAGD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,iBAAiB,CAAC;IAE5B,iBAAiB,EAAE,MAAM,CAAC;IAE1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAMD,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAkBvE;AAGD,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,qBAAqB,EAC9B,kBAAkB,CAAC,EAAE,OAAO,GAC3B,yBAAyB,CAmB3B;AAGD,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,yBAAyB,CAAC,CAGpC"}
@@ -0,0 +1,37 @@
1
+ export function googleWebClientIdFromServicesJson(json) {
2
+ const clients = json?.client ?? [];
3
+ for (const client of clients) {
4
+ const oauth = client['oauth_client'] ??
5
+ [];
6
+ const services = client['services'];
7
+ const other = services?.['appinvite_service']?.['other_platform_oauth_client'] ?? [];
8
+ const web = [...oauth, ...other].find(c => c['client_type'] === 3);
9
+ if (web && typeof web['client_id'] === 'string')
10
+ return web['client_id'];
11
+ }
12
+ return '';
13
+ }
14
+ export function firebaseConfigFromNativeOptions(options, googleServicesJson) {
15
+ return {
16
+ firebase: {
17
+ apiKey: options.apiKey ?? '',
18
+ authDomain: options.projectId
19
+ ? `${options.projectId}.firebaseapp.com`
20
+ : '',
21
+ projectId: options.projectId,
22
+ storageBucket: options.storageBucket ?? '',
23
+ messagingSenderId: options.messagingSenderId ?? '',
24
+ appId: options.appId,
25
+ measurementId: options.measurementId ?? '',
26
+ },
27
+ googleIosClientId: options.clientId ?? '',
28
+ googleWebClientId: googleServicesJson === undefined
29
+ ? ''
30
+ : googleWebClientIdFromServicesJson(googleServicesJson),
31
+ };
32
+ }
33
+ export async function loadServiceFileFirebaseConfig(sources) {
34
+ const options = await sources.nativeFirebaseOptions();
35
+ return firebaseConfigFromNativeOptions(options, sources.googleServicesJson);
36
+ }
37
+ //# sourceMappingURL=firebase-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firebase-config.js","sourceRoot":"","sources":["../../src/signin/firebase-config.ts"],"names":[],"mappings":"AAkFA,MAAM,UAAU,iCAAiC,CAAC,IAAa;IAC7D,MAAM,OAAO,GACV,IAA2D,EAAE,MAAM,IAAI,EAAE,CAAC;IAC7E,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,KAAK,GACR,MAAM,CAAC,cAAc,CAAgD;YACtE,EAAE,CAAC;QACL,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAErB,CAAC;QACd,MAAM,KAAK,GACR,QAAQ,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,6BAA6B,CAElD,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAGD,MAAM,UAAU,+BAA+B,CAC7C,OAA8B,EAC9B,kBAA4B;IAE5B,OAAO;QACL,QAAQ,EAAE;YACR,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;YAC5B,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC3B,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,kBAAkB;gBACxC,CAAC,CAAC,EAAE;YACN,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,EAAE;YAC1C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,EAAE;YAClD,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,EAAE;SAC3C;QACD,iBAAiB,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QACzC,iBAAiB,EACf,kBAAkB,KAAK,SAAS;YAC9B,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,iCAAiC,CAAC,kBAAkB,CAAC;KAC5D,CAAC;AACJ,CAAC;AAGD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAA2B;IAE3B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACtD,OAAO,+BAA+B,CAAC,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC9E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './config';
2
2
  export * from './credentials';
3
3
  export * from './firebase-js-auth';
4
+ export * from './firebase-config';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signin/index.ts"],"names":[],"mappings":"AAQA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signin/index.ts"],"names":[],"mappings":"AAQA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './config';
2
2
  export * from './credentials';
3
3
  export * from './firebase-js-auth';
4
+ export * from './firebase-config';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signin/index.ts"],"names":[],"mappings":"AAQA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signin/index.ts"],"names":[],"mappings":"AAQA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/auth_lib",
3
- "version": "0.0.102",
3
+ "version": "0.0.104",
4
4
  "description": "Firebase authentication utilities with token refresh handling",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -23,10 +23,6 @@
23
23
  "import": "./dist/signin/index.js",
24
24
  "types": "./dist/signin/index.d.ts"
25
25
  },
26
- "./build/firebase-service-config": {
27
- "require": "./build/firebase-service-config.cjs",
28
- "default": "./build/firebase-service-config.cjs"
29
- },
30
26
  "./account": {
31
27
  "import": "./dist/account/index.js",
32
28
  "types": "./dist/account/index.d.ts"
@@ -42,7 +38,6 @@
42
38
  },
43
39
  "files": [
44
40
  "dist",
45
- "build/firebase-service-config.cjs",
46
41
  "README.md"
47
42
  ],
48
43
  "scripts": {
@@ -62,7 +57,7 @@
62
57
  "firebase": "^12.7.0",
63
58
  "@react-native-firebase/app": ">=18.0.0",
64
59
  "@react-native-firebase/auth": ">=18.0.0",
65
- "@sudobility/di": "^1.5.67",
60
+ "@sudobility/di": "^1.5.68",
66
61
  "@sudobility/types": "^1.9.68",
67
62
  "@tanstack/react-query": "^5.0.0"
68
63
  },
@@ -78,9 +73,8 @@
78
73
  }
79
74
  },
80
75
  "devDependencies": {
81
- "@babel/core": "^7",
82
76
  "@eslint/js": "^9.0.0",
83
- "@sudobility/di": "^1.5.67",
77
+ "@sudobility/di": "^1.5.68",
84
78
  "@sudobility/types": "^1.9.68",
85
79
  "@tanstack/react-query": "^5.80.7",
86
80
  "@types/bun": "^1.2.8",
@@ -1,184 +0,0 @@
1
- /**
2
- * Firebase's web config, read at BUILD time from the app's native services
3
- * files and written into the bundle — so a React Native app on Firebase's JS
4
- * SDK is configured from `GoogleService-Info.plist` / `google-services.json`,
5
- * the same files native Firebase (analytics, crashlytics, messaging, remote
6
- * config, performance) already reads, rather than from a second copy of the
7
- * same values in `.env`.
8
- *
9
- * Used from an app's `babel.config.js`:
10
- *
11
- * const { firebaseServiceConfigPlugin } =
12
- * require('@sudobility/auth_lib/build/firebase-service-config');
13
- * ...
14
- * plugins: [
15
- * firebaseServiceConfigPlugin(api, {
16
- * ios: 'ios/MyApp/GoogleService-Info.plist',
17
- * android: 'android/app/google-services.json',
18
- * androidPackage: 'com.example.myapp',
19
- * }),
20
- * ...
21
- * ]
22
- *
23
- * The plugin replaces these `process.env` references with literals for the
24
- * platform Metro is bundling (Babel's `caller.platform`):
25
- *
26
- * FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN, FIREBASE_PROJECT_ID,
27
- * FIREBASE_STORAGE_BUCKET, FIREBASE_MESSAGING_SENDER_ID, FIREBASE_APP_ID,
28
- * GOOGLE_OAUTH_CLIENT_ID (the iOS-type client), GOOGLE_WEB_CLIENT_ID
29
- *
30
- * Each platform gets its OWN app's values — the iOS app's API key and app id
31
- * on iOS, the Android app's on Android — which the Auth API accepts from the
32
- * JS SDK (checked for every app in the family). macOS and Windows read the
33
- * iOS file — always, even where a macOS plist exists: a desktop signs in with
34
- * the iOS-type Google client, and one file for the Apple-and-desktop family
35
- * means one set of values to keep right. With no platform
36
- * (jest) every name becomes `undefined`, so the code's defaults apply.
37
- *
38
- * The library reads only the files the app names; it reads no environment.
39
- */
40
- 'use strict';
41
-
42
- const fs = require('fs');
43
- const path = require('path');
44
-
45
- const NAMES = [
46
- 'FIREBASE_API_KEY',
47
- 'FIREBASE_AUTH_DOMAIN',
48
- 'FIREBASE_PROJECT_ID',
49
- 'FIREBASE_STORAGE_BUCKET',
50
- 'FIREBASE_MESSAGING_SENDER_ID',
51
- 'FIREBASE_APP_ID',
52
- 'GOOGLE_OAUTH_CLIENT_ID',
53
- 'GOOGLE_WEB_CLIENT_ID',
54
- ];
55
-
56
- /** `<key>K</key><string>V</string>` pairs — all a GoogleService-Info.plist holds. */
57
- function parsePlist(text) {
58
- const out = {};
59
- const re = /<key>([^<]+)<\/key>\s*<string>([^<]*)<\/string>/g;
60
- let m;
61
- while ((m = re.exec(text)) !== null) out[m[1]] = m[2];
62
- return out;
63
- }
64
-
65
- /** The values a GoogleService-Info.plist gives. */
66
- function fromPlist(file) {
67
- const p = parsePlist(fs.readFileSync(file, 'utf8'));
68
- const projectId = p.PROJECT_ID || '';
69
- return {
70
- FIREBASE_API_KEY: p.API_KEY || '',
71
- FIREBASE_AUTH_DOMAIN: projectId ? `${projectId}.firebaseapp.com` : '',
72
- FIREBASE_PROJECT_ID: projectId,
73
- FIREBASE_STORAGE_BUCKET: p.STORAGE_BUCKET || '',
74
- FIREBASE_MESSAGING_SENDER_ID: p.GCM_SENDER_ID || '',
75
- FIREBASE_APP_ID: p.GOOGLE_APP_ID || '',
76
- GOOGLE_OAUTH_CLIENT_ID: p.CLIENT_ID || '',
77
- GOOGLE_WEB_CLIENT_ID: '',
78
- };
79
- }
80
-
81
- /**
82
- * The values a google-services.json gives, for the client registered to
83
- * `androidPackage` (a file may list several apps of one project).
84
- */
85
- function fromServicesJson(file, androidPackage) {
86
- const j = JSON.parse(fs.readFileSync(file, 'utf8'));
87
- const clients = j.client || [];
88
- const client =
89
- clients.find(
90
- c =>
91
- c.client_info &&
92
- c.client_info.android_client_info &&
93
- c.client_info.android_client_info.package_name === androidPackage
94
- ) || (androidPackage ? null : clients[0]);
95
- if (!client) {
96
- throw new Error(
97
- `google-services.json (${file}) has no client for package "${androidPackage}"`
98
- );
99
- }
100
- const projectId = (j.project_info && j.project_info.project_id) || '';
101
- const oauth = client.oauth_client || [];
102
- const other =
103
- (client.services &&
104
- client.services.appinvite_service &&
105
- client.services.appinvite_service.other_platform_oauth_client) ||
106
- [];
107
- const web = [...oauth, ...other].find(c => c.client_type === 3);
108
- const ios = [...oauth, ...other].find(c => c.client_type === 2);
109
- return {
110
- FIREBASE_API_KEY: (client.api_key && client.api_key[0] && client.api_key[0].current_key) || '',
111
- FIREBASE_AUTH_DOMAIN: projectId ? `${projectId}.firebaseapp.com` : '',
112
- FIREBASE_PROJECT_ID: projectId,
113
- FIREBASE_STORAGE_BUCKET: (j.project_info && j.project_info.storage_bucket) || '',
114
- FIREBASE_MESSAGING_SENDER_ID: (j.project_info && j.project_info.project_number) || '',
115
- FIREBASE_APP_ID: (client.client_info && client.client_info.mobilesdk_app_id) || '',
116
- GOOGLE_OAUTH_CLIENT_ID: (ios && ios.client_id) || '',
117
- GOOGLE_WEB_CLIENT_ID: (web && web.client_id) || '',
118
- };
119
- }
120
-
121
- /**
122
- * The values for one platform, or null when the platform is unknown.
123
- * `files` paths are relative to `root` (the app; default: cwd).
124
- */
125
- function firebaseServiceConfig(platform, files, root) {
126
- const base = root || process.cwd();
127
- const at = p => path.resolve(base, p);
128
- switch (platform) {
129
- case 'ios':
130
- return fromPlist(at(files.ios));
131
- case 'android':
132
- return fromServicesJson(at(files.android), files.androidPackage);
133
- case 'macos':
134
- case 'windows':
135
- return fromPlist(at(files.ios));
136
- default:
137
- return null;
138
- }
139
- }
140
-
141
- const cache = new Map();
142
-
143
- /**
144
- * A Babel plugin entry that inlines the platform's values. Reads the files
145
- * once per platform per process.
146
- */
147
- function firebaseServiceConfigPlugin(api, files) {
148
- const platform = api.caller(caller => (caller && caller.platform) || null);
149
- const root = files.root || process.cwd();
150
- const key = `${root}|${platform}`;
151
- if (!cache.has(key)) cache.set(key, firebaseServiceConfig(platform, files, root));
152
- const values = cache.get(key);
153
-
154
- return function inlineFirebaseServiceConfig({ types: t }) {
155
- return {
156
- name: 'inline-firebase-service-config',
157
- visitor: {
158
- MemberExpression(p) {
159
- const node = p.node;
160
- if (
161
- !t.isMemberExpression(node.object) ||
162
- !t.isIdentifier(node.object.object, { name: 'process' }) ||
163
- !t.isIdentifier(node.object.property, { name: 'env' })
164
- ) {
165
- return;
166
- }
167
- const name = node.computed
168
- ? t.isStringLiteral(node.property) && node.property.value
169
- : t.isIdentifier(node.property) && node.property.name;
170
- if (!name || !NAMES.includes(name)) return;
171
- const value = values && values[name];
172
- p.replaceWith(value ? t.stringLiteral(value) : t.identifier('undefined'));
173
- },
174
- },
175
- };
176
- };
177
- }
178
-
179
- module.exports = {
180
- FIREBASE_SERVICE_CONFIG_NAMES: NAMES,
181
- firebaseServiceConfig,
182
- firebaseServiceConfigPlugin,
183
- parsePlist,
184
- };