@navios/di 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/README.md +211 -1
  2. package/coverage/clover.xml +1912 -1277
  3. package/coverage/coverage-final.json +37 -28
  4. package/coverage/docs/examples/basic-usage.mts.html +1 -1
  5. package/coverage/docs/examples/factory-pattern.mts.html +1 -1
  6. package/coverage/docs/examples/index.html +1 -1
  7. package/coverage/docs/examples/injection-tokens.mts.html +1 -1
  8. package/coverage/docs/examples/request-scope-example.mts.html +1 -1
  9. package/coverage/docs/examples/service-lifecycle.mts.html +1 -1
  10. package/coverage/index.html +71 -41
  11. package/coverage/lib/_tsup-dts-rollup.d.mts.html +682 -43
  12. package/coverage/lib/index.d.mts.html +7 -4
  13. package/coverage/lib/index.html +5 -5
  14. package/coverage/lib/testing/index.d.mts.html +91 -0
  15. package/coverage/lib/testing/index.html +116 -0
  16. package/coverage/src/base-instance-holder-manager.mts.html +589 -0
  17. package/coverage/src/container.mts.html +257 -74
  18. package/coverage/src/decorators/factory.decorator.mts.html +1 -1
  19. package/coverage/src/decorators/index.html +1 -1
  20. package/coverage/src/decorators/index.mts.html +1 -1
  21. package/coverage/src/decorators/injectable.decorator.mts.html +20 -20
  22. package/coverage/src/enums/index.html +1 -1
  23. package/coverage/src/enums/index.mts.html +1 -1
  24. package/coverage/src/enums/injectable-scope.enum.mts.html +1 -1
  25. package/coverage/src/enums/injectable-type.enum.mts.html +1 -1
  26. package/coverage/src/errors/di-error.mts.html +292 -0
  27. package/coverage/src/errors/errors.enum.mts.html +30 -21
  28. package/coverage/src/errors/factory-not-found.mts.html +31 -22
  29. package/coverage/src/errors/factory-token-not-resolved.mts.html +29 -26
  30. package/coverage/src/errors/index.html +56 -41
  31. package/coverage/src/errors/index.mts.html +15 -9
  32. package/coverage/src/errors/instance-destroying.mts.html +31 -22
  33. package/coverage/src/errors/instance-expired.mts.html +31 -22
  34. package/coverage/src/errors/instance-not-found.mts.html +31 -22
  35. package/coverage/src/errors/unknown-error.mts.html +31 -43
  36. package/coverage/src/event-emitter.mts.html +14 -14
  37. package/coverage/src/factory-context.mts.html +1 -1
  38. package/coverage/src/index.html +121 -46
  39. package/coverage/src/index.mts.html +7 -4
  40. package/coverage/src/injection-token.mts.html +28 -28
  41. package/coverage/src/injector.mts.html +1 -1
  42. package/coverage/src/instance-resolver.mts.html +1762 -0
  43. package/coverage/src/interfaces/factory.interface.mts.html +1 -1
  44. package/coverage/src/interfaces/index.html +1 -1
  45. package/coverage/src/interfaces/index.mts.html +1 -1
  46. package/coverage/src/interfaces/on-service-destroy.interface.mts.html +1 -1
  47. package/coverage/src/interfaces/on-service-init.interface.mts.html +1 -1
  48. package/coverage/src/registry.mts.html +28 -28
  49. package/coverage/src/request-context-holder.mts.html +183 -102
  50. package/coverage/src/request-context-manager.mts.html +532 -0
  51. package/coverage/src/service-instantiator.mts.html +49 -49
  52. package/coverage/src/service-invalidator.mts.html +1372 -0
  53. package/coverage/src/service-locator-event-bus.mts.html +48 -48
  54. package/coverage/src/service-locator-instance-holder.mts.html +2 -14
  55. package/coverage/src/service-locator-manager.mts.html +71 -335
  56. package/coverage/src/service-locator.mts.html +240 -2328
  57. package/coverage/src/symbols/index.html +1 -1
  58. package/coverage/src/symbols/index.mts.html +1 -1
  59. package/coverage/src/symbols/injectable-token.mts.html +1 -1
  60. package/coverage/src/testing/index.html +131 -0
  61. package/coverage/src/testing/index.mts.html +88 -0
  62. package/coverage/src/testing/test-container.mts.html +445 -0
  63. package/coverage/src/token-processor.mts.html +607 -0
  64. package/coverage/src/utils/defer.mts.html +28 -214
  65. package/coverage/src/utils/get-injectable-token.mts.html +7 -7
  66. package/coverage/src/utils/get-injectors.mts.html +99 -99
  67. package/coverage/src/utils/index.html +15 -15
  68. package/coverage/src/utils/index.mts.html +4 -7
  69. package/coverage/src/utils/types.mts.html +1 -1
  70. package/docs/injectable.md +51 -11
  71. package/docs/scopes.md +63 -29
  72. package/lib/_tsup-dts-rollup.d.mts +376 -213
  73. package/lib/_tsup-dts-rollup.d.ts +376 -213
  74. package/lib/{chunk-3NLYPYBY.mjs → chunk-44F3LXW5.mjs} +1021 -605
  75. package/lib/chunk-44F3LXW5.mjs.map +1 -0
  76. package/lib/index.d.mts +6 -4
  77. package/lib/index.d.ts +6 -4
  78. package/lib/index.js +1192 -776
  79. package/lib/index.js.map +1 -1
  80. package/lib/index.mjs +2 -2
  81. package/lib/testing/index.js +1258 -840
  82. package/lib/testing/index.js.map +1 -1
  83. package/lib/testing/index.mjs +1 -1
  84. package/package.json +1 -1
  85. package/src/__tests__/container.spec.mts +47 -13
  86. package/src/__tests__/errors.spec.mts +53 -27
  87. package/src/__tests__/injectable.spec.mts +73 -0
  88. package/src/__tests__/request-scope.spec.mts +0 -2
  89. package/src/__tests__/service-locator-manager.spec.mts +12 -82
  90. package/src/__tests__/service-locator.spec.mts +1009 -1
  91. package/src/__type-tests__/inject.spec-d.mts +30 -7
  92. package/src/__type-tests__/injectable.spec-d.mts +76 -37
  93. package/src/base-instance-holder-manager.mts +2 -9
  94. package/src/container.mts +61 -9
  95. package/src/decorators/injectable.decorator.mts +29 -5
  96. package/src/errors/di-error.mts +69 -0
  97. package/src/errors/index.mts +9 -7
  98. package/src/injection-token.mts +1 -0
  99. package/src/injector.mts +2 -0
  100. package/src/instance-resolver.mts +559 -0
  101. package/src/request-context-holder.mts +0 -2
  102. package/src/request-context-manager.mts +149 -0
  103. package/src/service-invalidator.mts +429 -0
  104. package/src/service-locator-instance-holder.mts +0 -4
  105. package/src/service-locator-manager.mts +10 -40
  106. package/src/service-locator.mts +86 -782
  107. package/src/token-processor.mts +174 -0
  108. package/src/utils/get-injectors.mts +161 -24
  109. package/src/utils/index.mts +0 -1
  110. package/src/utils/types.mts +12 -8
  111. package/lib/chunk-3NLYPYBY.mjs.map +0 -1
  112. package/src/__tests__/defer.spec.mts +0 -166
  113. package/src/errors/errors.enum.mts +0 -8
  114. package/src/errors/factory-not-found.mts +0 -8
  115. package/src/errors/factory-token-not-resolved.mts +0 -10
  116. package/src/errors/instance-destroying.mts +0 -8
  117. package/src/errors/instance-expired.mts +0 -8
  118. package/src/errors/instance-not-found.mts +0 -8
  119. package/src/errors/unknown-error.mts +0 -15
  120. package/src/utils/defer.mts +0 -73
