3.0.3 • Published 11 months ago
@blackglory/errors v3.0.3
errors
Common errors.
Install
npm install --save @blackglory/errors
# or
yarn add @blackglory/errors
API
type CustomErrorConstructor<T extends CustomError = CustomError> =
new (message?: string) => T
interface SerializableError {
name: string
message: string
stack: string | null
ancestors: string[]
}
CustomError
class CustomError extends Error {}
CustomError
has better default behaviors than Error
:
console.error
prints the correct exception name, notError
.instanceof
operator matches based on names rather than inheritance relationships, which helpsSerializableError instanceof CustomError
.
AssertionError
class AssertionError extends CustomError {}
isError
function isError(val: unknown): val is Error
function isntError<T>(val: T): val is Exclude<T, Error>
normalize
function normalize(err: Error): SerializableError
hydrate
function hydrate(err: SerializableError): Error
isSerializableError
function isSerializableError(val: unknown): val is SerializableError
assert
/**
* @throws {AssertionError}
*/
function assert(condition: unknown, message?: string): asserts condition
getErrorNames
function getErrorNames(err: Error | SerializableError): Iterable<string>
traverseErrorPrototypeChain
function traverseErrorPrototypeChain(err: Error): Iterable<Error>
3.0.3
11 months ago
3.0.2
1 year ago
3.0.1
1 year ago
3.0.0
1 year ago
2.4.3
1 year ago
2.4.2
1 year ago
2.3.0
1 year ago
2.4.1
1 year ago
2.2.3
2 years ago
2.2.2
2 years ago
2.2.1
2 years ago
2.2.0
2 years ago
2.1.0
2 years ago
2.0.0
2 years ago
1.1.2
3 years ago
1.1.1
3 years ago
1.1.0
3 years ago
1.0.0
3 years ago
0.1.5
3 years ago
0.1.4
3 years ago
0.1.3
3 years ago
0.1.2
3 years ago
0.1.1
3 years ago
0.1.0
3 years ago