rajt
Version:
A serverless bundler layer, fully typed for AWS Lambda (Node.js and LLRT) and Cloudflare Workers.
34 lines (26 loc) • 803 B
text/typescript
const prd = Symbol('prd')
const dev = Symbol('dev')
let env = prd
export const getEnv = () => env
export const setEnv = (e: symbol) => env = e
export function detectEnvironment() {
try {
if (
process.env?.npm_lifecycle_event == 'dev'
|| process.env?.AWS_SAM_LOCAL
// || process?.argv?.includes('--dev')
|| process?.argv?.some(arg => ['--dev', '--development', '--watch'].includes(arg))
|| process?.execArgv?.includes('--watch')
|| import.meta.url?.includes('localhost')
) {
return dev
}
} catch (e) { }
return prd
}
export const isEnv = (e: symbol) => env == e
export const isDev = () => env == dev
export const isProd = () => env == prd
export const isDevelopment = isDev
export const isProduction = isProd
export const isPrd = isProd