@tern-secure/nextjs 5.1.8 → 5.1.9
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/cjs/__tests__/gemini_fnTernSecureNextHandler.bench.js +31 -0
- package/dist/cjs/__tests__/gemini_fnTernSecureNextHandler.bench.js.map +1 -0
- package/dist/cjs/app-router/admin/actions.js +62 -0
- package/dist/cjs/app-router/admin/actions.js.map +1 -0
- package/dist/cjs/app-router/admin/constants.js +29 -0
- package/dist/cjs/app-router/admin/constants.js.map +1 -0
- package/dist/cjs/app-router/admin/fnValidators.js +295 -0
- package/dist/cjs/app-router/admin/fnValidators.js.map +1 -0
- package/dist/cjs/app-router/admin/index.js +16 -3
- package/dist/cjs/app-router/admin/index.js.map +1 -1
- package/dist/cjs/app-router/admin/responses.js +120 -0
- package/dist/cjs/app-router/admin/responses.js.map +1 -0
- package/dist/cjs/app-router/admin/sessionHandlers.js +167 -0
- package/dist/cjs/app-router/admin/sessionHandlers.js.map +1 -0
- package/dist/cjs/app-router/admin/ternsecureNextjsHandler.js +84 -0
- package/dist/cjs/app-router/admin/ternsecureNextjsHandler.js.map +1 -0
- package/dist/cjs/app-router/admin/types.js +127 -0
- package/dist/cjs/app-router/admin/types.js.map +1 -0
- package/dist/cjs/app-router/admin/utils.js +107 -0
- package/dist/cjs/app-router/admin/utils.js.map +1 -0
- package/dist/cjs/app-router/admin/validators.js +217 -0
- package/dist/cjs/app-router/admin/validators.js.map +1 -0
- package/dist/cjs/app-router/client/TernSecureProvider.js +2 -6
- package/dist/cjs/app-router/client/TernSecureProvider.js.map +1 -1
- package/dist/cjs/app-router/server/auth.js +100 -0
- package/dist/cjs/app-router/server/auth.js.map +1 -0
- package/dist/cjs/app-router/server/utils.js +87 -0
- package/dist/cjs/app-router/server/utils.js.map +1 -0
- package/dist/cjs/boundary/components.js +4 -7
- package/dist/cjs/boundary/components.js.map +1 -1
- package/dist/cjs/{components/uiComponents.js → constants.js} +17 -18
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/errors.js.map +1 -1
- package/dist/cjs/index.js +4 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/server/constant.js +38 -0
- package/dist/cjs/server/constant.js.map +1 -0
- package/dist/cjs/server/edge-session.js +118 -24
- package/dist/cjs/server/edge-session.js.map +1 -1
- package/dist/cjs/server/headers-utils.js +70 -0
- package/dist/cjs/server/headers-utils.js.map +1 -0
- package/dist/cjs/server/index.js +8 -6
- package/dist/cjs/server/index.js.map +1 -1
- package/dist/cjs/server/jwt-edge.js +47 -19
- package/dist/cjs/server/jwt-edge.js.map +1 -1
- package/dist/cjs/server/jwt.js +11 -4
- package/dist/cjs/server/jwt.js.map +1 -1
- package/dist/cjs/server/nextErrors.js +131 -0
- package/dist/cjs/server/nextErrors.js.map +1 -0
- package/dist/cjs/server/nextFetcher.js +31 -0
- package/dist/cjs/server/nextFetcher.js.map +1 -0
- package/dist/cjs/server/node/SessionTernSecure.js +55 -0
- package/dist/cjs/server/node/SessionTernSecure.js.map +1 -0
- package/dist/cjs/server/{auth.js → node/auth.js} +11 -20
- package/dist/cjs/server/node/auth.js.map +1 -0
- package/dist/cjs/server/node/index.js +40 -0
- package/dist/cjs/server/node/index.js.map +1 -0
- package/dist/cjs/server/node/node-session.js +60 -0
- package/dist/cjs/server/node/node-session.js.map +1 -0
- package/dist/cjs/server/node/ternSecureNodeMiddleware.js +182 -0
- package/dist/cjs/server/node/ternSecureNodeMiddleware.js.map +1 -0
- package/dist/cjs/server/protect.js +90 -0
- package/dist/cjs/server/protect.js.map +1 -0
- package/dist/cjs/server/redirect.js +84 -0
- package/dist/cjs/server/redirect.js.map +1 -0
- package/dist/cjs/server/routeMatcher.js +36 -0
- package/dist/cjs/server/routeMatcher.js.map +1 -0
- package/dist/cjs/server/sdk-versions.js +43 -0
- package/dist/cjs/server/sdk-versions.js.map +1 -0
- package/dist/cjs/server/session-store.js.map +1 -1
- package/dist/cjs/server/ternSecureEdgeMiddleware.js +298 -0
- package/dist/cjs/server/ternSecureEdgeMiddleware.js.map +1 -0
- package/dist/cjs/server/ternSecureFireMiddleware.js +192 -0
- package/dist/cjs/server/ternSecureFireMiddleware.js.map +1 -0
- package/dist/cjs/server/types.js.map +1 -1
- package/dist/cjs/server/utils.js +115 -2
- package/dist/cjs/server/utils.js.map +1 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/utils/NextCookieAdapter.js +44 -0
- package/dist/cjs/utils/NextCookieAdapter.js.map +1 -0
- package/dist/cjs/utils/allNextProviderProps.js +10 -24
- package/dist/cjs/utils/allNextProviderProps.js.map +1 -1
- package/dist/cjs/utils/config.js +38 -2
- package/dist/cjs/utils/config.js.map +1 -1
- package/dist/cjs/utils/construct.js.map +1 -1
- package/dist/cjs/utils/fireconfig.js +38 -0
- package/dist/cjs/utils/fireconfig.js.map +1 -0
- package/dist/cjs/utils/logger.js +101 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/cjs/utils/redis.js +33 -0
- package/dist/cjs/utils/redis.js.map +1 -0
- package/dist/cjs/utils/response.js +38 -0
- package/dist/cjs/utils/response.js.map +1 -0
- package/dist/cjs/utils/serverRedirectAuth.js +39 -0
- package/dist/cjs/utils/serverRedirectAuth.js.map +1 -0
- package/dist/cjs/utils/ternsecure-sw.js +1 -1
- package/dist/cjs/utils/ternsecure-sw.js.map +1 -1
- package/dist/cjs/utils/withLogger.js +82 -0
- package/dist/cjs/utils/withLogger.js.map +1 -0
- package/dist/esm/__tests__/gemini_fnTernSecureNextHandler.bench.js +30 -0
- package/dist/esm/__tests__/gemini_fnTernSecureNextHandler.bench.js.map +1 -0
- package/dist/esm/app-router/admin/actions.js +40 -0
- package/dist/esm/app-router/admin/actions.js.map +1 -0
- package/dist/esm/app-router/admin/constants.js +5 -0
- package/dist/esm/app-router/admin/constants.js.map +1 -0
- package/dist/esm/app-router/admin/fnValidators.js +270 -0
- package/dist/esm/app-router/admin/fnValidators.js.map +1 -0
- package/dist/esm/app-router/admin/index.js +16 -2
- package/dist/esm/app-router/admin/index.js.map +1 -1
- package/dist/esm/app-router/admin/responses.js +93 -0
- package/dist/esm/app-router/admin/responses.js.map +1 -0
- package/dist/esm/app-router/admin/sessionHandlers.js +131 -0
- package/dist/esm/app-router/admin/sessionHandlers.js.map +1 -0
- package/dist/esm/app-router/admin/ternsecureNextjsHandler.js +62 -0
- package/dist/esm/app-router/admin/ternsecureNextjsHandler.js.map +1 -0
- package/dist/esm/app-router/admin/types.js +98 -0
- package/dist/esm/app-router/admin/types.js.map +1 -0
- package/dist/esm/app-router/admin/utils.js +80 -0
- package/dist/esm/app-router/admin/utils.js.map +1 -0
- package/dist/esm/app-router/admin/validators.js +189 -0
- package/dist/esm/app-router/admin/validators.js.map +1 -0
- package/dist/esm/app-router/client/TernSecureProvider.js +2 -6
- package/dist/esm/app-router/client/TernSecureProvider.js.map +1 -1
- package/dist/esm/app-router/server/auth.js +81 -0
- package/dist/esm/app-router/server/auth.js.map +1 -0
- package/dist/esm/app-router/server/utils.js +51 -0
- package/dist/esm/app-router/server/utils.js.map +1 -0
- package/dist/esm/boundary/components.js +4 -7
- package/dist/esm/boundary/components.js.map +1 -1
- package/dist/esm/constants.js +17 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/index.js +5 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/server/constant.js +11 -0
- package/dist/esm/server/constant.js.map +1 -0
- package/dist/esm/server/edge-session.js +113 -22
- package/dist/esm/server/edge-session.js.map +1 -1
- package/dist/esm/server/headers-utils.js +41 -0
- package/dist/esm/server/headers-utils.js.map +1 -0
- package/dist/esm/server/index.js +9 -3
- package/dist/esm/server/index.js.map +1 -1
- package/dist/esm/server/jwt-edge.js +48 -20
- package/dist/esm/server/jwt-edge.js.map +1 -1
- package/dist/esm/server/jwt.js +12 -5
- package/dist/esm/server/jwt.js.map +1 -1
- package/dist/esm/server/nextErrors.js +97 -0
- package/dist/esm/server/nextErrors.js.map +1 -0
- package/dist/esm/server/nextFetcher.js +7 -0
- package/dist/esm/server/nextFetcher.js.map +1 -0
- package/dist/esm/server/node/SessionTernSecure.js +31 -0
- package/dist/esm/server/node/SessionTernSecure.js.map +1 -0
- package/dist/esm/server/{auth.js → node/auth.js} +11 -20
- package/dist/esm/server/node/auth.js.map +1 -0
- package/dist/esm/server/node/index.js +19 -0
- package/dist/esm/server/node/index.js.map +1 -0
- package/dist/esm/server/node/node-session.js +36 -0
- package/dist/esm/server/node/node-session.js.map +1 -0
- package/dist/esm/server/node/ternSecureNodeMiddleware.js +165 -0
- package/dist/esm/server/node/ternSecureNodeMiddleware.js.map +1 -0
- package/dist/esm/server/protect.js +66 -0
- package/dist/esm/server/protect.js.map +1 -0
- package/dist/esm/server/redirect.js +60 -0
- package/dist/esm/server/redirect.js.map +1 -0
- package/dist/esm/server/routeMatcher.js +12 -0
- package/dist/esm/server/routeMatcher.js.map +1 -0
- package/dist/esm/server/sdk-versions.js +8 -0
- package/dist/esm/server/sdk-versions.js.map +1 -0
- package/dist/esm/server/session-store.js.map +1 -1
- package/dist/esm/server/ternSecureEdgeMiddleware.js +286 -0
- package/dist/esm/server/ternSecureEdgeMiddleware.js.map +1 -0
- package/dist/esm/server/ternSecureFireMiddleware.js +179 -0
- package/dist/esm/server/ternSecureFireMiddleware.js.map +1 -0
- package/dist/esm/server/utils.js +99 -1
- package/dist/esm/server/utils.js.map +1 -1
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils/NextCookieAdapter.js +20 -0
- package/dist/esm/utils/NextCookieAdapter.js.map +1 -0
- package/dist/esm/utils/allNextProviderProps.js +10 -24
- package/dist/esm/utils/allNextProviderProps.js.map +1 -1
- package/dist/esm/utils/config.js +34 -1
- package/dist/esm/utils/config.js.map +1 -1
- package/dist/esm/utils/construct.js +1 -1
- package/dist/esm/utils/construct.js.map +1 -1
- package/dist/esm/utils/fireconfig.js +14 -0
- package/dist/esm/utils/fireconfig.js.map +1 -0
- package/dist/esm/utils/logger.js +74 -0
- package/dist/esm/utils/logger.js.map +1 -0
- package/dist/esm/utils/redis.js +9 -0
- package/dist/esm/utils/redis.js.map +1 -0
- package/dist/esm/utils/response.js +13 -0
- package/dist/esm/utils/response.js.map +1 -0
- package/dist/esm/utils/serverRedirectAuth.js +17 -0
- package/dist/esm/utils/serverRedirectAuth.js.map +1 -0
- package/dist/esm/utils/ternsecure-sw.js +1 -1
- package/dist/esm/utils/ternsecure-sw.js.map +1 -1
- package/dist/esm/utils/withLogger.js +57 -0
- package/dist/esm/utils/withLogger.js.map +1 -0
- package/dist/types/app-router/admin/actions.d.ts +19 -0
- package/dist/types/app-router/admin/actions.d.ts.map +1 -0
- package/dist/types/app-router/admin/constants.d.ts +2 -0
- package/dist/types/app-router/admin/constants.d.ts.map +1 -0
- package/dist/types/app-router/admin/fnValidators.d.ts +35 -0
- package/dist/types/app-router/admin/fnValidators.d.ts.map +1 -0
- package/dist/types/app-router/admin/index.d.ts +3 -1
- package/dist/types/app-router/admin/index.d.ts.map +1 -1
- package/dist/types/app-router/admin/responses.d.ts +28 -0
- package/dist/types/app-router/admin/responses.d.ts.map +1 -0
- package/dist/types/app-router/admin/sessionHandlers.d.ts +26 -0
- package/dist/types/app-router/admin/sessionHandlers.d.ts.map +1 -0
- package/dist/types/app-router/admin/ternsecureNextjsHandler.d.ts +7 -0
- package/dist/types/app-router/admin/ternsecureNextjsHandler.d.ts.map +1 -0
- package/dist/types/app-router/admin/types.d.ts +105 -0
- package/dist/types/app-router/admin/types.d.ts.map +1 -0
- package/dist/types/app-router/admin/utils.d.ts +53 -0
- package/dist/types/app-router/admin/utils.d.ts.map +1 -0
- package/dist/types/app-router/admin/validators.d.ts +46 -0
- package/dist/types/app-router/admin/validators.d.ts.map +1 -0
- package/dist/types/app-router/client/TernSecureProvider.d.ts.map +1 -1
- package/dist/types/app-router/server/auth.d.ts +26 -0
- package/dist/types/app-router/server/auth.d.ts.map +1 -0
- package/dist/types/app-router/server/utils.d.ts +5 -0
- package/dist/types/app-router/server/utils.d.ts.map +1 -0
- package/dist/types/boundary/components.d.ts +1 -1
- package/dist/types/boundary/components.d.ts.map +1 -1
- package/dist/types/constants.d.ts +11 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/errors.d.ts +1 -1
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/server/constant.d.ts +5 -0
- package/dist/types/server/constant.d.ts.map +1 -0
- package/dist/types/server/edge-session.d.ts +13 -1
- package/dist/types/server/edge-session.d.ts.map +1 -1
- package/dist/types/server/headers-utils.d.ts +10 -0
- package/dist/types/server/headers-utils.d.ts.map +1 -0
- package/dist/types/server/index.d.ts +6 -3
- package/dist/types/server/index.d.ts.map +1 -1
- package/dist/types/server/jwt-edge.d.ts +12 -18
- package/dist/types/server/jwt-edge.d.ts.map +1 -1
- package/dist/types/server/jwt.d.ts +12 -18
- package/dist/types/server/jwt.d.ts.map +1 -1
- package/dist/types/server/nextErrors.d.ts +54 -0
- package/dist/types/server/nextErrors.d.ts.map +1 -0
- package/dist/types/server/nextFetcher.d.ts +26 -0
- package/dist/types/server/nextFetcher.d.ts.map +1 -0
- package/dist/types/server/node/SessionTernSecure.d.ts +3 -0
- package/dist/types/server/node/SessionTernSecure.d.ts.map +1 -0
- package/dist/types/server/{auth.d.ts → node/auth.d.ts} +5 -5
- package/dist/types/server/node/auth.d.ts.map +1 -0
- package/dist/types/server/node/index.d.ts +3 -0
- package/dist/types/server/node/index.d.ts.map +1 -0
- package/dist/types/server/node/node-session.d.ts +4 -0
- package/dist/types/server/node/node-session.d.ts.map +1 -0
- package/dist/types/server/node/ternSecureNodeMiddleware.d.ts +54 -0
- package/dist/types/server/node/ternSecureNodeMiddleware.d.ts.map +1 -0
- package/dist/types/server/protect.d.ts +26 -0
- package/dist/types/server/protect.d.ts.map +1 -0
- package/dist/types/server/redirect.d.ts +20 -0
- package/dist/types/server/redirect.d.ts.map +1 -0
- package/dist/types/server/routeMatcher.d.ts +13 -0
- package/dist/types/server/routeMatcher.d.ts.map +1 -0
- package/dist/types/server/sdk-versions.d.ts +8 -0
- package/dist/types/server/sdk-versions.d.ts.map +1 -0
- package/dist/types/server/session-store.d.ts.map +1 -1
- package/dist/types/server/ternSecureEdgeMiddleware.d.ts +47 -0
- package/dist/types/server/ternSecureEdgeMiddleware.d.ts.map +1 -0
- package/dist/types/server/ternSecureFireMiddleware.d.ts +47 -0
- package/dist/types/server/ternSecureFireMiddleware.d.ts.map +1 -0
- package/dist/types/server/types.d.ts +16 -2
- package/dist/types/server/types.d.ts.map +1 -1
- package/dist/types/server/utils.d.ts +7 -0
- package/dist/types/server/utils.d.ts.map +1 -1
- package/dist/types/types.d.ts +33 -1
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils/NextCookieAdapter.d.ts +9 -0
- package/dist/types/utils/NextCookieAdapter.d.ts.map +1 -0
- package/dist/types/utils/allNextProviderProps.d.ts +1 -1
- package/dist/types/utils/allNextProviderProps.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts +17 -1
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/fireconfig.d.ts +4 -0
- package/dist/types/utils/fireconfig.d.ts.map +1 -0
- package/dist/types/utils/logger.d.ts +27 -0
- package/dist/types/utils/logger.d.ts.map +1 -0
- package/dist/types/utils/redis.d.ts +8 -0
- package/dist/types/utils/redis.d.ts.map +1 -0
- package/dist/types/utils/response.d.ts +3 -0
- package/dist/types/utils/response.d.ts.map +1 -0
- package/dist/types/utils/serverRedirectAuth.d.ts +6 -0
- package/dist/types/utils/serverRedirectAuth.d.ts.map +1 -0
- package/dist/types/utils/withLogger.d.ts +17 -0
- package/dist/types/utils/withLogger.d.ts.map +1 -0
- package/package.json +21 -7
- package/server/node/package.json +5 -0
- package/server/package.json +5 -0
- package/dist/cjs/app-router/admin/sessionHandler.js +0 -74
- package/dist/cjs/app-router/admin/sessionHandler.js.map +0 -1
- package/dist/cjs/app-router/client/actions.js +0 -4
- package/dist/cjs/app-router/client/actions.js.map +0 -1
- package/dist/cjs/components/uiComponents.js.map +0 -1
- package/dist/cjs/server/auth.js.map +0 -1
- package/dist/cjs/server/ternSecureMiddleware.js +0 -95
- package/dist/cjs/server/ternSecureMiddleware.js.map +0 -1
- package/dist/cjs/utils/tern-ui-script.js +0 -78
- package/dist/cjs/utils/tern-ui-script.js.map +0 -1
- package/dist/esm/app-router/admin/sessionHandler.js +0 -50
- package/dist/esm/app-router/admin/sessionHandler.js.map +0 -1
- package/dist/esm/app-router/client/actions.js +0 -3
- package/dist/esm/app-router/client/actions.js.map +0 -1
- package/dist/esm/components/uiComponents.js +0 -21
- package/dist/esm/components/uiComponents.js.map +0 -1
- package/dist/esm/server/auth.js.map +0 -1
- package/dist/esm/server/ternSecureMiddleware.js +0 -69
- package/dist/esm/server/ternSecureMiddleware.js.map +0 -1
- package/dist/esm/utils/tern-ui-script.js +0 -44
- package/dist/esm/utils/tern-ui-script.js.map +0 -1
- package/dist/types/app-router/admin/sessionHandler.d.ts +0 -3
- package/dist/types/app-router/admin/sessionHandler.d.ts.map +0 -1
- package/dist/types/app-router/client/actions.d.ts +0 -2
- package/dist/types/app-router/client/actions.d.ts.map +0 -1
- package/dist/types/components/uiComponents.d.ts +0 -6
- package/dist/types/components/uiComponents.d.ts.map +0 -1
- package/dist/types/server/auth.d.ts.map +0 -1
- package/dist/types/server/ternSecureMiddleware.d.ts +0 -20
- package/dist/types/server/ternSecureMiddleware.d.ts.map +0 -1
- package/dist/types/utils/tern-ui-script.d.ts +0 -9
- package/dist/types/utils/tern-ui-script.d.ts.map +0 -1
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
import type { NextRequest } from "next/server";
|
|
2
|
-
import type { SessionResult } from "./types";
|
|
2
|
+
import type { BaseUser, SessionResult } from "./types";
|
|
3
3
|
export declare function verifySession(request: NextRequest): Promise<SessionResult>;
|
|
4
|
+
/**
|
|
5
|
+
* Edge-compatible token verification using Firebase Auth REST API
|
|
6
|
+
*/
|
|
7
|
+
export declare function verifyTokenEdge(idToken: string): Promise<BaseUser | null>;
|
|
8
|
+
/**
|
|
9
|
+
* Edge-compatible session cookie verification
|
|
10
|
+
*/
|
|
11
|
+
export declare function verifySessionEdge(sessionCookie: string): Promise<BaseUser | null>;
|
|
12
|
+
/**
|
|
13
|
+
* Edge-compatible session verification using Firebase Auth REST API
|
|
14
|
+
*/
|
|
15
|
+
export declare function VerifySessionWithRestApi(request: NextRequest): Promise<SessionResult>;
|
|
4
16
|
//# sourceMappingURL=edge-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-session.d.ts","sourceRoot":"","sources":["../../../src/server/edge-session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"edge-session.d.ts","sourceRoot":"","sources":["../../../src/server/edge-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,KAAK,EAAE,QAAQ,EAAC,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtD,wBAAsB,aAAa,CACjC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA+B1B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA+B1B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,CAmDxB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { constants } from '@tern-secure/backend';
|
|
2
|
+
import type { NextRequest } from 'next/server';
|
|
3
|
+
import type { RequestLike } from './types';
|
|
4
|
+
export declare function getCustomAttributeFromRequest(req: RequestLike, key: string): string | null | undefined;
|
|
5
|
+
export declare function getAuthKeyFromRequest(req: RequestLike, key: keyof typeof constants.Attributes): string | null | undefined;
|
|
6
|
+
export declare function getHeader(req: RequestLike, name: string): string | null | undefined;
|
|
7
|
+
export declare function detectClerkMiddleware(req: RequestLike): boolean;
|
|
8
|
+
export declare function isNextRequest(val: unknown): val is NextRequest;
|
|
9
|
+
export declare function isRequestWebAPI(val: unknown): val is Request;
|
|
10
|
+
//# sourceMappingURL=headers-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headers-utils.d.ts","sourceRoot":"","sources":["../../../src/server/headers-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAGtG;AAED,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,OAAO,SAAS,CAAC,UAAU,GACrC,MAAM,GAAG,IAAI,GAAG,SAAS,CAE3B;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CASnF;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAE/D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAW9D;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAO5D"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
export { ternSecureMiddleware,
|
|
2
|
-
export {
|
|
3
|
-
export
|
|
1
|
+
export { ternSecureMiddleware, } from "./ternSecureEdgeMiddleware";
|
|
2
|
+
export { createRouteMatcher } from "./routeMatcher";
|
|
3
|
+
export { auth } from "../app-router/server/auth";
|
|
4
|
+
export type { AuthResult } from "../app-router/server/auth";
|
|
5
|
+
export type { BaseUser, SessionResult } from "./types";
|
|
6
|
+
export { NextCookieStore } from "../utils/NextCookieAdapter";
|
|
4
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,IAAI,EACL,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
interface FirebaseTokenResult {
|
|
2
2
|
valid: boolean;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
email?: undefined;
|
|
15
|
-
emailVerified?: undefined;
|
|
16
|
-
authTime?: undefined;
|
|
17
|
-
issuedAt?: undefined;
|
|
18
|
-
expiresAt?: undefined;
|
|
19
|
-
}>;
|
|
3
|
+
tenant?: string;
|
|
4
|
+
uid?: string;
|
|
5
|
+
email?: string | null;
|
|
6
|
+
emailVerified?: boolean;
|
|
7
|
+
authTime?: number;
|
|
8
|
+
issuedAt?: number;
|
|
9
|
+
expiresAt?: number;
|
|
10
|
+
error?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function verifyFirebaseToken(token: string, isSessionCookie?: boolean): Promise<FirebaseTokenResult>;
|
|
13
|
+
export {};
|
|
20
14
|
//# sourceMappingURL=jwt-edge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt-edge.d.ts","sourceRoot":"","sources":["../../../src/server/jwt-edge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jwt-edge.d.ts","sourceRoot":"","sources":["../../../src/server/jwt-edge.ts"],"names":[],"mappings":"AAsBA,UAAU,mBAAmB;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAoCD,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAmG9G"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
interface FirebaseTokenResult {
|
|
2
2
|
valid: boolean;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
email?: undefined;
|
|
15
|
-
emailVerified?: undefined;
|
|
16
|
-
authTime?: undefined;
|
|
17
|
-
issuedAt?: undefined;
|
|
18
|
-
expiresAt?: undefined;
|
|
19
|
-
}>;
|
|
3
|
+
tenant?: string;
|
|
4
|
+
uid?: string;
|
|
5
|
+
email?: string | null;
|
|
6
|
+
emailVerified?: boolean;
|
|
7
|
+
authTime?: number;
|
|
8
|
+
issuedAt?: number;
|
|
9
|
+
expiresAt?: number;
|
|
10
|
+
error?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function verifyFirebaseToken(token: string, isSessionCookie?: boolean): Promise<FirebaseTokenResult>;
|
|
13
|
+
export {};
|
|
20
14
|
//# sourceMappingURL=jwt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../src/server/jwt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../src/server/jwt.ts"],"names":[],"mappings":"AAsBA,UAAU,mBAAmB;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAsCD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,eAAe,UAAQ,GACtB,OAAO,CAAC,mBAAmB,CAAC,CA+F9B"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
declare const CONTROL_FLOW_ERROR: {
|
|
2
|
+
REDIRECT_TO_URL: string;
|
|
3
|
+
REDIRECT_TO_SIGN_IN: string;
|
|
4
|
+
REDIRECT_TO_SIGN_UP: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* In-house implementation of `notFound()`
|
|
8
|
+
* https://github.com/vercel/next.js/blob/canary/packages/next/src/client/components/not-found.ts
|
|
9
|
+
*/
|
|
10
|
+
declare const LEGACY_NOT_FOUND_ERROR_CODE = "NEXT_NOT_FOUND";
|
|
11
|
+
type LegacyNotFoundError = Error & {
|
|
12
|
+
digest: typeof LEGACY_NOT_FOUND_ERROR_CODE;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Checks for the error thrown from `notFound()` for versions <= next@15.0.4
|
|
16
|
+
*/
|
|
17
|
+
declare function isLegacyNextjsNotFoundError(error: unknown): error is LegacyNotFoundError;
|
|
18
|
+
export declare const HTTP_ERROR_FALLBACK_ERROR_CODE = "NEXT_HTTP_ERROR_FALLBACK";
|
|
19
|
+
export type HTTPAccessFallbackError = Error & {
|
|
20
|
+
digest: `${typeof HTTP_ERROR_FALLBACK_ERROR_CODE};${string}`;
|
|
21
|
+
};
|
|
22
|
+
export declare function isHTTPAccessFallbackError(error: unknown): error is HTTPAccessFallbackError;
|
|
23
|
+
export declare function whichHTTPAccessFallbackError(error: unknown): number | undefined;
|
|
24
|
+
declare function isNextjsNotFoundError(error: unknown): error is LegacyNotFoundError | HTTPAccessFallbackError;
|
|
25
|
+
/**
|
|
26
|
+
* In-house implementation of `redirect()` extended with a `tern_digest` property
|
|
27
|
+
* https://github.com/vercel/next.js/blob/canary/packages/next/src/client/components/redirect.ts
|
|
28
|
+
*/
|
|
29
|
+
declare const REDIRECT_ERROR_CODE = "NEXT_REDIRECT";
|
|
30
|
+
type RedirectError<T = unknown> = Error & {
|
|
31
|
+
digest: `${typeof REDIRECT_ERROR_CODE};${'replace'};${string};${307};`;
|
|
32
|
+
tern_digest: typeof CONTROL_FLOW_ERROR.REDIRECT_TO_URL | typeof CONTROL_FLOW_ERROR.REDIRECT_TO_SIGN_IN;
|
|
33
|
+
} & T;
|
|
34
|
+
declare function nextjsRedirectError(url: string, extra: Record<string, unknown>, type?: 'replace', statusCode?: 307): never;
|
|
35
|
+
declare function redirectToSignInError(url: string, returnBackUrl?: string | URL | null): never;
|
|
36
|
+
declare function redirectToSignUpError(url: string, returnBackUrl?: string | URL | null): never;
|
|
37
|
+
/**
|
|
38
|
+
* Checks an error to determine if it's an error generated by the
|
|
39
|
+
* `redirect(url)` helper.
|
|
40
|
+
*
|
|
41
|
+
* @param error the error that may reference a redirect error
|
|
42
|
+
* @returns true if the error is a redirect error
|
|
43
|
+
*/
|
|
44
|
+
declare function isNextjsRedirectError(error: unknown): error is RedirectError<{
|
|
45
|
+
redirectUrl: string | URL;
|
|
46
|
+
}>;
|
|
47
|
+
declare function isRedirectToSignInError(error: unknown): error is RedirectError<{
|
|
48
|
+
returnBackUrl: string | URL;
|
|
49
|
+
}>;
|
|
50
|
+
declare function isRedirectToSignUpError(error: unknown): error is RedirectError<{
|
|
51
|
+
returnBackUrl: string | URL;
|
|
52
|
+
}>;
|
|
53
|
+
export { isNextjsNotFoundError, isLegacyNextjsNotFoundError, redirectToSignInError, redirectToSignUpError, nextjsRedirectError, isNextjsRedirectError, isRedirectToSignInError, isRedirectToSignUpError, };
|
|
54
|
+
//# sourceMappingURL=nextErrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nextErrors.d.ts","sourceRoot":"","sources":["../../../src/server/nextErrors.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,kBAAkB;;;;CAIvB,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,2BAA2B,mBAAmB,CAAC;AAErD,KAAK,mBAAmB,GAAG,KAAK,GAAG;IACjC,MAAM,EAAE,OAAO,2BAA2B,CAAC;CAC5C,CAAC;AAEF;;GAEG;AACH,iBAAS,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAMjF;AAUD,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AAEzE,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG;IAC5C,MAAM,EAAE,GAAG,OAAO,8BAA8B,IAAI,MAAM,EAAE,CAAC;CAC9D,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,uBAAuB,CAO1F;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAO/E;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,GAAG,uBAAuB,CAMrG;AAED;;;GAGG;AAEH,QAAA,MAAM,mBAAmB,kBAAkB,CAAC;AAE5C,KAAK,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG;IACxC,MAAM,EAAE,GAAG,OAAO,mBAAmB,IAAI,SAAS,IAAI,MAAM,IAAI,GAAG,GAAG,CAAC;IACvE,WAAW,EAAE,OAAO,kBAAkB,CAAC,eAAe,GAAG,OAAO,kBAAkB,CAAC,mBAAmB,CAAC;CACxG,GAAG,CAAC,CAAC;AAEN,iBAAS,mBAAmB,CAC1B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,IAAI,GAAE,SAAqB,EAC3B,UAAU,GAAE,GAAS,GACpB,KAAK,CAMP;AAMD,iBAAS,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAKtF;AAED,iBAAS,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAKtF;AAED;;;;;;GAMG;AACH,iBAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAAC;IAAE,WAAW,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC,CAmBpG;AAED,iBAAS,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAAC;IAAE,aAAa,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC,CAMxG;AAED,iBAAS,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAAC;IAAE,aAAa,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC,CAMxG;AAED,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,GACxB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
type Fetcher = typeof globalThis.fetch;
|
|
2
|
+
/**
|
|
3
|
+
* Based on nextjs internal implementation https://github.com/vercel/next.js/blob/6185444e0a944a82e7719ac37dad8becfed86acd/packages/next/src/server/lib/patch-fetch.ts#L23
|
|
4
|
+
*/
|
|
5
|
+
type NextFetcher = Fetcher & {
|
|
6
|
+
readonly __nextPatched: true;
|
|
7
|
+
readonly __nextGetStaticStore: () => {
|
|
8
|
+
getStore: () => StaticGenerationAsyncStorage | undefined;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Full type can be found https://github.com/vercel/next.js/blob/6185444e0a944a82e7719ac37dad8becfed86acd/packages/next/src/client/components/static-generation-async-storage.external.ts#L4
|
|
13
|
+
*/
|
|
14
|
+
interface StaticGenerationAsyncStorage {
|
|
15
|
+
/**
|
|
16
|
+
* Available for Next 14
|
|
17
|
+
*/
|
|
18
|
+
readonly pagePath?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Available for Next 15
|
|
21
|
+
*/
|
|
22
|
+
readonly page?: string;
|
|
23
|
+
}
|
|
24
|
+
declare function isNextFetcher(fetch: Fetcher | NextFetcher): fetch is NextFetcher;
|
|
25
|
+
export { isNextFetcher };
|
|
26
|
+
//# sourceMappingURL=nextFetcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nextFetcher.d.ts","sourceRoot":"","sources":["../../../src/server/nextFetcher.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG,OAAO,UAAU,CAAC,KAAK,CAAC;AAEvC;;GAEG;AACH,KAAK,WAAW,GAAG,OAAO,GAAG;IAC3B,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAC7B,QAAQ,CAAC,oBAAoB,EAAE,MAAM;QAAE,QAAQ,EAAE,MAAM,4BAA4B,GAAG,SAAS,CAAA;KAAE,CAAC;CACnG,CAAC;AAEF;;GAEG;AACH,UAAU,4BAA4B;IACpC;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,IAAI,WAAW,CAEzE;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionTernSecure.d.ts","sourceRoot":"","sources":["../../../../src/server/node/SessionTernSecure.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,sBAAsB,CAAC,CA0BjC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BaseUser } from "../../types";
|
|
2
2
|
export interface AuthResult {
|
|
3
|
-
user:
|
|
3
|
+
user: BaseUser | null;
|
|
4
4
|
error: Error | null;
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
-
* Get the current authenticated user from the session
|
|
7
|
+
* Get the current authenticated user from the session cookies
|
|
8
8
|
*/
|
|
9
9
|
export declare const auth: () => Promise<AuthResult>;
|
|
10
10
|
/**
|
|
@@ -14,10 +14,10 @@ export declare const isAuthenticated: () => Promise<boolean>;
|
|
|
14
14
|
/**
|
|
15
15
|
* Get user info from auth result
|
|
16
16
|
*/
|
|
17
|
-
export declare const getUser: () => Promise<
|
|
17
|
+
export declare const getUser: () => Promise<BaseUser | null>;
|
|
18
18
|
/**
|
|
19
19
|
* Require authentication
|
|
20
20
|
* Throws error if not authenticated
|
|
21
21
|
*/
|
|
22
|
-
export declare const requireAuth: () => Promise<
|
|
22
|
+
export declare const requireAuth: () => Promise<BaseUser>;
|
|
23
23
|
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/server/node/auth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,IAAI,QAAmB,OAAO,CAAC,UAAU,CA4CpD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe,QAAmB,OAAO,CAAC,OAAO,CAG5D,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,OAAO,QAAmB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAG5D,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,WAAW,QAAmB,OAAO,CAAC,QAAQ,CAQzD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/node/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,IAAI,EACJ,OAAO,EACP,eAAe,EACf,WAAW,EACX,KAAK,UAAU,GAChB,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-session.d.ts","sourceRoot":"","sources":["../../../../src/server/node/node-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,wBAAsB,aAAa,CACjC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,CAmCxB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { NextMiddleware, NextRequest } from "next/server";
|
|
2
|
+
import type { BaseUser, NextMiddlewareEvtParam, NextMiddlewareRequestParam, NextMiddlewareReturn } from "../types";
|
|
3
|
+
type RedirectToParams = {
|
|
4
|
+
returnBackUrl?: string | URL | null;
|
|
5
|
+
};
|
|
6
|
+
export type RedirectFun<ReturnType> = (params?: RedirectToParams) => ReturnType;
|
|
7
|
+
export type AuthObject = {
|
|
8
|
+
user: BaseUser | null;
|
|
9
|
+
session: string | null;
|
|
10
|
+
};
|
|
11
|
+
export interface MiddlewareAuth extends AuthObject {
|
|
12
|
+
(): Promise<MiddlewareAuthObject>;
|
|
13
|
+
protect: () => Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
type MiddlewareHandler = (auth: MiddlewareAuth, request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam) => NextMiddlewareReturn;
|
|
16
|
+
export type MiddlewareAuthObject = AuthObject & {
|
|
17
|
+
redirectToSignIn: RedirectFun<Response>;
|
|
18
|
+
redirectToSignUp: RedirectFun<Response>;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Create a route matcher function for public paths
|
|
22
|
+
*/
|
|
23
|
+
export declare const createRouteMatcher: (patterns: string[]) => (request: NextRequest) => boolean;
|
|
24
|
+
export interface MiddlewareOptions {
|
|
25
|
+
signInUrl?: string;
|
|
26
|
+
signUpUrl?: string;
|
|
27
|
+
debug?: boolean;
|
|
28
|
+
}
|
|
29
|
+
type MiddlewareOptionsCallback = (req: NextRequest) => MiddlewareOptions | Promise<MiddlewareOptions>;
|
|
30
|
+
interface TernSecureMiddleware {
|
|
31
|
+
/**
|
|
32
|
+
* @example
|
|
33
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, options);
|
|
34
|
+
*/
|
|
35
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptions): NextMiddleware;
|
|
36
|
+
/**
|
|
37
|
+
* @example
|
|
38
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, (req) => options);
|
|
39
|
+
*/
|
|
40
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptionsCallback): NextMiddleware;
|
|
41
|
+
/**
|
|
42
|
+
* @example
|
|
43
|
+
* export default ternSecureMiddleware(options);
|
|
44
|
+
*/
|
|
45
|
+
(options?: MiddlewareOptions): NextMiddleware;
|
|
46
|
+
/**
|
|
47
|
+
* @example
|
|
48
|
+
* export default ternSecureMiddleware;
|
|
49
|
+
*/
|
|
50
|
+
(request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam): NextMiddlewareReturn;
|
|
51
|
+
}
|
|
52
|
+
export declare const ternSecureMiddleware: TernSecureMiddleware;
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=ternSecureNodeMiddleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ternSecureNodeMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/server/node/ternSecureNodeMiddleware.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAC,WAAW,EAAE,MAAM,aAAa,CAAC;AAY9D,OAAO,KAAK,EAAE,QAAQ,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAElB,KAAK,gBAAgB,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;CAAE,CAAC;AAChE,MAAM,MAAM,WAAW,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,UAAU,CAAC;AAEhF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAClC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,KAAK,iBAAiB,GAAG,CACvB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,KAC1B,oBAAoB,CAAC;AAE1B,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACxC,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,UAAU,MAAM,EAAE,MAC3C,SAAS,WAAW,KAAG,OAUhC,CAAC;AA8BF,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AACD,KAAK,yBAAyB,GAAG,CAC/B,GAAG,EAAE,WAAW,KACb,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEpD,UAAU,oBAAoB;IAC5B;;;OAGG;IACH,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAE1E;;;OAGG;IACH,CACE,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,yBAAyB,GAClC,cAAc,CAAC;IAElB;;;OAGG;IACH,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAC9C;;;OAGG;IACH,CACE,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,GAC5B,oBAAoB,CAAC;CACzB;AAED,eAAO,MAAM,oBAAoB,EAmF3B,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { AuthObject, SignedInAuthObject } from "@tern-secure/backend";
|
|
2
|
+
import type { CheckAuthorizationFromSessionClaims } from "@tern-secure/types";
|
|
3
|
+
import type { RedirectFun } from "./redirect";
|
|
4
|
+
type AuthProtectOptions = {
|
|
5
|
+
/**
|
|
6
|
+
* The URL to redirect the user to if they are not authorized.
|
|
7
|
+
*/
|
|
8
|
+
unauthorizedUrl?: string;
|
|
9
|
+
/**
|
|
10
|
+
* The URL to redirect the user to if they are not authenticated.
|
|
11
|
+
*/
|
|
12
|
+
unauthenticatedUrl?: string;
|
|
13
|
+
};
|
|
14
|
+
export interface AuthProtect {
|
|
15
|
+
(params?: (require: CheckAuthorizationFromSessionClaims) => boolean, options?: AuthProtectOptions): Promise<SignedInAuthObject>;
|
|
16
|
+
(options?: AuthProtectOptions): Promise<SignedInAuthObject>;
|
|
17
|
+
}
|
|
18
|
+
export declare function createProtect(opts: {
|
|
19
|
+
request: Request;
|
|
20
|
+
authObject: AuthObject;
|
|
21
|
+
notFound: () => never;
|
|
22
|
+
redirect: (url: string) => void;
|
|
23
|
+
redirectToSignIn: RedirectFun<unknown>;
|
|
24
|
+
}): AuthProtect;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=protect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protect.d.ts","sourceRoot":"","sources":["../../../src/server/protect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AAI9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,kBAAkB,GAAG;IACxB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,CACE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,mCAAmC,KAAK,OAAO,EAClE,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAC7D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,gBAAgB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACxC,GAAG,WAAW,CAkDd"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type RedirectAdapter<RedirectReturn> = (url: string) => RedirectReturn;
|
|
2
|
+
type RedirectToParams = {
|
|
3
|
+
returnBackUrl?: string | URL | null;
|
|
4
|
+
};
|
|
5
|
+
export type RedirectFun<ReturnType> = (params?: RedirectToParams) => ReturnType;
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
type CreateRedirect = <ReturnType>(params: {
|
|
10
|
+
redirectAdapter: RedirectAdapter<ReturnType>;
|
|
11
|
+
baseUrl: URL | string;
|
|
12
|
+
signInUrl?: URL | string;
|
|
13
|
+
signUpUrl?: URL | string;
|
|
14
|
+
}) => {
|
|
15
|
+
redirectToSignIn: RedirectFun<ReturnType>;
|
|
16
|
+
redirectToSignUp: RedirectFun<ReturnType>;
|
|
17
|
+
};
|
|
18
|
+
export declare const createRedirect: CreateRedirect;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=redirect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redirect.d.ts","sourceRoot":"","sources":["../../../src/server/redirect.ts"],"names":[],"mappings":"AA2CA,KAAK,eAAe,CAAC,cAAc,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,cAAc,CAAC;AACvE,KAAK,gBAAgB,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;CAAE,CAAC;AAChE,MAAM,MAAM,WAAW,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,UAAU,CAAC;AAEhF;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE;IACzC,eAAe,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,EAAE,GAAG,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;CAC1B,KAAK;IACJ,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1C,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CAC3C,CAAC;AAGF,eAAO,MAAM,cAAc,EAAE,cAqC5B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type WithPathPatternWildcard } from '@tern-secure/shared/pathMatcher';
|
|
2
|
+
import type { Autocomplete } from '@tern-secure/types';
|
|
3
|
+
import type Link from 'next/link';
|
|
4
|
+
import type { NextRequest } from 'next/server';
|
|
5
|
+
type NextTypedRoute<T = Parameters<typeof Link>['0']['href']> = T extends string ? T : never;
|
|
6
|
+
type RouteMatcherWithNextTypedRoutes = Autocomplete<WithPathPatternWildcard<NextTypedRoute> | NextTypedRoute>;
|
|
7
|
+
export type RouteMatcherParams = Array<RegExp | RouteMatcherWithNextTypedRoutes> | RouteMatcherWithNextTypedRoutes | RegExp | ((req: NextRequest) => boolean);
|
|
8
|
+
/**
|
|
9
|
+
* Create a route matcher function for public paths
|
|
10
|
+
*/
|
|
11
|
+
export declare const createRouteMatcher: (routes: RouteMatcherParams) => (request: NextRequest) => boolean;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=routeMatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routeMatcher.d.ts","sourceRoot":"","sources":["../../../src/server/routeMatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAClG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,KAAK,cAAc,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC;AAC7F,KAAK,+BAA+B,GAAG,YAAY,CACjD,uBAAuB,CAAC,cAAc,CAAC,GAAG,cAAc,CACzD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,KAAK,CAAC,MAAM,GAAG,+BAA+B,CAAC,GAC/C,+BAA+B,GAC/B,MAAM,GACN,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AACpC;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,kBAAkB,eAExC,WAAW,YAK/B,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
declare const isNext13: boolean;
|
|
2
|
+
/**
|
|
3
|
+
* Those versions are affected by a bundling issue that will break the application if `node:fs` is used inside a server function.
|
|
4
|
+
* The affected versions are >=next@13.5.4 and <=next@14.0.4
|
|
5
|
+
*/
|
|
6
|
+
declare const isNextWithUnstableServerActions: boolean;
|
|
7
|
+
export { isNext13, isNextWithUnstableServerActions };
|
|
8
|
+
//# sourceMappingURL=sdk-versions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-versions.d.ts","sourceRoot":"","sources":["../../../src/server/sdk-versions.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,QAAQ,SAAoC,CAAC;AAEnD;;;GAGG;AACH,QAAA,MAAM,+BAA+B,SAAiD,CAAC;AAEvF,OAAO,EAAE,QAAQ,EAAE,+BAA+B,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../../src/server/session-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../../src/server/session-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAEnC;;;GAGG;AACH,cAAM,YAAY;IAChB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,gBAAgB,CAAsB;IAE9C,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,YAAY;IAOlC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI;IAMrC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvC,cAAc,IAAI,IAAI,GAAG,IAAI;IAK7B,UAAU,CAAC,SAAS,EAAE,MAAM;IAI5B,KAAK;IAIL,KAAK;;;;;CAON;AAGD,eAAO,MAAM,YAAY,cAA6B,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,eAAe,cAAqB,MAAM,KAAG,IAAI,GAAG,IAE/D,CAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { AuthObject, RequestOptions } from '@tern-secure/backend';
|
|
2
|
+
import type { TernSecureConfig } from '@tern-secure/types';
|
|
3
|
+
import type { NextMiddleware, NextRequest } from 'next/server';
|
|
4
|
+
import { NextResponse } from 'next/server';
|
|
5
|
+
import { type AuthProtect } from './protect';
|
|
6
|
+
import { type RedirectFun } from './redirect';
|
|
7
|
+
import type { NextMiddlewareEvtParam, NextMiddlewareRequestParam, NextMiddlewareReturn } from './types';
|
|
8
|
+
export type MiddlewareAuthObject = AuthObject & {
|
|
9
|
+
redirectToSignIn: RedirectFun<Response>;
|
|
10
|
+
redirectToSignUp: RedirectFun<Response>;
|
|
11
|
+
};
|
|
12
|
+
export interface MiddlewareAuth {
|
|
13
|
+
(): Promise<MiddlewareAuthObject>;
|
|
14
|
+
protect: AuthProtect;
|
|
15
|
+
}
|
|
16
|
+
type MiddlewareHandler = (auth: MiddlewareAuth, request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam) => NextMiddlewareReturn;
|
|
17
|
+
export interface MiddlewareOptions extends RequestOptions {
|
|
18
|
+
debug?: boolean;
|
|
19
|
+
firebaseOptions?: TernSecureConfig;
|
|
20
|
+
}
|
|
21
|
+
type MiddlewareOptionsCallback = (req: NextRequest) => MiddlewareOptions | Promise<MiddlewareOptions>;
|
|
22
|
+
interface TernSecureMiddleware {
|
|
23
|
+
/**
|
|
24
|
+
* @example
|
|
25
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, options);
|
|
26
|
+
*/
|
|
27
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptions): NextMiddleware;
|
|
28
|
+
/**
|
|
29
|
+
* @example
|
|
30
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, (req) => options);
|
|
31
|
+
*/
|
|
32
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptionsCallback): NextMiddleware;
|
|
33
|
+
/**
|
|
34
|
+
* @example
|
|
35
|
+
* export default ternSecureMiddleware(options);
|
|
36
|
+
*/
|
|
37
|
+
(options?: MiddlewareOptions): NextMiddleware;
|
|
38
|
+
/**
|
|
39
|
+
* @example
|
|
40
|
+
* export default ternSecureMiddleware;
|
|
41
|
+
*/
|
|
42
|
+
(request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam): NextMiddlewareReturn;
|
|
43
|
+
}
|
|
44
|
+
export declare const ternSecureMiddleware: TernSecureMiddleware;
|
|
45
|
+
export declare const redirectAdapter: (url: string | URL) => NextResponse<unknown>;
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=ternSecureEdgeMiddleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ternSecureEdgeMiddleware.d.ts","sourceRoot":"","sources":["../../../src/server/ternSecureEdgeMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAO9B,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAC,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAe3C,OAAO,EAAE,KAAK,WAAW,EAAgB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACxC,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAElC,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,KAAK,iBAAiB,GAAG,CACvB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,KAC1B,oBAAoB,CAAC;AAE1B,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC;AACD,KAAK,yBAAyB,GAAG,CAC/B,GAAG,EAAE,WAAW,KACb,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEpD,UAAU,oBAAoB;IAC5B;;;OAGG;IACH,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAE1E;;;OAGG;IACH,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,cAAc,CAAC;IAElF;;;OAGG;IACH,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAC9C;;;OAGG;IACH,CAAC,OAAO,EAAE,0BAA0B,EAAE,KAAK,EAAE,sBAAsB,GAAG,oBAAoB,CAAC;CAC5F;AAkBD,eAAO,MAAM,oBAAoB,EA0G3B,oBAAoB,CAAC;AA0E3B,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,GAAG,0BAIhD,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { AuthObject, RequestOptions } from '@tern-secure/backend';
|
|
2
|
+
import type { TernSecureConfig } from '@tern-secure/types';
|
|
3
|
+
import type { NextMiddleware, NextRequest } from 'next/server';
|
|
4
|
+
import { NextResponse } from 'next/server';
|
|
5
|
+
import { type AuthProtect } from './protect';
|
|
6
|
+
import { type RedirectFun } from './redirect';
|
|
7
|
+
import type { NextMiddlewareEvtParam, NextMiddlewareRequestParam, NextMiddlewareReturn } from './types';
|
|
8
|
+
export type MiddlewareAuthObject = AuthObject & {
|
|
9
|
+
redirectToSignIn: RedirectFun<Response>;
|
|
10
|
+
redirectToSignUp: RedirectFun<Response>;
|
|
11
|
+
};
|
|
12
|
+
export interface MiddlewareAuth {
|
|
13
|
+
(): Promise<MiddlewareAuthObject>;
|
|
14
|
+
protect: AuthProtect;
|
|
15
|
+
}
|
|
16
|
+
type MiddlewareHandler = (auth: MiddlewareAuth, request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam) => NextMiddlewareReturn;
|
|
17
|
+
export interface MiddlewareOptions extends RequestOptions {
|
|
18
|
+
debug?: boolean;
|
|
19
|
+
firebaseOptions?: TernSecureConfig;
|
|
20
|
+
}
|
|
21
|
+
type MiddlewareOptionsCallback = (req: NextRequest) => MiddlewareOptions | Promise<MiddlewareOptions>;
|
|
22
|
+
interface TernSecureMiddleware {
|
|
23
|
+
/**
|
|
24
|
+
* @example
|
|
25
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, options);
|
|
26
|
+
*/
|
|
27
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptions): NextMiddleware;
|
|
28
|
+
/**
|
|
29
|
+
* @example
|
|
30
|
+
* export default ternSecureMiddleware((auth, request, event) => { ... }, (req) => options);
|
|
31
|
+
*/
|
|
32
|
+
(handler: MiddlewareHandler, options?: MiddlewareOptionsCallback): NextMiddleware;
|
|
33
|
+
/**
|
|
34
|
+
* @example
|
|
35
|
+
* export default ternSecureMiddleware(options);
|
|
36
|
+
*/
|
|
37
|
+
(options?: MiddlewareOptions): NextMiddleware;
|
|
38
|
+
/**
|
|
39
|
+
* @example
|
|
40
|
+
* export default ternSecureMiddleware;
|
|
41
|
+
*/
|
|
42
|
+
(request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam): NextMiddlewareReturn;
|
|
43
|
+
}
|
|
44
|
+
export declare const ternSecureMiddleware: TernSecureMiddleware;
|
|
45
|
+
export declare const redirectAdapter: (url: string | URL) => NextResponse<unknown>;
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=ternSecureFireMiddleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ternSecureFireMiddleware.d.ts","sourceRoot":"","sources":["../../../src/server/ternSecureFireMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAC,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAc3C,OAAO,EAAE,KAAK,WAAW,EAAgB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACxC,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAElC,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,KAAK,iBAAiB,GAAG,CACvB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,KAC1B,oBAAoB,CAAC;AAE1B,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC;AACD,KAAK,yBAAyB,GAAG,CAC/B,GAAG,EAAE,WAAW,KACb,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEpD,UAAU,oBAAoB;IAC5B;;;OAGG;IACH,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAE1E;;;OAGG;IACH,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,cAAc,CAAC;IAElF;;;OAGG;IACH,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC;IAC9C;;;OAGG;IACH,CAAC,OAAO,EAAE,0BAA0B,EAAE,KAAK,EAAE,sBAAsB,GAAG,oBAAoB,CAAC;CAC5F;AAkBD,eAAO,MAAM,oBAAoB,EAkF3B,oBAAoB,CAAC;AAmE3B,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,GAAG,0BAIhD,CAAC"}
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
import type { TernSecureUser } from "@tern-secure/types";
|
|
2
|
+
import type { IncomingMessage } from "http";
|
|
3
|
+
import type { NextApiRequest } from "next";
|
|
4
|
+
import type { NextApiRequestCookies } from "next/dist/server/api-utils";
|
|
5
|
+
import type { NextMiddleware, NextRequest } from "next/server";
|
|
6
|
+
type GsspRequest = IncomingMessage & {
|
|
7
|
+
cookies: NextApiRequestCookies;
|
|
8
|
+
};
|
|
9
|
+
export type RequestLike = NextRequest | NextApiRequest | GsspRequest;
|
|
10
|
+
export type NextMiddlewareRequestParam = Parameters<NextMiddleware>["0"];
|
|
11
|
+
export type NextMiddlewareReturn = ReturnType<NextMiddleware>;
|
|
12
|
+
export type NextMiddlewareEvtParam = Parameters<NextMiddleware>["1"];
|
|
1
13
|
export interface User {
|
|
2
14
|
uid: string;
|
|
3
15
|
email: string | null;
|
|
@@ -5,10 +17,11 @@ export interface User {
|
|
|
5
17
|
authTime?: number;
|
|
6
18
|
disabled?: boolean;
|
|
7
19
|
}
|
|
8
|
-
export interface
|
|
20
|
+
export interface BaseUser {
|
|
9
21
|
uid: string;
|
|
10
22
|
email: string | null;
|
|
11
23
|
emailVerified?: boolean;
|
|
24
|
+
tenantId: string | null;
|
|
12
25
|
authTime?: number;
|
|
13
26
|
disabled?: boolean;
|
|
14
27
|
}
|
|
@@ -20,7 +33,8 @@ export interface SessionUser {
|
|
|
20
33
|
}
|
|
21
34
|
export interface SessionResult {
|
|
22
35
|
isAuthenticated: boolean;
|
|
23
|
-
user:
|
|
36
|
+
user: BaseUser | null;
|
|
24
37
|
error?: string;
|
|
25
38
|
}
|
|
39
|
+
export type { TernSecureUser };
|
|
26
40
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/D,KAAK,WAAW,GAAG,eAAe,GAAG;IAAE,OAAO,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,WAAW,CAAC;AAErE,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AACzE,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAC9D,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AAGrE,MAAM,WAAW,IAAI;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,YAAY,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { RequestState, TernSecureRequest } from "@tern-secure/backend";
|
|
2
|
+
import { NextRequest, NextResponse } from 'next/server';
|
|
1
3
|
import type { User } from "./types";
|
|
2
4
|
interface RequestContext {
|
|
3
5
|
user: User;
|
|
@@ -18,5 +20,10 @@ export declare class Store {
|
|
|
18
20
|
};
|
|
19
21
|
static cleanup(): void;
|
|
20
22
|
}
|
|
23
|
+
export declare const setRequestHeadersOnNextResponse: (res: NextResponse | Response, req: Request, newHeaders: Record<string, string>) => void;
|
|
24
|
+
export declare function decorateRequest(req: TernSecureRequest, res: Response, requestState: RequestState): Response;
|
|
25
|
+
export declare const isPrerenderingBailout: (e: unknown) => boolean;
|
|
26
|
+
export declare function buildRequestLike(): Promise<NextRequest>;
|
|
27
|
+
export declare function getScriptNonceFromHeader(cspHeaderValue: string): string | undefined;
|
|
21
28
|
export {};
|
|
22
29
|
//# sourceMappingURL=utils.d.ts.map
|