@visulima/email 1.0.0-alpha.8 → 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 (396) hide show
  1. package/CHANGELOG.md +786 -0
  2. package/LICENSE.md +541 -847
  3. package/README.md +212 -191
  4. package/dist/crypto/index.d.ts +304 -4
  5. package/dist/crypto/index.js +1 -1
  6. package/dist/deliverability/dmarc-report.d.ts +95 -0
  7. package/dist/deliverability/dmarc-report.js +1 -0
  8. package/dist/deliverability/index.d.ts +360 -0
  9. package/dist/deliverability/index.js +1 -0
  10. package/dist/events/index.d.ts +31 -0
  11. package/dist/events/index.js +1 -0
  12. package/dist/inbound/index.d.ts +375 -0
  13. package/dist/inbound/index.js +1 -0
  14. package/dist/index.d.ts +94 -9
  15. package/dist/index.js +1 -1
  16. package/dist/middleware/index.d.ts +346 -0
  17. package/dist/middleware/index.js +1 -0
  18. package/dist/packem_shared/ALL_EVENTS-3kwh5CBE.js +1 -0
  19. package/dist/packem_shared/DkimSigner-BuSbnos1.js +18 -0
  20. package/dist/packem_shared/DraftMailMessage-BxqGSLMN.js +1 -0
  21. package/dist/packem_shared/EmailError-B-sEf3bp.js +1 -0
  22. package/dist/packem_shared/Mail-BEuzrB00.js +1 -0
  23. package/dist/packem_shared/MailMessage-D9k5gYrd.js +1 -0
  24. package/dist/packem_shared/MemoryEventStore-CuhfO9aj.js +1 -0
  25. package/dist/packem_shared/MemoryQueue-Dl1Fa6OJ.js +1 -0
  26. package/dist/packem_shared/MemorySuppressionStore-DZnbz-_B.js +1 -0
  27. package/dist/packem_shared/RATE_LIMIT_PRESETS-BPADLgcA.js +1 -0
  28. package/dist/packem_shared/RequiredOptionError-DuNNY_a5.js +1 -0
  29. package/dist/packem_shared/SmimeEncrypter-C7usORKF.js +6 -0
  30. package/dist/packem_shared/SmimeSigner-DgAApLPS.js +8 -0
  31. package/dist/packem_shared/addDarkModeSupport-DZYxULjl.js +1 -0
  32. package/dist/packem_shared/address-formatter-BWR2Dddx.js +1 -0
  33. package/dist/packem_shared/aggregate-features-BqEjPd42.js +1 -0
  34. package/dist/packem_shared/ahaSendProvider-D81_wUA1.js +1 -0
  35. package/dist/packem_shared/arcMessageSignatureBase-BY4j0TxM.js +17 -0
  36. package/dist/packem_shared/attachment-processor-CMp7qqMI.js +1 -0
  37. package/dist/packem_shared/awsSesProvider-BGZJUIep.js +32 -0
  38. package/dist/packem_shared/azureProvider-CmcK4bsf.js +1 -0
  39. package/dist/packem_shared/brevoProvider-C1BDXr41.js +1 -0
  40. package/dist/packem_shared/build-mime-message-B6927SQy.js +3 -0
  41. package/dist/packem_shared/buildListUnsubscribe-Cdr8MvR_.js +1 -0
  42. package/dist/packem_shared/buildMtaStsPolicy-oEQg8y_C.js +6 -0
  43. package/dist/packem_shared/circuitBreakerMiddleware-D2SA_07f.js +1 -0
  44. package/dist/packem_shared/cloudflareEmailProvider-Bv-ty-74.js +1 -0
  45. package/dist/packem_shared/composeMiddleware-BHwLLEzK.js +1 -0
  46. package/dist/packem_shared/create-logger-BQTS3f-I.js +1 -0
  47. package/dist/packem_shared/createSuppressionStore-CeAZKCbY.js +1 -0
  48. package/dist/packem_shared/createTestEmail-CF_RUjqo.js +1 -0
  49. package/dist/packem_shared/createWorker-_-yMWcNQ.js +1 -0
  50. package/dist/packem_shared/dedupeMiddleware-B6ajWOTi.js +1 -0
  51. package/dist/packem_shared/defineInboundHandler-CnL2BzlL.js +1 -0
  52. package/dist/packem_shared/defineProvider-C9q-7iwt.js +1 -0
  53. package/dist/packem_shared/detectMimeType-Dxv4MjZ7.js +1 -0
  54. package/dist/packem_shared/emailMatchers-DZDkrZ_3.js +1 -0
  55. package/dist/packem_shared/event-bus.d-DEl3w_EW.d.ts +104 -0
  56. package/dist/packem_shared/extractCidReferences-BuoTREMp.js +1 -0
  57. package/dist/packem_shared/extractReply-BUjIBt9A.js +5 -0
  58. package/dist/packem_shared/failoverProvider-BgX6zfnY.js +1 -0
  59. package/dist/packem_shared/format-address-DTl-9O70.js +1 -0
  60. package/dist/packem_shared/generate-boundary-DQbzDiOI.js +1 -0
  61. package/dist/packem_shared/generate-message-id-gXAuMz4g.js +1 -0
  62. package/dist/packem_shared/headers-to-record-De1Eg951.js +1 -0
  63. package/dist/packem_shared/httpProvider-DJAsYSun.js +1 -0
  64. package/dist/packem_shared/index-yDU-1zOZ.js +11 -0
  65. package/dist/packem_shared/infobipProvider-lHyGrXgZ.js +1 -0
  66. package/dist/packem_shared/injectPreheader-CF9WHZ7J.js +1 -0
  67. package/dist/packem_shared/inlineCss-BQ7d2Cyz.js +1 -0
  68. package/dist/packem_shared/isValidSigningCertUrl-Bii1AMGC.js +3 -0
  69. package/dist/packem_shared/loggingMiddleware-CZIiVMVp.js +1 -0
  70. package/dist/packem_shared/loopsProvider-DyloxzNC.js +1 -0
  71. package/dist/packem_shared/mail.d-B9SSqyy0.d.ts +909 -0
  72. package/dist/packem_shared/{mailCrabProvider-CM_CFDca.js → mailCrabProvider-CPtBT6Th.js} +1 -1
  73. package/dist/packem_shared/mailPaceProvider-CJEvOFBh.js +1 -0
  74. package/dist/packem_shared/mailchannelsProvider-osRkW_tz.js +1 -0
  75. package/dist/packem_shared/mailerSendProvider-C_6LzARK.js +1 -0
  76. package/dist/packem_shared/mailgunProvider-DkISvMPe.js +1 -0
  77. package/dist/packem_shared/mailjetProvider-CV0i4Xzh.js +1 -0
  78. package/dist/packem_shared/mailomatProvider-B5YFonEO.js +1 -0
  79. package/dist/packem_shared/mailtrapProvider-C4ZquIPz.js +1 -0
  80. package/dist/packem_shared/make-request-BlK_B72c.js +1 -0
  81. package/dist/packem_shared/mandrillProvider-DWPFh_Sj.js +1 -0
  82. package/dist/packem_shared/mockProvider-Behywbl1.js +1 -0
  83. package/dist/packem_shared/netcoreProvider-C5TEciaN.js +1 -0
  84. package/dist/packem_shared/nodemailerProvider-BFHobXxt.js +1 -0
  85. package/dist/packem_shared/normalizeMessageId-DAx2pGe2.js +1 -0
  86. package/dist/packem_shared/oauth2Middleware-CodqXkyj.js +1 -0
  87. package/dist/packem_shared/opentelemetryProvider-ByHC01ub.js +1 -0
  88. package/dist/packem_shared/outlook365Provider-63ggDpqV.js +1 -0
  89. package/dist/packem_shared/parseAddress-DdbViBAJ.js +1 -0
  90. package/dist/packem_shared/parseArfReport-Ds6S3c4J.js +6 -0
  91. package/dist/packem_shared/parseCloudflareInbound-C__j-oNa.js +1 -0
  92. package/dist/packem_shared/parseDmarcRecord-DXZ-_rF0.js +1 -0
  93. package/dist/packem_shared/parseMailgunInbound-BpC6uPNe.js +1 -0
  94. package/dist/packem_shared/parsePostmarkInbound-Co3_c6-9.js +1 -0
  95. package/dist/packem_shared/parseSendGridInbound-DsALoijO.js +4 -0
  96. package/dist/packem_shared/parseSesInbound-CH5tHIjp.js +1 -0
  97. package/dist/packem_shared/parseTlsReport-wPe1lIDs.js +1 -0
  98. package/dist/packem_shared/plunkProvider-yTlrJVEp.js +1 -0
  99. package/dist/packem_shared/postProcessHtml-DqKi2Ucg.js +1 -0
  100. package/dist/packem_shared/postalProvider-CRX_bMYD.js +1 -0
  101. package/dist/packem_shared/postmarkProvider-CDx85Yge.js +1 -0
  102. package/dist/packem_shared/provider-base-C7PuopYK.js +1 -0
  103. package/dist/packem_shared/provider.d-J-y6iogK.d.ts +28 -0
  104. package/dist/packem_shared/quoted-printable-nSGDA1tA.js +7 -0
  105. package/dist/packem_shared/resendProvider-CiclWxzr.js +1 -0
  106. package/dist/packem_shared/retry-3pnxTuNs.js +1 -0
  107. package/dist/packem_shared/retryMiddleware-DbViDX4r.js +1 -0
  108. package/dist/packem_shared/roundRobinProvider-D1by5KGW.js +1 -0
  109. package/dist/packem_shared/sanitize-header-DJhgZl3y.js +1 -0
  110. package/dist/packem_shared/scalewayProvider-BcND48qO.js +1 -0
  111. package/dist/packem_shared/sendGridProvider-D8ZLgY62.js +1 -0
  112. package/dist/packem_shared/smtpProvider-Bm0yP97W.js +25 -0
  113. package/dist/packem_shared/sparkpostProvider-CTYfSRaV.js +1 -0
  114. package/dist/packem_shared/sweegoProvider-DOoin_vi.js +1 -0
  115. package/dist/packem_shared/toEmailSnapshot-DeRqM5SJ.js +1 -0
  116. package/dist/packem_shared/tracer.d-MU42G1jG.d.ts +494 -0
  117. package/dist/packem_shared/types.d-BId55FW2.d.ts +107 -0
  118. package/dist/packem_shared/types.d-CmoWvdZi.d.ts +61 -0
  119. package/dist/packem_shared/types.d-DCkecJse.d.ts +51 -0
  120. package/dist/packem_shared/types.d-Mpu0HZoG.d.ts +24 -0
  121. package/dist/packem_shared/types.d-ejzh-xBP.d.ts +209 -0
  122. package/dist/packem_shared/types.d-lcJZmwRK.d.ts +69 -0
  123. package/dist/packem_shared/types.d-nyR1ty1Q.d.ts +9 -0
  124. package/dist/packem_shared/utils-BfYfPB_I.js +1 -0
  125. package/dist/packem_shared/validate-email-options-mCM9dVug.js +1 -0
  126. package/dist/packem_shared/verifyMailgunWebhook-Cwl0OD3P.js +1 -0
  127. package/dist/packem_shared/verifyPostmarkWebhook-C72ZvbrG.js +1 -0
  128. package/dist/packem_shared/verifyResendWebhook-YK2zNDXR.js +1 -0
  129. package/dist/packem_shared/verifySendGridWebhook-Dbwc1tfG.js +1 -0
  130. package/dist/packem_shared/withEvents-CCVblSqj.js +1 -0
  131. package/dist/packem_shared/withMetrics-DWywX_6M.js +1 -0
  132. package/dist/packem_shared/withRender-VP9wE5Yr.js +1 -0
  133. package/dist/packem_shared/withSuppression-DBaZDMAr.js +1 -0
  134. package/dist/packem_shared/withTelemetry-DL2qo0Hp.js +1 -0
  135. package/dist/packem_shared/zeptomailProvider-DKBPSHPj.js +1 -0
  136. package/dist/providers/ahasend/index.d.ts +36 -3
  137. package/dist/providers/ahasend/index.js +1 -1
  138. package/dist/providers/aws-ses/index.d.ts +47 -3
  139. package/dist/providers/aws-ses/index.js +1 -1
  140. package/dist/providers/azure/index.d.ts +52 -3
  141. package/dist/providers/azure/index.js +1 -1
  142. package/dist/providers/brevo/index.d.ts +65 -3
  143. package/dist/providers/brevo/index.js +1 -1
  144. package/dist/providers/cloudflare-email/index.d.ts +36 -0
  145. package/dist/providers/cloudflare-email/index.js +1 -0
  146. package/dist/providers/failover/index.d.ts +27 -3
  147. package/dist/providers/failover/index.js +1 -1
  148. package/dist/providers/http/index.d.ts +35 -3
  149. package/dist/providers/http/index.js +1 -1
  150. package/dist/providers/infobip/index.d.ts +56 -3
  151. package/dist/providers/infobip/index.js +1 -1
  152. package/dist/providers/loops/index.d.ts +47 -0
  153. package/dist/providers/loops/index.js +1 -0
  154. package/dist/providers/mailchannels/index.d.ts +26 -0
  155. package/dist/providers/mailchannels/index.js +1 -0
  156. package/dist/providers/mailcrab/index.d.ts +32 -3
  157. package/dist/providers/mailcrab/index.js +1 -1
  158. package/dist/providers/mailersend/index.d.ts +51 -3
  159. package/dist/providers/mailersend/index.js +1 -1
  160. package/dist/providers/mailgun/index.d.ts +73 -3
  161. package/dist/providers/mailgun/index.js +1 -1
  162. package/dist/providers/mailjet/index.d.ts +72 -3
  163. package/dist/providers/mailjet/index.js +1 -1
  164. package/dist/providers/mailomat/index.d.ts +40 -3
  165. package/dist/providers/mailomat/index.js +1 -1
  166. package/dist/providers/mailpace/index.d.ts +52 -3
  167. package/dist/providers/mailpace/index.js +1 -1
  168. package/dist/providers/mailtrap/index.d.ts +44 -3
  169. package/dist/providers/mailtrap/index.js +1 -1
  170. package/dist/providers/mandrill/index.d.ts +87 -3
  171. package/dist/providers/mandrill/index.js +1 -1
  172. package/dist/providers/mock/index.d.ts +12 -3
  173. package/dist/providers/mock/index.js +1 -1
  174. package/dist/providers/netcore/index.d.ts +35 -0
  175. package/dist/providers/netcore/index.js +1 -0
  176. package/dist/providers/nodemailer/index.d.ts +38 -3
  177. package/dist/providers/nodemailer/index.js +1 -1
  178. package/dist/providers/opentelemetry/index.d.ts +37 -3
  179. package/dist/providers/opentelemetry/index.js +1 -1
  180. package/dist/providers/outlook365/index.d.ts +48 -0
  181. package/dist/providers/outlook365/index.js +1 -0
  182. package/dist/providers/plunk/index.d.ts +38 -3
  183. package/dist/providers/plunk/index.js +1 -1
  184. package/dist/providers/postal/index.d.ts +48 -3
  185. package/dist/providers/postal/index.js +1 -1
  186. package/dist/providers/postmark/index.d.ts +60 -3
  187. package/dist/providers/postmark/index.js +1 -1
  188. package/dist/providers/resend/index.d.ts +51 -3
  189. package/dist/providers/resend/index.js +1 -1
  190. package/dist/providers/roundrobin/index.d.ts +27 -3
  191. package/dist/providers/roundrobin/index.js +1 -1
  192. package/dist/providers/scaleway/index.d.ts +44 -3
  193. package/dist/providers/scaleway/index.js +1 -1
  194. package/dist/providers/sendgrid/index.d.ts +84 -3
  195. package/dist/providers/sendgrid/index.js +1 -1
  196. package/dist/providers/smtp/index.d.ts +71 -3
  197. package/dist/providers/smtp/index.js +1 -1
  198. package/dist/providers/sparkpost/index.d.ts +43 -0
  199. package/dist/providers/sparkpost/index.js +1 -0
  200. package/dist/providers/sweego/index.d.ts +40 -3
  201. package/dist/providers/sweego/index.js +1 -1
  202. package/dist/providers/zeptomail/index.d.ts +37 -3
  203. package/dist/providers/zeptomail/index.js +1 -1
  204. package/dist/queue/bullmq-queue.d.ts +46 -0
  205. package/dist/queue/bullmq-queue.js +1 -0
  206. package/dist/queue/index.d.ts +147 -0
  207. package/dist/queue/index.js +1 -0
  208. package/dist/queue/pg-boss-queue.d.ts +41 -0
  209. package/dist/queue/pg-boss-queue.js +1 -0
  210. package/dist/queue/sqs-queue.d.ts +72 -0
  211. package/dist/queue/sqs-queue.js +1 -0
  212. package/dist/queue/unstorage-queue.d.ts +199 -0
  213. package/dist/queue/unstorage-queue.js +1 -0
  214. package/dist/render/index.d.ts +107 -0
  215. package/dist/render/index.js +1 -0
  216. package/dist/template-engines/handlebars.d.ts +23 -22
  217. package/dist/template-engines/handlebars.js +1 -1
  218. package/dist/template-engines/html-to-text.d.ts +24 -24
  219. package/dist/template-engines/html-to-text.js +1 -1
  220. package/dist/template-engines/i18n.d.ts +61 -0
  221. package/dist/template-engines/i18n.js +1 -0
  222. package/dist/template-engines/jsx-email.d.ts +11 -0
  223. package/dist/template-engines/jsx-email.js +1 -0
  224. package/dist/template-engines/liquid.d.ts +12 -0
  225. package/dist/template-engines/liquid.js +1 -0
  226. package/dist/template-engines/mjml.d.ts +10 -10
  227. package/dist/template-engines/mjml.js +1 -1
  228. package/dist/template-engines/react-email.d.ts +9 -9
  229. package/dist/template-engines/react-email.js +1 -1
  230. package/dist/template-engines/vue-email.d.ts +9 -9
  231. package/dist/template-engines/vue-email.js +1 -1
  232. package/dist/test/index.d.ts +155 -0
  233. package/dist/test/index.js +1 -0
  234. package/dist/utils/cache.d.ts +49 -48
  235. package/dist/utils/cache.js +1 -1
  236. package/dist/utils/format-email-address.d.ts +8 -7
  237. package/dist/utils/format-email-address.js +1 -1
  238. package/dist/utils/normalize-email-aliases.d.ts +20 -20
  239. package/dist/utils/normalize-email-aliases.js +1 -1
  240. package/dist/utils/parse-address.d.ts +18 -17
  241. package/dist/utils/parse-address.js +1 -1
  242. package/dist/utils/parse-eml.d.ts +22 -0
  243. package/dist/utils/parse-eml.js +6 -0
  244. package/dist/utils/result.d.ts +49 -0
  245. package/dist/utils/result.js +1 -0
  246. package/dist/utils/validation/check-feature-support.d.ts +53 -0
  247. package/dist/utils/validation/check-feature-support.js +1 -0
  248. package/dist/utils/validation/validate-email.d.ts +5 -5
  249. package/dist/utils/validation/validate-email.js +1 -1
  250. package/dist/webhooks/index.d.ts +231 -0
  251. package/dist/webhooks/index.js +1 -0
  252. package/package.json +177 -67
  253. package/dist/attachment-helpers.d.ts +0 -64
  254. package/dist/crypto/dkim-signer.d.ts +0 -48
  255. package/dist/crypto/smime-encrypter.d.ts +0 -53
  256. package/dist/crypto/smime-signer.d.ts +0 -48
  257. package/dist/crypto/types.d.ts +0 -101
  258. package/dist/draft-mail-message.d.ts +0 -13
  259. package/dist/errors/email-error.d.ts +0 -17
  260. package/dist/errors/required-option-error.d.ts +0 -10
  261. package/dist/mail-message.d.ts +0 -425
  262. package/dist/mail.d.ts +0 -206
  263. package/dist/packem_shared/DkimSigner-pFd4c3fZ.js +0 -18
  264. package/dist/packem_shared/EmailError-zm2ffVav.js +0 -1
  265. package/dist/packem_shared/Mail-6Bltpy_p.js +0 -1
  266. package/dist/packem_shared/MailMessage-B76GPBBA.js +0 -1
  267. package/dist/packem_shared/RequiredOptionError-CevW3u2K.js +0 -1
  268. package/dist/packem_shared/SmimeEncrypter-CBevU534.js +0 -6
  269. package/dist/packem_shared/SmimeSigner-CObA4jzT.js +0 -8
  270. package/dist/packem_shared/address-formatter-Cm_E_ZMa.js +0 -1
  271. package/dist/packem_shared/ahaSendProvider-DlFKEQ6D.js +0 -1
  272. package/dist/packem_shared/attachment-processor-2rHmfa7j.js +0 -1
  273. package/dist/packem_shared/awsSesProvider-Ba-eVJxZ.js +0 -32
  274. package/dist/packem_shared/azureProvider-CQYAkgVF.js +0 -1
  275. package/dist/packem_shared/brevoProvider-5p6jjiK9.js +0 -1
  276. package/dist/packem_shared/build-mime-message-IYaUqqPJ.js +0 -2
  277. package/dist/packem_shared/create-logger-BiWdqFNg.js +0 -1
  278. package/dist/packem_shared/defineProvider-B9rSklAJ.js +0 -1
  279. package/dist/packem_shared/detectMimeType-S8WRsNtY.js +0 -1
  280. package/dist/packem_shared/failoverProvider-CAHQQueo.js +0 -1
  281. package/dist/packem_shared/generate-boundary-Cx8nXYS0.js +0 -1
  282. package/dist/packem_shared/generate-message-id-D4uA8gkj.js +0 -1
  283. package/dist/packem_shared/headers-to-record-Qo124ImV.js +0 -1
  284. package/dist/packem_shared/httpProvider-CZD6LZX3.js +0 -1
  285. package/dist/packem_shared/infobipProvider-CtLwrUaP.js +0 -1
  286. package/dist/packem_shared/mailPaceProvider-B6yKvh6z.js +0 -1
  287. package/dist/packem_shared/mailerSendProvider-CeeIXFnW.js +0 -1
  288. package/dist/packem_shared/mailgunProvider-mmjKzouh.js +0 -1
  289. package/dist/packem_shared/mailjetProvider-DwN6i0VA.js +0 -1
  290. package/dist/packem_shared/mailomatProvider-DMQmjKHT.js +0 -1
  291. package/dist/packem_shared/mailtrapProvider-BN3UBEQw.js +0 -1
  292. package/dist/packem_shared/make-request-BDzF9W9D.js +0 -1
  293. package/dist/packem_shared/mandrillProvider-370y7CLu.js +0 -1
  294. package/dist/packem_shared/mockProvider-DN5ZwutD.js +0 -1
  295. package/dist/packem_shared/nodemailerProvider-_w8QXMU-.js +0 -1
  296. package/dist/packem_shared/opentelemetryProvider-C_ZXOLSd.js +0 -1
  297. package/dist/packem_shared/plunkProvider-DfJumQ4U.js +0 -1
  298. package/dist/packem_shared/postalProvider-Bavx2FcH.js +0 -1
  299. package/dist/packem_shared/postmarkProvider-DFC0uvjO.js +0 -1
  300. package/dist/packem_shared/provider-base-Cmzx6BTO.js +0 -1
  301. package/dist/packem_shared/readFile-BlZxbhCU-C8bCdiA2.js +0 -1
  302. package/dist/packem_shared/resendProvider-CfqU7UdE.js +0 -1
  303. package/dist/packem_shared/roundRobinProvider-1WQnuKR8.js +0 -1
  304. package/dist/packem_shared/sanitize-header-wWav-Scu.js +0 -1
  305. package/dist/packem_shared/scalewayProvider-be1HPimL.js +0 -1
  306. package/dist/packem_shared/sendGridProvider-BVI1sq3n.js +0 -1
  307. package/dist/packem_shared/smtpProvider-BV-ufR53.js +0 -23
  308. package/dist/packem_shared/sweegoProvider-7419CSAq.js +0 -1
  309. package/dist/packem_shared/validate-email-options-DfJ7llf8.js +0 -1
  310. package/dist/packem_shared/zeptomailProvider-C2lh0Xmo.js +0 -1
  311. package/dist/providers/ahasend/provider.d.ts +0 -7
  312. package/dist/providers/ahasend/types.d.ts +0 -28
  313. package/dist/providers/aws-ses/provider.d.ts +0 -8
  314. package/dist/providers/aws-ses/types.d.ts +0 -38
  315. package/dist/providers/azure/provider.d.ts +0 -7
  316. package/dist/providers/azure/types.d.ts +0 -44
  317. package/dist/providers/brevo/provider.d.ts +0 -7
  318. package/dist/providers/brevo/types.d.ts +0 -57
  319. package/dist/providers/failover/provider.d.ts +0 -7
  320. package/dist/providers/failover/types.d.ts +0 -19
  321. package/dist/providers/http/provider.d.ts +0 -7
  322. package/dist/providers/http/types.d.ts +0 -27
  323. package/dist/providers/infobip/provider.d.ts +0 -7
  324. package/dist/providers/infobip/types.d.ts +0 -48
  325. package/dist/providers/mailcrab/provider.d.ts +0 -9
  326. package/dist/providers/mailcrab/types.d.ts +0 -22
  327. package/dist/providers/mailersend/provider.d.ts +0 -7
  328. package/dist/providers/mailersend/types.d.ts +0 -43
  329. package/dist/providers/mailgun/provider.d.ts +0 -7
  330. package/dist/providers/mailgun/types.d.ts +0 -65
  331. package/dist/providers/mailjet/provider.d.ts +0 -7
  332. package/dist/providers/mailjet/types.d.ts +0 -64
  333. package/dist/providers/mailomat/provider.d.ts +0 -7
  334. package/dist/providers/mailomat/types.d.ts +0 -32
  335. package/dist/providers/mailpace/provider.d.ts +0 -7
  336. package/dist/providers/mailpace/types.d.ts +0 -44
  337. package/dist/providers/mailtrap/provider.d.ts +0 -7
  338. package/dist/providers/mailtrap/types.d.ts +0 -36
  339. package/dist/providers/mandrill/provider.d.ts +0 -7
  340. package/dist/providers/mandrill/types.d.ts +0 -79
  341. package/dist/providers/mock/provider.d.ts +0 -8
  342. package/dist/providers/mock/types.d.ts +0 -50
  343. package/dist/providers/nodemailer/provider.d.ts +0 -7
  344. package/dist/providers/nodemailer/types.d.ts +0 -30
  345. package/dist/providers/opentelemetry/provider.d.ts +0 -8
  346. package/dist/providers/opentelemetry/types.d.ts +0 -31
  347. package/dist/providers/plunk/provider.d.ts +0 -7
  348. package/dist/providers/plunk/types.d.ts +0 -30
  349. package/dist/providers/postal/provider.d.ts +0 -7
  350. package/dist/providers/postal/types.d.ts +0 -40
  351. package/dist/providers/postmark/provider.d.ts +0 -7
  352. package/dist/providers/postmark/types.d.ts +0 -52
  353. package/dist/providers/provider.d.ts +0 -27
  354. package/dist/providers/resend/provider.d.ts +0 -7
  355. package/dist/providers/resend/types.d.ts +0 -43
  356. package/dist/providers/roundrobin/provider.d.ts +0 -7
  357. package/dist/providers/roundrobin/types.d.ts +0 -19
  358. package/dist/providers/scaleway/provider.d.ts +0 -7
  359. package/dist/providers/scaleway/types.d.ts +0 -36
  360. package/dist/providers/sendgrid/provider.d.ts +0 -7
  361. package/dist/providers/sendgrid/types.d.ts +0 -76
  362. package/dist/providers/smtp/provider.d.ts +0 -7
  363. package/dist/providers/smtp/types.d.ts +0 -63
  364. package/dist/providers/sweego/provider.d.ts +0 -7
  365. package/dist/providers/sweego/types.d.ts +0 -32
  366. package/dist/providers/utils/address-formatter.d.ts +0 -139
  367. package/dist/providers/utils/attachment-processor.d.ts +0 -58
  368. package/dist/providers/utils/index.d.ts +0 -4
  369. package/dist/providers/utils/payload-builder.d.ts +0 -78
  370. package/dist/providers/utils/provider-base.d.ts +0 -69
  371. package/dist/providers/zeptomail/provider.d.ts +0 -7
  372. package/dist/providers/zeptomail/types.d.ts +0 -29
  373. package/dist/template-engines/types.d.ts +0 -8
  374. package/dist/types.d.ts +0 -203
  375. package/dist/utils/build-mime-message.d.ts +0 -8
  376. package/dist/utils/create-logger.d.ts +0 -16
  377. package/dist/utils/format-email-addresses.d.ts +0 -8
  378. package/dist/utils/generate-boundary.d.ts +0 -7
  379. package/dist/utils/generate-message-id.d.ts +0 -6
  380. package/dist/utils/headers-to-record.d.ts +0 -9
  381. package/dist/utils/is-port-available.d.ts +0 -9
  382. package/dist/utils/make-request.d.ts +0 -18
  383. package/dist/utils/retry.d.ts +0 -10
  384. package/dist/utils/sanitize-header.d.ts +0 -14
  385. package/dist/utils/to-base64.d.ts +0 -8
  386. package/dist/utils/validation/check-mx-records.d.ts +0 -42
  387. package/dist/utils/validation/check-mx-records.js +0 -1
  388. package/dist/utils/validation/disposable-email-domains.d.ts +0 -13
  389. package/dist/utils/validation/disposable-email-domains.js +0 -1
  390. package/dist/utils/validation/role-accounts.d.ts +0 -21
  391. package/dist/utils/validation/role-accounts.js +0 -1
  392. package/dist/utils/validation/validate-email-options.d.ts +0 -8
  393. package/dist/utils/validation/verify-email.d.ts +0 -47
  394. package/dist/utils/validation/verify-email.js +0 -1
  395. package/dist/utils/validation/verify-smtp.d.ts +0 -39
  396. package/dist/utils/validation/verify-smtp.js +0 -4
