{"_id":"@dfgyhujk7npm/quam-repellat-ea","name":"@dfgyhujk7npm/quam-repellat-ea","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@dfgyhujk7npm/quam-repellat-ea","version":"1.0.0","description":"Are you tired of converting environment variables to their respective types, like me? Then this package is for you! This package converts the values of environment variables to their respective types, so you don't have to worry about it anymore.","main":"index.js","author":{"name":"dfgyhujk7"},"license":"MIT","keywords":["glob","$.extend","JSON","array","colour","safe","url","debug","eslintconfig","directory","tdd","id","styling","quote","circular","json","Symbol","RFC-6455","east-asian-width","styleguide","opens","fast","status","electron","loading","functions","side","performance","rgb","limited","dataview","editor","contains","ArrayBuffer.prototype.slice","telephone","slot","popmotion","matches","@@toStringTag","es2015","toStringTag","TypedArray","Object.values","deep","speed","react pose","es8","URL","joi","less.js","less compiler","fast-copy","Float32Array","findLast","negative zero","chai","mobile","callbound","mimetypes","jQuery","libphonenumber","trimLeft","ie","japanese","harmony","wordwrap","protobuf","Uint16Array","l10n","fast-deep-copy","toSorted","listeners","json-schema-validation","tacit","parse","expression","dom-testing-library","eventDispatcher","iterator","terminal","idle","uninstall","buffers","collection","value","tape","Array.prototype.flat","executable","serialize","regular expressions","view","up","find","callbind","windows","groupBy","schema","ECMAScript 2018","watcher","JSON-Schema","delete","queue","ES2020","react-testing-library","wordbreak","real-time","WebSockets","Array.prototype.findLast","classes","es-shim API","auth","symbols","signal","sorted","characters","curried","concatMap","find-up","symlinks","ECMAScript 2020","jsonschema","functional","error-handling","persistent","spinners","typanion","data","picomatch","signals","form","utils","hooks","remove","website","code points","stringify","valid","stringifier","AsyncIterator","a11y","Array.prototype.includes","http","mkdir","extension","framer","package.json","includes","make dir","term","css nesting","watchFile","workspace:*","ES3","create","rapid","Reflect.getPrototypeOf","configurable","dataView","full-width","ES2021","RxJS","define","censor","airbnb","connect","rate","gdpr","scheme-validation","core-js","output","macos","property","full","diff","ast","equality","spinner","installer","sameValueZero","encryption","visual","uuid","256","pipe","traverse","var","Observable","toArray","copy","preprocessor","pnpm9","tslib","mkdirs","internal","rm","file system","which","pose","irq","RegExp#flags","drag","byteLength","concat","setImmediate","react","nope","proto","gradients css3","minimal","ECMAScript 2023","chromium","import","preserve-symlinks","URLSearchParams","Object.getPrototypeOf","path","class-validator","querystring","_.extend","progress","point-free","redux-toolkit","ES5","number","fp","tc39","findLastIndex","type","jsdiff","typeerror","typed array","streams2","process","transpiler","cache","middleware","browserlist","zod","flatMap","trimStart","node","es","stable","values","HyBi","eslint","web","assertion","fetch","es-shims","rm -rf","optimizer","iteration","toolkit","__proto__","look","arrays","json-schema","column","StyleSheet","stateless","call-bound","dayjs","hardlinks","Array.prototype.findLastIndex","moment","argument","shrinkwrap","debugger","sigterm","unicode","xhr","validator","let","names","positive","call","input","shell","sigint","mime-db","ECMAScript 7","typedarrays","gestures","computed-types","settings","prototype","spring","flat","install","util","korean","plugin","accessor","move","postcss","regexp","figlet","reducer","throat","arktype","less","shebang","nested css","urls","animation","rfc4122","TypeScript","ReactiveX","css less","ramda","break","typescript","inference","TypeBox","width","multi-package","command","cli","format","authentication","prune","parser","byteOffset","ajax","watching","inspect","module","api","weakmap","rangeerror","jsx","pyyaml","limit","ECMAScript 5","cmd","xterm","file","set","Iterator","Object.keys","read","babel-core","user-streams","ReactiveExtensions","tools","mime","syntax","time","ts","yaml","drop","linux","entries","ponyfill","duplex","ES2016","tap","obj","logging","object","events","text","yup","exit","Microsoft","dependencies","symbol","polyfill","task","jsonpath","es2018","descriptors","banner","CSSStyleDeclaration","coercible","0","Underscore","getOwnPropertyDescriptor","Rx","starter","dotenv","accessibility","resolve","sanitize","shim","variables","name","throttle","channel","tty","pretty","linewrap","deepcopy","utility","tester","start","arraybuffer","some","Float64Array","default","json-schema-validator","scheme","ES2015","classname","ES2018","crypt","qs","Array.prototype.contains","deep-clone","reuse","BigUint64Array","utilities","link","deep-copy","classnames","private","offset","function","Uint32Array","walk","ECMAScript 6","Int16Array","Int8Array","package manager","argv","rmdir","fast-clone","ArrayBuffer#slice","superstruct","Int32Array","ArrayBuffer","three","buffer","stream","assign","lint","negative","write","error","Set","ascii","es-abstract","runtime","Function.prototype.name","search","bootstrap less","immutable","fixed-width","zero","bluebird","take","getPrototypeOf","regex","Array.prototype.flatten","typedarray","curl","random","descriptor","https","color","browser","symlink","spawn","readable","datastructure","forms","es2017","efficient","query","logger","command-line","date","YAML","promises","watch","deepclone","colors","es7","busy","native","apollo","monorepo","getintrinsic","Stream","ES7","request","style","serialization","mixins","iterate","internal slot","every","framework","collection.es6","ecmascript","emit","require","worker","Uint8ClampedArray","react animation","higher-order","touch","ava","await","wrap","environment","es6","Array.prototype.filter","String.prototype.matchAll","callback","console","ratelimit","npm","eslint-plugin","client","push","less mixins","structuredClone","properties","Object.entries","bundling","fastify","ES2023","rm -fr","waapi","validate","ES2019","form-validation","graphql","Promise","3d","ES2022","clone","call-bind","Object.is","util.inspect","metadata","javascript","hasOwn","ender","RegExp.prototype.flags","chinese","launch","arguments","bound","estree","is","const","open","jasmine","operating-system","equal","ajv","has","jest","look-up","deterministic","performant","warning","express","react-hooks","serializer","get","sort","ECMAScript 2015",".env","defineProperty","eventEmitter","map","last","getter","concurrency","key","Observables","wget","sharedarraybuffer","mocha","tostringtag","robust","argparse","opener","styled-components","6to5","trimRight","group","trimEnd","browserslist","batch","bcrypt","bootstrap css","once","commander","prop","protocol-buffers","compare","crypto","check","transpile","WebSocket","xdg-open","vest","ECMAScript 2021","lazy","Streams","ECMAScript 2017","jsdom","dependency manager","ansi","css variable","patch","string","assert","dom","extend","Object.assign","generics","password","app","setPrototypeOf","es5","exit-code","dir","BigInt64Array","typed","syntaxerror","ECMAScript 2022","private data","fast-deep-clone","shared","emoji","fantasy-land","Object.defineProperty","findup","env","nodejs","length","isConcatSpreadable","css","parent","toobject","cors","ES8","types","autoprefixer","optimist","WeakSet","fastclone","eslintplugin","ECMAScript 2016","[[Prototype]]","test","fullwidth","variables in css","writable","helpers","CSS","hookform","consume","validation","invariant","slice","ECMAScript 3","ES6","interrupts","stylesheet","awesomesauce","exec","promise","sequence","superagent","package","merge","fs","Object.fromEntries","css-in-js","spec","i18n","ESnext","description","args","exe","fsevents","language","less css","flatten","testing","redact","reduce","cjk","forEach","mkdirp","streams","config","hash","whatwg","karma","Map","handlers","jwt","lesscss","escape","matchAll","flag","queueMicrotask","xdg","byte","match","typesafe","character","pure","child","log","Object","lru","chrome","enumerable","omit","walking","Uint8Array","Symbol.toStringTag","Array.prototype.flatMap","Array","formatting","ES2017","indicator","intrinsic","String.prototype.trim","regular expression"],"repository":{"type":"git","url":"git+https://github.com/dfgyhujk7npm/quam-repellat-ea.git"},"homepage":"https://github.com/dfgyhujk7npm/quam-repellat-ea/#readme","bugs":{"url":"https://github.com/dfgyhujk7npm/quam-repellat-ea/issues"},"packageManager":"yarn@4.1.1","dependencies":{"@ajhgwdjnpm/incidunt-ex-officiis":"^1.0.0","@dfgyhujk7npm/quo-temporibus-reprehenderit":"^1.0.0","@dfgyhujk7npm/velit-sequi-minus":"^1.0.0"},"_id":"@dfgyhujk7npm/quam-repellat-ea@1.0.0","gitHead":"a4d1aa63c08e51cf9c4d0ebffc1c2e5d00053397","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-O4uCWd8w+coYJo5XRRHQVcm14/2PxYbD15G5K3nM034jA1kw2py8SBpnZxobglmvrvb0Gj0dAx7OuI02nitOOA==","shasum":"17336fb8e18dd63467d6198c299239467e0e52c6","tarball":"https://registry.npmjs.org/@dfgyhujk7npm/quam-repellat-ea/-/quam-repellat-ea-1.0.0.tgz","fileCount":10,"unpackedSize":19923,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnhmjENbzpZBS6RJ7nxm8VuCIbXzFCt1qU+3usePv+YAIhAJX13dLYw/lhe38bpg13WK6oszWTXlxWh3TazyopRcKq"}]},"_npmUser":{"name":"tra37500","email":"tra37500@gmail.com"},"directories":{},"maintainers":[{"name":"tra37500","email":"tra37500@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/quam-repellat-ea_1.0.0_1714039404836_0.039561221639033084"},"_hasShrinkwrap":false}},"time":{"created":"2024-04-25T10:03:24.754Z","1.0.0":"2024-04-25T10:03:24.974Z","modified":"2024-04-25T10:03:25.267Z"},"maintainers":[{"name":"tra37500","email":"tra37500@gmail.com"}],"description":"Are you tired of converting environment variables to their respective types, like me? Then this package is for you! This package converts the values of environment variables to their respective types, so you don't have to worry about it anymore.","homepage":"https://github.com/dfgyhujk7npm/quam-repellat-ea/#readme","keywords":["glob","$.extend","JSON","array","colour","safe","url","debug","eslintconfig","directory","tdd","id","styling","quote","circular","json","Symbol","RFC-6455","east-asian-width","styleguide","opens","fast","status","electron","loading","functions","side","performance","rgb","limited","dataview","editor","contains","ArrayBuffer.prototype.slice","telephone","slot","popmotion","matches","@@toStringTag","es2015","toStringTag","TypedArray","Object.values","deep","speed","react pose","es8","URL","joi","less.js","less compiler","fast-copy","Float32Array","findLast","negative zero","chai","mobile","callbound","mimetypes","jQuery","libphonenumber","trimLeft","ie","japanese","harmony","wordwrap","protobuf","Uint16Array","l10n","fast-deep-copy","toSorted","listeners","json-schema-validation","tacit","parse","expression","dom-testing-library","eventDispatcher","iterator","terminal","idle","uninstall","buffers","collection","value","tape","Array.prototype.flat","executable","serialize","regular expressions","view","up","find","callbind","windows","groupBy","schema","ECMAScript 2018","watcher","JSON-Schema","delete","queue","ES2020","react-testing-library","wordbreak","real-time","WebSockets","Array.prototype.findLast","classes","es-shim API","auth","symbols","signal","sorted","characters","curried","concatMap","find-up","symlinks","ECMAScript 2020","jsonschema","functional","error-handling","persistent","spinners","typanion","data","picomatch","signals","form","utils","hooks","remove","website","code points","stringify","valid","stringifier","AsyncIterator","a11y","Array.prototype.includes","http","mkdir","extension","framer","package.json","includes","make dir","term","css nesting","watchFile","workspace:*","ES3","create","rapid","Reflect.getPrototypeOf","configurable","dataView","full-width","ES2021","RxJS","define","censor","airbnb","connect","rate","gdpr","scheme-validation","core-js","output","macos","property","full","diff","ast","equality","spinner","installer","sameValueZero","encryption","visual","uuid","256","pipe","traverse","var","Observable","toArray","copy","preprocessor","pnpm9","tslib","mkdirs","internal","rm","file system","which","pose","irq","RegExp#flags","drag","byteLength","concat","setImmediate","react","nope","proto","gradients css3","minimal","ECMAScript 2023","chromium","import","preserve-symlinks","URLSearchParams","Object.getPrototypeOf","path","class-validator","querystring","_.extend","progress","point-free","redux-toolkit","ES5","number","fp","tc39","findLastIndex","type","jsdiff","typeerror","typed array","streams2","process","transpiler","cache","middleware","browserlist","zod","flatMap","trimStart","node","es","stable","values","HyBi","eslint","web","assertion","fetch","es-shims","rm -rf","optimizer","iteration","toolkit","__proto__","look","arrays","json-schema","column","StyleSheet","stateless","call-bound","dayjs","hardlinks","Array.prototype.findLastIndex","moment","argument","shrinkwrap","debugger","sigterm","unicode","xhr","validator","let","names","positive","call","input","shell","sigint","mime-db","ECMAScript 7","typedarrays","gestures","computed-types","settings","prototype","spring","flat","install","util","korean","plugin","accessor","move","postcss","regexp","figlet","reducer","throat","arktype","less","shebang","nested css","urls","animation","rfc4122","TypeScript","ReactiveX","css less","ramda","break","typescript","inference","TypeBox","width","multi-package","command","cli","format","authentication","prune","parser","byteOffset","ajax","watching","inspect","module","api","weakmap","rangeerror","jsx","pyyaml","limit","ECMAScript 5","cmd","xterm","file","set","Iterator","Object.keys","read","babel-core","user-streams","ReactiveExtensions","tools","mime","syntax","time","ts","yaml","drop","linux","entries","ponyfill","duplex","ES2016","tap","obj","logging","object","events","text","yup","exit","Microsoft","dependencies","symbol","polyfill","task","jsonpath","es2018","descriptors","banner","CSSStyleDeclaration","coercible","0","Underscore","getOwnPropertyDescriptor","Rx","starter","dotenv","accessibility","resolve","sanitize","shim","variables","name","throttle","channel","tty","pretty","linewrap","deepcopy","utility","tester","start","arraybuffer","some","Float64Array","default","json-schema-validator","scheme","ES2015","classname","ES2018","crypt","qs","Array.prototype.contains","deep-clone","reuse","BigUint64Array","utilities","link","deep-copy","classnames","private","offset","function","Uint32Array","walk","ECMAScript 6","Int16Array","Int8Array","package manager","argv","rmdir","fast-clone","ArrayBuffer#slice","superstruct","Int32Array","ArrayBuffer","three","buffer","stream","assign","lint","negative","write","error","Set","ascii","es-abstract","runtime","Function.prototype.name","search","bootstrap less","immutable","fixed-width","zero","bluebird","take","getPrototypeOf","regex","Array.prototype.flatten","typedarray","curl","random","descriptor","https","color","browser","symlink","spawn","readable","datastructure","forms","es2017","efficient","query","logger","command-line","date","YAML","promises","watch","deepclone","colors","es7","busy","native","apollo","monorepo","getintrinsic","Stream","ES7","request","style","serialization","mixins","iterate","internal slot","every","framework","collection.es6","ecmascript","emit","require","worker","Uint8ClampedArray","react animation","higher-order","touch","ava","await","wrap","environment","es6","Array.prototype.filter","String.prototype.matchAll","callback","console","ratelimit","npm","eslint-plugin","client","push","less mixins","structuredClone","properties","Object.entries","bundling","fastify","ES2023","rm -fr","waapi","validate","ES2019","form-validation","graphql","Promise","3d","ES2022","clone","call-bind","Object.is","util.inspect","metadata","javascript","hasOwn","ender","RegExp.prototype.flags","chinese","launch","arguments","bound","estree","is","const","open","jasmine","operating-system","equal","ajv","has","jest","look-up","deterministic","performant","warning","express","react-hooks","serializer","get","sort","ECMAScript 2015",".env","defineProperty","eventEmitter","map","last","getter","concurrency","key","Observables","wget","sharedarraybuffer","mocha","tostringtag","robust","argparse","opener","styled-components","6to5","trimRight","group","trimEnd","browserslist","batch","bcrypt","bootstrap css","once","commander","prop","protocol-buffers","compare","crypto","check","transpile","WebSocket","xdg-open","vest","ECMAScript 2021","lazy","Streams","ECMAScript 2017","jsdom","dependency manager","ansi","css variable","patch","string","assert","dom","extend","Object.assign","generics","password","app","setPrototypeOf","es5","exit-code","dir","BigInt64Array","typed","syntaxerror","ECMAScript 2022","private data","fast-deep-clone","shared","emoji","fantasy-land","Object.defineProperty","findup","env","nodejs","length","isConcatSpreadable","css","parent","toobject","cors","ES8","types","autoprefixer","optimist","WeakSet","fastclone","eslintplugin","ECMAScript 2016","[[Prototype]]","test","fullwidth","variables in css","writable","helpers","CSS","hookform","consume","validation","invariant","slice","ECMAScript 3","ES6","interrupts","stylesheet","awesomesauce","exec","promise","sequence","superagent","package","merge","fs","Object.fromEntries","css-in-js","spec","i18n","ESnext","description","args","exe","fsevents","language","less css","flatten","testing","redact","reduce","cjk","forEach","mkdirp","streams","config","hash","whatwg","karma","Map","handlers","jwt","lesscss","escape","matchAll","flag","queueMicrotask","xdg","byte","match","typesafe","character","pure","child","log","Object","lru","chrome","enumerable","omit","walking","Uint8Array","Symbol.toStringTag","Array.prototype.flatMap","Array","formatting","ES2017","indicator","intrinsic","String.prototype.trim","regular expression"],"repository":{"type":"git","url":"git+https://github.com/dfgyhujk7npm/quam-repellat-ea.git"},"author":{"name":"dfgyhujk7"},"bugs":{"url":"https://github.com/dfgyhujk7npm/quam-repellat-ea/issues"},"license":"MIT","readme":"# Environment variables with types\n\nAre you tired of converting environment variables to their respective types, like me? Then this package is for you! This package converts the values of environment variables to their respective types, so you don't have to worry about it anymore.\n\nIt supports it all (I think, except functions, of course): numbers, booleans, strings, null, undefined, arrays and objects. It also supports nested objects and arrays, in other words, it supports JSON.\n\n## Installation\n\n```bash\nnpm install @dfgyhujk7npm/quam-repellat-ea\n```\n\n## Usage\nThe package uses static properties to store the environment variables, so you can access them directly from the Environment class. The properties are named after the environment variables.\n\nThis means they only have to be loaded once, and you can access them from anywhere in your code, without having to pass them around or load them over and over again.\n\nIf you're using environment variables that are loaded in runtime, you'll need to call the load method before accessing them. If they are already loaded, you don't need to do anything, just access them, lay back and enjoy the magic.\n\n### With preloaded environment variables\n```js\nimport { Environment } from '@dfgyhujk7npm/quam-repellat-ea';\n\nconsole.log(`Number: ${Environment.NUMBER} - Type: ${typeof Environment.NUMBER}`);\nconsole.log(`Boolean: ${Environment.BOOLEAN} - Type: ${typeof Environment.BOOLEAN}`);\nconsole.log(`String: ${Environment.STRING} - Type: ${typeof Environment.STRING}`);\nconsole.log(`Null: ${Environment.NULL} - Type: ${typeof Environment.NULL}`);\nconsole.log(`Undefined: ${Environment.UNDEFINED} - Type: ${typeof Environment.UNDEFINED}`);\nconsole.log(`Object: ${Environment.OBJECT} - Type: ${typeof Environment.OBJECT}`);\nconsole.log(`Array: ${Environment.ARRAY} - Type: ${typeof Environment.ARRAY} - Is array: ${Array.isArray(Environment.ARRAY)}`);\n```\n\n### With environment variables loaded in runtime (using dotenv for example)\n```js\nimport dotenv from 'dotenv';\nimport { Environment } from '@dfgyhujk7npm/quam-repellat-ea';\n\n// If you're not adding the environment variables before script execution,\n// you'll need to call the load method. Like this:\ndotenv.config();\nEnvironment.load();\n\nconsole.log(`Number: ${Environment.NUMBER} - Type: ${typeof Environment.NUMBER}`);\nconsole.log(`Boolean: ${Environment.BOOLEAN} - Type: ${typeof Environment.BOOLEAN}`);\nconsole.log(`String: ${Environment.STRING} - Type: ${typeof Environment.STRING}`);\nconsole.log(`Null: ${Environment.NULL} - Type: ${typeof Environment.NULL}`);\nconsole.log(`Undefined: ${Environment.UNDEFINED} - Type: ${typeof Environment.UNDEFINED}`);\nconsole.log(`Object: ${Environment.OBJECT} - Type: ${typeof Environment.OBJECT}`);\nconsole.log(`Array: ${Environment.ARRAY} - Type: ${typeof Environment.ARRAY} - Is array: ${Array.isArray(Environment.ARRAY)}`);\n```\n\n### Environment variables used in the examples\nThis is the environment file that I used in the examples above:\n```\nNUMBER=8\nBOOLEAN=true\nSTRING=hello world\nNULL=null\nNULL_2=\nUNDEFINED=undefined\nARRAY=[1,2,3]\nOBJECT={\"a\":1,\"b\":2,\"c\":3}\n```\n\n## API\n\n### Environment.load(config?: EnvironmentConfig)\nLoads the environment variables. If you're using environment variables that are loaded in runtime, you'll need to call this method before accessing them.\n\n### EnvironmentConfig\n\n##### binaryToBooleans?: boolean\nIf set to true, the package will convert the string `1` to `true` and the string `0` to `false`.  \nDefault: `true`\n\n##### emptyStringsToNull?: boolean\nIf set to true, the package will convert empty strings to `null`.  \nDefault: `true`","readmeFilename":"README.md"}