@upyo/mailgun 0.6.0-dev.311 → 0.6.0-dev.314

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.
package/dist/index.cjs CHANGED
@@ -243,7 +243,7 @@ function truncateErrorBody(text) {
243
243
  * const response = await fetch(url, { method: 'POST', body: formData });
244
244
  * ```
245
245
  */
246
- async function convertMessage(message, config) {
246
+ async function convertMessage(message, config, signal) {
247
247
  const formData = new FormData();
248
248
  formData.append("from", formatAddress(message.sender));
249
249
  for (const recipient of message.recipients) formData.append("to", formatAddress(recipient));
@@ -268,7 +268,7 @@ async function convertMessage(message, config) {
268
268
  }
269
269
  for (const tag of message.tags) formData.append("o:tag", tag);
270
270
  for (const [key, value] of message.headers.entries()) if (!isStandardHeader(key)) formData.append(`h:${key}`, value);
271
- for (const attachment of message.attachments) await appendAttachment(formData, attachment);
271
+ for (const attachment of message.attachments) await appendAttachment(formData, attachment, signal);
272
272
  if (config.tracking !== void 0) formData.append("o:tracking", config.tracking ? "yes" : "no");
273
273
  if (config.clickTracking !== void 0) formData.append("o:tracking-clicks", config.clickTracking ? "yes" : "no");
274
274
  if (config.openTracking !== void 0) formData.append("o:tracking-opens", config.openTracking ? "yes" : "no");
@@ -293,8 +293,8 @@ function formatAddress(address) {
293
293
  * @param formData - The FormData to append to
294
294
  * @param attachment - The attachment to append
295
295
  */
296
- async function appendAttachment(formData, attachment) {
297
- const content = await attachment.content;
296
+ async function appendAttachment(formData, attachment, signal) {
297
+ const content = await (0, __upyo_core.readAttachmentContent)(attachment.content, signal);
298
298
  const buffer = content.buffer instanceof ArrayBuffer ? content.buffer.slice(content.byteOffset, content.byteOffset + content.byteLength) : content.slice();
299
299
  const blob = new Blob([buffer], { type: attachment.contentType });
300
300
  if (attachment.contentId) formData.append("inline", blob, attachment.filename);
@@ -401,7 +401,7 @@ var MailgunTransport = class {
401
401
  async send(message, options) {
402
402
  options?.signal?.throwIfAborted();
403
403
  try {
404
- const formData = await convertMessage(message, this.config);
404
+ const formData = await convertMessage(message, this.config, options?.signal);
405
405
  options?.signal?.throwIfAborted();
406
406
  const response = await this.httpClient.sendMessage(formData, options?.signal);
407
407
  return {
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { combineSignals, createFailedReceipt, parseRetryAfter } from "@upyo/core";
1
+ import { combineSignals, createFailedReceipt, parseRetryAfter, readAttachmentContent } from "@upyo/core";
2
2
 
3
3
  //#region src/config.ts
4
4
  /**
@@ -220,7 +220,7 @@ function truncateErrorBody(text) {
220
220
  * const response = await fetch(url, { method: 'POST', body: formData });
221
221
  * ```
222
222
  */
223
- async function convertMessage(message, config) {
223
+ async function convertMessage(message, config, signal) {
224
224
  const formData = new FormData();
225
225
  formData.append("from", formatAddress(message.sender));
226
226
  for (const recipient of message.recipients) formData.append("to", formatAddress(recipient));
@@ -245,7 +245,7 @@ async function convertMessage(message, config) {
245
245
  }
246
246
  for (const tag of message.tags) formData.append("o:tag", tag);
247
247
  for (const [key, value] of message.headers.entries()) if (!isStandardHeader(key)) formData.append(`h:${key}`, value);
248
- for (const attachment of message.attachments) await appendAttachment(formData, attachment);
248
+ for (const attachment of message.attachments) await appendAttachment(formData, attachment, signal);
249
249
  if (config.tracking !== void 0) formData.append("o:tracking", config.tracking ? "yes" : "no");
250
250
  if (config.clickTracking !== void 0) formData.append("o:tracking-clicks", config.clickTracking ? "yes" : "no");
251
251
  if (config.openTracking !== void 0) formData.append("o:tracking-opens", config.openTracking ? "yes" : "no");
@@ -270,8 +270,8 @@ function formatAddress(address) {
270
270
  * @param formData - The FormData to append to
271
271
  * @param attachment - The attachment to append
272
272
  */
273
- async function appendAttachment(formData, attachment) {
274
- const content = await attachment.content;
273
+ async function appendAttachment(formData, attachment, signal) {
274
+ const content = await readAttachmentContent(attachment.content, signal);
275
275
  const buffer = content.buffer instanceof ArrayBuffer ? content.buffer.slice(content.byteOffset, content.byteOffset + content.byteLength) : content.slice();
276
276
  const blob = new Blob([buffer], { type: attachment.contentType });
277
277
  if (attachment.contentId) formData.append("inline", blob, attachment.filename);
@@ -378,7 +378,7 @@ var MailgunTransport = class {
378
378
  async send(message, options) {
379
379
  options?.signal?.throwIfAborted();
380
380
  try {
381
- const formData = await convertMessage(message, this.config);
381
+ const formData = await convertMessage(message, this.config, options?.signal);
382
382
  options?.signal?.throwIfAborted();
383
383
  const response = await this.httpClient.sendMessage(formData, options?.signal);
384
384
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@upyo/mailgun",
3
- "version": "0.6.0-dev.311",
3
+ "version": "0.6.0-dev.314",
4
4
  "description": "Mailgun transport for Upyo email library",
5
5
  "keywords": [
6
6
  "email",
@@ -53,7 +53,7 @@
53
53
  },
54
54
  "sideEffects": false,
55
55
  "peerDependencies": {
56
- "@upyo/core": "0.6.0-dev.311+375af6f4"
56
+ "@upyo/core": "0.6.0-dev.314+70a7c9c7"
57
57
  },
58
58
  "devDependencies": {
59
59
  "tsdown": "^0.12.7",