UNPKG

@travetto/di

Version:

Dependency registration/management and injection support.

17 lines (15 loc) 506 B
import { AppError, type Class } from '@travetto/runtime'; function getName(symbol: symbol): string { return symbol.toString().split(/[()]/g)[1]; } export class InjectionError extends AppError { constructor(message: string, target: Class, qualifiers?: symbol[]) { super(`${message}: [${target.Ⲑid}]${qualifiers ? `[${qualifiers.map(getName)}]` : ''}`, { category: 'notfound', details: { qualifiers: qualifiers?.map(getName), target: target.Ⲑid } }); } }