package/CHANGELOG.md CHANGED
@@ -1,3 +1,789 @@
1
+ ## @visulima/email 1.0.0 (2026-07-03)
2
+
3
+ ### ⚠ BREAKING CHANGES
4
+
5
+ * change min node version to 22.13
6
+
7
+ ### Features
8
+
9
+ * **email:** add fail-fast capability guard ([#657](https://github.com/visulima/visulima/issues/657)) ([81f24ab](https://github.com/visulima/visulima/commit/81f24abcde5cb8b6bbbd989a5ad397eefb3292ab))
10
+ * **email:** add sparkpost, netcore and outlook365 providers ([b8efc45](https://github.com/visulima/visulima/commit/b8efc45e273dffa246a4badc1711f01682ea7af5))
11
+ * **email:** emailable-parity verification & enrichment packages ([#718](https://github.com/visulima/visulima/issues/718)) ([e2d8c1e](https://github.com/visulima/visulima/commit/e2d8c1e78e3e0c2548ece87b20d730dab60f677a))
12
+ * **email:** inbound, webhooks, deliverability, middleware, queue, events, testing + ARC/i18n/batch ([#671](https://github.com/visulima/visulima/issues/671)) ([2ca23f2](https://github.com/visulima/visulima/commit/2ca23f27ecc5064d693c16bd3f44ccaeaf050888))
13
+ * **web:** auto-generate packages page from workspace metadata ([623e520](https://github.com/visulima/visulima/commit/623e5207693a7fe720f5f2f179593a3654c880e3))
14
+
15
+ ### Bug Fixes
16
+
17
+ * add new package image, fixed readme rendering on npm, fixed building of packages ([b790ba2](https://github.com/visulima/visulima/commit/b790ba253ea07fef83528fd822a678facf021b5f))
18
+ * **docs:** correct code examples found during verification ([8e4f8c4](https://github.com/visulima/visulima/commit/8e4f8c4b0b1664c232fe5ae721b771c72d29a152))
19
+ * **email:** 5 bug fixes ([4e87c42](https://github.com/visulima/visulima/commit/4e87c429a56d68d7a0a09325484ed299ffe6493c))
20
+ * **email:** fixed missing eslint deps ([5bab056](https://github.com/visulima/visulima/commit/5bab056decffc16cdcbcd81d9ec5edb569019255))
21
+ * **email:** harden header sanitization, DSN fallback header, batch counts ([5629850](https://github.com/visulima/visulima/commit/5629850e2fe23710bc11d71820c867e5952c9a1d))
22
+ * **email:** properly fix eslint errors in code ([ec1645b](https://github.com/visulima/visulima/commit/ec1645b3a4c7e471e7af74bac203ce34b950cdd3))
23
+ * **email:** remove remaining eslint suppressions with proper code fixes ([02367a9](https://github.com/visulima/visulima/commit/02367a9212ba72d90274b6e408e98a09ddb03b39))
24
+ * **email:** resolve eslint and formatting issues ([50c6fb1](https://github.com/visulima/visulima/commit/50c6fb14a6f72e40d168fcb57908fa9489417e9a))
25
+ * **email:** resolve eslint and formatting issues ([ad82020](https://github.com/visulima/visulima/commit/ad82020ded7fffdbba89b6befd2522a908cffe81))
26
+ * **email:** resolve eslint errors ([d35b6fe](https://github.com/visulima/visulima/commit/d35b6fe1e6ee4c19456b8428639529c75c0a97d3))
27
+ * **email:** resolve eslint issues and format code ([8fd689c](https://github.com/visulima/visulima/commit/8fd689c12e9c21f7222597bbf99a6fe431b5f0d4))
28
+ * **email:** stop bcc disclosure and fix mime header/dsn handling ([70f0c70](https://github.com/visulima/visulima/commit/70f0c70fe441be5ba9cf15b3e94acbe7cc7af3c2))
29
+ * **email:** unwrap juice ESM default export and align fs error expectation ([0bc2705](https://github.com/visulima/visulima/commit/0bc2705af39a0da641eb50a4e85eff0f954f267e))
30
+ * **email:** update package files ([3e215cf](https://github.com/visulima/visulima/commit/3e215cf0ae366591dd1747a96a7275524e3f5501))
31
+ * **email:** update packem to 2.0.0-alpha.54 ([857a650](https://github.com/visulima/visulima/commit/857a650aea408e49c11f36ebe6e3a7f2e3560c82))
32
+ * **email:** use workspace:* for internal [@visulima](https://github.com/visulima) deps ([4c5c008](https://github.com/visulima/visulima/commit/4c5c008d5c65b3ee26225448eb0a7d6a90a47f5e))
33
+ * **jsdoc-open-api:** combine name and description for path-based YAML parsing ([68e7d23](https://github.com/visulima/visulima/commit/68e7d2395ab97de3221892afe03da27688df7569))
34
+ * **lint:** clear pre-existing eslint rot across packages ([#674](https://github.com/visulima/visulima/issues/674)) ([5354253](https://github.com/visulima/visulima/commit/5354253b163bd50bcefaf8a3fddf831bdb5df32b))
35
+ * **mail:** fixed build ([9c677c6](https://github.com/visulima/visulima/commit/9c677c60c370f59c7def564df25977cf2d97e08c))
36
+ * Remove JSR configuration generation script and generated jsr.json files ([#616](https://github.com/visulima/visulima/issues/616)) ([533744b](https://github.com/visulima/visulima/commit/533744b103b74896941db5b727173e617a27a63b))
37
+ * **storage-client:** percent-encode user fields in defaultFingerprint ([7c78a0f](https://github.com/visulima/visulima/commit/7c78a0f9512e2a673b941d80839e9f1e86b7b5d0))
38
+ * **tests:** revert unsafe vitest autofixes from the lint sweep ([378f27c](https://github.com/visulima/visulima/commit/378f27caa370f1d3188aef2ed36d46839abc88c4))
39
+ * update Node.js engine version requirement to >=22.13 in multiple package.json files for improved compatibility ([b828e9a](https://github.com/visulima/visulima/commit/b828e9aeaebfc798eecddccd90e6ec7560c6d36a))
40
+ * update package OG images across multiple packages ([f08e4dd](https://github.com/visulima/visulima/commit/f08e4dd2b105ccb29c8412020a9c2be36d6c1e9e))
41
+ * **web:** improve build setup with incremental stats caching and prod install ([fe33e75](https://github.com/visulima/visulima/commit/fe33e75827586779b4b3a0c6d57b39f889ee6207))
42
+
43
+ ### Performance Improvements
44
+
45
+ * **email:** lazy-load ical-generator on build ([b6b4466](https://github.com/visulima/visulima/commit/b6b4466d87ddaaed19e5726bef4583bf433403d0))
46
+
47
+ ### Documentation
48
+
49
+ * add missing documentation pages for email, string, and storage-client ([623f8af](https://github.com/visulima/visulima/commit/623f8afd2ea03dd2805fb2d7a9d10083571224bb))
50
+ * prettier-format agent instructions ([71b6414](https://github.com/visulima/visulima/commit/71b6414528780ac82c4e0bb25b5f4f11faba5549))
51
+
52
+ ### Styles
53
+
54
+ * cs fixes ([2a960bb](https://github.com/visulima/visulima/commit/2a960bb1772c9dc70080e2d75d3a0d827034e294))
55
+
56
+ ### Miscellaneous Chores
57
+
58
+ * add fallow code-intelligence across all packages ([a3b4821](https://github.com/visulima/visulima/commit/a3b48215002e86fed20f2973038b5d4a0aa1ce04))
59
+ * apply eslint + prettier autofixes across packages ([c1bb784](https://github.com/visulima/visulima/commit/c1bb7848a0d93d0dfe2960c77e3cda22239c79a0))
60
+ * bump engines.node to ^22.14.0 || >=24.10.0 ([c3d0931](https://github.com/visulima/visulima/commit/c3d0931d1504e4f21ebf50ea680cfa7ce4ba15ce))
61
+ * **ci-stability:** green CI across vis, native, lint, tests, attw ([#651](https://github.com/visulima/visulima/issues/651)) ([d4eb684](https://github.com/visulima/visulima/commit/d4eb684b5f75c818c9251048c605a0ed54a268e3))
62
+ * **email:** add tsconfig.eslint.json for type-aware linting ([65a33f4](https://github.com/visulima/visulima/commit/65a33f4fa4b4771055a0267c679c62658813f746))
63
+ * **email:** apply formatter and lint fixes across providers ([addf346](https://github.com/visulima/visulima/commit/addf346653b0400de7a944b1d5573efc9654fe30))
64
+ * **email:** apply pending changes ([002c978](https://github.com/visulima/visulima/commit/002c9781033e9b2eae08257867b136dccdd11160))
65
+ * **email:** apply prettier and eslint formatting sweep ([6950709](https://github.com/visulima/visulima/commit/69507091f75a9c4783f4ce04927c4152d7a00cd7))
66
+ * **email:** apply prettier and eslint quote-style auto-fix ([ba38e00](https://github.com/visulima/visulima/commit/ba38e009085d304e7810ee9dd63bc1fd22b53ae8))
67
+ * **email:** apply prettier formatting ([362576d](https://github.com/visulima/visulima/commit/362576dd10e86707b0da2be7a27c7f6cb287e340))
68
+ * **email:** clear baseline eslint violations ([1906b0b](https://github.com/visulima/visulima/commit/1906b0bed81cba8d979aa55b5e5d8518263b7b7b))
69
+ * **email:** enforce curly braces and apply lint fixes ([2d82544](https://github.com/visulima/visulima/commit/2d82544bd769eef2935565a4df2c0c98b2cb8262))
70
+ * **email:** expand inline if-return to block syntax ([5e39aa0](https://github.com/visulima/visulima/commit/5e39aa0c563c1dd401337e485728635431f1da13))
71
+ * **email:** housekeeping cleanup ([fac388e](https://github.com/visulima/visulima/commit/fac388edbb3073d912b65c6ad1716dc57257dccf))
72
+ * **email:** migrate .prettierrc.cjs to prettier.config.js ([f0caf3c](https://github.com/visulima/visulima/commit/f0caf3c1e2e5cc13a9a8bd5a14acc4f24e3f3a00))
73
+ * **email:** migrate deps to pnpm catalogs ([487ca7a](https://github.com/visulima/visulima/commit/487ca7abb6db86498e4993afb0cd0113d005af23))
74
+ * **email:** remove empty dependency objects from package.json ([0737b35](https://github.com/visulima/visulima/commit/0737b353aabceefe962dab9971ee0c09e9f055fe))
75
+ * **email:** update dependencies ([f7fb112](https://github.com/visulima/visulima/commit/f7fb1124a030474af12592992bbd95db29db53c1))
76
+ * **email:** update dependencies ([07a300d](https://github.com/visulima/visulima/commit/07a300dcb01259457a41ef3aaf8dd8038d7074ff))
77
+ * **email:** update dependencies ([0250461](https://github.com/visulima/visulima/commit/02504619e8e7ec6ef8e05f323674705656cde7de))
78
+ * **email:** upgrade packem to 2.0.0-alpha.76 ([d2840bc](https://github.com/visulima/visulima/commit/d2840bcc61a1be0a9176645c40875e7e0381a0c3))
79
+ * **fallow:** resolve dead-code findings ([c4125d5](https://github.com/visulima/visulima/commit/c4125d53e03ac9d90115399634535991927a96cc))
80
+ * fixed jsr.json ([5d85e51](https://github.com/visulima/visulima/commit/5d85e5179de38e284ec433b14d77c71a1619c8d6))
81
+ * fixed project.json names and schema path ([964722f](https://github.com/visulima/visulima/commit/964722f691db205c7edb9aa6db29e849a647500b))
82
+ * moved all packages into groups ([0615e9d](https://github.com/visulima/visulima/commit/0615e9d14a8a886e11da529ce150cf31ca973c10))
83
+ * re-sort workspace package.json files via vis sort-package-json ([f625696](https://github.com/visulima/visulima/commit/f625696cfac974325774b3243e1a83c3d23acbd7))
84
+ * **release:** @visulima/email@1.0.0-alpha.10 [skip ci]\n\n## @visulima/email [1.0.0-alpha.10](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.9...@visulima/email@1.0.0-alpha.10) (2026-03-06) ([d650bd8](https://github.com/visulima/visulima/commit/d650bd89faf10bf25c005d2d3493c90e5a1f8118))
85
+ * **release:** @visulima/email@1.0.0-alpha.11 [skip ci]\n\n## @visulima/email [1.0.0-alpha.11](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.10...@visulima/email@1.0.0-alpha.11) (2026-03-26) ([5dc2b92](https://github.com/visulima/visulima/commit/5dc2b928bfcf97ea6fbe2694497f6b67e48c23f2))
86
+ * **release:** @visulima/email@1.0.0-alpha.12 [skip ci]\n\n## @visulima/email [1.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.11...@visulima/email@1.0.0-alpha.12) (2026-03-26) ([85fafce](https://github.com/visulima/visulima/commit/85fafce27024f990c764bdf839fb5204fbf2fdf4))
87
+ * **release:** @visulima/email@1.0.0-alpha.13 [skip ci]\n\n## @visulima/email [1.0.0-alpha.13](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.12...@visulima/email@1.0.0-alpha.13) (2026-04-08) ([417578e](https://github.com/visulima/visulima/commit/417578e7183f3a5d0b8aedc44ca3b024dc6ab6db))
88
+ * **release:** @visulima/email@1.0.0-alpha.14 [skip ci]\n\n## @visulima/email [1.0.0-alpha.14](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.13...@visulima/email@1.0.0-alpha.14) (2026-04-22) ([fc702bf](https://github.com/visulima/visulima/commit/fc702bf38b9953accf51281d960f3c1462bc3fa8))
89
+ * **release:** @visulima/email@1.0.0-alpha.15 [skip ci]\n\n## @visulima/email [1.0.0-alpha.15](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.14...@visulima/email@1.0.0-alpha.15) (2026-04-22) ([2ea125d](https://github.com/visulima/visulima/commit/2ea125d8b2acbb58474a1429cbb68d22398d0f2f))
90
+ * **release:** @visulima/email@1.0.0-alpha.16 [skip ci]\n\n## @visulima/email [1.0.0-alpha.16](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.15...@visulima/email@1.0.0-alpha.16) (2026-04-22) ([d7e7679](https://github.com/visulima/visulima/commit/d7e7679aca578ca22af92d5315cd476f2c2ec2ff))
91
+ * **release:** @visulima/email@1.0.0-alpha.17 [skip ci]\n\n## @visulima/email [1.0.0-alpha.17](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.16...@visulima/email@1.0.0-alpha.17) (2026-04-28) ([aeb2d65](https://github.com/visulima/visulima/commit/aeb2d65efa2d5c49d4b77f31bb03050eec6c71ec))
92
+ * **release:** @visulima/email@1.0.0-alpha.18 [skip ci]\n\n## @visulima/email [1.0.0-alpha.18](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.17...@visulima/email@1.0.0-alpha.18) (2026-04-30) ([693200f](https://github.com/visulima/visulima/commit/693200fc353437a8fbea53b7d1dbad6cf3eb3d58))
93
+ * **release:** @visulima/email@1.0.0-alpha.19 [skip ci]\n\n## @visulima/email [1.0.0-alpha.19](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.18...@visulima/email@1.0.0-alpha.19) (2026-05-04) ([751acb6](https://github.com/visulima/visulima/commit/751acb6cf994573692e3cf891c196d1a2379a3e4))
94
+ * **release:** @visulima/email@1.0.0-alpha.20 [skip ci]\n\n## @visulima/email [1.0.0-alpha.20](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.19...@visulima/email@1.0.0-alpha.20) (2026-05-06) ([20b268f](https://github.com/visulima/visulima/commit/20b268f1b7b252f8de70bf20c6e959548f6cf099))
95
+ * **release:** @visulima/email@1.0.0-alpha.21 [skip ci]\n\n## @visulima/email [1.0.0-alpha.21](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.20...@visulima/email@1.0.0-alpha.21) (2026-05-06) ([9a7e173](https://github.com/visulima/visulima/commit/9a7e173412a3ab24208d4c3c8254827f93d57c37))
96
+ * **release:** @visulima/email@1.0.0-alpha.22 [skip ci]\n\n## @visulima/email [1.0.0-alpha.22](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.21...@visulima/email@1.0.0-alpha.22) (2026-05-07) ([f191727](https://github.com/visulima/visulima/commit/f191727f6b6fac1f98c9fb68ba1ce7db43e4e0a2))
97
+ * **release:** @visulima/email@1.0.0-alpha.23 [skip ci]\n\n## @visulima/email [1.0.0-alpha.23](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.22...@visulima/email@1.0.0-alpha.23) (2026-05-07) ([066ebab](https://github.com/visulima/visulima/commit/066ebabc7787aef49819da9e96c9691c0fc0c93f))
98
+ * **release:** @visulima/email@1.0.0-alpha.24 [skip ci]\n\n## @visulima/email [1.0.0-alpha.24](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.23...@visulima/email@1.0.0-alpha.24) (2026-05-10) ([330da63](https://github.com/visulima/visulima/commit/330da6356dcc54fe2e87c6dcc39f7861034feb7f))
99
+ * **release:** @visulima/email@1.0.0-alpha.25 [skip ci]\n\n## @visulima/email [1.0.0-alpha.25](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.24...@visulima/email@1.0.0-alpha.25) (2026-05-10) ([a076860](https://github.com/visulima/visulima/commit/a076860c90d30a7972b65e582b0a5010bdedee2e))
100
+ * **release:** @visulima/email@1.0.0-alpha.26 [skip ci]\n\n## @visulima/email [1.0.0-alpha.26](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.25...@visulima/email@1.0.0-alpha.26) (2026-05-11) ([347f36a](https://github.com/visulima/visulima/commit/347f36a4842ca0585f12e7f37b116c2d64856c53))
101
+ * **release:** @visulima/email@1.0.0-alpha.27 [skip ci]\n\n## @visulima/email [1.0.0-alpha.27](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.26...@visulima/email@1.0.0-alpha.27) (2026-05-11) ([b19f14a](https://github.com/visulima/visulima/commit/b19f14a7225c34e525d3fc9bda6c724f73393b02))
102
+ * **release:** @visulima/email@1.0.0-alpha.28 [skip ci]\n\n## @visulima/email [1.0.0-alpha.28](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.27...@visulima/email@1.0.0-alpha.28) (2026-05-14) ([e955f97](https://github.com/visulima/visulima/commit/e955f9784c15e1053524c432f87fd015004d3c97))
103
+ * **release:** @visulima/email@1.0.0-alpha.29 [skip ci]\n\n## @visulima/email [1.0.0-alpha.29](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.28...@visulima/email@1.0.0-alpha.29) (2026-05-16) ([210be4a](https://github.com/visulima/visulima/commit/210be4ac72431c66df3512a2ac57bc23b030fad9))
104
+ * **release:** @visulima/email@1.0.0-alpha.3 [skip ci]\n\n## @visulima/email [1.0.0-alpha.3](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.2...@visulima/email@1.0.0-alpha.3) (2025-12-07) ([3526d07](https://github.com/visulima/visulima/commit/3526d0748789e181653d2149b0301cd906340bf2))
105
+ * **release:** @visulima/email@1.0.0-alpha.30 [skip ci]\n\n## @visulima/email [1.0.0-alpha.30](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.29...@visulima/email@1.0.0-alpha.30) (2026-05-19) ([4290506](https://github.com/visulima/visulima/commit/4290506400e68578adc76029b7ca4a9cd1404179))
106
+ * **release:** @visulima/email@1.0.0-alpha.31 [skip ci]\n\n## @visulima/email [1.0.0-alpha.31](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.30...@visulima/email@1.0.0-alpha.31) (2026-05-20) ([a2f561c](https://github.com/visulima/visulima/commit/a2f561cea96e06cb168dc325a5ef6635a090f7fc))
107
+ * **release:** @visulima/email@1.0.0-alpha.32 [skip ci]\n\n## @visulima/email [1.0.0-alpha.32](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.31...@visulima/email@1.0.0-alpha.32) (2026-05-26) ([b9a82a0](https://github.com/visulima/visulima/commit/b9a82a0ec9a0a1bf8b27e5f1b8aba6ce903f239d))
108
+ * **release:** @visulima/email@1.0.0-alpha.33 [skip ci]\n\n## @visulima/email [1.0.0-alpha.33](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.32...@visulima/email@1.0.0-alpha.33) (2026-05-27) ([066dbff](https://github.com/visulima/visulima/commit/066dbff5e7bca9966cdeff77127d442bdf1506d0))
109
+ * **release:** @visulima/email@1.0.0-alpha.34 [skip ci]\n\n## @visulima/email [1.0.0-alpha.34](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.33...@visulima/email@1.0.0-alpha.34) (2026-06-02) ([7fffb48](https://github.com/visulima/visulima/commit/7fffb48072f6657e2b9aa3736ccceea77776a10b))
110
+ * **release:** @visulima/email@1.0.0-alpha.35 [skip ci]\n\n## @visulima/email [1.0.0-alpha.35](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.34...@visulima/email@1.0.0-alpha.35) (2026-06-04) ([271e8f7](https://github.com/visulima/visulima/commit/271e8f766e92dc51b5dd229e823f7e1cb1b1e9b7))
111
+ * **release:** @visulima/email@1.0.0-alpha.36 [skip ci]\n\n## @visulima/email [1.0.0-alpha.36](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.35...@visulima/email@1.0.0-alpha.36) (2026-06-13) ([a86289c](https://github.com/visulima/visulima/commit/a86289c745d9cb527a4a01e9e19e810049c29b55))
112
+ * **release:** @visulima/email@1.0.0-alpha.37 [skip ci]\n\n## @visulima/email [1.0.0-alpha.37](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.36...@visulima/email@1.0.0-alpha.37) (2026-06-19) ([5863978](https://github.com/visulima/visulima/commit/58639789f70304d76a016b60419acc7c2722318f))
113
+ * **release:** @visulima/email@1.0.0-alpha.38 [skip ci]\n\n## @visulima/email [1.0.0-alpha.38](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.37...@visulima/email@1.0.0-alpha.38) (2026-06-19) ([2f526e9](https://github.com/visulima/visulima/commit/2f526e908e39b8d3f4afc1bab2c2d9b5c6f3181a))
114
+ * **release:** @visulima/email@1.0.0-alpha.39 [skip ci]\n\n## @visulima/email [1.0.0-alpha.39](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.38...@visulima/email@1.0.0-alpha.39) (2026-06-19) ([77348b2](https://github.com/visulima/visulima/commit/77348b2182594f984043f833e24288f95f47998f))
115
+ * **release:** @visulima/email@1.0.0-alpha.4 [skip ci]\n\n## @visulima/email [1.0.0-alpha.4](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.3...@visulima/email@1.0.0-alpha.4) (2025-12-08) ([f1329a4](https://github.com/visulima/visulima/commit/f1329a48b7b362475dcab5a3c15b7d8c1fbb77ba))
116
+ * **release:** @visulima/email@1.0.0-alpha.40 [skip ci]\n\n## @visulima/email [1.0.0-alpha.40](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.39...@visulima/email@1.0.0-alpha.40) (2026-06-20) ([f410f66](https://github.com/visulima/visulima/commit/f410f665be72355533b0d46b7997a672182521c2))
117
+ * **release:** @visulima/email@1.0.0-alpha.41 [skip ci]\n\n## @visulima/email [1.0.0-alpha.41](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.40...@visulima/email@1.0.0-alpha.41) (2026-06-20) ([264f291](https://github.com/visulima/visulima/commit/264f29162a3721e718dbd4ffc43d8c5ae10f4ecb))
118
+ * **release:** @visulima/email@1.0.0-alpha.42 [skip ci]\n\n## @visulima/email [1.0.0-alpha.42](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.41...@visulima/email@1.0.0-alpha.42) (2026-06-23) ([b425c2b](https://github.com/visulima/visulima/commit/b425c2bc87954cc4016069cadc706a50422d208e))
119
+ * **release:** @visulima/email@1.0.0-alpha.43 [skip ci]\n\n## @visulima/email [1.0.0-alpha.43](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.42...@visulima/email@1.0.0-alpha.43) (2026-06-23) ([d728857](https://github.com/visulima/visulima/commit/d72885730c392bfb9964af29c14ac6c0a88f6d78))
120
+ * **release:** @visulima/email@1.0.0-alpha.44 [skip ci]\n\n## @visulima/email [1.0.0-alpha.44](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.43...@visulima/email@1.0.0-alpha.44) (2026-06-30) ([0517dc5](https://github.com/visulima/visulima/commit/0517dc5d291eff8098389624c566ce490b5f742a))
121
+ * **release:** @visulima/email@1.0.0-alpha.45 [skip ci]\n\n## @visulima/email [1.0.0-alpha.45](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.44...@visulima/email@1.0.0-alpha.45) (2026-07-01) ([72a7779](https://github.com/visulima/visulima/commit/72a7779529060362fc7646464095714aad54178f))
122
+ * **release:** @visulima/email@1.0.0-alpha.46 [skip ci]\n\n## @visulima/email [1.0.0-alpha.46](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.45...@visulima/email@1.0.0-alpha.46) (2026-07-03) ([630647e](https://github.com/visulima/visulima/commit/630647ea8f07c653b8a9fa6a4f4ae4a0fd04f0e9))
123
+ * **release:** @visulima/email@1.0.0-alpha.47 [skip ci]\n\n## @visulima/email [1.0.0-alpha.47](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.46...@visulima/email@1.0.0-alpha.47) (2026-07-03) ([95e3605](https://github.com/visulima/visulima/commit/95e3605b8fc0a46deaf871b77be3010c70cf2c1b))
124
+ * **release:** @visulima/email@1.0.0-alpha.5 [skip ci]\n\n## @visulima/email [1.0.0-alpha.5](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.4...@visulima/email@1.0.0-alpha.5) (2025-12-10) ([aa5f29e](https://github.com/visulima/visulima/commit/aa5f29e40aff72508ce60491b601d24e4e14347d))
125
+ * **release:** @visulima/email@1.0.0-alpha.6 [skip ci]\n\n## @visulima/email [1.0.0-alpha.6](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.5...@visulima/email@1.0.0-alpha.6) (2025-12-11) ([7618364](https://github.com/visulima/visulima/commit/7618364c03397ab4053d45984afb66d566aa76f8))
126
+ * **release:** @visulima/email@1.0.0-alpha.7 [skip ci]\n\n## @visulima/email [1.0.0-alpha.7](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.6...@visulima/email@1.0.0-alpha.7) (2025-12-13) ([9cde0d3](https://github.com/visulima/visulima/commit/9cde0d30edd153b730177809fde89a0050641b26))
127
+ * **release:** @visulima/email@1.0.0-alpha.8 [skip ci]\n\n## @visulima/email [1.0.0-alpha.8](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.7...@visulima/email@1.0.0-alpha.8) (2025-12-27) ([9dcb99d](https://github.com/visulima/visulima/commit/9dcb99d486bb2c160fdfea703e4c659fd074be03))
128
+ * **release:** @visulima/email@1.0.0-alpha.9 [skip ci]\n\n## @visulima/email [1.0.0-alpha.9](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.8...@visulima/email@1.0.0-alpha.9) (2026-01-17) ([c475e98](https://github.com/visulima/visulima/commit/c475e989f0f2d4efcc04f5d1db19b461e8465102))
129
+ * **repo:** sort package.json keys across all packages ([e1fd9ab](https://github.com/visulima/visulima/commit/e1fd9ab467ef96a98c777da1572ff6a50fcf7e71))
130
+ * sorted package.json ([b47c545](https://github.com/visulima/visulima/commit/b47c545591600fdab17d5cd3a3fbc68b61e199da))
131
+ * update @anolilab/semantic-release-pnpm and @anolilab/semantic-release-preset to versions 3.2.2 and 12.1.2 across multiple package.json files for improved compatibility ([3921626](https://github.com/visulima/visulima/commit/3921626141fe5da398749bf0ba675f1596f18afb))
132
+ * update dependencies across multiple packages to improve compatibility and performance, including upgrading `@anolilab/semantic-release-pnpm` and `@anolilab/semantic-release-preset` to versions 3.2.0 and 12.1.0 respectively, and updating `react`, `react-dom`, and `next` versions to 19.2.1 and 16.0.7 in various package.json files ([aee8fcd](https://github.com/visulima/visulima/commit/aee8fcd796ae9b8d055903260e7150996ea9f53d))
133
+ * update lock file maintenance ([d83e716](https://github.com/visulima/visulima/commit/d83e71697b75d24704185b66bb521a934d2db02d))
134
+ * visulima website ([#591](https://github.com/visulima/visulima/issues/591)) ([59ab2e2](https://github.com/visulima/visulima/commit/59ab2e2befb03e51cd2088956f83d9b87de6d033))
135
+ * year update ([47f4105](https://github.com/visulima/visulima/commit/47f410596ce7190cfea36a073db32e0cec50bbcd))
136
+
137
+ ### Code Refactoring
138
+
139
+ * **email:** use shared processAttachmentContent in 13 providers ([12b3512](https://github.com/visulima/visulima/commit/12b3512c31641d41d2a05a0caf155df85f0af6c8))
140
+ * replace inline import() types with top-level imports ([4569a4c](https://github.com/visulima/visulima/commit/4569a4ca04723da069f985855dcfab292f7347e1))
141
+ * resolve fallow dead-code across 13 packages ([8c458d2](https://github.com/visulima/visulima/commit/8c458d2eb17225ed48fc4bee4569e522912e8c3d))
142
+
143
+ ### Tests
144
+
145
+ * **email:** cover address normalization branches ([128f9d4](https://github.com/visulima/visulima/commit/128f9d485b0007636cf369f0c9a435c50d445794))
146
+ * **email:** cover ahasend request, attachment and availability branches ([747ba3c](https://github.com/visulima/visulima/commit/747ba3cef6b84cd79d82b8441cb250032e9247eb))
147
+ * **email:** cover ahasend send and messageId branches ([b9c5085](https://github.com/visulima/visulima/commit/b9c5085546f2abad3515d9d899a7f40f2b12cb58))
148
+ * **email:** cover angle-bracket first-bracket fallback ([3f6f8b9](https://github.com/visulima/visulima/commit/3f6f8b9c6d44d370140d59146d8446be3a5b035a))
149
+ * **email:** cover attach/embed empty basename fallback ([b5be774](https://github.com/visulima/visulima/commit/b5be7745cfeed21ec92911f1673c712744f2f311))
150
+ * **email:** cover attachment content-type fallbacks ([94bf172](https://github.com/visulima/visulima/commit/94bf172278f65af5c3e4260ae2aeaf7ed35ca67a))
151
+ * **email:** cover attachment default content type ([ac83c50](https://github.com/visulima/visulima/commit/ac83c501a40a874e721d9a58e5e5b0fd6125795e))
152
+ * **email:** cover aws-ses branch paths ([c299c28](https://github.com/visulima/visulima/commit/c299c2873fcc309ce2c6695fb148dfab36bf795d))
153
+ * **email:** cover aws-ses initialize, isAvailable, request errors and SES params ([b0c90c7](https://github.com/visulima/visulima/commit/b0c90c7245d3a68d891e1673e7acf8d6a9f129d7))
154
+ * **email:** cover azure availability non-error branch ([1fea2cb](https://github.com/visulima/visulima/commit/1fea2cb1bd6908ef87b2de109b7e7159015f30ad))
155
+ * **email:** cover azure connection-string auth and send/getEmail branches ([462d4f9](https://github.com/visulima/visulima/commit/462d4f95bb8d59fd459b1cd812640028abf60237))
156
+ * **email:** cover azure getEmail auth, isAvailable status codes and send failure ([d03fe62](https://github.com/visulima/visulima/commit/d03fe62ceffce0598af844453e40daa64817bb0a))
157
+ * **email:** cover brevo getEmail, replyTo array branches, batch and attachments ([e967213](https://github.com/visulima/visulima/commit/e967213b93e24075d62bd6e12e43015fed045dda))
158
+ * **email:** cover brevo send and getEmail branches ([78389b9](https://github.com/visulima/visulima/commit/78389b90d0bf19e89e6e58ecdb07887a1e8618c4))
159
+ * **email:** cover build-mime-message attachment headers and encodings ([1095d47](https://github.com/visulima/visulima/commit/1095d471f8ed38755b3a847f3b39fdb3e7621722))
160
+ * **email:** cover dkim empty-body canonicalization ([b5a7f4c](https://github.com/visulima/visulima/commit/b5a7f4c24ca211d0ae76d8df9a9f667e890cfcc0))
161
+ * **email:** cover dkim-signer canonicalization branches ([d6c0bec](https://github.com/visulima/visulima/commit/d6c0bece326173678650f5a4f30078e35e17cffb))
162
+ * **email:** cover failover init failures and fallbacks ([2cbead7](https://github.com/visulima/visulima/commit/2cbead75a564c25d3f921e80f49b099595927628))
163
+ * **email:** cover failover unnamed-provider init failure ([38e0060](https://github.com/visulima/visulima/commit/38e0060f3cdfc963b6a85d725b7519b0fa188fb6))
164
+ * **email:** cover handlebars register error rethrow ([b740f8f](https://github.com/visulima/visulima/commit/b740f8f2ed121a953cb5e02f81eebef4f172b598))
165
+ * **email:** cover http initialize, availability, and cc/bcc branches ([b2f6509](https://github.com/visulima/visulima/commit/b2f6509c67fd3ba5e4b4e20be8c48965fa0e1928))
166
+ * **email:** cover http send, init, and message-id branches ([62719bd](https://github.com/visulima/visulima/commit/62719bd9e9e9dece8de1e26b44854c73923b4cf8))
167
+ * **email:** cover in-memory cache delete, clear and eviction ([e4b0333](https://github.com/visulima/visulima/commit/e4b03330889d2f5e822fa61b201411991c19d498))
168
+ * **email:** cover infobip request, attachment and availability branches ([2dac360](https://github.com/visulima/visulima/commit/2dac3608200f75f7f795accadf226f242937831b))
169
+ * **email:** cover infobip send and getEmail branches ([4d8719d](https://github.com/visulima/visulima/commit/4d8719db845882f0c52d580b47f040e5533fbae8))
170
+ * **email:** cover Mail logger, sendMany, and global-config merge paths ([bd5c50b](https://github.com/visulima/visulima/commit/bd5c50be8b6aa110086f0c9975440decf1189ab6))
171
+ * **email:** cover mail message replyTo setter ([afe8dae](https://github.com/visulima/visulima/commit/afe8daed7363d7fdd7354b8e3190602fdc635347))
172
+ * **email:** cover mail send and batch branch paths ([b45b1b0](https://github.com/visulima/visulima/commit/b45b1b0e0066a276bee5a6bfddde13a63f7f415b))
173
+ * **email:** cover mail-message auto-text generation ([2c44d7f](https://github.com/visulima/visulima/commit/2c44d7fa6636ca4c88e38504aa988855f6387436))
174
+ * **email:** cover mail-message logger branches ([23b4496](https://github.com/visulima/visulima/commit/23b44963ed8edf4e794544bdcde94f2d3798994a))
175
+ * **email:** cover mailersend request, attachment and availability branches ([999e22c](https://github.com/visulima/visulima/commit/999e22c94828e382f962d3bb695f2a63bc3e985b))
176
+ * **email:** cover mailersend send and getEmail branches ([e20e805](https://github.com/visulima/visulima/commit/e20e8055fc8058a471fd45fb1526a6e35504865e))
177
+ * **email:** cover mailgun getEmail events, tracking flags, form encoding and attachments ([cf63a01](https://github.com/visulima/visulima/commit/cf63a013cdcfc546fb731ad7c9b381b637490bd5))
178
+ * **email:** cover mailgun send and getEmail branches ([3f63011](https://github.com/visulima/visulima/commit/3f63011a43752e8ba4f19e11857843b1f4830557))
179
+ * **email:** cover mailjet getEmail, send failure, campaign fields and attachments ([2f4147f](https://github.com/visulima/visulima/commit/2f4147ff105386ac13700154a2fb5e081fa6d70b))
180
+ * **email:** cover mailjet send and getEmail branches ([d692d34](https://github.com/visulima/visulima/commit/d692d346dc179f9778857d502824b3f68cd0f769))
181
+ * **email:** cover mailomat and mailpace getEmail and edge paths ([519d057](https://github.com/visulima/visulima/commit/519d057b19f23f2157c379595fa041fb17fff189))
182
+ * **email:** cover mailomat getEmail and branch paths ([8b52328](https://github.com/visulima/visulima/commit/8b52328146ccb0f6f2a10ce4652679e13debdb1a))
183
+ * **email:** cover mailomat send/getEmail branch paths ([df5b5a4](https://github.com/visulima/visulima/commit/df5b5a446c8f373d09f5cab3d98280b35d495657))
184
+ * **email:** cover mailpace availability and send branches ([b89b4ad](https://github.com/visulima/visulima/commit/b89b4ad51cde34d58656944a171434d6b2d361d7))
185
+ * **email:** cover mailpace logger branch ([8e4fe77](https://github.com/visulima/visulima/commit/8e4fe779599f5ad43a63c24f7e7e9fa4d5b631ce))
186
+ * **email:** cover mailtrap request, attachment and availability branches ([ee23353](https://github.com/visulima/visulima/commit/ee2335365cf6aac08578e7010b20752768bc3c8d))
187
+ * **email:** cover mailtrap send and getEmail branches ([be3e1a3](https://github.com/visulima/visulima/commit/be3e1a3b85fc49c7f9848d3d5f12b1aa2df18ab8))
188
+ * **email:** cover make-request non-error rejection ([9626626](https://github.com/visulima/visulima/commit/9626626f57afca5b8dcbb1653d9796575a17d666))
189
+ * **email:** cover make-request timeout cleanup, json fallback and body coercion ([3d76d4e](https://github.com/visulima/visulima/commit/3d76d4ee92da4159ea9a5c6d247ee22f680ed3a4))
190
+ * **email:** cover mandrill request, analytics and availability branches ([1233ff3](https://github.com/visulima/visulima/commit/1233ff327f34246ea2363a0b914e88d7c8471d78))
191
+ * **email:** cover mandrill send and template branches ([297754f](https://github.com/visulima/visulima/commit/297754f8aa984269da98a082e8252b4cca9f1fc2))
192
+ * **email:** cover mock init, recipient, and response branches ([5b301f5](https://github.com/visulima/visulima/commit/5b301f5d8de4bc0778379d9b2da8024913f2bcc2))
193
+ * **email:** cover mock provider send/retrieve catch paths ([bb47683](https://github.com/visulima/visulima/commit/bb47683295e249f37cea1ea6bfb6bdda9f29a8d5))
194
+ * **email:** cover mx lookup non-error rejection ([e52a2b6](https://github.com/visulima/visulima/commit/e52a2b663fe795a1c6f8727dc6ea655425c140b0))
195
+ * **email:** cover nodemailer branch paths and fix lint ([6b5b72b](https://github.com/visulima/visulima/commit/6b5b72b0d8404a25d386d9d6cd0b79199550a1ed))
196
+ * **email:** cover opentelemetry branches and fix lint ([6ac926b](https://github.com/visulima/visulima/commit/6ac926b484a229a66ac38c98dbe8e0c47e431ee8))
197
+ * **email:** cover parse-address domain-literal and quoted-local edge cases ([fa909c7](https://github.com/visulima/visulima/commit/fa909c735d849997f99254f5dcfd0a3bf62b4804))
198
+ * **email:** cover parse-address quote after at-sign ([49143f6](https://github.com/visulima/visulima/commit/49143f65e65b317d1da6e42cab7d2c03f1e63fca))
199
+ * **email:** cover payload builder recipient/template branches ([e629d81](https://github.com/visulima/visulima/commit/e629d814c02576c4b24035235b4fdadf4021a61e))
200
+ * **email:** cover plunk getEmail throw and attachment branches ([c24c2bf](https://github.com/visulima/visulima/commit/c24c2bf0e14247a8bd8538b679ba0f869276107a))
201
+ * **email:** cover plunk send/getEmail branch paths ([96c2097](https://github.com/visulima/visulima/commit/96c2097ae3cb3bec00a57a04d768c83cd816c1db))
202
+ * **email:** cover postal request, attachment and availability branches ([8617ce2](https://github.com/visulima/visulima/commit/8617ce2e43a5244a94434a0995367f5bbb4669b3))
203
+ * **email:** cover postal send and getEmail branches ([9e78f76](https://github.com/visulima/visulima/commit/9e78f769faf6dcb38311995d1f26dee11f2727c8))
204
+ * **email:** cover postmark getEmail, template alias, metadata and attachments ([58236b4](https://github.com/visulima/visulima/commit/58236b47e751a893cca3762e11600fd29fecf4a8))
205
+ * **email:** cover postmark send and template branches ([5c298da](https://github.com/visulima/visulima/commit/5c298da4a20d1125d82cb36cb3c324948ab7c228))
206
+ * **email:** cover provider address formatters ([dd4da80](https://github.com/visulima/visulima/commit/dd4da80afd21074fb145b65d75ad44da5bfaac2f))
207
+ * **email:** cover reply-to validation and mx cache-on-error ([16cc9c2](https://github.com/visulima/visulima/commit/16cc9c2f96368d364271a11a72ec679af5d3df0a))
208
+ * **email:** cover resend getEmail, isAvailable, and full send payload ([e0c4981](https://github.com/visulima/visulima/commit/e0c4981ece5a148c941b3239d53e87dd1b38cb48))
209
+ * **email:** cover resend send, getEmail, availability branches ([bfca30d](https://github.com/visulima/visulima/commit/bfca30d7387d9c351f4b201f21e287fc8a7b2eb6))
210
+ * **email:** cover roundrobin init, wait and failover branches ([8b42738](https://github.com/visulima/visulima/commit/8b427389ff13d9b5cf7d79e318522d54be103ac7))
211
+ * **email:** cover roundrobin name fallbacks and retry paths ([57d56c8](https://github.com/visulima/visulima/commit/57d56c8f8fca3ec17088b09000deac6d0c0707c2))
212
+ * **email:** cover scaleway branch and init failure paths ([5ca4c8f](https://github.com/visulima/visulima/commit/5ca4c8fa479b94d675bc5b6982d6dbe8564a4f0c))
213
+ * **email:** cover scaleway getEmail failure and attachment branches ([1fdbb2f](https://github.com/visulima/visulima/commit/1fdbb2f9404e988129ef485c3ec86a10f870b431))
214
+ * **email:** cover sendgrid getEmail, settings, send failure and attachments ([db99fc8](https://github.com/visulima/visulima/commit/db99fc82e925c5c1187c00185d11872ffc5b5247))
215
+ * **email:** cover sendgrid send and availability branches ([5bca44a](https://github.com/visulima/visulima/commit/5bca44a7fdde5cca30d4079b6ab222271eefb8ad))
216
+ * **email:** cover smime aes128/aes192 algorithm aliases ([715482a](https://github.com/visulima/visulima/commit/715482aeabd6b90949e4a0f70cc9c6b11f0e9170))
217
+ * **email:** cover smime build-message and algorithm paths ([49319c1](https://github.com/visulima/visulima/commit/49319c1c540dc5dd2a1b568791e40e246358c91b))
218
+ * **email:** cover smime empty-body and empty recipient ([bc8ab8c](https://github.com/visulima/visulima/commit/bc8ab8cae1f15c466dfb08eef07312081e358484))
219
+ * **email:** cover smtp 551/553 recipient rejections ([7c4630c](https://github.com/visulima/visulima/commit/7c4630c87496d62c371443412ecb22aabab44be7))
220
+ * **email:** cover smtp branch paths ([d0c135e](https://github.com/visulima/visulima/commit/d0c135eaf7739d1f3025060eaf0bf953c7d41d13))
221
+ * **email:** cover smtp provider via mock-socket harness ([08d98f9](https://github.com/visulima/visulima/commit/08d98f95bb677df4212928a9019cfd7cdf9de898))
222
+ * **email:** cover smtp verify cache write error ([eceaf97](https://github.com/visulima/visulima/commit/eceaf9785081ec4418db0e279009a0c2238a87e8))
223
+ * **email:** cover sweego branch and init failure paths ([99abf7a](https://github.com/visulima/visulima/commit/99abf7a3cd42fba2f4808539f4177368f7186de8))
224
+ * **email:** cover sweego getEmail throw and attachment branches ([139d0ca](https://github.com/visulima/visulima/commit/139d0ca18be97d91a92dbbf9dd6da81693375e0c))
225
+ * **email:** cover to-base64 buffer-less fallback and is-port-available ([c8c7454](https://github.com/visulima/visulima/commit/c8c7454bf0bcf9d734384bac21f24739eeb8de84))
226
+ * **email:** cover validate-email hyphen domain rejection paths ([125eab0](https://github.com/visulima/visulima/commit/125eab0d9a543196496aea6de7d8adf3b3441aae))
227
+ * **email:** cover verify-email mx and smtp branches ([70905d1](https://github.com/visulima/visulima/commit/70905d1430e00efea031116ac675ef30919cee51))
228
+ * **email:** cover verify-smtp socket state machine and caching ([2b84cc1](https://github.com/visulima/visulima/commit/2b84cc1e36c01ef067ec571acdcfe614d9b2d1dc))
229
+ * **email:** cover vue-email default data branch ([c51b812](https://github.com/visulima/visulima/commit/c51b812079f98eca77615c0c08fd206dfb67ad39))
230
+ * **email:** cover zeptomail send error detail and exception branches ([ea74549](https://github.com/visulima/visulima/commit/ea745494f693360cc48d12bfb2bd8af66be0395e))
231
+ * **email:** cover zeptomail send error/header/attachment branches ([5b78e15](https://github.com/visulima/visulima/commit/5b78e15a97a8f0070fe172e5dc92b0a3926bb01b))
232
+ * **email:** deepen middleware/queue/events tests ([be80a72](https://github.com/visulima/visulima/commit/be80a725e20661b24650f13b6b524891811b8af8))
233
+ * **email:** fix ical file-url path assertion on windows ([3673d90](https://github.com/visulima/visulima/commit/3673d901f522430bea634f6c93bd286577fa144f))
234
+ * **email:** fix lint in smtp harness test ([87811af](https://github.com/visulima/visulima/commit/87811af4dc6dea41a5a6ea2f96e3af19b168a0b3))
235
+ * **email:** restore precise toHaveBeenCalledWith assertions ([524d4bd](https://github.com/visulima/visulima/commit/524d4bd545c7440e1d26fbb201706a1a0bdc8023))
236
+ * fix failing and flaky package tests ([3f2894e](https://github.com/visulima/visulima/commit/3f2894e816e99f465abb0d3b7d5161af69bbb4ec))
237
+ * improve coverage across packages ([91bd6d3](https://github.com/visulima/visulima/commit/91bd6d3b61736e3c8bd1fc59b0b5955f76a5d323))
238
+ * **repo:** add dist runtime + types integration tests ([32ee300](https://github.com/visulima/visulima/commit/32ee300b7184117a0ddf9f9d390f75f8932d5ed9))
239
+
240
+ ### Build System
241
+
242
+ * **deps:** update email dependencies ([5ce1f27](https://github.com/visulima/visulima/commit/5ce1f27ebecb9f7459db7503e4a8128b1ff8ac01))
243
+ * regenerate bundled-license manifests and types ordering ([af26588](https://github.com/visulima/visulima/commit/af26588d75aaa937fd4862800560bd4070a4878c))
244
+
245
+ ### Continuous Integration
246
+
247
+ * **fallow:** make fallow:health advisory (--report-only) ([d57148e](https://github.com/visulima/visulima/commit/d57148ea0e3556b4c24d8d336b9fa14987f5dc7d))
248
+ * **lint:** raise eslint job timeout and cache slow per-package eslint runs ([#717](https://github.com/visulima/visulima/issues/717)) ([c93878d](https://github.com/visulima/visulima/commit/c93878dbfa1888cc834704448ae6eefd3098597e)), closes [#713](https://github.com/visulima/visulima/issues/713)
249
+
250
+
251
+ ### Dependencies
252
+
253
+ * **@visulima/error:** upgraded to 6.0.0
254
+ * **@visulima/fs:** upgraded to 5.0.0
255
+
256
+ ## @visulima/email [1.0.0-alpha.47](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.46...@visulima/email@1.0.0-alpha.47) (2026-07-03)
257
+
258
+ ## @visulima/email [1.0.0-alpha.46](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.45...@visulima/email@1.0.0-alpha.46) (2026-07-03)
259
+
260
+ ## @visulima/email [1.0.0-alpha.45](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.44...@visulima/email@1.0.0-alpha.45) (2026-07-01)
261
+
262
+ ## @visulima/email [1.0.0-alpha.44](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.43...@visulima/email@1.0.0-alpha.44) (2026-06-30)
263
+
264
+ ### Features
265
+
266
+ * **email:** emailable-parity verification & enrichment packages ([#718](https://github.com/visulima/visulima/issues/718)) ([e2d8c1e](https://github.com/visulima/visulima/commit/e2d8c1e78e3e0c2548ece87b20d730dab60f677a))
267
+
268
+ ### Bug Fixes
269
+
270
+ * **email:** fixed missing eslint deps ([5bab056](https://github.com/visulima/visulima/commit/5bab056decffc16cdcbcd81d9ec5edb569019255))
271
+ * **mail:** fixed build ([9c677c6](https://github.com/visulima/visulima/commit/9c677c60c370f59c7def564df25977cf2d97e08c))
272
+
273
+ ### Styles
274
+
275
+ * cs fixes ([2a960bb](https://github.com/visulima/visulima/commit/2a960bb1772c9dc70080e2d75d3a0d827034e294))
276
+
277
+ ### Miscellaneous Chores
278
+
279
+ * add fallow code-intelligence across all packages ([a3b4821](https://github.com/visulima/visulima/commit/a3b48215002e86fed20f2973038b5d4a0aa1ce04))
280
+ * **fallow:** resolve dead-code findings ([c4125d5](https://github.com/visulima/visulima/commit/c4125d53e03ac9d90115399634535991927a96cc))
281
+
282
+ ### Code Refactoring
283
+
284
+ * **email:** use shared processAttachmentContent in 13 providers ([12b3512](https://github.com/visulima/visulima/commit/12b3512c31641d41d2a05a0caf155df85f0af6c8))
285
+ * resolve fallow dead-code across 13 packages ([8c458d2](https://github.com/visulima/visulima/commit/8c458d2eb17225ed48fc4bee4569e522912e8c3d))
286
+
287
+ ### Tests
288
+
289
+ * fix failing and flaky package tests ([3f2894e](https://github.com/visulima/visulima/commit/3f2894e816e99f465abb0d3b7d5161af69bbb4ec))
290
+
291
+ ### Continuous Integration
292
+
293
+ * **fallow:** make fallow:health advisory (--report-only) ([d57148e](https://github.com/visulima/visulima/commit/d57148ea0e3556b4c24d8d336b9fa14987f5dc7d))
294
+ * **lint:** raise eslint job timeout and cache slow per-package eslint runs ([#717](https://github.com/visulima/visulima/issues/717)) ([c93878d](https://github.com/visulima/visulima/commit/c93878dbfa1888cc834704448ae6eefd3098597e)), closes [#713](https://github.com/visulima/visulima/issues/713)
295
+
296
+
297
+ ### Dependencies
298
+
299
+ * **@visulima/error:** upgraded to 6.0.0-alpha.35
300
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.33
301
+
302
+ ## @visulima/email [1.0.0-alpha.43](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.42...@visulima/email@1.0.0-alpha.43) (2026-06-23)
303
+
304
+ ## @visulima/email [1.0.0-alpha.42](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.41...@visulima/email@1.0.0-alpha.42) (2026-06-23)
305
+
306
+ ## @visulima/email [1.0.0-alpha.41](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.40...@visulima/email@1.0.0-alpha.41) (2026-06-20)
307
+
308
+ ## @visulima/email [1.0.0-alpha.40](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.39...@visulima/email@1.0.0-alpha.40) (2026-06-20)
309
+
310
+ ### Features
311
+
312
+ * **email:** add sparkpost, netcore and outlook365 providers ([b8efc45](https://github.com/visulima/visulima/commit/b8efc45e273dffa246a4badc1711f01682ea7af5))
313
+
314
+ ### Tests
315
+
316
+ * **email:** fix ical file-url path assertion on windows ([3673d90](https://github.com/visulima/visulima/commit/3673d901f522430bea634f6c93bd286577fa144f))
317
+
318
+ ## @visulima/email [1.0.0-alpha.39](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.38...@visulima/email@1.0.0-alpha.39) (2026-06-19)
319
+
320
+ ## @visulima/email [1.0.0-alpha.38](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.37...@visulima/email@1.0.0-alpha.38) (2026-06-19)
321
+
322
+
323
+ ### Dependencies
324
+
325
+ * **@visulima/error:** upgraded to 6.0.0-alpha.34
326
+
327
+ ## @visulima/email [1.0.0-alpha.37](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.36...@visulima/email@1.0.0-alpha.37) (2026-06-19)
328
+
329
+ ## @visulima/email [1.0.0-alpha.36](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.35...@visulima/email@1.0.0-alpha.36) (2026-06-13)
330
+
331
+ ### Bug Fixes
332
+
333
+ * **email:** harden header sanitization, DSN fallback header, batch counts ([5629850](https://github.com/visulima/visulima/commit/5629850e2fe23710bc11d71820c867e5952c9a1d))
334
+ * **email:** stop bcc disclosure and fix mime header/dsn handling ([70f0c70](https://github.com/visulima/visulima/commit/70f0c70fe441be5ba9cf15b3e94acbe7cc7af3c2))
335
+ * **email:** unwrap juice ESM default export and align fs error expectation ([0bc2705](https://github.com/visulima/visulima/commit/0bc2705af39a0da641eb50a4e85eff0f954f267e))
336
+
337
+ ### Performance Improvements
338
+
339
+ * **email:** lazy-load ical-generator on build ([b6b4466](https://github.com/visulima/visulima/commit/b6b4466d87ddaaed19e5726bef4583bf433403d0))
340
+
341
+ ### Miscellaneous Chores
342
+
343
+ * **email:** clear baseline eslint violations ([1906b0b](https://github.com/visulima/visulima/commit/1906b0bed81cba8d979aa55b5e5d8518263b7b7b))
344
+
345
+ ### Tests
346
+
347
+ * **email:** deepen middleware/queue/events tests ([be80a72](https://github.com/visulima/visulima/commit/be80a725e20661b24650f13b6b524891811b8af8))
348
+ * **email:** restore precise toHaveBeenCalledWith assertions ([524d4bd](https://github.com/visulima/visulima/commit/524d4bd545c7440e1d26fbb201706a1a0bdc8023))
349
+
350
+ ### Build System
351
+
352
+ * **deps:** update email dependencies ([5ce1f27](https://github.com/visulima/visulima/commit/5ce1f27ebecb9f7459db7503e4a8128b1ff8ac01))
353
+ * regenerate bundled-license manifests and types ordering ([af26588](https://github.com/visulima/visulima/commit/af26588d75aaa937fd4862800560bd4070a4878c))
354
+
355
+
356
+ ### Dependencies
357
+
358
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.17
359
+ * **@visulima/error:** upgraded to 6.0.0-alpha.33
360
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.32
361
+ * **@visulima/path:** upgraded to 3.0.0-alpha.13
362
+
363
+ ## @visulima/email [1.0.0-alpha.35](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.34...@visulima/email@1.0.0-alpha.35) (2026-06-04)
364
+
365
+ ### Features
366
+
367
+ * **email:** inbound, webhooks, deliverability, middleware, queue, events, testing + ARC/i18n/batch ([#671](https://github.com/visulima/visulima/issues/671)) ([2ca23f2](https://github.com/visulima/visulima/commit/2ca23f27ecc5064d693c16bd3f44ccaeaf050888))
368
+
369
+ ### Bug Fixes
370
+
371
+ * **email:** 5 bug fixes ([4e87c42](https://github.com/visulima/visulima/commit/4e87c429a56d68d7a0a09325484ed299ffe6493c))
372
+ * **lint:** clear pre-existing eslint rot across packages ([#674](https://github.com/visulima/visulima/issues/674)) ([5354253](https://github.com/visulima/visulima/commit/5354253b163bd50bcefaf8a3fddf831bdb5df32b))
373
+
374
+
375
+ ### Dependencies
376
+
377
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.16
378
+ * **@visulima/error:** upgraded to 6.0.0-alpha.32
379
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.30
380
+ * **@visulima/path:** upgraded to 3.0.0-alpha.12
381
+
382
+ ## @visulima/email [1.0.0-alpha.34](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.33...@visulima/email@1.0.0-alpha.34) (2026-06-02)
383
+
384
+ ### Features
385
+
386
+ * **email:** add fail-fast capability guard ([#657](https://github.com/visulima/visulima/issues/657)) ([81f24ab](https://github.com/visulima/visulima/commit/81f24abcde5cb8b6bbbd989a5ad397eefb3292ab))
387
+
388
+ ### Bug Fixes
389
+
390
+ * **tests:** revert unsafe vitest autofixes from the lint sweep ([378f27c](https://github.com/visulima/visulima/commit/378f27caa370f1d3188aef2ed36d46839abc88c4))
391
+
392
+ ### Miscellaneous Chores
393
+
394
+ * apply eslint + prettier autofixes across packages ([c1bb784](https://github.com/visulima/visulima/commit/c1bb7848a0d93d0dfe2960c77e3cda22239c79a0))
395
+
396
+ ### Tests
397
+
398
+ * **email:** cover address normalization branches ([128f9d4](https://github.com/visulima/visulima/commit/128f9d485b0007636cf369f0c9a435c50d445794))
399
+ * **email:** cover ahasend request, attachment and availability branches ([747ba3c](https://github.com/visulima/visulima/commit/747ba3cef6b84cd79d82b8441cb250032e9247eb))
400
+ * **email:** cover ahasend send and messageId branches ([b9c5085](https://github.com/visulima/visulima/commit/b9c5085546f2abad3515d9d899a7f40f2b12cb58))
401
+ * **email:** cover angle-bracket first-bracket fallback ([3f6f8b9](https://github.com/visulima/visulima/commit/3f6f8b9c6d44d370140d59146d8446be3a5b035a))
402
+ * **email:** cover attach/embed empty basename fallback ([b5be774](https://github.com/visulima/visulima/commit/b5be7745cfeed21ec92911f1673c712744f2f311))
403
+ * **email:** cover attachment content-type fallbacks ([94bf172](https://github.com/visulima/visulima/commit/94bf172278f65af5c3e4260ae2aeaf7ed35ca67a))
404
+ * **email:** cover attachment default content type ([ac83c50](https://github.com/visulima/visulima/commit/ac83c501a40a874e721d9a58e5e5b0fd6125795e))
405
+ * **email:** cover aws-ses branch paths ([c299c28](https://github.com/visulima/visulima/commit/c299c2873fcc309ce2c6695fb148dfab36bf795d))
406
+ * **email:** cover aws-ses initialize, isAvailable, request errors and SES params ([b0c90c7](https://github.com/visulima/visulima/commit/b0c90c7245d3a68d891e1673e7acf8d6a9f129d7))
407
+ * **email:** cover azure availability non-error branch ([1fea2cb](https://github.com/visulima/visulima/commit/1fea2cb1bd6908ef87b2de109b7e7159015f30ad))
408
+ * **email:** cover azure connection-string auth and send/getEmail branches ([462d4f9](https://github.com/visulima/visulima/commit/462d4f95bb8d59fd459b1cd812640028abf60237))
409
+ * **email:** cover azure getEmail auth, isAvailable status codes and send failure ([d03fe62](https://github.com/visulima/visulima/commit/d03fe62ceffce0598af844453e40daa64817bb0a))
410
+ * **email:** cover brevo getEmail, replyTo array branches, batch and attachments ([e967213](https://github.com/visulima/visulima/commit/e967213b93e24075d62bd6e12e43015fed045dda))
411
+ * **email:** cover brevo send and getEmail branches ([78389b9](https://github.com/visulima/visulima/commit/78389b90d0bf19e89e6e58ecdb07887a1e8618c4))
412
+ * **email:** cover build-mime-message attachment headers and encodings ([1095d47](https://github.com/visulima/visulima/commit/1095d471f8ed38755b3a847f3b39fdb3e7621722))
413
+ * **email:** cover dkim empty-body canonicalization ([b5a7f4c](https://github.com/visulima/visulima/commit/b5a7f4c24ca211d0ae76d8df9a9f667e890cfcc0))
414
+ * **email:** cover dkim-signer canonicalization branches ([d6c0bec](https://github.com/visulima/visulima/commit/d6c0bece326173678650f5a4f30078e35e17cffb))
415
+ * **email:** cover failover init failures and fallbacks ([2cbead7](https://github.com/visulima/visulima/commit/2cbead75a564c25d3f921e80f49b099595927628))
416
+ * **email:** cover failover unnamed-provider init failure ([38e0060](https://github.com/visulima/visulima/commit/38e0060f3cdfc963b6a85d725b7519b0fa188fb6))
417
+ * **email:** cover handlebars register error rethrow ([b740f8f](https://github.com/visulima/visulima/commit/b740f8f2ed121a953cb5e02f81eebef4f172b598))
418
+ * **email:** cover http initialize, availability, and cc/bcc branches ([b2f6509](https://github.com/visulima/visulima/commit/b2f6509c67fd3ba5e4b4e20be8c48965fa0e1928))
419
+ * **email:** cover http send, init, and message-id branches ([62719bd](https://github.com/visulima/visulima/commit/62719bd9e9e9dece8de1e26b44854c73923b4cf8))
420
+ * **email:** cover in-memory cache delete, clear and eviction ([e4b0333](https://github.com/visulima/visulima/commit/e4b03330889d2f5e822fa61b201411991c19d498))
421
+ * **email:** cover infobip request, attachment and availability branches ([2dac360](https://github.com/visulima/visulima/commit/2dac3608200f75f7f795accadf226f242937831b))
422
+ * **email:** cover infobip send and getEmail branches ([4d8719d](https://github.com/visulima/visulima/commit/4d8719db845882f0c52d580b47f040e5533fbae8))
423
+ * **email:** cover Mail logger, sendMany, and global-config merge paths ([bd5c50b](https://github.com/visulima/visulima/commit/bd5c50be8b6aa110086f0c9975440decf1189ab6))
424
+ * **email:** cover mail message replyTo setter ([afe8dae](https://github.com/visulima/visulima/commit/afe8daed7363d7fdd7354b8e3190602fdc635347))
425
+ * **email:** cover mail send and batch branch paths ([b45b1b0](https://github.com/visulima/visulima/commit/b45b1b0e0066a276bee5a6bfddde13a63f7f415b))
426
+ * **email:** cover mail-message auto-text generation ([2c44d7f](https://github.com/visulima/visulima/commit/2c44d7fa6636ca4c88e38504aa988855f6387436))
427
+ * **email:** cover mail-message logger branches ([23b4496](https://github.com/visulima/visulima/commit/23b44963ed8edf4e794544bdcde94f2d3798994a))
428
+ * **email:** cover mailersend request, attachment and availability branches ([999e22c](https://github.com/visulima/visulima/commit/999e22c94828e382f962d3bb695f2a63bc3e985b))
429
+ * **email:** cover mailersend send and getEmail branches ([e20e805](https://github.com/visulima/visulima/commit/e20e8055fc8058a471fd45fb1526a6e35504865e))
430
+ * **email:** cover mailgun getEmail events, tracking flags, form encoding and attachments ([cf63a01](https://github.com/visulima/visulima/commit/cf63a013cdcfc546fb731ad7c9b381b637490bd5))
431
+ * **email:** cover mailgun send and getEmail branches ([3f63011](https://github.com/visulima/visulima/commit/3f63011a43752e8ba4f19e11857843b1f4830557))
432
+ * **email:** cover mailjet getEmail, send failure, campaign fields and attachments ([2f4147f](https://github.com/visulima/visulima/commit/2f4147ff105386ac13700154a2fb5e081fa6d70b))
433
+ * **email:** cover mailjet send and getEmail branches ([d692d34](https://github.com/visulima/visulima/commit/d692d346dc179f9778857d502824b3f68cd0f769))
434
+ * **email:** cover mailomat and mailpace getEmail and edge paths ([519d057](https://github.com/visulima/visulima/commit/519d057b19f23f2157c379595fa041fb17fff189))
435
+ * **email:** cover mailomat getEmail and branch paths ([8b52328](https://github.com/visulima/visulima/commit/8b52328146ccb0f6f2a10ce4652679e13debdb1a))
436
+ * **email:** cover mailomat send/getEmail branch paths ([df5b5a4](https://github.com/visulima/visulima/commit/df5b5a446c8f373d09f5cab3d98280b35d495657))
437
+ * **email:** cover mailpace availability and send branches ([b89b4ad](https://github.com/visulima/visulima/commit/b89b4ad51cde34d58656944a171434d6b2d361d7))
438
+ * **email:** cover mailpace logger branch ([8e4fe77](https://github.com/visulima/visulima/commit/8e4fe779599f5ad43a63c24f7e7e9fa4d5b631ce))
439
+ * **email:** cover mailtrap request, attachment and availability branches ([ee23353](https://github.com/visulima/visulima/commit/ee2335365cf6aac08578e7010b20752768bc3c8d))
440
+ * **email:** cover mailtrap send and getEmail branches ([be3e1a3](https://github.com/visulima/visulima/commit/be3e1a3b85fc49c7f9848d3d5f12b1aa2df18ab8))
441
+ * **email:** cover make-request non-error rejection ([9626626](https://github.com/visulima/visulima/commit/9626626f57afca5b8dcbb1653d9796575a17d666))
442
+ * **email:** cover make-request timeout cleanup, json fallback and body coercion ([3d76d4e](https://github.com/visulima/visulima/commit/3d76d4ee92da4159ea9a5c6d247ee22f680ed3a4))
443
+ * **email:** cover mandrill request, analytics and availability branches ([1233ff3](https://github.com/visulima/visulima/commit/1233ff327f34246ea2363a0b914e88d7c8471d78))
444
+ * **email:** cover mandrill send and template branches ([297754f](https://github.com/visulima/visulima/commit/297754f8aa984269da98a082e8252b4cca9f1fc2))
445
+ * **email:** cover mock init, recipient, and response branches ([5b301f5](https://github.com/visulima/visulima/commit/5b301f5d8de4bc0778379d9b2da8024913f2bcc2))
446
+ * **email:** cover mock provider send/retrieve catch paths ([bb47683](https://github.com/visulima/visulima/commit/bb47683295e249f37cea1ea6bfb6bdda9f29a8d5))
447
+ * **email:** cover mx lookup non-error rejection ([e52a2b6](https://github.com/visulima/visulima/commit/e52a2b663fe795a1c6f8727dc6ea655425c140b0))
448
+ * **email:** cover nodemailer branch paths and fix lint ([6b5b72b](https://github.com/visulima/visulima/commit/6b5b72b0d8404a25d386d9d6cd0b79199550a1ed))
449
+ * **email:** cover opentelemetry branches and fix lint ([6ac926b](https://github.com/visulima/visulima/commit/6ac926b484a229a66ac38c98dbe8e0c47e431ee8))
450
+ * **email:** cover parse-address domain-literal and quoted-local edge cases ([fa909c7](https://github.com/visulima/visulima/commit/fa909c735d849997f99254f5dcfd0a3bf62b4804))
451
+ * **email:** cover parse-address quote after at-sign ([49143f6](https://github.com/visulima/visulima/commit/49143f65e65b317d1da6e42cab7d2c03f1e63fca))
452
+ * **email:** cover payload builder recipient/template branches ([e629d81](https://github.com/visulima/visulima/commit/e629d814c02576c4b24035235b4fdadf4021a61e))
453
+ * **email:** cover plunk getEmail throw and attachment branches ([c24c2bf](https://github.com/visulima/visulima/commit/c24c2bf0e14247a8bd8538b679ba0f869276107a))
454
+ * **email:** cover plunk send/getEmail branch paths ([96c2097](https://github.com/visulima/visulima/commit/96c2097ae3cb3bec00a57a04d768c83cd816c1db))
455
+ * **email:** cover postal request, attachment and availability branches ([8617ce2](https://github.com/visulima/visulima/commit/8617ce2e43a5244a94434a0995367f5bbb4669b3))
456
+ * **email:** cover postal send and getEmail branches ([9e78f76](https://github.com/visulima/visulima/commit/9e78f769faf6dcb38311995d1f26dee11f2727c8))
457
+ * **email:** cover postmark getEmail, template alias, metadata and attachments ([58236b4](https://github.com/visulima/visulima/commit/58236b47e751a893cca3762e11600fd29fecf4a8))
458
+ * **email:** cover postmark send and template branches ([5c298da](https://github.com/visulima/visulima/commit/5c298da4a20d1125d82cb36cb3c324948ab7c228))
459
+ * **email:** cover provider address formatters ([dd4da80](https://github.com/visulima/visulima/commit/dd4da80afd21074fb145b65d75ad44da5bfaac2f))
460
+ * **email:** cover reply-to validation and mx cache-on-error ([16cc9c2](https://github.com/visulima/visulima/commit/16cc9c2f96368d364271a11a72ec679af5d3df0a))
461
+ * **email:** cover resend getEmail, isAvailable, and full send payload ([e0c4981](https://github.com/visulima/visulima/commit/e0c4981ece5a148c941b3239d53e87dd1b38cb48))
462
+ * **email:** cover resend send, getEmail, availability branches ([bfca30d](https://github.com/visulima/visulima/commit/bfca30d7387d9c351f4b201f21e287fc8a7b2eb6))
463
+ * **email:** cover roundrobin init, wait and failover branches ([8b42738](https://github.com/visulima/visulima/commit/8b427389ff13d9b5cf7d79e318522d54be103ac7))
464
+ * **email:** cover roundrobin name fallbacks and retry paths ([57d56c8](https://github.com/visulima/visulima/commit/57d56c8f8fca3ec17088b09000deac6d0c0707c2))
465
+ * **email:** cover scaleway branch and init failure paths ([5ca4c8f](https://github.com/visulima/visulima/commit/5ca4c8fa479b94d675bc5b6982d6dbe8564a4f0c))
466
+ * **email:** cover scaleway getEmail failure and attachment branches ([1fdbb2f](https://github.com/visulima/visulima/commit/1fdbb2f9404e988129ef485c3ec86a10f870b431))
467
+ * **email:** cover sendgrid getEmail, settings, send failure and attachments ([db99fc8](https://github.com/visulima/visulima/commit/db99fc82e925c5c1187c00185d11872ffc5b5247))
468
+ * **email:** cover sendgrid send and availability branches ([5bca44a](https://github.com/visulima/visulima/commit/5bca44a7fdde5cca30d4079b6ab222271eefb8ad))
469
+ * **email:** cover smime aes128/aes192 algorithm aliases ([715482a](https://github.com/visulima/visulima/commit/715482aeabd6b90949e4a0f70cc9c6b11f0e9170))
470
+ * **email:** cover smime build-message and algorithm paths ([49319c1](https://github.com/visulima/visulima/commit/49319c1c540dc5dd2a1b568791e40e246358c91b))
471
+ * **email:** cover smime empty-body and empty recipient ([bc8ab8c](https://github.com/visulima/visulima/commit/bc8ab8cae1f15c466dfb08eef07312081e358484))
472
+ * **email:** cover smtp 551/553 recipient rejections ([7c4630c](https://github.com/visulima/visulima/commit/7c4630c87496d62c371443412ecb22aabab44be7))
473
+ * **email:** cover smtp branch paths ([d0c135e](https://github.com/visulima/visulima/commit/d0c135eaf7739d1f3025060eaf0bf953c7d41d13))
474
+ * **email:** cover smtp provider via mock-socket harness ([08d98f9](https://github.com/visulima/visulima/commit/08d98f95bb677df4212928a9019cfd7cdf9de898))
475
+ * **email:** cover smtp verify cache write error ([eceaf97](https://github.com/visulima/visulima/commit/eceaf9785081ec4418db0e279009a0c2238a87e8))
476
+ * **email:** cover sweego branch and init failure paths ([99abf7a](https://github.com/visulima/visulima/commit/99abf7a3cd42fba2f4808539f4177368f7186de8))
477
+ * **email:** cover sweego getEmail throw and attachment branches ([139d0ca](https://github.com/visulima/visulima/commit/139d0ca18be97d91a92dbbf9dd6da81693375e0c))
478
+ * **email:** cover to-base64 buffer-less fallback and is-port-available ([c8c7454](https://github.com/visulima/visulima/commit/c8c7454bf0bcf9d734384bac21f24739eeb8de84))
479
+ * **email:** cover validate-email hyphen domain rejection paths ([125eab0](https://github.com/visulima/visulima/commit/125eab0d9a543196496aea6de7d8adf3b3441aae))
480
+ * **email:** cover verify-email mx and smtp branches ([70905d1](https://github.com/visulima/visulima/commit/70905d1430e00efea031116ac675ef30919cee51))
481
+ * **email:** cover verify-smtp socket state machine and caching ([2b84cc1](https://github.com/visulima/visulima/commit/2b84cc1e36c01ef067ec571acdcfe614d9b2d1dc))
482
+ * **email:** cover vue-email default data branch ([c51b812](https://github.com/visulima/visulima/commit/c51b812079f98eca77615c0c08fd206dfb67ad39))
483
+ * **email:** cover zeptomail send error detail and exception branches ([ea74549](https://github.com/visulima/visulima/commit/ea745494f693360cc48d12bfb2bd8af66be0395e))
484
+ * **email:** cover zeptomail send error/header/attachment branches ([5b78e15](https://github.com/visulima/visulima/commit/5b78e15a97a8f0070fe172e5dc92b0a3926bb01b))
485
+ * **email:** fix lint in smtp harness test ([87811af](https://github.com/visulima/visulima/commit/87811af4dc6dea41a5a6ea2f96e3af19b168a0b3))
486
+ * improve coverage across packages ([91bd6d3](https://github.com/visulima/visulima/commit/91bd6d3b61736e3c8bd1fc59b0b5955f76a5d323))
487
+
488
+
489
+ ### Dependencies
490
+
491
+ * **@visulima/error:** upgraded to 6.0.0-alpha.31
492
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.29
493
+
494
+ ## @visulima/email [1.0.0-alpha.33](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.32...@visulima/email@1.0.0-alpha.33) (2026-05-27)
495
+
496
+ ### Bug Fixes
497
+
498
+ * **storage-client:** percent-encode user fields in defaultFingerprint ([7c78a0f](https://github.com/visulima/visulima/commit/7c78a0f9512e2a673b941d80839e9f1e86b7b5d0))
499
+
500
+ ### Documentation
501
+
502
+ * prettier-format agent instructions ([71b6414](https://github.com/visulima/visulima/commit/71b6414528780ac82c4e0bb25b5f4f11faba5549))
503
+
504
+ ### Miscellaneous Chores
505
+
506
+ * sorted package.json ([b47c545](https://github.com/visulima/visulima/commit/b47c545591600fdab17d5cd3a3fbc68b61e199da))
507
+
508
+
509
+ ### Dependencies
510
+
511
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.15
512
+ * **@visulima/error:** upgraded to 6.0.0-alpha.30
513
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.28
514
+ * **@visulima/path:** upgraded to 3.0.0-alpha.11
515
+
516
+ ## @visulima/email [1.0.0-alpha.32](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.31...@visulima/email@1.0.0-alpha.32) (2026-05-26)
517
+
518
+ ### Miscellaneous Chores
519
+
520
+ * **ci-stability:** green CI across vis, native, lint, tests, attw ([#651](https://github.com/visulima/visulima/issues/651)) ([d4eb684](https://github.com/visulima/visulima/commit/d4eb684b5f75c818c9251048c605a0ed54a268e3))
521
+ * **repo:** sort package.json keys across all packages ([e1fd9ab](https://github.com/visulima/visulima/commit/e1fd9ab467ef96a98c777da1572ff6a50fcf7e71))
522
+
523
+ ### Tests
524
+
525
+ * **repo:** add dist runtime + types integration tests ([32ee300](https://github.com/visulima/visulima/commit/32ee300b7184117a0ddf9f9d390f75f8932d5ed9))
526
+
527
+
528
+ ### Dependencies
529
+
530
+ * **@visulima/error:** upgraded to 6.0.0-alpha.28
531
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.26
532
+
533
+ ## @visulima/email [1.0.0-alpha.31](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.30...@visulima/email@1.0.0-alpha.31) (2026-05-20)
534
+
535
+
536
+ ### Dependencies
537
+
538
+ * **@visulima/error:** upgraded to 6.0.0-alpha.27
539
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.25
540
+
541
+ ## @visulima/email [1.0.0-alpha.30](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.29...@visulima/email@1.0.0-alpha.30) (2026-05-19)
542
+
543
+
544
+ ### Dependencies
545
+
546
+ * **@visulima/error:** upgraded to 6.0.0-alpha.26
547
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.24
548
+
549
+ ## @visulima/email [1.0.0-alpha.29](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.28...@visulima/email@1.0.0-alpha.29) (2026-05-16)
550
+
551
+
552
+ ### Dependencies
553
+
554
+ * **@visulima/error:** upgraded to 6.0.0-alpha.25
555
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.23
556
+
557
+ ## @visulima/email [1.0.0-alpha.28](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.27...@visulima/email@1.0.0-alpha.28) (2026-05-14)
558
+
559
+ ### Miscellaneous Chores
560
+
561
+ * **email:** apply prettier and eslint formatting sweep ([6950709](https://github.com/visulima/visulima/commit/69507091f75a9c4783f4ce04927c4152d7a00cd7))
562
+
563
+
564
+ ### Dependencies
565
+
566
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.14
567
+ * **@visulima/error:** upgraded to 6.0.0-alpha.24
568
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.22
569
+
570
+ ## @visulima/email [1.0.0-alpha.27](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.26...@visulima/email@1.0.0-alpha.27) (2026-05-11)
571
+
572
+
573
+ ### Dependencies
574
+
575
+ * **@visulima/error:** upgraded to 6.0.0-alpha.23
576
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.21
577
+
578
+ ## @visulima/email [1.0.0-alpha.26](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.25...@visulima/email@1.0.0-alpha.26) (2026-05-11)
579
+
580
+
581
+ ### Dependencies
582
+
583
+ * **@visulima/error:** upgraded to 6.0.0-alpha.22
584
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.20
585
+
586
+ ## @visulima/email [1.0.0-alpha.25](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.24...@visulima/email@1.0.0-alpha.25) (2026-05-10)
587
+
588
+
589
+ ### Dependencies
590
+
591
+ * **@visulima/error:** upgraded to 6.0.0-alpha.21
592
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.19
593
+
594
+ ## @visulima/email [1.0.0-alpha.24](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.23...@visulima/email@1.0.0-alpha.24) (2026-05-10)
595
+
596
+
597
+ ### Dependencies
598
+
599
+ * **@visulima/error:** upgraded to 6.0.0-alpha.20
600
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.18
601
+
602
+ ## @visulima/email [1.0.0-alpha.23](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.22...@visulima/email@1.0.0-alpha.23) (2026-05-07)
603
+
604
+
605
+ ### Dependencies
606
+
607
+ * **@visulima/error:** upgraded to 6.0.0-alpha.19
608
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.17
609
+
610
+ ## @visulima/email [1.0.0-alpha.22](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.21...@visulima/email@1.0.0-alpha.22) (2026-05-07)
611
+
612
+
613
+ ### Dependencies
614
+
615
+ * **@visulima/error:** upgraded to 6.0.0-alpha.18
616
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.16
617
+
618
+ ## @visulima/email [1.0.0-alpha.21](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.20...@visulima/email@1.0.0-alpha.21) (2026-05-06)
619
+
620
+
621
+ ### Dependencies
622
+
623
+ * **@visulima/error:** upgraded to 6.0.0-alpha.17
624
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.15
625
+
626
+ ## @visulima/email [1.0.0-alpha.20](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.19...@visulima/email@1.0.0-alpha.20) (2026-05-06)
627
+
628
+ ### Miscellaneous Chores
629
+
630
+ * **email:** apply prettier and eslint quote-style auto-fix ([ba38e00](https://github.com/visulima/visulima/commit/ba38e009085d304e7810ee9dd63bc1fd22b53ae8))
631
+ * **email:** housekeeping cleanup ([fac388e](https://github.com/visulima/visulima/commit/fac388edbb3073d912b65c6ad1716dc57257dccf))
632
+
633
+
634
+ ### Dependencies
635
+
636
+ * **@visulima/error:** upgraded to 6.0.0-alpha.16
637
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.14
638
+
639
+ ## @visulima/email [1.0.0-alpha.19](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.18...@visulima/email@1.0.0-alpha.19) (2026-05-04)
640
+
641
+
642
+ ### Dependencies
643
+
644
+ * **@visulima/error:** upgraded to 6.0.0-alpha.15
645
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.13
646
+
647
+ ## @visulima/email [1.0.0-alpha.18](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.17...@visulima/email@1.0.0-alpha.18) (2026-04-30)
648
+
649
+
650
+ ### Dependencies
651
+
652
+ * **@visulima/error:** upgraded to 6.0.0-alpha.14
653
+
654
+ ## @visulima/email [1.0.0-alpha.17](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.16...@visulima/email@1.0.0-alpha.17) (2026-04-28)
655
+
656
+ ### Miscellaneous Chores
657
+
658
+ * **email:** upgrade packem to 2.0.0-alpha.76 ([d2840bc](https://github.com/visulima/visulima/commit/d2840bcc61a1be0a9176645c40875e7e0381a0c3))
659
+ * re-sort workspace package.json files via vis sort-package-json ([f625696](https://github.com/visulima/visulima/commit/f625696cfac974325774b3243e1a83c3d23acbd7))
660
+
661
+ ## @visulima/email [1.0.0-alpha.16](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.15...@visulima/email@1.0.0-alpha.16) (2026-04-22)
662
+
663
+ ## @visulima/email [1.0.0-alpha.15](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.14...@visulima/email@1.0.0-alpha.15) (2026-04-22)
664
+
665
+ ## @visulima/email [1.0.0-alpha.14](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.13...@visulima/email@1.0.0-alpha.14) (2026-04-22)
666
+
667
+ ### Bug Fixes
668
+
669
+ * **email:** resolve eslint and formatting issues ([50c6fb1](https://github.com/visulima/visulima/commit/50c6fb14a6f72e40d168fcb57908fa9489417e9a))
670
+ * **email:** resolve eslint and formatting issues ([ad82020](https://github.com/visulima/visulima/commit/ad82020ded7fffdbba89b6befd2522a908cffe81))
671
+ * **email:** resolve eslint issues and format code ([8fd689c](https://github.com/visulima/visulima/commit/8fd689c12e9c21f7222597bbf99a6fe431b5f0d4))
672
+ * Remove JSR configuration generation script and generated jsr.json files ([#616](https://github.com/visulima/visulima/issues/616)) ([533744b](https://github.com/visulima/visulima/commit/533744b103b74896941db5b727173e617a27a63b))
673
+
674
+ ### Miscellaneous Chores
675
+
676
+ * bump engines.node to ^22.14.0 || >=24.10.0 ([c3d0931](https://github.com/visulima/visulima/commit/c3d0931d1504e4f21ebf50ea680cfa7ce4ba15ce))
677
+ * **email:** apply formatter and lint fixes across providers ([addf346](https://github.com/visulima/visulima/commit/addf346653b0400de7a944b1d5573efc9654fe30))
678
+ * **email:** apply pending changes ([002c978](https://github.com/visulima/visulima/commit/002c9781033e9b2eae08257867b136dccdd11160))
679
+ * **email:** enforce curly braces and apply lint fixes ([2d82544](https://github.com/visulima/visulima/commit/2d82544bd769eef2935565a4df2c0c98b2cb8262))
680
+ * fixed jsr.json ([5d85e51](https://github.com/visulima/visulima/commit/5d85e5179de38e284ec433b14d77c71a1619c8d6))
681
+
682
+ ### Code Refactoring
683
+
684
+ * replace inline import() types with top-level imports ([4569a4c](https://github.com/visulima/visulima/commit/4569a4ca04723da069f985855dcfab292f7347e1))
685
+
686
+
687
+ ### Dependencies
688
+
689
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.13
690
+
691
+ ## @visulima/email [1.0.0-alpha.13](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.12...@visulima/email@1.0.0-alpha.13) (2026-04-08)
692
+
693
+ ### Bug Fixes
694
+
695
+ * **email:** properly fix eslint errors in code ([ec1645b](https://github.com/visulima/visulima/commit/ec1645b3a4c7e471e7af74bac203ce34b950cdd3))
696
+ * **email:** remove remaining eslint suppressions with proper code fixes ([02367a9](https://github.com/visulima/visulima/commit/02367a9212ba72d90274b6e408e98a09ddb03b39))
697
+ * **email:** resolve eslint errors ([d35b6fe](https://github.com/visulima/visulima/commit/d35b6fe1e6ee4c19456b8428639529c75c0a97d3))
698
+
699
+ ### Miscellaneous Chores
700
+
701
+ * **email:** add tsconfig.eslint.json for type-aware linting ([65a33f4](https://github.com/visulima/visulima/commit/65a33f4fa4b4771055a0267c679c62658813f746))
702
+ * **email:** apply prettier formatting ([362576d](https://github.com/visulima/visulima/commit/362576dd10e86707b0da2be7a27c7f6cb287e340))
703
+ * **email:** expand inline if-return to block syntax ([5e39aa0](https://github.com/visulima/visulima/commit/5e39aa0c563c1dd401337e485728635431f1da13))
704
+ * **email:** migrate .prettierrc.cjs to prettier.config.js ([f0caf3c](https://github.com/visulima/visulima/commit/f0caf3c1e2e5cc13a9a8bd5a14acc4f24e3f3a00))
705
+ * **email:** remove empty dependency objects from package.json ([0737b35](https://github.com/visulima/visulima/commit/0737b353aabceefe962dab9971ee0c09e9f055fe))
706
+
707
+
708
+ ### Dependencies
709
+
710
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.12
711
+ * **@visulima/error:** upgraded to 6.0.0-alpha.8
712
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.7
713
+ * **@visulima/path:** upgraded to 3.0.0-alpha.8
714
+
715
+ ## @visulima/email [1.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.11...@visulima/email@1.0.0-alpha.12) (2026-03-26)
716
+
717
+ ### Features
718
+
719
+ * **web:** auto-generate packages page from workspace metadata ([623e520](https://github.com/visulima/visulima/commit/623e5207693a7fe720f5f2f179593a3654c880e3))
720
+
721
+
722
+ ### Dependencies
723
+
724
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.11
725
+ * **@visulima/error:** upgraded to 6.0.0-alpha.7
726
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.6
727
+ * **@visulima/path:** upgraded to 3.0.0-alpha.7
728
+
729
+ ## @visulima/email [1.0.0-alpha.11](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.10...@visulima/email@1.0.0-alpha.11) (2026-03-26)
730
+
731
+ ### Bug Fixes
732
+
733
+ * **docs:** correct code examples found during verification ([8e4f8c4](https://github.com/visulima/visulima/commit/8e4f8c4b0b1664c232fe5ae721b771c72d29a152))
734
+ * **email:** use workspace:* for internal [@visulima](https://github.com/visulima) deps ([4c5c008](https://github.com/visulima/visulima/commit/4c5c008d5c65b3ee26225448eb0a7d6a90a47f5e))
735
+ * **web:** improve build setup with incremental stats caching and prod install ([fe33e75](https://github.com/visulima/visulima/commit/fe33e75827586779b4b3a0c6d57b39f889ee6207))
736
+
737
+ ### Documentation
738
+
739
+ * add missing documentation pages for email, string, and storage-client ([623f8af](https://github.com/visulima/visulima/commit/623f8afd2ea03dd2805fb2d7a9d10083571224bb))
740
+
741
+ ### Miscellaneous Chores
742
+
743
+ * **email:** migrate deps to pnpm catalogs ([487ca7a](https://github.com/visulima/visulima/commit/487ca7abb6db86498e4993afb0cd0113d005af23))
744
+ * **email:** update dependencies ([f7fb112](https://github.com/visulima/visulima/commit/f7fb1124a030474af12592992bbd95db29db53c1))
745
+ * visulima website ([#591](https://github.com/visulima/visulima/issues/591)) ([59ab2e2](https://github.com/visulima/visulima/commit/59ab2e2befb03e51cd2088956f83d9b87de6d033))
746
+
747
+
748
+ ### Dependencies
749
+
750
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.10
751
+ * **@visulima/error:** upgraded to 6.0.0-alpha.6
752
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.5
753
+ * **@visulima/path:** upgraded to 3.0.0-alpha.6
754
+
755
+ ## @visulima/email [1.0.0-alpha.10](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.9...@visulima/email@1.0.0-alpha.10) (2026-03-06)
756
+
757
+ ### Bug Fixes
758
+
759
+ * **email:** update packem to 2.0.0-alpha.54 ([857a650](https://github.com/visulima/visulima/commit/857a650aea408e49c11f36ebe6e3a7f2e3560c82))
760
+
761
+ ### Miscellaneous Chores
762
+
763
+ * **email:** update dependencies ([07a300d](https://github.com/visulima/visulima/commit/07a300dcb01259457a41ef3aaf8dd8038d7074ff))
764
+ * **email:** update dependencies ([0250461](https://github.com/visulima/visulima/commit/02504619e8e7ec6ef8e05f323674705656cde7de))
765
+ * update lock file maintenance ([d83e716](https://github.com/visulima/visulima/commit/d83e71697b75d24704185b66bb521a934d2db02d))
766
+ * year update ([47f4105](https://github.com/visulima/visulima/commit/47f410596ce7190cfea36a073db32e0cec50bbcd))
767
+
768
+
769
+ ### Dependencies
770
+
771
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.9
772
+ * **@visulima/error:** upgraded to 6.0.0-alpha.5
773
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.4
774
+ * **@visulima/path:** upgraded to 3.0.0-alpha.5
775
+
776
+ ## @visulima/email [1.0.0-alpha.9](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.8...@visulima/email@1.0.0-alpha.9) (2026-01-17)
777
+
778
+ ### Bug Fixes
779
+
780
+ * **jsdoc-open-api:** combine name and description for path-based YAML parsing ([68e7d23](https://github.com/visulima/visulima/commit/68e7d2395ab97de3221892afe03da27688df7569))
781
+
782
+
783
+ ### Dependencies
784
+
785
+ * **@visulima/disposable-email-domains:** upgraded to 1.0.0-alpha.8
786
+
1
787
  ## @visulima/email [1.0.0-alpha.8](https://github.com/visulima/visulima/compare/@visulima/email@1.0.0-alpha.7...@visulima/email@1.0.0-alpha.8) (2025-12-27)
2
788
 
3
789
  ### Bug Fixes