UNPKG

dotenvxjs

Version:

dotenvx is the official Node.js library for .envx files, offering advanced type validation, intelligent interpolation, and conditional logic. It makes environment management safer, more dynamic, and easier to maintain.

1 lines 87 kB
{"version":3,"sources":["../../cli/index.ts","../../package.json","../../shared/configLoader.ts","../../shared/errors/libMessages.ts","../../shared/errors/index.ts","../../src/config.ts","../../src/types/index.ts","../../src/core/parser.ts","../../src/utils/index.ts","../../src/core/validator.ts","../../src/core/resolver.ts","../../src/core/index.ts","../../shared/constants.ts","../../cli/utils/index.ts","../../src/utils/createMetaJson.ts","../../shared/logger.ts","../../cli/commands/build.ts","../../cli/commands/check.ts","../../cli/commands/print.ts","../../src/utils/generateTypesFromEnvx.ts","../../cli/commands/types.ts","../../cli/commands/generate.ts","../../cli/commands/watch.ts"],"names":["package_default","defaultUserConfig","loadUserConfig","jsConfigFileName","jsonPath","path","jsPath","existsSync","raw","readFileSync","__require","LIB_ERROR_MESSAGES","lineNumber","type","key","value","allowed","ERROR_MESSAGES","allowedSchemaTypes","BUILTIN_SCHEMA","EnvxError","message","parseEnvx","content","lines","env","schema","currentSchemaKey","multilineKey","multilineBuffer","i","originalLine","commentIndex","trimmedLine","isSchemaHeader","parseSchemaHeader","parseSchemaLine","isMultilineStart","parseEnvLine","line","target","getNextLine","rawKey","rawValue","splitKeyValue","stripQuotes","descLines","currentLine","nextLine","applyDefault","parsed","v","values","num","trimmedValue","eqIndex","first","last","toBoolean","isEmail","inferTypeFromValue","completeSchemaFromEnvx","completedSchema","parseValueByType","normalized","validateEnv","result","parsedMap","required","defValue","resolveEnvx","entries","rawEnv","resolvedEnv","entry","resolving","resolveValue","currentKey","isTernary","resolveTernary","hasInterpolation","resolveInterpolation","str","_","varName","name","match","operator","compareValue","trueVal","falseVal","actualValue","condition","cmp","loadEnvxFromString","parsedSchema","fullSchema","effectiveSchema","resolved","META_JSON_FILE_NAME","DEFAULT_ENV_FILE","DEFAULT_ENVX_FILE","createMetaJson","meta","prop","createMetaJsonFile","metaFilePath","metaJsonContent","fs","Logger","options","__publicField","level","blue","green","bold","red","yellow","msg","logger","confirmOverwrite","file","resolve","rl","readline","answer","build","input","output","output_relativePath","overwrite","noTypes","dir","check","inputPath","err","print","tsTypeFromEnvType","generateTypesFromEnvx","tsType","optionalFlag","types","outputPath","outputPath_relativePath","typesContent","generate","watch","inputFile","metaPath","outputFile","typesOut","cyan","regenerate","debounce","dim","chokidar","main","program","Command","config","version","sharedOptions"],"mappings":"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","file":"index.mjs","sourcesContent":["#!/usr/bin/env node\r\nimport { Command } from \"commander\";\r\nimport pkg from \"../package.json\";\r\nimport { loadUserConfig } from \"../shared/configLoader\";\r\n\r\nimport { build } from \"./commands/build\";\r\nimport { check } from \"./commands/check\";\r\nimport { print } from \"./commands/print\";\r\nimport { types } from \"./commands/types\";\r\nimport { generate } from \"./commands/generate\";\r\nimport { watch } from \"./commands/watch\";\r\n\r\nasync function main() {\r\n const program = new Command();\r\n // const config = await loadUserConfig() [OLD_VERSION(v0.0.102)]\r\n const config = loadUserConfig();\r\n\r\n const version = pkg.version;\r\n\r\n program\r\n .name(\"dotenvx\")\r\n .description(\"Enhanced CLI for .envx - Manage .envx files effortlessly\")\r\n .version(version);\r\n\r\n program\r\n .command(\"build\")\r\n .description(\"Build .env file from .envx\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .option(\r\n \"-o, --output <file>\",\r\n \"Output .env file\",\r\n config.outputs?.env || \".env\"\r\n )\r\n .option(\r\n \"-m, --metaFilePath <file>\",\r\n \"Output metaJsonFile Folder Path (.envx.meta.json)\",\r\n config.outputs?.metaFilePath || \"envx.ts\"\r\n )\r\n .option(\"--overwrite\", \"Overwrite output\", config.overwrite || false)\r\n .action(build);\r\n\r\n program\r\n .command(\"generate\")\r\n .alias(\"gen\")\r\n .description(\"Generate types and build .env from .envx\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .option(\r\n \"-o, --output <file>\",\r\n \"Output .env file\",\r\n config.outputs?.env || \".env\"\r\n )\r\n .option(\r\n \"-t, --typesOutput <file>\",\r\n \"Output .ts file\",\r\n config.outputs?.types || \"/types/envx.ts\"\r\n )\r\n .option(\r\n \"-m, --metaFilePath <path>\",\r\n \"Meta JSON output folder path\",\r\n config.outputs?.metaFilePath || \".\"\r\n )\r\n .option(\"--overwrite\", \"Overwrite output\", config.overwrite || false)\r\n .action((options) => {\r\n const sharedOptions = {\r\n ...options,\r\n output: options.output,\r\n typesOutput: options.typesOutput,\r\n metaFilePath: options.metaFilePath,\r\n noTypes: true,\r\n };\r\n return generate(sharedOptions);\r\n });\r\n\r\n program\r\n .command(\"watch\")\r\n .description(\"Watch .envx and regenerate .env + types on change\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .option(\r\n \"-o, --output <file>\",\r\n \"Output .env file\",\r\n config.outputs?.env || \".env\"\r\n )\r\n .option(\r\n \"-t, --typesOutput <file>\",\r\n \"Output .ts file\",\r\n config.outputs?.types || \"/types/envx.ts\"\r\n )\r\n .option(\r\n \"-m, --metaFilePath <path>\",\r\n \"Meta JSON output folder path\",\r\n config.outputs?.metaFilePath || \".\"\r\n )\r\n .option(\"--no-types\", \"Do not generate TypeScript types\")\r\n .option(\"--no-build\", \"Do not generate .env file\")\r\n .option(\"--silent\", \"Don't log output to console\")\r\n .action(watch);\r\n\r\n program\r\n .command(\"check\")\r\n .description(\"Validate .envx against its schema\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .action(check);\r\n\r\n program\r\n .command(\"print\")\r\n .description(\"Print parsed .envx as JSON\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .action(print);\r\n\r\n program\r\n .command(\"types\")\r\n .description(\"Generate TypeScript definitions from schema\")\r\n .option(\"-i, --input <file>\", \"Input .envx file\", config.input || \".envx\")\r\n .option(\r\n \"-o, --output <file>\",\r\n \"Output .ts file\",\r\n config.outputs?.types || \"/types/envx.ts\"\r\n )\r\n .option(\r\n \"-m, --metaFilePath <file>\",\r\n \"Output metaJsonFile Folder Path (.envx.meta.json)\",\r\n config.outputs?.metaFilePath || \"envx.ts\"\r\n )\r\n .action(types);\r\n\r\n program.parse();\r\n}\r\n\r\nmain();\r\n","{\n \"name\": \"dotenvxjs\",\n \"version\": \"0.0.12\",\n \"description\": \"dotenvx is the official Node.js library for .envx files, offering advanced type validation, intelligent interpolation, and conditional logic. It makes environment management safer, more dynamic, and easier to maintain.\",\n \"bin\": {\n \"dotenvx\": \"./dist/cli/index.js\"\n },\n \"main\": \"./dist/src/index.js\",\n \"module\": \"./dist/src/index.mjs\",\n \"types\": \"./dist/src/index.d.ts\",\n \"files\": [\n \"dist\"\n ],\n \"scripts\": {\n \"dev\": \"tsup --watch\",\n \"examples-test\": \"ts-node ./examples/index\",\n \"build\": \"tsup\",\n \"test\": \"jest\",\n \"test:watch\": \"jest --watch\"\n },\n \"keywords\": [\n \"dotenv\",\n \"env\",\n \"environment\",\n \"config\",\n \"configuration\",\n \"environment-variables\",\n \"env-loader\",\n \"type-validation\",\n \"interpolation\",\n \"conditional\",\n \"typescript\",\n \"nodejs\",\n \"env-parser\",\n \"dotenvx\",\n \"safe-config\",\n \"config-validation\"\n ],\n \"author\": \"trymagic\",\n \"license\": \"MIT\",\n \"devDependencies\": {\n \"@types/jest\": \"^29.5.14\",\n \"@types/lodash.debounce\": \"^4.0.9\",\n \"@types/node\": \"^22.15.29\",\n \"jest\": \"^29.7.0\",\n \"ts-jest\": \"^29.3.4\",\n \"tsup\": \"^8.5.0\",\n \"typescript\": \"^5.8.3\"\n },\n \"dependencies\": {\n \"chokidar\": \"^4.0.3\",\n \"colorette\": \"^2.0.20\",\n \"commander\": \"^14.0.0\",\n \"lodash.debounce\": \"^4.0.8\"\n }\n}\n","/*\r\nCONFIG FILE STRUCT and ARGUMENTS\r\n`envx.config.js`\r\nmodule.exports = {\r\n input: \"./examples/.envx\",\r\n outputs: {\r\n env: \"./examples/.env\",\r\n types: \"./examples/envx.ts\",\r\n metaFilePath: \"./examples\", // Only Folder path (not include file name)\r\n },\r\n overwrite: true,\r\n};\r\n\r\n`envx.config.json`\r\n{\r\n \"input\": \"./examples/.envx\", // Path to your .envx file\r\n \"outputs\": {\r\n \"env\": \"./examples/.env\", // Output .env file path\r\n \"types\": \"./examples/envx.ts\", // Output TypeScript definition file\r\n \"metaFilePath\": \"./examples\" // Folder where meta JSON will be placed (file name is fixed)\r\n },\r\n \"overwrite\": true // If true, existing .env will be overwritten without prompt\r\n}\r\n\r\n\r\ninput -> Specifies the path to the .envx file\r\noutputs -> used to specify output files\r\n env -> Used to specify the path of the .env file to be converted from .envx\r\n types -> to specify the path to the typescript type file to create\r\n [NEW] metaFilePath -> It is a json file with type etc. data to be created with .env during build, only the folder pathh name can be specified.\r\noverwrite (true/false) -> If .env is present at the time of conversion and the value is true, it is overwritten directly, no questions asked \r\n\r\n*/\r\n\r\nimport path from \"path\";\r\n// import { pathToFileURL } from \"url\";\r\nimport { existsSync, readFileSync } from \"fs\";\r\n\r\nexport const defaultUserConfig = {\r\n input: \"./.envx\",\r\n outputs: {\r\n env: \"./.env\",\r\n types: \"./types/envx.ts\",\r\n metaFilePath: \".\",\r\n },\r\n overwrite: false,\r\n};\r\n\r\nexport function loadUserConfig() {\r\n const jsConfigFileName = \"envx.config.js\";\r\n const jsonConfigFileName = \"envx.config.json\";\r\n\r\n const jsonPath = path.resolve(jsonConfigFileName);\r\n const jsPath = path.resolve(process.cwd(), jsConfigFileName);\r\n\r\n if (existsSync(jsonPath)) {\r\n const raw = readFileSync(jsonPath, \"utf-8\");\r\n try {\r\n return JSON.parse(raw);\r\n } catch (error) {\r\n console.warn(\r\n \"[envx:info:config] Failed to parse envx.config.json, using default config.\"\r\n );\r\n return defaultUserConfig;\r\n }\r\n }\r\n\r\n if (existsSync(jsPath)) {\r\n // const url = pathToFileURL(fullPath).href; [OLD_VERSION(v0.0.102)]\r\n // const config = await import(url); [OLD_VERSION(v0.0.102)]\r\n\r\n try {\r\n const config = require(jsPath);\r\n return config;\r\n } catch (error) {\r\n console.warn(\r\n \"[envx:info:config] Failed to load envx.config.js. This file is only supported in CommonJS environments. \" +\r\n \"Please try using 'envx.config.json' or check your project configuration.\"\r\n );\r\n\r\n return defaultUserConfig;\r\n }\r\n }\r\n\r\n return defaultUserConfig;\r\n}\r\n","// export const LIB_ERROR_MESSAGES = {\r\n// // --- [lib] index.ts error messages --- //\r\n// fileDoesNotExist: (path: string) => {\r\n// return `[envx:error] The specified file does not exist: ${path}`;\r\n// },\r\n\r\n// unsupportedType: (lineNumber: number, type: string) =>\r\n// `[envx:error] Line ${lineNumber + 1}: Unsupported type \"${type}\".`,\r\n\r\n// // --- [lib] validator.ts error messages --- //\r\n// validator: {\r\n// invalidNumber: (key: string, value: string) =>\r\n// `Invalid value for \"${key}\": expected a number but received \"${value}\".`,\r\n// invalidBoolean: (key: string, value: string) =>\r\n// `Invalid boolean for \"${key}\": expected \"true\" or \"false\" but received \"${value}\".`,\r\n// missingEnumValues: (key: string) =>\r\n// `Enum values are not defined for \"${key}\". Please specify allowed values.`,\r\n// invalidEnum: (key: string, value: string, allowed: string[]) =>\r\n// `Invalid enum value for \"${key}\": expected one of [${allowed.join(\r\n// \", \"\r\n// )}] but received \"${value}\".`,\r\n// invalidEmail: (key: string, value: string) =>\r\n// `Invalid email format for \"${key}\": received \"${value}\". Please provide a valid email address.`,\r\n// invalidUrl: (key: string, value: string) =>\r\n// `Invalid URL format for \"${key}\": received \"${value}\". Please provide a valid URL.`,\r\n// unsupportedType: (key: string, type: string) =>\r\n// `Unsupported type \"${type}\" specified for \"${key}\".`,\r\n// requiredMissing: (key: string) =>\r\n// `Required environment variable \"${key}\" is missing and has no default value.`,\r\n// },\r\n\r\n// // --- [lib] resolver.ts error messages --- //\r\n// resolver: {\r\n// circularDependency: (key: string) =>\r\n// `[envx:error] Circular dependency detected while resolving \"${key}\".\\n→ Check for variables referencing each other in a loop.`,\r\n// interpolationFailed: (key: string) =>\r\n// `[envx:error] Failed to resolve variable \"${key}\". No value found for interpolation.`,\r\n// requiredMissingInResolve: (key: string) =>\r\n// `[envx:error] Environment variable \"${key}\" is not set and no default is defined.\\n→ Define \"${key}\" in your .envx file or provide a default value in the schema.`,\r\n// },\r\n\r\n// // --- [lib] parser.ts error messages --- //\r\n// parser: {\r\n// schemaBlockEmpty: (lineNumber: number) =>\r\n// `[envx:error] Line ${lineNumber + 1}: Schema block name cannot be empty.`,\r\n\r\n// schemaKeyDuplicate: (lineNumber: number, key: string) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: Schema key \"${key}\" is already defined. Duplicate schema definitions are not allowed.`,\r\n\r\n// typeAlreadyDefined: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: \"type\" is already defined for this variable. You cannot redefine it.`,\r\n\r\n// unknownSchemaProperty: (lineNumber: number, key: string) =>\r\n// `[envx:error] Line ${lineNumber + 1}: Unknown schema property \"${key}\".`,\r\n\r\n// missingDelimiter: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: Missing \"=\" delimiter in assignment.`,\r\n\r\n// variableNameEmpty: (lineNumber: number) =>\r\n// `[envx:error] Line ${lineNumber + 1}: Variable name cannot be empty.`,\r\n\r\n// typeRequiredBeforeDefault: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: \"type\" must be defined before \"default\".`,\r\n\r\n// defaultMustBeNumber: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: Default value must be a valid number.`,\r\n\r\n// defaultMustBeBoolean: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: Default value must be \"true\" or \"false\".`,\r\n\r\n// defaultNotInEnum: (lineNumber: number, value: string) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: Default \"${value}\" is not in enum values.`,\r\n\r\n// invalidValuesJson: (lineNumber: number) =>\r\n// `[envx:error] Line ${\r\n// lineNumber + 1\r\n// }: \"values\" must be a valid JSON string array.`,\r\n// },\r\n// };\r\n\r\n// errors.ts\r\n\r\nexport const LIB_ERROR_MESSAGES = {\r\n fileDoesNotExist: (path: string) =>\r\n `The specified file does not exist: ${path}`,\r\n\r\n unsupportedType: (lineNumber: number, type: string) =>\r\n `Line ${lineNumber + 1}: Unsupported type \"${type}\".`,\r\n\r\n validator: {\r\n invalidNumber: (key: string, value: string) =>\r\n `Invalid value for \"${key}\": expected a number but received \"${value}\".`,\r\n invalidBoolean: (key: string, value: string) =>\r\n `Invalid boolean for \"${key}\": expected \"true\" or \"false\" but received \"${value}\".`,\r\n missingEnumValues: (key: string) =>\r\n `Enum values are not defined for \"${key}\". Please specify allowed values.`,\r\n invalidEnum: (key: string, value: string, allowed: string[]) =>\r\n `Invalid enum value for \"${key}\": expected one of [${allowed.join(\r\n \", \"\r\n )}] but received \"${value}\".`,\r\n invalidEmail: (key: string, value: string) =>\r\n `Invalid email format for \"${key}\": received \"${value}\". Please provide a valid email address.`,\r\n invalidUrl: (key: string, value: string) =>\r\n `Invalid URL format for \"${key}\": received \"${value}\". Please provide a valid URL.`,\r\n unsupportedType: (key: string, type: string) =>\r\n `Unsupported type \"${type}\" specified for \"${key}\".`,\r\n requiredMissing: (key: string) =>\r\n `Required environment variable \"${key}\" is missing and has no default value.`,\r\n },\r\n\r\n resolver: {\r\n circularDependency: (key: string) =>\r\n `Circular dependency detected while resolving \"${key}\".\\n→ Check for variables referencing each other in a loop.`,\r\n interpolationFailed: (key: string) =>\r\n `Failed to resolve variable \"${key}\". No value found for interpolation.`,\r\n requiredMissingInResolve: (key: string) =>\r\n `Environment variable \"${key}\" is not set and no default is defined.\\n→ Define \"${key}\" in your .envx file or provide a default value in the schema.`,\r\n },\r\n\r\n parser: {\r\n schemaBlockEmpty: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: Schema block name cannot be empty.`,\r\n schemaKeyDuplicate: (lineNumber: number, key: string) =>\r\n `Line ${\r\n lineNumber + 1\r\n }: Schema key \"${key}\" is already defined. Duplicate schema definitions are not allowed.`,\r\n typeAlreadyDefined: (lineNumber: number) =>\r\n `Line ${\r\n lineNumber + 1\r\n }: \"type\" is already defined for this variable. You cannot redefine it.`,\r\n unknownSchemaProperty: (lineNumber: number, key: string) =>\r\n `Line ${lineNumber + 1}: Unknown schema property \"${key}\".`,\r\n missingDelimiter: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: Missing \"=\" delimiter in assignment.`,\r\n variableNameEmpty: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: Variable name cannot be empty.`,\r\n typeRequiredBeforeDefault: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: \"type\" must be defined before \"default\".`,\r\n defaultMustBeNumber: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: Default value must be a valid number.`,\r\n defaultMustBeBoolean: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: Default value must be \"true\" or \"false\".`,\r\n defaultNotInEnum: (lineNumber: number, value: string) =>\r\n `Line ${lineNumber + 1}: Default \"${value}\" is not in enum values.`,\r\n invalidValuesJson: (lineNumber: number) =>\r\n `Line ${lineNumber + 1}: \"values\" must be a valid JSON string array.`,\r\n },\r\n};\r\n","import { LIB_ERROR_MESSAGES } from \"./libMessages\";\r\n\r\nexport const ERROR_MESSAGES = {\r\n lib: LIB_ERROR_MESSAGES,\r\n cli: {},\r\n};\r\n","import { EnvSchema, EnvType } from \"./types\";\r\n\r\nexport const allowedSchemaTypes: Array<EnvType> = [\r\n \"string\",\r\n \"number\",\r\n \"boolean\",\r\n \"enum\",\r\n \"email\",\r\n \"url\",\r\n];\r\n\r\nexport const BUILTIN_SCHEMA: EnvSchema = {\r\n // NODE_ENV: {\r\n // type: \"enum\",\r\n // values: [\"development\", \"production\", \"test\"],\r\n // default: \"development\",\r\n // required: true,\r\n // description: \"Specifies the Node.js environment\",\r\n // },\r\n // TZ: {\r\n // type: \"string\",\r\n // default: \"UTC\",\r\n // required: false,\r\n // description: \"Timezone for Node.js process (default is UTC)\",\r\n // },\r\n};\r\n","export type EnvType =\r\n | \"string\"\r\n | \"number\"\r\n | \"boolean\"\r\n | \"enum\"\r\n | \"email\"\r\n | \"url\";\r\n\r\nexport interface EnvVarSchema {\r\n type: EnvType;\r\n required?: boolean;\r\n default?: string | number | boolean;\r\n values?: Array<string>;\r\n deprecated?: boolean;\r\n description?: string;\r\n}\r\n\r\nexport type EnvSchema = Record<string, EnvVarSchema>;\r\n\r\nexport type EnvResult = Record<string, string | number | boolean>;\r\n\r\nexport class EnvxError extends Error {\r\n constructor(message: string) {\r\n super(message);\r\n this.name = \"EnvxError\";\r\n }\r\n}\r\n","import { ERROR_MESSAGES } from \"../../shared/errors\";\r\nimport { allowedSchemaTypes } from \"../config\";\r\nimport { EnvxError, EnvSchema, EnvVarSchema } from \"../types\";\r\n\r\ninterface ParsedLine {\r\n key: string;\r\n value: any;\r\n}\r\n\r\ninterface ParseResult {\r\n env: ParsedLine[];\r\n schema: EnvSchema;\r\n}\r\n\r\n/**\r\n * Parses a custom `.envx` file format into environment variables and their schema definitions.\r\n *\r\n * The parser supports:\r\n * - Standard key=value lines\r\n * - Multiline values wrapped with triple quotes (`\"\"\"`)\r\n * - Optional schema definitions using section headers like `[VARNAME]`\r\n *\r\n * Example:\r\n * ```\r\n * API_KEY=\"abc123\"\r\n *\r\n * [API_KEY]\r\n * type = string\r\n * required = true\r\n * ```\r\n *\r\n * @para