feat(SW-3476): add support for using different curity clients when creating service tokens * fix(SW-3476): add support for using different curity clients when creating service tokens * remove log statement Approved-by: Hrishikesh Vaipurkar
44 lines
1.5 KiB
TypeScript
44 lines
1.5 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: {
|
|
NODE_ENV: z.enum(["development", "test", "production"]),
|
|
REDIS_API_HOST: z.string().optional(),
|
|
REDIS_API_KEY: z.string().optional(),
|
|
BRANCH:
|
|
process.env.NODE_ENV !== "development"
|
|
? z.string()
|
|
: z.string().optional().default("dev"),
|
|
GIT_SHA: z.string().optional(),
|
|
CURITY_ISSUER_USER: z.string(),
|
|
CURITY_CLIENT_ID_SERVICE: z.string().default("scandichotels-web-backend"),
|
|
CURITY_CLIENT_SECRET_SERVICE: z.string(),
|
|
CURITY_CLIENT_SERVICE_SCOPES: z.string().transform((val) =>
|
|
val
|
|
.split(",")
|
|
.map((s) => s.trim())
|
|
.filter(Boolean)
|
|
.toSorted()
|
|
),
|
|
},
|
|
emptyStringAsUndefined: true,
|
|
runtimeEnv: {
|
|
NODE_ENV: process.env.NODE_ENV,
|
|
REDIS_API_HOST: process.env.REDIS_API_HOST,
|
|
REDIS_API_KEY: process.env.REDIS_API_KEY,
|
|
BRANCH: process.env.BRANCH,
|
|
GIT_SHA: process.env.GIT_SHA,
|
|
CURITY_CLIENT_SECRET_SERVICE: process.env.CURITY_CLIENT_SECRET_SERVICE,
|
|
CURITY_ISSUER_USER: process.env.CURITY_ISSUER_USER,
|
|
CURITY_CLIENT_ID_SERVICE: process.env.CURITY_CLIENT_ID_SERVICE,
|
|
CURITY_CLIENT_SERVICE_SCOPES: process.env.CURITY_CLIENT_SERVICE_SCOPES,
|
|
},
|
|
})
|