@avantmedia/id-react 0.0.3 → 0.0.4
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/dist/hooks.d.ts +1 -1
- package/dist/hooks.js +1 -1
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/pkce.d.ts.map +1 -1
- package/dist/pkce.js +9 -12
- package/dist/pkce.js.map +1 -1
- package/dist/provider.d.ts +2 -2
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +74 -41
- package/dist/provider.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
package/dist/hooks.d.ts
CHANGED
package/dist/hooks.js
CHANGED
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO;IACnB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IAClD,OAAO,SAAS,CAAC;AACrB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { AvantIdProvider } from
|
|
2
|
-
export { useAuth } from
|
|
3
|
-
export type { AvantIdConfig, User, TokenResponse, AuthState
|
|
4
|
-
export { generateCodeVerifier, generateCodeChallenge
|
|
1
|
+
export { AvantIdProvider } from './provider';
|
|
2
|
+
export { useAuth } from './hooks';
|
|
3
|
+
export type { AvantIdConfig, User, TokenResponse, AuthState } from './types';
|
|
4
|
+
export { generateCodeVerifier, generateCodeChallenge } from './pkce';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAG7E,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Components
|
|
2
|
-
export { AvantIdProvider } from
|
|
2
|
+
export { AvantIdProvider } from './provider';
|
|
3
3
|
// Hooks
|
|
4
|
-
export { useAuth } from
|
|
4
|
+
export { useAuth } from './hooks';
|
|
5
5
|
// PKCE utilities (for advanced use cases)
|
|
6
|
-
export { generateCodeVerifier, generateCodeChallenge
|
|
6
|
+
export { generateCodeVerifier, generateCodeChallenge } from './pkce';
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,QAAQ;AACR,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,QAAQ;AACR,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKlC,0CAA0C;AAC1C,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC"}
|
package/dist/pkce.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAc7E;
|
|
1
|
+
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAc7E;AAgBD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAExD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAIpD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAMtC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIlD"}
|
package/dist/pkce.js
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
* Get the crypto object, checking for availability
|
|
7
7
|
*/
|
|
8
8
|
function getCrypto() {
|
|
9
|
-
if (typeof globalThis !==
|
|
9
|
+
if (typeof globalThis !== 'undefined' && globalThis.crypto) {
|
|
10
10
|
return globalThis.crypto;
|
|
11
11
|
}
|
|
12
|
-
if (typeof window !==
|
|
12
|
+
if (typeof window !== 'undefined' && window.crypto) {
|
|
13
13
|
return window.crypto;
|
|
14
14
|
}
|
|
15
|
-
throw new Error(
|
|
15
|
+
throw new Error('Web Crypto API is not available');
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Generate a cryptographically random code verifier
|
|
@@ -30,12 +30,12 @@ export function generateCodeVerifier() {
|
|
|
30
30
|
export async function generateCodeChallenge(verifier) {
|
|
31
31
|
const cryptoObj = getCrypto();
|
|
32
32
|
if (!cryptoObj.subtle) {
|
|
33
|
-
throw new Error(
|
|
34
|
-
|
|
33
|
+
throw new Error('crypto.subtle is not available. This usually means you are not using HTTPS. ' +
|
|
34
|
+
'The Web Crypto API requires a secure context (HTTPS or localhost).');
|
|
35
35
|
}
|
|
36
36
|
const encoder = new TextEncoder();
|
|
37
37
|
const data = encoder.encode(verifier);
|
|
38
|
-
const hash = await cryptoObj.subtle.digest(
|
|
38
|
+
const hash = await cryptoObj.subtle.digest('SHA-256', data);
|
|
39
39
|
return base64UrlEncode(new Uint8Array(hash));
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
@@ -43,16 +43,13 @@ export async function generateCodeChallenge(verifier) {
|
|
|
43
43
|
*/
|
|
44
44
|
function base64UrlEncode(buffer) {
|
|
45
45
|
const base64 = btoa(String.fromCharCode(...buffer));
|
|
46
|
-
return base64
|
|
47
|
-
.replace(/\+/g, "-")
|
|
48
|
-
.replace(/\//g, "_")
|
|
49
|
-
.replace(/=+$/, "");
|
|
46
|
+
return base64.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
|
|
50
47
|
}
|
|
51
48
|
/**
|
|
52
49
|
* Storage keys for PKCE state
|
|
53
50
|
*/
|
|
54
|
-
const VERIFIER_KEY =
|
|
55
|
-
const STATE_KEY =
|
|
51
|
+
const VERIFIER_KEY = 'avant_id_pkce_verifier';
|
|
52
|
+
const STATE_KEY = 'avant_id_oauth_state';
|
|
56
53
|
/**
|
|
57
54
|
* Store code verifier in sessionStorage for later retrieval
|
|
58
55
|
*/
|
package/dist/pkce.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,SAAS,SAAS;
|
|
1
|
+
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,SAAS,SAAS;IACd,IAAI,OAAO,UAAU,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACzD,OAAO,UAAU,CAAC,MAAM,CAAC;IAC7B,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,SAAS,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAgB;IACxD,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;IAE9B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,8EAA8E;YAC1E,oEAAoE,CAC3E,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5D,OAAO,eAAe,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAkB;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACpD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAEzC;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtD,cAAc,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACxC,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACrC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACrC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtD,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,WAAW,KAAK,KAAK,CAAC;AACjC,CAAC"}
|
package/dist/provider.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ReactNode } from
|
|
2
|
-
import type {
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { AuthContextState, AvantIdConfig } from './types';
|
|
3
3
|
interface AvantIdProviderProps {
|
|
4
4
|
children: ReactNode;
|
|
5
5
|
config: AvantIdConfig;
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAU5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAuB,MAAM,SAAS,CAAC;AAkBpF,UAAU,oBAAoB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,oBAAoB,2CA2RzE;AAED,wBAAgB,cAAc,IAAI,gBAAgB,CAIjD"}
|
package/dist/provider.js
CHANGED
|
@@ -1,27 +1,38 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext,
|
|
3
|
-
import
|
|
4
|
-
import
|
|
2
|
+
import { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import assert from './assert';
|
|
4
|
+
import { generateCodeChallenge, generateCodeVerifier, generateState, retrieveCodeVerifier, storeCodeVerifier, verifyState, } from './pkce';
|
|
5
5
|
const AuthContext = createContext(null);
|
|
6
|
+
function normalizeTokenResponse(raw) {
|
|
7
|
+
return {
|
|
8
|
+
access_token: raw.access_token ?? raw.accessToken,
|
|
9
|
+
refresh_token: raw.refresh_token ?? raw.refreshToken,
|
|
10
|
+
token_type: raw.token_type ?? raw.tokenType,
|
|
11
|
+
expires_in: raw.expires_in ?? raw.expiresIn,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
6
14
|
// Token storage keys
|
|
7
|
-
const ACCESS_TOKEN_KEY =
|
|
8
|
-
const REFRESH_TOKEN_KEY =
|
|
9
|
-
const TOKEN_EXPIRY_KEY =
|
|
15
|
+
const ACCESS_TOKEN_KEY = 'avant_id_access_token';
|
|
16
|
+
const REFRESH_TOKEN_KEY = 'avant_id_refresh_token';
|
|
17
|
+
const TOKEN_EXPIRY_KEY = 'avant_id_token_expiry';
|
|
10
18
|
export function AvantIdProvider({ children, config }) {
|
|
11
19
|
const [user, setUser] = useState(null);
|
|
12
20
|
const [isLoading, setIsLoading] = useState(true);
|
|
13
|
-
const [
|
|
21
|
+
const [, setAccessToken] = useState(null);
|
|
14
22
|
const [refreshToken, setRefreshToken] = useState(null);
|
|
15
|
-
const [
|
|
23
|
+
const [, setTokenExpiry] = useState(null);
|
|
24
|
+
const refreshPromiseRef = useRef(null);
|
|
25
|
+
const accessTokenRef = useRef(null);
|
|
26
|
+
const tokenExpiryRef = useRef(null);
|
|
16
27
|
// Normalize domain to ensure it has protocol
|
|
17
|
-
const baseUrl = config.domain.startsWith(
|
|
18
|
-
? config.domain
|
|
19
|
-
: `https://${config.domain}`;
|
|
28
|
+
const baseUrl = config.domain.startsWith('http') ? config.domain : `https://${config.domain}`;
|
|
20
29
|
// Default redirect URI
|
|
21
30
|
const redirectUri = config.redirectUri || `${window.location.origin}/callback`;
|
|
22
31
|
// Store tokens
|
|
23
32
|
const storeTokens = useCallback((tokens) => {
|
|
24
33
|
const expiry = Date.now() + tokens.expires_in * 1000;
|
|
34
|
+
accessTokenRef.current = tokens.access_token;
|
|
35
|
+
tokenExpiryRef.current = expiry;
|
|
25
36
|
setAccessToken(tokens.access_token);
|
|
26
37
|
setRefreshToken(tokens.refresh_token ?? null);
|
|
27
38
|
setTokenExpiry(expiry);
|
|
@@ -33,6 +44,8 @@ export function AvantIdProvider({ children, config }) {
|
|
|
33
44
|
}, [config.persistSession]);
|
|
34
45
|
// Clear tokens
|
|
35
46
|
const clearTokens = useCallback(() => {
|
|
47
|
+
accessTokenRef.current = null;
|
|
48
|
+
tokenExpiryRef.current = null;
|
|
36
49
|
setAccessToken(null);
|
|
37
50
|
setRefreshToken(null);
|
|
38
51
|
setTokenExpiry(null);
|
|
@@ -60,14 +73,15 @@ export function AvantIdProvider({ children, config }) {
|
|
|
60
73
|
const refreshAccessToken = useCallback(async (token) => {
|
|
61
74
|
try {
|
|
62
75
|
const response = await fetch(`${baseUrl}/auth/refresh`, {
|
|
63
|
-
method:
|
|
64
|
-
headers: {
|
|
76
|
+
method: 'POST',
|
|
77
|
+
headers: { 'Content-Type': 'application/json' },
|
|
65
78
|
body: JSON.stringify({ refreshToken: token }),
|
|
66
79
|
});
|
|
67
80
|
if (!response.ok) {
|
|
68
81
|
return null;
|
|
69
82
|
}
|
|
70
|
-
|
|
83
|
+
const raw = await response.json();
|
|
84
|
+
return normalizeTokenResponse(raw);
|
|
71
85
|
}
|
|
72
86
|
catch {
|
|
73
87
|
return null;
|
|
@@ -75,30 +89,42 @@ export function AvantIdProvider({ children, config }) {
|
|
|
75
89
|
}, [baseUrl]);
|
|
76
90
|
// Get access token, refreshing if needed
|
|
77
91
|
const getAccessToken = useCallback(async () => {
|
|
78
|
-
// Check if current token is still valid (with 30s buffer)
|
|
79
|
-
if (
|
|
80
|
-
return
|
|
92
|
+
// Check if current token is still valid (with 30s buffer) — read from refs to avoid stale closures
|
|
93
|
+
if (accessTokenRef.current && tokenExpiryRef.current && Date.now() < tokenExpiryRef.current - 30000) {
|
|
94
|
+
return accessTokenRef.current;
|
|
95
|
+
}
|
|
96
|
+
// Deduplicate concurrent refresh attempts
|
|
97
|
+
if (refreshPromiseRef.current) {
|
|
98
|
+
const tokens = await refreshPromiseRef.current;
|
|
99
|
+
return tokens ? tokens.access_token : null;
|
|
81
100
|
}
|
|
82
101
|
// Try to refresh
|
|
83
102
|
if (refreshToken) {
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
103
|
+
const promise = refreshAccessToken(refreshToken);
|
|
104
|
+
refreshPromiseRef.current = promise;
|
|
105
|
+
try {
|
|
106
|
+
const tokens = await promise;
|
|
107
|
+
if (tokens) {
|
|
108
|
+
storeTokens(tokens);
|
|
109
|
+
return tokens.access_token;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
finally {
|
|
113
|
+
refreshPromiseRef.current = null;
|
|
88
114
|
}
|
|
89
115
|
}
|
|
90
116
|
// No valid token
|
|
91
117
|
clearTokens();
|
|
92
118
|
return null;
|
|
93
|
-
}, [
|
|
119
|
+
}, [refreshToken, refreshAccessToken, storeTokens, clearTokens]);
|
|
94
120
|
// Exchange authorization code for tokens
|
|
95
121
|
const exchangeCode = useCallback(async (code, codeVerifier) => {
|
|
96
122
|
try {
|
|
97
123
|
const response = await fetch(`${baseUrl}/oauth/token`, {
|
|
98
|
-
method:
|
|
99
|
-
headers: {
|
|
124
|
+
method: 'POST',
|
|
125
|
+
headers: { 'Content-Type': 'application/json' },
|
|
100
126
|
body: JSON.stringify({
|
|
101
|
-
grant_type:
|
|
127
|
+
grant_type: 'authorization_code',
|
|
102
128
|
code,
|
|
103
129
|
code_verifier: codeVerifier,
|
|
104
130
|
client_id: config.clientId,
|
|
@@ -106,7 +132,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
106
132
|
}),
|
|
107
133
|
});
|
|
108
134
|
if (!response.ok) {
|
|
109
|
-
console.error(
|
|
135
|
+
console.error('Token exchange failed:', await response.text());
|
|
110
136
|
return false;
|
|
111
137
|
}
|
|
112
138
|
const tokens = await response.json();
|
|
@@ -119,7 +145,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
119
145
|
return true;
|
|
120
146
|
}
|
|
121
147
|
catch (err) {
|
|
122
|
-
console.error(
|
|
148
|
+
console.error('Token exchange error:', err);
|
|
123
149
|
return false;
|
|
124
150
|
}
|
|
125
151
|
}, [baseUrl, config.clientId, redirectUri, storeTokens, fetchUser]);
|
|
@@ -134,9 +160,9 @@ export function AvantIdProvider({ children, config }) {
|
|
|
134
160
|
const params = new URLSearchParams({
|
|
135
161
|
client_id: config.clientId,
|
|
136
162
|
redirect_uri: redirectUri,
|
|
137
|
-
response_type:
|
|
163
|
+
response_type: 'code',
|
|
138
164
|
code_challenge: challenge,
|
|
139
|
-
code_challenge_method:
|
|
165
|
+
code_challenge_method: 'S256',
|
|
140
166
|
state,
|
|
141
167
|
});
|
|
142
168
|
window.location.href = `${baseUrl}/oauth/authorize?${params.toString()}`;
|
|
@@ -147,8 +173,8 @@ export function AvantIdProvider({ children, config }) {
|
|
|
147
173
|
if (refreshToken) {
|
|
148
174
|
try {
|
|
149
175
|
await fetch(`${baseUrl}/auth/logout`, {
|
|
150
|
-
method:
|
|
151
|
-
headers: {
|
|
176
|
+
method: 'POST',
|
|
177
|
+
headers: { 'Content-Type': 'application/json' },
|
|
152
178
|
body: JSON.stringify({ refreshToken }),
|
|
153
179
|
});
|
|
154
180
|
}
|
|
@@ -162,24 +188,24 @@ export function AvantIdProvider({ children, config }) {
|
|
|
162
188
|
useEffect(() => {
|
|
163
189
|
const handleCallback = async () => {
|
|
164
190
|
const params = new URLSearchParams(window.location.search);
|
|
165
|
-
const code = params.get(
|
|
166
|
-
const state = params.get(
|
|
167
|
-
const error = params.get(
|
|
191
|
+
const code = params.get('code');
|
|
192
|
+
const state = params.get('state');
|
|
193
|
+
const error = params.get('error');
|
|
168
194
|
if (error) {
|
|
169
|
-
console.error(
|
|
195
|
+
console.error('OAuth error:', error, params.get('error_description'));
|
|
170
196
|
setIsLoading(false);
|
|
171
197
|
return;
|
|
172
198
|
}
|
|
173
199
|
if (code && state) {
|
|
174
200
|
// Verify state
|
|
175
|
-
assert(verifyState(state),
|
|
201
|
+
assert(verifyState(state), 'State mismatch - possible CSRF attack');
|
|
176
202
|
// Get stored code verifier
|
|
177
203
|
const codeVerifier = retrieveCodeVerifier();
|
|
178
|
-
assert(codeVerifier,
|
|
204
|
+
assert(codeVerifier, 'No code verifier found');
|
|
179
205
|
// Exchange code for tokens
|
|
180
206
|
await exchangeCode(code, codeVerifier);
|
|
181
207
|
// Clean up URL
|
|
182
|
-
window.history.replaceState({},
|
|
208
|
+
window.history.replaceState({}, '', window.location.pathname);
|
|
183
209
|
setIsLoading(false);
|
|
184
210
|
return;
|
|
185
211
|
}
|
|
@@ -187,7 +213,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
187
213
|
if (config.persistSession) {
|
|
188
214
|
const storedRefresh = localStorage.getItem(REFRESH_TOKEN_KEY);
|
|
189
215
|
// Check for valid refresh token (not empty, not the string "undefined" or "null")
|
|
190
|
-
if (storedRefresh && storedRefresh !==
|
|
216
|
+
if (storedRefresh && storedRefresh !== 'undefined' && storedRefresh !== 'null') {
|
|
191
217
|
setRefreshToken(storedRefresh);
|
|
192
218
|
const tokens = await refreshAccessToken(storedRefresh);
|
|
193
219
|
if (tokens) {
|
|
@@ -205,7 +231,14 @@ export function AvantIdProvider({ children, config }) {
|
|
|
205
231
|
setIsLoading(false);
|
|
206
232
|
};
|
|
207
233
|
handleCallback();
|
|
208
|
-
}, [
|
|
234
|
+
}, [
|
|
235
|
+
config.persistSession,
|
|
236
|
+
exchangeCode,
|
|
237
|
+
refreshAccessToken,
|
|
238
|
+
storeTokens,
|
|
239
|
+
fetchUser,
|
|
240
|
+
clearTokens,
|
|
241
|
+
]);
|
|
209
242
|
const value = {
|
|
210
243
|
user,
|
|
211
244
|
isLoading,
|
|
@@ -219,7 +252,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
219
252
|
}
|
|
220
253
|
export function useAuthContext() {
|
|
221
254
|
const context = useContext(AuthContext);
|
|
222
|
-
assert(context,
|
|
255
|
+
assert(context, 'useAuth must be used within an AvantIdProvider');
|
|
223
256
|
return context;
|
|
224
257
|
}
|
|
225
258
|
//# sourceMappingURL=provider.js.map
|
package/dist/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,+FAA+F;IAC/F,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,gDAAgD;IAChD,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,eAAe,EAAE,OAAO,CAAC;IACzB,sCAAsC;IACtC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,0DAA0D;IAC1D,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,0DAA0D;IAC1D,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAC/C,MAAM,EAAE,aAAa,CAAC;CACzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@avantmedia/id-react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"react": "^18.0.0 || ^19.0.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@types/react": "^
|
|
31
|
-
"react": "^
|
|
32
|
-
"typescript": "^5.
|
|
30
|
+
"@types/react": "^19.2.13",
|
|
31
|
+
"react": "^19.2.4",
|
|
32
|
+
"typescript": "^5.9.3"
|
|
33
33
|
}
|
|
34
34
|
}
|