@bgord/bun 0.30.0 → 1.0.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 (505) hide show
  1. package/dist/antivirus-clamav.adapter.d.ts.map +1 -1
  2. package/dist/antivirus-clamav.adapter.js +6 -6
  3. package/dist/antivirus-clamav.adapter.js.map +1 -1
  4. package/dist/antivirus.port.d.ts +3 -6
  5. package/dist/antivirus.port.d.ts.map +1 -1
  6. package/dist/antivirus.port.js +1 -12
  7. package/dist/antivirus.port.js.map +1 -1
  8. package/dist/api-version.middleware.d.ts +4 -2
  9. package/dist/api-version.middleware.d.ts.map +1 -1
  10. package/dist/api-version.middleware.js.map +1 -1
  11. package/dist/basic-auth-password.vo.d.ts +9 -0
  12. package/dist/basic-auth-password.vo.d.ts.map +1 -0
  13. package/dist/basic-auth-password.vo.js +12 -0
  14. package/dist/basic-auth-password.vo.js.map +1 -0
  15. package/dist/basic-auth-username.vo.d.ts +9 -0
  16. package/dist/basic-auth-username.vo.d.ts.map +1 -0
  17. package/dist/basic-auth-username.vo.js +12 -0
  18. package/dist/basic-auth-username.vo.js.map +1 -0
  19. package/dist/basic-auth.service.d.ts +5 -22
  20. package/dist/basic-auth.service.d.ts.map +1 -1
  21. package/dist/basic-auth.service.js +0 -15
  22. package/dist/basic-auth.service.js.map +1 -1
  23. package/dist/better-auth-logger.service.d.ts.map +1 -1
  24. package/dist/better-auth-logger.service.js +4 -2
  25. package/dist/better-auth-logger.service.js.map +1 -1
  26. package/dist/binary.vo.d.ts +10 -0
  27. package/dist/binary.vo.d.ts.map +1 -0
  28. package/dist/binary.vo.js +16 -0
  29. package/dist/binary.vo.js.map +1 -0
  30. package/dist/build-info-repository.service.d.ts +2 -1
  31. package/dist/build-info-repository.service.d.ts.map +1 -1
  32. package/dist/build-info-repository.service.js +2 -5
  33. package/dist/build-info-repository.service.js.map +1 -1
  34. package/dist/cache-file.service.d.ts.map +1 -1
  35. package/dist/cache-file.service.js +1 -1
  36. package/dist/cache-file.service.js.map +1 -1
  37. package/dist/cache-response.middleware.d.ts.map +1 -1
  38. package/dist/cache-response.middleware.js.map +1 -1
  39. package/dist/certificate-inspector-tls.adapter.d.ts +1 -0
  40. package/dist/certificate-inspector-tls.adapter.d.ts.map +1 -1
  41. package/dist/certificate-inspector-tls.adapter.js +5 -1
  42. package/dist/certificate-inspector-tls.adapter.js.map +1 -1
  43. package/dist/client-from-hono.adapter.d.ts +1 -1
  44. package/dist/client-from-hono.adapter.d.ts.map +1 -1
  45. package/dist/client-from-hono.adapter.js +1 -1
  46. package/dist/client-from-hono.adapter.js.map +1 -1
  47. package/dist/clock-system.adapter.d.ts.map +1 -1
  48. package/dist/clock-system.adapter.js +1 -2
  49. package/dist/clock-system.adapter.js.map +1 -1
  50. package/dist/clock.port.d.ts.map +1 -1
  51. package/dist/context.middleware.d.ts.map +1 -1
  52. package/dist/context.middleware.js.map +1 -1
  53. package/dist/correlation-id.vo.d.ts.map +1 -1
  54. package/dist/correlation-storage.service.d.ts +3 -0
  55. package/dist/correlation-storage.service.d.ts.map +1 -1
  56. package/dist/correlation-storage.service.js +2 -1
  57. package/dist/correlation-storage.service.js.map +1 -1
  58. package/dist/env-validator.service.d.ts +3 -1
  59. package/dist/env-validator.service.d.ts.map +1 -1
  60. package/dist/env-validator.service.js +2 -2
  61. package/dist/env-validator.service.js.map +1 -1
  62. package/dist/etag-extractor.middleware.js +2 -2
  63. package/dist/etag-extractor.middleware.js.map +1 -1
  64. package/dist/event-store-like.types.d.ts.map +1 -1
  65. package/dist/event-stream.vo.d.ts +4 -2
  66. package/dist/event-stream.vo.d.ts.map +1 -1
  67. package/dist/event-stream.vo.js +8 -4
  68. package/dist/event-stream.vo.js.map +1 -1
  69. package/dist/file-cleaner-bun-forgiving.adapter.d.ts +6 -0
  70. package/dist/file-cleaner-bun-forgiving.adapter.d.ts.map +1 -0
  71. package/dist/file-cleaner-bun-forgiving.adapter.js +9 -0
  72. package/dist/file-cleaner-bun-forgiving.adapter.js.map +1 -0
  73. package/dist/file-cleaner-bun.adapter.d.ts +6 -0
  74. package/dist/file-cleaner-bun.adapter.d.ts.map +1 -0
  75. package/dist/file-cleaner-bun.adapter.js +6 -0
  76. package/dist/file-cleaner-bun.adapter.js.map +1 -0
  77. package/dist/file-cleaner-noop.adapter.d.ts +6 -0
  78. package/dist/file-cleaner-noop.adapter.d.ts.map +1 -0
  79. package/dist/file-cleaner-noop.adapter.js +4 -0
  80. package/dist/file-cleaner-noop.adapter.js.map +1 -0
  81. package/dist/file-cleaner.port.d.ts +5 -0
  82. package/dist/file-cleaner.port.d.ts.map +1 -0
  83. package/dist/file-cleaner.port.js +2 -0
  84. package/dist/file-cleaner.port.js.map +1 -0
  85. package/dist/file-draft.service.js +2 -2
  86. package/dist/file-draft.service.js.map +1 -1
  87. package/dist/file-renamer-fs-forgiving.adapter.d.ts +6 -0
  88. package/dist/file-renamer-fs-forgiving.adapter.d.ts.map +1 -0
  89. package/dist/file-renamer-fs-forgiving.adapter.js +12 -0
  90. package/dist/file-renamer-fs-forgiving.adapter.js.map +1 -0
  91. package/dist/file-renamer-fs.adapter.d.ts +6 -0
  92. package/dist/file-renamer-fs.adapter.d.ts.map +1 -0
  93. package/dist/file-renamer-fs.adapter.js +9 -0
  94. package/dist/file-renamer-fs.adapter.js.map +1 -0
  95. package/dist/file-renamer-noop.adapter.d.ts +6 -0
  96. package/dist/file-renamer-noop.adapter.d.ts.map +1 -0
  97. package/dist/file-renamer-noop.adapter.js +4 -0
  98. package/dist/file-renamer-noop.adapter.js.map +1 -0
  99. package/dist/file-renamer.port.d.ts +5 -0
  100. package/dist/file-renamer.port.d.ts.map +1 -0
  101. package/dist/file-renamer.port.js +2 -0
  102. package/dist/file-renamer.port.js.map +1 -0
  103. package/dist/graceful-shutdown.service.d.ts.map +1 -1
  104. package/dist/graceful-shutdown.service.js +1 -3
  105. package/dist/graceful-shutdown.service.js.map +1 -1
  106. package/dist/hcaptcha-secret-key.vo.d.ts +8 -0
  107. package/dist/hcaptcha-secret-key.vo.d.ts.map +1 -0
  108. package/dist/hcaptcha-secret-key.vo.js +10 -0
  109. package/dist/hcaptcha-secret-key.vo.js.map +1 -0
  110. package/dist/hcaptcha-site-key.vo.d.ts +8 -0
  111. package/dist/hcaptcha-site-key.vo.d.ts.map +1 -0
  112. package/dist/hcaptcha-site-key.vo.js +10 -0
  113. package/dist/hcaptcha-site-key.vo.js.map +1 -0
  114. package/dist/healthcheck.service.d.ts +4 -0
  115. package/dist/healthcheck.service.d.ts.map +1 -1
  116. package/dist/healthcheck.service.js +3 -3
  117. package/dist/healthcheck.service.js.map +1 -1
  118. package/dist/http-logger.middleware.d.ts.map +1 -1
  119. package/dist/http-logger.middleware.js +9 -9
  120. package/dist/http-logger.middleware.js.map +1 -1
  121. package/dist/i18n.service.d.ts +10 -3
  122. package/dist/i18n.service.d.ts.map +1 -1
  123. package/dist/i18n.service.js +7 -11
  124. package/dist/i18n.service.js.map +1 -1
  125. package/dist/id-provider-deterministic.adapter.d.ts +3 -0
  126. package/dist/id-provider-deterministic.adapter.d.ts.map +1 -1
  127. package/dist/id-provider-deterministic.adapter.js +4 -1
  128. package/dist/id-provider-deterministic.adapter.js.map +1 -1
  129. package/dist/image-alpha-noop.adapter.d.ts +1 -1
  130. package/dist/image-alpha-sharp.adapter.d.ts +8 -1
  131. package/dist/image-alpha-sharp.adapter.d.ts.map +1 -1
  132. package/dist/image-alpha-sharp.adapter.js +6 -3
  133. package/dist/image-alpha-sharp.adapter.js.map +1 -1
  134. package/dist/image-blur-noop.adapter.d.ts +1 -1
  135. package/dist/image-blur-sharp.adapter.d.ts +8 -1
  136. package/dist/image-blur-sharp.adapter.d.ts.map +1 -1
  137. package/dist/image-blur-sharp.adapter.js +6 -3
  138. package/dist/image-blur-sharp.adapter.js.map +1 -1
  139. package/dist/image-compressor-noop.adapter.d.ts +1 -1
  140. package/dist/image-compressor-sharp.adapter.d.ts +8 -1
  141. package/dist/image-compressor-sharp.adapter.d.ts.map +1 -1
  142. package/dist/image-compressor-sharp.adapter.js +5 -2
  143. package/dist/image-compressor-sharp.adapter.js.map +1 -1
  144. package/dist/image-exif-clear-noop.adapter.d.ts +1 -1
  145. package/dist/image-exif-clear-sharp.adapter.d.ts +8 -1
  146. package/dist/image-exif-clear-sharp.adapter.d.ts.map +1 -1
  147. package/dist/image-exif-clear-sharp.adapter.js +5 -2
  148. package/dist/image-exif-clear-sharp.adapter.js.map +1 -1
  149. package/dist/image-formatter-sharp.adapter.d.ts +10 -1
  150. package/dist/image-formatter-sharp.adapter.d.ts.map +1 -1
  151. package/dist/image-formatter-sharp.adapter.js +8 -5
  152. package/dist/image-formatter-sharp.adapter.js.map +1 -1
  153. package/dist/image-info-noop.adapter.d.ts +2 -2
  154. package/dist/image-info-sharp.adapter.d.ts +2 -2
  155. package/dist/image-info-sharp.adapter.d.ts.map +1 -1
  156. package/dist/image-info-sharp.adapter.js +5 -9
  157. package/dist/image-info-sharp.adapter.js.map +1 -1
  158. package/dist/image-processor-sharp.adapter.d.ts +9 -0
  159. package/dist/image-processor-sharp.adapter.d.ts.map +1 -1
  160. package/dist/image-processor-sharp.adapter.js +8 -5
  161. package/dist/image-processor-sharp.adapter.js.map +1 -1
  162. package/dist/image-resizer-noop.adapter.d.ts +1 -1
  163. package/dist/image-resizer-sharp.adapter.d.ts +8 -1
  164. package/dist/image-resizer-sharp.adapter.d.ts.map +1 -1
  165. package/dist/image-resizer-sharp.adapter.js +5 -2
  166. package/dist/image-resizer-sharp.adapter.js.map +1 -1
  167. package/dist/index.d.ts +25 -5
  168. package/dist/index.d.ts.map +1 -1
  169. package/dist/index.js +25 -5
  170. package/dist/index.js.map +1 -1
  171. package/dist/json-file-reader-bun-forgiving.adapter.d.ts +6 -0
  172. package/dist/json-file-reader-bun-forgiving.adapter.d.ts.map +1 -0
  173. package/dist/json-file-reader-bun-forgiving.adapter.js +11 -0
  174. package/dist/json-file-reader-bun-forgiving.adapter.js.map +1 -0
  175. package/dist/json-file-reader-bun.adapter.d.ts +6 -0
  176. package/dist/json-file-reader-bun.adapter.d.ts.map +1 -0
  177. package/dist/json-file-reader-bun.adapter.js +6 -0
  178. package/dist/json-file-reader-bun.adapter.js.map +1 -0
  179. package/dist/json-file-reader-noop.adapter.d.ts +8 -0
  180. package/dist/json-file-reader-noop.adapter.d.ts.map +1 -0
  181. package/dist/json-file-reader-noop.adapter.js +10 -0
  182. package/dist/json-file-reader-noop.adapter.js.map +1 -0
  183. package/dist/json-file-reader.port.d.ts +5 -0
  184. package/dist/json-file-reader.port.d.ts.map +1 -0
  185. package/dist/json-file-reader.port.js +2 -0
  186. package/dist/json-file-reader.port.js.map +1 -0
  187. package/dist/logger-format-error.service.d.ts +1 -1
  188. package/dist/logger-format-error.service.d.ts.map +1 -1
  189. package/dist/logger-format-error.service.js +9 -9
  190. package/dist/logger-format-error.service.js.map +1 -1
  191. package/dist/logger.port.d.ts +0 -4
  192. package/dist/logger.port.d.ts.map +1 -1
  193. package/dist/mailer-smtp-with-logger.adapter.d.ts.map +1 -1
  194. package/dist/mailer-smtp-with-logger.adapter.js.map +1 -1
  195. package/dist/mailer-smtp.adapter.d.ts +2 -23
  196. package/dist/mailer-smtp.adapter.d.ts.map +1 -1
  197. package/dist/mailer-smtp.adapter.js +0 -10
  198. package/dist/mailer-smtp.adapter.js.map +1 -1
  199. package/dist/mailer.vo.d.ts +34 -0
  200. package/dist/mailer.vo.d.ts.map +1 -0
  201. package/dist/mailer.vo.js +21 -0
  202. package/dist/mailer.vo.js.map +1 -0
  203. package/dist/modules/history/event-handlers/onHistoryPopulatedEvent.d.ts.map +1 -1
  204. package/dist/modules/history/event-handlers/onHistoryPopulatedEvent.js.map +1 -1
  205. package/dist/modules/history/events/HISTORY_CLEARED_EVENT.d.ts +4 -4
  206. package/dist/modules/history/events/HISTORY_CLEARED_EVENT.d.ts.map +1 -1
  207. package/dist/modules/history/events/HISTORY_CLEARED_EVENT.js +2 -8
  208. package/dist/modules/history/events/HISTORY_CLEARED_EVENT.js.map +1 -1
  209. package/dist/modules/history/events/HISTORY_POPULATED_EVENT.d.ts +6 -6
  210. package/dist/modules/history/events/HISTORY_POPULATED_EVENT.d.ts.map +1 -1
  211. package/dist/modules/history/events/HISTORY_POPULATED_EVENT.js +2 -8
  212. package/dist/modules/history/events/HISTORY_POPULATED_EVENT.js.map +1 -1
  213. package/dist/modules/history/ports/history-writer.d.ts.map +1 -1
  214. package/dist/modules/history/value-objects/history-subject.d.ts.map +1 -1
  215. package/dist/modules/preferences/open-host-queries/user-language.d.ts.map +1 -1
  216. package/dist/modules/preferences/open-host-queries/user-language.js.map +1 -1
  217. package/dist/modules/preferences/ports/user-language-resolver.d.ts +3 -3
  218. package/dist/modules/preferences/ports/user-language-resolver.d.ts.map +1 -1
  219. package/dist/modules/preferences/ports/user-language-resolver.js +2 -7
  220. package/dist/modules/preferences/ports/user-language-resolver.js.map +1 -1
  221. package/dist/modules/preferences/value-objects/supported-languages-set.d.ts +3 -3
  222. package/dist/modules/preferences/value-objects/supported-languages-set.d.ts.map +1 -1
  223. package/dist/modules/preferences/value-objects/supported-languages-set.js +2 -7
  224. package/dist/modules/preferences/value-objects/supported-languages-set.js.map +1 -1
  225. package/dist/pdf-generator-noop.adapter.d.ts +1 -1
  226. package/dist/pdf-generator-noop.adapter.d.ts.map +1 -1
  227. package/dist/pdf-generator-noop.adapter.js +1 -1
  228. package/dist/pdf-generator-noop.adapter.js.map +1 -1
  229. package/dist/port.vo.d.ts +4 -0
  230. package/dist/port.vo.d.ts.map +1 -1
  231. package/dist/port.vo.js +7 -1
  232. package/dist/port.vo.js.map +1 -1
  233. package/dist/prerequisites/binary.d.ts +2 -5
  234. package/dist/prerequisites/binary.d.ts.map +1 -1
  235. package/dist/prerequisites/binary.js +1 -8
  236. package/dist/prerequisites/binary.js.map +1 -1
  237. package/dist/prerequisites/dependency-vulnerabilities.js +3 -3
  238. package/dist/prerequisites/dependency-vulnerabilities.js.map +1 -1
  239. package/dist/prerequisites/directory.d.ts.map +1 -1
  240. package/dist/prerequisites/directory.js.map +1 -1
  241. package/dist/prerequisites/jobs.d.ts.map +1 -1
  242. package/dist/prerequisites/jobs.js +1 -2
  243. package/dist/prerequisites/jobs.js.map +1 -1
  244. package/dist/prerequisites/log-file.d.ts.map +1 -1
  245. package/dist/prerequisites/log-file.js.map +1 -1
  246. package/dist/prerequisites/mailer.d.ts.map +1 -1
  247. package/dist/prerequisites/mailer.js.map +1 -1
  248. package/dist/prerequisites/memory.js +1 -1
  249. package/dist/prerequisites/memory.js.map +1 -1
  250. package/dist/prerequisites/node.d.ts.map +1 -1
  251. package/dist/prerequisites/node.js.map +1 -1
  252. package/dist/prerequisites/port.d.ts.map +1 -1
  253. package/dist/prerequisites/port.js.map +1 -1
  254. package/dist/prerequisites/ram.d.ts.map +1 -1
  255. package/dist/prerequisites/ram.js +1 -1
  256. package/dist/prerequisites/ram.js.map +1 -1
  257. package/dist/prerequisites/running-user.d.ts.map +1 -1
  258. package/dist/prerequisites/running-user.js.map +1 -1
  259. package/dist/prerequisites/space.d.ts.map +1 -1
  260. package/dist/prerequisites/space.js +1 -1
  261. package/dist/prerequisites/space.js.map +1 -1
  262. package/dist/prerequisites/sqlite.d.ts.map +1 -1
  263. package/dist/prerequisites/sqlite.js +1 -1
  264. package/dist/prerequisites/sqlite.js.map +1 -1
  265. package/dist/prerequisites/ssl-certificate-expiry.d.ts +2 -2
  266. package/dist/prerequisites/ssl-certificate-expiry.d.ts.map +1 -1
  267. package/dist/prerequisites/ssl-certificate-expiry.js +4 -4
  268. package/dist/prerequisites/ssl-certificate-expiry.js.map +1 -1
  269. package/dist/prerequisites/timezone-utc.d.ts.map +1 -1
  270. package/dist/prerequisites/timezone-utc.js.map +1 -1
  271. package/dist/prerequisites/translations.d.ts +10 -3
  272. package/dist/prerequisites/translations.d.ts.map +1 -1
  273. package/dist/prerequisites/translations.js +15 -10
  274. package/dist/prerequisites/translations.js.map +1 -1
  275. package/dist/prerequisites.service.d.ts +3 -0
  276. package/dist/prerequisites.service.d.ts.map +1 -1
  277. package/dist/prerequisites.service.js +3 -3
  278. package/dist/prerequisites.service.js.map +1 -1
  279. package/dist/rate-limit-store-node-cache.adapter.d.ts +2 -2
  280. package/dist/rate-limit-store-node-cache.adapter.d.ts.map +1 -1
  281. package/dist/rate-limit-store-node-cache.adapter.js +1 -1
  282. package/dist/rate-limit-store-node-cache.adapter.js.map +1 -1
  283. package/dist/rate-limit-store.port.d.ts +1 -1
  284. package/dist/rate-limit-store.port.d.ts.map +1 -1
  285. package/dist/recaptcha-secret-key.vo.d.ts +8 -0
  286. package/dist/recaptcha-secret-key.vo.d.ts.map +1 -0
  287. package/dist/recaptcha-secret-key.vo.js +10 -0
  288. package/dist/recaptcha-secret-key.vo.js.map +1 -0
  289. package/dist/recaptcha-site-key.vo.d.ts +8 -0
  290. package/dist/recaptcha-site-key.vo.d.ts.map +1 -0
  291. package/dist/recaptcha-site-key.vo.js +10 -0
  292. package/dist/recaptcha-site-key.vo.js.map +1 -0
  293. package/dist/redactor-encrypt.adapter.js +2 -2
  294. package/dist/redactor-encrypt.adapter.js.map +1 -1
  295. package/dist/redactor-mask.adapter.d.ts.map +1 -1
  296. package/dist/redactor-mask.adapter.js +0 -3
  297. package/dist/redactor-mask.adapter.js.map +1 -1
  298. package/dist/remote-file-storage-disk.adapter.d.ts +9 -2
  299. package/dist/remote-file-storage-disk.adapter.d.ts.map +1 -1
  300. package/dist/remote-file-storage-disk.adapter.js +7 -9
  301. package/dist/remote-file-storage-disk.adapter.js.map +1 -1
  302. package/dist/safe-parse-body.service.d.ts.map +1 -1
  303. package/dist/safe-parse-body.service.js +1 -1
  304. package/dist/safe-parse-body.service.js.map +1 -1
  305. package/dist/setup.service.d.ts +3 -1
  306. package/dist/setup.service.d.ts.map +1 -1
  307. package/dist/setup.service.js +2 -2
  308. package/dist/setup.service.js.map +1 -1
  309. package/dist/shield-api-key.middleware.d.ts.map +1 -1
  310. package/dist/shield-api-key.middleware.js +1 -2
  311. package/dist/shield-api-key.middleware.js.map +1 -1
  312. package/dist/shield-auth.middleware.d.ts.map +1 -1
  313. package/dist/shield-auth.middleware.js +1 -3
  314. package/dist/shield-auth.middleware.js.map +1 -1
  315. package/dist/shield-captcha-hcaptcha-local.adapter.d.ts +2 -2
  316. package/dist/shield-captcha-hcaptcha-local.adapter.d.ts.map +1 -1
  317. package/dist/shield-captcha-hcaptcha-local.adapter.js +2 -2
  318. package/dist/shield-captcha-hcaptcha-local.adapter.js.map +1 -1
  319. package/dist/shield-captcha-hcaptcha.adapter.d.ts +2 -8
  320. package/dist/shield-captcha-hcaptcha.adapter.d.ts.map +1 -1
  321. package/dist/shield-captcha-hcaptcha.adapter.js +2 -6
  322. package/dist/shield-captcha-hcaptcha.adapter.js.map +1 -1
  323. package/dist/shield-captcha-noop.adapter.d.ts +1 -1
  324. package/dist/shield-captcha-noop.adapter.d.ts.map +1 -1
  325. package/dist/shield-captcha-noop.adapter.js +1 -1
  326. package/dist/shield-captcha-noop.adapter.js.map +1 -1
  327. package/dist/shield-captcha-recaptcha.adapter.d.ts +3 -7
  328. package/dist/shield-captcha-recaptcha.adapter.d.ts.map +1 -1
  329. package/dist/shield-captcha-recaptcha.adapter.js +12 -17
  330. package/dist/shield-captcha-recaptcha.adapter.js.map +1 -1
  331. package/dist/shield-rate-limit.middleware.d.ts +2 -2
  332. package/dist/shield-rate-limit.middleware.d.ts.map +1 -1
  333. package/dist/slower.middleware.d.ts.map +1 -1
  334. package/dist/slower.middleware.js.map +1 -1
  335. package/dist/temporary-file-absolute.adapter.d.ts +11 -3
  336. package/dist/temporary-file-absolute.adapter.d.ts.map +1 -1
  337. package/dist/temporary-file-absolute.adapter.js +11 -14
  338. package/dist/temporary-file-absolute.adapter.js.map +1 -1
  339. package/dist/temporary-file-noop.adapter.d.ts +1 -1
  340. package/dist/temporary-file-noop.adapter.d.ts.map +1 -1
  341. package/dist/temporary-file-noop.adapter.js +1 -1
  342. package/dist/temporary-file-noop.adapter.js.map +1 -1
  343. package/dist/temporary-file.port.d.ts +1 -1
  344. package/dist/temporary-file.port.d.ts.map +1 -1
  345. package/dist/time-zone-offset.middleware.d.ts.map +1 -1
  346. package/dist/time-zone-offset.middleware.js +2 -2
  347. package/dist/time-zone-offset.middleware.js.map +1 -1
  348. package/dist/translations.service.d.ts +8 -1
  349. package/dist/translations.service.d.ts.map +1 -1
  350. package/dist/translations.service.js +2 -2
  351. package/dist/translations.service.js.map +1 -1
  352. package/dist/tsconfig.tsbuildinfo +1 -1
  353. package/dist/uptime.service.js +3 -3
  354. package/dist/uptime.service.js.map +1 -1
  355. package/dist/uuid.vo.d.ts +3 -0
  356. package/dist/uuid.vo.d.ts.map +1 -1
  357. package/dist/uuid.vo.js +2 -1
  358. package/dist/uuid.vo.js.map +1 -1
  359. package/dist/visitor-id-hash-hono.adapter.d.ts +1 -1
  360. package/dist/visitor-id-hash-hono.adapter.d.ts.map +1 -1
  361. package/dist/visitor-id-hash-hono.adapter.js +4 -4
  362. package/dist/visitor-id-hash-hono.adapter.js.map +1 -1
  363. package/dist/visitor-id-hash.adapter.d.ts +1 -1
  364. package/dist/visitor-id-hash.adapter.d.ts.map +1 -1
  365. package/dist/visitor-id-hash.adapter.js +3 -3
  366. package/dist/visitor-id-hash.adapter.js.map +1 -1
  367. package/dist/weak-etag-extractor.middleware.js +2 -2
  368. package/dist/weak-etag-extractor.middleware.js.map +1 -1
  369. package/package.json +7 -7
  370. package/readme.md +20 -5
  371. package/src/antivirus-clamav.adapter.ts +7 -12
  372. package/src/antivirus.port.ts +1 -13
  373. package/src/api-version.middleware.ts +4 -4
  374. package/src/basic-auth-password.vo.ts +15 -0
  375. package/src/basic-auth-username.vo.ts +15 -0
  376. package/src/basic-auth.service.ts +3 -22
  377. package/src/better-auth-logger.service.ts +4 -3
  378. package/src/binary.vo.ts +20 -0
  379. package/src/build-info-repository.service.ts +5 -7
  380. package/src/cache-file.service.ts +2 -1
  381. package/src/cache-response.middleware.ts +3 -0
  382. package/src/certificate-inspector-tls.adapter.ts +7 -1
  383. package/src/client-from-hono.adapter.ts +1 -1
  384. package/src/clock-system.adapter.ts +2 -2
  385. package/src/clock.port.ts +1 -0
  386. package/src/context.middleware.ts +1 -0
  387. package/src/correlation-id.vo.ts +1 -0
  388. package/src/correlation-storage.service.ts +4 -1
  389. package/src/env-validator.service.ts +2 -2
  390. package/src/etag-extractor.middleware.ts +2 -2
  391. package/src/event-store-like.types.ts +1 -0
  392. package/src/event-stream.vo.ts +9 -4
  393. package/src/file-cleaner-bun-forgiving.adapter.ts +10 -0
  394. package/src/file-cleaner-bun.adapter.ts +8 -0
  395. package/src/file-cleaner-noop.adapter.ts +6 -0
  396. package/src/file-cleaner.port.ts +5 -0
  397. package/src/file-draft.service.ts +2 -2
  398. package/src/file-renamer-fs-forgiving.adapter.ts +17 -0
  399. package/src/file-renamer-fs.adapter.ts +15 -0
  400. package/src/file-renamer-noop.adapter.ts +9 -0
  401. package/src/file-renamer.port.ts +8 -0
  402. package/src/graceful-shutdown.service.ts +1 -3
  403. package/src/hcaptcha-secret-key.vo.ts +13 -0
  404. package/src/hcaptcha-site-key.vo.ts +13 -0
  405. package/src/healthcheck.service.ts +6 -4
  406. package/src/http-logger.middleware.ts +9 -10
  407. package/src/i18n.service.ts +14 -11
  408. package/src/id-provider-deterministic.adapter.ts +5 -1
  409. package/src/image-alpha-sharp.adapter.ts +7 -4
  410. package/src/image-blur-sharp.adapter.ts +7 -4
  411. package/src/image-compressor-sharp.adapter.ts +6 -2
  412. package/src/image-exif-clear-sharp.adapter.ts +6 -2
  413. package/src/image-formatter-sharp.adapter.ts +10 -5
  414. package/src/image-info-sharp.adapter.ts +5 -11
  415. package/src/image-processor-sharp.adapter.ts +10 -5
  416. package/src/image-resizer-sharp.adapter.ts +6 -3
  417. package/src/index.ts +25 -5
  418. package/src/json-file-reader-bun-forgiving.adapter.ts +12 -0
  419. package/src/json-file-reader-bun.adapter.ts +8 -0
  420. package/src/json-file-reader-noop.adapter.ts +10 -0
  421. package/src/json-file-reader.port.ts +5 -0
  422. package/src/logger-format-error.service.ts +10 -9
  423. package/src/logger.port.ts +0 -4
  424. package/src/mailer-smtp-with-logger.adapter.ts +2 -0
  425. package/src/mailer-smtp.adapter.ts +2 -31
  426. package/src/mailer.vo.ts +38 -0
  427. package/src/modules/history/event-handlers/onHistoryPopulatedEvent.ts +1 -0
  428. package/src/modules/history/events/HISTORY_CLEARED_EVENT.ts +2 -8
  429. package/src/modules/history/events/HISTORY_POPULATED_EVENT.ts +2 -8
  430. package/src/modules/history/ports/history-writer.ts +1 -0
  431. package/src/modules/history/value-objects/history-subject.ts +1 -0
  432. package/src/modules/preferences/open-host-queries/user-language.ts +1 -0
  433. package/src/modules/preferences/ports/user-language-resolver.ts +2 -7
  434. package/src/modules/preferences/value-objects/supported-languages-set.ts +2 -8
  435. package/src/pdf-generator-noop.adapter.ts +1 -1
  436. package/src/port.vo.ts +9 -1
  437. package/src/prerequisites/binary.ts +4 -14
  438. package/src/prerequisites/dependency-vulnerabilities.ts +3 -3
  439. package/src/prerequisites/directory.ts +1 -0
  440. package/src/prerequisites/jobs.ts +2 -4
  441. package/src/prerequisites/log-file.ts +1 -0
  442. package/src/prerequisites/mailer.ts +1 -0
  443. package/src/prerequisites/memory.ts +1 -1
  444. package/src/prerequisites/node.ts +1 -0
  445. package/src/prerequisites/port.ts +1 -0
  446. package/src/prerequisites/ram.ts +2 -1
  447. package/src/prerequisites/running-user.ts +1 -0
  448. package/src/prerequisites/space.ts +2 -1
  449. package/src/prerequisites/sqlite.ts +1 -2
  450. package/src/prerequisites/ssl-certificate-expiry.ts +5 -5
  451. package/src/prerequisites/timezone-utc.ts +1 -0
  452. package/src/prerequisites/translations.ts +29 -17
  453. package/src/prerequisites.service.ts +4 -4
  454. package/src/rate-limit-store-node-cache.adapter.ts +2 -2
  455. package/src/rate-limit-store.port.ts +1 -1
  456. package/src/recaptcha-secret-key.vo.ts +13 -0
  457. package/src/recaptcha-site-key.vo.ts +13 -0
  458. package/src/redactor-encrypt.adapter.ts +2 -2
  459. package/src/redactor-mask.adapter.ts +0 -3
  460. package/src/remote-file-storage-disk.adapter.ts +13 -14
  461. package/src/safe-parse-body.service.ts +2 -1
  462. package/src/setup.service.ts +4 -2
  463. package/src/shield-api-key.middleware.ts +1 -3
  464. package/src/shield-auth.middleware.ts +5 -3
  465. package/src/shield-captcha-hcaptcha-local.adapter.ts +4 -3
  466. package/src/shield-captcha-hcaptcha.adapter.ts +5 -13
  467. package/src/shield-captcha-noop.adapter.ts +1 -1
  468. package/src/shield-captcha-recaptcha.adapter.ts +15 -25
  469. package/src/shield-rate-limit.middleware.ts +2 -2
  470. package/src/slower.middleware.ts +1 -0
  471. package/src/temporary-file-absolute.adapter.ts +16 -14
  472. package/src/temporary-file-noop.adapter.ts +1 -1
  473. package/src/temporary-file.port.ts +2 -1
  474. package/src/time-zone-offset.middleware.ts +2 -5
  475. package/src/translations.service.ts +7 -4
  476. package/src/uptime.service.ts +3 -3
  477. package/src/uuid.vo.ts +4 -1
  478. package/src/visitor-id-hash-hono.adapter.ts +5 -5
  479. package/src/visitor-id-hash.adapter.ts +3 -3
  480. package/src/weak-etag-extractor.middleware.ts +2 -2
  481. package/dist/encryption.service.d.ts +0 -25
  482. package/dist/encryption.service.d.ts.map +0 -1
  483. package/dist/encryption.service.js +0 -35
  484. package/dist/encryption.service.js.map +0 -1
  485. package/dist/gzip.service.d.ts +0 -13
  486. package/dist/gzip.service.d.ts.map +0 -1
  487. package/dist/gzip.service.js +0 -18
  488. package/dist/gzip.service.js.map +0 -1
  489. package/dist/open-graph.service.d.ts +0 -104
  490. package/dist/open-graph.service.d.ts.map +0 -1
  491. package/dist/open-graph.service.js +0 -159
  492. package/dist/open-graph.service.js.map +0 -1
  493. package/dist/sitemap.service.d.ts +0 -28
  494. package/dist/sitemap.service.d.ts.map +0 -1
  495. package/dist/sitemap.service.js +0 -57
  496. package/dist/sitemap.service.js.map +0 -1
  497. package/dist/url-wo-trailing-slash.vo.d.ts +0 -4
  498. package/dist/url-wo-trailing-slash.vo.d.ts.map +0 -1
  499. package/dist/url-wo-trailing-slash.vo.js +0 -8
  500. package/dist/url-wo-trailing-slash.vo.js.map +0 -1
  501. package/src/encryption.service.ts +0 -45
  502. package/src/gzip.service.ts +0 -23
  503. package/src/open-graph.service.ts +0 -242
  504. package/src/sitemap.service.ts +0 -91
  505. package/src/url-wo-trailing-slash.vo.ts +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAOnE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAiB/C"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,kBAAmB,YAAW,OAAO,CAAC,YAAY;IAC7D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;gBAEtB,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAOnE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAgB/C"}
