dioma
dioma copied to clipboard
Elegant dependency injection container for vanilla JavaScript and TypeScript
First of all, I loved your project. I would like to leave a contribution here for an alternative to asynchronous injection, it uses Proxies and intercepts access to the object....
Example: package A uses classes from package B. ```js // package A import { inject, Scopes } from 'dioma' import LoggerService from '../../package-b/src/logger' class SomeClass { static scope = Scopes.Singleton()...
Bottlejs has a concept of decorator https://github.com/young-steveo/bottlejs?tab=readme-ov-file#decorators that is a function that runs when class / service is instantiated Currently i use to register event handlers when a class declares...
At the moment factory arguments are `any[]`. While I think the factory arguments aren't used that often, it might be a good addition.
At the moment, the `.waitAsync` waits for the next tick, which is slower. I think it's possible to build a chain of async resolutions with final resolution to resolve the...