gavaengine 0.1.2 → 2.0.0
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/DashboardSplashTrigger-CRpueuUi.d.ts +154 -0
- package/dist/auth/index.d.ts +42 -0
- package/dist/auth/index.js +12 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/{chunk-D5PTZWTT.js → chunk-4LM22T36.js} +2 -2
- package/dist/chunk-MC3FBYWV.js +534 -0
- package/dist/chunk-MC3FBYWV.js.map +1 -0
- package/dist/chunk-QO42DDRU.js +113 -0
- package/dist/chunk-QO42DDRU.js.map +1 -0
- package/dist/{chunk-3C3AAR3S.js → chunk-YSVQQBBU.js} +474 -50
- package/dist/chunk-YSVQQBBU.js.map +1 -0
- package/dist/components/index.d.ts +64 -132
- package/dist/components/index.js +22 -2
- package/dist/content/index.d.ts +45 -0
- package/dist/content/index.js +38 -0
- package/dist/content/index.js.map +1 -0
- package/dist/handlers/index.d.ts +60 -3
- package/dist/handlers/index.js +477 -126
- package/dist/handlers/index.js.map +1 -1
- package/dist/i18n/index.d.ts +114 -0
- package/dist/i18n/index.js +249 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/{index-B1ZYC5TP.d.ts → index-CCsSC4nF.d.ts} +119 -2
- package/dist/index.d.ts +45 -7
- package/dist/index.js +226 -39
- package/dist/index.js.map +1 -1
- package/dist/providers/index.d.ts +3 -2
- package/dist/providers/index.js +2 -2
- package/dist/types-X07o_zKf.d.ts +198 -0
- package/dist/types-d8-k_4dN.d.ts +19 -0
- package/package.json +16 -1
- package/dist/chunk-3C3AAR3S.js.map +0 -1
- package/dist/chunk-BVLJYZ6T.js +0 -252
- package/dist/chunk-BVLJYZ6T.js.map +0 -1
- package/dist/types-BZgSeTU8.d.ts +0 -101
- /package/dist/{chunk-D5PTZWTT.js.map → chunk-4LM22T36.js.map} +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/auth/next-auth-adapter.ts
|
|
4
|
+
function createNextAuthAdapter({
|
|
5
|
+
auth,
|
|
6
|
+
signIn,
|
|
7
|
+
signOut
|
|
8
|
+
}) {
|
|
9
|
+
return {
|
|
10
|
+
async getSession() {
|
|
11
|
+
const session = await auth();
|
|
12
|
+
if (!session?.user) return null;
|
|
13
|
+
return {
|
|
14
|
+
user: {
|
|
15
|
+
id: session.user.id,
|
|
16
|
+
name: session.user.name,
|
|
17
|
+
email: session.user.email,
|
|
18
|
+
role: session.user.role
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
},
|
|
22
|
+
async getCurrentUser() {
|
|
23
|
+
const session = await this.getSession();
|
|
24
|
+
return session?.user ?? null;
|
|
25
|
+
},
|
|
26
|
+
async signIn(credentials) {
|
|
27
|
+
if (!signIn) throw new Error("signIn not configured");
|
|
28
|
+
try {
|
|
29
|
+
await signIn("credentials", credentials);
|
|
30
|
+
} catch (error) {
|
|
31
|
+
return { error: error.message ?? "Authentication failed" };
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
async signOut() {
|
|
35
|
+
if (!signOut) throw new Error("signOut not configured");
|
|
36
|
+
await signOut();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// src/auth/context.tsx
|
|
42
|
+
import {
|
|
43
|
+
createContext,
|
|
44
|
+
useContext,
|
|
45
|
+
useState,
|
|
46
|
+
useEffect,
|
|
47
|
+
useCallback
|
|
48
|
+
} from "react";
|
|
49
|
+
import { jsx } from "react/jsx-runtime";
|
|
50
|
+
var AuthContext = createContext({
|
|
51
|
+
session: null,
|
|
52
|
+
user: null,
|
|
53
|
+
status: "loading"
|
|
54
|
+
});
|
|
55
|
+
function useGavaAuth() {
|
|
56
|
+
return useContext(AuthContext);
|
|
57
|
+
}
|
|
58
|
+
function AuthProvider({
|
|
59
|
+
children,
|
|
60
|
+
getSession,
|
|
61
|
+
signIn,
|
|
62
|
+
signOut
|
|
63
|
+
}) {
|
|
64
|
+
const [session, setSession] = useState(null);
|
|
65
|
+
const [status, setStatus] = useState(
|
|
66
|
+
"loading"
|
|
67
|
+
);
|
|
68
|
+
useEffect(() => {
|
|
69
|
+
getSession().then((s) => {
|
|
70
|
+
setSession(s);
|
|
71
|
+
setStatus(s ? "authenticated" : "unauthenticated");
|
|
72
|
+
});
|
|
73
|
+
}, [getSession]);
|
|
74
|
+
const handleSignIn = useCallback(
|
|
75
|
+
async (credentials) => {
|
|
76
|
+
if (!signIn) return;
|
|
77
|
+
const result = await signIn(credentials);
|
|
78
|
+
if (!result?.error) {
|
|
79
|
+
const s = await getSession();
|
|
80
|
+
setSession(s);
|
|
81
|
+
setStatus(s ? "authenticated" : "unauthenticated");
|
|
82
|
+
}
|
|
83
|
+
return result;
|
|
84
|
+
},
|
|
85
|
+
[signIn, getSession]
|
|
86
|
+
);
|
|
87
|
+
const handleSignOut = useCallback(async () => {
|
|
88
|
+
if (!signOut) return;
|
|
89
|
+
await signOut();
|
|
90
|
+
setSession(null);
|
|
91
|
+
setStatus("unauthenticated");
|
|
92
|
+
}, [signOut]);
|
|
93
|
+
return /* @__PURE__ */ jsx(
|
|
94
|
+
AuthContext.Provider,
|
|
95
|
+
{
|
|
96
|
+
value: {
|
|
97
|
+
session,
|
|
98
|
+
user: session?.user ?? null,
|
|
99
|
+
status,
|
|
100
|
+
signIn: signIn ? handleSignIn : void 0,
|
|
101
|
+
signOut: signOut ? handleSignOut : void 0
|
|
102
|
+
},
|
|
103
|
+
children
|
|
104
|
+
}
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export {
|
|
109
|
+
createNextAuthAdapter,
|
|
110
|
+
useGavaAuth,
|
|
111
|
+
AuthProvider
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=chunk-QO42DDRU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/auth/next-auth-adapter.ts","../src/auth/context.tsx"],"sourcesContent":["import type { GEAuthAdapter, GESession } from \"./types.js\";\n\ninterface NextAuthFunctions {\n auth: () => Promise<any>;\n signIn?: (provider: string, credentials: Record<string, unknown>) => Promise<any>;\n signOut?: () => Promise<void>;\n}\n\nexport function createNextAuthAdapter({\n auth,\n signIn,\n signOut,\n}: NextAuthFunctions): GEAuthAdapter {\n return {\n async getSession(): Promise<GESession | null> {\n const session = await auth();\n if (!session?.user) return null;\n return {\n user: {\n id: session.user.id,\n name: session.user.name,\n email: session.user.email,\n role: session.user.role,\n },\n };\n },\n\n async getCurrentUser() {\n const session = await this.getSession();\n return session?.user ?? null;\n },\n\n async signIn(credentials: Record<string, unknown>) {\n if (!signIn) throw new Error(\"signIn not configured\");\n try {\n await signIn(\"credentials\", credentials);\n } catch (error: any) {\n return { error: error.message ?? \"Authentication failed\" };\n }\n },\n\n async signOut() {\n if (!signOut) throw new Error(\"signOut not configured\");\n await signOut();\n },\n };\n}\n","\"use client\";\n\nimport {\n createContext,\n useContext,\n useState,\n useEffect,\n useCallback,\n type ReactNode,\n} from \"react\";\n\ninterface GEAuthUser {\n id: string;\n name?: string | null;\n email?: string | null;\n role: string;\n}\n\ninterface GEAuthSession {\n user: GEAuthUser;\n}\n\ninterface GEAuthContextValue {\n session: GEAuthSession | null;\n user: GEAuthUser | null;\n status: \"loading\" | \"authenticated\" | \"unauthenticated\";\n signIn?: (credentials: Record<string, unknown>) => Promise<{ error?: string } | void>;\n signOut?: () => Promise<void>;\n}\n\nconst AuthContext = createContext<GEAuthContextValue>({\n session: null,\n user: null,\n status: \"loading\",\n});\n\nexport function useGavaAuth(): GEAuthContextValue {\n return useContext(AuthContext);\n}\n\ninterface AuthProviderProps {\n children: ReactNode;\n getSession: () => Promise<GEAuthSession | null>;\n signIn?: (credentials: Record<string, unknown>) => Promise<{ error?: string } | void>;\n signOut?: () => Promise<void>;\n}\n\nexport function AuthProvider({\n children,\n getSession,\n signIn,\n signOut,\n}: AuthProviderProps) {\n const [session, setSession] = useState<GEAuthSession | null>(null);\n const [status, setStatus] = useState<\"loading\" | \"authenticated\" | \"unauthenticated\">(\n \"loading\"\n );\n\n useEffect(() => {\n getSession().then((s) => {\n setSession(s);\n setStatus(s ? \"authenticated\" : \"unauthenticated\");\n });\n }, [getSession]);\n\n const handleSignIn = useCallback(\n async (credentials: Record<string, unknown>) => {\n if (!signIn) return;\n const result = await signIn(credentials);\n if (!result?.error) {\n const s = await getSession();\n setSession(s);\n setStatus(s ? \"authenticated\" : \"unauthenticated\");\n }\n return result;\n },\n [signIn, getSession]\n );\n\n const handleSignOut = useCallback(async () => {\n if (!signOut) return;\n await signOut();\n setSession(null);\n setStatus(\"unauthenticated\");\n }, [signOut]);\n\n return (\n <AuthContext.Provider\n value={{\n session,\n user: session?.user ?? null,\n status,\n signIn: signIn ? handleSignIn : undefined,\n signOut: signOut ? handleSignOut : undefined,\n }}\n >\n {children}\n </AuthContext.Provider>\n );\n}\n"],"mappings":";;;AAQO,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF,GAAqC;AACnC,SAAO;AAAA,IACL,MAAM,aAAwC;AAC5C,YAAM,UAAU,MAAM,KAAK;AAC3B,UAAI,CAAC,SAAS,KAAM,QAAO;AAC3B,aAAO;AAAA,QACL,MAAM;AAAA,UACJ,IAAI,QAAQ,KAAK;AAAA,UACjB,MAAM,QAAQ,KAAK;AAAA,UACnB,OAAO,QAAQ,KAAK;AAAA,UACpB,MAAM,QAAQ,KAAK;AAAA,QACrB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,MAAM,iBAAiB;AACrB,YAAM,UAAU,MAAM,KAAK,WAAW;AACtC,aAAO,SAAS,QAAQ;AAAA,IAC1B;AAAA,IAEA,MAAM,OAAO,aAAsC;AACjD,UAAI,CAAC,OAAQ,OAAM,IAAI,MAAM,uBAAuB;AACpD,UAAI;AACF,cAAM,OAAO,eAAe,WAAW;AAAA,MACzC,SAAS,OAAY;AACnB,eAAO,EAAE,OAAO,MAAM,WAAW,wBAAwB;AAAA,MAC3D;AAAA,IACF;AAAA,IAEA,MAAM,UAAU;AACd,UAAI,CAAC,QAAS,OAAM,IAAI,MAAM,wBAAwB;AACtD,YAAM,QAAQ;AAAA,IAChB;AAAA,EACF;AACF;;;AC5CA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AA8EH;AAzDJ,IAAM,cAAc,cAAkC;AAAA,EACpD,SAAS;AAAA,EACT,MAAM;AAAA,EACN,QAAQ;AACV,CAAC;AAEM,SAAS,cAAkC;AAChD,SAAO,WAAW,WAAW;AAC/B;AASO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAsB;AACpB,QAAM,CAAC,SAAS,UAAU,IAAI,SAA+B,IAAI;AACjE,QAAM,CAAC,QAAQ,SAAS,IAAI;AAAA,IAC1B;AAAA,EACF;AAEA,YAAU,MAAM;AACd,eAAW,EAAE,KAAK,CAAC,MAAM;AACvB,iBAAW,CAAC;AACZ,gBAAU,IAAI,kBAAkB,iBAAiB;AAAA,IACnD,CAAC;AAAA,EACH,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,eAAe;AAAA,IACnB,OAAO,gBAAyC;AAC9C,UAAI,CAAC,OAAQ;AACb,YAAM,SAAS,MAAM,OAAO,WAAW;AACvC,UAAI,CAAC,QAAQ,OAAO;AAClB,cAAM,IAAI,MAAM,WAAW;AAC3B,mBAAW,CAAC;AACZ,kBAAU,IAAI,kBAAkB,iBAAiB;AAAA,MACnD;AACA,aAAO;AAAA,IACT;AAAA,IACA,CAAC,QAAQ,UAAU;AAAA,EACrB;AAEA,QAAM,gBAAgB,YAAY,YAAY;AAC5C,QAAI,CAAC,QAAS;AACd,UAAM,QAAQ;AACd,eAAW,IAAI;AACf,cAAU,iBAAiB;AAAA,EAC7B,GAAG,CAAC,OAAO,CAAC;AAEZ,SACE;AAAA,IAAC,YAAY;AAAA,IAAZ;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA,MAAM,SAAS,QAAQ;AAAA,QACvB;AAAA,QACA,QAAQ,SAAS,eAAe;AAAA,QAChC,SAAS,UAAU,gBAAgB;AAAA,MACrC;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
|