mirror of
https://github.com/placeholder-soft/libs.git
synced 2026-01-13 07:20:03 +08:00
9ffaa88af080cb653ff90bd44a5c77507802e167
* feat: type-env lib * feat/typed env cli (#2) * chore: create typed-env cli * feat: typed-env cli implementation * chore: build cli * publish cli * feat: supplementary documents * chore: change phs to placeholdersoft * chore: add keywords/homepage/repository * chore: del description
typed-env
typed-env can help us better handle environment variables
Methods
commands
lib
Install
typed-env-cli
$ npm install -g @placeholdersoft/typed-env-cli
typed-env
$ npm install @placeholdersoft/typed-env
Usage typed-env-cli
diff-env
Output diff env
USAGE
$ typed-env diff-env -p <value> -a <value>
FLAGS
-a, --after-env=<value> (required) enter change env json
-p, --prev-env=<value> (required) enter current env json
DESCRIPTION
Output diff env
EXAMPLES
$ typed-env diff-env -a "$(env)" -p "$(env)"
diff-env-name
Output diff env name
USAGE
$ typed-env diff-env-name -p <value> -a <value>
FLAGS
-a, --after-env=<value> (required) enter change env json
-p, --prev-env=<value> (required) enter current env json
DESCRIPTION
Output diff env name
EXAMPLES
$ typed-env diff-env-name -a "$(env)" -p "$(env)"
gen-env
Generate .env
USAGE
$ typed-env gen-env -s <value> -t <value> [-o <value>]
FLAGS
-o, --output=<value> enter the output file path
-s, --source-file=<value> (required) enter the file path to check
-t, --tsconfig=<value> (required) enter the tsconfig.json path
DESCRIPTION
Generate .env
EXAMPLES
$ typed-env gen-env -s ./src/index.ts -t ./tsconfig.json -o ./src/.env
gen-env-name-type
Generate env name type definition
USAGE
$ typed-env gen-env-name-type -s <value> -t <value> [-o <value>]
FLAGS
-o, --output=<value> enter the output file path
-s, --source-file=<value> (required) enter the file path to check
-t, --tsconfig=<value> (required) enter the tsconfig.json path
DESCRIPTION
Generate env name type definition
EXAMPLES
$ typed-env gen-env-name-type -s ./src/index.ts -t ./tsconfig.json -o ./src/env.d.ts
gen-typed-env-call-usage-report
Generate typed-env call usage report
USAGE
$ typed-env gen-typed-env-call-usage-report -s <value> -t <value> [-o <value>]
FLAGS
-o, --output=<value> enter the output file path
-s, --source-file=<value> (required) enter the file path to check
-t, --tsconfig=<value> (required) enter the tsconfig.json path
DESCRIPTION
Generate typed-env call usage report
EXAMPLES
$ typed-env gen-typed-env-call-usage-report -s ./src/index.ts -t ./tsconfig.json -o ./src/typed-env-call-usage-report.json
Usage typed-env
typeEnv
// Support evn-name type check
/**
* @param key env key
* @returns EnvBox
*/
export declare function typedEnv<T extends string>(
key: T
): EnvBox<NodeJS.ProcessEnv[T]>;
type EnvName = 'NODE_VERSION' | 'PORT' | 'LOG_LEVEL'
typedEnv<EnvName>('PORT').required().toInt(); // ok
typedEnv<EnvName>('DEBUG').required().toInt(); // error: env name not found
anyEnv
/**
* @param key env key
* @returns EnvBox
*/
export declare function typedEnv(key: string): EnvBox;
anyEnv('DEBUG').required().toInt(); // ok
Description
Languages
TypeScript
95.3%
JavaScript
4.6%
Batchfile
0.1%