stratal 0.0.1

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 (867) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +50 -0
  3. package/dist/application.d.ts +118 -0
  4. package/dist/application.d.ts.map +1 -0
  5. package/dist/application.js +247 -0
  6. package/dist/application.js.map +1 -0
  7. package/dist/cache/cache.module.d.ts +14 -0
  8. package/dist/cache/cache.module.d.ts.map +1 -0
  9. package/dist/cache/cache.module.js +32 -0
  10. package/dist/cache/cache.module.js.map +1 -0
  11. package/dist/cache/cache.tokens.d.ts +5 -0
  12. package/dist/cache/cache.tokens.d.ts.map +1 -0
  13. package/dist/cache/cache.tokens.js +4 -0
  14. package/dist/cache/cache.tokens.js.map +1 -0
  15. package/dist/cache/errors/cache-delete.error.d.ts +11 -0
  16. package/dist/cache/errors/cache-delete.error.d.ts.map +1 -0
  17. package/dist/cache/errors/cache-delete.error.js +14 -0
  18. package/dist/cache/errors/cache-delete.error.js.map +1 -0
  19. package/dist/cache/errors/cache-get.error.d.ts +11 -0
  20. package/dist/cache/errors/cache-get.error.d.ts.map +1 -0
  21. package/dist/cache/errors/cache-get.error.js +14 -0
  22. package/dist/cache/errors/cache-get.error.js.map +1 -0
  23. package/dist/cache/errors/cache-list.error.d.ts +10 -0
  24. package/dist/cache/errors/cache-list.error.d.ts.map +1 -0
  25. package/dist/cache/errors/cache-list.error.js +13 -0
  26. package/dist/cache/errors/cache-list.error.js.map +1 -0
  27. package/dist/cache/errors/cache-put.error.d.ts +11 -0
  28. package/dist/cache/errors/cache-put.error.d.ts.map +1 -0
  29. package/dist/cache/errors/cache-put.error.js +14 -0
  30. package/dist/cache/errors/cache-put.error.js.map +1 -0
  31. package/dist/cache/errors/index.d.ts +5 -0
  32. package/dist/cache/errors/index.d.ts.map +1 -0
  33. package/dist/cache/errors/index.js +5 -0
  34. package/dist/cache/errors/index.js.map +1 -0
  35. package/dist/cache/index.d.ts +5 -0
  36. package/dist/cache/index.d.ts.map +1 -0
  37. package/dist/cache/index.js +5 -0
  38. package/dist/cache/index.js.map +1 -0
  39. package/dist/cache/services/cache.service.d.ts +152 -0
  40. package/dist/cache/services/cache.service.d.ts.map +1 -0
  41. package/dist/cache/services/cache.service.js +223 -0
  42. package/dist/cache/services/cache.service.js.map +1 -0
  43. package/dist/cache/services/index.d.ts +2 -0
  44. package/dist/cache/services/index.d.ts.map +1 -0
  45. package/dist/cache/services/index.js +2 -0
  46. package/dist/cache/services/index.js.map +1 -0
  47. package/dist/config/config.module.d.ts +79 -0
  48. package/dist/config/config.module.d.ts.map +1 -0
  49. package/dist/config/config.module.js +120 -0
  50. package/dist/config/config.module.js.map +1 -0
  51. package/dist/config/config.tokens.d.ts +4 -0
  52. package/dist/config/config.tokens.d.ts.map +1 -0
  53. package/dist/config/config.tokens.js +4 -0
  54. package/dist/config/config.tokens.js.map +1 -0
  55. package/dist/config/config.types.d.ts +68 -0
  56. package/dist/config/config.types.d.ts.map +1 -0
  57. package/dist/config/config.types.js +9 -0
  58. package/dist/config/config.types.js.map +1 -0
  59. package/dist/config/errors/config-not-initialized.error.d.ts +12 -0
  60. package/dist/config/errors/config-not-initialized.error.d.ts.map +1 -0
  61. package/dist/config/errors/config-not-initialized.error.js +15 -0
  62. package/dist/config/errors/config-not-initialized.error.js.map +1 -0
  63. package/dist/config/errors/index.d.ts +2 -0
  64. package/dist/config/errors/index.d.ts.map +1 -0
  65. package/dist/config/errors/index.js +2 -0
  66. package/dist/config/errors/index.js.map +1 -0
  67. package/dist/config/index.d.ts +7 -0
  68. package/dist/config/index.d.ts.map +1 -0
  69. package/dist/config/index.js +9 -0
  70. package/dist/config/index.js.map +1 -0
  71. package/dist/config/register-as.d.ts +62 -0
  72. package/dist/config/register-as.d.ts.map +1 -0
  73. package/dist/config/register-as.js +48 -0
  74. package/dist/config/register-as.js.map +1 -0
  75. package/dist/config/services/config.service.d.ts +58 -0
  76. package/dist/config/services/config.service.d.ts.map +1 -0
  77. package/dist/config/services/config.service.js +123 -0
  78. package/dist/config/services/config.service.js.map +1 -0
  79. package/dist/cron/cron-job.d.ts +55 -0
  80. package/dist/cron/cron-job.d.ts.map +1 -0
  81. package/dist/cron/cron-job.js +2 -0
  82. package/dist/cron/cron-job.js.map +1 -0
  83. package/dist/cron/cron-manager.d.ts +60 -0
  84. package/dist/cron/cron-manager.d.ts.map +1 -0
  85. package/dist/cron/cron-manager.js +120 -0
  86. package/dist/cron/cron-manager.js.map +1 -0
  87. package/dist/cron/errors/cron-execution.error.d.ts +10 -0
  88. package/dist/cron/errors/cron-execution.error.d.ts.map +1 -0
  89. package/dist/cron/errors/cron-execution.error.js +17 -0
  90. package/dist/cron/errors/cron-execution.error.js.map +1 -0
  91. package/dist/cron/index.d.ts +4 -0
  92. package/dist/cron/index.d.ts.map +1 -0
  93. package/dist/cron/index.js +3 -0
  94. package/dist/cron/index.js.map +1 -0
  95. package/dist/di/conditional-binding-builder.d.ts +93 -0
  96. package/dist/di/conditional-binding-builder.d.ts.map +1 -0
  97. package/dist/di/conditional-binding-builder.js +115 -0
  98. package/dist/di/conditional-binding-builder.js.map +1 -0
  99. package/dist/di/container.d.ts +399 -0
  100. package/dist/di/container.d.ts.map +1 -0
  101. package/dist/di/container.js +466 -0
  102. package/dist/di/container.js.map +1 -0
  103. package/dist/di/decorators/inject-param.decorator.d.ts +67 -0
  104. package/dist/di/decorators/inject-param.decorator.d.ts.map +1 -0
  105. package/dist/di/decorators/inject-param.decorator.js +53 -0
  106. package/dist/di/decorators/inject-param.decorator.js.map +1 -0
  107. package/dist/di/decorators.d.ts +57 -0
  108. package/dist/di/decorators.d.ts.map +1 -0
  109. package/dist/di/decorators.js +74 -0
  110. package/dist/di/decorators.js.map +1 -0
  111. package/dist/di/errors/conditional-binding-fallback.error.d.ts +16 -0
  112. package/dist/di/errors/conditional-binding-fallback.error.d.ts.map +1 -0
  113. package/dist/di/errors/conditional-binding-fallback.error.js +19 -0
  114. package/dist/di/errors/conditional-binding-fallback.error.js.map +1 -0
  115. package/dist/di/errors/index.d.ts +3 -0
  116. package/dist/di/errors/index.d.ts.map +1 -0
  117. package/dist/di/errors/index.js +3 -0
  118. package/dist/di/errors/index.js.map +1 -0
  119. package/dist/di/errors/request-scope-operation-not-allowed.error.d.ts +12 -0
  120. package/dist/di/errors/request-scope-operation-not-allowed.error.d.ts.map +1 -0
  121. package/dist/di/errors/request-scope-operation-not-allowed.error.js +15 -0
  122. package/dist/di/errors/request-scope-operation-not-allowed.error.js.map +1 -0
  123. package/dist/di/index.d.ts +13 -0
  124. package/dist/di/index.d.ts.map +1 -0
  125. package/dist/di/index.js +11 -0
  126. package/dist/di/index.js.map +1 -0
  127. package/dist/di/request-context-store.d.ts +122 -0
  128. package/dist/di/request-context-store.d.ts.map +1 -0
  129. package/dist/di/request-context-store.js +135 -0
  130. package/dist/di/request-context-store.js.map +1 -0
  131. package/dist/di/tokens.d.ts +25 -0
  132. package/dist/di/tokens.d.ts.map +1 -0
  133. package/dist/di/tokens.js +27 -0
  134. package/dist/di/tokens.js.map +1 -0
  135. package/dist/di/types.d.ts +56 -0
  136. package/dist/di/types.d.ts.map +1 -0
  137. package/dist/di/types.js +34 -0
  138. package/dist/di/types.js.map +1 -0
  139. package/dist/email/consumers/email.consumer.d.ts +43 -0
  140. package/dist/email/consumers/email.consumer.d.ts.map +1 -0
  141. package/dist/email/consumers/email.consumer.js +133 -0
  142. package/dist/email/consumers/email.consumer.js.map +1 -0
  143. package/dist/email/consumers/index.d.ts +2 -0
  144. package/dist/email/consumers/index.d.ts.map +1 -0
  145. package/dist/email/consumers/index.js +2 -0
  146. package/dist/email/consumers/index.js.map +1 -0
  147. package/dist/email/contracts/email-attachment.d.ts +61 -0
  148. package/dist/email/contracts/email-attachment.d.ts.map +1 -0
  149. package/dist/email/contracts/email-attachment.js +58 -0
  150. package/dist/email/contracts/email-attachment.js.map +1 -0
  151. package/dist/email/contracts/email-message.contract.d.ts +58 -0
  152. package/dist/email/contracts/email-message.contract.d.ts.map +1 -0
  153. package/dist/email/contracts/email-message.contract.js +62 -0
  154. package/dist/email/contracts/email-message.contract.js.map +1 -0
  155. package/dist/email/contracts/index.d.ts +4 -0
  156. package/dist/email/contracts/index.d.ts.map +1 -0
  157. package/dist/email/contracts/index.js +4 -0
  158. package/dist/email/contracts/index.js.map +1 -0
  159. package/dist/email/contracts/send-email.input.d.ts +72 -0
  160. package/dist/email/contracts/send-email.input.d.ts.map +1 -0
  161. package/dist/email/contracts/send-email.input.js +28 -0
  162. package/dist/email/contracts/send-email.input.js.map +1 -0
  163. package/dist/email/email.module.d.ts +122 -0
  164. package/dist/email/email.module.d.ts.map +1 -0
  165. package/dist/email/email.module.js +129 -0
  166. package/dist/email/email.module.js.map +1 -0
  167. package/dist/email/email.tokens.d.ts +33 -0
  168. package/dist/email/email.tokens.d.ts.map +1 -0
  169. package/dist/email/email.tokens.js +33 -0
  170. package/dist/email/email.tokens.js.map +1 -0
  171. package/dist/email/errors/email-provider-not-supported.error.d.ts +13 -0
  172. package/dist/email/errors/email-provider-not-supported.error.d.ts.map +1 -0
  173. package/dist/email/errors/email-provider-not-supported.error.js +15 -0
  174. package/dist/email/errors/email-provider-not-supported.error.js.map +1 -0
  175. package/dist/email/errors/email-resend-api-failed.error.d.ts +13 -0
  176. package/dist/email/errors/email-resend-api-failed.error.d.ts.map +1 -0
  177. package/dist/email/errors/email-resend-api-failed.error.js +15 -0
  178. package/dist/email/errors/email-resend-api-failed.error.js.map +1 -0
  179. package/dist/email/errors/email-smtp-connection-failed.error.d.ts +13 -0
  180. package/dist/email/errors/email-smtp-connection-failed.error.d.ts.map +1 -0
  181. package/dist/email/errors/email-smtp-connection-failed.error.js +15 -0
  182. package/dist/email/errors/email-smtp-connection-failed.error.js.map +1 -0
  183. package/dist/email/errors/index.d.ts +7 -0
  184. package/dist/email/errors/index.d.ts.map +1 -0
  185. package/dist/email/errors/index.js +7 -0
  186. package/dist/email/errors/index.js.map +1 -0
  187. package/dist/email/errors/resend-api-key-missing.error.d.ts +13 -0
  188. package/dist/email/errors/resend-api-key-missing.error.d.ts.map +1 -0
  189. package/dist/email/errors/resend-api-key-missing.error.js +15 -0
  190. package/dist/email/errors/resend-api-key-missing.error.js.map +1 -0
  191. package/dist/email/errors/smtp-configuration-missing.error.d.ts +13 -0
  192. package/dist/email/errors/smtp-configuration-missing.error.d.ts.map +1 -0
  193. package/dist/email/errors/smtp-configuration-missing.error.js +15 -0
  194. package/dist/email/errors/smtp-configuration-missing.error.js.map +1 -0
  195. package/dist/email/errors/smtp-host-missing.error.d.ts +13 -0
  196. package/dist/email/errors/smtp-host-missing.error.d.ts.map +1 -0
  197. package/dist/email/errors/smtp-host-missing.error.js +15 -0
  198. package/dist/email/errors/smtp-host-missing.error.js.map +1 -0
  199. package/dist/email/index.d.ts +6 -0
  200. package/dist/email/index.d.ts.map +1 -0
  201. package/dist/email/index.js +8 -0
  202. package/dist/email/index.js.map +1 -0
  203. package/dist/email/providers/base-email.provider.d.ts +22 -0
  204. package/dist/email/providers/base-email.provider.d.ts.map +1 -0
  205. package/dist/email/providers/base-email.provider.js +43 -0
  206. package/dist/email/providers/base-email.provider.js.map +1 -0
  207. package/dist/email/providers/email-provider.interface.d.ts +66 -0
  208. package/dist/email/providers/email-provider.interface.d.ts.map +1 -0
  209. package/dist/email/providers/email-provider.interface.js +2 -0
  210. package/dist/email/providers/email-provider.interface.js.map +1 -0
  211. package/dist/email/providers/index.d.ts +5 -0
  212. package/dist/email/providers/index.d.ts.map +1 -0
  213. package/dist/email/providers/index.js +5 -0
  214. package/dist/email/providers/index.js.map +1 -0
  215. package/dist/email/providers/resend.provider.d.ts +26 -0
  216. package/dist/email/providers/resend.provider.d.ts.map +1 -0
  217. package/dist/email/providers/resend.provider.js +84 -0
  218. package/dist/email/providers/resend.provider.js.map +1 -0
  219. package/dist/email/providers/smtp.provider.d.ts +25 -0
  220. package/dist/email/providers/smtp.provider.d.ts.map +1 -0
  221. package/dist/email/providers/smtp.provider.js +86 -0
  222. package/dist/email/providers/smtp.provider.js.map +1 -0
  223. package/dist/email/services/email-provider-factory.d.ts +24 -0
  224. package/dist/email/services/email-provider-factory.d.ts.map +1 -0
  225. package/dist/email/services/email-provider-factory.js +59 -0
  226. package/dist/email/services/email-provider-factory.js.map +1 -0
  227. package/dist/email/services/email.service.d.ts +51 -0
  228. package/dist/email/services/email.service.d.ts.map +1 -0
  229. package/dist/email/services/email.service.js +75 -0
  230. package/dist/email/services/email.service.js.map +1 -0
  231. package/dist/email/services/index.d.ts +3 -0
  232. package/dist/email/services/index.d.ts.map +1 -0
  233. package/dist/email/services/index.js +3 -0
  234. package/dist/email/services/index.js.map +1 -0
  235. package/dist/env.d.ts +21 -0
  236. package/dist/env.d.ts.map +1 -0
  237. package/dist/env.js +2 -0
  238. package/dist/env.js.map +1 -0
  239. package/dist/errors/application-error.d.ts +80 -0
  240. package/dist/errors/application-error.d.ts.map +1 -0
  241. package/dist/errors/application-error.js +118 -0
  242. package/dist/errors/application-error.js.map +1 -0
  243. package/dist/errors/error-codes.d.ts +198 -0
  244. package/dist/errors/error-codes.d.ts.map +1 -0
  245. package/dist/errors/error-codes.js +180 -0
  246. package/dist/errors/error-codes.js.map +1 -0
  247. package/dist/errors/get-http-status.d.ts +12 -0
  248. package/dist/errors/get-http-status.d.ts.map +1 -0
  249. package/dist/errors/get-http-status.js +62 -0
  250. package/dist/errors/get-http-status.js.map +1 -0
  251. package/dist/errors/index.d.ts +5 -0
  252. package/dist/errors/index.d.ts.map +1 -0
  253. package/dist/errors/index.js +5 -0
  254. package/dist/errors/index.js.map +1 -0
  255. package/dist/errors/is-application-error.d.ts +9 -0
  256. package/dist/errors/is-application-error.d.ts.map +1 -0
  257. package/dist/errors/is-application-error.js +11 -0
  258. package/dist/errors/is-application-error.js.map +1 -0
  259. package/dist/guards/guard-execution.service.d.ts +37 -0
  260. package/dist/guards/guard-execution.service.d.ts.map +1 -0
  261. package/dist/guards/guard-execution.service.js +74 -0
  262. package/dist/guards/guard-execution.service.js.map +1 -0
  263. package/dist/guards/index.d.ts +12 -0
  264. package/dist/guards/index.d.ts.map +1 -0
  265. package/dist/guards/index.js +12 -0
  266. package/dist/guards/index.js.map +1 -0
  267. package/dist/guards/types.d.ts +60 -0
  268. package/dist/guards/types.d.ts.map +1 -0
  269. package/dist/guards/types.js +5 -0
  270. package/dist/guards/types.js.map +1 -0
  271. package/dist/guards/use-guards.decorator.d.ts +73 -0
  272. package/dist/guards/use-guards.decorator.d.ts.map +1 -0
  273. package/dist/guards/use-guards.decorator.js +89 -0
  274. package/dist/guards/use-guards.decorator.js.map +1 -0
  275. package/dist/i18n/errors/index.d.ts +6 -0
  276. package/dist/i18n/errors/index.d.ts.map +1 -0
  277. package/dist/i18n/errors/index.js +6 -0
  278. package/dist/i18n/errors/index.js.map +1 -0
  279. package/dist/i18n/errors/locale-not-supported.error.d.ts +12 -0
  280. package/dist/i18n/errors/locale-not-supported.error.d.ts.map +1 -0
  281. package/dist/i18n/errors/locale-not-supported.error.js +15 -0
  282. package/dist/i18n/errors/locale-not-supported.error.js.map +1 -0
  283. package/dist/i18n/errors/translation-missing.error.d.ts +12 -0
  284. package/dist/i18n/errors/translation-missing.error.d.ts.map +1 -0
  285. package/dist/i18n/errors/translation-missing.error.js +15 -0
  286. package/dist/i18n/errors/translation-missing.error.js.map +1 -0
  287. package/dist/i18n/i18n.module.d.ts +60 -0
  288. package/dist/i18n/i18n.module.d.ts.map +1 -0
  289. package/dist/i18n/i18n.module.js +103 -0
  290. package/dist/i18n/i18n.module.js.map +1 -0
  291. package/dist/i18n/i18n.options.d.ts +60 -0
  292. package/dist/i18n/i18n.options.d.ts.map +1 -0
  293. package/dist/i18n/i18n.options.js +18 -0
  294. package/dist/i18n/i18n.options.js.map +1 -0
  295. package/dist/i18n/i18n.tokens.d.ts +13 -0
  296. package/dist/i18n/i18n.tokens.d.ts.map +1 -0
  297. package/dist/i18n/i18n.tokens.js +13 -0
  298. package/dist/i18n/i18n.tokens.js.map +1 -0
  299. package/dist/i18n/i18n.types.d.ts +78 -0
  300. package/dist/i18n/i18n.types.d.ts.map +1 -0
  301. package/dist/i18n/i18n.types.js +8 -0
  302. package/dist/i18n/i18n.types.js.map +1 -0
  303. package/dist/i18n/index.d.ts +12 -0
  304. package/dist/i18n/index.d.ts.map +1 -0
  305. package/dist/i18n/index.js +12 -0
  306. package/dist/i18n/index.js.map +1 -0
  307. package/dist/i18n/messages/en/common.d.ts +23 -0
  308. package/dist/i18n/messages/en/common.d.ts.map +1 -0
  309. package/dist/i18n/messages/en/common.js +23 -0
  310. package/dist/i18n/messages/en/common.js.map +1 -0
  311. package/dist/i18n/messages/en/emails.d.ts +12 -0
  312. package/dist/i18n/messages/en/emails.d.ts.map +1 -0
  313. package/dist/i18n/messages/en/emails.js +12 -0
  314. package/dist/i18n/messages/en/emails.js.map +1 -0
  315. package/dist/i18n/messages/en/errors.d.ts +115 -0
  316. package/dist/i18n/messages/en/errors.d.ts.map +1 -0
  317. package/dist/i18n/messages/en/errors.js +132 -0
  318. package/dist/i18n/messages/en/errors.js.map +1 -0
  319. package/dist/i18n/messages/en/index.d.ts +13 -0
  320. package/dist/i18n/messages/en/index.d.ts.map +1 -0
  321. package/dist/i18n/messages/en/index.js +13 -0
  322. package/dist/i18n/messages/en/index.js.map +1 -0
  323. package/dist/i18n/messages/en/validation.d.ts +38 -0
  324. package/dist/i18n/messages/en/validation.d.ts.map +1 -0
  325. package/dist/i18n/messages/en/validation.js +38 -0
  326. package/dist/i18n/messages/en/validation.js.map +1 -0
  327. package/dist/i18n/messages/en/zod.d.ts +125 -0
  328. package/dist/i18n/messages/en/zod.d.ts.map +1 -0
  329. package/dist/i18n/messages/en/zod.js +132 -0
  330. package/dist/i18n/messages/en/zod.js.map +1 -0
  331. package/dist/i18n/messages/index.d.ts +27 -0
  332. package/dist/i18n/messages/index.d.ts.map +1 -0
  333. package/dist/i18n/messages/index.js +25 -0
  334. package/dist/i18n/messages/index.js.map +1 -0
  335. package/dist/i18n/middleware/i18n-context.middleware.d.ts +15 -0
  336. package/dist/i18n/middleware/i18n-context.middleware.d.ts.map +1 -0
  337. package/dist/i18n/middleware/i18n-context.middleware.js +42 -0
  338. package/dist/i18n/middleware/i18n-context.middleware.js.map +1 -0
  339. package/dist/i18n/middleware/index.d.ts +6 -0
  340. package/dist/i18n/middleware/index.d.ts.map +1 -0
  341. package/dist/i18n/middleware/index.js +6 -0
  342. package/dist/i18n/middleware/index.js.map +1 -0
  343. package/dist/i18n/middleware/locale-extraction.middleware.d.ts +19 -0
  344. package/dist/i18n/middleware/locale-extraction.middleware.d.ts.map +1 -0
  345. package/dist/i18n/middleware/locale-extraction.middleware.js +49 -0
  346. package/dist/i18n/middleware/locale-extraction.middleware.js.map +1 -0
  347. package/dist/i18n/services/i18n.service.d.ts +62 -0
  348. package/dist/i18n/services/i18n.service.d.ts.map +1 -0
  349. package/dist/i18n/services/i18n.service.js +118 -0
  350. package/dist/i18n/services/i18n.service.js.map +1 -0
  351. package/dist/i18n/services/message-loader.service.d.ts +47 -0
  352. package/dist/i18n/services/message-loader.service.d.ts.map +1 -0
  353. package/dist/i18n/services/message-loader.service.js +121 -0
  354. package/dist/i18n/services/message-loader.service.js.map +1 -0
  355. package/dist/i18n/setup.d.ts +27 -0
  356. package/dist/i18n/setup.d.ts.map +1 -0
  357. package/dist/i18n/setup.js +40 -0
  358. package/dist/i18n/setup.js.map +1 -0
  359. package/dist/i18n/validation/index.d.ts +9 -0
  360. package/dist/i18n/validation/index.d.ts.map +1 -0
  361. package/dist/i18n/validation/index.js +10 -0
  362. package/dist/i18n/validation/index.js.map +1 -0
  363. package/dist/i18n/validation/validation.context.d.ts +34 -0
  364. package/dist/i18n/validation/validation.context.d.ts.map +1 -0
  365. package/dist/i18n/validation/validation.context.js +42 -0
  366. package/dist/i18n/validation/validation.context.js.map +1 -0
  367. package/dist/i18n/validation/validation.error-map.d.ts +8 -0
  368. package/dist/i18n/validation/validation.error-map.d.ts.map +1 -0
  369. package/dist/i18n/validation/validation.error-map.js +158 -0
  370. package/dist/i18n/validation/validation.error-map.js.map +1 -0
  371. package/dist/i18n/validation/validation.types.d.ts +44 -0
  372. package/dist/i18n/validation/validation.types.d.ts.map +1 -0
  373. package/dist/i18n/validation/validation.types.js +2 -0
  374. package/dist/i18n/validation/validation.types.js.map +1 -0
  375. package/dist/i18n/validation/with-i18n.d.ts +29 -0
  376. package/dist/i18n/validation/with-i18n.d.ts.map +1 -0
  377. package/dist/i18n/validation/with-i18n.js +40 -0
  378. package/dist/i18n/validation/with-i18n.js.map +1 -0
  379. package/dist/index.d.ts +22 -0
  380. package/dist/index.d.ts.map +1 -0
  381. package/dist/index.js +23 -0
  382. package/dist/index.js.map +1 -0
  383. package/dist/infrastructure/error-handler/error-response.d.ts +32 -0
  384. package/dist/infrastructure/error-handler/error-response.d.ts.map +1 -0
  385. package/dist/infrastructure/error-handler/error-response.js +14 -0
  386. package/dist/infrastructure/error-handler/error-response.js.map +1 -0
  387. package/dist/infrastructure/error-handler/global-error-handler.d.ts +81 -0
  388. package/dist/infrastructure/error-handler/global-error-handler.d.ts.map +1 -0
  389. package/dist/infrastructure/error-handler/global-error-handler.js +178 -0
  390. package/dist/infrastructure/error-handler/global-error-handler.js.map +1 -0
  391. package/dist/infrastructure/error-handler/index.d.ts +6 -0
  392. package/dist/infrastructure/error-handler/index.d.ts.map +1 -0
  393. package/dist/infrastructure/error-handler/index.js +5 -0
  394. package/dist/infrastructure/error-handler/index.js.map +1 -0
  395. package/dist/infrastructure/error-handler/internal-error.d.ts +16 -0
  396. package/dist/infrastructure/error-handler/internal-error.d.ts.map +1 -0
  397. package/dist/infrastructure/error-handler/internal-error.js +19 -0
  398. package/dist/infrastructure/error-handler/internal-error.js.map +1 -0
  399. package/dist/infrastructure/errors/index.d.ts +2 -0
  400. package/dist/infrastructure/errors/index.d.ts.map +1 -0
  401. package/dist/infrastructure/errors/index.js +2 -0
  402. package/dist/infrastructure/errors/index.js.map +1 -0
  403. package/dist/infrastructure/errors/request-container-not-initialized.error.d.ts +12 -0
  404. package/dist/infrastructure/errors/request-container-not-initialized.error.d.ts.map +1 -0
  405. package/dist/infrastructure/errors/request-container-not-initialized.error.js +15 -0
  406. package/dist/infrastructure/errors/request-container-not-initialized.error.js.map +1 -0
  407. package/dist/infrastructure/index.d.ts +3 -0
  408. package/dist/infrastructure/index.d.ts.map +1 -0
  409. package/dist/infrastructure/index.js +3 -0
  410. package/dist/infrastructure/index.js.map +1 -0
  411. package/dist/logger/contracts/index.d.ts +4 -0
  412. package/dist/logger/contracts/index.d.ts.map +1 -0
  413. package/dist/logger/contracts/index.js +4 -0
  414. package/dist/logger/contracts/index.js.map +1 -0
  415. package/dist/logger/contracts/log-context.d.ts +16 -0
  416. package/dist/logger/contracts/log-context.d.ts.map +1 -0
  417. package/dist/logger/contracts/log-context.js +2 -0
  418. package/dist/logger/contracts/log-context.js.map +1 -0
  419. package/dist/logger/contracts/log-entry.d.ts +17 -0
  420. package/dist/logger/contracts/log-entry.d.ts.map +1 -0
  421. package/dist/logger/contracts/log-entry.js +2 -0
  422. package/dist/logger/contracts/log-entry.js.map +1 -0
  423. package/dist/logger/contracts/log-level.d.ts +16 -0
  424. package/dist/logger/contracts/log-level.d.ts.map +1 -0
  425. package/dist/logger/contracts/log-level.js +22 -0
  426. package/dist/logger/contracts/log-level.js.map +1 -0
  427. package/dist/logger/formatters/formatter.interface.d.ts +14 -0
  428. package/dist/logger/formatters/formatter.interface.d.ts.map +1 -0
  429. package/dist/logger/formatters/formatter.interface.js +2 -0
  430. package/dist/logger/formatters/formatter.interface.js.map +1 -0
  431. package/dist/logger/formatters/index.d.ts +4 -0
  432. package/dist/logger/formatters/index.d.ts.map +1 -0
  433. package/dist/logger/formatters/index.js +4 -0
  434. package/dist/logger/formatters/index.js.map +1 -0
  435. package/dist/logger/formatters/json-formatter.d.ts +22 -0
  436. package/dist/logger/formatters/json-formatter.d.ts.map +1 -0
  437. package/dist/logger/formatters/json-formatter.js +28 -0
  438. package/dist/logger/formatters/json-formatter.js.map +1 -0
  439. package/dist/logger/formatters/pretty-formatter.d.ts +19 -0
  440. package/dist/logger/formatters/pretty-formatter.d.ts.map +1 -0
  441. package/dist/logger/formatters/pretty-formatter.js +42 -0
  442. package/dist/logger/formatters/pretty-formatter.js.map +1 -0
  443. package/dist/logger/index.d.ts +7 -0
  444. package/dist/logger/index.d.ts.map +1 -0
  445. package/dist/logger/index.js +10 -0
  446. package/dist/logger/index.js.map +1 -0
  447. package/dist/logger/logger.tokens.d.ts +29 -0
  448. package/dist/logger/logger.tokens.d.ts.map +1 -0
  449. package/dist/logger/logger.tokens.js +29 -0
  450. package/dist/logger/logger.tokens.js.map +1 -0
  451. package/dist/logger/services/index.d.ts +2 -0
  452. package/dist/logger/services/index.d.ts.map +1 -0
  453. package/dist/logger/services/index.js +2 -0
  454. package/dist/logger/services/index.js.map +1 -0
  455. package/dist/logger/services/logger.service.d.ts +86 -0
  456. package/dist/logger/services/logger.service.d.ts.map +1 -0
  457. package/dist/logger/services/logger.service.js +161 -0
  458. package/dist/logger/services/logger.service.js.map +1 -0
  459. package/dist/logger/transports/base-transport.d.ts +24 -0
  460. package/dist/logger/transports/base-transport.d.ts.map +1 -0
  461. package/dist/logger/transports/base-transport.js +23 -0
  462. package/dist/logger/transports/base-transport.js.map +1 -0
  463. package/dist/logger/transports/console-transport.d.ts +19 -0
  464. package/dist/logger/transports/console-transport.d.ts.map +1 -0
  465. package/dist/logger/transports/console-transport.js +53 -0
  466. package/dist/logger/transports/console-transport.js.map +1 -0
  467. package/dist/logger/transports/index.d.ts +4 -0
  468. package/dist/logger/transports/index.d.ts.map +1 -0
  469. package/dist/logger/transports/index.js +4 -0
  470. package/dist/logger/transports/index.js.map +1 -0
  471. package/dist/logger/transports/transport.interface.d.ts +21 -0
  472. package/dist/logger/transports/transport.interface.d.ts.map +1 -0
  473. package/dist/logger/transports/transport.interface.js +2 -0
  474. package/dist/logger/transports/transport.interface.js.map +1 -0
  475. package/dist/middleware/index.d.ts +24 -0
  476. package/dist/middleware/index.d.ts.map +1 -0
  477. package/dist/middleware/index.js +23 -0
  478. package/dist/middleware/index.js.map +1 -0
  479. package/dist/middleware/middleware-configuration.service.d.ts +64 -0
  480. package/dist/middleware/middleware-configuration.service.d.ts.map +1 -0
  481. package/dist/middleware/middleware-configuration.service.js +210 -0
  482. package/dist/middleware/middleware-configuration.service.js.map +1 -0
  483. package/dist/middleware/middleware-consumer.d.ts +57 -0
  484. package/dist/middleware/middleware-consumer.d.ts.map +1 -0
  485. package/dist/middleware/middleware-consumer.js +130 -0
  486. package/dist/middleware/middleware-consumer.js.map +1 -0
  487. package/dist/middleware/types.d.ts +94 -0
  488. package/dist/middleware/types.d.ts.map +1 -0
  489. package/dist/middleware/types.js +2 -0
  490. package/dist/middleware/types.js.map +1 -0
  491. package/dist/module/errors/index.d.ts +5 -0
  492. package/dist/module/errors/index.d.ts.map +1 -0
  493. package/dist/module/errors/index.js +5 -0
  494. package/dist/module/errors/index.js.map +1 -0
  495. package/dist/module/errors/invalid-module-provider.error.d.ts +11 -0
  496. package/dist/module/errors/invalid-module-provider.error.d.ts.map +1 -0
  497. package/dist/module/errors/invalid-module-provider.error.js +14 -0
  498. package/dist/module/errors/invalid-module-provider.error.js.map +1 -0
  499. package/dist/module/errors/module-already-registered.error.d.ts +11 -0
  500. package/dist/module/errors/module-already-registered.error.d.ts.map +1 -0
  501. package/dist/module/errors/module-already-registered.error.js +14 -0
  502. package/dist/module/errors/module-already-registered.error.js.map +1 -0
  503. package/dist/module/errors/module-circular-dependency.error.d.ts +11 -0
  504. package/dist/module/errors/module-circular-dependency.error.d.ts.map +1 -0
  505. package/dist/module/errors/module-circular-dependency.error.js +15 -0
  506. package/dist/module/errors/module-circular-dependency.error.js.map +1 -0
  507. package/dist/module/errors/module-dependency-not-found.error.d.ts +11 -0
  508. package/dist/module/errors/module-dependency-not-found.error.d.ts.map +1 -0
  509. package/dist/module/errors/module-dependency-not-found.error.js +14 -0
  510. package/dist/module/errors/module-dependency-not-found.error.js.map +1 -0
  511. package/dist/module/index.d.ts +4 -0
  512. package/dist/module/index.d.ts.map +1 -0
  513. package/dist/module/index.js +7 -0
  514. package/dist/module/index.js.map +1 -0
  515. package/dist/module/module-registry.d.ts +101 -0
  516. package/dist/module/module-registry.d.ts.map +1 -0
  517. package/dist/module/module-registry.js +278 -0
  518. package/dist/module/module-registry.js.map +1 -0
  519. package/dist/module/module.decorator.d.ts +34 -0
  520. package/dist/module/module.decorator.d.ts.map +1 -0
  521. package/dist/module/module.decorator.js +107 -0
  522. package/dist/module/module.decorator.js.map +1 -0
  523. package/dist/module/types.d.ts +240 -0
  524. package/dist/module/types.d.ts.map +1 -0
  525. package/dist/module/types.js +8 -0
  526. package/dist/module/types.js.map +1 -0
  527. package/dist/openapi/index.d.ts +5 -0
  528. package/dist/openapi/index.d.ts.map +1 -0
  529. package/dist/openapi/index.js +7 -0
  530. package/dist/openapi/index.js.map +1 -0
  531. package/dist/openapi/openapi.module.d.ts +52 -0
  532. package/dist/openapi/openapi.module.d.ts.map +1 -0
  533. package/dist/openapi/openapi.module.js +110 -0
  534. package/dist/openapi/openapi.module.js.map +1 -0
  535. package/dist/openapi/openapi.tokens.d.ts +12 -0
  536. package/dist/openapi/openapi.tokens.d.ts.map +1 -0
  537. package/dist/openapi/openapi.tokens.js +12 -0
  538. package/dist/openapi/openapi.tokens.js.map +1 -0
  539. package/dist/openapi/services/index.d.ts +3 -0
  540. package/dist/openapi/services/index.d.ts.map +1 -0
  541. package/dist/openapi/services/index.js +3 -0
  542. package/dist/openapi/services/index.js.map +1 -0
  543. package/dist/openapi/services/openapi-config.service.d.ts +43 -0
  544. package/dist/openapi/services/openapi-config.service.d.ts.map +1 -0
  545. package/dist/openapi/services/openapi-config.service.js +98 -0
  546. package/dist/openapi/services/openapi-config.service.js.map +1 -0
  547. package/dist/openapi/services/openapi.service.d.ts +52 -0
  548. package/dist/openapi/services/openapi.service.d.ts.map +1 -0
  549. package/dist/openapi/services/openapi.service.js +228 -0
  550. package/dist/openapi/services/openapi.service.js.map +1 -0
  551. package/dist/openapi/types.d.ts +61 -0
  552. package/dist/openapi/types.d.ts.map +1 -0
  553. package/dist/openapi/types.js +2 -0
  554. package/dist/openapi/types.js.map +1 -0
  555. package/dist/polyfills/dom.polyfill.d.ts +2 -0
  556. package/dist/polyfills/dom.polyfill.d.ts.map +1 -0
  557. package/dist/polyfills/dom.polyfill.js +30 -0
  558. package/dist/polyfills/dom.polyfill.js.map +1 -0
  559. package/dist/polyfills/index.d.ts +8 -0
  560. package/dist/polyfills/index.d.ts.map +1 -0
  561. package/dist/polyfills/index.js +8 -0
  562. package/dist/polyfills/index.js.map +1 -0
  563. package/dist/queue/consumer-registry.d.ts +77 -0
  564. package/dist/queue/consumer-registry.d.ts.map +1 -0
  565. package/dist/queue/consumer-registry.js +110 -0
  566. package/dist/queue/consumer-registry.js.map +1 -0
  567. package/dist/queue/decorators/index.d.ts +2 -0
  568. package/dist/queue/decorators/index.d.ts.map +1 -0
  569. package/dist/queue/decorators/index.js +2 -0
  570. package/dist/queue/decorators/index.js.map +1 -0
  571. package/dist/queue/decorators/inject-queue.decorator.d.ts +31 -0
  572. package/dist/queue/decorators/inject-queue.decorator.d.ts.map +1 -0
  573. package/dist/queue/decorators/inject-queue.decorator.js +33 -0
  574. package/dist/queue/decorators/inject-queue.decorator.js.map +1 -0
  575. package/dist/queue/errors/index.d.ts +3 -0
  576. package/dist/queue/errors/index.d.ts.map +1 -0
  577. package/dist/queue/errors/index.js +3 -0
  578. package/dist/queue/errors/index.js.map +1 -0
  579. package/dist/queue/errors/queue-binding-not-found.error.d.ts +12 -0
  580. package/dist/queue/errors/queue-binding-not-found.error.d.ts.map +1 -0
  581. package/dist/queue/errors/queue-binding-not-found.error.js +15 -0
  582. package/dist/queue/errors/queue-binding-not-found.error.js.map +1 -0
  583. package/dist/queue/errors/queue-provider-not-supported.error.d.ts +13 -0
  584. package/dist/queue/errors/queue-provider-not-supported.error.d.ts.map +1 -0
  585. package/dist/queue/errors/queue-provider-not-supported.error.js +16 -0
  586. package/dist/queue/errors/queue-provider-not-supported.error.js.map +1 -0
  587. package/dist/queue/index.d.ts +14 -0
  588. package/dist/queue/index.d.ts.map +1 -0
  589. package/dist/queue/index.js +21 -0
  590. package/dist/queue/index.js.map +1 -0
  591. package/dist/queue/providers/cloudflare-queue.provider.d.ts +42 -0
  592. package/dist/queue/providers/cloudflare-queue.provider.d.ts.map +1 -0
  593. package/dist/queue/providers/cloudflare-queue.provider.js +73 -0
  594. package/dist/queue/providers/cloudflare-queue.provider.js.map +1 -0
  595. package/dist/queue/providers/index.d.ts +4 -0
  596. package/dist/queue/providers/index.d.ts.map +1 -0
  597. package/dist/queue/providers/index.js +4 -0
  598. package/dist/queue/providers/index.js.map +1 -0
  599. package/dist/queue/providers/queue-provider.interface.d.ts +34 -0
  600. package/dist/queue/providers/queue-provider.interface.d.ts.map +1 -0
  601. package/dist/queue/providers/queue-provider.interface.js +2 -0
  602. package/dist/queue/providers/queue-provider.interface.js.map +1 -0
  603. package/dist/queue/providers/sync-queue.provider.d.ts +48 -0
  604. package/dist/queue/providers/sync-queue.provider.d.ts.map +1 -0
  605. package/dist/queue/providers/sync-queue.provider.js +89 -0
  606. package/dist/queue/providers/sync-queue.provider.js.map +1 -0
  607. package/dist/queue/queue-consumer.d.ts +64 -0
  608. package/dist/queue/queue-consumer.d.ts.map +1 -0
  609. package/dist/queue/queue-consumer.js +2 -0
  610. package/dist/queue/queue-consumer.js.map +1 -0
  611. package/dist/queue/queue-manager.d.ts +36 -0
  612. package/dist/queue/queue-manager.d.ts.map +1 -0
  613. package/dist/queue/queue-manager.js +80 -0
  614. package/dist/queue/queue-manager.js.map +1 -0
  615. package/dist/queue/queue-name.d.ts +50 -0
  616. package/dist/queue/queue-name.d.ts.map +1 -0
  617. package/dist/queue/queue-name.js +21 -0
  618. package/dist/queue/queue-name.js.map +1 -0
  619. package/dist/queue/queue-registry.d.ts +46 -0
  620. package/dist/queue/queue-registry.d.ts.map +1 -0
  621. package/dist/queue/queue-registry.js +78 -0
  622. package/dist/queue/queue-registry.js.map +1 -0
  623. package/dist/queue/queue-sender.d.ts +38 -0
  624. package/dist/queue/queue-sender.d.ts.map +1 -0
  625. package/dist/queue/queue-sender.interface.d.ts +46 -0
  626. package/dist/queue/queue-sender.interface.d.ts.map +1 -0
  627. package/dist/queue/queue-sender.interface.js +2 -0
  628. package/dist/queue/queue-sender.interface.js.map +1 -0
  629. package/dist/queue/queue-sender.js +54 -0
  630. package/dist/queue/queue-sender.js.map +1 -0
  631. package/dist/queue/queue.module.d.ts +80 -0
  632. package/dist/queue/queue.module.d.ts.map +1 -0
  633. package/dist/queue/queue.module.js +113 -0
  634. package/dist/queue/queue.module.js.map +1 -0
  635. package/dist/queue/queue.tokens.d.ts +7 -0
  636. package/dist/queue/queue.tokens.d.ts.map +1 -0
  637. package/dist/queue/queue.tokens.js +6 -0
  638. package/dist/queue/queue.tokens.js.map +1 -0
  639. package/dist/queue/services/index.d.ts +2 -0
  640. package/dist/queue/services/index.d.ts.map +1 -0
  641. package/dist/queue/services/index.js +2 -0
  642. package/dist/queue/services/index.js.map +1 -0
  643. package/dist/queue/services/queue-provider-factory.d.ts +41 -0
  644. package/dist/queue/services/queue-provider-factory.d.ts.map +1 -0
  645. package/dist/queue/services/queue-provider-factory.js +78 -0
  646. package/dist/queue/services/queue-provider-factory.js.map +1 -0
  647. package/dist/router/constants.d.ts +72 -0
  648. package/dist/router/constants.d.ts.map +1 -0
  649. package/dist/router/constants.js +54 -0
  650. package/dist/router/constants.js.map +1 -0
  651. package/dist/router/controller.d.ts +56 -0
  652. package/dist/router/controller.d.ts.map +1 -0
  653. package/dist/router/controller.js +2 -0
  654. package/dist/router/controller.js.map +1 -0
  655. package/dist/router/decorators/controller.decorator.d.ts +55 -0
  656. package/dist/router/decorators/controller.decorator.d.ts.map +1 -0
  657. package/dist/router/decorators/controller.decorator.js +76 -0
  658. package/dist/router/decorators/controller.decorator.js.map +1 -0
  659. package/dist/router/decorators/index.d.ts +3 -0
  660. package/dist/router/decorators/index.d.ts.map +1 -0
  661. package/dist/router/decorators/index.js +7 -0
  662. package/dist/router/decorators/index.js.map +1 -0
  663. package/dist/router/decorators/route.decorator.d.ts +87 -0
  664. package/dist/router/decorators/route.decorator.d.ts.map +1 -0
  665. package/dist/router/decorators/route.decorator.js +99 -0
  666. package/dist/router/decorators/route.decorator.js.map +1 -0
  667. package/dist/router/errors/controller-method-not-found.error.d.ts +11 -0
  668. package/dist/router/errors/controller-method-not-found.error.d.ts.map +1 -0
  669. package/dist/router/errors/controller-method-not-found.error.js +14 -0
  670. package/dist/router/errors/controller-method-not-found.error.js.map +1 -0
  671. package/dist/router/errors/controller-registration.error.d.ts +15 -0
  672. package/dist/router/errors/controller-registration.error.d.ts.map +1 -0
  673. package/dist/router/errors/controller-registration.error.js +21 -0
  674. package/dist/router/errors/controller-registration.error.js.map +1 -0
  675. package/dist/router/errors/index.d.ts +9 -0
  676. package/dist/router/errors/index.d.ts.map +1 -0
  677. package/dist/router/errors/index.js +11 -0
  678. package/dist/router/errors/index.js.map +1 -0
  679. package/dist/router/errors/openapi-route-registration.error.d.ts +17 -0
  680. package/dist/router/errors/openapi-route-registration.error.d.ts.map +1 -0
  681. package/dist/router/errors/openapi-route-registration.error.js +20 -0
  682. package/dist/router/errors/openapi-route-registration.error.js.map +1 -0
  683. package/dist/router/errors/openapi-validation.error.d.ts +19 -0
  684. package/dist/router/errors/openapi-validation.error.d.ts.map +1 -0
  685. package/dist/router/errors/openapi-validation.error.js +22 -0
  686. package/dist/router/errors/openapi-validation.error.js.map +1 -0
  687. package/dist/router/errors/route-not-found.error.d.ts +11 -0
  688. package/dist/router/errors/route-not-found.error.d.ts.map +1 -0
  689. package/dist/router/errors/route-not-found.error.js +14 -0
  690. package/dist/router/errors/route-not-found.error.js.map +1 -0
  691. package/dist/router/errors/router-already-configured.error.d.ts +5 -0
  692. package/dist/router/errors/router-already-configured.error.d.ts.map +1 -0
  693. package/dist/router/errors/router-already-configured.error.js +8 -0
  694. package/dist/router/errors/router-already-configured.error.js.map +1 -0
  695. package/dist/router/errors/router-not-configured.error.d.ts +5 -0
  696. package/dist/router/errors/router-not-configured.error.d.ts.map +1 -0
  697. package/dist/router/errors/router-not-configured.error.js +8 -0
  698. package/dist/router/errors/router-not-configured.error.js.map +1 -0
  699. package/dist/router/errors/schema-validation.error.d.ts +11 -0
  700. package/dist/router/errors/schema-validation.error.d.ts.map +1 -0
  701. package/dist/router/errors/schema-validation.error.js +18 -0
  702. package/dist/router/errors/schema-validation.error.js.map +1 -0
  703. package/dist/router/index.d.ts +13 -0
  704. package/dist/router/index.d.ts.map +1 -0
  705. package/dist/router/index.js +18 -0
  706. package/dist/router/index.js.map +1 -0
  707. package/dist/router/middleware/index.d.ts +2 -0
  708. package/dist/router/middleware/index.d.ts.map +1 -0
  709. package/dist/router/middleware/index.js +4 -0
  710. package/dist/router/middleware/index.js.map +1 -0
  711. package/dist/router/middleware/logger.middleware.d.ts +19 -0
  712. package/dist/router/middleware/logger.middleware.d.ts.map +1 -0
  713. package/dist/router/middleware/logger.middleware.js +32 -0
  714. package/dist/router/middleware/logger.middleware.js.map +1 -0
  715. package/dist/router/middleware.interface.d.ts +38 -0
  716. package/dist/router/middleware.interface.d.ts.map +1 -0
  717. package/dist/router/middleware.interface.js +2 -0
  718. package/dist/router/middleware.interface.js.map +1 -0
  719. package/dist/router/router-context.d.ts +117 -0
  720. package/dist/router/router-context.d.ts.map +1 -0
  721. package/dist/router/router-context.js +145 -0
  722. package/dist/router/router-context.js.map +1 -0
  723. package/dist/router/router.service.d.ts +62 -0
  724. package/dist/router/router.service.d.ts.map +1 -0
  725. package/dist/router/router.service.js +166 -0
  726. package/dist/router/router.service.js.map +1 -0
  727. package/dist/router/router.tokens.d.ts +39 -0
  728. package/dist/router/router.tokens.d.ts.map +1 -0
  729. package/dist/router/router.tokens.js +39 -0
  730. package/dist/router/router.tokens.js.map +1 -0
  731. package/dist/router/schemas/common.schemas.d.ts +148 -0
  732. package/dist/router/schemas/common.schemas.d.ts.map +1 -0
  733. package/dist/router/schemas/common.schemas.js +88 -0
  734. package/dist/router/schemas/common.schemas.js.map +1 -0
  735. package/dist/router/schemas/index.d.ts +2 -0
  736. package/dist/router/schemas/index.d.ts.map +1 -0
  737. package/dist/router/schemas/index.js +2 -0
  738. package/dist/router/schemas/index.js.map +1 -0
  739. package/dist/router/services/index.d.ts +7 -0
  740. package/dist/router/services/index.d.ts.map +1 -0
  741. package/dist/router/services/index.js +7 -0
  742. package/dist/router/services/index.js.map +1 -0
  743. package/dist/router/services/request-scope.service.d.ts +44 -0
  744. package/dist/router/services/request-scope.service.d.ts.map +1 -0
  745. package/dist/router/services/request-scope.service.js +78 -0
  746. package/dist/router/services/request-scope.service.js.map +1 -0
  747. package/dist/router/services/route-registration.service.d.ts +94 -0
  748. package/dist/router/services/route-registration.service.d.ts.map +1 -0
  749. package/dist/router/services/route-registration.service.js +451 -0
  750. package/dist/router/services/route-registration.service.js.map +1 -0
  751. package/dist/router/types.d.ts +130 -0
  752. package/dist/router/types.d.ts.map +1 -0
  753. package/dist/router/types.js +2 -0
  754. package/dist/router/types.js.map +1 -0
  755. package/dist/storage/contracts/delete-file.input.d.ts +7 -0
  756. package/dist/storage/contracts/delete-file.input.d.ts.map +1 -0
  757. package/dist/storage/contracts/delete-file.input.js +6 -0
  758. package/dist/storage/contracts/delete-file.input.js.map +1 -0
  759. package/dist/storage/contracts/download-result.d.ts +28 -0
  760. package/dist/storage/contracts/download-result.d.ts.map +1 -0
  761. package/dist/storage/contracts/download-result.js +2 -0
  762. package/dist/storage/contracts/download-result.js.map +1 -0
  763. package/dist/storage/contracts/file-exists.input.d.ts +7 -0
  764. package/dist/storage/contracts/file-exists.input.d.ts.map +1 -0
  765. package/dist/storage/contracts/file-exists.input.js +6 -0
  766. package/dist/storage/contracts/file-exists.input.js.map +1 -0
  767. package/dist/storage/contracts/get-presigned-url.input.d.ts +26 -0
  768. package/dist/storage/contracts/get-presigned-url.input.d.ts.map +1 -0
  769. package/dist/storage/contracts/get-presigned-url.input.js +14 -0
  770. package/dist/storage/contracts/get-presigned-url.input.js.map +1 -0
  771. package/dist/storage/contracts/index.d.ts +6 -0
  772. package/dist/storage/contracts/index.d.ts.map +1 -0
  773. package/dist/storage/contracts/index.js +6 -0
  774. package/dist/storage/contracts/index.js.map +1 -0
  775. package/dist/storage/contracts/upload-file.input.d.ts +34 -0
  776. package/dist/storage/contracts/upload-file.input.d.ts.map +1 -0
  777. package/dist/storage/contracts/upload-file.input.js +10 -0
  778. package/dist/storage/contracts/upload-file.input.js.map +1 -0
  779. package/dist/storage/errors/disk-not-configured.error.d.ts +5 -0
  780. package/dist/storage/errors/disk-not-configured.error.d.ts.map +1 -0
  781. package/dist/storage/errors/disk-not-configured.error.js +7 -0
  782. package/dist/storage/errors/disk-not-configured.error.js.map +1 -0
  783. package/dist/storage/errors/file-not-found.error.d.ts +5 -0
  784. package/dist/storage/errors/file-not-found.error.d.ts.map +1 -0
  785. package/dist/storage/errors/file-not-found.error.js +8 -0
  786. package/dist/storage/errors/file-not-found.error.js.map +1 -0
  787. package/dist/storage/errors/file-too-large.error.d.ts +5 -0
  788. package/dist/storage/errors/file-too-large.error.d.ts.map +1 -0
  789. package/dist/storage/errors/file-too-large.error.js +11 -0
  790. package/dist/storage/errors/file-too-large.error.js.map +1 -0
  791. package/dist/storage/errors/index.d.ts +9 -0
  792. package/dist/storage/errors/index.d.ts.map +1 -0
  793. package/dist/storage/errors/index.js +9 -0
  794. package/dist/storage/errors/index.js.map +1 -0
  795. package/dist/storage/errors/invalid-disk.error.d.ts +5 -0
  796. package/dist/storage/errors/invalid-disk.error.d.ts.map +1 -0
  797. package/dist/storage/errors/invalid-disk.error.js +8 -0
  798. package/dist/storage/errors/invalid-disk.error.js.map +1 -0
  799. package/dist/storage/errors/invalid-file-type.error.d.ts +5 -0
  800. package/dist/storage/errors/invalid-file-type.error.d.ts.map +1 -0
  801. package/dist/storage/errors/invalid-file-type.error.js +10 -0
  802. package/dist/storage/errors/invalid-file-type.error.js.map +1 -0
  803. package/dist/storage/errors/presigned-url-invalid-expiry.error.d.ts +5 -0
  804. package/dist/storage/errors/presigned-url-invalid-expiry.error.d.ts.map +1 -0
  805. package/dist/storage/errors/presigned-url-invalid-expiry.error.js +12 -0
  806. package/dist/storage/errors/presigned-url-invalid-expiry.error.js.map +1 -0
  807. package/dist/storage/errors/storage-provider-not-supported.error.d.ts +5 -0
  808. package/dist/storage/errors/storage-provider-not-supported.error.d.ts.map +1 -0
  809. package/dist/storage/errors/storage-provider-not-supported.error.js +8 -0
  810. package/dist/storage/errors/storage-provider-not-supported.error.js.map +1 -0
  811. package/dist/storage/errors/storage-response-body-missing.error.d.ts +5 -0
  812. package/dist/storage/errors/storage-response-body-missing.error.d.ts.map +1 -0
  813. package/dist/storage/errors/storage-response-body-missing.error.js +8 -0
  814. package/dist/storage/errors/storage-response-body-missing.error.js.map +1 -0
  815. package/dist/storage/index.d.ts +15 -0
  816. package/dist/storage/index.d.ts.map +1 -0
  817. package/dist/storage/index.js +18 -0
  818. package/dist/storage/index.js.map +1 -0
  819. package/dist/storage/providers/s3-multipart-provider.interface.d.ts +194 -0
  820. package/dist/storage/providers/s3-multipart-provider.interface.d.ts.map +1 -0
  821. package/dist/storage/providers/s3-multipart-provider.interface.js +2 -0
  822. package/dist/storage/providers/s3-multipart-provider.interface.js.map +1 -0
  823. package/dist/storage/providers/s3-storage.provider.d.ts +77 -0
  824. package/dist/storage/providers/s3-storage.provider.d.ts.map +1 -0
  825. package/dist/storage/providers/s3-storage.provider.js +310 -0
  826. package/dist/storage/providers/s3-storage.provider.js.map +1 -0
  827. package/dist/storage/providers/storage-provider.interface.d.ts +58 -0
  828. package/dist/storage/providers/storage-provider.interface.d.ts.map +1 -0
  829. package/dist/storage/providers/storage-provider.interface.js +2 -0
  830. package/dist/storage/providers/storage-provider.interface.js.map +1 -0
  831. package/dist/storage/services/storage-manager.service.d.ts +48 -0
  832. package/dist/storage/services/storage-manager.service.d.ts.map +1 -0
  833. package/dist/storage/services/storage-manager.service.js +111 -0
  834. package/dist/storage/services/storage-manager.service.js.map +1 -0
  835. package/dist/storage/services/storage.service.d.ts +140 -0
  836. package/dist/storage/services/storage.service.d.ts.map +1 -0
  837. package/dist/storage/services/storage.service.js +232 -0
  838. package/dist/storage/services/storage.service.js.map +1 -0
  839. package/dist/storage/storage.module.d.ts +52 -0
  840. package/dist/storage/storage.module.d.ts.map +1 -0
  841. package/dist/storage/storage.module.js +81 -0
  842. package/dist/storage/storage.module.js.map +1 -0
  843. package/dist/storage/storage.tokens.d.ts +10 -0
  844. package/dist/storage/storage.tokens.d.ts.map +1 -0
  845. package/dist/storage/storage.tokens.js +10 -0
  846. package/dist/storage/storage.tokens.js.map +1 -0
  847. package/dist/storage/types.d.ts +31 -0
  848. package/dist/storage/types.d.ts.map +1 -0
  849. package/dist/storage/types.js +2 -0
  850. package/dist/storage/types.js.map +1 -0
  851. package/dist/types.d.ts +16 -0
  852. package/dist/types.d.ts.map +1 -0
  853. package/dist/types.js +2 -0
  854. package/dist/types.js.map +1 -0
  855. package/dist/worker/index.d.ts +2 -0
  856. package/dist/worker/index.d.ts.map +1 -0
  857. package/dist/worker/index.js +2 -0
  858. package/dist/worker/index.js.map +1 -0
  859. package/dist/worker/module-worker.d.ts +48 -0
  860. package/dist/worker/module-worker.d.ts.map +1 -0
  861. package/dist/worker/module-worker.js +88 -0
  862. package/dist/worker/module-worker.js.map +1 -0
  863. package/dist/worker/stratal-worker.d.ts +48 -0
  864. package/dist/worker/stratal-worker.d.ts.map +1 -0
  865. package/dist/worker/stratal-worker.js +88 -0
  866. package/dist/worker/stratal-worker.js.map +1 -0
  867. package/package.json +148 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=storage-provider.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-provider.interface.js","sourceRoot":"","sources":["../../../src/storage/providers/storage-provider.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,48 @@
