@tern-secure/nextjs 5.2.0-canary.v20251030165007 → 5.2.0-canary.v20251125170702
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/app-router/admin/actions.js +5 -0
- package/dist/cjs/app-router/admin/actions.js.map +1 -1
- package/dist/cjs/app-router/admin/cookieOptionsHelper.js +28 -16
- package/dist/cjs/app-router/admin/cookieOptionsHelper.js.map +1 -1
- package/dist/cjs/app-router/admin/endpointRouter.js +10 -1
- package/dist/cjs/app-router/admin/endpointRouter.js.map +1 -1
- package/dist/cjs/app-router/admin/request.js +6 -1
- package/dist/cjs/app-router/admin/request.js.map +1 -1
- package/dist/cjs/app-router/admin/sessionHandlers.js +79 -7
- package/dist/cjs/app-router/admin/sessionHandlers.js.map +1 -1
- package/dist/cjs/app-router/admin/signInCreateHandler.js +213 -0
- package/dist/cjs/app-router/admin/signInCreateHandler.js.map +1 -0
- package/dist/cjs/app-router/admin/types.js +33 -11
- package/dist/cjs/app-router/admin/types.js.map +1 -1
- package/dist/cjs/app-router/client/TernSecureProvider.js +5 -1
- package/dist/cjs/app-router/client/TernSecureProvider.js.map +1 -1
- package/dist/cjs/app-router/server/TernSecureProvider.js +1 -1
- package/dist/cjs/app-router/server/TernSecureProvider.js.map +1 -1
- package/dist/cjs/app-router/server/auth.js +1 -1
- package/dist/cjs/app-router/server/auth.js.map +1 -1
- package/dist/cjs/boundary/components.js +2 -12
- package/dist/cjs/boundary/components.js.map +1 -1
- package/dist/cjs/{app-router/server/auth_new.js → components/uiComponents.js} +18 -17
- package/dist/cjs/components/uiComponents.js.map +1 -0
- package/dist/cjs/index.js +9 -15
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/server/data/getAuthDataFromRequest.js +15 -15
- package/dist/cjs/server/data/getAuthDataFromRequest.js.map +1 -1
- package/dist/cjs/server/index.js +3 -6
- package/dist/cjs/server/index.js.map +1 -1
- package/dist/cjs/server/{ternSecureEdgeMiddleware.js → ternSecureProxy.js} +32 -9
- package/dist/cjs/server/ternSecureProxy.js.map +1 -0
- package/dist/cjs/server/utils.js +1 -1
- package/dist/cjs/server/utils.js.map +1 -1
- package/dist/cjs/utils/allNextProviderProps.js +17 -3
- package/dist/cjs/utils/allNextProviderProps.js.map +1 -1
- package/dist/cjs/utils/config.js +1 -0
- package/dist/cjs/utils/config.js.map +1 -1
- package/dist/cjs/utils/tern-ui-script.js +72 -0
- package/dist/cjs/utils/tern-ui-script.js.map +1 -0
- package/dist/esm/app-router/admin/actions.js +5 -0
- package/dist/esm/app-router/admin/actions.js.map +1 -1
- package/dist/esm/app-router/admin/cookieOptionsHelper.js +26 -15
- package/dist/esm/app-router/admin/cookieOptionsHelper.js.map +1 -1
- package/dist/esm/app-router/admin/endpointRouter.js +11 -2
- package/dist/esm/app-router/admin/endpointRouter.js.map +1 -1
- package/dist/esm/app-router/admin/request.js +7 -2
- package/dist/esm/app-router/admin/request.js.map +1 -1
- package/dist/esm/app-router/admin/sessionHandlers.js +83 -7
- package/dist/esm/app-router/admin/sessionHandlers.js.map +1 -1
- package/dist/esm/app-router/admin/signInCreateHandler.js +188 -0
- package/dist/esm/app-router/admin/signInCreateHandler.js.map +1 -0
- package/dist/esm/app-router/admin/types.js +30 -10
- package/dist/esm/app-router/admin/types.js.map +1 -1
- package/dist/esm/app-router/client/TernSecureProvider.js +6 -2
- package/dist/esm/app-router/client/TernSecureProvider.js.map +1 -1
- package/dist/esm/app-router/server/TernSecureProvider.js +2 -2
- package/dist/esm/app-router/server/TernSecureProvider.js.map +1 -1
- package/dist/esm/app-router/server/auth.js +2 -2
- package/dist/esm/app-router/server/auth.js.map +1 -1
- package/dist/esm/boundary/components.js +1 -11
- package/dist/esm/boundary/components.js.map +1 -1
- package/dist/esm/components/uiComponents.js +21 -0
- package/dist/esm/components/uiComponents.js.map +1 -0
- package/dist/esm/index.js +10 -14
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/server/data/getAuthDataFromRequest.js +21 -13
- package/dist/esm/server/data/getAuthDataFromRequest.js.map +1 -1
- package/dist/esm/server/index.js +2 -8
- package/dist/esm/server/index.js.map +1 -1
- package/dist/esm/server/{ternSecureEdgeMiddleware.js → ternSecureProxy.js} +30 -7
- package/dist/esm/server/ternSecureProxy.js.map +1 -0
- package/dist/esm/server/utils.js +1 -1
- package/dist/esm/server/utils.js.map +1 -1
- package/dist/esm/utils/allNextProviderProps.js +17 -3
- package/dist/esm/utils/allNextProviderProps.js.map +1 -1
- package/dist/esm/utils/config.js +1 -0
- package/dist/esm/utils/config.js.map +1 -1
- package/dist/esm/utils/tern-ui-script.js +38 -0
- package/dist/esm/utils/tern-ui-script.js.map +1 -0
- package/dist/types/app-router/admin/actions.d.ts +23 -0
- package/dist/types/app-router/admin/actions.d.ts.map +1 -1
- package/dist/types/app-router/admin/cookieOptionsHelper.d.ts +2 -10
- package/dist/types/app-router/admin/cookieOptionsHelper.d.ts.map +1 -1
- package/dist/types/app-router/admin/endpointRouter.d.ts.map +1 -1
- package/dist/types/app-router/admin/request.d.ts.map +1 -1
- package/dist/types/app-router/admin/sessionHandlers.d.ts +4 -3
- package/dist/types/app-router/admin/sessionHandlers.d.ts.map +1 -1
- package/dist/types/app-router/admin/signInCreateHandler.d.ts +11 -0
- package/dist/types/app-router/admin/signInCreateHandler.d.ts.map +1 -0
- package/dist/types/app-router/admin/types.d.ts +5 -3
- package/dist/types/app-router/admin/types.d.ts.map +1 -1
- package/dist/types/app-router/client/TernSecureProvider.d.ts.map +1 -1
- package/dist/types/app-router/server/auth.d.ts.map +1 -1
- package/dist/types/boundary/components.d.ts +1 -1
- package/dist/types/boundary/components.d.ts.map +1 -1
- package/dist/types/components/uiComponents.d.ts +6 -0
- package/dist/types/components/uiComponents.d.ts.map +1 -0
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/server/data/getAuthDataFromRequest.d.ts +6 -6
- package/dist/types/server/data/getAuthDataFromRequest.d.ts.map +1 -1
- package/dist/types/server/index.d.ts +1 -2
- package/dist/types/server/index.d.ts.map +1 -1
- package/dist/types/server/{ternSecureEdgeMiddleware.d.ts → ternSecureProxy.d.ts} +2 -2
- package/dist/types/server/ternSecureProxy.d.ts.map +1 -0
- package/dist/types/utils/allNextProviderProps.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/tern-ui-script.d.ts +8 -0
- package/dist/types/utils/tern-ui-script.d.ts.map +1 -0
- package/package.json +7 -9
- package/dist/cjs/app-router/server/TernSecureProviderNode.js +0 -92
- package/dist/cjs/app-router/server/TernSecureProviderNode.js.map +0 -1
- package/dist/cjs/app-router/server/auth_new.js.map +0 -1
- package/dist/cjs/server/ternSecureEdgeMiddleware.js.map +0 -1
- package/dist/cjs/utils/admin-init.js +0 -4
- package/dist/cjs/utils/admin-init.js.map +0 -1
- package/dist/cjs/utils/client-init.js +0 -4
- package/dist/cjs/utils/client-init.js.map +0 -1
- package/dist/esm/app-router/server/TernSecureProviderNode.js +0 -58
- package/dist/esm/app-router/server/TernSecureProviderNode.js.map +0 -1
- package/dist/esm/app-router/server/auth_new.js +0 -17
- package/dist/esm/app-router/server/auth_new.js.map +0 -1
- package/dist/esm/server/ternSecureEdgeMiddleware.js.map +0 -1
- package/dist/esm/utils/admin-init.js +0 -3
- package/dist/esm/utils/admin-init.js.map +0 -1
- package/dist/esm/utils/client-init.js +0 -3
- package/dist/esm/utils/client-init.js.map +0 -1
- package/dist/types/app-router/server/TernSecureProviderNode.d.ts +0 -4
- package/dist/types/app-router/server/TernSecureProviderNode.d.ts.map +0 -1
- package/dist/types/app-router/server/auth_new.d.ts +0 -14
- package/dist/types/app-router/server/auth_new.d.ts.map +0 -1
- package/dist/types/server/ternSecureEdgeMiddleware.d.ts.map +0 -1
- package/dist/types/utils/admin-init.d.ts +0 -2
- package/dist/types/utils/admin-init.d.ts.map +0 -1
- package/dist/types/utils/client-init.d.ts +0 -2
- package/dist/types/utils/client-init.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/allNextProviderProps.ts"],"sourcesContent":["import type { \n IsoTernSecureAuthOptions,\n TernSecureProviderProps} from \"@tern-secure/react\";\n\nimport type { NextProviderProcessedProps, TernSecureNextProps } from \"../types\";\n\n\nexport const allNextProviderPropsWithEnv = (\n nextProps: Omit<TernSecureNextProps, 'children'>\n): any => {\n const {\n signInUrl,\n signUpUrl,\n signInForceRedirectUrl,\n signUpForceRedirectUrl,\n signInFallbackRedirectUrl,\n signUpFallbackRedirectUrl,\n //apiKey: propsApiKey,\n apiUrl: propsApiUrl,\n requiresVerification: propsRequiresVerification,\n isTernSecureDev: propsIsTernSecureDev,\n enableServiceWorker: propsEnableServiceWorker,\n loadingComponent: propsLoadingComponent,\n persistence: propsPersistence,\n ...baseProps \n } = nextProps;\n\n const envConfig = {\n apiKey: process.env.NEXT_PUBLIC_TERN_API_KEY,\n apiUrl: process.env.TERNSECURE_API_URL || '',\n projectId: process.env.NEXT_PUBLIC_TERN_PROJECT_ID,\n customDomain: process.env.NEXT_PUBLIC_TERN_CUSTOM_DOMAIN,\n proxyUrl: process.env.NEXT_PUBLIC_TERN_PROXY_URL,\n environment: process.env.NEXT_PUBLIC_TERN_ENVIRONMENT,\n signInUrl: process.env.NEXT_PUBLIC_SIGN_IN_URL || '',\n signUpUrl: process.env.NEXT_PUBLIC_SIGN_UP_URL || '',\n signInForceRedirectUrl: process.env.NEXT_PUBLIC_SIGN_IN_FORCE_REDIRECT_URL || '',\n signUpForceRedirectUrl: process.env.NEXT_PUBLIC_SIGN_UP_FORCE_REDIRECT_URL || '',\n signInFallbackRedirectUrl: process.env.NEXT_PUBLIC_SIGN_IN_FALLBACK_REDIRECT_URL || '',\n signUpFallbackRedirectUrl: process.env.NEXT_PUBLIC_SIGN_UP_FALLBACK_REDIRECT_URL || '',\n persistence: process.env.NEXT_PUBLIC_TERN_PERSISTENCE as 'local' | 'session' | 'browserCookie' | 'none',\n useEmulator: process.env.NEXT_PUBLIC_USE_FIREBASE_EMULATOR,\n projectIdAdmin: process.env.FIREBASE_PROJECT_ID,\n clientEmail: process.env.FIREBASE_CLIENT_EMAIL,\n privateKey: process.env.FIREBASE_PRIVATE_KEY,\n };\n\n const ternSecureConfig = {\n apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY || '',\n authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN || '',\n appName: process.env.NEXT_PUBLIC_FIREBASE_APP_NAME || '',\n projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID || '',\n storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET || '',\n messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || '',\n appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID || '',\n measurementId: process.env.NEXT_PUBLIC_FIREBASE_MEASUREMENTID
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/allNextProviderProps.ts"],"sourcesContent":["import type { \n IsoTernSecureAuthOptions,\n TernSecureProviderProps} from \"@tern-secure/react\";\n\nimport type { NextProviderProcessedProps, TernSecureNextProps } from \"../types\";\n\n\nexport const allNextProviderPropsWithEnv = (\n nextProps: Omit<TernSecureNextProps, 'children'>\n): any => {\n const {\n tenantId,\n signInUrl,\n signUpUrl,\n signInForceRedirectUrl,\n signUpForceRedirectUrl,\n signInFallbackRedirectUrl,\n signUpFallbackRedirectUrl,\n //apiKey: propsApiKey,\n apiUrl: propsApiUrl,\n requiresVerification: propsRequiresVerification,\n isTernSecureDev: propsIsTernSecureDev,\n enableServiceWorker: propsEnableServiceWorker,\n loadingComponent: propsLoadingComponent,\n persistence: propsPersistence,\n ternUIUrl: propsTernUIUrl,\n ternUIVersion: propsTernUIVersion,\n appCheck,\n ...baseProps \n } = nextProps;\n\n const envConfig = {\n tenantId: process.env.NEXT_PUBLIC_FIREBASE_TENANT_ID || '',\n apiKey: process.env.NEXT_PUBLIC_TERN_API_KEY,\n apiUrl: process.env.TERNSECURE_API_URL || '',\n ternUIUrl: process.env.NEXT_PUBLIC_TERN_UI_URL || '',\n ternUIVersion: process.env.NEXT_PUBLIC_TERN_UI_VERSION || '',\n projectId: process.env.NEXT_PUBLIC_TERN_PROJECT_ID,\n customDomain: process.env.NEXT_PUBLIC_TERN_CUSTOM_DOMAIN,\n proxyUrl: process.env.NEXT_PUBLIC_TERN_PROXY_URL,\n environment: process.env.NEXT_PUBLIC_TERN_ENVIRONMENT,\n signInUrl: process.env.NEXT_PUBLIC_SIGN_IN_URL || '',\n signUpUrl: process.env.NEXT_PUBLIC_SIGN_UP_URL || '',\n signInForceRedirectUrl: process.env.NEXT_PUBLIC_SIGN_IN_FORCE_REDIRECT_URL || '',\n signUpForceRedirectUrl: process.env.NEXT_PUBLIC_SIGN_UP_FORCE_REDIRECT_URL || '',\n signInFallbackRedirectUrl: process.env.NEXT_PUBLIC_SIGN_IN_FALLBACK_REDIRECT_URL || '',\n signUpFallbackRedirectUrl: process.env.NEXT_PUBLIC_SIGN_UP_FALLBACK_REDIRECT_URL || '',\n persistence: process.env.NEXT_PUBLIC_TERN_PERSISTENCE as 'local' | 'session' | 'browserCookie' | 'none',\n useEmulator: process.env.NEXT_PUBLIC_USE_FIREBASE_EMULATOR,\n projectIdAdmin: process.env.FIREBASE_PROJECT_ID,\n clientEmail: process.env.FIREBASE_CLIENT_EMAIL,\n privateKey: process.env.FIREBASE_PRIVATE_KEY,\n };\n\n const ternSecureConfig = {\n apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY || '',\n authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN || '',\n databaseURL: process.env.NEXT_PUBLIC_FIREBASE_DATABASE_URL || '',\n appName: process.env.NEXT_PUBLIC_FIREBASE_APP_NAME || '',\n projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID || '',\n storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET || '',\n messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || '',\n appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID || '',\n measurementId: process.env.NEXT_PUBLIC_FIREBASE_MEASUREMENTID || '',\n };\n\n // Merge config values: props take precedence over environment variables\n //const finalApiKey = propsApiKey ?? envConfig.apiKey;\n const finalTenantId = tenantId ?? envConfig.tenantId;\n const finalApiUrl = propsApiUrl ?? envConfig.apiUrl;\n const finalSignInUrl = signInUrl ?? envConfig.signInUrl;\n const finalSignUpUrl = signUpUrl ?? envConfig.signUpUrl;\n const finalSignInForceRedirectUrl = signInForceRedirectUrl ?? envConfig.signInForceRedirectUrl;\n const finalSignUpForceRedirectUrl = signUpForceRedirectUrl ?? envConfig.signUpForceRedirectUrl;\n const finalSignInFallbackRedirectUrl = signInFallbackRedirectUrl ?? envConfig.signInFallbackRedirectUrl;\n const finalSignUpFallbackRedirectUrl = signUpFallbackRedirectUrl ?? envConfig.signUpFallbackRedirectUrl;\n const finalPersistence = propsPersistence ?? envConfig.persistence;\n const finalTernUIUrl = propsTernUIUrl ?? envConfig.ternUIUrl;\n const finalTernUIVersion = propsTernUIVersion ?? envConfig.ternUIVersion;\n\n // Construct the result, ensuring it conforms to NextProviderProcessedProps\n // (Omit<TernSecureProviderProps, 'children'>)\n const result: NextProviderProcessedProps = {\n ...(baseProps as Omit<TernSecureProviderProps, 'children' | keyof IsoTernSecureAuthOptions | 'requiresVerification' | 'loadingComponent'>),\n\n // Set the Firebase configuration properties\n ternSecureConfig,\n \n // Set properties explicitly taken from TernSecureNextProps (props version)\n // These are part of the TernSecureProviderProps interface.\n tenantId: finalTenantId,\n requiresVerification: propsRequiresVerification,\n isTernSecureDev: propsIsTernSecureDev,\n enableServiceWorker: propsEnableServiceWorker,\n loadingComponent: propsLoadingComponent,\n appCheck,\n\n //TernSecure: baseProps.Instance,\n initialState: baseProps.initialState,\n bypassApiKey: baseProps.bypassApiKey,\n signInUrl: finalSignInUrl,\n signUpUrl: finalSignUpUrl,\n signInForceRedirectUrl: finalSignInForceRedirectUrl,\n signUpForceRedirectUrl: finalSignUpForceRedirectUrl,\n signInFallbackRedirectUrl: finalSignInFallbackRedirectUrl,\n signUpFallbackRedirectUrl: finalSignUpFallbackRedirectUrl,\n mode: baseProps.mode,\n apiUrl: finalApiUrl,\n persistence: finalPersistence,\n ternUIUrl: finalTernUIUrl,\n ternUIVersion: finalTernUIVersion\n };\n\n // Clean up undefined keys that might have resulted from spreading if not present in baseProps\n // and also not set by merged values (e.g. if env var is also undefined)\n Object.keys(result).forEach(key => {\n if (result[key as keyof NextProviderProcessedProps] === undefined) {\n delete result[key as keyof NextProviderProcessedProps];\n }\n });\n\n return result;\n};"],"mappings":"AAOO,MAAM,8BAA8B,CACzC,cACQ;AACR,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAEA,QAAQ;AAAA,IACR,sBAAsB;AAAA,IACtB,iBAAiB;AAAA,IACjB,qBAAqB;AAAA,IACrB,kBAAkB;AAAA,IAClB,aAAa;AAAA,IACb,WAAW;AAAA,IACX,eAAe;AAAA,IACf;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,YAAY;AAAA,IAChB,UAAU,QAAQ,IAAI,kCAAkC;AAAA,IACxD,QAAQ,QAAQ,IAAI;AAAA,IACpB,QAAQ,QAAQ,IAAI,sBAAsB;AAAA,IAC1C,WAAW,QAAQ,IAAI,2BAA2B;AAAA,IAClD,eAAe,QAAQ,IAAI,+BAA+B;AAAA,IAC1D,WAAW,QAAQ,IAAI;AAAA,IACvB,cAAc,QAAQ,IAAI;AAAA,IAC1B,UAAU,QAAQ,IAAI;AAAA,IACtB,aAAa,QAAQ,IAAI;AAAA,IACzB,WAAW,QAAQ,IAAI,2BAA2B;AAAA,IAClD,WAAW,QAAQ,IAAI,2BAA2B;AAAA,IAClD,wBAAwB,QAAQ,IAAI,0CAA0C;AAAA,IAC9E,wBAAwB,QAAQ,IAAI,0CAA0C;AAAA,IAC9E,2BAA2B,QAAQ,IAAI,6CAA6C;AAAA,IACpF,2BAA2B,QAAQ,IAAI,6CAA6C;AAAA,IACpF,aAAa,QAAQ,IAAI;AAAA,IACzB,aAAa,QAAQ,IAAI;AAAA,IACzB,gBAAgB,QAAQ,IAAI;AAAA,IAC5B,aAAa,QAAQ,IAAI;AAAA,IACzB,YAAY,QAAQ,IAAI;AAAA,EAC1B;AAEA,QAAM,mBAAmB;AAAA,IACvB,QAAQ,QAAQ,IAAI,gCAAgC;AAAA,IACpD,YAAY,QAAQ,IAAI,oCAAoC;AAAA,IAC5D,aAAa,QAAQ,IAAI,qCAAqC;AAAA,IAC9D,SAAS,QAAQ,IAAI,iCAAiC;AAAA,IACtD,WAAW,QAAQ,IAAI,mCAAmC;AAAA,IAC1D,eAAe,QAAQ,IAAI,uCAAuC;AAAA,IAClE,mBAAmB,QAAQ,IAAI,4CAA4C;AAAA,IAC3E,OAAO,QAAQ,IAAI,+BAA+B;AAAA,IAClD,eAAe,QAAQ,IAAI,sCAAsC;AAAA,EACnE;AAIA,QAAM,gBAAgB,YAAY,UAAU;AAC5C,QAAM,cAAc,eAAe,UAAU;AAC7C,QAAM,iBAAiB,aAAa,UAAU;AAC9C,QAAM,iBAAiB,aAAa,UAAU;AAC9C,QAAM,8BAA8B,0BAA0B,UAAU;AACxE,QAAM,8BAA8B,0BAA0B,UAAU;AACxE,QAAM,iCAAiC,6BAA6B,UAAU;AAC9E,QAAM,iCAAiC,6BAA6B,UAAU;AAC9E,QAAM,mBAAmB,oBAAoB,UAAU;AACvD,QAAM,iBAAiB,kBAAkB,UAAU;AACnD,QAAM,qBAAqB,sBAAsB,UAAU;AAI3D,QAAM,SAAqC;AAAA,IACzC,GAAI;AAAA;AAAA,IAGJ;AAAA;AAAA;AAAA,IAIA,UAAU;AAAA,IACV,sBAAsB;AAAA,IACtB,iBAAiB;AAAA,IACjB,qBAAqB;AAAA,IACrB,kBAAkB;AAAA,IAClB;AAAA;AAAA,IAGA,cAAc,UAAU;AAAA,IACxB,cAAc,UAAU;AAAA,IACxB,WAAW;AAAA,IACX,WAAW;AAAA,IACX,wBAAwB;AAAA,IACxB,wBAAwB;AAAA,IACxB,2BAA2B;AAAA,IAC3B,2BAA2B;AAAA,IAC3B,MAAM,UAAU;AAAA,IAChB,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,WAAW;AAAA,IACX,eAAe;AAAA,EACjB;AAIA,SAAO,KAAK,MAAM,EAAE,QAAQ,SAAO;AACjC,QAAI,OAAO,GAAuC,MAAM,QAAW;AACjE,aAAO,OAAO,GAAuC;AAAA,IACvD;AAAA,EACF,CAAC;AAED,SAAO;AACT;","names":[]}
|
package/dist/esm/utils/config.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const loadFireConfig = () => ({
|
|
2
2
|
apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY || "",
|
|
3
3
|
authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN || "",
|
|
4
|
+
databaseURL: process.env.NEXT_PUBLIC_FIREBASE_DATABASE_URL || "",
|
|
4
5
|
projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID || "",
|
|
5
6
|
storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET || "",
|
|
6
7
|
messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || "",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/config.ts"],"sourcesContent":["import type { \r\n AdminConfigValidationResult,\r\n ConfigValidationResult, \r\n ServerConfigValidationResult,\r\n TernSecureAdminConfig,\r\n TernSecureConfig, \r\n TernSecureServerConfig} from '@tern-secure/types'\r\n\r\n/**\r\n * Loads Firebase configuration from environment variables\r\n * @returns {TernSecureConfig} Firebase configuration object\r\n */\r\nexport const loadFireConfig = (): TernSecureConfig => ({\r\n apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY || '',\r\n authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN || '',\r\n projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID || '',\r\n storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET || '',\r\n messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || '',\r\n appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID || '',\r\n measurementId: process.env.NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID || undefined,\r\n})\r\n\r\n/**\r\n * Validates Firebase configuration\r\n * @param {TernSecureConfig} config - Firebase configuration object\r\n * @throws {Error} If required configuration values are missing\r\n * @returns {TernSecureConfig} Validated configuration object\r\n */\r\nexport const validateConfig = (config: TernSecureConfig): ConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureConfig)[] = [\r\n 'apiKey',\r\n 'authDomain',\r\n 'projectId',\r\n 'storageBucket',\r\n 'messagingSenderId',\r\n 'appId'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: NEXT_PUBLIC_FIREBASE_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n/**\r\n * Initializes configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeConfig = (): TernSecureConfig => {\r\n const config = loadFireConfig()\r\n const validationResult = validateConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}\r\n\r\n/**\r\n * Loads Firebase Admin configuration from environment variables\r\n * @returns {AdminConfig} Firebase Admin configuration object\r\n */\r\nexport const loadAdminConfig = (): TernSecureAdminConfig => ({\r\n projectId: process.env.FIREBASE_PROJECT_ID || '',\r\n clientEmail: process.env.FIREBASE_CLIENT_EMAIL || '',\r\n privateKey: process.env.FIREBASE_PRIVATE_KEY || '',\r\n})\r\n\r\n/**\r\n * Validates Firebase Admin configuration\r\n * @param {AdminConfig} config - Firebase Admin configuration object\r\n * @returns {ConfigValidationResult} Validation result\r\n */\r\nexport const validateAdminConfig = (config: TernSecureAdminConfig): AdminConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureAdminConfig)[] = [\r\n 'projectId',\r\n 'clientEmail',\r\n 'privateKey'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: FIREBASE_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n/**\r\n * Initializes admin configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeAdminConfig = (): TernSecureAdminConfig => {\r\n const config = loadAdminConfig()\r\n const validationResult = validateAdminConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase Admin configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}\r\n\r\n\r\n\r\n/**\r\n * Loads Firebase Server configuration from environment variables\r\n * @returns {ServerConfig} Firebase Server configuration object\r\n */\r\nexport const loadServerConfig = (): TernSecureServerConfig => ({\r\n apiKey: process.env.FIREBASE_SERVER_API_KEY || '',\r\n\r\n})\r\n\r\n\r\n/**\r\n * Validates Firebase Admin configuration\r\n * @param {AdminConfig} config - Firebase Admin configuration object\r\n * @returns {ConfigValidationResult} Validation result\r\n */\r\nexport const validateServerConfig = (config: TernSecureServerConfig): ServerConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureServerConfig)[] = [\r\n 'apiKey'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: FIREBASE_SERVER_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n\r\n\r\n/**\r\n * Initializes admin configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeServerConfig = (): TernSecureServerConfig => {\r\n const config = loadServerConfig()\r\n const validationResult = validateServerConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase Server configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/config.ts"],"sourcesContent":["import type { \r\n AdminConfigValidationResult,\r\n ConfigValidationResult, \r\n ServerConfigValidationResult,\r\n TernSecureAdminConfig,\r\n TernSecureConfig, \r\n TernSecureServerConfig} from '@tern-secure/types'\r\n\r\n/**\r\n * Loads Firebase configuration from environment variables\r\n * @returns {TernSecureConfig} Firebase configuration object\r\n */\r\nexport const loadFireConfig = (): TernSecureConfig => ({\r\n apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY || '',\r\n authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN || '',\r\n databaseURL: process.env.NEXT_PUBLIC_FIREBASE_DATABASE_URL || '',\r\n projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID || '',\r\n storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET || '',\r\n messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || '',\r\n appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID || '',\r\n measurementId: process.env.NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID || undefined,\r\n})\r\n\r\n/**\r\n * Validates Firebase configuration\r\n * @param {TernSecureConfig} config - Firebase configuration object\r\n * @throws {Error} If required configuration values are missing\r\n * @returns {TernSecureConfig} Validated configuration object\r\n */\r\nexport const validateConfig = (config: TernSecureConfig): ConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureConfig)[] = [\r\n 'apiKey',\r\n 'authDomain',\r\n 'projectId',\r\n 'storageBucket',\r\n 'messagingSenderId',\r\n 'appId'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: NEXT_PUBLIC_FIREBASE_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n/**\r\n * Initializes configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeConfig = (): TernSecureConfig => {\r\n const config = loadFireConfig()\r\n const validationResult = validateConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}\r\n\r\n/**\r\n * Loads Firebase Admin configuration from environment variables\r\n * @returns {AdminConfig} Firebase Admin configuration object\r\n */\r\nexport const loadAdminConfig = (): TernSecureAdminConfig => ({\r\n projectId: process.env.FIREBASE_PROJECT_ID || '',\r\n clientEmail: process.env.FIREBASE_CLIENT_EMAIL || '',\r\n privateKey: process.env.FIREBASE_PRIVATE_KEY || '',\r\n})\r\n\r\n/**\r\n * Validates Firebase Admin configuration\r\n * @param {AdminConfig} config - Firebase Admin configuration object\r\n * @returns {ConfigValidationResult} Validation result\r\n */\r\nexport const validateAdminConfig = (config: TernSecureAdminConfig): AdminConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureAdminConfig)[] = [\r\n 'projectId',\r\n 'clientEmail',\r\n 'privateKey'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: FIREBASE_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n/**\r\n * Initializes admin configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeAdminConfig = (): TernSecureAdminConfig => {\r\n const config = loadAdminConfig()\r\n const validationResult = validateAdminConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase Admin configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}\r\n\r\n\r\n\r\n/**\r\n * Loads Firebase Server configuration from environment variables\r\n * @returns {ServerConfig} Firebase Server configuration object\r\n */\r\nexport const loadServerConfig = (): TernSecureServerConfig => ({\r\n apiKey: process.env.FIREBASE_SERVER_API_KEY || '',\r\n\r\n})\r\n\r\n\r\n/**\r\n * Validates Firebase Admin configuration\r\n * @param {AdminConfig} config - Firebase Admin configuration object\r\n * @returns {ConfigValidationResult} Validation result\r\n */\r\nexport const validateServerConfig = (config: TernSecureServerConfig): ServerConfigValidationResult => {\r\n const requiredFields: (keyof TernSecureServerConfig)[] = [\r\n 'apiKey'\r\n ]\r\n\r\n const errors: string[] = []\r\n \r\n requiredFields.forEach(field => {\r\n if (!config[field]) {\r\n errors.push(`Missing required field: FIREBASE_SERVER_${String(field).toUpperCase()}`)\r\n }\r\n })\r\n\r\n return {\r\n isValid: errors.length === 0,\r\n errors,\r\n config\r\n }\r\n}\r\n\r\n\r\n\r\n/**\r\n * Initializes admin configuration with validation\r\n * @throws {Error} If configuration is invalid\r\n */\r\nexport const initializeServerConfig = (): TernSecureServerConfig => {\r\n const config = loadServerConfig()\r\n const validationResult = validateServerConfig(config)\r\n\r\n if (!validationResult.isValid) {\r\n throw new Error(\r\n `Firebase Server configuration validation failed:\\n${validationResult.errors.join('\\n')}`\r\n )\r\n }\r\n\r\n return config\r\n}"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { constructTernUIScriptAttributes, ternUIgetScriptUrl } from "@tern-secure/react";
|
|
3
|
+
import Script from "next/script";
|
|
4
|
+
import { useTernNextOptions } from "../boundary/NextOptionsCtx";
|
|
5
|
+
const isDevelopment = process.env.NODE_ENV === "development";
|
|
6
|
+
const localPort = process.env.TERN_UI_PORT || "4000";
|
|
7
|
+
const devDomain = isDevelopment ? `http://localhost:${localPort || process.env.NEXT_PUBLIC_TERN_UI_PORT || "4000"}` : void 0;
|
|
8
|
+
function TernUIScript({ authDomain, proxyUrl, nonce, router = "app" }) {
|
|
9
|
+
const { ternUIVersion } = useTernNextOptions();
|
|
10
|
+
const effectiveDomain = isDevelopment ? devDomain : authDomain;
|
|
11
|
+
if (!effectiveDomain) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
const scriptOptions = {
|
|
15
|
+
domain: effectiveDomain,
|
|
16
|
+
proxyUrl,
|
|
17
|
+
ternUIVersion,
|
|
18
|
+
nonce,
|
|
19
|
+
router
|
|
20
|
+
};
|
|
21
|
+
const scriptUrl = ternUIgetScriptUrl(scriptOptions);
|
|
22
|
+
const scriptAttributes = constructTernUIScriptAttributes(scriptOptions);
|
|
23
|
+
return /* @__PURE__ */ jsx(
|
|
24
|
+
Script,
|
|
25
|
+
{
|
|
26
|
+
src: scriptUrl,
|
|
27
|
+
"data-ternui-script": true,
|
|
28
|
+
async: true,
|
|
29
|
+
nonce,
|
|
30
|
+
strategy: void 0,
|
|
31
|
+
...scriptAttributes
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
TernUIScript
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=tern-ui-script.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/tern-ui-script.tsx"],"sourcesContent":["import { constructTernUIScriptAttributes, ternUIgetScriptUrl } from '@tern-secure/react';\nimport Script from 'next/script';\n\nimport { useTernNextOptions } from '../boundary/NextOptionsCtx';\nimport type { TernSecureNextProps } from '../types';\n\nconst isDevelopment = process.env.NODE_ENV === 'development';\nconst localPort = process.env.TERN_UI_PORT || '4000';\n\ntype TernUIScriptProps = Pick<TernSecureNextProps, 'authDomain' | 'proxyUrl'> & {\n nonce?: string;\n router: 'app' | 'pages';\n};\n\nconst devDomain = isDevelopment\n ? `http://localhost:${localPort || process.env.NEXT_PUBLIC_TERN_UI_PORT || '4000'}`\n : undefined;\n\nexport function TernUIScript({ authDomain, proxyUrl, nonce, router = 'app' }: TernUIScriptProps) {\n const { ternUIVersion } = useTernNextOptions();\n const effectiveDomain = isDevelopment ? devDomain : authDomain;\n\n if (!effectiveDomain) {\n return null;\n }\n\n const scriptOptions = {\n domain: effectiveDomain,\n proxyUrl,\n ternUIVersion,\n nonce,\n router,\n };\n\n const scriptUrl = ternUIgetScriptUrl(scriptOptions);\n const scriptAttributes = constructTernUIScriptAttributes(scriptOptions);\n\n return (\n <Script\n src={scriptUrl}\n data-ternui-script\n async\n nonce={nonce}\n strategy={undefined}\n {...scriptAttributes}\n //crossOrigin= {undefined}\n />\n );\n}\n"],"mappings":"AAsCI;AAtCJ,SAAS,iCAAiC,0BAA0B;AACpE,OAAO,YAAY;AAEnB,SAAS,0BAA0B;AAGnC,MAAM,gBAAgB,QAAQ,IAAI,aAAa;AAC/C,MAAM,YAAY,QAAQ,IAAI,gBAAgB;AAO9C,MAAM,YAAY,gBACd,oBAAoB,aAAa,QAAQ,IAAI,4BAA4B,MAAM,KAC/E;AAEG,SAAS,aAAa,EAAE,YAAY,UAAU,OAAO,SAAS,MAAM,GAAsB;AAC/F,QAAM,EAAE,cAAc,IAAI,mBAAmB;AAC7C,QAAM,kBAAkB,gBAAgB,YAAY;AAEpD,MAAI,CAAC,iBAAiB;AACpB,WAAO;AAAA,EACT;AAEA,QAAM,gBAAgB;AAAA,IACpB,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,YAAY,mBAAmB,aAAa;AAClD,QAAM,mBAAmB,gCAAgC,aAAa;AAEtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,sBAAkB;AAAA,MAClB,OAAK;AAAA,MACL;AAAA,MACA,UAAU;AAAA,MACT,GAAG;AAAA;AAAA,EAEN;AAEJ;","names":[]}
|
|
@@ -18,4 +18,27 @@ export declare function createNextSessionCookie(idToken: string): Promise<{
|
|
|
18
18
|
message: string;
|
|
19
19
|
}>;
|
|
20
20
|
export declare function verifyNextTernIdToken(idToken: string): Promise<import("@tern-secure/types").TernVerificationResult>;
|
|
21
|
+
export declare function RetrieveUser(): {
|
|
22
|
+
getUserUid: (uid: string) => Promise<{
|
|
23
|
+
data: import("firebase-admin/auth").UserRecord;
|
|
24
|
+
error: null;
|
|
25
|
+
} | {
|
|
26
|
+
data: null;
|
|
27
|
+
error: import("@tern-secure/types").AuthErrorResponse;
|
|
28
|
+
}>;
|
|
29
|
+
getUserByEmail: (email: string) => Promise<{
|
|
30
|
+
data: import("firebase-admin/auth").UserRecord;
|
|
31
|
+
error: null;
|
|
32
|
+
} | {
|
|
33
|
+
data: null;
|
|
34
|
+
error: import("@tern-secure/types").AuthErrorResponse;
|
|
35
|
+
}>;
|
|
36
|
+
getUserByPhoneNumber: (phoneNumber: string) => Promise<{
|
|
37
|
+
data: import("firebase-admin/auth").UserRecord;
|
|
38
|
+
error: null;
|
|
39
|
+
} | {
|
|
40
|
+
data: null;
|
|
41
|
+
error: import("@tern-secure/types").AuthErrorResponse;
|
|
42
|
+
}>;
|
|
43
|
+
};
|
|
21
44
|
//# sourceMappingURL=actions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/actions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/actions.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,uDAG9D;AAED,wBAAsB,wBAAwB,wDAG7C;AAED,wBAAsB,sBAAsB,CAAC,OAAO,CAAC,EAAE;IACrD,OAAO,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC9C,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,uDAGA;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM;;;GAEzD;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM;;;GAErD;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,MAAM;;;GAE5D;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,gEAE1D;AAED,wBAAgB,YAAY;;;;;;;;;;;;;;;;;;;;;;EAE3B"}
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import type { CookieOptions, TernSecureHandlerOptions } from '@tern-secure/types';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* Used for both setting and deleting cookies to ensure consistency
|
|
5
|
-
*/
|
|
6
|
-
export declare function getCookieOptions(config?: TernSecureHandlerOptions): Required<Pick<CookieOptions, 'path' | 'httpOnly' | 'secure' | 'sameSite'>> & Pick<CookieOptions, 'maxAge' | 'priority'>;
|
|
7
|
-
/**
|
|
8
|
-
* Extracts options needed for cookie deletion
|
|
9
|
-
* For __HOST- prefixed cookies, all security attributes must match
|
|
10
|
-
* @param options - Object containing cookies config and revokeRefreshTokensOnSignOut flag
|
|
11
|
-
*/
|
|
2
|
+
export declare function getIdTokenCookieOptions(): Required<Pick<CookieOptions, 'path' | 'httpOnly' | 'secure' | 'sameSite'>> & Pick<CookieOptions, 'maxAge' | 'priority'>;
|
|
3
|
+
export declare function getSessionCookieOptions(config?: TernSecureHandlerOptions): Required<Pick<CookieOptions, 'path' | 'httpOnly' | 'secure' | 'sameSite'>> & Pick<CookieOptions, 'maxAge' | 'priority'>;
|
|
12
4
|
export declare function getDeleteOptions(options?: {
|
|
13
5
|
cookies?: TernSecureHandlerOptions['cookies'];
|
|
14
6
|
revokeRefreshTokensOnSignOut?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookieOptionsHelper.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/cookieOptionsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"cookieOptionsHelper.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/cookieOptionsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAOlF,wBAAgB,uBAAuB,IACpC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAC3E,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,UAAU,CAAC,CAS3C;AAED,wBAAgB,uBAAuB,CACrC,MAAM,CAAC,EAAE,wBAAwB,GAChC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAC3E,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,UAAU,CAAC,CAU3C;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,OAAO,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC9C,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,CASA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpointRouter.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/endpointRouter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;IAC3C,MAAM,CAAC,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC/F;
|
|
1
|
+
{"version":3,"file":"endpointRouter.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/endpointRouter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;IAC3C,MAAM,CAAC,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC/F;AAkDD,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAK9B;WAEW,KAAK,CAChB,OAAO,EAAE,uBAAuB,EAChC,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,QAAQ,CAAC;IAgBpB,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAIjD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,GAAG,IAAI;CAM7E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/request.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAUrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,eAAe,EAC5B,MAAM,CAAC,EAAE,wBAAwB,EACjC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/request.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAUrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,eAAe,EAC5B,MAAM,CAAC,EAAE,wBAAwB,EACjC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAkDf"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type RequestProcessorContext } from './c-authenticateRequestProcessor';
|
|
2
2
|
import type { TernSecureHandlerOptions } from './types';
|
|
3
|
-
declare
|
|
4
|
-
declare
|
|
5
|
-
|
|
3
|
+
declare const sessionEndpointHandler: (context: RequestProcessorContext, config: TernSecureHandlerOptions) => Promise<Response>;
|
|
4
|
+
declare const cookieEndpointHandler: (context: RequestProcessorContext, config: TernSecureHandlerOptions) => Promise<Response>;
|
|
5
|
+
declare const signInEndpointHandler: (context: RequestProcessorContext, config: TernSecureHandlerOptions) => Promise<Response>;
|
|
6
|
+
export { cookieEndpointHandler, sessionEndpointHandler, signInEndpointHandler };
|
|
6
7
|
//# sourceMappingURL=sessionHandlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionHandlers.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/sessionHandlers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sessionHandlers.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/sessionHandlers.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAWhF,OAAO,KAAK,EAAyC,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAE/F,QAAA,MAAM,sBAAsB,GAC1B,SAAS,uBAAuB,EAChC,QAAQ,wBAAwB,KAC/B,OAAO,CAAC,QAAQ,CAgIlB,CAAA;AAED,QAAA,MAAM,qBAAqB,GACzB,SAAS,uBAAuB,EAChC,QAAQ,wBAAwB,KAC/B,OAAO,CAAC,QAAQ,CAgFlB,CAAA;AAED,QAAA,MAAM,qBAAqB,GACzB,SAAS,uBAAuB,EAChC,QAAQ,wBAAwB,KAC/B,OAAO,CAAC,QAAQ,CAoFlB,CAAA;AAED,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { RequestProcessorContext } from './c-authenticateRequestProcessor';
|
|
2
|
+
export declare const processSignInCreate: (context: RequestProcessorContext) => Promise<Response>;
|
|
3
|
+
/**
|
|
4
|
+
* Processes email_code strategy
|
|
5
|
+
* Verifies if user exists by email and returns needs_first_factor status
|
|
6
|
+
*/
|
|
7
|
+
export declare const processEmailCodeStrategy: (email: string) => Promise<Response>;
|
|
8
|
+
export declare const processPasswordStrategy: (identifier: string) => Promise<Response>;
|
|
9
|
+
export declare const processPhoneCodeStrategy: (phoneNumber: string) => Promise<Response>;
|
|
10
|
+
export declare const processResetPasswordStrategy: (strategy: "reset_password_email_code" | "reset_password_phone_code", identifier: string) => Promise<Response>;
|
|
11
|
+
//# sourceMappingURL=signInCreateHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signInCreateHandler.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/signInCreateHandler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAOhF,eAAO,MAAM,mBAAmB,GAC9B,SAAS,uBAAuB,KAC/B,OAAO,CAAC,QAAQ,CAmDlB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAU,OAAO,MAAM,KAAG,OAAO,CAAC,QAAQ,CA6C9E,CAAC;AAGF,eAAO,MAAM,uBAAuB,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,QAAQ,CAmClF,CAAC;AAGF,eAAO,MAAM,wBAAwB,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,QAAQ,CAmCpF,CAAC;AAGF,eAAO,MAAM,4BAA4B,GACvC,UAAU,2BAA2B,GAAG,2BAA2B,EACnE,YAAY,MAAM,KACjB,OAAO,CAAC,QAAQ,CAmClB,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { AuthEndpoint, CookieEndpointConfig, CookieOpts as CookieOptions, CorsOptions, EndpointConfig, SecurityOptions, SessionEndpointConfig, SessionSubEndpoint, TernSecureHandlerOptions, TokenCookieConfig } from '@tern-secure/types';
|
|
1
|
+
import type { AuthEndpoint, CookieEndpointConfig, CookieOpts as CookieOptions, CorsOptions, EndpointConfig, SecurityOptions, SessionEndpointConfig, SessionSubEndpoint, SignInEndpointConfig, SignInSubEndpoint, TernSecureHandlerOptions, TokenCookieConfig } from '@tern-secure/types';
|
|
2
2
|
import { type NextResponse } from 'next/server';
|
|
3
3
|
export declare const DEFAULT_CORS_OPTIONS: CorsOptions;
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const DEFAULT_SESSION_COOKIE_OPTIONS: CookieOptions;
|
|
5
|
+
export declare const DEFAULT_ID_REFRESH_TOKEN_COOKIE_OPTIONS: CookieOptions;
|
|
5
6
|
export declare const FIXED_TOKEN_CONFIGS: {
|
|
6
7
|
readonly id: {
|
|
7
8
|
readonly path: "/";
|
|
@@ -32,6 +33,7 @@ export declare const DEFAULT_SECURITY_OPTIONS: SecurityOptions;
|
|
|
32
33
|
export declare const DEFAULT_ENDPOINT_CONFIG: EndpointConfig;
|
|
33
34
|
export declare const DEFAULT_COOKIE_REQUEST_CONFIG: CookieEndpointConfig;
|
|
34
35
|
export declare const DEFAULT_SESSIONS_CONFIG: SessionEndpointConfig;
|
|
36
|
+
export declare const DEFAULT_SIGNINS_CONFIG: SignInEndpointConfig;
|
|
35
37
|
export declare const DEFAULT_HANDLER_OPTIONS: Required<TernSecureHandlerOptions> & {
|
|
36
38
|
endpoints: Required<NonNullable<TernSecureHandlerOptions['endpoints']>>;
|
|
37
39
|
};
|
|
@@ -77,5 +79,5 @@ export declare class CookieUtils {
|
|
|
77
79
|
static getFixedTokenConfig(tokenType: Exclude<suffix, 'session'>): TokenCookieConfig;
|
|
78
80
|
static validateSessionMaxAge(maxAge: number): boolean;
|
|
79
81
|
}
|
|
80
|
-
export { AuthEndpoint, CookieOptions, CorsOptions, SecurityOptions, SessionSubEndpoint, EndpointConfig, SessionEndpointConfig, TernSecureHandlerOptions, };
|
|
82
|
+
export { AuthEndpoint, CookieOptions, CorsOptions, SecurityOptions, SessionSubEndpoint, EndpointConfig, SessionEndpointConfig, SignInEndpointConfig, SignInSubEndpoint, TernSecureHandlerOptions, };
|
|
81
83
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACpB,UAAU,IAAI,aAAa,EAC3B,WAAW,EACX,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,EAAE,WAMlC,CAAC;AAEF,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/app-router/admin/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACpB,UAAU,IAAI,aAAa,EAC3B,WAAW,EACX,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,EAAE,WAMlC,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,aAO5C,CAAC;AAEF,eAAO,MAAM,uCAAuC,EAAE,aAOrD,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;CAyBtB,CAAC;AAEX,eAAO,MAAM,wBAAwB,EAAE,eAStC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,cAKrC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,oBAa3C,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,qBAqCrC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,oBASpC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,wBAAwB,CAAC,GAAG;IACzE,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAsBzE,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,YAAY,CAAC;QACnB,MAAM,EAAE,cAAc,CAAC;KACxB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,kBAAkB,CAAC;QACzB,MAAM,EAAE,cAAc,CAAC;KACxB,CAAC;IACF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,GAAG,CAAC;QACV,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE3E,qBAAa,WAAW;IACtB,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAInE,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM;;;;;;;IAUxC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,iBAAiB;IASxE,MAAM,CAAC,mBAAmB,CACxB,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,GACpC,iBAAiB;IAWpB,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CAKtD;AAED,OAAO,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,wBAAwB,GACzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TernSecureProvider.d.ts","sourceRoot":"","sources":["../../../../src/app-router/client/TernSecureProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"TernSecureProvider.d.ts","sourceRoot":"","sources":["../../../../src/app-router/client/TernSecureProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAkCvD,eAAO,MAAM,wBAAwB,GAAI,OAAO,mBAAmB,4CAGlE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/app-router/server/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAY,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrD,OAAO,EAAE,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/app-router/server/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAY,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrD,OAAO,EAAE,KAAK,IAAI,EAA0B,MAAM,0CAA0C,CAAC;AAE7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,oBAAoB,CAAC;AAGhE;;EAEE;AACF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,KAAK,IAAI,GAAG,UAAU,GAAG,IAAI,GAAG;IAC9B,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;IAC3D,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;CAC5D,CAAC;AAEF,MAAM,WAAW,MAAM;IACrB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB,OAAO,EAAE,WAAW,CAAC;CACtB;AAQD;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,MAwClB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { useIdToken, useSession, useSignIn, useSignUp,
|
|
1
|
+
export { useIdToken, useSession, useSignIn, useSignUp, signIn, } from '@tern-secure/react';
|
|
2
2
|
export { usePromiseAuth as useAuth } from './PromiseAuthProvider';
|
|
3
3
|
//# sourceMappingURL=components.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/boundary/components.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/boundary/components.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,MAAM,GACT,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { SignIn as BaseSignIn, SignUp as BaseSignUp } from '@tern-secure/react';
|
|
2
|
+
import type { ComponentProps } from 'react';
|
|
3
|
+
export { UserButton } from '@tern-secure/react';
|
|
4
|
+
export declare const SignIn: (props: ComponentProps<typeof BaseSignIn>) => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export declare const SignUp: (props: ComponentProps<typeof BaseSignUp>) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=uiComponents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uiComponents.d.ts","sourceRoot":"","sources":["../../../src/components/uiComponents.tsx"],"names":[],"mappings":"AAEA,OAAQ,EACJ,MAAM,IAAI,UAAU,EACpB,MAAM,IAAI,UAAU,EACvB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EACL,UAAU,EACX,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,4CAE9D,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,4CAE9D,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { TernSecureProvider } from './app-router/server/TernSecureProvider';
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export type { TernSecureUser,
|
|
2
|
+
export { useAuth, useIdToken, useSession, useSignIn, useSignUp, signIn, } from './boundary/components';
|
|
3
|
+
export { SignIn, SignUp, UserButton, } from './components/uiComponents';
|
|
4
|
+
export type { TernSecureUser, SignInResponse, SignUpResponse, SocialProviderOptions, } from '@tern-secure/types';
|
|
5
5
|
export type { UserInfo, SessionResult } from './types';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,MAAM,GACP,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,MAAM,EACN,MAAM,EACN,UAAU,GACX,MAAM,2BAA2B,CAAA;AAElC,YAAY,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -9,8 +9,8 @@ import type { RequestLike } from '../../server/types';
|
|
|
9
9
|
* throws an error if a non-serializable value is found.
|
|
10
10
|
* @internal
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
13
|
-
export declare function
|
|
12
|
+
export declare const authObjectToSerializableJwt: <T extends Record<string, unknown>>(obj: T) => T;
|
|
13
|
+
export declare function getTernSecureAuthDataJwt(req: RequestLike, initialState?: {}): {
|
|
14
14
|
sessionClaims: import("@tern-secure/types").DecodedIdToken;
|
|
15
15
|
userId: string;
|
|
16
16
|
token: string;
|
|
@@ -23,7 +23,7 @@ export declare function getTernSecureAuthData(req: RequestLike, initialState?: {
|
|
|
23
23
|
require: import("@tern-secure/types").CheckAuthorizationFromSessionClaims;
|
|
24
24
|
error: string | null;
|
|
25
25
|
};
|
|
26
|
-
export declare function
|
|
26
|
+
export declare function getAuthDataFromRequestJwt(req: RequestLike): AuthObject;
|
|
27
27
|
export type SerializableTernSecureUser = Omit<TernSecureUser, 'delete' | 'getIdToken' | 'getIdTokenResult' | 'reload' | 'toJSON'>;
|
|
28
28
|
export type Aobj = {
|
|
29
29
|
user: SerializableTernSecureUser | null;
|
|
@@ -37,8 +37,8 @@ export type Aobj = {
|
|
|
37
37
|
* throws an error if a non-serializable value is found.
|
|
38
38
|
* @internal
|
|
39
39
|
*/
|
|
40
|
-
export declare const
|
|
41
|
-
export declare function
|
|
40
|
+
export declare const authObjectToSerializable: <T extends Record<string, unknown>>(obj: T) => T;
|
|
41
|
+
export declare function getTernSecureAuthData(req: RequestLike, initialState?: {}): Promise<{
|
|
42
42
|
sessionClaims: import("@tern-secure/types").DecodedIdToken;
|
|
43
43
|
userId: string;
|
|
44
44
|
token: string;
|
|
@@ -53,6 +53,6 @@ export declare function getTernSecureAuthDataNode(req: RequestLike, initialState
|
|
|
53
53
|
error: string | null;
|
|
54
54
|
user: SerializableTernSecureUser | null;
|
|
55
55
|
}>;
|
|
56
|
-
export declare function
|
|
56
|
+
export declare function getAuthDataFromRequest(req: RequestLike): Promise<AuthObject & Aobj>;
|
|
57
57
|
export { TernSecureUser };
|
|
58
58
|
//# sourceMappingURL=getAuthDataFromRequest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAuthDataFromRequest.d.ts","sourceRoot":"","sources":["../../../../src/server/data/getAuthDataFromRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,KAAK,EAAiC,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAOxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"getAuthDataFromRequest.d.ts","sourceRoot":"","sources":["../../../../src/server/data/getAuthDataFromRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,KAAK,EAAiC,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAOxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAYtD;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,KAAG,CAKvF,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,WAAW,EAAE,YAAY,KAAK;;;;;;;;;;;;EAG3E;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,WAAW,GAAG,UAAU,CAetE;AAGD,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,YAAY,GAAG,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAElI,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,0BAA0B,GAAG,IAAI,CAAA;IACvC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB,CAAA;AAID;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxE,KAAK,CAAC,KACL,CAKF,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,YAAY,KAAK;;;;;;UAzBX,0BAA0B,GAAG,IAAI;;;;;;;UAAjC,0BAA0B,GAAG,IAAI;GA6BxC;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA0BzF;AA4ED,OAAO,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { ternSecureProxy } from "./ternSecureProxy";
|
|
2
2
|
export { ternSecureInstrumentation } from "./instrumentation";
|
|
3
3
|
export { createRouteMatcher } from "./routeMatcher";
|
|
4
4
|
export { ternSecureBackendClient } from "./ternsecureClient";
|
|
5
5
|
export { auth } from "../app-router/server/auth";
|
|
6
|
-
export { authNew } from "../app-router/server/auth_new";
|
|
7
6
|
export type { AuthResult } from "../app-router/server/auth";
|
|
8
7
|
export type { BaseUser, SessionResult } from "./types";
|
|
9
8
|
export { NextCookieStore } from "../utils/NextCookieAdapter";
|
|
@@ -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,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,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"}
|
|
@@ -38,7 +38,7 @@ interface TernSecureMiddleware {
|
|
|
38
38
|
*/
|
|
39
39
|
(request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam): NextMiddlewareReturn;
|
|
40
40
|
}
|
|
41
|
-
export declare const
|
|
41
|
+
export declare const ternSecureProxy: TernSecureMiddleware;
|
|
42
42
|
export declare const redirectAdapter: (url: string | URL) => NextResponse<unknown>;
|
|
43
43
|
export {};
|
|
44
|
-
//# sourceMappingURL=
|
|
44
|
+
//# sourceMappingURL=ternSecureProxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ternSecureProxy.d.ts","sourceRoot":"","sources":["../../../src/server/ternSecureProxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,UAAU,EACV,WAAW,EAGZ,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAc3C,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,WAAW,CAAC;AAE5D,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,0BAA0B;IACnE,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,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;AAED,eAAO,MAAM,eAAe,EA4FtB,oBAAoB,CAAC;AA4E3B,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,GAAG,0BAIhD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allNextProviderProps.d.ts","sourceRoot":"","sources":["../../../src/utils/allNextProviderProps.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA8B,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGhF,eAAO,MAAM,2BAA2B,GACtC,WAAW,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,KAC/C,
|
|
1
|
+
{"version":3,"file":"allNextProviderProps.d.ts","sourceRoot":"","sources":["../../../src/utils/allNextProviderProps.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA8B,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGhF,eAAO,MAAM,2BAA2B,GACtC,WAAW,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,KAC/C,GAiHF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EAAC,MAAM,oBAAoB,CAAA;AAEnD;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EAAC,MAAM,oBAAoB,CAAA;AAEnD;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,gBAShC,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,gBAAgB,KAAG,sBAuBzD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,QAAO,gBAWnC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,qBAIjC,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,qBAAqB,KAAG,2BAoBnE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAAO,qBAWxC,CAAA;AAID;;;GAGG;AACH,eAAO,MAAM,gBAAgB,QAAO,sBAGlC,CAAA;AAGF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,sBAAsB,KAAG,4BAkBrE,CAAA;AAID;;;GAGG;AACH,eAAO,MAAM,sBAAsB,QAAO,sBAWzC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { TernSecureNextProps } from '../types';
|
|
2
|
+
type TernUIScriptProps = Pick<TernSecureNextProps, 'authDomain' | 'proxyUrl'> & {
|
|
3
|
+
nonce?: string;
|
|
4
|
+
router: 'app' | 'pages';
|
|
5
|
+
};
|
|
6
|
+
export declare function TernUIScript({ authDomain, proxyUrl, nonce, router }: TernUIScriptProps): import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=tern-ui-script.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tern-ui-script.d.ts","sourceRoot":"","sources":["../../../src/utils/tern-ui-script.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAKpD,KAAK,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,UAAU,CAAC,GAAG;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,KAAK,GAAG,OAAO,CAAC;CACzB,CAAC;AAMF,wBAAgB,YAAY,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAc,EAAE,EAAE,iBAAiB,kDA8B9F"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tern-secure/nextjs",
|
|
3
|
-
"version": "5.2.0-canary.
|
|
3
|
+
"version": "5.2.0-canary.v20251125170702",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -54,19 +54,17 @@
|
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"prettier": "^3.3.3",
|
|
57
|
-
"rimraf": "^6.0.1"
|
|
58
|
-
"tsup": "^8.3.5",
|
|
59
|
-
"typescript": "^5.7.2"
|
|
57
|
+
"rimraf": "^6.0.1"
|
|
60
58
|
},
|
|
61
59
|
"dependencies": {
|
|
62
60
|
"@upstash/redis": "^1.35.2",
|
|
63
61
|
"jose": "^5.9.6",
|
|
64
62
|
"server-only": "^0.0.1",
|
|
65
|
-
"tslib": "2.
|
|
66
|
-
"@tern-secure/backend": "1.2.0-canary.
|
|
67
|
-
"@tern-secure/react": "1.2.0-canary.
|
|
68
|
-
"@tern-secure/shared": "1.3.0-canary.
|
|
69
|
-
"@tern-secure/types": "1.1.0-canary.
|
|
63
|
+
"tslib": "2.8.1",
|
|
64
|
+
"@tern-secure/backend": "1.2.0-canary.v20251125170702",
|
|
65
|
+
"@tern-secure/react": "1.2.0-canary.v20251125170702",
|
|
66
|
+
"@tern-secure/shared": "1.3.0-canary.v20251125170702",
|
|
67
|
+
"@tern-secure/types": "1.1.0-canary.v20251125170702"
|
|
70
68
|
},
|
|
71
69
|
"peerDependencies": {
|
|
72
70
|
"firebase": "^12.0.0",
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var TernSecureProviderNode_exports = {};
|
|
30
|
-
__export(TernSecureProviderNode_exports, {
|
|
31
|
-
TernSecureProviderNode: () => TernSecureProviderNode
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(TernSecureProviderNode_exports);
|
|
34
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
|
-
var import_react = __toESM(require("react"));
|
|
36
|
-
var import_PromiseAuthProviderNode = require("../../boundary/PromiseAuthProviderNode");
|
|
37
|
-
var import_getAuthDataFromRequest = require("../../server/data/getAuthDataFromRequest");
|
|
38
|
-
var import_sdk_versions = require("../../server/sdk-versions");
|
|
39
|
-
var import_allNextProviderProps = require("../../utils/allNextProviderProps");
|
|
40
|
-
var import_TernSecureProvider = require("../client/TernSecureProvider");
|
|
41
|
-
var import_utils = require("./utils");
|
|
42
|
-
const getTernSecureState = import_react.default.cache(async function getTernSecureState2() {
|
|
43
|
-
const request = await (0, import_utils.buildRequestLike)();
|
|
44
|
-
const data = (0, import_getAuthDataFromRequest.getTernSecureAuthDataNode)(request);
|
|
45
|
-
return data;
|
|
46
|
-
});
|
|
47
|
-
async function TernSecureProviderNode(props) {
|
|
48
|
-
const { children, ...rest } = props;
|
|
49
|
-
const { persistence } = rest;
|
|
50
|
-
const browserCookiePersistence = persistence === "browserCookie";
|
|
51
|
-
async function generateStatePromise() {
|
|
52
|
-
if (!browserCookiePersistence) {
|
|
53
|
-
return Promise.resolve(void 0);
|
|
54
|
-
}
|
|
55
|
-
if (import_sdk_versions.isNext13) {
|
|
56
|
-
return Promise.resolve(await getTernSecureState());
|
|
57
|
-
}
|
|
58
|
-
return getTernSecureState();
|
|
59
|
-
}
|
|
60
|
-
const providerProps = (0, import_allNextProviderProps.allNextProviderPropsWithEnv)({ ...rest });
|
|
61
|
-
let output;
|
|
62
|
-
if (browserCookiePersistence) {
|
|
63
|
-
output = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
64
|
-
import_PromiseAuthProviderNode.PromiseAuthProviderNode,
|
|
65
|
-
{
|
|
66
|
-
authPromise: generateStatePromise(),
|
|
67
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
68
|
-
import_TernSecureProvider.ClientTernSecureProvider,
|
|
69
|
-
{
|
|
70
|
-
...providerProps,
|
|
71
|
-
initialState: await generateStatePromise(),
|
|
72
|
-
children
|
|
73
|
-
}
|
|
74
|
-
)
|
|
75
|
-
}
|
|
76
|
-
);
|
|
77
|
-
} else {
|
|
78
|
-
output = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
79
|
-
import_TernSecureProvider.ClientTernSecureProvider,
|
|
80
|
-
{
|
|
81
|
-
...providerProps,
|
|
82
|
-
children
|
|
83
|
-
}
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
return output;
|
|
87
|
-
}
|
|
88
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
89
|
-
0 && (module.exports = {
|
|
90
|
-
TernSecureProviderNode
|
|
91
|
-
});
|
|
92
|
-
//# sourceMappingURL=TernSecureProviderNode.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/app-router/server/TernSecureProviderNode.tsx"],"sourcesContent":["import type { DecodedIdToken, TernSecureUser } from '@tern-secure/types';\nimport type { ReactNode } from 'react';\nimport React from 'react';\n\nimport { PromiseAuthProviderNode } from '../../boundary/PromiseAuthProviderNode';\nimport { getTernSecureAuthDataNode } from '../../server/data/getAuthDataFromRequest';\nimport { isNext13 } from '../../server/sdk-versions';\nimport type { TernSecureNextProps } from '../../types';\nimport { allNextProviderPropsWithEnv } from '../../utils/allNextProviderProps';\nimport { ClientTernSecureProvider } from '../client/TernSecureProvider';\nimport { buildRequestLike } from './utils';\n\ntype TernSecureInitialState = {\n user?: TernSecureUser | null;\n token?: string | null;\n sessionClaims?: DecodedIdToken | null;\n};\n\nconst getTernSecureState = React.cache(async function getTernSecureState() {\n const request = await buildRequestLike();\n const data = getTernSecureAuthDataNode(request);\n return data;\n});\n\nexport async function TernSecureProviderNode(props: TernSecureNextProps) {\n const { children, ...rest } = props;\n const { persistence } = rest;\n\n const browserCookiePersistence = persistence === 'browserCookie';\n\n async function generateStatePromise() {\n if (!browserCookiePersistence) {\n return Promise.resolve(undefined);\n }\n if (isNext13) {\n return Promise.resolve(await getTernSecureState());\n }\n return getTernSecureState();\n }\n\n const providerProps = allNextProviderPropsWithEnv({ ...rest });\n\n let output: ReactNode;\n\n if (browserCookiePersistence) {\n output = (\n <PromiseAuthProviderNode\n authPromise={generateStatePromise() as unknown as Promise<TernSecureInitialState>}\n >\n <ClientTernSecureProvider\n {...providerProps}\n initialState={await generateStatePromise()}\n >\n {children}\n </ClientTernSecureProvider>\n </PromiseAuthProviderNode>\n );\n } else {\n output = (\n <ClientTernSecureProvider\n {...providerProps}\n >\n {children}\n </ClientTernSecureProvider>\n );\n }\n\n return output;\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiDQ;AA/CR,mBAAkB;AAElB,qCAAwC;AACxC,oCAA0C;AAC1C,0BAAyB;AAEzB,kCAA4C;AAC5C,gCAAyC;AACzC,mBAAiC;AAQjC,MAAM,qBAAqB,aAAAA,QAAM,MAAM,eAAeC,sBAAqB;AACzE,QAAM,UAAU,UAAM,+BAAiB;AACvC,QAAM,WAAO,yDAA0B,OAAO;AAC9C,SAAO;AACT,CAAC;AAED,eAAsB,uBAAuB,OAA4B;AACvE,QAAM,EAAE,UAAU,GAAG,KAAK,IAAI;AAC9B,QAAM,EAAE,YAAY,IAAI;AAExB,QAAM,2BAA2B,gBAAgB;AAEjD,iBAAe,uBAAuB;AACpC,QAAI,CAAC,0BAA0B;AAC7B,aAAO,QAAQ,QAAQ,MAAS;AAAA,IAClC;AACA,QAAI,8BAAU;AACZ,aAAO,QAAQ,QAAQ,MAAM,mBAAmB,CAAC;AAAA,IACnD;AACA,WAAO,mBAAmB;AAAA,EAC5B;AAEA,QAAM,oBAAgB,yDAA4B,EAAE,GAAG,KAAK,CAAC;AAE7D,MAAI;AAEJ,MAAI,0BAA0B;AAC5B,aACE;AAAA,MAAC;AAAA;AAAA,QACC,aAAa,qBAAqB;AAAA,QAElC;AAAA,UAAC;AAAA;AAAA,YACE,GAAG;AAAA,YACJ,cAAc,MAAM,qBAAqB;AAAA,YAExC;AAAA;AAAA,QACH;AAAA;AAAA,IACF;AAAA,EAEJ,OAAO;AACL,aACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SAAO;AACT;","names":["React","getTernSecureState"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/app-router/server/auth_new.ts"],"sourcesContent":["import type { Aobj, TernSecureUser} from '../../server/data/getAuthDataFromRequest';\nimport { getAuthDataFromRequestNode } from '../../server/data/getAuthDataFromRequest';\nimport type { RequestLike } from '../../server/types';\nimport { buildRequestLike } from './utils';\n\n/**\n * `Auth` object of the currently active user and the `redirectToSignIn()` method.\n */\ntype Auth = Aobj;\n\nexport interface AuthFn {\n (): Promise<Auth>;\n}\n\nconst createAuthObject = () => {\n return async (req: RequestLike) => {\n return getAuthDataFromRequestNode(req);\n };\n};\n\n/**\n * Get the current authenticated user from the session cookies\n */\nexport const authNew: AuthFn = async () => {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n require('server-only');\n\n const request = await buildRequestLike();\n\n const authObject = await createAuthObject()(request);\n\n return Object.assign(authObject);\n};\n\n\nexport { TernSecureUser }"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oCAA2C;AAE3C,mBAAiC;AAWjC,MAAM,mBAAmB,MAAM;AAC7B,SAAO,OAAO,QAAqB;AACjC,eAAO,0DAA2B,GAAG;AAAA,EACvC;AACF;AAKO,MAAM,UAAkB,YAAY;AAEzC,UAAQ,aAAa;AAErB,QAAM,UAAU,UAAM,+BAAiB;AAEvC,QAAM,aAAa,MAAM,iBAAiB,EAAE,OAAO;AAEnD,SAAO,OAAO,OAAO,UAAU;AACjC;","names":[]}
|