Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
26 lines
671 B
Text
26 lines
671 B
Text
module.exports = class EventEmitterError extends Error {
|
|
constructor(msg, code, fn = EventEmitterError, opts) {
|
|
super(`${code}: ${msg}`, opts)
|
|
this.code = code
|
|
|
|
if (Error.captureStackTrace) {
|
|
Error.captureStackTrace(this, fn)
|
|
}
|
|
}
|
|
|
|
get name() {
|
|
return 'EventEmitterError'
|
|
}
|
|
|
|
static OPERATION_ABORTED(cause, msg = 'Operation aborted') {
|
|
return new EventEmitterError(msg, 'OPERATION_ABORTED', EventEmitterError.OPERATION_ABORTED, {
|
|
cause
|
|
})
|
|
}
|
|
|
|
static UNHANDLED_ERROR(cause, msg = 'Unhandled error') {
|
|
return new EventEmitterError(msg, 'UNHANDLED_ERROR', EventEmitterError.UNHANDLED_ERROR, {
|
|
cause
|
|
})
|
|
}
|
|
}
|