UNPKG

@joist/di

Version:

Dependency Injection for Vanilla JS classes

34 lines 979 B
export function injected(condition) { return function onInjectDecorator(val, ctx) { const metadata = ctx.metadata; metadata.onInjected ??= []; metadata.onInjected.push({ callback: val, condition, }); }; } export function created(condition) { return function onInjectDecorator(val, ctx) { const metadata = ctx.metadata; metadata.onCreated ??= []; metadata.onCreated.push({ callback: val, condition, }); }; } export function callLifecycle(instance, injector, methods) { if (methods) { for (const { callback, condition } of methods) { if (condition) { const result = condition({ injector, instance }); if (result.enabled === false) { continue; } } callback.call(instance, injector); } } } //# sourceMappingURL=lifecycle.js.map