@atzentis/auth-react 0.0.4 → 0.0.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/dist/index.d.ts +16 -10
- package/dist/index.js +37 -26
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,34 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as react from 'react';
|
|
2
3
|
import * as _atzentis_auth_sdk from '@atzentis/auth-sdk';
|
|
3
|
-
import {
|
|
4
|
+
import { AuthClient, User, AuthConfig, LoginCredentials, SignupData } from '@atzentis/auth-sdk';
|
|
4
5
|
|
|
6
|
+
interface AuthContextValue {
|
|
7
|
+
client: AuthClient;
|
|
8
|
+
user: User | null;
|
|
9
|
+
isAuthenticated: boolean;
|
|
10
|
+
isLoading: boolean;
|
|
11
|
+
setUser: (user: User | null) => void;
|
|
12
|
+
}
|
|
13
|
+
declare const AuthContext: react.Context<AuthContextValue | null>;
|
|
5
14
|
interface AuthProviderProps {
|
|
6
|
-
|
|
15
|
+
config: AuthConfig;
|
|
7
16
|
children: React.ReactNode;
|
|
8
17
|
}
|
|
9
|
-
declare function AuthProvider({
|
|
18
|
+
declare function AuthProvider({ config, children }: AuthProviderProps): react_jsx_runtime.JSX.Element;
|
|
10
19
|
|
|
11
20
|
declare function useAuth(): {
|
|
12
21
|
user: _atzentis_auth_sdk.User | null;
|
|
13
|
-
session: _atzentis_auth_sdk.Session | null;
|
|
14
22
|
isAuthenticated: boolean;
|
|
15
23
|
isLoading: boolean;
|
|
16
|
-
login: (
|
|
17
|
-
|
|
18
|
-
logout: () => Promise<void>;
|
|
19
|
-
refreshSession: () => Promise<_atzentis_auth_sdk.Session>;
|
|
24
|
+
login: (credentials: LoginCredentials) => Promise<_atzentis_auth_sdk.LoginResponse>;
|
|
25
|
+
signup: (data: SignupData) => Promise<_atzentis_auth_sdk.SignupResponse>;
|
|
20
26
|
};
|
|
21
27
|
|
|
22
28
|
declare function useSession(): {
|
|
23
|
-
|
|
29
|
+
user: _atzentis_auth_sdk.User | null;
|
|
24
30
|
isAuthenticated: boolean;
|
|
25
31
|
isLoading: boolean;
|
|
26
32
|
};
|
|
27
33
|
|
|
28
|
-
export { AuthProvider, useAuth, useSession };
|
|
34
|
+
export { AuthContext, type AuthContextValue, AuthProvider, useAuth, useSession };
|
package/dist/index.js
CHANGED
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
import { AuthClient } from '@atzentis/auth-sdk';
|
|
2
|
-
import { createContext, useState,
|
|
2
|
+
import { createContext, useState, useMemo, useContext, useCallback } from 'react';
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
|
|
5
5
|
var AuthContext = createContext(null);
|
|
6
|
-
function AuthProvider({
|
|
7
|
-
const [client] = useState(() => new AuthClient(
|
|
8
|
-
const [
|
|
9
|
-
const [isLoading
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
isLoading
|
|
21
|
-
};
|
|
6
|
+
function AuthProvider({ config, children }) {
|
|
7
|
+
const [client] = useState(() => new AuthClient(config));
|
|
8
|
+
const [user, setUser] = useState(null);
|
|
9
|
+
const [isLoading] = useState(false);
|
|
10
|
+
const value = useMemo(
|
|
11
|
+
() => ({
|
|
12
|
+
client,
|
|
13
|
+
user,
|
|
14
|
+
isAuthenticated: user !== null,
|
|
15
|
+
isLoading,
|
|
16
|
+
setUser
|
|
17
|
+
}),
|
|
18
|
+
[client, user, isLoading]
|
|
19
|
+
);
|
|
22
20
|
return /* @__PURE__ */ jsx(AuthContext.Provider, { value, children });
|
|
23
21
|
}
|
|
24
22
|
function useAuth() {
|
|
@@ -26,16 +24,29 @@ function useAuth() {
|
|
|
26
24
|
if (!context) {
|
|
27
25
|
throw new Error("useAuth must be used within AuthProvider");
|
|
28
26
|
}
|
|
29
|
-
const { client,
|
|
27
|
+
const { client, user, isAuthenticated, isLoading, setUser } = context;
|
|
28
|
+
const login = useCallback(
|
|
29
|
+
async (credentials) => {
|
|
30
|
+
const response = await client.login(credentials);
|
|
31
|
+
setUser(response.user);
|
|
32
|
+
return response;
|
|
33
|
+
},
|
|
34
|
+
[client, setUser]
|
|
35
|
+
);
|
|
36
|
+
const signup = useCallback(
|
|
37
|
+
async (data) => {
|
|
38
|
+
const response = await client.signup(data);
|
|
39
|
+
setUser(response.user);
|
|
40
|
+
return response;
|
|
41
|
+
},
|
|
42
|
+
[client, setUser]
|
|
43
|
+
);
|
|
30
44
|
return {
|
|
31
|
-
user
|
|
32
|
-
session,
|
|
45
|
+
user,
|
|
33
46
|
isAuthenticated,
|
|
34
47
|
isLoading,
|
|
35
|
-
login
|
|
36
|
-
|
|
37
|
-
logout: () => client.logout(),
|
|
38
|
-
refreshSession: () => client.refreshSession()
|
|
48
|
+
login,
|
|
49
|
+
signup
|
|
39
50
|
};
|
|
40
51
|
}
|
|
41
52
|
function useSession() {
|
|
@@ -44,12 +55,12 @@ function useSession() {
|
|
|
44
55
|
throw new Error("useSession must be used within AuthProvider");
|
|
45
56
|
}
|
|
46
57
|
return {
|
|
47
|
-
|
|
58
|
+
user: context.user,
|
|
48
59
|
isAuthenticated: context.isAuthenticated,
|
|
49
60
|
isLoading: context.isLoading
|
|
50
61
|
};
|
|
51
62
|
}
|
|
52
63
|
|
|
53
|
-
export { AuthProvider, useAuth, useSession };
|
|
64
|
+
export { AuthContext, AuthProvider, useAuth, useSession };
|
|
54
65
|
//# sourceMappingURL=index.js.map
|
|
55
66
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/provider.tsx","../src/use-auth.ts","../src/use-session.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["../src/provider.tsx","../src/use-auth.ts","../src/use-session.ts"],"names":["useContext"],"mappings":";;;;AAYO,IAAM,WAAA,GAAc,cAAuC,IAAI;AAO/D,SAAS,YAAA,CAAa,EAAE,MAAA,EAAQ,QAAA,EAAS,EAAsB;AACpE,EAAA,MAAM,CAAC,MAAM,CAAA,GAAI,QAAA,CAAS,MAAM,IAAI,UAAA,CAAW,MAAM,CAAC,CAAA;AACtD,EAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,SAAsB,IAAI,CAAA;AAClD,EAAA,MAAM,CAAC,SAAS,CAAA,GAAI,QAAA,CAAS,KAAK,CAAA;AAElC,EAAA,MAAM,KAAA,GAA0B,OAAA;AAAA,IAC9B,OAAO;AAAA,MACL,MAAA;AAAA,MACA,IAAA;AAAA,MACA,iBAAiB,IAAA,KAAS,IAAA;AAAA,MAC1B,SAAA;AAAA,MACA;AAAA,KACF,CAAA;AAAA,IACA,CAAC,MAAA,EAAQ,IAAA,EAAM,SAAS;AAAA,GAC1B;AAEA,EAAA,uBAAO,GAAA,CAAC,WAAA,CAAY,QAAA,EAAZ,EAAqB,OAAe,QAAA,EAAS,CAAA;AACvD;AChCO,SAAS,OAAA,GAAU;AACxB,EAAA,MAAM,OAAA,GAAU,WAAW,WAAW,CAAA;AAEtC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,MAAM,0CAA0C,CAAA;AAAA,EAC5D;AAEA,EAAA,MAAM,EAAE,MAAA,EAAQ,IAAA,EAAM,eAAA,EAAiB,SAAA,EAAW,SAAQ,GAAI,OAAA;AAE9D,EAAA,MAAM,KAAA,GAAQ,WAAA;AAAA,IACZ,OAAO,WAAA,KAAkC;AACvC,MAAA,MAAM,QAAA,GAAW,MAAM,MAAA,CAAO,KAAA,CAAM,WAAW,CAAA;AAC/C,MAAA,OAAA,CAAQ,SAAS,IAAI,CAAA;AACrB,MAAA,OAAO,QAAA;AAAA,IACT,CAAA;AAAA,IACA,CAAC,QAAQ,OAAO;AAAA,GAClB;AAEA,EAAA,MAAM,MAAA,GAAS,WAAA;AAAA,IACb,OAAO,IAAA,KAAqB;AAC1B,MAAA,MAAM,QAAA,GAAW,MAAM,MAAA,CAAO,MAAA,CAAO,IAAI,CAAA;AACzC,MAAA,OAAA,CAAQ,SAAS,IAAI,CAAA;AACrB,MAAA,OAAO,QAAA;AAAA,IACT,CAAA;AAAA,IACA,CAAC,QAAQ,OAAO;AAAA,GAClB;AAEA,EAAA,OAAO;AAAA,IACL,IAAA;AAAA,IACA,eAAA;AAAA,IACA,SAAA;AAAA,IACA,KAAA;AAAA,IACA;AAAA,GACF;AACF;ACnCO,SAAS,UAAA,GAAa;AAC3B,EAAA,MAAM,OAAA,GAAUA,WAAW,WAAW,CAAA;AAEtC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,EAC/D;AAEA,EAAA,OAAO;AAAA,IACL,MAAM,OAAA,CAAQ,IAAA;AAAA,IACd,iBAAiB,OAAA,CAAQ,eAAA;AAAA,IACzB,WAAW,OAAA,CAAQ;AAAA,GACrB;AACF","file":"index.js","sourcesContent":["import type { AuthConfig, User } from \"@atzentis/auth-sdk\";\nimport { AuthClient } from \"@atzentis/auth-sdk\";\nimport { createContext, useMemo, useState } from \"react\";\n\nexport interface AuthContextValue {\n client: AuthClient;\n user: User | null;\n isAuthenticated: boolean;\n isLoading: boolean;\n setUser: (user: User | null) => void;\n}\n\nexport const AuthContext = createContext<AuthContextValue | null>(null);\n\ninterface AuthProviderProps {\n config: AuthConfig;\n children: React.ReactNode;\n}\n\nexport function AuthProvider({ config, children }: AuthProviderProps) {\n const [client] = useState(() => new AuthClient(config));\n const [user, setUser] = useState<User | null>(null);\n const [isLoading] = useState(false);\n\n const value: AuthContextValue = useMemo(\n () => ({\n client,\n user,\n isAuthenticated: user !== null,\n isLoading,\n setUser,\n }),\n [client, user, isLoading],\n );\n\n return <AuthContext.Provider value={value}>{children}</AuthContext.Provider>;\n}\n","import type { LoginCredentials, SignupData } from \"@atzentis/auth-sdk\";\nimport { useCallback, useContext } from \"react\";\nimport { AuthContext } from \"./provider\";\n\nexport function useAuth() {\n const context = useContext(AuthContext);\n\n if (!context) {\n throw new Error(\"useAuth must be used within AuthProvider\");\n }\n\n const { client, user, isAuthenticated, isLoading, setUser } = context;\n\n const login = useCallback(\n async (credentials: LoginCredentials) => {\n const response = await client.login(credentials);\n setUser(response.user);\n return response;\n },\n [client, setUser],\n );\n\n const signup = useCallback(\n async (data: SignupData) => {\n const response = await client.signup(data);\n setUser(response.user);\n return response;\n },\n [client, setUser],\n );\n\n return {\n user,\n isAuthenticated,\n isLoading,\n login,\n signup,\n };\n}\n","import { useContext } from \"react\";\nimport { AuthContext } from \"./provider\";\n\nexport function useSession() {\n const context = useContext(AuthContext);\n\n if (!context) {\n throw new Error(\"useSession must be used within AuthProvider\");\n }\n\n return {\n user: context.user,\n isAuthenticated: context.isAuthenticated,\n isLoading: context.isLoading,\n };\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atzentis/auth-react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "Atzentis Auth React — hooks and components for auth.atzentis.com",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"atzentis",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"LICENSE"
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@atzentis/auth-sdk": "0.0.
|
|
37
|
+
"@atzentis/auth-sdk": "0.0.5"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"react": ">=18.0.0",
|