ApiError
Defined in: packages/core/src/class/ApiError.ts:9
Backend-agnostic API error. All backend-shape knowledge (what codes exist,
which i18n keys they map to) is delegated to an injected ErrorCodeAdapter
instead of being hardcoded — see @flextable/react-crud/@flextable/vue-crud
for a ready-made NestJS-shaped adapter.
Extends
Section titled “Extends”Error
Type Parameters
Section titled “Type Parameters”TCode extends string = string
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new ApiError<
TCode>(response,adapter):ApiError<TCode>
Defined in: packages/core/src/class/ApiError.ts:16
Parameters
Section titled “Parameters”response
Section titled “response”adapter
Section titled “adapter”ErrorCodeAdapter<TCode>
Returns
Section titled “Returns”ApiError<TCode>
Overrides
Section titled “Overrides”Error.constructor
Properties
Section titled “Properties”cause?
Section titled “cause?”
optionalcause?:unknown
Defined in: node_modules/.bun/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.error.d.ts:24
The cause of the error.
Inherited from
Section titled “Inherited from”Error.cause
readonlycode:TCode
Defined in: packages/core/src/class/ApiError.ts:11
description
Section titled “description”
readonlydescription:string|undefined
Defined in: packages/core/src/class/ApiError.ts:12
details
Section titled “details”
readonlydetails:unknown
Defined in: packages/core/src/class/ApiError.ts:13
message
Section titled “message”message:
string
Defined in: node_modules/.bun/typescript@6.0.3/node_modules/typescript/lib/lib.es5.d.ts:1075
Inherited from
Section titled “Inherited from”Error.message
name:
string
Defined in: node_modules/.bun/typescript@6.0.3/node_modules/typescript/lib/lib.es5.d.ts:1074
Inherited from
Section titled “Inherited from”Error.name
stack?
Section titled “stack?”
optionalstack?:string
Defined in: node_modules/.bun/typescript@6.0.3/node_modules/typescript/lib/lib.es5.d.ts:1076
Inherited from
Section titled “Inherited from”Error.stack
statusCode
Section titled “statusCode”
readonlystatusCode:number
Defined in: packages/core/src/class/ApiError.ts:10
stackTraceLimit
Section titled “stackTraceLimit”
staticstackTraceLimit:number
Defined in: node_modules/.bun/@types+node@26.1.1/node_modules/@types/node/globals.d.ts:67
The Error.stackTraceLimit property specifies the number of stack frames
collected by a stack trace (whether generated by new Error().stack or
Error.captureStackTrace(obj)).
The default value is 10 but may be set to any valid JavaScript number. Changes
will affect any stack trace captured after the value has been changed.
If set to a non-number value, or set to a negative number, stack traces will not capture any frames.
Inherited from
Section titled “Inherited from”Error.stackTraceLimit
Accessors
Section titled “Accessors”descriptionKey
Section titled “descriptionKey”Get Signature
Section titled “Get Signature”get descriptionKey():
string
Defined in: packages/core/src/class/ApiError.ts:31
Returns
Section titled “Returns”string
messageKey
Section titled “messageKey”Get Signature
Section titled “Get Signature”get messageKey():
string
Defined in: packages/core/src/class/ApiError.ts:27
Returns
Section titled “Returns”string
Methods
Section titled “Methods”is(
code):boolean
Defined in: packages/core/src/class/ApiError.ts:35
Parameters
Section titled “Parameters”TCode
Returns
Section titled “Returns”boolean
captureStackTrace()
Section titled “captureStackTrace()”Call Signature
Section titled “Call Signature”
staticcaptureStackTrace(targetObject,constructorOpt?):void
Defined in: node_modules/.bun/@types+node@26.1.1/node_modules/@types/node/globals.d.ts:51
Creates a .stack property on targetObject, which when accessed returns
a string representing the location in the code at which
Error.captureStackTrace() was called.
const myObject = {};Error.captureStackTrace(myObject);myObject.stack; // Similar to `new Error().stack`The first line of the trace will be prefixed with
${myObject.name}: ${myObject.message}.
The optional constructorOpt argument accepts a function. If given, all frames
above constructorOpt, including constructorOpt, will be omitted from the
generated stack trace.
The constructorOpt argument is useful for hiding implementation
details of error generation from the user. For instance:
function a() { b();}
function b() { c();}
function c() { // Create an error without stack trace to avoid calculating the stack trace twice. const { stackTraceLimit } = Error; Error.stackTraceLimit = 0; const error = new Error(); Error.stackTraceLimit = stackTraceLimit;
// Capture the stack trace above function b Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace throw error;}
a();Parameters
Section titled “Parameters”targetObject
Section titled “targetObject”object
constructorOpt?
Section titled “constructorOpt?”Function
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Error.captureStackTrace
Call Signature
Section titled “Call Signature”
staticcaptureStackTrace(targetObject,constructorOpt?):void
Defined in: node_modules/.bun/bun-types@1.3.14/node_modules/bun-types/globals.d.ts:1042
Create .stack property on a target object
Parameters
Section titled “Parameters”targetObject
Section titled “targetObject”object
constructorOpt?
Section titled “constructorOpt?”Function
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Error.captureStackTrace
from()
Section titled “from()”
staticfrom<TCode>(error,adapter):ApiError<TCode>
Defined in: packages/core/src/class/ApiError.ts:46
Normalizes any thrown value into an ApiError. Reads statusCode/
code/message/description/details off any object-shaped error —
covers both real Error subclasses with extra fields bolted on and
plain rejected objects (throw { statusCode, code, message }), which
is how many fetch/HTTP clients surface API failures.
Type Parameters
Section titled “Type Parameters”TCode extends string
Parameters
Section titled “Parameters”unknown
adapter
Section titled “adapter”ErrorCodeAdapter<TCode>
Returns
Section titled “Returns”ApiError<TCode>
isError()
Section titled “isError()”Call Signature
Section titled “Call Signature”
staticisError(error):error is Error
Defined in: node_modules/.bun/typescript@6.0.3/node_modules/typescript/lib/lib.esnext.error.d.ts:21
Indicates whether the argument provided is a built-in Error instance or not.
Parameters
Section titled “Parameters”unknown
Returns
Section titled “Returns”error is Error
Inherited from
Section titled “Inherited from”Error.isError
Call Signature
Section titled “Call Signature”
staticisError(value):value is Error
Defined in: node_modules/.bun/bun-types@1.3.14/node_modules/bun-types/globals.d.ts:1037
Check if a value is an instance of Error
Parameters
Section titled “Parameters”unknown
The value to check
Returns
Section titled “Returns”value is Error
True if the value is an instance of Error, false otherwise
Inherited from
Section titled “Inherited from”Error.isError
prepareStackTrace()
Section titled “prepareStackTrace()”
staticprepareStackTrace(err,stackTraces):any
Defined in: node_modules/.bun/@types+node@26.1.1/node_modules/@types/node/globals.d.ts:55
Parameters
Section titled “Parameters”Error
stackTraces
Section titled “stackTraces”CallSite[]
Returns
Section titled “Returns”any
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
Inherited from
Section titled “Inherited from”Error.prepareStackTrace