@@ -242,25 +242,25 @@
242
242
  <span class="cline-any cline-neutral">&nbsp;</span>
243
243
  <span class="cline-any cline-neutral">&nbsp;</span>
244
244
  <span class="cline-any cline-yes">1x</span>
245
- <span class="cline-any cline-yes">253x</span>
246
- <span class="cline-any cline-yes">253x</span>
247
- <span class="cline-any cline-yes">253x</span>
248
- <span class="cline-any cline-yes">253x</span>
249
- <span class="cline-any cline-yes">253x</span>
250
- <span class="cline-any cline-yes">253x</span>
251
- <span class="cline-any cline-yes">253x</span>
252
- <span class="cline-any cline-yes">216x</span>
253
- <span class="cline-any cline-yes">253x</span>
245
+ <span class="cline-any cline-yes">308x</span>
246
+ <span class="cline-any cline-yes">308x</span>
247
+ <span class="cline-any cline-yes">308x</span>
248
+ <span class="cline-any cline-yes">308x</span>
249
+ <span class="cline-any cline-yes">308x</span>
250
+ <span class="cline-any cline-yes">308x</span>
251
+ <span class="cline-any cline-yes">308x</span>
252
+ <span class="cline-any cline-yes">271x</span>
253
+ <span class="cline-any cline-yes">308x</span>
254
254
  <span class="cline-any cline-yes">36x</span>
