3.0.4 • Published 5 days ago

@teamteanpm2024/ut-quia-ad v3.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
5 days ago

@teamteanpm2024/ut-quia-ad

Converts process.env into a neatly packed object.

Usage

import config from '@teamteanpm2024/ut-quia-ad';

const myConfig = await config();

What it does

It turns the environment variables below...

API_PORT=3000
API_BASE_URL="http://api.myapp.com/"
API_AUTH_TOKEN=myauthtoken
API_USER_KEYS_0="key1"
API_USER_KEYS_1="key2"
API_USER_KEYS_2="key3"

...into the data below.

{
	api: {
		port: '3000',
		baseUrl: 'http://api.myapp.com',
		authToken: 'myauthtoken',
		userKeys: [
			'key1',
			'key2',
			'key3'
		]
	}
}

Validation

The isvalid package is build into the library and can be used to validate the configuration.

See the documentation for isvalid on how to format the schema.

Example

const myConfig = await config({
	'port': {
		type: Number,
		required: true,
		range: '-65535'
	}
}, /* options = { defaults: { unknownKeys: 'allow' } } */);

The above example will throw an error if the data cannot be validated. It will, though, because of the way isvalid works, convert the port to a Number.

See the isvalid documentation for available options.

The comment in the example is there to show what options config uses per default.

License

See license in LICENSE.

