1.0.0 • Published 21 days ago

@devtea2028/accusamus-minima-molestias-dolor v1.0.0

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

@devtea2028/accusamus-minima-molestias-dolor

CI NPM version js-standard-style

A small utility, used by Fastify itself, for generating consistent error objects across your codebase and plugins.

Install

npm i @devtea2028/accusamus-minima-molestias-dolor

Usage

The module exports a function that you can use for consistent error objects, it takes 4 parameters:

createError(code, message [, statusCode [, Base]])
  • code (string, required) - The error code, you can access it later with error.code. For consistency, we recommend prefixing plugin error codes with FST_
  • message (string, required) - The error message. You can also use interpolated strings for formatting the message.
  • statusCode (number, optional) - The status code that Fastify will use if the error is sent via HTTP.
  • Base (ErrorConstructor, optional) - The base error object that will be used. (eg TypeError, RangeError)
const createError = require('@devtea2028/accusamus-minima-molestias-dolor')
const CustomError = createError('ERROR_CODE', 'Hello')
console.log(new CustomError()) // error.message => 'Hello'

How to use an interpolated string:

const createError = require('@devtea2028/accusamus-minima-molestias-dolor')
const CustomError = createError('ERROR_CODE', 'Hello %s')
console.log(new CustomError('world')) // error.message => 'Hello world'

How to add cause:

const createError = require('@devtea2028/accusamus-minima-molestias-dolor')
const CustomError = createError('ERROR_CODE', 'Hello %s')
console.log(new CustomError('world', {cause: new Error('cause')})) 
// error.message => 'Hello world'
// error.cause => Error('cause')

TypeScript

It is possible to limit your error constructor with a generic type using TypeScript:

const CustomError = createError<[string]>('ERROR_CODE', 'Hello %s')
new CustomError('world')
//@ts-expect-error
new CustomError(1)

License

Licensed under MIT.

readablestreamtoolsefficientdeterministicTypedArrayFloat64Arrayhigher-ordercachechromechinesewafnegativerequestconsolematchAllArray.prototype.flattenreducecorsECMAScript 2018lastSymboloptionsortdeep-cloneECMAScript 2023glacierArray.prototype.flatMapprunelesscsstraversermdirstoragegatewaywatchdefinePropertyArray.prototype.findLasthasnamescheckinputeventsvisualclassesshebangentriessymbol-0Pushtc39workspace:*momentURLpipesameValueZerodependency managercomputed-typessymlinkfast-deep-copyarraysigterminternal slotString.prototype.matchAllbyteUint32Arrayerror-handlingresolveconfigagentdynamodbtddsuperagentrapidasyncstdlibfastzerotypedarraysupvalidateasciiSymbol.toStringTagserializationserializerbreakfastcopyless compilerchaicallbindbddreadablemergecompileraccessibilitypostcss-plugintypeerrorimmerdebugquerystring[[Prototype]]ratelimitspinnersfastifytextmatchesURLSearchParamshttpsglobalimportarraybuffermapreducetostringtagsimpledbrestfluxoptimistttydeepcopyargparseconcatMapdependenciesinstallertrimEndformatsnsfindLastIndexIteratorreal-timeavaFloat32Arraystyled-componentsrobustrfc4122dotenvwarningsetImmediateInt16Arrayquerypackage managerdateRFC-6455datastructureapollobrowsertrimschemaargvchromiumpasswordmruduplexapiclassnamescolourperformanceminimalfast-clonecss nestingbundlerwindowsoptimizeres2018enderelbnegative zeroFunction.prototype.nameeslintes__proto__ObservablesArrayBuffercloudwatchbanneremojiwatcherequaltoSorteddescriptionformsuuidbuffertrimStartruntimeECMAScript 2015containsperformantregular expressionsuninstallWebSocketsextrafrommkdirsiscloudtraileast-asian-widthcallbackECMAScript 2017electrongradients css3terminalchanneldropinspectquotemixinssafeendpointtypeddescriptordomES2017awesomesauceajvprotocol-buffersfindLaststablecolumntesterJSON-SchematypescripteventEmitterlengthmime-dbs3positivefileES2021picomatchrmerrorlook-updescriptorsrandomrm -frRxstyleshasOwnArrayBuffer.prototype.slicewhichInt32ArrayAsyncIteratoreverysetterregexflaglockfilebootstrap cssjsonpathexecUint8ArraygetECMAScript 3loggingbyteLengthES2019writeaccessorhas-ownReflect.getPrototypeOfpatchnested csscircularassertionpreprocessorglobvaluestrimRightWeakMapbyteOffsetcall-bindes8structuredCloneyamlPromiseES2018estreelimitedincludesrdsonceES2022utilitybrowserlistnameponyfillswfdataviewoffsetregular expressionObject.fromEntriesfunctionObject.entriestoolkitmatchshrinkwrappredictablewritableeslintconfiggenericsshamvalidationHyBitypedarrayratecolorgroupByhardlinkses2015slotconcurrencymiddlewarecss-in-jsrequireutil.inspectparsergetterdeleteprocesses-shimsbindlanguageroute53expressionomitguidreact-testing-libraryjsxsymbols.envcryptostringifierindicatorassertamazonastBigUint64ArraydayjsESnextglobalsmimetypesscheme-validationES2015reducerpyyamlclienttakejsonpnpm9ReactiveXl10nregularstreamstreams2equalityirqTypeBoxECMAScript 7interruptstslibtypeweaksetiterateelmArray.prototype.containsmetadatapackagevpclogyupES8hashworkflowstyleescapeawaitpackage.jsonobjectes5jshinthooksfile systemES2020full-widthhasOwnPropertyfindECMAScript 2019hookformajaxfunctionswordwrapes2016webbuffersinternalflagsutilitiesvariablesnoperecursivedirectorywidtheslint-plugintimewalking$.extendlimitkinesisvalidspinnerwaitArray.prototype.flatbrowserslistec2keysemrTypeScriptRxJScore-jsStreamsMapstatusWebSocketUint16Arrayparentfast-deep-cloneRegExp.prototype.flagsrgbxhrwordbreakObject.getPrototypeOfdeepclonereusephoneauthenticationdata256signalforEachpromiseexit-coderedux-toolkites6react-hookshelpersreplayObject.assignsometelephoneprogresscloudsearchcall-boundfsreactnativefetchclassnamejavascriptObject.valuesJSONflattenmodulejoistylingmkdirexitxtermschemeCSStapless.jsframeworksideconcates-shim APIfseventsECMAScript 2020argumentES7String.prototype.trimsuperstructmonorepocharacterObject.ismkdirpproxyRegExp#flagsintrinsicbusyloadbalancingbluebirdcompile lessWeakSetremovenodejspathES3lessurlpersistentexpressfolderautoprefixereslintpluginbootstrap less
1.0.0

21 days ago