hylekit 1.0.4 → 1.0.6
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/client/index.cjs +4 -14
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.d.cts +267 -209
- package/dist/client/index.d.ts +267 -209
- package/dist/client/index.js +4 -14
- package/dist/client/index.js.map +1 -1
- package/dist/client/nextjs.cjs +2 -7
- package/dist/client/nextjs.cjs.map +1 -1
- package/dist/client/nextjs.d.cts +90 -151
- package/dist/client/nextjs.d.ts +90 -151
- package/dist/client/nextjs.js +2 -7
- package/dist/client/nextjs.js.map +1 -1
- package/dist/client/sveltekit.cjs +2 -7
- package/dist/client/sveltekit.cjs.map +1 -1
- package/dist/client/sveltekit.d.cts +90 -151
- package/dist/client/sveltekit.d.ts +90 -151
- package/dist/client/sveltekit.js +2 -7
- package/dist/client/sveltekit.js.map +1 -1
- package/dist/index.cjs +1 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -4
- package/dist/index.js.map +1 -1
- package/dist/server/nextjs.cjs +1 -4
- package/dist/server/nextjs.cjs.map +1 -1
- package/dist/server/nextjs.d.cts +5 -14
- package/dist/server/nextjs.d.ts +5 -14
- package/dist/server/nextjs.js +1 -4
- package/dist/server/nextjs.js.map +1 -1
- package/package.json +1 -1
package/dist/server/nextjs.js
CHANGED
|
@@ -13,10 +13,7 @@ function createNextJsServer(auth, db) {
|
|
|
13
13
|
* Next.js route handler for auth routes.
|
|
14
14
|
* Place this in `app/api/auth/[...auth]/route.ts`
|
|
15
15
|
*/
|
|
16
|
-
handler
|
|
17
|
-
GET: handler,
|
|
18
|
-
POST: handler
|
|
19
|
-
},
|
|
16
|
+
handler,
|
|
20
17
|
/**
|
|
21
18
|
* Get session from current request headers.
|
|
22
19
|
* Use in Server Components or Route Handlers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/server/nextjs.ts"],"sourcesContent":["import \"server-only\";\nimport { toNextJsHandler } from \"better-auth/next-js\";\nimport { headers } from \"next/headers\";\nimport type { SessionResult, SessionData } from \"../client/types\";\n\n// Type for auth instance created by createAuth\ntype HyleAuth = ReturnType<typeof import(\"better-auth\").betterAuth>;\n// Type for db instance created by createDb \ntype HyleDb = ReturnType<typeof import(\"drizzle-orm/libsql\").drizzle>;\n\n/**\n * Creates Next.js server-side auth utilities (App Router).\n * \n * @param auth - Auth instance created by createAuth()\n * @param db - Database instance created by createDb()\n * @returns Server-side auth utilities for Next.js\n * \n * @example\n * ```typescript\n * // In lib/auth.ts\n * import { createDb, createAuth } from \"hylekit\";\n * import { createNextJsServer } from \"hylekit/nextjs\";\n * \n * const db = createDb({ url: process.env.HYLE_DATABASE_URL!, authToken: process.env.HYLE_DATABASE_AUTH_TOKEN });\n * const auth = createAuth(db, { baseURL: process.env.BETTER_AUTH_URL!, secret: process.env.BETTER_AUTH_SECRET!, ... });\n * \n * export const { handler, getSession, isAuthenticated, getUser, makeAuthenticatedCall } = createNextJsServer(auth, db);\n * ```\n */\nexport function createNextJsServer(auth: HyleAuth, db: HyleDb) {\n const handler = toNextJsHandler(auth);\n\n return {\n /**\n * The underlying BetterAuth instance.\n */\n auth,\n\n /**\n * Next.js route handler for auth routes.\n * Place this in `app/api/auth/[...auth]/route.ts`\n */\n handler
|
|
1
|
+
{"version":3,"sources":["../../src/server/nextjs.ts"],"sourcesContent":["import \"server-only\";\nimport { toNextJsHandler } from \"better-auth/next-js\";\nimport { headers } from \"next/headers\";\nimport type { SessionResult, SessionData } from \"../client/types\";\n\n// Type for auth instance created by createAuth\ntype HyleAuth = ReturnType<typeof import(\"better-auth\").betterAuth>;\n// Type for db instance created by createDb \ntype HyleDb = ReturnType<typeof import(\"drizzle-orm/libsql\").drizzle>;\n\n/**\n * Creates Next.js server-side auth utilities (App Router).\n * \n * @param auth - Auth instance created by createAuth()\n * @param db - Database instance created by createDb()\n * @returns Server-side auth utilities for Next.js\n * \n * @example\n * ```typescript\n * // In lib/auth.ts\n * import { createDb, createAuth } from \"hylekit\";\n * import { createNextJsServer } from \"hylekit/nextjs\";\n * \n * const db = createDb({ url: process.env.HYLE_DATABASE_URL!, authToken: process.env.HYLE_DATABASE_AUTH_TOKEN });\n * const auth = createAuth(db, { baseURL: process.env.BETTER_AUTH_URL!, secret: process.env.BETTER_AUTH_SECRET!, ... });\n * \n * export const { handler, getSession, isAuthenticated, getUser, makeAuthenticatedCall } = createNextJsServer(auth, db);\n * ```\n */\nexport function createNextJsServer(auth: HyleAuth, db: HyleDb) {\n // toNextJsHandler already returns { GET, POST }\n const handler = toNextJsHandler(auth);\n\n return {\n /**\n * The underlying BetterAuth instance.\n */\n auth,\n\n /**\n * Next.js route handler for auth routes.\n * Place this in `app/api/auth/[...auth]/route.ts`\n */\n handler,\n\n /**\n * Get session from current request headers.\n * Use in Server Components or Route Handlers.\n */\n getSession: async (): Promise<SessionResult> => {\n const requestHeaders = await headers();\n return auth.api.getSession({\n headers: requestHeaders,\n });\n },\n\n /**\n * Get session from specific headers.\n * Use when you have direct access to headers.\n */\n getSessionFromHeaders: async (requestHeaders: Headers): Promise<SessionResult> => {\n return auth.api.getSession({\n headers: requestHeaders,\n });\n },\n\n /**\n * Check if user is authenticated.\n * Use in Server Components.\n */\n isAuthenticated: async (): Promise<boolean> => {\n const requestHeaders = await headers();\n const session = await auth.api.getSession({\n headers: requestHeaders,\n });\n return session !== null;\n },\n\n /**\n * Get the current user or null.\n * Convenience method for Server Components.\n */\n getUser: async () => {\n const requestHeaders = await headers();\n const session = await auth.api.getSession({\n headers: requestHeaders,\n });\n return session?.user ?? null;\n },\n\n /**\n * Wraps a function to ensure the user is authenticated before execution.\n * Injects the user, session, and db into the first argument.\n */\n makeAuthenticatedCall: <TArgs extends any[], TReturn>(\n fn: (ctx: { user: SessionData['user']; session: SessionData['session']; db: typeof db }, ...args: TArgs) => Promise<TReturn>\n ) => {\n return async (...args: TArgs): Promise<TReturn> => {\n const requestHeaders = await headers();\n const session = await auth.api.getSession({\n headers: requestHeaders,\n });\n if (!session) {\n throw new Error(\"Unauthorized\");\n }\n return fn({ user: session.user, session: session.session, db }, ...args);\n }\n }\n };\n}\n"],"mappings":";AAAA,OAAO;AACP,SAAS,uBAAuB;AAChC,SAAS,eAAe;AA2BjB,SAAS,mBAAmB,MAAgB,IAAY;AAE3D,QAAM,UAAU,gBAAgB,IAAI;AAEpC,SAAO;AAAA;AAAA;AAAA;AAAA,IAIH;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAY,YAAoC;AAC5C,YAAM,iBAAiB,MAAM,QAAQ;AACrC,aAAO,KAAK,IAAI,WAAW;AAAA,QACvB,SAAS;AAAA,MACb,CAAC;AAAA,IACL;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,uBAAuB,OAAO,mBAAoD;AAC9E,aAAO,KAAK,IAAI,WAAW;AAAA,QACvB,SAAS;AAAA,MACb,CAAC;AAAA,IACL;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,iBAAiB,YAA8B;AAC3C,YAAM,iBAAiB,MAAM,QAAQ;AACrC,YAAM,UAAU,MAAM,KAAK,IAAI,WAAW;AAAA,QACtC,SAAS;AAAA,MACb,CAAC;AACD,aAAO,YAAY;AAAA,IACvB;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,SAAS,YAAY;AACjB,YAAM,iBAAiB,MAAM,QAAQ;AACrC,YAAM,UAAU,MAAM,KAAK,IAAI,WAAW;AAAA,QACtC,SAAS;AAAA,MACb,CAAC;AACD,aAAO,SAAS,QAAQ;AAAA,IAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,uBAAuB,CACnB,OACC;AACD,aAAO,UAAU,SAAkC;AAC/C,cAAM,iBAAiB,MAAM,QAAQ;AACrC,cAAM,UAAU,MAAM,KAAK,IAAI,WAAW;AAAA,UACtC,SAAS;AAAA,QACb,CAAC;AACD,YAAI,CAAC,SAAS;AACV,gBAAM,IAAI,MAAM,cAAc;AAAA,QAClC;AACA,eAAO,GAAG,EAAE,MAAM,QAAQ,MAAM,SAAS,QAAQ,SAAS,GAAG,GAAG,GAAG,IAAI;AAAA,MAC3E;AAAA,IACJ;AAAA,EACJ;AACJ;","names":[]}
|