@0xchain/auth 1.1.0-beta.62 → 1.1.0-beta.63
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/index.js +4 -32
- package/dist/loginApi/index.d.ts.map +1 -1
- package/dist/loginApi.js +1 -2
- package/dist/session.d.ts +2 -8
- package/dist/session.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import request from "@0xchain/request";
|
|
2
2
|
import { default as default2 } from "./loginApi.js";
|
|
3
|
-
import { removeAllToken } from "@0xchain/token";
|
|
4
|
-
import { default as default3 } from "@0xchain/token";
|
|
3
|
+
import { decodeJwtPayload, isJwtExpired, removeAllToken } from "@0xchain/token";
|
|
4
|
+
import { default as default3, decodeJwtPayload as decodeJwtPayload2, isJwtExpired as isJwtExpired2 } from "@0xchain/token";
|
|
5
5
|
import cookies from "js-cookie";
|
|
6
6
|
const ACCESS_TOKEN_COOKIE_KEYS = ["access_token", "id_token"];
|
|
7
7
|
const REFRESH_TOKEN_COOKIE_KEYS = ["refresh_token"];
|
|
@@ -11,34 +11,6 @@ const AUTH_COOKIE_KEYS = [
|
|
|
11
11
|
];
|
|
12
12
|
const AUTH_SESSION_KEY = "__AUTH_SESSION__";
|
|
13
13
|
const SESSION_STORAGE_KEY = "auth:session";
|
|
14
|
-
function base64UrlDecode(input) {
|
|
15
|
-
const normalized = input.replace(/-/g, "+").replace(/_/g, "/");
|
|
16
|
-
const padLength = (4 - normalized.length % 4) % 4;
|
|
17
|
-
const padded = normalized + "=".repeat(padLength);
|
|
18
|
-
if (typeof window !== "undefined" && typeof window.atob === "function") {
|
|
19
|
-
const binary = window.atob(padded);
|
|
20
|
-
const bytes = Uint8Array.from(binary, (char) => char.charCodeAt(0));
|
|
21
|
-
return new TextDecoder().decode(bytes);
|
|
22
|
-
}
|
|
23
|
-
return Buffer.from(padded, "base64").toString("utf8");
|
|
24
|
-
}
|
|
25
|
-
function decodeJwtPayload(token) {
|
|
26
|
-
if (!token) return null;
|
|
27
|
-
const parts = token.split(".");
|
|
28
|
-
if (parts.length < 2) return null;
|
|
29
|
-
try {
|
|
30
|
-
const payloadJson = base64UrlDecode(parts[1]);
|
|
31
|
-
return JSON.parse(payloadJson);
|
|
32
|
-
} catch {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
function isJwtExpired(payload, options) {
|
|
37
|
-
if (!payload?.exp) return false;
|
|
38
|
-
const skew = options?.skewSeconds ?? 15;
|
|
39
|
-
const now = Math.floor(Date.now() / 1e3);
|
|
40
|
-
return payload.exp <= now + skew;
|
|
41
|
-
}
|
|
42
14
|
function pickToken(getter, keys) {
|
|
43
15
|
for (const key of keys) {
|
|
44
16
|
const value = getter(key);
|
|
@@ -155,13 +127,13 @@ export {
|
|
|
155
127
|
createSessionFromCookieGetter,
|
|
156
128
|
createSessionFromCookieHeader,
|
|
157
129
|
createSessionFromTokens,
|
|
158
|
-
decodeJwtPayload,
|
|
130
|
+
decodeJwtPayload2 as decodeJwtPayload,
|
|
159
131
|
fetchClientSession,
|
|
160
132
|
fetchUserProfile,
|
|
161
133
|
getClientSession,
|
|
162
134
|
getRuntimeLoginState,
|
|
163
135
|
getRuntimeSession,
|
|
164
|
-
isJwtExpired,
|
|
136
|
+
isJwtExpired2 as isJwtExpired,
|
|
165
137
|
logout,
|
|
166
138
|
setRuntimeSession
|
|
167
139
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/loginApi/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAiC,MAAM,QAAQ,CAAA;AAGjE,QAAA,MAAM,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/loginApi/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAiC,MAAM,QAAQ,CAAA;AAGjE,QAAA,MAAM,QAAQ,EAAE,SA0Bf,CAAA;AACD,eAAe,QAAQ,CAAA"}
|
package/dist/loginApi.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import request from "@0xchain/request";
|
|
2
2
|
import cookies from "js-cookie";
|
|
3
|
-
import { getToken
|
|
3
|
+
import { getToken } from "@0xchain/token";
|
|
4
4
|
const loginApi = {
|
|
5
5
|
login: (data) => {
|
|
6
|
-
removeAllToken();
|
|
7
6
|
return request.post(`/api/login/email`, data, {
|
|
8
7
|
baseURL: process.env.NEXT_PUBLIC_AUTH_URL
|
|
9
8
|
});
|
package/dist/session.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { decodeJwtPayload, isJwtExpired } from '@0xchain/token';
|
|
2
|
+
export { decodeJwtPayload, isJwtExpired };
|
|
1
3
|
export declare const ACCESS_TOKEN_COOKIE_KEYS: readonly ["access_token", "id_token"];
|
|
2
4
|
export declare const REFRESH_TOKEN_COOKIE_KEYS: readonly ["refresh_token"];
|
|
3
5
|
export declare const AUTH_COOKIE_KEYS: readonly ["access_token", "id_token", "refresh_token"];
|
|
@@ -8,13 +10,6 @@ export type AuthSession = {
|
|
|
8
10
|
accessTokenExpired: boolean;
|
|
9
11
|
claims: Record<string, unknown> | null;
|
|
10
12
|
};
|
|
11
|
-
type JwtPayload = Record<string, unknown> & {
|
|
12
|
-
exp?: number;
|
|
13
|
-
};
|
|
14
|
-
export declare function decodeJwtPayload(token?: string | null): JwtPayload | null;
|
|
15
|
-
export declare function isJwtExpired(payload: JwtPayload | null, options?: {
|
|
16
|
-
skewSeconds?: number;
|
|
17
|
-
}): boolean;
|
|
18
13
|
export declare function createSessionFromTokens({ accessToken, refreshToken, }: {
|
|
19
14
|
accessToken?: string | null;
|
|
20
15
|
refreshToken?: string | null;
|
|
@@ -26,5 +21,4 @@ export declare function fetchClientSession(signal?: AbortSignal, sessionUrl?: st
|
|
|
26
21
|
export declare function setRuntimeSession(session: AuthSession): void;
|
|
27
22
|
export declare function getRuntimeSession(): AuthSession | null;
|
|
28
23
|
export declare function getRuntimeLoginState(): boolean | null;
|
|
29
|
-
export {};
|
|
30
24
|
//# sourceMappingURL=session.d.ts.map
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC;AAE1C,eAAO,MAAM,wBAAwB,uCAAwC,CAAC;AAC9E,eAAO,MAAM,yBAAyB,4BAA6B,CAAC;AACpE,eAAO,MAAM,gBAAgB,wDAGnB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACxC,CAAC;AAoBF,wBAAgB,uBAAuB,CAAC,EACtC,WAAW,EACX,YAAY,GACb,EAAE;IACD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,GAAG,WAAW,CAYd;AAED,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GACrC,WAAW,CAIb;AAED,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW,CAW/E;AAED,wBAAgB,gBAAgB,IAAI,WAAW,CAE9C;AAED,wBAAsB,kBAAkB,CACtC,MAAM,CAAC,EAAE,WAAW,EACpB,UAAU,SAAsB,GAC/B,OAAO,CAAC,WAAW,CAAC,CAWtB;AAOD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAQ5D;AAED,wBAAgB,iBAAiB,IAAI,WAAW,GAAG,IAAI,CAUtD;AAED,wBAAgB,oBAAoB,IAAI,OAAO,GAAG,IAAI,CAIrD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xchain/auth",
|
|
3
|
-
"version": "1.1.0-beta.
|
|
3
|
+
"version": "1.1.0-beta.63",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
"js-cookie": "3.0.5"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@0xchain/
|
|
34
|
-
"@0xchain/
|
|
33
|
+
"@0xchain/token": "1.1.0-beta.63",
|
|
34
|
+
"@0xchain/request": "1.1.0-beta.63"
|
|
35
35
|
},
|
|
36
36
|
"nx": {
|
|
37
37
|
"tags": [
|