1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-08-09 07:25:19 +02:00

fix: Keep next_public_ prefix, allow inlining defaults

This commit is contained in:
Six 2024-01-17 18:06:07 -08:00
parent b849f8a293
commit 5c14351a9f
No known key found for this signature in database
GPG key ID: 00148D3869C21E43
3 changed files with 16 additions and 14 deletions

View file

@ -5,7 +5,7 @@
"next",
"next/core-web-vitals"
],
"ignorePatterns": ["!**/*", "styles.css", "**/*.csv", "**/public/*", "**/.next/*"],
"ignorePatterns": ["!**/*", "styles.css", "**/*.csv", "**/public/*", "**/.next/*", "**/*.sh"],
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],

View file

@ -4,7 +4,7 @@
# Config
ENVSH_ENV="${ENVSH_ENV:-"./.env"}"
ENVSH_PREFIX="${ENVSH_PREFIX:-"NEXT_PUBLIC_"}"
ENVSH_PREFIX_STRIP="${ENVSH_PREFIX_STRIP:-true}"
ENVSH_PREFIX_STRIP="${ENVSH_PREFIX_STRIP:-false}"
# Can be `window.__appenv = {` or `const APPENV = {` or whatever you want
ENVSH_PREPEND="${ENVSH_PREPEND:-"window.__appenv = {"}"

View file

@ -1,30 +1,32 @@
declare global {
interface Window {
__appenv: any;
__appenv: any
}
}
function isBrowser() {
return Boolean(typeof window !== "undefined" && window.__appenv);
return Boolean(typeof window !== 'undefined' && window.__appenv)
}
function getEnv(key: string) {
function getEnv(key: string): string | undefined {
if (!key.length) {
throw new Error('No env key provided');
throw new Error('No env key provided')
}
if (isBrowser()) {
return window.__appenv[key];
return window.__appenv[key]
}
return process.env[key];
}
const env = {
NEXT_PUBLIC_API_URL: getEnv("NEXT_PUBLIC_API_URL") || 'http://localhost:3333',
NEXT_PUBLIC_LD_CLIENT_SIDE_ID: getEnv("NEXT_PUBLIC_LD_CLIENT_SIDE_ID") || 'REPLACE_THIS',
NEXT_PUBLIC_SENTRY_DSN: getEnv("NEXT_PUBLIC_SENTRY_DSN"),
NEXT_PUBLIC_SENTRY_ENV: getEnv("NEXT_PUBLIC_SENTRY_ENV"),
NEXT_PUBLIC_API_URL:
getEnv('NEXT_PUBLIC_API_URL') || process.env.NEXT_PUBLIC_API_URL || 'http://localhost:3333',
NEXT_PUBLIC_LD_CLIENT_SIDE_ID:
getEnv('NEXT_PUBLIC_LD_CLIENT_SIDE_ID') ||
process.env.NEXT_PUBLIC_LD_CLIENT_SIDE_ID ||
'REPLACE_THIS',
NEXT_PUBLIC_SENTRY_DSN: getEnv('NEXT_PUBLIC_SENTRY_DSN') || process.env.NEXT_PUBLIC_SENTRY_DSN,
NEXT_PUBLIC_SENTRY_ENV: getEnv('NEXT_PUBLIC_SENTRY_ENV') || process.env.NEXT_PUBLIC_SENTRY_ENV,
}
export default env