argswrapstylingprivate dataObject.definePropertyremovedom-testing-librarycall-boundidlevarobjtranspileredux-toolkitl10nhttpsargumentroute53watchFileES3cloudwatchsetmoduleswebcontains$.extendtranspileransilook-upnativeES2016circularlinkbootstrap cssflagsnopepnpm9MaptypeconfigurableInt16ArrayjsxpackagesURLhashlogformstylesheetefficientwaapipromiseObjectcallboundamazoncolumnfantasy-landbannerless cssjsdiffharmonybcryptpropbufferloggercallbindwriteloadingfixed-widthsignalstyledirmake dirspecmkdirsramdasymbolsfiltersymlinkObject.getPrototypeOfnpmpackage managermonoreposerializeenderObject.keysPromiseES2018fpsflagless mixinsmacosclass-validatorsetPrototypeOftddRxJSchromiumcolumnspushfile systemECMAScript 2019css lesskeyviewpropertystyleguidecalltoSortedhookformArray.prototype.filtersomeloadbalancingES2015ECMAScript 2015ES5invariantglobtslibspinnerwordbreakfunctionrdspostcssmimetypestypedarrayclassesextendArray.prototype.findLastIndexObservablesObject.assignelasticacheECMAScript 2022ReactiveXpoint-freemkdirpjscurlgettereast-asian-widthdescriptorsprototypeECMAScript 7toolkitwhichdeeppostcss-pluginbluebirdeslint-pluginpackagenameflatMapformses2015valueissettingsCSSuninstalldependenciesexitcss nestingimmutableWebSocketsfetchstyled-componentspersistenttypanionbabelwaitfull-widthsafejapanesestarteronceawesomesaucegetinferencecorsconcatMapES2020ES2022ES2023ECMAScript 6emitassertionpropertiesschemelruwalkAsyncIteratorsettercloneautoscalingtoStringTagrangeerrorpicomatcheventEmittermetadatamakemochaconnectreact posearktypereadabledeepcloneartduplexiteratorpositiveassignFunction.prototype.namettyCSSStyleDeclarationexpressanimationcompileres2016patch-0argvnumbereveryincludesregular expressionsvestserializertypescriptprotobufes-shimsnegative zerotraverseJSONfast-deep-clonetypescryptostringifierES2017rapidfolderArrayflattenlengthelbUint8ClampedArraymiddlewarecreategetPrototypeOfdragglacierslotcompile lessweaksetscheme-validationframerSymbolrecursivecommand-lineterminalreadcall-bindescapesimpledbRFC-6455URLSearchParamsECMAScript 2018cssBigInt64ArrayrequiresymbollimitedhandlerssyntaxerrorsameValueZerosuperagentlookponyfillshamArray.prototype.flatMapreadablestreamutilityfastclonesortedruntimemapreducenodemodulepreserve-symlinkswatchingfullwidthecmascriptPushcloudfrontelectronenvironmentcss variablejsonpathfindLastrateajvFloat64Arraytypedeventswarningyamlenvwafvisualfastcopycss-in-jsmkdirStyleSheetArray.prototype.findLastfindLastIndexdebugirqinternalnamesomitlinewrapesclassnametakebeanstalkqueryextensionbddreact-hookslesscssvalidateIteratorlibphonenumbercorethreeschemamergetyped arrayemojijsdomthrottleenumerablereact animationprettytaplimitjavascriptreact-hook-formes-shim APIinspectgestureszodexecparentsconfigESstoragegatewaysanitizeproxycloudtrailObject.isupmruquerystringa11yunicodeawsurlgroupreact-testing-librarycloudsearchawaittc39descriptionio-tsmimewidthkeysimmergradients cssfunctionalwatchworkerObservablesymlinksrm -rfprefixcolorstreamiteratexssfpstateless0sigtermi18ntrimEndtostringtagexpressionformattingobjectmoverobustautoprefixerconsoletermStreamsgradients css3inputlistenerstsreuseTypedArrayfast-clonekinesisutilsstringparserauthenticationimportexportqueuestructuredCloneArrayBuffer.prototype.sliceUint16ArrayfromutilitiesreducehasconstchromeBigUint64ArraymixinsArray.prototype.containsbuffersbrowserslistvpcfseventsjsonschemajsonoptimizerpreprocessorlockfilefigleteventDispatcherairbnbnodejsoperating-systemlanguagegroupByoffsetcheckextrashimasciidataviewdayjs3dvalidexit-codeECMAScript 2021callbackcopyajaxArray.prototype.includesfindnested cssstylessearchfunctionsfindupspringqsMicrosoftRxmapwgetec2colourdiffgetOwnPropertyDescriptorassertentriesstreamsUint32ArraylintsortauthsidesequencejasmineUint8Arraytextpruneerrorequaltouchfind-upebsTypeBoxbatchclifullES6pipebootstrap lesses2018channelfast-copywordwrapes-abstractiameslintrandompromiseshasOwncode pointsArray.prototype.flatteninstalltestslicetestinges6trimLeftRegExp#flagsshrinkwrapparsingjson-schema-validatorarraysredactconcatbytetelephonebyteLengthuser-streams[[Prototype]]ES7droplessemrpathReflect.getPrototypeOfsharedgdprmime-dbdependency manageriterationWeakMapregular expressionvalidationcolors.envclassnamesratelimitutilerror-handlingstatuscoercibleoptionoptimisttypeerrorparseassertsprivateweakmapkoreanInt32Arraycommanderthroatworkspace:*ArrayBuffer#slicezeroECMAScript 5dateprotoperformantreactimportcharactersflatsharedarraybufferpackage.jsonECMAScript 2016httpavaisConcatSpreadable__proto__spinnersdefinePropertybrowsersyntaxlazyargparseaccessibilitytypeofshellpurevaluesECMAScript 3balancedmatchesoutputES2021linuxarraybufferES8WeakSettoolsString.prototype.trimfastifyArrayBufferswfsetImmediatedataRegExp.prototype.flagsESnextsqsless compilerspeedvariablessiginttrimStartprocessgenericsdomform-validationlastopenes5taskformatdotenvrfc4122bundlingArray.prototype.flatchaifspolyfillvariables in cssforEaches8chineseletbundlerguidgetopttrimRightjQuerymobileObject.valuesmomentperformancedescriptorcacheboundTypeScriptreal-timecensorsuperstructposeestreeendpointcodesapijson-schema-validationECMAScript 2020uuidminimalagentdirectorynegativeworkflowpyyamlECMAScript 2023ieregexpserializationInt8Arraycore-jsbrowserlistdebuggersesprotocol-buffersString.prototype.matchAllwritablematchtypesafeinstallerxhrObject.fromEntriesdeletedataViewcjkdefineshebangtapeintrinsicbusyECMAScript 2017reducergetintrinsiccollection.es6snscharacterphonecompareYAMLhelpersfilepluginresolvekarmadeepcopyyuprmpopmotionhookseslintpluginjoibabel-coredeep-clonequoteJSON-Schemacollectionastfast-deep-copytoobjectregexFloat32Arrayinternal slotdatastructure256signalss3toArrayES2019jwtconcurrencySettrimasyncObject.entriescurriedinterruptsstreams2eslintconfiges2017jestxtermless.jsstableHyBiqueueMicrotaskframeworkjson-schemamatchAllwhatwgregulartesterconsumestringifydynamodbtacites7deterministicbreakrmdiraccessorcomputed-typespasswordSymbol.toStringTagwindowshigher-orderStream6to5sanitizationcryptequalityindicatorreduxbyteOffsetfastwatchervalidatorrm -frparent_.extendencryptionrequestReactiveExtensionsprogressloggingrgbUnderscoretimecloudformation@@toStringTagWebSocketwalkingutil.inspectarraybindtypedarraysdeep-copy
3.0.4

5 days ago

2.0.3

7 days ago

2.0.4

6 days ago

2.0.2

8 days ago

1.0.2

9 days ago

1.0.1

10 days ago

1.0.0

10 days ago