1
+ import type { IStorageProvider } from '../providers/storage-provider.interface';
2
+ import type { StorageConfig, StorageEntry } from '../types';
3
+ /**
4
+ * Storage Manager Service
5
+ * Manages multiple storage providers (one per disk)
6
+ * Handles lazy initialization and caching of S3Clients
7
+ */
8
+ export declare class StorageManagerService {
9
+ private readonly options;
10
+ private readonly providers;
11
+ private readonly diskConfigs;
12
+ constructor(options: StorageConfig);
13
+ /**
14
+ * Initialize disk configurations from options
15
+ */
16
+ private initializeDiskConfigs;
17
+ /**
18
+ * Get provider for a specific disk
19
+ * Lazily initializes provider on first access
20
+ * @param diskName - Name of the disk
21
+ * @returns Storage provider instance
22
+ */
23
+ getProvider(diskName: string): IStorageProvider;
24
+ /**
25
+ * Create a provider instance based on configuration
26
+ * @param config - Storage entry configuration
27
+ * @returns Storage provider instance
28
+ */
29
+ private createProvider;
30
+ /**
31
+ * Get disk configuration
32
+ * @param diskName - Name of the disk
33
+ * @returns Storage entry configuration
34
+ */
35
+ getDiskConfig(diskName: string): StorageEntry;
36
+ /**
37
+ * Check if a disk exists
38
+ * @param diskName - Name of the disk
39
+ * @returns True if disk exists, false otherwise
40
+ */
41
+ hasDisk(diskName: string): boolean;
42
+ /**
43
+ * Get all available disk names
44
+ * @returns Array of disk names
45
+ */
46
+ getAvailableDisks(): string[];
47
+ }
48
+ //# sourceMappingURL=storage-manager.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-manager.service.d.ts","sourceRoot":"","sources":["../../../src/storage/services/storage-manager.service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE3D;;;;GAIG;AACH,qBACa,qBAAqB;IAM9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkC;gBAI3C,OAAO,EAAE,aAAa;IAKzC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;IAsB/C;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAWtB;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY;IAQ7C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIlC;;;OAGG;IACH,iBAAiB,IAAI,MAAM,EAAE;CAG9B"}
@@ -0,0 +1,111 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject } from 'tsyringe';
14
+ import { Transient } from '../../di/decorators';
15
+ import { DiskNotConfiguredError, StorageProviderNotSupportedError } from '../errors';
16
+ import { S3StorageProvider } from '../providers/s3-storage.provider';
17
+ import { STORAGE_TOKENS } from '../storage.tokens';
18
+ /**
19
+ * Storage Manager Service
20
+ * Manages multiple storage providers (one per disk)
21
+ * Handles lazy initialization and caching of S3Clients
22
+ */
23
+ let StorageManagerService = class StorageManagerService {
24
+ options;
25
+ providers = new Map();
26
+ diskConfigs = new Map();
27
+ constructor(options) {
28
+ this.options = options;
29
+ this.initializeDiskConfigs();
30
+ }
31
+ /**
32
+ * Initialize disk configurations from options
33
+ */
34
+ initializeDiskConfigs() {
35
+ for (const entry of this.options.storage) {
36
+ this.diskConfigs.set(entry.disk, entry);
37
+ }
38
+ }
39
+ /**
40
+ * Get provider for a specific disk
41
+ * Lazily initializes provider on first access
42
+ * @param diskName - Name of the disk
43
+ * @returns Storage provider instance
44
+ */
45
+ getProvider(diskName) {
46
+ // Return cached provider if exists
47
+ const cached = this.providers.get(diskName);
48
+ if (cached) {
49
+ return cached;
50
+ }
51
+ // Get disk configuration
52
+ const diskConfig = this.diskConfigs.get(diskName);
53
+ if (!diskConfig) {
54
+ throw new DiskNotConfiguredError(diskName);
55
+ }
56
+ // Create provider based on configuration
57
+ const provider = this.createProvider(diskConfig);
58
+ // Cache provider
59
+ this.providers.set(diskName, provider);
60
+ return provider;
61
+ }
62
+ /**
63
+ * Create a provider instance based on configuration
64
+ * @param config - Storage entry configuration
65
+ * @returns Storage provider instance
66
+ */
67
+ createProvider(config) {
68
+ switch (config.provider) {
69
+ case 's3':
70
+ return new S3StorageProvider(config);
71
+ case 'gcs':
72
+ throw new StorageProviderNotSupportedError(config.provider);
73
+ default:
74
+ throw new StorageProviderNotSupportedError(config.provider);
75
+ }
76
+ }
77
+ /**
78
+ * Get disk configuration
79
+ * @param diskName - Name of the disk
80
+ * @returns Storage entry configuration
81
+ */
82
+ getDiskConfig(diskName) {
83
+ const config = this.diskConfigs.get(diskName);
84
+ if (!config) {
85
+ throw new DiskNotConfiguredError(diskName);
86
+ }
87
+ return config;
88
+ }
89
+ /**
90
+ * Check if a disk exists
91
+ * @param diskName - Name of the disk
92
+ * @returns True if disk exists, false otherwise
93
+ */
94
+ hasDisk(diskName) {
95
+ return this.diskConfigs.has(diskName);
96
+ }
97
+ /**
98
+ * Get all available disk names
99
+ * @returns Array of disk names
100
+ */
101
+ getAvailableDisks() {
102
+ return Array.from(this.diskConfigs.keys());
103
+ }
104
+ };
105
+ StorageManagerService = __decorate([
106
+ Transient(STORAGE_TOKENS.StorageManager),
107
+ __param(0, inject(STORAGE_TOKENS.Options)),
108
+ __metadata("design:paramtypes", [Object])
109
+ ], StorageManagerService);
110
+ export { StorageManagerService };
111
+ //# sourceMappingURL=storage-manager.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-manager.service.js","sourceRoot":"","sources":["../../../src/storage/services/storage-manager.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,sBAAsB,EAAE,gCAAgC,EAAE,MAAM,WAAW,CAAA;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAGlD;;;;GAIG;AAEI,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAMb;IALF,SAAS,GAAG,IAAI,GAAG,EAA4B,CAAA;IAC/C,WAAW,GAAG,IAAI,GAAG,EAAwB,CAAA;IAE9D,YAEmB,OAAsB;QAAtB,YAAO,GAAP,OAAO,CAAe;QAEvC,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAC9B,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,QAAgB;QAC1B,mCAAmC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC3C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAA;QACf,CAAC;QAED,yBAAyB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAC5C,CAAC;QAED,yCAAyC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;QAEhD,iBAAiB;QACjB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAEtC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;;OAIG;IACK,cAAc,CAAC,MAAoB;QACzC,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;YACxB,KAAK,IAAI;gBACP,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAA;YACtC,KAAK,KAAK;gBACR,MAAM,IAAI,gCAAgC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC7D;gBACE,MAAM,IAAI,gCAAgC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,QAAgB;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAC5C,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAgB;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACvC,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5C,CAAC;CACF,CAAA;AA7FY,qBAAqB;IADjC,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC;IAMpC,WAAA,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;;GALtB,qBAAqB,CA6FjC"}
@@ -0,0 +1,140 @@
1
+ import '../../polyfills';
2
+ import type { DownloadResult, PresignedUrlResult, UploadOptions, UploadResult } from '../contracts';
3
+ import type { StreamingBlobPayloadInputTypes } from '../providers/storage-provider.interface';
4
+ import type { StorageConfig } from '../types';
5
+ import { StorageManagerService } from './storage-manager.service';
6
+ /**
7
+ * Storage Service
8
+ *
9
+ * Main facade for storage operations.
10
+ * Request-scoped for proper isolation.
11
+ *
12
+ * This service is tenant-agnostic. For tenant-aware path resolution,
13
+ * use TenantStorageService from the tenant module.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * @inject(STORAGE_TOKENS.StorageService)
18
+ * private readonly storage: StorageService
19
+ *
20
+ * await this.storage.upload(file, 'documents/report.pdf')
21
+ * ```
22
+ */
23
+ export declare class StorageService {
24
+ protected readonly storageManager: StorageManagerService;
25
+ protected readonly options: StorageConfig;
26
+ constructor(storageManager: StorageManagerService, options: StorageConfig);
27
+ /**
28
+ * Upload content to storage
29
+ * @param body - Content to upload (stream, buffer, or string)
30
+ * @param relativePath - Relative path within the disk
31
+ * @param options - Upload options including size and mime type
32
+ * @param disk - Optional disk name (uses default if not provided)
33
+ * @returns Upload result with metadata
34
+ */
35
+ upload(body: StreamingBlobPayloadInputTypes, relativePath: string, options: UploadOptions, disk?: string): Promise<UploadResult>;
36
+ /**
37
+ * Download a file from storage
38
+ * @param relativePath - Relative path within the disk
39
+ * @param disk - Optional disk name (uses default if not provided)
40
+ * @returns Download result with stream and metadata
41
+ */
42
+ download(relativePath: string, disk?: string): Promise<DownloadResult>;
43
+ /**
44
+ * Delete a file from storage
45
+ * @param relativePath - Relative path within the disk
46
+ * @param disk - Optional disk name (uses default if not provided)
47
+ */
48
+ delete(relativePath: string, disk?: string): Promise<void>;
49
+ /**
50
+ * Check if a file exists in storage
51
+ * @param relativePath - Relative path within the disk
52
+ * @param disk - Optional disk name (uses default if not provided)
53
+ * @returns True if file exists, false otherwise
54
+ */
55
+ exists(relativePath: string, disk?: string): Promise<boolean>;
56
+ /**
57
+ * Generate a presigned download URL
58
+ * @param relativePath - Relative path within the disk
59
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
60
+ * @param disk - Optional disk name (uses default if not provided)
61
+ * @returns Presigned URL result
62
+ */
63
+ getPresignedDownloadUrl(relativePath: string, expiresIn?: number, disk?: string): Promise<PresignedUrlResult>;
64
+ /**
65
+ * Generate a presigned upload URL
66
+ * @param relativePath - Relative path within the disk
67
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
68
+ * @param disk - Optional disk name (uses default if not provided)
69
+ * @returns Presigned URL result
70
+ */
71
+ getPresignedUploadUrl(relativePath: string, expiresIn?: number, disk?: string): Promise<PresignedUrlResult>;
72
+ /**
73
+ * Generate a presigned delete URL
74
+ * @param relativePath - Relative path within the disk
75
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
76
+ * @param disk - Optional disk name (uses default if not provided)
77
+ * @returns Presigned URL result
78
+ */
79
+ getPresignedDeleteUrl(relativePath: string, expiresIn?: number, disk?: string): Promise<PresignedUrlResult>;
80
+ /**
81
+ * Generate a presigned URL for any method
82
+ * @param relativePath - Relative path within the disk
83
+ * @param method - HTTP method (GET, PUT, DELETE, HEAD)
84
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
85
+ * @param disk - Optional disk name (uses default if not provided)
86
+ * @returns Presigned URL result
87
+ */
88
+ protected getPresignedUrl(relativePath: string, method: 'GET' | 'PUT' | 'DELETE' | 'HEAD', expiresIn?: number, disk?: string): Promise<PresignedUrlResult>;
89
+ /**
90
+ * Resolve disk name (use default if not provided)
91
+ * @param disk - Optional disk name
92
+ * @returns Resolved disk name
93
+ */
94
+ protected resolveDisk(disk?: string): string;
95
+ /**
96
+ * Build full path with disk root and path template substitution
97
+ * @param relativePath - Relative path within the disk
98
+ * @param diskName - Name of the disk
99
+ * @returns Full path including disk root
100
+ */
101
+ protected buildFullPath(relativePath: string, diskName: string): string;
102
+ /**
103
+ * Substitute template variables in path
104
+ * Override this method in subclasses to add tenant-specific substitutions
105
+ *
106
+ * @param path - Path with template variables
107
+ * @returns Path with substituted variables
108
+ */
109
+ protected substituteTemplateVariables(path: string): string;
110
+ /**
111
+ * Validate expiry time for presigned URLs
112
+ * @param expiresIn - Optional expiry time in seconds
113
+ * @returns Validated expiry time
114
+ */
115
+ protected validateExpiresIn(expiresIn?: number): number;
116
+ /**
117
+ * Get all available disk names
118
+ * @returns Array of disk names
119
+ */
120
+ getAvailableDisks(): string[];
121
+ /**
122
+ * Chunked upload for streaming data without known size
123
+ * Uses multipart upload under the hood - handles retries and large files
124
+ *
125
+ * Use this method when:
126
+ * - Content-Length is unknown or unreliable
127
+ * - Uploading from streams that can't be rewound
128
+ * - Need automatic retry handling for transient failures
129
+ *
130
+ * @param body - Content to upload (stream or buffer)
131
+ * @param relativePath - Relative path within the disk
132
+ * @param options - Upload options (mimeType required, size optional)
133
+ * @param disk - Optional disk name (uses default if not provided)
134
+ * @returns Upload result with metadata
135
+ */
136
+ chunkedUpload(body: StreamingBlobPayloadInputTypes, relativePath: string, options: Omit<UploadOptions, 'size'> & {
137
+ size?: number;
138
+ }, disk?: string): Promise<UploadResult>;
139
+ }
140
+ //# sourceMappingURL=storage.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.service.d.ts","sourceRoot":"","sources":["../../../src/storage/services/storage.service.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAA;AAIxB,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAKnG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAA;AAE7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEjE;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,cAAc;IAGvB,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,qBAAqB;IAExD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa;gBAFtB,cAAc,EAAE,qBAAqB,EAErC,OAAO,EAAE,aAAa;IAG3C;;;;;;;OAOG;IACG,MAAM,CACV,IAAI,EAAE,8BAA8B,EACpC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,aAAa,EACtB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,CAAC;IAQxB;;;;;OAKG;IACG,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAQ5E;;;;OAIG;IACG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhE;;;;;OAKG;IACG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQnE;;;;;;OAMG;IACG,uBAAuB,CAC3B,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;OAMG;IACG,qBAAqB,CACzB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;OAMG;IACG,qBAAqB,CACzB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;;OAOG;cACa,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,EACzC,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC;IAS9B;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAU5C;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAavE;;;;;;OAMG;IACH,SAAS,CAAC,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAY3D;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;IAevD;;;OAGG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;;;;;;;;;;;;;OAcG;IACG,aAAa,CACjB,IAAI,EAAE,8BAA8B,EACpC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EACxD,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,CAAC;CAOzB"}
@@ -0,0 +1,232 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import '../../polyfills';
14
+ import { inject } from 'tsyringe';
15
+ import { Transient } from '../../di/decorators';
16
+ import { InvalidDiskError, PresignedUrlInvalidExpiryError, } from '../errors';
17
+ import { STORAGE_TOKENS } from '../storage.tokens';
18
+ import { StorageManagerService } from './storage-manager.service';
19
+ /**
20
+ * Storage Service
21
+ *
22
+ * Main facade for storage operations.
23
+ * Request-scoped for proper isolation.
24
+ *
25
+ * This service is tenant-agnostic. For tenant-aware path resolution,
26
+ * use TenantStorageService from the tenant module.
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * @inject(STORAGE_TOKENS.StorageService)
31
+ * private readonly storage: StorageService
32
+ *
33
+ * await this.storage.upload(file, 'documents/report.pdf')
34
+ * ```
35
+ */
36
+ let StorageService = class StorageService {
37
+ storageManager;
38
+ options;
39
+ constructor(storageManager, options) {
40
+ this.storageManager = storageManager;
41
+ this.options = options;
42
+ }
43
+ /**
44
+ * Upload content to storage
45
+ * @param body - Content to upload (stream, buffer, or string)
46
+ * @param relativePath - Relative path within the disk
47
+ * @param options - Upload options including size and mime type
48
+ * @param disk - Optional disk name (uses default if not provided)
49
+ * @returns Upload result with metadata
50
+ */
51
+ async upload(body, relativePath, options, disk) {
52
+ const diskName = this.resolveDisk(disk);
53
+ const provider = this.storageManager.getProvider(diskName);
54
+ const fullPath = this.buildFullPath(relativePath, diskName);
55
+ return provider.upload(body, fullPath, options);
56
+ }
57
+ /**
58
+ * Download a file from storage
59
+ * @param relativePath - Relative path within the disk
60
+ * @param disk - Optional disk name (uses default if not provided)
61
+ * @returns Download result with stream and metadata
62
+ */
63
+ async download(relativePath, disk) {
64
+ const diskName = this.resolveDisk(disk);
65
+ const provider = this.storageManager.getProvider(diskName);
66
+ const fullPath = this.buildFullPath(relativePath, diskName);
67
+ return provider.download(fullPath);
68
+ }
69
+ /**
70
+ * Delete a file from storage
71
+ * @param relativePath - Relative path within the disk
72
+ * @param disk - Optional disk name (uses default if not provided)
73
+ */
74
+ async delete(relativePath, disk) {
75
+ const diskName = this.resolveDisk(disk);
76
+ const provider = this.storageManager.getProvider(diskName);
77
+ const fullPath = this.buildFullPath(relativePath, diskName);
78
+ await provider.delete(fullPath);
79
+ }
80
+ /**
81
+ * Check if a file exists in storage
82
+ * @param relativePath - Relative path within the disk
83
+ * @param disk - Optional disk name (uses default if not provided)
84
+ * @returns True if file exists, false otherwise
85
+ */
86
+ async exists(relativePath, disk) {
87
+ const diskName = this.resolveDisk(disk);
88
+ const provider = this.storageManager.getProvider(diskName);
89
+ const fullPath = this.buildFullPath(relativePath, diskName);
90
+ return provider.exists(fullPath);
91
+ }
92
+ /**
93
+ * Generate a presigned download URL
94
+ * @param relativePath - Relative path within the disk
95
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
96
+ * @param disk - Optional disk name (uses default if not provided)
97
+ * @returns Presigned URL result
98
+ */
99
+ async getPresignedDownloadUrl(relativePath, expiresIn, disk) {
100
+ return this.getPresignedUrl(relativePath, 'GET', expiresIn, disk);
101
+ }
102
+ /**
103
+ * Generate a presigned upload URL
104
+ * @param relativePath - Relative path within the disk
105
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
106
+ * @param disk - Optional disk name (uses default if not provided)
107
+ * @returns Presigned URL result
108
+ */
109
+ async getPresignedUploadUrl(relativePath, expiresIn, disk) {
110
+ return this.getPresignedUrl(relativePath, 'PUT', expiresIn, disk);
111
+ }
112
+ /**
113
+ * Generate a presigned delete URL
114
+ * @param relativePath - Relative path within the disk
115
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
116
+ * @param disk - Optional disk name (uses default if not provided)
117
+ * @returns Presigned URL result
118
+ */
119
+ async getPresignedDeleteUrl(relativePath, expiresIn, disk) {
120
+ return this.getPresignedUrl(relativePath, 'DELETE', expiresIn, disk);
121
+ }
122
+ /**
123
+ * Generate a presigned URL for any method
124
+ * @param relativePath - Relative path within the disk
125
+ * @param method - HTTP method (GET, PUT, DELETE, HEAD)
126
+ * @param expiresIn - Optional expiry time in seconds (uses default if not provided)
127
+ * @param disk - Optional disk name (uses default if not provided)
128
+ * @returns Presigned URL result
129
+ */
130
+ async getPresignedUrl(relativePath, method, expiresIn, disk) {
131
+ const diskName = this.resolveDisk(disk);
132
+ const provider = this.storageManager.getProvider(diskName);
133
+ const fullPath = this.buildFullPath(relativePath, diskName);
134
+ const validatedExpiresIn = this.validateExpiresIn(expiresIn);
135
+ return provider.getPresignedUrl(fullPath, method, validatedExpiresIn);
136
+ }
137
+ /**
138
+ * Resolve disk name (use default if not provided)
139
+ * @param disk - Optional disk name
140
+ * @returns Resolved disk name
141
+ */
142
+ resolveDisk(disk) {
143
+ const diskName = disk ?? this.options.defaultStorageDisk;
144
+ if (!this.storageManager.hasDisk(diskName)) {
145
+ throw new InvalidDiskError(diskName);
146
+ }
147
+ return diskName;
148
+ }
149
+ /**
150
+ * Build full path with disk root and path template substitution
151
+ * @param relativePath - Relative path within the disk
152
+ * @param diskName - Name of the disk
153
+ * @returns Full path including disk root
154
+ */
155
+ buildFullPath(relativePath, diskName) {
156
+ const diskConfig = this.storageManager.getDiskConfig(diskName);
157
+ let root = diskConfig.root || '';
158
+ // Substitute template variables
159
+ root = this.substituteTemplateVariables(root);
160
+ // Combine root and relative path
161
+ const fullPath = `${root}/${relativePath}`.replace(/\/+/g, '/').replace(/^\//, '');
162
+ return fullPath;
163
+ }
164
+ /**
165
+ * Substitute template variables in path
166
+ * Override this method in subclasses to add tenant-specific substitutions
167
+ *
168
+ * @param path - Path with template variables
169
+ * @returns Path with substituted variables
170
+ */
171
+ substituteTemplateVariables(path) {
172
+ let result = path;
173
+ // Substitute {date}, {year}, {month}
174
+ const now = new Date();
175
+ result = result.replace(/{date}/g, now.toISOString().split('T')[0]);
176
+ result = result.replace(/{year}/g, now.getFullYear().toString());
177
+ result = result.replace(/{month}/g, (now.getMonth() + 1).toString().padStart(2, '0'));
178
+ return result;
179
+ }
180
+ /**
181
+ * Validate expiry time for presigned URLs
182
+ * @param expiresIn - Optional expiry time in seconds
183
+ * @returns Validated expiry time
184
+ */
185
+ validateExpiresIn(expiresIn) {
186
+ const presignedUrlConfig = this.options.presignedUrl;
187
+ const validatedExpiresIn = expiresIn ?? presignedUrlConfig.defaultExpiry;
188
+ // S3 presigned URL limits: 1 second to 7 days (604800 seconds)
189
+ const minExpiry = 1;
190
+ const maxExpiry = presignedUrlConfig.maxExpiry;
191
+ if (validatedExpiresIn < minExpiry || validatedExpiresIn > maxExpiry) {
192
+ throw new PresignedUrlInvalidExpiryError(validatedExpiresIn, minExpiry, maxExpiry);
193
+ }
194
+ return validatedExpiresIn;
195
+ }
196
+ /**
197
+ * Get all available disk names
198
+ * @returns Array of disk names
199
+ */
200
+ getAvailableDisks() {
201
+ return this.storageManager.getAvailableDisks();
202
+ }
203
+ /**
204
+ * Chunked upload for streaming data without known size
205
+ * Uses multipart upload under the hood - handles retries and large files
206
+ *
207
+ * Use this method when:
208
+ * - Content-Length is unknown or unreliable
209
+ * - Uploading from streams that can't be rewound
210
+ * - Need automatic retry handling for transient failures
211
+ *
212
+ * @param body - Content to upload (stream or buffer)
213
+ * @param relativePath - Relative path within the disk
214
+ * @param options - Upload options (mimeType required, size optional)
215
+ * @param disk - Optional disk name (uses default if not provided)
216
+ * @returns Upload result with metadata
217
+ */
218
+ async chunkedUpload(body, relativePath, options, disk) {
219
+ const diskName = this.resolveDisk(disk);
220
+ const provider = this.storageManager.getProvider(diskName);
221
+ const fullPath = this.buildFullPath(relativePath, diskName);
222
+ return provider.chunkedUpload(body, fullPath, options);
223
+ }
224
+ };
225
+ StorageService = __decorate([
226
+ Transient(STORAGE_TOKENS.StorageService),
227
+ __param(0, inject(STORAGE_TOKENS.StorageManager)),
228
+ __param(1, inject(STORAGE_TOKENS.Options)),
229
+ __metadata("design:paramtypes", [StorageManagerService, Object])
230
+ ], StorageService);
231
+ export { StorageService };
232
+ //# sourceMappingURL=storage.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/storage/services/storage.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Storage Module
3
+ * Provides file storage capabilities using AWS S3
4
+ * Supports multiple disk configurations with tenant-aware path templates
5
+ */
6
+ import type { AsyncModuleOptions, DynamicModule } from '../module/types';
7
+ import type { StorageConfig } from './types';
8
+ /**
9
+ * Storage module options
10
+ * Same as StorageConfig from types.ts
11
+ */
12
+ export type StorageModuleOptions = StorageConfig;
13
+ export declare class StorageModule {
14
+ /**
15
+ * Configure StorageModule with static options
16
+ *
17
+ * @param options - Storage configuration options
18
+ * @returns Dynamic module with storage infrastructure
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * StorageModule.forRoot({
23
+ * storage: [{ disk: 'uploads', provider: 's3', ... }],
24
+ * defaultStorageDisk: 'uploads',
25
+ * presignedUrl: { defaultExpiry: 3600, maxExpiry: 86400 }
26
+ * })
27
+ * ```
28
+ */
29
+ static forRoot(options: StorageModuleOptions): DynamicModule;
30
+ /**
31
+ * Configure StorageModule with async factory
32
+ *
33
+ * Use when configuration depends on other services.
34
+ *
35
+ * @param options - Async configuration with factory and inject tokens
36
+ * @returns Dynamic module with storage infrastructure
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * StorageModule.forRootAsync({
41
+ * inject: [storageConfig.KEY],
42
+ * useFactory: (storage) => ({
43
+ * storage: storage.storage,
44
+ * defaultStorageDisk: storage.defaultStorageDisk,
45
+ * presignedUrl: storage.presignedUrl
46
+ * })
47
+ * })
48
+ * ```
49
+ */
50
+ static forRootAsync(options: AsyncModuleOptions<StorageModuleOptions>): DynamicModule;
51
+ }
52
+ //# sourceMappingURL=storage.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.module.d.ts","sourceRoot":"","sources":["../../src/storage/storage.module.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAA;AAEhD,qBAIa,aAAa;IACxB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa;IAS5D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,aAAa;CAYtF"}