255
- <span class="cline-any cline-yes">253x</span>
255
+ <span class="cline-any cline-yes">308x</span>
256
256
  <span class="cline-any cline-yes">1x</span>
257
257
  <span class="cline-any cline-yes">1x</span>
258
258
  <span class="cline-any cline-yes">1x</span>
259
- <span class="cline-any cline-yes">253x</span>
260
- <span class="cline-any cline-yes">253x</span>
259
+ <span class="cline-any cline-yes">308x</span>
260
+ <span class="cline-any cline-yes">308x</span>
261
261
  <span class="cline-any cline-yes">1x</span>
262
262
  <span class="cline-any cline-yes">1x</span>
263
- <span class="cline-any cline-yes">253x</span>
263
+ <span class="cline-any cline-yes">308x</span>
264
264
  <span class="cline-any cline-neutral">&nbsp;</span>
265
265
  <span class="cline-any cline-neutral">&nbsp;</span>
266
266
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -270,32 +270,32 @@
270
270
  <span class="cline-any cline-neutral">&nbsp;</span>
271
271
  <span class="cline-any cline-neutral">&nbsp;</span>
272
272
  <span class="cline-any cline-yes">1x</span>
273
- <span class="cline-any cline-yes">216x</span>
274
- <span class="cline-any cline-yes">216x</span>
275
- <span class="cline-any cline-yes">216x</span>
276
- <span class="cline-any cline-yes">216x</span>
277
- <span class="cline-any cline-yes">216x</span>
278
- <span class="cline-any cline-yes">216x</span>
279
- <span class="cline-any cline-yes">244x</span>
280
- <span class="cline-any cline-yes">244x</span>
281
- <span class="cline-any cline-yes">244x</span>
282
- <span class="cline-any cline-yes">244x</span>
283
- <span class="cline-any cline-yes">216x</span>
273
+ <span class="cline-any cline-yes">271x</span>
274
+ <span class="cline-any cline-yes">271x</span>
275
+ <span class="cline-any cline-yes">271x</span>
276
+ <span class="cline-any cline-yes">271x</span>
277
+ <span class="cline-any cline-yes">271x</span>
278
+ <span class="cline-any cline-yes">271x</span>
279
+ <span class="cline-any cline-yes">313x</span>
280
+ <span class="cline-any cline-yes">313x</span>
281
+ <span class="cline-any cline-yes">313x</span>
282
+ <span class="cline-any cline-yes">313x</span>
283
+ <span class="cline-any cline-yes">271x</span>
284
284
  <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-yes">216x</span>