@@ -15,7 +15,7 @@ export class PrerequisiteSQLite {
15
15
  try {
16
16
  const integrity = this.sqlite.query("PRAGMA integrity_check;").get();
17
17
  if (!integrity || (integrity.integrity_check ?? "").toLowerCase() !== "ok") {
18
- return prereqs.Verification.failure({ message: "Integrity_check failed" });
18
+ return prereqs.Verification.failure({ message: "Integrity check failed" });
19
19
  }
20
20
  return prereqs.Verification.success();
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,MAAM,CAAW;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,EAErD,CAAC;YAEd,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC3E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC7E,CAAC;YAED,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/prerequisites/sqlite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IACpB,IAAI,GAAG,QAAQ,CAAC;IAChB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,MAAM,CAAW;IAElC,YAAY,MAA6D;QACvE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,EAErD,CAAC;YAEd,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC3E,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF"}
@@ -5,11 +5,11 @@ export declare class PrerequisiteSSLCertificateExpiry implements prereqs.Prerequ
5
5
  readonly label: prereqs.PrerequisiteLabelType;
6
6
  readonly enabled?: boolean;
7
7
  private readonly host;
8
- private readonly validDaysMinimum;
8
+ private readonly days;
9
9
  private readonly inspector;
10
10
  constructor(config: prereqs.PrerequisiteConfigType & {
11
11
  host: string;
12
- validDaysMinimum: number;
12
+ days: number;
13
13
  inspector: CertificateInspectorPort;
14
14
  });
15
15
  verify(): Promise<prereqs.VerifyOutcome>;
@@ -1 +1 @@
1
- {"version":3,"file":"ssl-certificate-expiry.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gCAAiC,YAAW,OAAO,CAAC,YAAY;IAC3E,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;gBAGnD,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,gBAAgB,EAAE,MAAM,CAAC;QACzB,SAAS,EAAE,wBAAwB,CAAC;KACrC;IAUG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAW/C"}
1
+ {"version":3,"file":"ssl-certificate-expiry.d.ts","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,qBAAa,gCAAiC,YAAW,OAAO,CAAC,YAAY;IAC3E,QAAQ,CAAC,IAAI,4BAA4B;IACzC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;gBAGnD,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,wBAAwB,CAAC;KACrC;IAUG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAW/C"}
@@ -4,13 +4,13 @@ export class PrerequisiteSSLCertificateExpiry {
4
4
  label;
5
5
  enabled = true;
6
6
  host;
7
- validDaysMinimum;
7
+ days;
8
8
  inspector;
9
9
  constructor(config) {
10
10
  this.label = config.label;
11
11
  this.enabled = config.enabled === undefined ? true : config.enabled;
12
12
  this.host = config.host;
13
- this.validDaysMinimum = config.validDaysMinimum;
13
+ this.days = config.days;
14
14
  this.inspector = config.inspector;
15
15
  }
16
16
  async verify() {
@@ -18,8 +18,8 @@ export class PrerequisiteSSLCertificateExpiry {
18
18
  return prereqs.Verification.undetermined();
19
19
  const result = await this.inspector.inspect(this.host);
20
20
  if (!result.success)
21
- return prereqs.Verification.failure({ message: "Unavailable" });
22
- if (result.daysRemaining <= this.validDaysMinimum) {
21
+ return prereqs.Verification.failure({ message: "Certificate unavailable" });
22
+ if (result.daysRemaining <= this.days) {
23
23
  return prereqs.Verification.failure({ message: `${result.daysRemaining} days remaining` });
24
24
  }
25
25
  return prereqs.Verification.success();
@@ -1 +1 @@
1
- {"version":3,"file":"ssl-certificate-expiry.js","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gCAAgC;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAChC,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAS;IACb,gBAAgB,CAAS;IACzB,SAAS,CAA2B;IAErD,YACE,MAIC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QACrF,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAClD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,iBAAiB,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"ssl-certificate-expiry.js","sourceRoot":"","sources":["../../src/prerequisites/ssl-certificate-expiry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,OAAO,gCAAgC;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAChC,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,IAAI,CAAS;IACb,IAAI,CAAS;IACb,SAAS,CAA2B;IAErD,YACE,MAIC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;QACjG,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,iBAAiB,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"timezone-utc.d.ts","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,eAAO,MAAM,WAAW,qBAAmB,CAAC;AAE5C,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;KAAE;IAM/E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAQ/C"}
1
+ {"version":3,"file":"timezone-utc.d.ts","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,eAAO,MAAM,WAAW,qBAAmB,CAAC;AAE5C,qBAAa,uBAAwB,YAAW,OAAO,CAAC,YAAY;IAClE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;KAAE;IAO/E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAQ/C"}
@@ -1 +1 @@
1
- {"version":3,"file":"timezone-utc.js","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAE5C,MAAM,OAAO,uBAAuB;IACzB,IAAI,GAAG,cAAc,CAAC;IACtB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,QAAQ,CAAqB;IAE9C,YAAY,MAAyE;QACnF,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1D,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;CACF"}
1
+ {"version":3,"file":"timezone-utc.js","sourceRoot":"","sources":["../../src/prerequisites/timezone-utc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAE5C,MAAM,OAAO,uBAAuB;IACzB,IAAI,GAAG,cAAc,CAAC;IACtB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,QAAQ,CAAqB;IAE9C,YAAY,MAAyE;QACnF,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1D,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;CACF"}
@@ -1,4 +1,7 @@
1
- import * as i18n from "../i18n.service";
1
+ import type * as types from "../i18n.service";
2
+ import { I18n } from "../i18n.service";
3
+ import type { JsonFileReaderPort } from "../json-file-reader.port";
4
+ import type { LoggerPort } from "../logger.port";
2
5
  import * as prereqs from "../prerequisites.service";
3
6
  export declare class PrerequisiteTranslations implements prereqs.Prerequisite {
4
7
  readonly kind = "translations";
@@ -6,9 +9,13 @@ export declare class PrerequisiteTranslations implements prereqs.Prerequisite {
6
9
  readonly enabled?: boolean;
7
10
  private readonly translationsPath?;
8
11
  private readonly supportedLanguages;
12
+ private readonly Logger;
13
+ private readonly JsonFileReader;
9
14
  constructor(config: prereqs.PrerequisiteConfigType & {
10
- translationsPath?: typeof i18n.I18n.DEFAULT_TRANSLATIONS_PATH;
11
- supportedLanguages: i18n.I18nConfigType["supportedLanguages"];
15
+ translationsPath?: typeof I18n.DEFAULT_TRANSLATIONS_PATH;
16
+ supportedLanguages: types.I18nConfigType["supportedLanguages"];
17
+ Logger: LoggerPort;
18
+ JsonFileReader: JsonFileReaderPort;
12
19
  });
13
20
  verify(): Promise<prereqs.VerifyOutcome>;
14
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../src/prerequisites/translations.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAQpD,qBAAa,wBAAyB,YAAW,OAAO,CAAC,YAAY;IACnE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAA6C;IAC/E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA4C;gBAG7E,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,gBAAgB,CAAC,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC;QAC9D,kBAAkB,EAAE,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;KAC/D;IASG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAwD/C"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../src/prerequisites/translations.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAQpD,qBAAa,wBAAyB,YAAW,OAAO,CAAC,YAAY;IACnE,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAQ;IAElC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAwC;IAC1E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA6C;IAEhF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;gBAGlD,MAAM,EAAE,OAAO,CAAC,sBAAsB,GAAG;QACvC,gBAAgB,CAAC,EAAE,OAAO,IAAI,CAAC,yBAAyB,CAAC;QACzD,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;QAC/D,MAAM,EAAE,UAAU,CAAC;QACnB,cAAc,EAAE,kBAAkB,CAAC;KACpC;IAYG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;CAyD/C"}
@@ -1,6 +1,6 @@
1
1
  import { constants } from "node:fs";
2
2
  import fsp from "node:fs/promises";
3
- import * as i18n from "../i18n.service";
3
+ import { I18n } from "../i18n.service";
4
4
  import * as prereqs from "../prerequisites.service";
5
5
  export class PrerequisiteTranslations {
6
6
  kind = "translations";
@@ -8,44 +8,49 @@ export class PrerequisiteTranslations {
8
8
  enabled = true;
9
9
  translationsPath;
10
10
  supportedLanguages;
11
+ Logger;
12
+ JsonFileReader;
11
13
  constructor(config) {
12
14
  this.label = config.label;
13
15
  this.enabled = config.enabled === undefined ? true : config.enabled;
14
16
  this.translationsPath = config.translationsPath;
15
17
  this.supportedLanguages = config.supportedLanguages;
18
+ this.Logger = config.Logger;
19
+ this.JsonFileReader = config.JsonFileReader;
16
20
  }
17
21
  async verify() {
18
22
  if (!this.enabled)
19
23
  return prereqs.Verification.undetermined();
20
- const translationsPath = this.translationsPath ?? i18n.I18n.DEFAULT_TRANSLATIONS_PATH;
24
+ const translationsPath = this.translationsPath ?? I18n.DEFAULT_TRANSLATIONS_PATH;
25
+ const supportedLanguages = Object.keys(this.supportedLanguages);
26
+ const i18n = new I18n({ Logger: this.Logger, JsonFileReader: this.JsonFileReader });
21
27
  try {
22
28
  await fsp.access(translationsPath, constants.R_OK);
23
- for (const language in this.supportedLanguages) {
24
- await fsp.access(new i18n.I18n().getTranslationPathForLanguage(language).get(), constants.R_OK);
29
+ for (const language in supportedLanguages) {
30
+ await fsp.access(i18n.getTranslationPathForLanguage(language).get(), constants.R_OK);
25
31
  }
26
32
  }
27
33
  catch (error) {
28
34
  return prereqs.Verification.failure(error);
29
35
  }
30
- const supportedLanguages = Object.keys(this.supportedLanguages);
31
36
  if (supportedLanguages.length === 1)
32
37
  return prereqs.Verification.success();
33
38
  const languageToTranslationKeys = {};
34
39
  const problems = [];
35
40
  for (const language of supportedLanguages) {
36
- const translations = await new i18n.I18n().getTranslations(language);
41
+ const translations = await i18n.getTranslations(language);
37
42
  const translationKeys = Object.keys(translations);
38
43
  languageToTranslationKeys[language] = translationKeys;
39
44
  }
40
- for (const currentLanguage in languageToTranslationKeys) {
41
- const translationKeys = languageToTranslationKeys[currentLanguage] ?? [];
45
+ for (const language in languageToTranslationKeys) {
46
+ const translationKeys = languageToTranslationKeys[language] ?? [];
42
47
  for (const translationKey of translationKeys) {
43
48
  for (const supportedLanguage of supportedLanguages) {
44
- if (supportedLanguage === currentLanguage)
49
+ if (supportedLanguage === language)
45
50
  continue;
46
51
  const translationKeyExists = languageToTranslationKeys[supportedLanguage]?.some((key) => translationKey === key);
47
52
  if (!translationKeyExists) {
48
- problems.push({ key: translationKey, existsIn: currentLanguage, missingIn: supportedLanguage });
53
+ problems.push({ key: translationKey, existsIn: language, missingIn: supportedLanguage });
49
54
  }
50
55
  }
51
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"translations.js","sourceRoot":"","sources":["../../src/prerequisites/translations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"translations.js","sourceRoot":"","sources":["../../src/prerequisites/translations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,GAAG,MAAM,kBAAkB,CAAC;AAGnC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAGvC,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAQpD,MAAM,OAAO,wBAAwB;IAC1B,IAAI,GAAG,cAAc,CAAC;IACtB,KAAK,CAAgC;IACrC,OAAO,GAAa,IAAI,CAAC;IAEjB,gBAAgB,CAAyC;IACzD,kBAAkB,CAA6C;IAE/D,MAAM,CAAa;IACnB,cAAc,CAAqB;IAEpD,YACE,MAKC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEpE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QAEpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAE9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,yBAAyB,CAAC;QAEjF,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAEpF,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YAEnD,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;gBAC1C,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAE3E,MAAM,yBAAyB,GAA4D,EAAE,CAAC;QAE9F,MAAM,QAAQ,GAA0C,EAAE,CAAC;QAE3D,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;YAC1C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAElD,yBAAyB,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC;QACxD,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,yBAAyB,EAAE,CAAC;YACjD,MAAM,eAAe,GAAG,yBAAyB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAElE,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;gBAC7C,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;oBACnD,IAAI,iBAAiB,KAAK,QAAQ;wBAAE,SAAS;oBAE7C,MAAM,oBAAoB,GAAG,yBAAyB,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAC7E,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,KAAK,GAAG,CAChC,CAAC;oBAEF,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC;oBAC3F,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAEjE,MAAM,OAAO,GAAG,QAAQ;aACrB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,OAAO,CAAC,GAAG,eAAe,OAAO,CAAC,QAAQ,gBAAgB,OAAO,CAAC,SAAS,EAAE,CAAC;aACvG,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;CACF"}
@@ -40,6 +40,9 @@ export type PrerequisiteConfigType = {
40
40
  label: string;
41
41
  enabled?: boolean;
42
42
  };
43
+ export declare const PrerequisitesError: {
44
+ readonly Failure: "prerequisites.failure";
45
+ };
43
46
  /** @public */
44
47
  export declare class Prerequisites {
45
48
  private readonly logger;
@@ -1 +1 @@
1
- {"version":3,"file":"prerequisites.service.d.ts","sourceRoot":"","sources":["../src/prerequisites.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhE,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C,oBAAY,sBAAsB;IAChC,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,YAAY,iBAAiB;CAC9B;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAA;CAAE,CAAC,CAAC;AACjF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,YAAY,CAAA;CAAE,CAAC,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAE/E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC,CAAC;AAEH,qBAAa,YAAY;IACvB,MAAM,CAAC,OAAO,IAAI,aAAa;IAG/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,aAAa;IAMvD,MAAM,CAAC,YAAY,IAAI,kBAAkB;CAG1C;AAED,MAAM,MAAM,sBAAsB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE1E,cAAc;AACd,qBAAa,aAAa;IAGZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgD;gBAExC,MAAM,EAAE,UAAU;IAEzC,KAAK,CAAC,aAAa,EAAE,YAAY,EAAE;CAuB1C"}
1
+ {"version":3,"file":"prerequisites.service.d.ts","sourceRoot":"","sources":["../src/prerequisites.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhE,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C,oBAAY,sBAAsB;IAChC,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,YAAY,iBAAiB;CAC9B;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAA;CAAE,CAAC,CAAC;AACjF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,MAAM,EAAE,sBAAsB,CAAC,YAAY,CAAA;CAAE,CAAC,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAE/E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC,CAAC;AAEH,qBAAa,YAAY;IACvB,MAAM,CAAC,OAAO,IAAI,aAAa;IAG/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,aAAa;IAMvD,MAAM,CAAC,YAAY,IAAI,kBAAkB;CAG1C;AAED,MAAM,MAAM,sBAAsB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE1E,eAAO,MAAM,kBAAkB;;CAAgD,CAAC;AAEhF,cAAc;AACd,qBAAa,aAAa;IAGZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgD;gBAExC,MAAM,EAAE,UAAU;IAEzC,KAAK,CAAC,aAAa,EAAE,YAAY,EAAE;CAqB1C"}
@@ -19,6 +19,7 @@ export class Verification {
19
19
  return { status: PrerequisiteStatusEnum.undetermined };
20
20
  }
21
21
  }
22
+ export const PrerequisitesError = { Failure: "prerequisites.failure" };
22
23
  /** @public */
23
24
  export class Prerequisites {
24
25
  logger;
@@ -29,9 +30,8 @@ export class Prerequisites {
29
30
  async check(prerequisites) {
30
31
  const results = await Promise.all(prerequisites.map(async (prerequisite) => ({ prerequisite, outcome: await prerequisite.verify() })));
31
32
  const failed = results.filter((result) => result.outcome.status === PrerequisiteStatusEnum.failure);
32
- if (failed.length === 0) {
33
+ if (failed.length === 0)
33
34
  return this.logger.info({ message: "Prerequisites ok", ...this.base });
34
- }
35
35
  for (const failure of failed) {
36
36
  this.logger.error({
37
37
  message: "Prerequisite failed",
@@ -41,7 +41,7 @@ export class Prerequisites {
41
41
  ...this.base,
42
42
  });
43
43
  }
44
- throw new Error("Prerequisites failed");
44
+ throw new Error(PrerequisitesError.Failure);
45
45
  }
46
46
  }
47
47
  //# sourceMappingURL=prerequisites.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prerequisites.service.js","sourceRoot":"","sources":["../src/prerequisites.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAIjE,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,uDAA6B,CAAA;AAC/B,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC;AAuBD,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,OAAO;QACZ,OAAO,EAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,IAAwB;QACrC,OAAO;YACL,MAAM,EAAE,sBAAsB,CAAC,OAAO;YACtC,KAAK,EAAE,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;SACxD,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,YAAY;QACjB,OAAO,EAAE,MAAM,EAAE,sBAAsB,CAAC,YAAY,EAAE,CAAC;IACzD,CAAC;CACF;AAID,cAAc;AACd,MAAM,OAAO,aAAa;IAGK;IAFZ,IAAI,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAErE,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAEnD,KAAK,CAAC,KAAK,CAAC,aAA6B;QACvC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CACpG,CAAC;QAEF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEpG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;gBAChF,mBAAmB;gBACnB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE;gBAC5D,GAAG,IAAI,CAAC,IAAI;aACb,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"prerequisites.service.js","sourceRoot":"","sources":["../src/prerequisites.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAIjE,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,uDAA6B,CAAA;AAC/B,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC;AAuBD,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,OAAO;QACZ,OAAO,EAAE,MAAM,EAAE,sBAAsB,CAAC,OAAO,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,IAAwB;QACrC,OAAO;YACL,MAAM,EAAE,sBAAsB,CAAC,OAAO;YACtC,KAAK,EAAE,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;SACxD,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,YAAY;QACjB,OAAO,EAAE,MAAM,EAAE,sBAAsB,CAAC,YAAY,EAAE,CAAC;IACzD,CAAC;CACF;AAID,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,OAAO,EAAE,uBAAuB,EAAW,CAAC;AAEhF,cAAc;AACd,MAAM,OAAO,aAAa;IAGK;IAFZ,IAAI,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAErE,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAEnD,KAAK,CAAC,KAAK,CAAC,aAA6B;QACvC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CACpG,CAAC;QAEF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAEpG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEhG,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;gBAChF,mBAAmB;gBACnB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE;gBAC5D,GAAG,IAAI,CAAC,IAAI;aACb,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;CACF"}
@@ -1,6 +1,6 @@
1
1
  import type * as tools from "@bgord/tools";
2
- import type { RateLimitStore, RateLimitStoreSubjectType } from "./rate-limit-store.port";
3
- export declare class RateLimitStoreNodeCache implements RateLimitStore {
2
+ import type { RateLimitStorePort, RateLimitStoreSubjectType } from "./rate-limit-store.port";
3
+ export declare class RateLimitStoreNodeCacheAdapter implements RateLimitStorePort {
4
4
  readonly ttl: tools.Duration;
5
5
  private readonly store;
6
6
  constructor(ttl: tools.Duration);
@@ -1 +1 @@
1
- {"version":3,"file":"rate-limit-store-node-cache.adapter.d.ts","sourceRoot":"","sources":["../src/rate-limit-store-node-cache.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,qBAAa,uBAAwB,YAAW,cAAc;IAGhD,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ;IAFxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;gBAEb,GAAG,EAAE,KAAK,CAAC,QAAQ;IASlC,GAAG,CAAC,OAAO,EAAE,yBAAyB;IAItC,GAAG,CAAC,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW;IAIxE,QAAQ;CAGT"}
1
+ {"version":3,"file":"rate-limit-store-node-cache.adapter.d.ts","sourceRoot":"","sources":["../src/rate-limit-store-node-cache.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,qBAAa,8BAA+B,YAAW,kBAAkB;IAG3D,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ;IAFxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;gBAEb,GAAG,EAAE,KAAK,CAAC,QAAQ;IASlC,GAAG,CAAC,OAAO,EAAE,yBAAyB;IAItC,GAAG,CAAC,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW;IAIxE,QAAQ;CAGT"}
@@ -1,5 +1,5 @@
1
1
  import NodeCache from "node-cache";
2
- export class RateLimitStoreNodeCache {
2
+ export class RateLimitStoreNodeCacheAdapter {
3
3
  ttl;
4
4
  store;
5
5
  constructor(ttl) {
@@ -1 +1 @@
1
- {"version":3,"file":"rate-limit-store-node-cache.adapter.js","sourceRoot":"","sources":["../src/rate-limit-store-node-cache.adapter.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,MAAM,OAAO,uBAAuB;IAGb;IAFJ,KAAK,CAAY;IAElC,YAAqB,GAAmB;QAAnB,QAAG,GAAH,GAAG,CAAgB;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,SAAS,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;YACxB,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;YAC7B,cAAc,EAAE,IAAI;YACpB,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAkC;QAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAkC,EAAE,OAA0B;QACtE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"rate-limit-store-node-cache.adapter.js","sourceRoot":"","sources":["../src/rate-limit-store-node-cache.adapter.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,MAAM,OAAO,8BAA8B;IAGpB;IAFJ,KAAK,CAAY;IAElC,YAAqB,GAAmB;QAAnB,QAAG,GAAH,GAAG,CAAgB;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,SAAS,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;YACxB,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;YAC7B,cAAc,EAAE,IAAI;YACpB,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAkC;QAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAkC,EAAE,OAA0B;QACtE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;CACF"}
@@ -1,6 +1,6 @@
1
1
  import type * as tools from "@bgord/tools";
2
2
  export type RateLimitStoreSubjectType = string;
3
- export interface RateLimitStore {
3
+ export interface RateLimitStorePort {
4
4
  readonly ttl: tools.Duration;
5
5
  get(subject: RateLimitStoreSubjectType): Promise<tools.RateLimiter | undefined>;
6
6
  set(subject: RateLimitStoreSubjectType, limiter: tools.RateLimiter): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"rate-limit-store.port.d.ts","sourceRoot":"","sources":["../src/rate-limit-store.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC7B,GAAG,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAChF,GAAG,CAAC,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF"}
1
+ {"version":3,"file":"rate-limit-store.port.d.ts","sourceRoot":"","sources":["../src/rate-limit-store.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC7B,GAAG,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAChF,GAAG,CAAC,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF"}
@@ -0,0 +1,8 @@
1
+ import { z } from "zod/v4";
2
+ export declare const RecaptchaSecretKeyError: {
3
+ readonly Type: "recaptcha.secret.key.type";
4
+ readonly Length: "recaptcha.secret.key.length";
5
+ };
6
+ export declare const RecaptchaSecretKey: z.core.$ZodBranded<z.ZodString, "RecaptchaSecretKey">;
7
+ export type RecaptchaSecretKeyType = z.infer<typeof RecaptchaSecretKey>;
8
+ //# sourceMappingURL=recaptcha-secret-key.vo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recaptcha-secret-key.vo.d.ts","sourceRoot":"","sources":["../src/recaptcha-secret-key.vo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,eAAO,MAAM,uBAAuB;;;CAG1B,CAAC;AAEX,eAAO,MAAM,kBAAkB,uDAGD,CAAC;AAE/B,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from "zod/v4";
2
+ export const RecaptchaSecretKeyError = {
3
+ Type: "recaptcha.secret.key.type",
4
+ Length: "recaptcha.secret.key.length",
5
+ };
6
+ export const RecaptchaSecretKey = z
7
+ .string(RecaptchaSecretKeyError.Type)
8
+ .length(40, RecaptchaSecretKeyError.Length)
9
+ .brand("RecaptchaSecretKey");
10
+ //# sourceMappingURL=recaptcha-secret-key.vo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recaptcha-secret-key.vo.js","sourceRoot":"","sources":["../src/recaptcha-secret-key.vo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,2BAA2B;IACjC,MAAM,EAAE,6BAA6B;CAC7B,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC;KACpC,MAAM,CAAC,EAAE,EAAE,uBAAuB,CAAC,MAAM,CAAC;KAC1C,KAAK,CAAC,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { z } from "zod/v4";
2
+ export declare const RecaptchaSiteKeyError: {
3
+ readonly Type: "recaptcha.site.key.type";
4
+ readonly Length: "recaptcha.site.key.length";
5
+ };
6
+ export declare const RecaptchaSiteKey: z.core.$ZodBranded<z.ZodString, "RecaptchaSiteKey">;
7
+ export type RecaptchaSiteKeyType = z.infer<typeof RecaptchaSiteKey>;
8
+ //# sourceMappingURL=recaptcha-site-key.vo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recaptcha-site-key.vo.d.ts","sourceRoot":"","sources":["../src/recaptcha-site-key.vo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC;AAEX,eAAO,MAAM,gBAAgB,qDAGD,CAAC;AAE7B,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from "zod/v4";
2
+ export const RecaptchaSiteKeyError = {
3
+ Type: "recaptcha.site.key.type",
4
+ Length: "recaptcha.site.key.length",
5
+ };
6
+ export const RecaptchaSiteKey = z
7
+ .string(RecaptchaSiteKeyError.Type)
8
+ .length(40, RecaptchaSiteKeyError.Length)
9
+ .brand("RecaptchaSiteKey");
10
+ //# sourceMappingURL=recaptcha-site-key.vo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recaptcha-site-key.vo.js","sourceRoot":"","sources":["../src/recaptcha-site-key.vo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,yBAAyB;IAC/B,MAAM,EAAE,2BAA2B;CAC3B,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC;KAClC,MAAM,CAAC,EAAE,EAAE,qBAAqB,CAAC,MAAM,CAAC;KACxC,KAAK,CAAC,kBAAkB,CAAC,CAAC"}
@@ -9,8 +9,8 @@ export class RedactorEncryptionAdapter {
9
9
  }
10
10
  redact(input) {
11
11
  const rootObject = Object(input);
12
- return cloneDeepWith(input, (value, key, parentObj) => {
13
- if (parentObj === rootObject && typeof key === "string" && key.toLowerCase() === this.key) {
12
+ return cloneDeepWith(input, (value, key, parent) => {
13
+ if (parent === rootObject && typeof key === "string" && key.toLowerCase() === this.key) {
14
14
  const iv = randomBytes(12);
15
15
  const cipher = createCipheriv("aes-256-gcm", this.secret, iv);
16
16
  const plaintext = Buffer.from(JSON.stringify(value), "utf8");
@@ -1 +1 @@
1
- {"version":3,"file":"redactor-encrypt.adapter.js","sourceRoot":"","sources":["../src/redactor-encrypt.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAGjD,MAAM,OAAO,yBAAyB;IAKjB;IAJF,MAAM,CAAS;IAEhC,YACE,MAAc,EACG,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;QAE5B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAI,KAAQ;QAChB,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACpD,IAAI,SAAS,KAAK,UAAU,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC1F,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC7E,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;gBAEhC,OAAO,WAAW,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"redactor-encrypt.adapter.js","sourceRoot":"","sources":["../src/redactor-encrypt.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAGjD,MAAM,OAAO,yBAAyB;IAKjB;IAJF,MAAM,CAAS;IAEhC,YACE,MAAc,EACG,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;QAE5B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAI,KAAQ;QAChB,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;YACjD,IAAI,MAAM,KAAK,UAAU,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvF,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC7E,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;gBAEhC,OAAO,WAAW,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactor-mask.adapter.d.ts","sourceRoot":"","sources":["../src/redactor-mask.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,qBAAa,mBAAoB,YAAW,YAAY;IACtD,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAsB7C;IAEF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;gBAEvB,IAAI,EAAE,SAAS,MAAM,EAAE;IAInC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;CAMvB"}
1
+ {"version":3,"file":"redactor-mask.adapter.d.ts","sourceRoot":"","sources":["../src/redactor-mask.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,qBAAa,mBAAoB,YAAW,YAAY;IACtD,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAmB7C;IAEF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;gBAEvB,IAAI,EAAE,SAAS,MAAM,EAAE;IAInC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;CAMvB"}
@@ -1,7 +1,6 @@
1
1
  import cloneDeepWith from "lodash/cloneDeepWith";
2
2
  export class RedactorMaskAdapter {
3
3
  static DEFAULT_KEYS = [
4
- // auth & cookies
5
4
  "authorization",
6
5
  "cookie",
7
6
  "set-cookie",
@@ -10,14 +9,12 @@ export class RedactorMaskAdapter {
10
9
  "token",
11
10
  "accessToken",
12
11
  "refreshToken",
13
- // passwords & secrets
14
12
  "password",
15
13
  "currentPassword",
16
14
  "newPassword",
17
15
  "passwordConfirmation",
18
16
  "clientSecret",
19
17
  "secret",
20
- // one-time codes
21
18
  "otp",
22
19
  "code",
23
20
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"redactor-mask.adapter.js","sourceRoot":"","sources":["../src/redactor-mask.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAGjD,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAU,YAAY,GAAsB;QAChD,iBAAiB;QACjB,eAAe;QACf,QAAQ;QACR,YAAY;QACZ,WAAW;QACX,QAAQ;QACR,OAAO;QACP,aAAa;QACb,cAAc;QAEd,sBAAsB;QACtB,UAAU;QACV,iBAAiB;QACjB,aAAa;QACb,sBAAsB;QACtB,cAAc;QACd,QAAQ;QAER,iBAAiB;QACjB,KAAK;QACL,MAAM;KACP,CAAC;IAEe,IAAI,CAAc;IAEnC,YAAY,IAAuB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,CAAI,KAAQ;QAChB,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC9E,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC"}
1
+ {"version":3,"file":"redactor-mask.adapter.js","sourceRoot":"","sources":["../src/redactor-mask.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAGjD,MAAM,OAAO,mBAAmB;IAC9B,MAAM,CAAU,YAAY,GAAsB;QAChD,eAAe;QACf,QAAQ;QACR,YAAY;QACZ,WAAW;QACX,QAAQ;QACR,OAAO;QACP,aAAa;QACb,cAAc;QAEd,UAAU;QACV,iBAAiB;QACjB,aAAa;QACb,sBAAsB;QACtB,cAAc;QACd,QAAQ;QAER,KAAK;QACL,MAAM;KACP,CAAC;IAEe,IAAI,CAAc;IAEnC,YAAY,IAAuB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,CAAI,KAAQ;QAChB,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC9E,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC"}
@@ -1,14 +1,21 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { FileCleanerPort } from "./file-cleaner.port";
2
3
  import type { FileHashPort } from "./file-hash.port";
4
+ import type { FileRenamerPort } from "./file-renamer.port";
3
5
  import type { RemoteFileStoragePort, RemoteHeadResult, RemotePutFromPathInput, RemotePutFromPathResult } from "./remote-file-storage.port";
4
6
  type RemoteFileStorageDiskConfig = {
5
7
  root: tools.DirectoryPathAbsoluteType;
6
- hasher: FileHashPort;
7
8
  publicBaseUrl?: string;
8
9
  };
10
+ type Dependencies = {
11
+ FileHash: FileHashPort;
12
+ FileCleaner: FileCleanerPort;
13
+ FileRenamer: FileRenamerPort;
14
+ };
9
15
  export declare class RemoteFileStorageDiskAdapter implements RemoteFileStoragePort {
10
16
  private readonly config;
11
- constructor(config: RemoteFileStorageDiskConfig);
17
+ private readonly deps;
18
+ constructor(config: RemoteFileStorageDiskConfig, deps: Dependencies);
12
19
  private resolveKeyToAbsoluteFilePath;
13
20
  publicUrl(key: tools.ObjectKeyType): string;
14
21
  putFromPath(input: RemotePutFromPathInput): Promise<RemotePutFromPathResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"remote-file-storage-disk.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,KAAK,2BAA2B,GAAG;IACjC,IAAI,EAAE,KAAK,CAAC,yBAAyB,CAAC;IACtC,MAAM,EAAE,YAAY,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,qBAAa,4BAA6B,YAAW,qBAAqB;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,2BAA2B;IAEhE,OAAO,CAAC,4BAA4B;IASpC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM;IAKrC,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAa5E,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAUzD,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAUnE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAOtD"}
1
+ {"version":3,"file":"remote-file-storage-disk.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,KAAK,2BAA2B,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC,yBAAyB,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErG,KAAK,YAAY,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,WAAW,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,eAAe,CAAA;CAAE,CAAC;AAE3G,qBAAa,4BAA6B,YAAW,qBAAqB;IAEtE,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,MAAM,EAAE,2BAA2B,EACnC,IAAI,EAAE,YAAY;IAGrC,OAAO,CAAC,4BAA4B;IASpC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM;IAKrC,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAa5E,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAUzD,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAUnE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtD"}
@@ -2,8 +2,10 @@ import fs from "node:fs/promises";
2
2
  import * as tools from "@bgord/tools";
3
3
  export class RemoteFileStorageDiskAdapter {
4
4
  config;
5
- constructor(config) {
5
+ deps;
6
+ constructor(config, deps) {
6
7
  this.config = config;
8
+ this.deps = deps;
7
9
  }
8
10
  resolveKeyToAbsoluteFilePath(key) {
9
11
  const parts = key.split("/");
@@ -22,13 +24,13 @@ export class RemoteFileStorageDiskAdapter {
22
24
  await fs.mkdir(final.getDirectory(), { recursive: true });
23
25
  const source = Bun.file(input.path.get());
24
26
  await Bun.write(temporary.get(), source);
25
- await fs.rename(temporary.get(), final.get());
26
- return this.config.hasher.hash(final);
27
+ await this.deps.FileRenamer.rename(temporary, final);
28
+ return this.deps.FileHash.hash(final);
27
29
  }
28
30
  async head(key) {
29
31
  const path = this.resolveKeyToAbsoluteFilePath(key);
30
32
  try {
31
- return { exists: true, ...(await this.config.hasher.hash(path)) };
33
+ return { exists: true, ...(await this.deps.FileHash.hash(path)) };
32
34
  }
33
35
  catch {
34
36
  return { exists: false };
@@ -44,11 +46,7 @@ export class RemoteFileStorageDiskAdapter {
44
46
  }
45
47
  }
46
48
  async delete(key) {
47
- const path = this.resolveKeyToAbsoluteFilePath(key);
48
- try {
49
- await fs.unlink(path.get());
50
- }
51
- catch (error) { }
49
+ await this.deps.FileCleaner.delete(this.resolveKeyToAbsoluteFilePath(key));
52
50
  }
53
51
  }
54
52
  //# sourceMappingURL=remote-file-storage-disk.adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote-file-storage-disk.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAetC,MAAM,OAAO,4BAA4B;IACV;IAA7B,YAA6B,MAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;IAAG,CAAC;IAE5D,4BAA4B,CAAC,GAAwB;QAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAG,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG,KAAK,CAAC,2BAA2B,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEpG,OAAO,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED,SAAS,CAAC,GAAwB;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QACjD,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAA6B;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QAE9E,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1C,MAAM,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAwB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAwB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAwB;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC,CAAA,CAAC;IACpB,CAAC;CACF"}
1
+ {"version":3,"file":"remote-file-storage-disk.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"safe-parse-body.service.d.ts","sourceRoot":"","sources":["../src/safe-parse-body.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,wBAAsB,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAQjE"}
1
+ {"version":3,"file":"safe-parse-body.service.d.ts","sourceRoot":"","sources":["../src/safe-parse-body.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,wBAAsB,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CASjE"}
@@ -2,7 +2,7 @@ export async function safeParseBody(c) {
2
2
  try {
3
3
  const rawBody = await c.req.text();
4
4
  if (!rawBody.trim())
5
- return {}; // handles truly empty body
5
+ return {};
6
6
  return JSON.parse(rawBody);
7
7
  }
8
8
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"safe-parse-body.service.js","sourceRoot":"","sources":["../src/safe-parse-body.service.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,CAAe;IACjD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC,CAAC,2BAA2B;QAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"safe-parse-body.service.js","sourceRoot":"","sources":["../src/safe-parse-body.service.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,CAAe;IACjD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -4,8 +4,9 @@ import type { ClockPort } from "./clock.port";
4
4
  import { type HttpLoggerOptions } from "./http-logger.middleware";
5
5
  import type { I18nConfigType } from "./i18n.service";
6
6
  import type { IdProviderPort } from "./id-provider.port";
7
+ import type { JsonFileReaderPort } from "./json-file-reader.port";
7
8
  import type { LoggerPort } from "./logger.port";
8
- export declare const BODY_LIMIT_MAX_SIZE: number & import("zod").$brand<"SizeValue">;
9
+ export declare const BODY_LIMIT_MAX_SIZE: number & import("zod").$brand<"SizeBytes">;
9
10
  type SetupOverridesType = {
10
11
  cors?: Parameters<typeof cors>[0];
11
12
  secureHeaders?: Parameters<typeof secureHeaders>[0];
@@ -16,6 +17,7 @@ type Dependencies = {
16
17
  IdProvider: IdProviderPort;
17
18
  I18n: I18nConfigType;
18
19
  Clock: ClockPort;
20
+ JsonFileReader: JsonFileReaderPort;
19
21
  };
20
22
  export declare class Setup {
21
23
  static essentials(deps: Dependencies, overrides?: SetupOverridesType): (import("hono").MiddlewareHandler<any, string, {}> | import("hono").MiddlewareHandler<{
@@ -1 +1 @@
1
- {"version":3,"file":"setup.service.d.ts","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,eAAO,MAAM,mBAAmB,4CAAmC,CAAC;AAEpE,KAAK,kBAAkB,GAAG;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,qBAAa,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,kBAAkB;;;CA6BrE"}
1
+ {"version":3,"file":"setup.service.d.ts","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,eAAO,MAAM,mBAAmB,4CAAmC,CAAC;AAEpE,KAAK,kBAAkB,GAAG;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,aAAa,CAAC,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,cAAc,EAAE,kBAAkB,CAAC;CACpC,CAAC;AAEF,qBAAa,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,kBAAkB;;;CA6BrE"}
@@ -18,12 +18,12 @@ export const BODY_LIMIT_MAX_SIZE = tools.Size.fromKb(128).toBytes();
18
18
  export class Setup {
19
19
  static essentials(deps, overrides) {
20
20
  const corsOptions = overrides?.cors ?? { origin: "*" };
21
- const secureHeadersOptions = overrides?.secureHeaders ?? undefined;
21
+ const secureHeadersOptions = { crossOriginResourcePolicy: "cross-origin", ...overrides?.secureHeaders };
22
22
  return [
23
23
  secureHeaders(secureHeadersOptions),
24
24
  bodyLimit({ maxSize: BODY_LIMIT_MAX_SIZE }),
25
25
  uaBlocker({ blocklist: BOTS_REGEX }),
26
- ApiVersion.build({ Clock: deps.Clock }),
26
+ ApiVersion.build({ Clock: deps.Clock, JsonFileReader: deps.JsonFileReader }),
27
27
  cors(corsOptions),
28
28
  languageDetector({
29
29
  supportedLanguages: Object.keys(deps.I18n.supportedLanguages),