@sudobility/auth_lib 0.0.100 → 0.0.102
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.
- package/build/firebase-service-config.cjs +184 -0
- package/dist/auth/types.d.ts +10 -40
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js.map +1 -1
- package/dist/auth/useFirebaseAuth.d.ts.map +1 -1
- package/dist/auth/useFirebaseAuth.js +43 -14
- package/dist/auth/useFirebaseAuth.js.map +1 -1
- package/dist/signin/credentials.d.ts +10 -9
- package/dist/signin/credentials.d.ts.map +1 -1
- package/dist/signin/credentials.js +3 -3
- package/dist/signin/credentials.js.map +1 -1
- package/dist/signin/firebase-js-auth.d.ts +4 -3
- package/dist/signin/firebase-js-auth.d.ts.map +1 -1
- package/dist/signin/firebase-js-auth.js +2 -6
- package/dist/signin/firebase-js-auth.js.map +1 -1
- package/package.json +16 -6
|
@@ -0,0 +1,184 @@
|
|
|
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
|
+
};
|
package/dist/auth/types.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { OAuthClientConfig, WebAuthBridge } from '../oauth/webAuthFlow';
|
|
2
|
+
import type { SignInConfig, SignInPlatform } from '../signin/config';
|
|
3
|
+
import type { AppleAuthAndroidBridge, AppleAuthBridge, GoogleSignInBridge, ModuleGetter } from '../signin/credentials';
|
|
2
4
|
export interface AuthUser {
|
|
3
5
|
uid: string;
|
|
4
6
|
email: string | null;
|
|
@@ -27,55 +29,23 @@ export interface AuthProvidersConfig {
|
|
|
27
29
|
anonymous?: boolean;
|
|
28
30
|
emailPassword?: boolean;
|
|
29
31
|
}
|
|
30
|
-
export
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
signIn(): Promise<{
|
|
34
|
-
type?: string;
|
|
35
|
-
data?: {
|
|
36
|
-
idToken?: string | null;
|
|
37
|
-
} | null;
|
|
38
|
-
}>;
|
|
39
|
-
}
|
|
40
|
-
export interface AppleAuthLike {
|
|
41
|
-
performRequest(options: unknown): Promise<{
|
|
42
|
-
identityToken: string | null;
|
|
43
|
-
nonce: string;
|
|
44
|
-
}>;
|
|
45
|
-
Operation: {
|
|
46
|
-
LOGIN: unknown;
|
|
47
|
-
};
|
|
48
|
-
Scope: {
|
|
49
|
-
EMAIL: unknown;
|
|
50
|
-
FULL_NAME: unknown;
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
export interface AppleAuthAndroidLike {
|
|
54
|
-
isSupported: boolean;
|
|
55
|
-
configure(options: any): void;
|
|
56
|
-
signIn(): Promise<{
|
|
57
|
-
id_token?: string;
|
|
58
|
-
nonce?: string;
|
|
59
|
-
}>;
|
|
60
|
-
ResponseType: {
|
|
61
|
-
ALL: unknown;
|
|
62
|
-
};
|
|
63
|
-
Scope: {
|
|
64
|
-
ALL: unknown;
|
|
65
|
-
};
|
|
66
|
-
}
|
|
32
|
+
export type GoogleSigninLike = GoogleSignInBridge;
|
|
33
|
+
export type AppleAuthLike = AppleAuthBridge;
|
|
34
|
+
export type AppleAuthAndroidLike = AppleAuthAndroidBridge;
|
|
67
35
|
export interface FirebaseAuthConfig {
|
|
68
36
|
firebaseConfig?: Record<string, unknown>;
|
|
69
37
|
asyncStorage?: unknown;
|
|
38
|
+
platform?: SignInPlatform;
|
|
39
|
+
signIn?: SignInConfig;
|
|
70
40
|
googleOAuth?: OAuthClientConfig;
|
|
71
41
|
webAuth?: WebAuthBridge;
|
|
72
42
|
googleNative?: {
|
|
73
43
|
webClientId?: string;
|
|
74
44
|
iosClientId?: string;
|
|
75
45
|
};
|
|
76
|
-
getGoogleSignin?:
|
|
77
|
-
getAppleAuth?:
|
|
78
|
-
getAppleAuthAndroid?:
|
|
46
|
+
getGoogleSignin?: ModuleGetter<GoogleSigninLike>;
|
|
47
|
+
getAppleAuth?: ModuleGetter<AppleAuthLike>;
|
|
48
|
+
getAppleAuthAndroid?: ModuleGetter<AppleAuthAndroidLike>;
|
|
79
49
|
appleAndroid?: {
|
|
80
50
|
serviceId: string;
|
|
81
51
|
redirectUri: string;
|
package/dist/auth/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
|
package/dist/auth/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"
|
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFirebaseAuth.d.ts","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"
|
|
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,25 +1,28 @@
|
|
|
1
1
|
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import { createUserWithEmailAndPassword, sendPasswordResetEmail as firebaseSendPasswordResetEmail, signInAnonymously as firebaseSignInAnonymously, signOut as firebaseSignOut, getAuth, getReactNativePersistence, initializeAuth, onAuthStateChanged, signInWithCredential, signInWithEmailAndPassword, } from 'firebase/auth';
|
|
2
|
+
import { createUserWithEmailAndPassword, sendPasswordResetEmail as firebaseSendPasswordResetEmail, signInAnonymously as firebaseSignInAnonymously, signOut as firebaseSignOut, onAuthStateChanged, signInWithCredential, signInWithEmailAndPassword, } from 'firebase/auth';
|
|
4
3
|
import { signInWithGoogleOAuthDesktop } from '../oauth/google';
|
|
5
4
|
import { buildAppleCredential } from '../oauth/credentials';
|
|
5
|
+
import { appleCredential, googleCredential } from '../signin/credentials';
|
|
6
|
+
import { createFirebaseJsAuth, } from '../signin/firebase-js-auth';
|
|
6
7
|
import { DEFAULT_REFRESH_INTERVAL_MS, } from './types';
|
|
7
|
-
let app = null;
|
|
8
8
|
let firebaseAuth = null;
|
|
9
9
|
function resolveAuth(config) {
|
|
10
10
|
const firebaseConfig = config.firebaseConfig;
|
|
11
11
|
if (!firebaseConfig || !firebaseConfig.apiKey)
|
|
12
12
|
return null;
|
|
13
13
|
if (!firebaseAuth) {
|
|
14
|
-
|
|
15
|
-
firebaseAuth = config.asyncStorage
|
|
16
|
-
? initializeAuth(app, {
|
|
17
|
-
persistence: getReactNativePersistence(config.asyncStorage),
|
|
18
|
-
})
|
|
19
|
-
: getAuth(app);
|
|
14
|
+
firebaseAuth = createFirebaseJsAuth(firebaseConfig, config.asyncStorage ?? null);
|
|
20
15
|
}
|
|
21
16
|
return firebaseAuth;
|
|
22
17
|
}
|
|
18
|
+
function signInConfigOf(cfg) {
|
|
19
|
+
return (cfg.signIn ?? {
|
|
20
|
+
googleIosClientId: cfg.googleOAuth?.clientId ?? cfg.googleNative?.iosClientId ?? '',
|
|
21
|
+
googleWebClientId: cfg.googleNative?.webClientId ?? '',
|
|
22
|
+
appleServiceId: cfg.appleAndroid?.serviceId ?? '',
|
|
23
|
+
appleRedirectUri: cfg.appleAndroid?.redirectUri ?? '',
|
|
24
|
+
});
|
|
25
|
+
}
|
|
23
26
|
function toAuthUser(firebaseUser) {
|
|
24
27
|
if (!firebaseUser)
|
|
25
28
|
return null;
|
|
@@ -118,12 +121,21 @@ export function useFirebaseAuthJs(config) {
|
|
|
118
121
|
requireProvider('google');
|
|
119
122
|
const auth = requireAuth();
|
|
120
123
|
const cfg = configRef.current;
|
|
121
|
-
if (!cfg.googleOAuth || !cfg.webAuth) {
|
|
122
|
-
throw new Error('Google desktop sign-in requires googleOAuth + webAuth config');
|
|
123
|
-
}
|
|
124
124
|
setIsLoading(true);
|
|
125
125
|
try {
|
|
126
|
-
|
|
126
|
+
let credential;
|
|
127
|
+
if (cfg.platform) {
|
|
128
|
+
credential = await googleCredential(cfg.platform, signInConfigOf(cfg), {
|
|
129
|
+
...(cfg.webAuth ? { webAuth: cfg.webAuth } : {}),
|
|
130
|
+
...(cfg.getGoogleSignin ? { googleSignIn: cfg.getGoogleSignin } : {}),
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
if (!cfg.googleOAuth || !cfg.webAuth) {
|
|
135
|
+
throw new Error('Google desktop sign-in requires googleOAuth + webAuth config');
|
|
136
|
+
}
|
|
137
|
+
credential = await signInWithGoogleOAuthDesktop(cfg.googleOAuth, cfg.webAuth);
|
|
138
|
+
}
|
|
127
139
|
if (credential)
|
|
128
140
|
await signInWithCredential(auth, credential);
|
|
129
141
|
}
|
|
@@ -135,6 +147,23 @@ export function useFirebaseAuthJs(config) {
|
|
|
135
147
|
requireProvider('apple');
|
|
136
148
|
const auth = requireAuth();
|
|
137
149
|
const cfg = configRef.current;
|
|
150
|
+
if (cfg.platform) {
|
|
151
|
+
setIsLoading(true);
|
|
152
|
+
try {
|
|
153
|
+
const credential = await appleCredential(cfg.platform, signInConfigOf(cfg), {
|
|
154
|
+
...(cfg.getAppleAuth ? { appleAuth: cfg.getAppleAuth } : {}),
|
|
155
|
+
...(cfg.getAppleAuthAndroid
|
|
156
|
+
? { appleAuthAndroid: cfg.getAppleAuthAndroid }
|
|
157
|
+
: {}),
|
|
158
|
+
});
|
|
159
|
+
if (credential)
|
|
160
|
+
await signInWithCredential(auth, credential);
|
|
161
|
+
}
|
|
162
|
+
finally {
|
|
163
|
+
setIsLoading(false);
|
|
164
|
+
}
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
138
167
|
if (!cfg.getAppleAuth)
|
|
139
168
|
throw new Error('Apple sign-in requires getAppleAuth config');
|
|
140
169
|
setIsLoading(true);
|
|
@@ -148,7 +177,7 @@ export function useFirebaseAuthJs(config) {
|
|
|
148
177
|
throw new Error('No identity token from Apple');
|
|
149
178
|
const credential = buildAppleCredential({
|
|
150
179
|
idToken: response.identityToken,
|
|
151
|
-
rawNonce: response.nonce,
|
|
180
|
+
...(response.nonce ? { rawNonce: response.nonce } : {}),
|
|
152
181
|
});
|
|
153
182
|
await signInWithCredential(auth, credential);
|
|
154
183
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFirebaseAuth.js","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,
|
|
1
|
+
{"version":3,"file":"useFirebaseAuth.js","sourceRoot":"","sources":["../../src/auth/useFirebaseAuth.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export interface GoogleSignInBridge {
|
|
|
6
6
|
iosClientId?: string;
|
|
7
7
|
webClientId?: string;
|
|
8
8
|
}): void;
|
|
9
|
-
hasPlayServices(): Promise<boolean>;
|
|
9
|
+
hasPlayServices(options?: Record<string, unknown>): Promise<boolean>;
|
|
10
10
|
signIn(): Promise<{
|
|
11
11
|
type: string;
|
|
12
12
|
data: {
|
|
@@ -14,7 +14,7 @@ export interface GoogleSignInBridge {
|
|
|
14
14
|
} | null;
|
|
15
15
|
}>;
|
|
16
16
|
}
|
|
17
|
-
export interface AppleAuthBridge<Operation =
|
|
17
|
+
export interface AppleAuthBridge<Operation = any, Scope = any> {
|
|
18
18
|
Operation: {
|
|
19
19
|
LOGIN: Operation;
|
|
20
20
|
};
|
|
@@ -30,10 +30,10 @@ export interface AppleAuthBridge<Operation = unknown, Scope = unknown> {
|
|
|
30
30
|
requestedScopes: Scope[];
|
|
31
31
|
}): Promise<{
|
|
32
32
|
identityToken: string | null;
|
|
33
|
-
nonce?: string
|
|
33
|
+
nonce?: string;
|
|
34
34
|
}>;
|
|
35
35
|
}
|
|
36
|
-
export interface AppleAuthAndroidBridge<ResponseType =
|
|
36
|
+
export interface AppleAuthAndroidBridge<ResponseType = any, Scope = any> {
|
|
37
37
|
isSupported: boolean;
|
|
38
38
|
ResponseType: {
|
|
39
39
|
ALL: ResponseType;
|
|
@@ -55,14 +55,15 @@ export interface AppleAuthAndroidBridge<ResponseType = unknown, Scope = unknown>
|
|
|
55
55
|
nonce?: string;
|
|
56
56
|
}>;
|
|
57
57
|
}
|
|
58
|
+
export type ModuleGetter<T> = () => T | Promise<T>;
|
|
58
59
|
export interface GoogleSignInModules {
|
|
59
60
|
webAuth?: WebAuthBridge;
|
|
60
|
-
googleSignIn?:
|
|
61
|
+
googleSignIn?: ModuleGetter<GoogleSignInBridge>;
|
|
61
62
|
}
|
|
62
|
-
export interface AppleSignInModules
|
|
63
|
-
appleAuth?:
|
|
64
|
-
appleAuthAndroid?:
|
|
63
|
+
export interface AppleSignInModules {
|
|
64
|
+
appleAuth?: ModuleGetter<AppleAuthBridge>;
|
|
65
|
+
appleAuthAndroid?: ModuleGetter<AppleAuthAndroidBridge>;
|
|
65
66
|
}
|
|
66
67
|
export declare function googleCredential(platform: SignInPlatform, config: SignInConfig, modules: GoogleSignInModules): Promise<OAuthCredential | null>;
|
|
67
|
-
export declare function appleCredential
|
|
68
|
+
export declare function appleCredential(platform: SignInPlatform, config: SignInConfig, modules: AppleSignInModules): Promise<OAuthCredential | null>;
|
|
68
69
|
//# sourceMappingURL=credentials.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AASrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAGlB,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,MAAM,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxE,eAAe,
|
|
1
|
+
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ export async function googleCredential(platform, config, modules) {
|
|
|
12
12
|
reversedClientId: reversedGoogleClientId(config.googleIosClientId),
|
|
13
13
|
}, webAuth);
|
|
14
14
|
}
|
|
15
|
-
const GoogleSignin = (modules.googleSignIn ?? missing('GoogleSignin'))();
|
|
15
|
+
const GoogleSignin = await (modules.googleSignIn ?? missing('GoogleSignin'))();
|
|
16
16
|
GoogleSignin.configure(platform === 'android'
|
|
17
17
|
? { webClientId: config.googleWebClientId }
|
|
18
18
|
: { iosClientId: config.googleIosClientId });
|
|
@@ -27,7 +27,7 @@ export async function googleCredential(platform, config, modules) {
|
|
|
27
27
|
}
|
|
28
28
|
export async function appleCredential(platform, config, modules) {
|
|
29
29
|
if (platform === 'android') {
|
|
30
|
-
const appleAuthAndroid = (modules.appleAuthAndroid ?? missing('appleAuthAndroid'))();
|
|
30
|
+
const appleAuthAndroid = await (modules.appleAuthAndroid ?? missing('appleAuthAndroid'))();
|
|
31
31
|
if (!appleAuthAndroid.isSupported) {
|
|
32
32
|
throw new Error('Apple sign-in is not supported on this device');
|
|
33
33
|
}
|
|
@@ -53,7 +53,7 @@ export async function appleCredential(platform, config, modules) {
|
|
|
53
53
|
throw error;
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
const appleAuth = (modules.appleAuth ?? missing('appleAuth'))();
|
|
56
|
+
const appleAuth = await (modules.appleAuth ?? missing('appleAuth'))();
|
|
57
57
|
try {
|
|
58
58
|
const response = await appleAuth.performRequest({
|
|
59
59
|
requestedOperation: appleAuth.Operation.LOGIN,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,GAGlB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/signin/credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { type Auth } from 'firebase/auth';
|
|
2
2
|
export interface FirebaseJsAuthConfig {
|
|
3
3
|
apiKey: string;
|
|
4
|
-
authDomain
|
|
5
|
-
projectId
|
|
4
|
+
authDomain?: string;
|
|
5
|
+
projectId?: string;
|
|
6
|
+
[option: string]: unknown;
|
|
6
7
|
}
|
|
7
8
|
export interface PersistenceStorage {
|
|
8
9
|
getItem(key: string): Promise<string | null>;
|
|
9
10
|
setItem(key: string, value: string): Promise<void>;
|
|
10
11
|
removeItem(key: string): Promise<void>;
|
|
11
12
|
}
|
|
12
|
-
export declare function createFirebaseJsAuth(config: FirebaseJsAuthConfig, storage: PersistenceStorage): Auth | null;
|
|
13
|
+
export declare function createFirebaseJsAuth(config: FirebaseJsAuthConfig, storage: PersistenceStorage | null): Auth | null;
|
|
13
14
|
//# sourceMappingURL=firebase-js-auth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-js-auth.d.ts","sourceRoot":"","sources":["../../src/signin/firebase-js-auth.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,KAAK,IAAI,EAIV,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"firebase-js-auth.d.ts","sourceRoot":"","sources":["../../src/signin/firebase-js-auth.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,KAAK,IAAI,EAIV,MAAM,eAAe,CAAC;AAGvB,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAGD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC;AAgBD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,kBAAkB,GAAG,IAAI,GACjC,IAAI,GAAG,IAAI,CAab"}
|
|
@@ -7,13 +7,9 @@ export function createFirebaseJsAuth(config, storage) {
|
|
|
7
7
|
const existing = getApps()[0];
|
|
8
8
|
if (existing)
|
|
9
9
|
return getAuth(existing);
|
|
10
|
-
const app = initializeApp(
|
|
11
|
-
apiKey: config.apiKey,
|
|
12
|
-
authDomain: config.authDomain,
|
|
13
|
-
projectId: config.projectId,
|
|
14
|
-
});
|
|
10
|
+
const app = initializeApp(config);
|
|
15
11
|
const persistenceFor = firebaseAuthModule.getReactNativePersistence;
|
|
16
|
-
return persistenceFor
|
|
12
|
+
return persistenceFor && storage
|
|
17
13
|
? initializeAuth(app, { persistence: persistenceFor(storage) })
|
|
18
14
|
: getAuth(app);
|
|
19
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-js-auth.js","sourceRoot":"","sources":["../../src/signin/firebase-js-auth.ts"],"names":[],"mappings":"AAaA,OAAO,EAAoB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,kBAAkB,MAAM,eAAe,CAAC;AACpD,OAAO,EAEL,OAAO,EACP,cAAc,GAEf,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"firebase-js-auth.js","sourceRoot":"","sources":["../../src/signin/firebase-js-auth.ts"],"names":[],"mappings":"AAaA,OAAO,EAAoB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,kBAAkB,MAAM,eAAe,CAAC;AACpD,OAAO,EAEL,OAAO,EACP,cAAc,GAEf,MAAM,eAAe,CAAC;AA+BvB,MAAM,UAAU,oBAAoB,CAClC,MAA4B,EAC5B,OAAkC;IAElC,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,QAAQ;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,GAAG,GAAgB,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,cAAc,GAClB,kBAGD,CAAC,yBAAyB,CAAC;IAC5B,OAAO,cAAc,IAAI,OAAO;QAC9B,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudobility/auth_lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.102",
|
|
4
4
|
"description": "Firebase authentication utilities with token refresh handling",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -23,6 +23,14 @@
|
|
|
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
|
+
"./account": {
|
|
31
|
+
"import": "./dist/account/index.js",
|
|
32
|
+
"types": "./dist/account/index.d.ts"
|
|
33
|
+
},
|
|
26
34
|
"./auth-js": {
|
|
27
35
|
"import": "./dist/auth/index.js",
|
|
28
36
|
"types": "./dist/auth/index.d.ts"
|
|
@@ -34,6 +42,7 @@
|
|
|
34
42
|
},
|
|
35
43
|
"files": [
|
|
36
44
|
"dist",
|
|
45
|
+
"build/firebase-service-config.cjs",
|
|
37
46
|
"README.md"
|
|
38
47
|
],
|
|
39
48
|
"scripts": {
|
|
@@ -69,22 +78,23 @@
|
|
|
69
78
|
}
|
|
70
79
|
},
|
|
71
80
|
"devDependencies": {
|
|
72
|
-
"
|
|
81
|
+
"@babel/core": "^7",
|
|
82
|
+
"@eslint/js": "^9.0.0",
|
|
73
83
|
"@sudobility/di": "^1.5.67",
|
|
74
84
|
"@sudobility/types": "^1.9.68",
|
|
75
85
|
"@tanstack/react-query": "^5.80.7",
|
|
76
|
-
"@types/node": "^22.0.0",
|
|
77
|
-
"vitest": "^4.0.4",
|
|
78
|
-
"@eslint/js": "^9.0.0",
|
|
79
86
|
"@types/bun": "^1.2.8",
|
|
87
|
+
"@types/node": "^22.0.0",
|
|
80
88
|
"@types/react": "^19.2.5",
|
|
81
89
|
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
|
82
90
|
"@typescript-eslint/parser": "^8.0.0",
|
|
83
91
|
"eslint": "^9.0.0",
|
|
84
92
|
"eslint-config-prettier": "^10.0.0",
|
|
85
93
|
"eslint-plugin-prettier": "^5.0.0",
|
|
94
|
+
"firebase": "^12.7.0",
|
|
86
95
|
"prettier": "^3.0.0",
|
|
87
|
-
"typescript": "~5.9.3"
|
|
96
|
+
"typescript": "~5.9.3",
|
|
97
|
+
"vitest": "^4.0.4"
|
|
88
98
|
},
|
|
89
99
|
"publishConfig": {
|
|
90
100
|
"access": "public"
|