Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions waspc/data/Generator/templates/sdk/wasp/client/config.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{{={= =}=}}
import { stripTrailingSlash } from '../universal/url.js'
import { env } from './env.js'

const apiUrl = stripTrailingSlash(env.REACT_APP_API_URL)
const apiUrl = stripTrailingSlash(env["{= serverUrlEnvVarName =}"])

// PUBLIC API
export type ClientConfig = {
apiUrl: string,
}
}

// PUBLIC API
export const config: ClientConfig = {
Expand Down
4 changes: 2 additions & 2 deletions waspc/data/Generator/templates/sdk/wasp/client/env/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ const userClientEnvSchema = z.object({})
{=/ envValidationSchema.isDefined =}

const waspClientEnvSchema = z.object({
REACT_APP_API_URL: z
"{= serverUrlEnvVarName =}": z
.string()
.url({
message: 'REACT_APP_API_URL must be a valid URL',
message: '{= serverUrlEnvVarName =} must be a valid URL',
})
.default('{= defaultServerUrl =}'),
})
Expand Down
6 changes: 3 additions & 3 deletions waspc/data/Generator/templates/sdk/wasp/server/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ type Config = {
{=/ isAuthEnabled =}
}

const frontendUrl = stripTrailingSlash(env.WASP_WEB_CLIENT_URL)
const serverUrl = stripTrailingSlash(env.WASP_SERVER_URL)
const frontendUrl = stripTrailingSlash(env["{= clientUrlEnvVarName =}"])
const serverUrl = stripTrailingSlash(env["{= serverUrlEnvVarName =}"])

const allowedCORSOriginsPerEnv: Record<NodeEnv, string | string[]> = {
development: '*',
Expand All @@ -38,7 +38,7 @@ const config: Config = {
databaseUrl: env.{= databaseUrlEnvVarName =},
{=# isAuthEnabled =}
auth: {
jwtSecret: env.JWT_SECRET
jwtSecret: env["{= jwtSecretEnvVarName =}"]
}
{=/ isAuthEnabled =}
}
Expand Down
22 changes: 11 additions & 11 deletions waspc/data/Generator/templates/sdk/wasp/server/env.ts
Original file line number Diff line number Diff line change
Expand Up @@ -107,47 +107,47 @@ const waspServerCommonSchema = z.object({

const serverUrlSchema = z
.string({
required_error: 'WASP_SERVER_URL is required',
required_error: '{= serverUrlEnvVarName =} is required',
})
.url({
message: 'WASP_SERVER_URL must be a valid URL',
message: '{= serverUrlEnvVarName =} must be a valid URL',
})

const clientUrlSchema = z
.string({
required_error: 'WASP_WEB_CLIENT_URL is required',
required_error: '{= clientUrlEnvVarName =} is required',
})
.url({
message: 'WASP_WEB_CLIENT_URL must be a valid URL',
message: '{= clientUrlEnvVarName =} must be a valid URL',
})

{=# isAuthEnabled =}
const jwtTokenSchema = z
.string({
required_error: 'JWT_SECRET is required',
required_error: '{= jwtSecretEnvVarName =} is required',
})
{=/ isAuthEnabled =}

// In development, we provide default values for some environment variables
// to make the development process easier.
const serverDevSchema = z.object({
NODE_ENV: z.literal('development'),
WASP_SERVER_URL: serverUrlSchema
"{= serverUrlEnvVarName =}": serverUrlSchema
.default('{= defaultServerUrl =}'),
WASP_WEB_CLIENT_URL: clientUrlSchema
"{= clientUrlEnvVarName =}": clientUrlSchema
.default('{= defaultClientUrl =}'),
{=# isAuthEnabled =}
JWT_SECRET: jwtTokenSchema
"{= jwtSecretEnvVarName =}": jwtTokenSchema
.default('DEVJWTSECRET'),
{=/ isAuthEnabled =}
})

const serverProdSchema = z.object({
NODE_ENV: z.literal('production'),
WASP_SERVER_URL: serverUrlSchema,
WASP_WEB_CLIENT_URL: clientUrlSchema,
"{= serverUrlEnvVarName =}": serverUrlSchema,
"{= clientUrlEnvVarName =}": clientUrlSchema,
{=# isAuthEnabled =}
JWT_SECRET: jwtTokenSchema,
"{= jwtSecretEnvVarName =}": jwtTokenSchema,
{=/ isAuthEnabled =}
})

Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading