@authdog/nextjs-app 2.0.0 → 2.1.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.server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/next@16.2.9+7492c01c6988791b/node_modules/next/server.js","../src/index.server.ts","../src/server/middleware.ts","../src/server/cookies.ts","../src/commons.ts","../src/server/logout.ts","../src/server/publicKey.ts"],"sourcesContent":["const serverExports = {\n NextRequest: require('next/dist/server/web/spec-extension/request')\n .NextRequest,\n NextResponse: require('next/dist/server/web/spec-extension/response')\n .NextResponse,\n ImageResponse: require('next/dist/server/web/spec-extension/image-response')\n .ImageResponse,\n userAgentFromString: require('next/dist/server/web/spec-extension/user-agent')\n .userAgentFromString,\n userAgent: require('next/dist/server/web/spec-extension/user-agent')\n .userAgent,\n URLPattern: require('next/dist/server/web/spec-extension/url-pattern')\n .URLPattern,\n after: require('next/dist/server/after').after,\n connection: require('next/dist/server/request/connection').connection,\n}\n\n// https://nodejs.org/api/esm.html#commonjs-namespaces\n// When importing CommonJS modules, the module.exports object is provided as the default export\nmodule.exports = serverExports\n\n// make import { xxx } from 'next/server' work\nexports.NextRequest = serverExports.NextRequest\nexports.NextResponse = serverExports.NextResponse\nexports.ImageResponse = serverExports.ImageResponse\nexports.userAgentFromString = serverExports.userAgentFromString\nexports.userAgent = serverExports.userAgent\nexports.URLPattern = serverExports.URLPattern\nexports.after = serverExports.after\nexports.connection = serverExports.connection\n","import \"server-only\";\nexport * from \"./server\";\n","import { NextResponse, type NextRequest } from \"next/server\";\nimport {\n validateAndParsePublicKey,\n fetchUserData,\n isAuthenticatedUserInfo,\n} from \"@authdog/node-commons\";\n\nexport const useAuthMiddleware = (publicKey: string) => {\n const publicKeyObj = validateAndParsePublicKey(publicKey);\n\n return async (request: NextRequest) => {\n const response = NextResponse.next();\n const options = {\n maxAge: 60 * 60 * 24 * 7, // 1 week\n path: \"/\",\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n sameSite: \"lax\" as const,\n };\n\n const tokenFromUri = new URL(request.nextUrl).searchParams.get(\"token\");\n\n if (tokenFromUri) {\n const userData = await fetchUserData(\n publicKeyObj.identityHost,\n publicKeyObj.environmentId,\n tokenFromUri,\n );\n\n if (isAuthenticatedUserInfo(userData)) {\n response.cookies.set({\n name: `user_session_${publicKeyObj.environmentId}`,\n value: JSON.stringify(userData.user),\n ...options,\n });\n\n response.cookies.set({\n name: `user_session_hash_${publicKeyObj.environmentId}`,\n value: tokenFromUri,\n ...options,\n });\n }\n }\n // TODO: token from cookies\n\n return response;\n };\n};\n","import { cookies } from \"next/headers\";\nimport { validateAndParsePublicKey } from \"../commons\";\n\nexport const getSessionCookie = async (publicKey: string) => {\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n const publicKeyObj = validateAndParsePublicKey(publicKey);\n const cookieStore = await cookies();\n return cookieStore.get(`user_session_${publicKeyObj?.environmentId}`);\n};\n","export {\n validateAndParsePublicKey,\n // Backwards-compatible alias of `validateAndParsePublicKey`.\n getPublicKeyPayload,\n assertTrustedIdentityHost,\n type PublicKeyPayload,\n} from \"@authdog/node-commons\";\n","import { cookies } from \"next/headers\";\nimport { NextRequest } from \"next/server\";\nimport { getServerSidePayloadPublicKey } from \"./publicKey\";\n\nexport const logoutHandler = async (req: NextRequest) => {\n const cookiesStore = await cookies();\n\n const publicKey = process.env.PK_AUTHDOG as string;\n\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n\n const payload = await getServerSidePayloadPublicKey(publicKey);\n\n const environmentId = payload.environmentId;\n\n const deleteOptions = {\n value: \"\",\n path: \"/\",\n maxAge: 0,\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n sameSite: \"lax\" as const,\n };\n\n const cookieNameSession = `user_session_${environmentId}`;\n cookiesStore.set({ name: cookieNameSession, ...deleteOptions });\n\n const cookieNameHash = `user_session_hash_${environmentId}`;\n cookiesStore.set({ name: cookieNameHash, ...deleteOptions });\n\n return new Response(\n JSON.stringify({\n message: \"Logout successfully\",\n success: true,\n }),\n {\n status: 200,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n },\n );\n};\n","import { validateAndParsePublicKey } from \"../commons\";\nexport const getServerSidePayloadPublicKey = (publicKey: string) => {\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n return validateAndParsePublicKey(publicKey);\n};\n"],"mappings":"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","names":["require_server","__commonJSMin","exports","module","serverExports","index_server_exports","__export","getServerSidePayloadPublicKey","getSessionCookie","logoutHandler","useAuthMiddleware","__toCommonJS","import_server_only","import_server","import_node_commons","useAuthMiddleware","publicKey","publicKeyObj","request","response","options","tokenFromUri","userData","import_headers","import_node_commons","getSessionCookie","publicKey","publicKeyObj","import_headers","getServerSidePayloadPublicKey","publicKey","logoutHandler","req","cookiesStore","publicKey","environmentId","getServerSidePayloadPublicKey","deleteOptions","cookieNameSession","cookieNameHash"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/next@16.2.9+7492c01c6988791b/node_modules/next/server.js","../src/index.server.ts","../src/server/middleware.ts","../src/server/cookies.ts","../src/commons.ts","../src/server/logout.ts","../src/server/publicKey.ts"],"sourcesContent":["const serverExports = {\n NextRequest: require('next/dist/server/web/spec-extension/request')\n .NextRequest,\n NextResponse: require('next/dist/server/web/spec-extension/response')\n .NextResponse,\n ImageResponse: require('next/dist/server/web/spec-extension/image-response')\n .ImageResponse,\n userAgentFromString: require('next/dist/server/web/spec-extension/user-agent')\n .userAgentFromString,\n userAgent: require('next/dist/server/web/spec-extension/user-agent')\n .userAgent,\n URLPattern: require('next/dist/server/web/spec-extension/url-pattern')\n .URLPattern,\n after: require('next/dist/server/after').after,\n connection: require('next/dist/server/request/connection').connection,\n}\n\n// https://nodejs.org/api/esm.html#commonjs-namespaces\n// When importing CommonJS modules, the module.exports object is provided as the default export\nmodule.exports = serverExports\n\n// make import { xxx } from 'next/server' work\nexports.NextRequest = serverExports.NextRequest\nexports.NextResponse = serverExports.NextResponse\nexports.ImageResponse = serverExports.ImageResponse\nexports.userAgentFromString = serverExports.userAgentFromString\nexports.userAgent = serverExports.userAgent\nexports.URLPattern = serverExports.URLPattern\nexports.after = serverExports.after\nexports.connection = serverExports.connection\n","import \"server-only\";\nexport * from \"./server\";\n","import { NextResponse, type NextRequest } from \"next/server\";\nimport {\n validateAndParsePublicKey,\n fetchUserData,\n isAuthenticatedUserInfo,\n} from \"@authdog/node-commons\";\n\nexport const useAuthMiddleware = (publicKey: string) => {\n const publicKeyObj = validateAndParsePublicKey(publicKey);\n\n return async (request: NextRequest) => {\n const response = NextResponse.next();\n const options = {\n maxAge: 60 * 60 * 24 * 7, // 1 week\n path: \"/\",\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n sameSite: \"lax\" as const,\n };\n\n const tokenFromUri = new URL(request.nextUrl).searchParams.get(\"token\");\n\n if (tokenFromUri) {\n const userData = await fetchUserData(\n publicKeyObj.identityHost,\n publicKeyObj.environmentId,\n tokenFromUri,\n );\n\n if (isAuthenticatedUserInfo(userData)) {\n response.cookies.set({\n name: `user_session_${publicKeyObj.environmentId}`,\n value: JSON.stringify(userData.user),\n ...options,\n });\n\n response.cookies.set({\n name: `user_session_hash_${publicKeyObj.environmentId}`,\n value: tokenFromUri,\n ...options,\n });\n }\n }\n // TODO: token from cookies\n\n return response;\n };\n};\n","import { cookies } from \"next/headers\";\nimport { validateAndParsePublicKey } from \"../commons\";\n\nexport const getSessionCookie = async (publicKey: string) => {\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n const publicKeyObj = validateAndParsePublicKey(publicKey);\n const cookieStore = await cookies();\n return cookieStore.get(`user_session_${publicKeyObj?.environmentId}`);\n};\n","export {\n validateAndParsePublicKey,\n // Backwards-compatible alias of `validateAndParsePublicKey`.\n getPublicKeyPayload,\n assertTrustedIdentityHost,\n type PublicKeyPayload,\n} from \"@authdog/node-commons\";\n","import { cookies } from \"next/headers\";\nimport { NextRequest } from \"next/server\";\nimport { getServerSidePayloadPublicKey } from \"./publicKey\";\n\nexport const logoutHandler = async (req: NextRequest) => {\n const cookiesStore = await cookies();\n\n const publicKey = process.env.PK_AUTHDOG as string;\n\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n\n const payload = await getServerSidePayloadPublicKey(publicKey);\n\n const environmentId = payload.environmentId;\n\n const deleteOptions = {\n value: \"\",\n path: \"/\",\n maxAge: 0,\n httpOnly: true,\n secure: process.env.NODE_ENV === \"production\",\n sameSite: \"lax\" as const,\n };\n\n const cookieNameSession = `user_session_${environmentId}`;\n cookiesStore.set({ name: cookieNameSession, ...deleteOptions });\n\n const cookieNameHash = `user_session_hash_${environmentId}`;\n cookiesStore.set({ name: cookieNameHash, ...deleteOptions });\n\n return new Response(\n JSON.stringify({\n message: \"Logout successfully\",\n success: true,\n }),\n {\n status: 200,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n },\n );\n};\n","import { validateAndParsePublicKey } from \"../commons\";\nexport const getServerSidePayloadPublicKey = (publicKey: string) => {\n if (!publicKey) {\n throw new Error(\"Public key is not defined\");\n }\n return validateAndParsePublicKey(publicKey);\n};\n"],"mappings":"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","names":["require_server","__commonJSMin","exports","module","serverExports","import_server","validateAndParsePublicKey","fetchUserData","isAuthenticatedUserInfo","useAuthMiddleware","publicKey","publicKeyObj","request","response","options","tokenFromUri","userData","cookies","validateAndParsePublicKey","getPublicKeyPayload","assertTrustedIdentityHost","getSessionCookie","publicKey","publicKeyObj","validateAndParsePublicKey","cookies","cookies","getServerSidePayloadPublicKey","publicKey","validateAndParsePublicKey","logoutHandler","req","cookiesStore","cookies","publicKey","environmentId","getServerSidePayloadPublicKey","deleteOptions","cookieNameSession","cookieNameHash"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@authdog/nextjs-app",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Authdog Next.js SDK",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -54,17 +54,17 @@
|
|
|
54
54
|
"react-dom": "^18.2.0 || ^19.0.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@types/node": "^
|
|
58
|
-
"@types/react": "^19.
|
|
59
|
-
"@types/react-dom": "^19.
|
|
57
|
+
"@types/node": "^24.0.0",
|
|
58
|
+
"@types/react": "^19.2.0",
|
|
59
|
+
"@types/react-dom": "^19.2.0",
|
|
60
60
|
"dotenv": "^16.4.7",
|
|
61
|
-
"next": "^16.
|
|
61
|
+
"next": "^16.2.9",
|
|
62
62
|
"prettier": "^3.4.2",
|
|
63
63
|
"react": "^19.1.0",
|
|
64
64
|
"react-dom": "^19.1.0",
|
|
65
65
|
"tsup": "^8.3.5",
|
|
66
66
|
"typescript": "^5.7.2",
|
|
67
|
-
"vitest": "^2.
|
|
67
|
+
"vitest": "^3.2.6"
|
|
68
68
|
},
|
|
69
69
|
"publishConfig": {
|
|
70
70
|
"registry": "https://registry.npmjs.org/",
|