react-native-nitro-auth 0.5.3 → 0.5.5
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/README.md +60 -30
- package/android/build.gradle +2 -5
- package/android/src/main/cpp/JniOnLoad.cpp +3 -1
- package/android/src/main/cpp/PlatformAuth+Android.cpp +95 -29
- package/android/src/main/java/com/auth/AuthAdapter.kt +124 -126
- package/android/src/main/java/com/auth/NitroAuthModule.kt +8 -1
- package/cpp/AuthCache.cpp +0 -44
- package/cpp/AuthCache.hpp +0 -7
- package/cpp/HybridAuth.cpp +20 -2
- package/cpp/HybridAuth.hpp +1 -0
- package/ios/AuthAdapter.swift +64 -28
- package/lib/commonjs/Auth.web.js +96 -43
- package/lib/commonjs/Auth.web.js.map +1 -1
- package/lib/commonjs/index.js +23 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/service.js +33 -8
- package/lib/commonjs/service.js.map +1 -1
- package/lib/commonjs/use-auth.js +51 -54
- package/lib/commonjs/use-auth.js.map +1 -1
- package/lib/commonjs/utils/auth-error.js +37 -0
- package/lib/commonjs/utils/auth-error.js.map +1 -0
- package/lib/module/Auth.web.js +96 -43
- package/lib/module/Auth.web.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/service.js +33 -8
- package/lib/module/service.js.map +1 -1
- package/lib/module/use-auth.js +51 -54
- package/lib/module/use-auth.js.map +1 -1
- package/lib/module/utils/auth-error.js +30 -0
- package/lib/module/utils/auth-error.js.map +1 -0
- package/lib/typescript/commonjs/Auth.web.d.ts +7 -0
- package/lib/typescript/commonjs/Auth.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/service.d.ts.map +1 -1
- package/lib/typescript/commonjs/use-auth.d.ts +2 -1
- package/lib/typescript/commonjs/use-auth.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/auth-error.d.ts +16 -0
- package/lib/typescript/commonjs/utils/auth-error.d.ts.map +1 -0
- package/lib/typescript/module/Auth.web.d.ts +7 -0
- package/lib/typescript/module/Auth.web.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/service.d.ts.map +1 -1
- package/lib/typescript/module/use-auth.d.ts +2 -1
- package/lib/typescript/module/use-auth.d.ts.map +1 -1
- package/lib/typescript/module/utils/auth-error.d.ts +16 -0
- package/lib/typescript/module/utils/auth-error.d.ts.map +1 -0
- package/nitrogen/generated/android/NitroAuthOnLoad.cpp +22 -17
- package/nitrogen/generated/android/NitroAuthOnLoad.hpp +13 -4
- package/package.json +7 -7
- package/react-native-nitro-auth.podspec +1 -1
- package/src/Auth.web.ts +124 -50
- package/src/index.ts +1 -0
- package/src/service.ts +34 -8
- package/src/use-auth.ts +81 -114
- package/src/utils/auth-error.ts +49 -0
- package/ios/KeychainStore.swift +0 -43
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_logger","require","CACHE_KEY","SCOPES_KEY","MS_REFRESH_TOKEN_KEY","DEFAULT_SCOPES","MS_DEFAULT_SCOPES","STORAGE_MODE_SESSION","STORAGE_MODE_LOCAL","STORAGE_MODE_MEMORY","POPUP_POLL_INTERVAL_MS","POPUP_TIMEOUT_MS","WEB_STORAGE_MODES","Set","inMemoryWebStorage","Map","AuthWebError","Error","constructor","message","underlyingError","name","isJsonObject","value","isAuthProvider","getOptionalString","source","key","candidate","undefined","getOptionalNumber","parseAuthUser","provider","scopesCandidate","scopes","Array","isArray","filter","scope","email","photo","idToken","accessToken","refreshToken","serverAuthCode","expirationTime","parseScopes","parseAuthWebExtraConfig","nitroAuthWebStorageCandidate","nitroAuthWebStorage","googleWebClientId","microsoftClientId","microsoftTenant","microsoftB2cDomain","appleWebClientId","nitroAuthPersistTokensOnWeb","getConfig","Constants","default","expoConfig","extra","error","logger","debug","String","AuthWeb","_grantedScopes","_listeners","_tokenListeners","loadFromCache","isPromiseLike","then","createWebStorageDriver","adapter","save","result","load","remove","shouldPersistTokensInStorage","_storageAdapter","getWebStorageMode","configuredMode","has","getBrowserStorage","window","mode","storage","localStorage","sessionStorage","testKey","setItem","removeItem","warn","saveValue","set","loadValue","getItem","get","removeValue","delete","removePersistedBrowserValue","sanitizeUserForPersistence","user","safeUser","saveRefreshToken","loadRefreshToken","cached","parsedUser","JSON","parse","_currentUser","removeFromCache","parsedScopes","currentUser","grantedScopes","hasPlayServices","onAuthStateChanged","callback","push","l","onTokensRefreshed","notify","forEach","login","options","loginHint","log","loginGoogle","loginMicrosoft","tenant","prompt","loginApple","e","mapError","requestScopes","newScopes","revokeScopes","s","includes","stringify","updateUser","getAccessToken","now","Date","config","clientId","b2cDomain","authBaseUrl","getMicrosoftAuthBaseUrl","tokenUrl","body","URLSearchParams","client_id","grant_type","refresh_token","response","fetch","method","headers","toString","json","parseResponseObject","ok","newRefreshToken","expiresInSeconds","effectiveIdToken","claims","decodeMicrosoftJwt","tokens","length","rawMessage","msg","toLowerCase","mappedMsg","parsed","parseJwtPayload","token","payload","split","decoded","atob","waitForPopupRedirect","popup","redirectUri","onRedirect","Promise","resolve","reject","crossOriginLogShown","cleanup","intervalId","timeoutId","shouldClosePopup","clearInterval","clearTimeout","closed","close","setTimeout","setInterval","url","location","href","startsWith","catch","origin","authUrl","URL","searchParams","join","crypto","randomUUID","width","height","left","screenX","outerWidth","top","screenY","outerHeight","open","hash","slice","params","expiresIn","code","parseInt","decodeGoogleJwt","effectiveTenant","effectiveScopes","codeVerifier","generateCodeVerifier","codeChallenge","generateCodeChallenge","state","nonce","urlObj","returnedState","errorDescription","exchangeMicrosoftCodeForTokens","array","Uint8Array","getRandomValues","base64UrlEncode","verifier","encoder","TextEncoder","data","encode","subtle","digest","bytes","base64","btoa","fromCharCode","replace","expectedNonce","redirect_uri","code_verifier","endsWith","script","document","createElement","src","async","onload","AppleID","auth","init","redirectURI","usePopup","signIn","authorization","id_token","firstName","lastName","trim","err","onerror","head","appendChild","silentRestore","logout","userToPersist","setLoggingEnabled","enabled","setEnabled","setWebStorageAdapter","dispose","equals","other","AuthModule","exports"],"sourceRoot":"../../src","sources":["Auth.web.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_logger","require","CACHE_KEY","SCOPES_KEY","MS_REFRESH_TOKEN_KEY","DEFAULT_SCOPES","MS_DEFAULT_SCOPES","STORAGE_MODE_SESSION","STORAGE_MODE_LOCAL","STORAGE_MODE_MEMORY","POPUP_POLL_INTERVAL_MS","POPUP_TIMEOUT_MS","WEB_STORAGE_MODES","Set","inMemoryWebStorage","Map","AuthWebError","Error","constructor","message","underlyingError","name","isJsonObject","value","isAuthProvider","getOptionalString","source","key","candidate","undefined","getOptionalNumber","parseAuthUser","provider","scopesCandidate","scopes","Array","isArray","filter","scope","email","photo","idToken","accessToken","refreshToken","serverAuthCode","expirationTime","parseScopes","parseAuthWebExtraConfig","nitroAuthWebStorageCandidate","nitroAuthWebStorage","googleWebClientId","microsoftClientId","microsoftTenant","microsoftB2cDomain","appleWebClientId","nitroAuthPersistTokensOnWeb","getConfig","Constants","default","expoConfig","extra","error","logger","debug","String","AuthWeb","_grantedScopes","_listeners","_tokenListeners","_browserStorageResolved","_config","loadFromCache","isPromiseLike","then","createWebStorageDriver","adapter","save","result","load","remove","shouldPersistTokensInStorage","_storageAdapter","getWebStorageMode","configuredMode","has","getBrowserStorage","_browserStorageCache","window","mode","storage","localStorage","sessionStorage","testKey","setItem","removeItem","warn","saveValue","set","loadValue","getItem","get","removeValue","delete","removePersistedBrowserValue","sanitizeUserForPersistence","user","safeUser","saveRefreshToken","loadRefreshToken","cached","parsedUser","JSON","parse","_currentUser","removeFromCache","parsedScopes","currentUser","grantedScopes","hasPlayServices","onAuthStateChanged","callback","push","l","onTokensRefreshed","notify","forEach","login","options","loginHint","log","loginGoogle","loginMicrosoft","tenant","prompt","loginApple","e","mapError","requestScopes","newScopes","revokeScopes","s","includes","stringify","updateUser","getAccessToken","now","Date","_refreshPromise","refreshPromise","performRefreshToken","clientId","b2cDomain","authBaseUrl","getMicrosoftAuthBaseUrl","tokenUrl","body","URLSearchParams","client_id","grant_type","refresh_token","response","fetch","method","headers","toString","json","parseResponseObject","ok","newRefreshToken","expiresInSeconds","effectiveIdToken","claims","decodeMicrosoftJwt","tokens","length","rawMessage","msg","toLowerCase","mappedMsg","parsed","parseJwtPayload","token","payload","split","normalizedPayload","replace","padding","repeat","decoded","atob","waitForPopupRedirect","popup","redirectUri","onRedirect","Promise","resolve","reject","crossOriginLogShown","cleanup","intervalId","timeoutId","shouldClosePopup","clearInterval","clearTimeout","closed","close","setTimeout","setInterval","url","location","href","startsWith","catch","origin","authUrl","URL","searchParams","join","crypto","randomUUID","width","height","left","screenX","outerWidth","top","screenY","outerHeight","open","hash","slice","params","expiresIn","code","parseInt","decodeGoogleJwt","effectiveTenant","effectiveScopes","codeVerifier","generateCodeVerifier","codeChallenge","generateCodeChallenge","state","nonce","urlObj","returnedState","errorDescription","exchangeMicrosoftCodeForTokens","array","Uint8Array","getRandomValues","base64UrlEncode","verifier","encoder","TextEncoder","data","encode","subtle","digest","bytes","base64","btoa","fromCharCode","expectedNonce","redirect_uri","code_verifier","endsWith","ensureAppleSdkLoaded","AppleID","_appleSdkLoadPromise","scriptId","existingScript","document","getElementById","addEventListener","once","script","createElement","id","src","async","onload","onerror","head","appendChild","auth","init","redirectURI","usePopup","signIn","authorization","id_token","firstName","lastName","trim","silentRestore","logout","userToPersist","setLoggingEnabled","enabled","setEnabled","setWebStorageAdapter","dispose","equals","other","AuthModule","exports"],"sourceRoot":"../../src","sources":["Auth.web.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -5,14 +5,35 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
var _exportNames = {
|
|
7
7
|
useAuth: true,
|
|
8
|
-
AuthService: true
|
|
8
|
+
AuthService: true,
|
|
9
|
+
AuthError: true,
|
|
10
|
+
isAuthErrorCode: true,
|
|
11
|
+
toAuthErrorCode: true
|
|
9
12
|
};
|
|
13
|
+
Object.defineProperty(exports, "AuthError", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () {
|
|
16
|
+
return _authError.AuthError;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
10
19
|
Object.defineProperty(exports, "AuthService", {
|
|
11
20
|
enumerable: true,
|
|
12
21
|
get: function () {
|
|
13
22
|
return _service.AuthService;
|
|
14
23
|
}
|
|
15
24
|
});
|
|
25
|
+
Object.defineProperty(exports, "isAuthErrorCode", {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () {
|
|
28
|
+
return _authError.isAuthErrorCode;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
Object.defineProperty(exports, "toAuthErrorCode", {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: function () {
|
|
34
|
+
return _authError.toAuthErrorCode;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
16
37
|
Object.defineProperty(exports, "useAuth", {
|
|
17
38
|
enumerable: true,
|
|
18
39
|
get: function () {
|
|
@@ -45,4 +66,5 @@ Object.keys(_socialButton).forEach(function (key) {
|
|
|
45
66
|
});
|
|
46
67
|
var _useAuth = require("./use-auth.js");
|
|
47
68
|
var _service = require("./service");
|
|
69
|
+
var _authError = require("./utils/auth-error.js");
|
|
48
70
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_AuthNitro","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_socialButton","_useAuth","_service"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_AuthNitro","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_socialButton","_useAuth","_service","_authError"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,aAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,aAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,aAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,QAAA,GAAAd,OAAA;AACA,IAAAe,QAAA,GAAAf,OAAA;AACA,IAAAgB,UAAA,GAAAhB,OAAA","ignoreList":[]}
|
package/lib/commonjs/service.js
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.AuthService = void 0;
|
|
7
7
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
8
|
+
var _authError = require("./utils/auth-error.js");
|
|
8
9
|
const nitroAuth = _reactNativeNitroModules.NitroModules.createHybridObject("Auth");
|
|
9
10
|
const AuthService = exports.AuthService = {
|
|
10
11
|
get name() {
|
|
@@ -20,29 +21,53 @@ const AuthService = exports.AuthService = {
|
|
|
20
21
|
return nitroAuth.hasPlayServices;
|
|
21
22
|
},
|
|
22
23
|
async login(provider, options) {
|
|
23
|
-
|
|
24
|
+
try {
|
|
25
|
+
return await nitroAuth.login(provider, options);
|
|
26
|
+
} catch (e) {
|
|
27
|
+
throw _authError.AuthError.from(e);
|
|
28
|
+
}
|
|
24
29
|
},
|
|
25
30
|
async requestScopes(scopes) {
|
|
26
|
-
|
|
31
|
+
try {
|
|
32
|
+
return await nitroAuth.requestScopes(scopes);
|
|
33
|
+
} catch (e) {
|
|
34
|
+
throw _authError.AuthError.from(e);
|
|
35
|
+
}
|
|
27
36
|
},
|
|
28
37
|
async revokeScopes(scopes) {
|
|
29
|
-
|
|
38
|
+
try {
|
|
39
|
+
return await nitroAuth.revokeScopes(scopes);
|
|
40
|
+
} catch (e) {
|
|
41
|
+
throw _authError.AuthError.from(e);
|
|
42
|
+
}
|
|
30
43
|
},
|
|
31
44
|
async getAccessToken() {
|
|
32
|
-
|
|
45
|
+
try {
|
|
46
|
+
return await nitroAuth.getAccessToken();
|
|
47
|
+
} catch (e) {
|
|
48
|
+
throw _authError.AuthError.from(e);
|
|
49
|
+
}
|
|
33
50
|
},
|
|
34
51
|
async refreshToken() {
|
|
35
|
-
|
|
52
|
+
try {
|
|
53
|
+
return await nitroAuth.refreshToken();
|
|
54
|
+
} catch (e) {
|
|
55
|
+
throw _authError.AuthError.from(e);
|
|
56
|
+
}
|
|
36
57
|
},
|
|
37
58
|
logout() {
|
|
38
59
|
nitroAuth.logout();
|
|
39
60
|
},
|
|
40
61
|
async silentRestore() {
|
|
41
|
-
|
|
62
|
+
try {
|
|
63
|
+
return await nitroAuth.silentRestore();
|
|
64
|
+
} catch (e) {
|
|
65
|
+
throw _authError.AuthError.from(e);
|
|
66
|
+
}
|
|
42
67
|
},
|
|
43
68
|
onAuthStateChanged(callback) {
|
|
44
|
-
return nitroAuth.onAuthStateChanged(
|
|
45
|
-
callback(
|
|
69
|
+
return nitroAuth.onAuthStateChanged(user => {
|
|
70
|
+
callback(user);
|
|
46
71
|
});
|
|
47
72
|
},
|
|
48
73
|
onTokensRefreshed(callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","nitroAuth","NitroModules","createHybridObject","AuthService","exports","name","currentUser","grantedScopes","hasPlayServices","login","provider","options","requestScopes","scopes","revokeScopes","getAccessToken","refreshToken","logout","silentRestore","onAuthStateChanged","callback","onTokensRefreshed","setLoggingEnabled","enabled","dispose","equals","other"],"sourceRoot":"../../src","sources":["service.ts"],"mappings":";;;;;;AAAA,IAAAA,wBAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_authError","nitroAuth","NitroModules","createHybridObject","AuthService","exports","name","currentUser","grantedScopes","hasPlayServices","login","provider","options","e","AuthError","from","requestScopes","scopes","revokeScopes","getAccessToken","refreshToken","logout","silentRestore","onAuthStateChanged","callback","user","onTokensRefreshed","setLoggingEnabled","enabled","dispose","equals","other"],"sourceRoot":"../../src","sources":["service.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/use-auth.js
CHANGED
|
@@ -6,13 +6,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useAuth = useAuth;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _service = require("./service");
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
var _authError = require("./utils/auth-error.js");
|
|
10
|
+
const areScopesEqual = (left, right) => {
|
|
11
|
+
if (left.length !== right.length) return false;
|
|
12
|
+
for (let i = 0; i < left.length; i += 1) {
|
|
13
|
+
if (left[i] !== right[i]) return false;
|
|
14
14
|
}
|
|
15
|
-
|
|
15
|
+
return true;
|
|
16
|
+
};
|
|
16
17
|
function useAuth() {
|
|
17
18
|
const [state, setState] = (0, _react.useState)({
|
|
18
19
|
user: _service.AuthService.currentUser,
|
|
@@ -20,6 +21,21 @@ function useAuth() {
|
|
|
20
21
|
loading: false,
|
|
21
22
|
error: undefined
|
|
22
23
|
});
|
|
24
|
+
const syncStateFromService = (0, _react.useCallback)((nextLoading, nextError) => {
|
|
25
|
+
const nextUser = _service.AuthService.currentUser;
|
|
26
|
+
const nextScopes = _service.AuthService.grantedScopes;
|
|
27
|
+
setState(prev => {
|
|
28
|
+
if (prev.loading === nextLoading && prev.error === nextError && prev.user === nextUser && areScopesEqual(prev.scopes, nextScopes)) {
|
|
29
|
+
return prev;
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
user: nextUser,
|
|
33
|
+
scopes: nextScopes,
|
|
34
|
+
loading: nextLoading,
|
|
35
|
+
error: nextError
|
|
36
|
+
};
|
|
37
|
+
});
|
|
38
|
+
}, []);
|
|
23
39
|
const login = (0, _react.useCallback)(async (provider, options) => {
|
|
24
40
|
setState(prev => ({
|
|
25
41
|
...prev,
|
|
@@ -28,14 +44,9 @@ function useAuth() {
|
|
|
28
44
|
}));
|
|
29
45
|
try {
|
|
30
46
|
await _service.AuthService.login(provider, options);
|
|
31
|
-
|
|
32
|
-
user: _service.AuthService.currentUser,
|
|
33
|
-
scopes: _service.AuthService.grantedScopes,
|
|
34
|
-
loading: false,
|
|
35
|
-
error: undefined
|
|
36
|
-
});
|
|
47
|
+
syncStateFromService(false, undefined);
|
|
37
48
|
} catch (e) {
|
|
38
|
-
const error =
|
|
49
|
+
const error = _authError.AuthError.from(e);
|
|
39
50
|
setState(prev => ({
|
|
40
51
|
...prev,
|
|
41
52
|
loading: false,
|
|
@@ -43,7 +54,7 @@ function useAuth() {
|
|
|
43
54
|
}));
|
|
44
55
|
throw error;
|
|
45
56
|
}
|
|
46
|
-
}, []);
|
|
57
|
+
}, [syncStateFromService]);
|
|
47
58
|
const logout = (0, _react.useCallback)(() => {
|
|
48
59
|
_service.AuthService.logout();
|
|
49
60
|
setState({
|
|
@@ -61,14 +72,9 @@ function useAuth() {
|
|
|
61
72
|
}));
|
|
62
73
|
try {
|
|
63
74
|
await _service.AuthService.requestScopes(newScopes);
|
|
64
|
-
|
|
65
|
-
user: _service.AuthService.currentUser,
|
|
66
|
-
scopes: _service.AuthService.grantedScopes,
|
|
67
|
-
loading: false,
|
|
68
|
-
error: undefined
|
|
69
|
-
});
|
|
75
|
+
syncStateFromService(false, undefined);
|
|
70
76
|
} catch (e) {
|
|
71
|
-
const error =
|
|
77
|
+
const error = _authError.AuthError.from(e);
|
|
72
78
|
setState(prev => ({
|
|
73
79
|
...prev,
|
|
74
80
|
loading: false,
|
|
@@ -76,7 +82,7 @@ function useAuth() {
|
|
|
76
82
|
}));
|
|
77
83
|
throw error;
|
|
78
84
|
}
|
|
79
|
-
}, []);
|
|
85
|
+
}, [syncStateFromService]);
|
|
80
86
|
const revokeScopes = (0, _react.useCallback)(async scopesToRevoke => {
|
|
81
87
|
setState(prev => ({
|
|
82
88
|
...prev,
|
|
@@ -85,14 +91,9 @@ function useAuth() {
|
|
|
85
91
|
}));
|
|
86
92
|
try {
|
|
87
93
|
await _service.AuthService.revokeScopes(scopesToRevoke);
|
|
88
|
-
|
|
89
|
-
user: _service.AuthService.currentUser,
|
|
90
|
-
scopes: _service.AuthService.grantedScopes,
|
|
91
|
-
loading: false,
|
|
92
|
-
error: undefined
|
|
93
|
-
});
|
|
94
|
+
syncStateFromService(false, undefined);
|
|
94
95
|
} catch (e) {
|
|
95
|
-
const error =
|
|
96
|
+
const error = _authError.AuthError.from(e);
|
|
96
97
|
setState(prev => ({
|
|
97
98
|
...prev,
|
|
98
99
|
loading: false,
|
|
@@ -100,7 +101,7 @@ function useAuth() {
|
|
|
100
101
|
}));
|
|
101
102
|
throw error;
|
|
102
103
|
}
|
|
103
|
-
}, []);
|
|
104
|
+
}, [syncStateFromService]);
|
|
104
105
|
const getAccessToken = (0, _react.useCallback)(() => _service.AuthService.getAccessToken(), []);
|
|
105
106
|
const refreshToken = (0, _react.useCallback)(async () => {
|
|
106
107
|
setState(prev => ({
|
|
@@ -110,24 +111,18 @@ function useAuth() {
|
|
|
110
111
|
}));
|
|
111
112
|
try {
|
|
112
113
|
const tokens = await _service.AuthService.refreshToken();
|
|
113
|
-
|
|
114
|
-
user: _service.AuthService.currentUser,
|
|
115
|
-
scopes: _service.AuthService.grantedScopes,
|
|
116
|
-
loading: false,
|
|
117
|
-
error: undefined
|
|
118
|
-
});
|
|
114
|
+
syncStateFromService(false, undefined);
|
|
119
115
|
return tokens;
|
|
120
116
|
} catch (e) {
|
|
121
|
-
const
|
|
122
|
-
const authError = new AuthHookError(msg, _service.AuthService.currentUser?.underlyingError);
|
|
117
|
+
const error = _authError.AuthError.from(e);
|
|
123
118
|
setState(prev => ({
|
|
124
119
|
...prev,
|
|
125
120
|
loading: false,
|
|
126
|
-
error
|
|
121
|
+
error
|
|
127
122
|
}));
|
|
128
|
-
throw
|
|
123
|
+
throw error;
|
|
129
124
|
}
|
|
130
|
-
}, []);
|
|
125
|
+
}, [syncStateFromService]);
|
|
131
126
|
const silentRestore = (0, _react.useCallback)(async () => {
|
|
132
127
|
setState(prev => ({
|
|
133
128
|
...prev,
|
|
@@ -136,14 +131,9 @@ function useAuth() {
|
|
|
136
131
|
}));
|
|
137
132
|
try {
|
|
138
133
|
await _service.AuthService.silentRestore();
|
|
139
|
-
|
|
140
|
-
user: _service.AuthService.currentUser,
|
|
141
|
-
scopes: _service.AuthService.grantedScopes,
|
|
142
|
-
loading: false,
|
|
143
|
-
error: undefined
|
|
144
|
-
});
|
|
134
|
+
syncStateFromService(false, undefined);
|
|
145
135
|
} catch (e) {
|
|
146
|
-
const error =
|
|
136
|
+
const error = _authError.AuthError.from(e);
|
|
147
137
|
setState(prev => ({
|
|
148
138
|
...prev,
|
|
149
139
|
loading: false,
|
|
@@ -151,14 +141,21 @@ function useAuth() {
|
|
|
151
141
|
}));
|
|
152
142
|
throw error;
|
|
153
143
|
}
|
|
154
|
-
}, []);
|
|
144
|
+
}, [syncStateFromService]);
|
|
155
145
|
(0, _react.useEffect)(() => {
|
|
156
146
|
const unsubscribe = _service.AuthService.onAuthStateChanged(currentUser => {
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
user
|
|
160
|
-
|
|
161
|
-
|
|
147
|
+
const nextScopes = _service.AuthService.grantedScopes;
|
|
148
|
+
setState(prev => {
|
|
149
|
+
if (prev.user === currentUser && areScopesEqual(prev.scopes, nextScopes) && prev.loading === false) {
|
|
150
|
+
return prev;
|
|
151
|
+
}
|
|
152
|
+
return {
|
|
153
|
+
...prev,
|
|
154
|
+
user: currentUser,
|
|
155
|
+
scopes: nextScopes,
|
|
156
|
+
loading: false
|
|
157
|
+
};
|
|
158
|
+
});
|
|
162
159
|
});
|
|
163
160
|
return unsubscribe;
|
|
164
161
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_service","
|
|
1
|
+
{"version":3,"names":["_react","require","_service","_authError","areScopesEqual","left","right","length","i","useAuth","state","setState","useState","user","AuthService","currentUser","scopes","grantedScopes","loading","error","undefined","syncStateFromService","useCallback","nextLoading","nextError","nextUser","nextScopes","prev","login","provider","options","e","AuthError","from","logout","requestScopes","newScopes","revokeScopes","scopesToRevoke","getAccessToken","refreshToken","tokens","silentRestore","useEffect","unsubscribe","onAuthStateChanged","useMemo","hasPlayServices"],"sourceRoot":"../../src","sources":["use-auth.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AuthError = void 0;
|
|
7
|
+
exports.isAuthErrorCode = isAuthErrorCode;
|
|
8
|
+
exports.toAuthErrorCode = toAuthErrorCode;
|
|
9
|
+
const AUTH_ERROR_CODES = new Set(["cancelled", "timeout", "popup_blocked", "network_error", "configuration_error", "unsupported_provider", "invalid_state", "invalid_nonce", "token_error", "no_id_token", "parse_error", "refresh_failed", "unknown"]);
|
|
10
|
+
function isAuthErrorCode(value) {
|
|
11
|
+
return AUTH_ERROR_CODES.has(value);
|
|
12
|
+
}
|
|
13
|
+
function toAuthErrorCode(raw) {
|
|
14
|
+
return isAuthErrorCode(raw) ? raw : "unknown";
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Typed error thrown by all AuthService operations.
|
|
19
|
+
*
|
|
20
|
+
* - `code` — always a valid `AuthErrorCode`, safe to switch on
|
|
21
|
+
* - `underlyingMessage` — the raw platform message when it differs from `code`
|
|
22
|
+
*/
|
|
23
|
+
class AuthError extends Error {
|
|
24
|
+
constructor(raw) {
|
|
25
|
+
const message = raw instanceof Error ? raw.message : String(raw);
|
|
26
|
+
const code = toAuthErrorCode(message);
|
|
27
|
+
super(code);
|
|
28
|
+
this.name = "AuthError";
|
|
29
|
+
this.code = code;
|
|
30
|
+
this.underlyingMessage = code !== message ? message : undefined;
|
|
31
|
+
}
|
|
32
|
+
static from(e) {
|
|
33
|
+
return e instanceof AuthError ? e : new AuthError(e);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.AuthError = AuthError;
|
|
37
|
+
//# sourceMappingURL=auth-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AUTH_ERROR_CODES","Set","isAuthErrorCode","value","has","toAuthErrorCode","raw","AuthError","Error","constructor","message","String","code","name","underlyingMessage","undefined","from","e","exports"],"sourceRoot":"../../../src","sources":["utils/auth-error.ts"],"mappings":";;;;;;;;AAEA,MAAMA,gBAAqC,GAAG,IAAIC,GAAG,CAAgB,CACnE,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,aAAa,EACb,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,SAAS,CACV,CAAC;AAEK,SAASC,eAAeA,CAACC,KAAa,EAA0B;EACrE,OAAOH,gBAAgB,CAACI,GAAG,CAACD,KAAK,CAAC;AACpC;AAEO,SAASE,eAAeA,CAACC,GAAW,EAAiB;EAC1D,OAAOJ,eAAe,CAACI,GAAG,CAAC,GAAGA,GAAG,GAAG,SAAS;AAC/C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,SAAS,SAASC,KAAK,CAAC;EAInCC,WAAWA,CAACH,GAAY,EAAE;IACxB,MAAMI,OAAO,GAAGJ,GAAG,YAAYE,KAAK,GAAGF,GAAG,CAACI,OAAO,GAAGC,MAAM,CAACL,GAAG,CAAC;IAChE,MAAMM,IAAI,GAAGP,eAAe,CAACK,OAAO,CAAC;IACrC,KAAK,CAACE,IAAI,CAAC;IACX,IAAI,CAACC,IAAI,GAAG,WAAW;IACvB,IAAI,CAACD,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACE,iBAAiB,GAAGF,IAAI,KAAKF,OAAO,GAAGA,OAAO,GAAGK,SAAS;EACjE;EAEA,OAAOC,IAAIA,CAACC,CAAU,EAAa;IACjC,OAAOA,CAAC,YAAYV,SAAS,GAAGU,CAAC,GAAG,IAAIV,SAAS,CAACU,CAAC,CAAC;EACtD;AACF;AAACC,OAAA,CAAAX,SAAA,GAAAA,SAAA","ignoreList":[]}
|