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.
Files changed (36) hide show
  1. package/dist/DashboardSplashTrigger-CRpueuUi.d.ts +154 -0
  2. package/dist/auth/index.d.ts +42 -0
  3. package/dist/auth/index.js +12 -0
  4. package/dist/auth/index.js.map +1 -0
  5. package/dist/{chunk-D5PTZWTT.js → chunk-4LM22T36.js} +2 -2
  6. package/dist/chunk-MC3FBYWV.js +534 -0
  7. package/dist/chunk-MC3FBYWV.js.map +1 -0
  8. package/dist/chunk-QO42DDRU.js +113 -0
  9. package/dist/chunk-QO42DDRU.js.map +1 -0
  10. package/dist/{chunk-3C3AAR3S.js → chunk-YSVQQBBU.js} +474 -50
  11. package/dist/chunk-YSVQQBBU.js.map +1 -0
  12. package/dist/components/index.d.ts +64 -132
  13. package/dist/components/index.js +22 -2
  14. package/dist/content/index.d.ts +45 -0
  15. package/dist/content/index.js +38 -0
  16. package/dist/content/index.js.map +1 -0
  17. package/dist/handlers/index.d.ts +60 -3
  18. package/dist/handlers/index.js +477 -126
  19. package/dist/handlers/index.js.map +1 -1
  20. package/dist/i18n/index.d.ts +114 -0
  21. package/dist/i18n/index.js +249 -0
  22. package/dist/i18n/index.js.map +1 -0
  23. package/dist/{index-B1ZYC5TP.d.ts → index-CCsSC4nF.d.ts} +119 -2
  24. package/dist/index.d.ts +45 -7
  25. package/dist/index.js +226 -39
  26. package/dist/index.js.map +1 -1
  27. package/dist/providers/index.d.ts +3 -2
  28. package/dist/providers/index.js +2 -2
  29. package/dist/types-X07o_zKf.d.ts +198 -0
  30. package/dist/types-d8-k_4dN.d.ts +19 -0
  31. package/package.json +16 -1
  32. package/dist/chunk-3C3AAR3S.js.map +0 -1
  33. package/dist/chunk-BVLJYZ6T.js +0 -252
  34. package/dist/chunk-BVLJYZ6T.js.map +0 -1
  35. package/dist/types-BZgSeTU8.d.ts +0 -101
  36. /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":[]}