@digilogiclabs/saas-factory-auth 0.1.2 → 0.2.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/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +24 -20
package/dist/index.js
CHANGED
|
@@ -112,14 +112,14 @@ var useAuth = () => {
|
|
|
112
112
|
react.useEffect(() => {
|
|
113
113
|
supabase.auth.getSession().then(({ data: { session } }) => {
|
|
114
114
|
var _a;
|
|
115
|
-
store.updateUser((_a = session == null ?
|
|
115
|
+
store.updateUser((_a = session == null ? undefined : session.user) != null ? _a : null);
|
|
116
116
|
store.setLoading(false);
|
|
117
117
|
});
|
|
118
118
|
const {
|
|
119
119
|
data: { subscription }
|
|
120
120
|
} = supabase.auth.onAuthStateChange((_event, session) => {
|
|
121
121
|
var _a;
|
|
122
|
-
store.updateUser((_a = session == null ?
|
|
122
|
+
store.updateUser((_a = session == null ? undefined : session.user) != null ? _a : null);
|
|
123
123
|
});
|
|
124
124
|
return () => subscription.unsubscribe();
|
|
125
125
|
}, []);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/supabase.ts","../src/store/authStore.ts","../src/hooks/useAuth.ts","../src/components/AuthProvider.tsx"],"names":["createClientComponentClient","create","useEffect","createContext","useContext"],"mappings":";;;;;;;AAIO,IAAM,eAAe,MAAM;AAChC,EAAA,IAAI,CAAC,OAAQ,CAAA,GAAA,CAAI,4BAA4B,CAAC,OAAA,CAAQ,IAAI,6BAA+B,EAAA;AACvF,IAAM,MAAA,IAAI,MAAM,wCAAwC,CAAA;AAAA;AAG1D,EAAA,OAAOA,6CAAsC,EAAA;AAC/C;AAEO,IAAM,WAAW,YAAa;;;ACRxB,IAAA,YAAA,GAAeC,cAAkB,CAAA,CAAC,GAAS,MAAA;AAAA,EACtD,IAAM,EAAA,IAAA;AAAA,EACN,OAAS,EAAA,IAAA;AAAA,EACT,KAAO,EAAA,IAAA;AAAA,EAEP,MAAA,EAAQ,OAAO,KAAA,EAAe,QAAqB,KAAA;AACjD,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAA,CAAS,KAAK,kBAAmB,CAAA;AAAA,QACvD,KAAA;AAAA,QACA;AAAA,OACD,CAAA;AACD,MAAA,IAAI,OAAa,MAAA,KAAA;AAAA,aACV,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EAEA,MAAA,EAAQ,OAAO,KAAA,EAAe,QAAqB,KAAA;AACjD,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAA,CAAS,KAAK,MAAO,CAAA;AAAA,QAC3C,KAAA;AAAA,QACA;AAAA,OACD,CAAA;AACD,MAAA,IAAI,OAAa,MAAA,KAAA;AAAA,aACV,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EAEA,SAAS,YAAY;AACnB,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAA,CAAS,KAAK,OAAQ,EAAA;AAC9C,MAAA,IAAI,OAAa,MAAA,KAAA;AACjB,MAAI,GAAA,CAAA,EAAE,IAAM,EAAA,IAAA,EAAM,CAAA;AAAA,aACX,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EAEA,aAAA,EAAe,OAAO,KAAkB,KAAA;AACtC,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAS,CAAA,IAAA,CAAK,sBAAsB,KAAK,CAAA;AACjE,MAAA,IAAI,OAAa,MAAA,KAAA;AAAA,aACV,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EACA,eAAA,EAAiB,OAAO,QAAA,EAAkB,UAAwB,KAAA;AAChE,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAA,CAAS,KAAK,eAAgB,CAAA;AAAA,QACpD,QAAA;AAAA,QACA,OAAS,EAAA;AAAA,UACP;AAAA;AACF,OACD,CAAA;AACD,MAAA,IAAI,OAAa,MAAA,KAAA;AAAA,aACV,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EAEA,mBAAA,EAAqB,OAAO,KAAA,EAAe,UAAwB,KAAA;AACjE,IAAI,IAAA;AACF,MAAA,GAAA,CAAI,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAO,MAAM,CAAA;AAClC,MAAA,MAAM,EAAE,KAAM,EAAA,GAAI,MAAM,QAAA,CAAS,KAAK,aAAc,CAAA;AAAA,QAClD,KAAA;AAAA,QACA,OAAS,EAAA;AAAA,UACP,eAAiB,EAAA;AAAA;AACnB,OACD,CAAA;AACD,MAAA,IAAI,OAAa,MAAA,KAAA;AAAA,aACV,KAAO,EAAA;AACd,MAAI,GAAA,CAAA,EAAE,OAAuB,CAAA;AAAA,KAC7B,SAAA;AACA,MAAI,GAAA,CAAA,EAAE,OAAS,EAAA,KAAA,EAAO,CAAA;AAAA;AACxB,GACF;AAAA,EACA,YAAY,CAAC,IAAA,KAAS,GAAI,CAAA,EAAE,MAAM,CAAA;AAAA,EAClC,YAAY,CAAC,OAAA,KAAY,GAAI,CAAA,EAAE,SAAS,CAAA;AAAA,EACxC,UAAU,CAAC,KAAA,KAAU,GAAI,CAAA,EAAE,OAAO;AACpC,CAAE,CAAA;;;AC7FK,IAAM,UAAU,MAAM;AAC3B,EAAA,MAAM,QAAQ,YAAa,EAAA;AAE3B,EAAAC,eAAA,CAAU,MAAM;AAEd,IAAS,QAAA,CAAA,IAAA,CAAK,UAAW,EAAA,CAAE,IAAK,CAAA,CAAC,EAAE,IAAM,EAAA,EAAE,OAAQ,EAAA,EAAQ,KAAA;AAX/D,MAAA,IAAA,EAAA;AAYM,MAAA,KAAA,CAAM,UAAW,CAAA,CAAA,EAAA,GAAA,OAAA,IAAA,IAAA,GAAA,
|
|
1
|
+
{"version":3,"sources":["../src/utils/supabase.ts","../src/store/authStore.ts","../src/hooks/useAuth.ts","../src/components/AuthProvider.tsx"],"names":["createClientComponentClient","create","useEffect","createContext","useContext"],"mappings":"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","file":"index.js","sourcesContent":["\nimport { createClientComponentClient } from '@supabase/auth-helpers-nextjs'\nimport type { Database } from './database.types'\n\nexport const createClient = () => {\n if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY) {\n throw new Error('Missing Supabase environment variables')\n }\n\n return createClientComponentClient<Database>()\n}\n\nexport const supabase = createClient()","import { create } from 'zustand'\nimport { AuthStore } from '../types'\nimport { supabase } from '../utils/supabase'\n\nexport const useAuthStore = create<AuthStore>((set) => ({\n user: null,\n loading: true,\n error: null,\n\n signIn: async (email: string, password: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithPassword({\n email,\n password,\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signUp: async (email: string, password: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signUp({\n email,\n password,\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signOut: async () => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signOut()\n if (error) throw error\n set({ user: null })\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n resetPassword: async (email: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.resetPasswordForEmail(email)\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n signInWithOAuth: async (provider: string, redirectTo?: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithOAuth({\n provider: provider as any,\n options: {\n redirectTo\n }\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signInWithMagicLink: async (email: string, redirectTo?: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithOtp({\n email,\n options: {\n emailRedirectTo: redirectTo\n }\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n updateUser: (user) => set({ user }),\n setLoading: (loading) => set({ loading }),\n setError: (error) => set({ error }),\n}))\n\n// Example usage in a Next.js app:\n/*\nimport { AuthForm } from '@digilogiclabs/saas-factory-auth'\n\nexport default function LoginPage() {\n const router = useRouter()\n\n return (\n <AuthForm\n defaultMode=\"signIn\"\n onSuccess={() => router.push('/dashboard')}\n providers={['google', 'github']}\n redirectTo=\"https://your-app.com/auth/callback\"\n />\n )\n}\n*/","'use client'\n\nimport { useEffect } from 'react'\nimport { useAuthStore } from '../store/authStore'\nimport { supabase } from '../utils/supabase'\n\nexport const useAuth = () => {\n const store = useAuthStore()\n\n useEffect(() => {\n // Check active session\n supabase.auth.getSession().then(({ data: { session } }) => {\n store.updateUser(session?.user ?? null)\n store.setLoading(false)\n })\n\n // Listen for auth changes\n const {\n data: { subscription },\n } = supabase.auth.onAuthStateChange((_event, session) => {\n store.updateUser(session?.user ?? null)\n })\n\n return () => subscription.unsubscribe()\n }, [])\n\n return store\n}","'use client'\n\nimport { createContext, useContext, ReactNode } from 'react'\nimport { useAuth } from '../hooks/useAuth'\nimport type { AuthStore } from '../types'\n\nconst AuthContext = createContext<AuthStore | null>(null)\n\nexport const AuthProvider = ({ children }: { children: ReactNode }) => {\n const auth = useAuth()\n\n return <AuthContext.Provider value={auth}>{children}</AuthContext.Provider>\n}\n\nexport const useAuthContext = () => {\n const context = useContext(AuthContext)\n if (!context) {\n throw new Error('useAuthContext must be used within an AuthProvider')\n }\n return context\n}"]}
|
package/dist/index.mjs
CHANGED
|
@@ -110,14 +110,14 @@ var useAuth = () => {
|
|
|
110
110
|
useEffect(() => {
|
|
111
111
|
supabase.auth.getSession().then(({ data: { session } }) => {
|
|
112
112
|
var _a;
|
|
113
|
-
store.updateUser((_a = session == null ?
|
|
113
|
+
store.updateUser((_a = session == null ? undefined : session.user) != null ? _a : null);
|
|
114
114
|
store.setLoading(false);
|
|
115
115
|
});
|
|
116
116
|
const {
|
|
117
117
|
data: { subscription }
|
|
118
118
|
} = supabase.auth.onAuthStateChange((_event, session) => {
|
|
119
119
|
var _a;
|
|
120
|
-
store.updateUser((_a = session == null ?
|
|
120
|
+
store.updateUser((_a = session == null ? undefined : session.user) != null ? _a : null);
|
|
121
121
|
});
|
|
122
122
|
return () => subscription.unsubscribe();
|
|
123
123
|
}, []);
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/supabase.ts","../src/store/authStore.ts","../src/hooks/useAuth.ts","../src/components/AuthProvider.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../src/utils/supabase.ts","../src/store/authStore.ts","../src/hooks/useAuth.ts","../src/components/AuthProvider.tsx"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["\nimport { createClientComponentClient } from '@supabase/auth-helpers-nextjs'\nimport type { Database } from './database.types'\n\nexport const createClient = () => {\n if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY) {\n throw new Error('Missing Supabase environment variables')\n }\n\n return createClientComponentClient<Database>()\n}\n\nexport const supabase = createClient()","import { create } from 'zustand'\nimport { AuthStore } from '../types'\nimport { supabase } from '../utils/supabase'\n\nexport const useAuthStore = create<AuthStore>((set) => ({\n user: null,\n loading: true,\n error: null,\n\n signIn: async (email: string, password: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithPassword({\n email,\n password,\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signUp: async (email: string, password: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signUp({\n email,\n password,\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signOut: async () => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signOut()\n if (error) throw error\n set({ user: null })\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n resetPassword: async (email: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.resetPasswordForEmail(email)\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n signInWithOAuth: async (provider: string, redirectTo?: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithOAuth({\n provider: provider as any,\n options: {\n redirectTo\n }\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n\n signInWithMagicLink: async (email: string, redirectTo?: string) => {\n try {\n set({ loading: true, error: null })\n const { error } = await supabase.auth.signInWithOtp({\n email,\n options: {\n emailRedirectTo: redirectTo\n }\n })\n if (error) throw error\n } catch (error) {\n set({ error: error as Error })\n } finally {\n set({ loading: false })\n }\n },\n updateUser: (user) => set({ user }),\n setLoading: (loading) => set({ loading }),\n setError: (error) => set({ error }),\n}))\n\n// Example usage in a Next.js app:\n/*\nimport { AuthForm } from '@digilogiclabs/saas-factory-auth'\n\nexport default function LoginPage() {\n const router = useRouter()\n\n return (\n <AuthForm\n defaultMode=\"signIn\"\n onSuccess={() => router.push('/dashboard')}\n providers={['google', 'github']}\n redirectTo=\"https://your-app.com/auth/callback\"\n />\n )\n}\n*/","'use client'\n\nimport { useEffect } from 'react'\nimport { useAuthStore } from '../store/authStore'\nimport { supabase } from '../utils/supabase'\n\nexport const useAuth = () => {\n const store = useAuthStore()\n\n useEffect(() => {\n // Check active session\n supabase.auth.getSession().then(({ data: { session } }) => {\n store.updateUser(session?.user ?? null)\n store.setLoading(false)\n })\n\n // Listen for auth changes\n const {\n data: { subscription },\n } = supabase.auth.onAuthStateChange((_event, session) => {\n store.updateUser(session?.user ?? null)\n })\n\n return () => subscription.unsubscribe()\n }, [])\n\n return store\n}","'use client'\n\nimport { createContext, useContext, ReactNode } from 'react'\nimport { useAuth } from '../hooks/useAuth'\nimport type { AuthStore } from '../types'\n\nconst AuthContext = createContext<AuthStore | null>(null)\n\nexport const AuthProvider = ({ children }: { children: ReactNode }) => {\n const auth = useAuth()\n\n return <AuthContext.Provider value={auth}>{children}</AuthContext.Provider>\n}\n\nexport const useAuthContext = () => {\n const context = useContext(AuthContext)\n if (!context) {\n throw new Error('useAuthContext must be used within an AuthProvider')\n }\n return context\n}"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digilogiclabs/saas-factory-auth",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Authentication package for Next.js applications using Supabase",
|
|
6
6
|
"keywords": [
|
|
@@ -41,49 +41,53 @@
|
|
|
41
41
|
],
|
|
42
42
|
"sideEffects": false,
|
|
43
43
|
"scripts": {
|
|
44
|
-
"build": "tsup
|
|
45
|
-
"dev": "tsup --watch
|
|
46
|
-
"clean": "
|
|
44
|
+
"build": "tsup",
|
|
45
|
+
"dev": "tsup --watch",
|
|
46
|
+
"clean": "rimraf dist",
|
|
47
47
|
"type-check": "tsc --noEmit",
|
|
48
48
|
"test": "jest --passWithNoTests",
|
|
49
49
|
"test:watch": "jest --watch",
|
|
50
50
|
"test:coverage": "jest --coverage",
|
|
51
51
|
"lint": "eslint .",
|
|
52
52
|
"format": "prettier --write .",
|
|
53
|
-
"prepare": "husky install",
|
|
54
53
|
"release": "npm run clean && npm run build && changeset publish",
|
|
55
54
|
"version": "changeset version",
|
|
56
|
-
"prepack": "npm run build"
|
|
55
|
+
"prepack": "npm run build",
|
|
56
|
+
"postinstall": "husky",
|
|
57
|
+
"prepare": "husky"
|
|
57
58
|
},
|
|
58
59
|
"dependencies": {
|
|
59
|
-
"@supabase/auth-helpers-nextjs": "^0.
|
|
60
|
-
"@supabase/supabase-js": "^2.39.
|
|
60
|
+
"@supabase/auth-helpers-nextjs": "^0.9.0",
|
|
61
|
+
"@supabase/supabase-js": "^2.39.0",
|
|
61
62
|
"zustand": "^4.4.7"
|
|
62
63
|
},
|
|
63
64
|
"peerDependencies": {
|
|
64
|
-
"next": ">=
|
|
65
|
+
"next": ">=14",
|
|
65
66
|
"react": ">=18",
|
|
66
67
|
"react-dom": ">=18"
|
|
67
68
|
},
|
|
68
69
|
"devDependencies": {
|
|
69
|
-
"@changesets/cli": "^2.27.
|
|
70
|
-
"@testing-library/jest-dom": "^6.
|
|
71
|
-
"@testing-library/react": "^
|
|
72
|
-
"@types/react": "^18.2.
|
|
73
|
-
"@typescript-eslint/eslint-plugin": "^6.
|
|
74
|
-
"@typescript-eslint/parser": "^6.
|
|
70
|
+
"@changesets/cli": "^2.27.1",
|
|
71
|
+
"@testing-library/jest-dom": "^6.1.5",
|
|
72
|
+
"@testing-library/react": "^14.1.2",
|
|
73
|
+
"@types/react": "^18.2.45",
|
|
74
|
+
"@typescript-eslint/eslint-plugin": "^6.14.0",
|
|
75
|
+
"@typescript-eslint/parser": "^6.14.0",
|
|
75
76
|
"babel-jest": "^29.7.0",
|
|
76
77
|
"eslint": "^8.56.0",
|
|
78
|
+
"eslint-plugin-react": "^7.37.3",
|
|
79
|
+
"eslint-plugin-react-hooks": "^5.1.0",
|
|
80
|
+
"husky": "^9.0.11",
|
|
77
81
|
"identity-obj-proxy": "^3.0.0",
|
|
78
82
|
"jest": "^29.7.0",
|
|
79
83
|
"jest-environment-jsdom": "^29.7.0",
|
|
84
|
+
"lint-staged": "^15.2.0",
|
|
85
|
+
"prettier": "^3.1.1",
|
|
86
|
+
"rimraf": "^5.0.5",
|
|
80
87
|
"tsup": "^8.0.1",
|
|
81
|
-
"typescript": "^5.3.3"
|
|
82
|
-
"husky": "^8.0.3",
|
|
83
|
-
"lint-staged": "^15.0.2",
|
|
84
|
-
"prettier": "^3.0.3"
|
|
88
|
+
"typescript": "^5.3.3"
|
|
85
89
|
},
|
|
86
90
|
"engines": {
|
|
87
91
|
"node": ">=18.0.0"
|
|
88
92
|
}
|
|
89
|
-
}
|
|
93
|
+
}
|