@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":"setup.service.js","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAA0B,MAAM,0BAA0B,CAAC;AAI9E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAepE,MAAM,OAAO,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAkB,EAAE,SAA8B;QAClE,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACvD,MAAM,oBAAoB,GAAG,SAAS,EAAE,aAAa,IAAI,SAAS,CAAC;QAEnE,OAAO;YACL,aAAa,CAAC,oBAAoB,CAAC;YACnC,SAAS,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;YAC3C,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YACpC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,CAAC;YACjB,gBAAgB,CAAC;gBACf,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBAC7D,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;gBAC3C,MAAM,EAAE,KAAK;aACd,CAAC;YACF,SAAS,CAAC;gBACR,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,kBAAkB;gBAC9B,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;aAC5C,CAAC;YACF,cAAc,CAAC,MAAM;YACrB,OAAO,CAAC,MAAM;YACd,iBAAiB,CAAC,MAAM;YACxB,aAAa,CAAC,MAAM;YACpB,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YAC7C,MAAM,EAAE;YACR,kBAAkB,CAAC,MAAM,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"setup.service.js","sourceRoot":"","sources":["../src/setup.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAA0B,MAAM,0BAA0B,CAAC;AAK9E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAgBpE,MAAM,OAAO,KAAK;IAChB,MAAM,CAAC,UAAU,CAAC,IAAkB,EAAE,SAA8B;QAClE,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACvD,MAAM,oBAAoB,GAAG,EAAE,yBAAyB,EAAE,cAAc,EAAE,GAAG,SAAS,EAAE,aAAa,EAAE,CAAC;QAExG,OAAO;YACL,aAAa,CAAC,oBAAoB,CAAC;YACnC,SAAS,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;YAC3C,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YACpC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5E,IAAI,CAAC,WAAW,CAAC;YACjB,gBAAgB,CAAC;gBACf,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBAC7D,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;gBAC3C,MAAM,EAAE,KAAK;aACd,CAAC;YACF,SAAS,CAAC;gBACR,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,kBAAkB;gBAC9B,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;aAC5C,CAAC;YACF,cAAc,CAAC,MAAM;YACrB,OAAO,CAAC,MAAM;YACd,iBAAiB,CAAC,MAAM;YACxB,aAAa,CAAC,MAAM;YACpB,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YAC7C,MAAM,EAAE;YACR,kBAAkB,CAAC,MAAM,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"shield-api-key.middleware.d.ts","sourceRoot":"","sources":["../src/shield-api-key.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,KAAK,sBAAsB,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC,UAAU,CAAA;CAAE,CAAC;AAE5D,eAAO,MAAM,uBAAuB,eAA+D,CAAC;AAEpG,qBAAa,YAAY;IAGX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,MAAM,CAAC,QAAQ,CAAC,WAAW,mBAAmB;gBAEjB,MAAM,EAAE,sBAAsB;IAE3D,MAAM,oDAMH;CACJ"}
1
+ {"version":3,"file":"shield-api-key.middleware.d.ts","sourceRoot":"","sources":["../src/shield-api-key.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,KAAK,sBAAsB,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC,UAAU,CAAA;CAAE,CAAC;AAE5D,eAAO,MAAM,uBAAuB,eAA+D,CAAC;AAEpG,qBAAa,YAAY;IAGX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,MAAM,CAAC,QAAQ,CAAC,WAAW,mBAAmB;gBAEjB,MAAM,EAAE,sBAAsB;IAE3D,MAAM,oDAIH;CACJ"}
@@ -8,9 +8,8 @@ export class ShieldApiKey {
8
8
  this.config = config;
9
9
  }
10
10
  verify = createMiddleware(async (c, next) => {
11
- if (c.req.header(ShieldApiKey.HEADER_NAME) === this.config.API_KEY) {
11
+ if (c.req.header(ShieldApiKey.HEADER_NAME) === this.config.API_KEY)
12
12
  return next();
13
- }
14
13
  throw AccessDeniedApiKeyError;
15
14
  });
16
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shield-api-key.middleware.js","sourceRoot":"","sources":["../src/shield-api-key.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;AAEpG,MAAM,OAAO,YAAY;IAGM;IAF7B,MAAM,CAAU,WAAW,GAAG,eAAe,CAAC;IAE9C,YAA6B,MAA8B;QAA9B,WAAM,GAAN,MAAM,CAAwB;IAAG,CAAC;IAE/D,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACnE,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,MAAM,uBAAuB,CAAC;IAChC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"shield-api-key.middleware.js","sourceRoot":"","sources":["../src/shield-api-key.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;AAEpG,MAAM,OAAO,YAAY;IAGM;IAF7B,MAAM,CAAU,WAAW,GAAG,eAAe,CAAC;IAE9C,YAA6B,MAA8B;QAA9B,WAAM,GAAN,MAAM,CAAwB;IAAG,CAAC;IAE/D,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,IAAI,EAAE,CAAC;QAElF,MAAM,uBAAuB,CAAC;IAChC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"shield-auth.middleware.d.ts","sourceRoot":"","sources":["../src/shield-auth.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,eAAO,MAAM,2BAA2B,eAEtC,CAAC;AAEH,qBAAa,UAAU;IAQT,OAAO,CAAC,QAAQ,CAAC,IAAI;IAPjC,IAAI;;;;;MAKF;gBAE2B,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC;IAEhE,MAAM,uCAYH;IAEH,MAAM,uCAIH;IAEH,OAAO,uCAIJ;CACJ"}
1
+ {"version":3,"file":"shield-auth.middleware.d.ts","sourceRoot":"","sources":["../src/shield-auth.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,eAAO,MAAM,2BAA2B,eAAmE,CAAC;AAE5G,qBAAa,UAAU;IAQT,OAAO,CAAC,QAAQ,CAAC,IAAI;IAPjC,IAAI;;;;;MAKF;gBAE2B,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC;IAEhE,MAAM,uCAcH;IAEH,MAAM,uCAKH;IAEH,OAAO,uCAKJ;CACJ"}
@@ -1,9 +1,7 @@
1
1
  // TODO: tests
2
2
  import { createMiddleware } from "hono/factory";
3
3
  import { HTTPException } from "hono/http-exception";
4
- export const AccessDeniedAuthShieldError = new HTTPException(403, {
5
- message: "access_denied_auth_shield",
6
- });
4
+ export const AccessDeniedAuthShieldError = new HTTPException(403, { message: "access_denied_auth_shield" });
7
5
  export class ShieldAuth {
8
6
  Auth;
9
7
  cors = {
@@ -1 +1 @@
1
- {"version":3,"file":"shield-auth.middleware.js","sourceRoot":"","sources":["../src/shield-auth.middleware.ts"],"names":[],"mappings":"AAAA,cAAc;AAId,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE;IAChE,OAAO,EAAE,2BAA2B;CACrC,CAAC,CAAC;AAEH,MAAM,OAAO,UAAU;IAQQ;IAP7B,IAAI,GAAG;QACL,MAAM,EAAE,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;QAC1D,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,CAAC,YAAY,CAAC;KAC9B,CAAC;IAEF,YAA6B,IAAmC;QAAnC,SAAI,GAAJ,IAAI,CAA+B;IAAG,CAAC;IAEpE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAE/E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACvB,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI;YAAE,MAAM,2BAA2B,CAAC;QAC7C,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACpE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,IAAI;YAAE,MAAM,2BAA2B,CAAC;QAC5C,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;CACJ"}
1
+ {"version":3,"file":"shield-auth.middleware.js","sourceRoot":"","sources":["../src/shield-auth.middleware.ts"],"names":[],"mappings":"AAAA,cAAc;AAId,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;AAE5G,MAAM,OAAO,UAAU;IAQQ;IAP7B,IAAI,GAAG;QACL,MAAM,EAAE,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;QAC1D,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,aAAa,EAAE,CAAC,YAAY,CAAC;KAC9B,CAAC;IAEF,YAA6B,IAAmC;QAAnC,SAAI,GAAJ,IAAI,CAA+B;IAAG,CAAC;IAEpE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAE/E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAEvB,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAElC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,CAAC,IAAI;YAAE,MAAM,2BAA2B,CAAC;QAC7C,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACpE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,IAAI;YAAE,MAAM,2BAA2B,CAAC;QAC5C,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;CACJ"}
@@ -1,8 +1,8 @@
1
1
  import { HTTPException } from "hono/http-exception";
2
+ import type { HCaptchaSecretKeyType } from "./hcaptcha-secret-key.vo";
2
3
  import type { ShieldCaptchaPort } from "./shield-captcha.port";
3
- import type { HCaptchaSecretKeyType } from "./shield-captcha-hcaptcha.adapter";
4
4
  export declare const AccessDeniedHcaptchaLocalError: HTTPException;
5
- export declare class ShieldCaptchaHcaptchaLocal implements ShieldCaptchaPort {
5
+ export declare class ShieldCaptchaHcaptchaLocalAdapter implements ShieldCaptchaPort {
6
6
  private readonly secretKey;
7
7
  constructor(secretKey: HCaptchaSecretKeyType);
8
8
  verify: import("hono").MiddlewareHandler<any, string, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-hcaptcha-local.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha-local.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE/E,eAAO,MAAM,8BAA8B,eAEzC,CAAC;AAEH,qBAAa,0BAA2B,YAAW,iBAAiB;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,qBAAqB;IAE7D,MAAM,oDAQH;CACJ"}
1
+ {"version":3,"file":"shield-captcha-hcaptcha-local.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha-local.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,eAAO,MAAM,8BAA8B,eAEzC,CAAC;AAEH,qBAAa,iCAAkC,YAAW,iBAAiB;IAC7D,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,qBAAqB;IAE7D,MAAM,oDASH;CACJ"}
@@ -4,7 +4,7 @@ import { HTTPException } from "hono/http-exception";
4
4
  export const AccessDeniedHcaptchaLocalError = new HTTPException(403, {
5
5
  message: "access_denied_hcaptcha_local",
6
6
  });
7
- export class ShieldCaptchaHcaptchaLocal {
7
+ export class ShieldCaptchaHcaptchaLocalAdapter {
8
8
  secretKey;
9
9
  constructor(secretKey) {
10
10
  this.secretKey = secretKey;
@@ -16,7 +16,7 @@ export class ShieldCaptchaHcaptchaLocal {
16
16
  throw AccessDeniedHcaptchaLocalError;
17
17
  return next();
18
18
  }
19
- catch (_error) {
19
+ catch {
20
20
  throw AccessDeniedHcaptchaLocalError;
21
21
  }
22
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-hcaptcha-local.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha-local.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE;IACnE,OAAO,EAAE,8BAA8B;CACxC,CAAC,CAAC;AAEH,MAAM,OAAO,0BAA0B;IACR;IAA7B,YAA6B,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IAAG,CAAC;IAEjE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC;YAC7F,IAAI,CAAC,MAAM,EAAE,OAAO;gBAAE,MAAM,8BAA8B,CAAC;YAC3D,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,MAAM,8BAA8B,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
1
+ {"version":3,"file":"shield-captcha-hcaptcha-local.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha-local.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE;IACnE,OAAO,EAAE,8BAA8B;CACxC,CAAC,CAAC;AAEH,MAAM,OAAO,iCAAiC;IACf;IAA7B,YAA6B,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IAAG,CAAC;IAEjE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,sCAAsC,CAAC,CAAC;YAE7F,IAAI,CAAC,MAAM,EAAE,OAAO;gBAAE,MAAM,8BAA8B,CAAC;YAC3D,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,8BAA8B,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
@@ -1,14 +1,8 @@
1
1
  import { HTTPException } from "hono/http-exception";
2
- import { z } from "zod/v4";
2
+ import type { HCaptchaSecretKeyType } from "./hcaptcha-secret-key.vo";
3
3
  import type { ShieldCaptchaPort } from "./shield-captcha.port";
4
- export declare const HCaptchaSecretKey: z.core.$ZodBranded<z.ZodString, "HCaptchaSecretKey">;
5
- export type HCaptchaSecretKeyType = z.infer<typeof HCaptchaSecretKey>;
6
- export declare const HCaptchaSiteKey: z.ZodString;
7
- export type HCaptchaSiteKeyType = z.infer<typeof HCaptchaSiteKey>;
8
- export declare const HCaptchaResponseToken: z.ZodString;
9
- export type HCaptchaResponseTokenType = z.infer<typeof HCaptchaResponseToken>;
10
4
  export declare const AccessDeniedHcaptchaError: HTTPException;
11
- export declare class ShieldCaptchaHcaptcha implements ShieldCaptchaPort {
5
+ export declare class ShieldCaptchaHcaptchaAdapter implements ShieldCaptchaPort {
12
6
  private readonly secretKey;
13
7
  constructor(secretKey: HCaptchaSecretKeyType);
14
8
  verify: import("hono").MiddlewareHandler<any, string, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-hcaptcha.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,eAAO,MAAM,iBAAiB,sDAA0D,CAAC;AACzF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEtE,eAAO,MAAM,eAAe,aAA+B,CAAC;AAC5D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAElE,eAAO,MAAM,qBAAqB,aAAoB,CAAC;AACvD,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE9E,eAAO,MAAM,yBAAyB,eAAgE,CAAC;AAEvG,qBAAa,qBAAsB,YAAW,iBAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,qBAAqB;IAE7D,MAAM,oDAUH;CACJ"}
1
+ {"version":3,"file":"shield-captcha-hcaptcha.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,eAAO,MAAM,yBAAyB,eAAgE,CAAC;AAEvG,qBAAa,4BAA6B,YAAW,iBAAiB;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,qBAAqB;IAE7D,MAAM,oDAWH;CACJ"}
@@ -1,12 +1,8 @@
1
1
  import hcaptcha from "hcaptcha";
2
2
  import { createMiddleware } from "hono/factory";
3
3
  import { HTTPException } from "hono/http-exception";
4
- import { z } from "zod/v4";
5
- export const HCaptchaSecretKey = z.string().trim().length(42).brand("HCaptchaSecretKey");
6
- export const HCaptchaSiteKey = z.string().trim().length(36);
7
- export const HCaptchaResponseToken = z.string().trim();
8
4
  export const AccessDeniedHcaptchaError = new HTTPException(403, { message: "access_denied_hcaptcha" });
9
- export class ShieldCaptchaHcaptcha {
5
+ export class ShieldCaptchaHcaptchaAdapter {
10
6
  secretKey;
11
7
  constructor(secretKey) {
12
8
  this.secretKey = secretKey;
@@ -20,7 +16,7 @@ export class ShieldCaptchaHcaptcha {
20
16
  throw AccessDeniedHcaptchaError;
21
17
  return next();
22
18
  }
23
- catch (_error) {
19
+ catch {
24
20
  throw AccessDeniedHcaptchaError;
25
21
  }
26
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-hcaptcha.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAGzF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAG5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;AAGvD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAEvG,MAAM,OAAO,qBAAqB;IACH;IAA7B,YAA6B,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IAAG,CAAC;IAEjE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAA+B,CAAC;YACtG,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,EAAE,OAAO;gBAAE,MAAM,yBAAyB,CAAC;YACtD,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,MAAM,yBAAyB,CAAC;QAClC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
1
+ {"version":3,"file":"shield-captcha-hcaptcha.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-hcaptcha.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAEvG,MAAM,OAAO,4BAA4B;IACV;IAA7B,YAA6B,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IAAG,CAAC;IAEjE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAY,CAAC;YACnF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;YAE5E,IAAI,CAAC,MAAM,EAAE,OAAO;gBAAE,MAAM,yBAAyB,CAAC;YACtD,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,yBAAyB,CAAC;QAClC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import type { ShieldCaptchaPort } from "./shield-captcha.port";
2
- export declare class ShieldCaptchaNoop implements ShieldCaptchaPort {
2
+ export declare class ShieldCaptchaNoopAdapter implements ShieldCaptchaPort {
3
3
  verify: import("hono").MiddlewareHandler<any, string, {}>;
4
4
  }
5
5
  //# sourceMappingURL=shield-captcha-noop.adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-noop.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-noop.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,qBAAa,iBAAkB,YAAW,iBAAiB;IACzD,MAAM,oDAAgD;CACvD"}
1
+ {"version":3,"file":"shield-captcha-noop.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-noop.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,MAAM,oDAAgD;CACvD"}
@@ -1,5 +1,5 @@
1
1
  import { createMiddleware } from "hono/factory";
2
- export class ShieldCaptchaNoop {
2
+ export class ShieldCaptchaNoopAdapter {
3
3
  verify = createMiddleware(async (_c, next) => next());
4
4
  }
5
5
  //# sourceMappingURL=shield-captcha-noop.adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-noop.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,OAAO,iBAAiB;IAC5B,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;CACvD"}
1
+ {"version":3,"file":"shield-captcha-noop.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,OAAO,wBAAwB;IACnC,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;CACvD"}
@@ -1,10 +1,6 @@
1
1
  import { HTTPException } from "hono/http-exception";
2
- import { z } from "zod/v4";
2
+ import type { RecaptchaSecretKeyType } from "./recaptcha-secret-key.vo";
3
3
  import type { ShieldCaptchaPort } from "./shield-captcha.port";
4
- export declare const RecaptchaSiteKey: z.ZodString;
5
- export type RecaptchaSiteKeyType = z.infer<typeof RecaptchaSiteKey>;
6
- export declare const RecaptchaSecretKey: z.core.$ZodBranded<z.ZodString, "RecaptchaSecretKey">;
7
- export type RecaptchaSecretKeyType = z.infer<typeof RecaptchaSecretKey>;
8
4
  export type RecaptchaVerifierConfigType = {
9
5
  secretKey: RecaptchaSecretKeyType;
10
6
  };
@@ -13,8 +9,8 @@ export type RecaptchaResultType = {
13
9
  score: number;
14
10
  };
15
11
  export declare const AccessDeniedRecaptchaError: HTTPException;
16
- export declare class ShieldCaptchaRecaptcha implements ShieldCaptchaPort {
17
- private readonly secretKey;
12
+ export declare class ShieldCaptchaRecaptchaAdapter implements ShieldCaptchaPort {
13
+ private readonly config;
18
14
  constructor(config: RecaptchaVerifierConfigType);
19
15
  verify: import("hono").MiddlewareHandler<any, string, {}>;
20
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-recaptcha.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-recaptcha.adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,eAAO,MAAM,gBAAgB,aAA+B,CAAC;AAC7D,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpE,eAAO,MAAM,kBAAkB,uDAA2D,CAAC;AAC3F,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAExE,MAAM,MAAM,2BAA2B,GAAG;IAAE,SAAS,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,0BAA0B,eAAiE,CAAC;AAEzG,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;gBAEzD,MAAM,EAAE,2BAA2B;IAI/C,MAAM,oDA6BH;CACJ"}
1
+ {"version":3,"file":"shield-captcha-recaptcha.adapter.d.ts","sourceRoot":"","sources":["../src/shield-captcha-recaptcha.adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,MAAM,2BAA2B,GAAG;IAAE,SAAS,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtE,eAAO,MAAM,0BAA0B,eAAiE,CAAC;AAEzG,qBAAa,6BAA8B,YAAW,iBAAiB;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,2BAA2B;IAEhE,MAAM,oDA6BH;CACJ"}
@@ -1,38 +1,33 @@
1
1
  import { createMiddleware } from "hono/factory";
2
2
  import { HTTPException } from "hono/http-exception";
3
- import { z } from "zod/v4";
4
- export const RecaptchaSiteKey = z.string().trim().length(40);
5
- export const RecaptchaSecretKey = z.string().trim().length(40).brand("RecaptchaSecretKey");
6
3
  export const AccessDeniedRecaptchaError = new HTTPException(403, { message: "access_denied_recaptcha" });
7
- export class ShieldCaptchaRecaptcha {
8
- secretKey;
4
+ export class ShieldCaptchaRecaptchaAdapter {
5
+ config;
9
6
  constructor(config) {
10
- this.secretKey = config.secretKey;
7
+ this.config = config;
11
8
  }
12
9
  verify = createMiddleware(async (c, next) => {
13
10
  try {
14
- const recaptchaTokenHeader = c.req.header("x-recaptcha-token");
15
- const recaptchaTokenQuery = c.req.query("recaptchaToken");
16
- const form = await c.req.formData();
17
- const recaptchaTokenFormData = form.get("g-recaptcha-response")?.toString();
18
- const xForwardedForHeader = c.req.header("x-forwarded-for");
19
- // cSpell:ignore remoteip
20
- const remoteip = xForwardedForHeader ?? "";
21
- const token = recaptchaTokenHeader ?? recaptchaTokenQuery ?? recaptchaTokenFormData;
11
+ const header = c.req.header("x-recaptcha-token");
12
+ const query = c.req.query("recaptchaToken");
13
+ const form = (await c.req.formData()).get("g-recaptcha-response")?.toString();
14
+ const token = header ?? query ?? form;
22
15
  if (!token)
23
16
  throw AccessDeniedRecaptchaError;
24
- const params = new URLSearchParams({ secret: this.secretKey, response: token, remoteip });
17
+ // cSpell:ignore remoteip
18
+ const remoteip = c.req.header("x-forwarded-for") ?? "";
19
+ const params = new URLSearchParams({ secret: this.config.secretKey, response: token, remoteip });
25
20
  const response = await fetch("https://www.google.com/recaptcha/api/siteverify", {
26
21
  method: "POST",
27
22
  headers: { "Content-Type": "application/x-www-form-urlencoded" },
28
23
  body: params,
29
24
  });
30
- const result = (await response.json());
25
+ const result = await response.json();
31
26
  if (!result.success || result.score < 0.5)
32
27
  throw AccessDeniedRecaptchaError;
33
28
  await next();
34
29
  }
35
- catch (_error) {
30
+ catch {
36
31
  throw AccessDeniedRecaptchaError;
37
32
  }
38
33
  });
@@ -1 +1 @@
1
- {"version":3,"file":"shield-captcha-recaptcha.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-recaptcha.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAG7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAM3F,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;AAEzG,MAAM,OAAO,sBAAsB;IAChB,SAAS,CAA2C;IAErE,YAAY,MAAmC;QAC7C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAED,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,oBAAoB,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAC/D,MAAM,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAE1D,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,sBAAsB,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,QAAQ,EAAE,CAAC;YAE5E,MAAM,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC5D,yBAAyB;YACzB,MAAM,QAAQ,GAAG,mBAAmB,IAAI,EAAE,CAAC;YAE3C,MAAM,KAAK,GAAG,oBAAoB,IAAI,mBAAmB,IAAI,sBAAsB,CAAC;YACpF,IAAI,CAAC,KAAK;gBAAE,MAAM,0BAA0B,CAAC;YAE7C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE1F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,iDAAiD,EAAE;gBAC9E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;gBAChE,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwB,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG;gBAAE,MAAM,0BAA0B,CAAC;YAC5E,MAAM,IAAI,EAAE,CAAC;QACf,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,MAAM,0BAA0B,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
1
+ {"version":3,"file":"shield-captcha-recaptcha.adapter.js","sourceRoot":"","sources":["../src/shield-captcha-recaptcha.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOpD,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;AAEzG,MAAM,OAAO,6BAA6B;IACX;IAA7B,YAA6B,MAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;IAAG,CAAC;IAEpE,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACjD,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,QAAQ,EAAE,CAAC;YAE9E,MAAM,KAAK,GAAG,MAAM,IAAI,KAAK,IAAI,IAAI,CAAC;YAEtC,IAAI,CAAC,KAAK;gBAAE,MAAM,0BAA0B,CAAC;YAE7C,yBAAyB;YACzB,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAEvD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEjG,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,iDAAiD,EAAE;gBAC9E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;gBAChE,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;YAEH,MAAM,MAAM,GAAwB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAE1D,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG;gBAAE,MAAM,0BAA0B,CAAC;YAE5E,MAAM,IAAI,EAAE,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,0BAA0B,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;CACJ"}
@@ -1,11 +1,11 @@
1
1
  import type { Context } from "hono";
2
2
  import { HTTPException } from "hono/http-exception";
3
3
  import type { ClockPort } from "./clock.port";
4
- import type { RateLimitStore } from "./rate-limit-store.port";
4
+ import type { RateLimitStorePort } from "./rate-limit-store.port";
5
5
  type SubjectResolver = (c: Context) => string;
6
6
  type RateLimitShieldOptionsType = {
7
7
  enabled: boolean;
8
- store: RateLimitStore;
8
+ store: RateLimitStorePort;
9
9
  subject: SubjectResolver;
10
10
  };
11
11
  type Dependencies = {
@@ -1 +1 @@
1
- {"version":3,"file":"shield-rate-limit.middleware.d.ts","sourceRoot":"","sources":["../src/shield-rate-limit.middleware.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,KAAK,eAAe,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;AAC9C,KAAK,0BAA0B,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AACxG,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,eAAO,MAAM,mBAAmB,EAAE,eAA8B,CAAC;AACjE,eAAO,MAAM,mBAAmB,EAAE,eAAoD,CAAC;AAEvF,eAAO,MAAM,oBAAoB,eAA+D,CAAC;AAEjG,eAAO,MAAM,eAAe,GAAI,SAAS,0BAA0B,EAAE,MAAM,YAAY,sDAqBtF,CAAC"}
1
+ {"version":3,"file":"shield-rate-limit.middleware.d.ts","sourceRoot":"","sources":["../src/shield-rate-limit.middleware.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,KAAK,eAAe,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;AAC9C,KAAK,0BAA0B,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAC5G,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,eAAO,MAAM,mBAAmB,EAAE,eAA8B,CAAC;AACjE,eAAO,MAAM,mBAAmB,EAAE,eAAoD,CAAC;AAEvF,eAAO,MAAM,oBAAoB,eAA+D,CAAC;AAEjG,eAAO,MAAM,eAAe,GAAI,SAAS,0BAA0B,EAAE,MAAM,YAAY,sDAqBtF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"slower.middleware.d.ts","sourceRoot":"","sources":["../src/slower.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,qBAAa,MAAM;IACjB,MAAM,CAAC,MAAM,GAAI,QAAQ,KAAK,CAAC,QAAQ,uDAIlC;CACN"}
1
+ {"version":3,"file":"slower.middleware.d.ts","sourceRoot":"","sources":["../src/slower.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAG3C,qBAAa,MAAM;IACjB,MAAM,CAAC,MAAM,GAAI,QAAQ,KAAK,CAAC,QAAQ,uDAKlC;CACN"}
@@ -1 +1 @@
1
- {"version":3,"file":"slower.middleware.js","sourceRoot":"","sources":["../src/slower.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,OAAO,MAAM;IACjB,MAAM,CAAC,MAAM,GAAG,CAAC,MAAsB,EAAE,EAAE,CACzC,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;QAClC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"slower.middleware.js","sourceRoot":"","sources":["../src/slower.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,OAAO,MAAM;IACjB,MAAM,CAAC,MAAM,GAAG,CAAC,MAAsB,EAAE,EAAE,CACzC,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;QAClC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE3B,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC"}
@@ -1,11 +1,19 @@
1
1
  import * as tools from "@bgord/tools";
2
+ import type { FileCleanerPort } from "./file-cleaner.port";
3
+ import type { FileRenamerPort } from "./file-renamer.port";
2
4
  import type { TemporaryFilePort } from "./temporary-file.port";
3
- export declare class TemporaryFileAbsolute implements TemporaryFilePort {
5
+ type Dependencies = {
6
+ FileCleaner: FileCleanerPort;
7
+ FileRenamer: FileRenamerPort;
8
+ };
9
+ export declare class TemporaryFileAbsoluteAdapter implements TemporaryFilePort {
4
10
  private readonly directory;
5
- constructor(directory: tools.DirectoryPathAbsoluteType);
6
- write(filename: tools.Filename, data: File): Promise<{
11
+ private readonly deps;
12
+ constructor(directory: tools.DirectoryPathAbsoluteType, deps: Dependencies);
13
+ write(filename: tools.Filename, content: File): Promise<{
7
14
  path: tools.FilePathAbsolute;
8
15
  }>;
9
16
  cleanup(filename: tools.Filename): Promise<void>;
10
17
  }
18
+ export {};
11
19
  //# sourceMappingURL=temporary-file-absolute.adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"temporary-file-absolute.adapter.d.ts","sourceRoot":"","sources":["../src/temporary-file-absolute.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,qBAAa,qBAAsB,YAAW,iBAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,KAAK,CAAC,yBAAyB;IAEjE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI;;;IAU1C,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;CAOvC"}
1
+ {"version":3,"file":"temporary-file-absolute.adapter.d.ts","sourceRoot":"","sources":["../src/temporary-file-absolute.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,KAAK,YAAY,GAAG;IAAE,WAAW,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,eAAe,CAAA;CAAE,CAAC;AAEnF,qBAAa,4BAA6B,YAAW,iBAAiB;IAElE,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,SAAS,EAAE,KAAK,CAAC,yBAAyB,EAC1C,IAAI,EAAE,YAAY;IAG/B,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI;;;IAU7C,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;CAGvC"}
@@ -1,23 +1,20 @@
1
- import fs from "node:fs/promises";
2
1
  import * as tools from "@bgord/tools";
3
- export class TemporaryFileAbsolute {
2
+ export class TemporaryFileAbsoluteAdapter {
4
3
  directory;
5
- constructor(directory) {
4
+ deps;
5
+ constructor(directory, deps) {
6
6
  this.directory = directory;
7
+ this.deps = deps;
7
8
  }
8
- async write(filename, data) {
9
- const partPath = tools.FilePathAbsolute.fromPartsSafe(this.directory, filename.withSuffix("-part"));
10
- const finalPath = tools.FilePathAbsolute.fromPartsSafe(this.directory, filename);
11
- await Bun.write(partPath.get(), data);
12
- await fs.rename(partPath.get(), finalPath.get());
13
- return { path: finalPath };
9
+ async write(filename, content) {
10
+ const temporary = tools.FilePathAbsolute.fromPartsSafe(this.directory, filename.withSuffix("-part"));
11
+ const final = tools.FilePathAbsolute.fromPartsSafe(this.directory, filename);
12
+ await Bun.write(temporary.get(), content);
13
+ await this.deps.FileRenamer.rename(temporary, final);
14
+ return { path: final };
14
15
  }
15
16
  async cleanup(filename) {
16
- const path = tools.FilePathAbsolute.fromPartsSafe(this.directory, filename);
17
- try {
18
- await fs.unlink(path.get());
19
- }
20
- catch (error) { }
17
+ await this.deps.FileCleaner.delete(tools.FilePathAbsolute.fromPartsSafe(this.directory, filename));
21
18
  }
22
19
  }
23
20
  //# sourceMappingURL=temporary-file-absolute.adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"temporary-file-absolute.adapter.js","sourceRoot":"","sources":["../src/temporary-file-absolute.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,qBAAqB;IACH;IAA7B,YAA6B,SAA0C;QAA1C,cAAS,GAAT,SAAS,CAAiC;IAAG,CAAC;IAE3E,KAAK,CAAC,KAAK,CAAC,QAAwB,EAAE,IAAU;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACpG,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEjF,MAAM,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;QAEjD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAwB;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE5E,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":"temporary-file-absolute.adapter.js","sourceRoot":"","sources":["../src/temporary-file-absolute.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAOtC,MAAM,OAAO,4BAA4B;IAEpB;IACA;IAFnB,YACmB,SAA0C,EAC1C,IAAkB;QADlB,cAAS,GAAT,SAAS,CAAiC;QAC1C,SAAI,GAAJ,IAAI,CAAc;IAClC,CAAC;IAEJ,KAAK,CAAC,KAAK,CAAC,QAAwB,EAAE,OAAa;QACjD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACrG,MAAM,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE7E,MAAM,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAErD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAwB;QACpC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrG,CAAC;CACF"}
@@ -1,6 +1,6 @@
1
1
  import * as tools from "@bgord/tools";
2
2
  import type { TemporaryFilePort } from "./temporary-file.port";
3
- export declare class TemporaryFileNoop implements TemporaryFilePort {
3
+ export declare class TemporaryFileNoopAdapter implements TemporaryFilePort {
4
4
  private readonly directory;
5
5
  constructor(directory: tools.DirectoryPathAbsoluteType);
6
6
  write(filename: tools.Filename): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"temporary-file-noop.adapter.d.ts","sourceRoot":"","sources":["../src/temporary-file-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,qBAAa,iBAAkB,YAAW,iBAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,KAAK,CAAC,yBAAyB;IAEjE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;;;IAI9B,OAAO;CACd"}
1
+ {"version":3,"file":"temporary-file-noop.adapter.d.ts","sourceRoot":"","sources":["../src/temporary-file-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,qBAAa,wBAAyB,YAAW,iBAAiB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,KAAK,CAAC,yBAAyB;IAEjE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;;;IAI9B,OAAO;CACd"}
@@ -1,5 +1,5 @@
1
1
  import * as tools from "@bgord/tools";
2
- export class TemporaryFileNoop {
2
+ export class TemporaryFileNoopAdapter {
3
3
  directory;
4
4
  constructor(directory) {
5
5
  this.directory = directory;
@@ -1 +1 @@
1
- {"version":3,"file":"temporary-file-noop.adapter.js","sourceRoot":"","sources":["../src/temporary-file-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,iBAAiB;IACC;IAA7B,YAA6B,SAA0C;QAA1C,cAAS,GAAT,SAAS,CAAiC;IAAG,CAAC;IAE3E,KAAK,CAAC,KAAK,CAAC,QAAwB;QAClC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,OAAO,KAAI,CAAC;CACnB"}
1
+ {"version":3,"file":"temporary-file-noop.adapter.js","sourceRoot":"","sources":["../src/temporary-file-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,SAA0C;QAA1C,cAAS,GAAT,SAAS,CAAiC;IAAG,CAAC;IAE3E,KAAK,CAAC,KAAK,CAAC,QAAwB;QAClC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,OAAO,KAAI,CAAC;CACnB"}
@@ -1,6 +1,6 @@
1
1
  import type * as tools from "@bgord/tools";
2
2
  export interface TemporaryFilePort {
3
- write(filename: tools.Filename, data: File): Promise<{
3
+ write(filename: tools.Filename, content: File): Promise<{
4
4
  path: tools.FilePathAbsolute;
5
5
  }>;
6
6
  cleanup(filename: tools.Filename): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"temporary-file.port.d.ts","sourceRoot":"","sources":["../src/temporary-file.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAA;KAAE,CAAC,CAAC;IACvF,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD"}
1
+ {"version":3,"file":"temporary-file.port.d.ts","sourceRoot":"","sources":["../src/temporary-file.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAA;KAAE,CAAC,CAAC;IAE1F,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD"}
@@ -1 +1 @@
1
- {"version":3,"file":"time-zone-offset.middleware.d.ts","sourceRoot":"","sources":["../src/time-zone-offset.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,MAAM,uBAAuB,GAAG;IAAE,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAA;CAAE,CAAC;AAEzE,qBAAa,cAAc;IACzB,MAAM,CAAC,4BAA4B,SAAsB;IAEzD,MAAM,CAAC,MAAM,oDAQV;IAEH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,aAAa;IAInG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;CAGhF"}
1
+ {"version":3,"file":"time-zone-offset.middleware.d.ts","sourceRoot":"","sources":["../src/time-zone-offset.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,MAAM,uBAAuB,GAAG;IAAE,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAA;CAAE,CAAC;AAEzE,qBAAa,cAAc;IACzB,MAAM,CAAC,4BAA4B,SAAsB;IAEzD,MAAM,CAAC,MAAM,oDAKV;IAEH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,aAAa;IAInG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;CAGhF"}
@@ -3,8 +3,8 @@ import { createMiddleware } from "hono/factory";
3
3
  export class TimeZoneOffset {
4
4
  static TIME_ZONE_OFFSET_HEADER_NAME = "time-zone-offset";
5
5
  static attach = createMiddleware(async (c, next) => {
6
- const timeZoneOffsetMinutes = tools.TimeZoneOffsetValue.parse(c.req.header(TimeZoneOffset.TIME_ZONE_OFFSET_HEADER_NAME));
7
- c.set("timeZoneOffset", tools.Duration.Minutes(timeZoneOffsetMinutes));
6
+ const offset = tools.TimeZoneOffsetValue.parse(c.req.header(TimeZoneOffset.TIME_ZONE_OFFSET_HEADER_NAME));
7
+ c.set("timeZoneOffset", tools.Duration.Minutes(offset));
8
8
  await next();
9
9
  });
10
10
  static adjustTimestamp(timestamp, offset) {
@@ -1 +1 @@
1
- {"version":3,"file":"time-zone-offset.middleware.js","sourceRoot":"","sources":["../src/time-zone-offset.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIhD,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,4BAA4B,GAAG,kBAAkB,CAAC;IAEzD,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,qBAAqB,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAC3D,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAC1D,CAAC;QAEF,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAEvE,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,eAAe,CAAC,SAA8B,EAAE,MAAsB;QAC3E,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,SAA8B,EAAE,MAAsB;QACtE,OAAO,IAAI,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC"}
1
+ {"version":3,"file":"time-zone-offset.middleware.js","sourceRoot":"","sources":["../src/time-zone-offset.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIhD,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,4BAA4B,GAAG,kBAAkB,CAAC;IAEzD,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAAC,CAAC;QAC1G,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAExD,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,eAAe,CAAC,SAA8B,EAAE,MAAsB;QAC3E,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,SAA8B,EAAE,MAAsB;QACtE,OAAO,IAAI,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC"}
@@ -1,9 +1,16 @@
1
+ import type { JsonFileReaderPort } from "./json-file-reader.port";
2
+ import type { LoggerPort } from "./logger.port";
3
+ type Dependencies = {
4
+ JsonFileReader: JsonFileReaderPort;
5
+ Logger: LoggerPort;
6
+ };
1
7
  export declare class Translations {
2
- static build: () => [import("hono/types").H<import("hono").Env, string, {}, Promise<Response & import("hono").TypedResponse<{
8
+ static build: (deps: Dependencies) => [import("hono/types").H<import("hono").Env, string, {}, Promise<Response & import("hono").TypedResponse<{
3
9
  translations: {
4
10
  [x: string]: string;
5
11
  };
6
12
  language: string;
7
13
  }, import("hono/utils/http-status").ContentfulStatusCode, "json">>>];
8
14
  }
15
+ export {};
9
16
  //# sourceMappingURL=translations.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"translations.service.d.ts","sourceRoot":"","sources":["../src/translations.service.ts"],"names":[],"mappings":"AAMA,qBAAa,YAAY;IACvB,MAAM,CAAC,KAAK;;;;;yEAMP;CACN"}
1
+ {"version":3,"file":"translations.service.d.ts","sourceRoot":"","sources":["../src/translations.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,KAAK,YAAY,GAAG;IAAE,cAAc,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,CAAC;AAE/E,qBAAa,YAAY;IACvB,MAAM,CAAC,KAAK,GAAI,MAAM,YAAY;;;;;yEAM7B;CACN"}
@@ -2,9 +2,9 @@ import { createFactory } from "hono/factory";
2
2
  import { I18n } from "./i18n.service";
3
3
  const handler = createFactory();
4
4
  export class Translations {
5
- static build = () => handler.createHandlers(async (c) => {
5
+ static build = (deps) => handler.createHandlers(async (c) => {
6
6
  const language = c.get("language");
7
- const translations = await new I18n().getTranslations(language);
7
+ const translations = await new I18n(deps).getTranslations(language);
8
8
  return c.json({ translations, language });
9
9
  });
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"translations.service.js","sourceRoot":"","sources":["../src/translations.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;AAEhC,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE,CAClB,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAuB,CAAC;QACzD,MAAM,YAAY,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"translations.service.js","sourceRoot":"","sources":["../src/translations.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAItC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;AAIhC,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,KAAK,GAAG,CAAC,IAAkB,EAAE,EAAE,CACpC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEpE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC"}