286
- <span class="cline-any cline-yes">216x</span>
287
- <span class="cline-any cline-yes">29x</span>
288
- <span class="cline-any cline-yes">29x</span>
289
- <span class="cline-any cline-yes">1x</span>
290
- <span class="cline-any cline-yes">1x</span>
291
- <span class="cline-any cline-yes">1x</span>
292
- <span class="cline-any cline-yes">1x</span>
293
- <span class="cline-any cline-yes">28x</span>
294
- <span class="cline-any cline-yes">28x</span>
295
- <span class="cline-any cline-yes">28x</span>
296
- <span class="cline-any cline-yes">28x</span>
285
+ <span class="cline-any cline-yes">271x</span>
286
+ <span class="cline-any cline-yes">271x</span>
287
+ <span class="cline-any cline-yes">44x</span>
288
+ <span class="cline-any cline-yes">44x</span>
289
+ <span class="cline-any cline-yes">2x</span>
290
+ <span class="cline-any cline-yes">2x</span>
291
+ <span class="cline-any cline-yes">2x</span>
292
+ <span class="cline-any cline-yes">2x</span>
293
+ <span class="cline-any cline-yes">42x</span>
294
+ <span class="cline-any cline-yes">42x</span>
295
+ <span class="cline-any cline-yes">42x</span>
296
+ <span class="cline-any cline-yes">42x</span>
297
297
  <span class="cline-any cline-neutral">&nbsp;</span>
298
- <span class="cline-any cline-yes">216x</span>
298
+ <span class="cline-any cline-yes">271x</span>
299
299
  <span class="cline-any cline-yes">1x</span>
300
300
  <span class="cline-any cline-neutral">&nbsp;</span>
301
301
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -307,20 +307,20 @@
307
307
  <span class="cline-any cline-yes">1x</span>
308
308
  <span class="cline-any cline-neutral">&nbsp;</span>
309
309
  <span class="cline-any cline-neutral">&nbsp;</span>
310
- <span class="cline-any cline-yes">216x</span>
310
+ <span class="cline-any cline-yes">271x</span>
311
311
  <span class="cline-any cline-yes">1x</span>
312
312
  <span class="cline-any cline-yes">1x</span>
313
- <span class="cline-any cline-yes">216x</span>
314
- <span class="cline-any cline-yes">2x</span>
315
- <span class="cline-any cline-yes">2x</span>
316
- <span class="cline-any cline-yes">2x</span>
317
- <span class="cline-any cline-yes">2x</span>
313
+ <span class="cline-any cline-yes">271x</span>
314
+ <span class="cline-any cline-yes">3x</span>
315
+ <span class="cline-any cline-yes">3x</span>
316
+ <span class="cline-any cline-yes">3x</span>
317
+ <span class="cline-any cline-yes">3x</span>
318
318
  <span class="cline-any cline-neutral">&nbsp;</span>
319
- <span class="cline-any cline-yes">212x</span>
320
- <span class="cline-any cline-yes">216x</span>
321
- <span class="cline-any cline-yes">4x</span>
322
- <span class="cline-any cline-yes">4x</span>
323
- <span class="cline-any cline-yes">216x</span>
319
+ <span class="cline-any cline-yes">265x</span>
320
+ <span class="cline-any cline-yes">271x</span>
321
+ <span class="cline-any cline-yes">6x</span>
322
+ <span class="cline-any cline-yes">6x</span>
323
+ <span class="cline-any cline-yes">271x</span>
324
324
  <span class="cline-any cline-neutral">&nbsp;</span>
325
325
  <span class="cline-any cline-neutral">&nbsp;</span>
326
326
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -544,7 +544,7 @@ export class ServiceInstantiator {
544
544
  <div class='footer quiet pad2 space-top1 center small'>
545
545
  Code coverage generated by
546
546
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
547
- at 2025-09-19T12:38:51.382Z
547
+ at 2025-09-21T17:47:07.632Z
548
548
  </div>
549
549
  <script src="../prettify.js"></script>
550
550
  <script>