Files
web/apps/partner-sas/env/server.ts
Joakim Jäderberg 291310e841 Merged in feature/curity-social-login (pull request #2963)
feat(SW-3541): Do social login after login to SAS

* feat(auth): wip social login via curity

* Setup social login auth flow

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/curity-social-login

* Added support for getting scandic tokens and refresh them

* feat: Enhance social login and session management with auto-refresh and improved error handling

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/curity-social-login

* wrap layout in suspense

* revert app/layout.tsx

* fix import

* cleanup

* merge

* merge

* dont pass client_secret in the url to curity

* add state validation when doing social login through /authorize

* remove debug logging


Approved-by: Anton Gunnarsson
2025-10-16 12:47:12 +00:00

49 lines
1.8 KiB
TypeScript

import { createEnv } from "@t3-oss/env-nextjs"
import { z } from "zod"
export const env = createEnv({
/**
* Due to t3-env only checking typeof window === "undefined"
* and Netlify running Deno, window is never "undefined"
* https://github.com/t3-oss/t3-env/issues/154
*/
isServer: typeof window === "undefined" || "Deno" in window,
server: {
ADOBE_SDK_SCRIPT_SRC: z.string().optional(),
ENABLE_GTMSCRIPT: z
.string()
// only allow "true" or "false"
.refine((s) => s === "true" || s === "false")
// transform to boolean
.transform((s) => s === "true")
.default("false"),
PUBLIC_URL: z.string().default(""),
SAS_AUTH_ENDPOINT: z.string().default(""),
SAS_AUTH_CLIENTID: z.string().default(""),
NEXTAUTH_DEBUG: z
.string()
.refine((s) => s === "true" || s === "false")
.transform((s) => s === "true")
.default("false"),
SENTRY_ENVIRONMENT: z.string().default("development"),
SENTRY_SERVER_SAMPLERATE: z.coerce.number().default(0.001),
IRON_SESSION_SECRET: z.string().min(32),
CURITY_ISSUER_USER: z.string(),
CURITY_CLIENT_SECRET_USER: z.string(),
},
emptyStringAsUndefined: true,
runtimeEnv: {
ADOBE_SDK_SCRIPT_SRC: process.env.ADOBE_SDK_SCRIPT_SRC,
CURITY_CLIENT_SECRET_USER: process.env.CURITY_CLIENT_SECRET_USER,
CURITY_ISSUER_USER: process.env.CURITY_ISSUER_USER,
ENABLE_GTMSCRIPT: process.env.ENABLE_GTMSCRIPT,
IRON_SESSION_SECRET: process.env.IRON_SESSION_SECRET,
NEXTAUTH_DEBUG: process.env.NEXTAUTH_DEBUG,
PUBLIC_URL: process.env.NEXT_PUBLIC_PUBLIC_URL,
SAS_AUTH_CLIENTID: process.env.SAS_AUTH_CLIENTID,
SAS_AUTH_ENDPOINT: process.env.SAS_AUTH_ENDPOINT,
SENTRY_ENVIRONMENT: process.env.NEXT_PUBLIC_SENTRY_ENVIRONMENT,
SENTRY_SERVER_SAMPLERATE: process.env.SENTRY_SERVER_SAMPLERATE,
},
})