@nerjs/batchloader
Version:
`BatchLoader` is a tool for batching data requests with support for deduplication, caching, and parallel task management. It is designed to enhance flexibility and performance in scenarios requiring asynchronous data processing. This module was inspired b
33 lines • 1.15 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RejectedAbortError = exports.SilentAbortError = exports.AbortError = exports.TimeoutError = exports.LoaderError = void 0;
class LoaderError extends Error {
get name() {
return this.constructor.name;
}
}
exports.LoaderError = LoaderError;
class TimeoutError extends LoaderError {
constructor(delay) {
super(`Operation exceeded the maximum timeout of ${delay} ms.`);
this.delay = delay;
}
}
exports.TimeoutError = TimeoutError;
class AbortError extends LoaderError {
constructor(operation, reason) {
super(`Operation "${operation}" was aborted${reason && typeof reason === 'string' ? `. ${reason}` : ''}`, { cause: reason });
this.operation = operation;
}
}
exports.AbortError = AbortError;
class SilentAbortError extends AbortError {
}
exports.SilentAbortError = SilentAbortError;
class RejectedAbortError extends AbortError {
constructor(operation) {
super(operation, 'Operation runner was rejected');
}
}
exports.RejectedAbortError = RejectedAbortError;
//# sourceMappingURL=errors.js.map