@c9up/rover 0.1.17 → 0.1.18

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.
@@ -69,6 +69,20 @@ export interface CalendarEventOptions {
69
69
  filename?: string;
70
70
  encoding?: string;
71
71
  }
72
+ /**
73
+ * The calendar handed to an `icalEvent(callback)`.
74
+ *
75
+ * Structural, and deliberately not `ICalCalendar`: `ical-generator` is an
76
+ * OPTIONAL peer, so importing its type here would make every consumer install
77
+ * it to typecheck. A caller who has the package gets the real object at
78
+ * runtime and can annotate their own callback with the real type.
79
+ */
80
+ export interface CalendarBuilder {
81
+ createEvent(data: Record<string, unknown>): unknown;
82
+ toString(): string;
83
+ }
84
+ /** Builds the invitation in place (AdonisJS `icalEvent(callback)`). */
85
+ export type CalendarEventCallback = (calendar: CalendarBuilder) => void;
72
86
  /**
73
87
  * A calendar invitation. Exactly one source: inline `content`, a `path` read at
74
88
  * {@link MessageBuilder.build} time, or an `href` the provider fetches.
@@ -328,15 +342,15 @@ export declare class MessageBuilder {
328
342
  /** `List-Help` (AdonisJS `listHelp`). */
329
343
  listHelp(value: ListHeader | ListHeader[] | ListHeader[][]): this;
330
344
  /**
331
- * Attach a calendar invitation from an ICS string (AdonisJS `icalEvent`).
345
+ * Attach a calendar invitation (AdonisJS `icalEvent`).
332
346
  *
333
- * Named deviation: upstream also accepts a `(calendar: ICalCalendar) => void`
334
- * builder, which is `ical-generator`'s API. rover carries no such
335
- * dependency, so it takes the ICS text produced by whichever generator you
336
- * prefer. {@link icalEventFromFile} and {@link icalEventFromUrl} are the
337
- * other two upstream forms, unchanged.
347
+ * Takes either the ICS text or a `(calendar) => void` builder, as upstream
348
+ * does. The builder runs at {@link build} time against an `ical-generator`
349
+ * calendar; that package is an OPTIONAL peer, so passing the text needs
350
+ * nothing installed. {@link icalEventFromFile} and {@link icalEventFromUrl}
351
+ * are the other two upstream forms.
338
352
  */
339
- icalEvent(contents: string, options?: CalendarEventOptions): this;
353
+ icalEvent(contents: string | CalendarEventCallback, options?: CalendarEventOptions): this;
340
354
  /** Calendar invitation read from a file at {@link build} time (AdonisJS `icalEventFromFile`). */
341
355
  icalEventFromFile(file: string | URL, options?: CalendarEventOptions): this;
342
356
  /** Calendar invitation the transport fetches from a URL (AdonisJS `icalEventFromUrl`). */
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBuilder.d.ts","sourceRoot":"","sources":["../src/MessageBuilder.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,IAAI,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAC1B,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,GACvC,MAAM,GAAG,MAAM,EAAE,CAGnB;AAED,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,CAAC,CAAC;IAC5D,mDAAmD;IACnD,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC;IAClE,iFAAiF;IACjF,SAAS,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,uEAAuE;AACvE,MAAM,MAAM,mBAAmB,GAC5B,SAAS,GACT,SAAS,GACT,OAAO,GACP,KAAK,GACL,QAAQ,GACR,SAAS,GACT,SAAS,GACT,gBAAgB,CAAC;AAEpB,wFAAwF;AACxF,MAAM,WAAW,oBAAoB;IACpC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,oBAAoB;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IAC7C,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;CAC5C;AAED,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;CAC5C;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,eAAe,CAAC;AAuBjD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,EAAE,CAyBrE;AAmDD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAC3D,IAAI,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAC3D,KAAK,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC5D;AAED,qBAAa,cAAc;;IAuB1B;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAKhE;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAKtC;;;;;OAKG;IACH,QAAQ,IAAI,QAAQ,CAAC,WAAW,CAAC;IAIjC,MAAM,IAAI,QAAQ,CAAC,WAAW,CAAC;IAQ/B,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAG/C,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAG/C,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAGhD,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAGjD,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAOpD,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;IAIrC;;;;OAIG;IACH,aAAa,CACZ,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,cAAc,KAAK,OAAO,CAAC,GAC9D,OAAO;IASV;;;;;;;;OAQG;IACH,YAAY,CACX,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,EACzC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GACX,OAAO;IAaV;;;;OAIG;IACH,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAQzD;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAOnC,iDAAiD;IACjD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO;IAMjD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAOhD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG/B,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAGjC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG/B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAGhC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOpC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOpC,gBAAgB,CACf,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,cAAc,KAAK,OAAO,CAAC,GAC7D,IAAI;IAUP,2EAA2E;IAC3E,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQtC,sFAAsF;IACtF,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMnC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAOhD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAO3C,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ3C;;;;;;OAMG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IASrD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAK1C,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IACxC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI;IAMhC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IACxC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI;IAMhC,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IACzC,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI;IAMjC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAK7C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKhC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIjE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI;IAKnD,wCAAwC;IACxC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKlC,0DAA0D;IAC1D,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKlC,wDAAwD;IACxD,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAKtC;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAgB7D;;;OAGG;IACH,UAAU,CACT,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,OAAO,EAAE,iBAAiB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAC/C,IAAI;IAYP;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAezE;;;OAGG;IACH,SAAS,CACR,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,iBAAiB,GACzB,IAAI;IAaP,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAKnD;;;;;OAKG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKhD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOhC;;;;OAIG;IACH,aAAa,CACZ,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,GAC/C,IAAI;IAMP;;;;;;;OAOG;IACH,eAAe,CACd,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,EACjD,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9B,IAAI;IAqBP,mDAAmD;IACnD,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,IAAI;IAItE,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,IAAI;IAMjE;;;;;;;;OAQG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAKjE,iGAAiG;IACjG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAQ3E,0FAA0F;IAC1F,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI;IAKnE;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAKhE,sEAAsE;IACtE,IAAI,KAAK,IAAI,oBAAoB,CAEhC;IAED,wCAAwC;IACxC,IAAI,YAAY,IAAI,oBAAoB,CAEvC;IAED;;;;;OAKG;IACH,IAAI,iBAAiB,IAAI,WAAW,CAEnC;IAED;;;;;OAKG;IACG,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAiErD"}
1
+ {"version":3,"file":"MessageBuilder.d.ts","sourceRoot":"","sources":["../src/MessageBuilder.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,8 @@ export class MessageBuilder {
114
114
  headers: {},
115
115
  };
116
116
  #pendingView = null;
117
+ /** An `icalEvent(callback)` waiting for `build()` to run it. */
118
+ #pendingCalendar = null;
117
119
  /**
118
120
  * The templates {@link build} actually rendered. Recorded because `build()`
119
121
  * clears the pending views once they are rendered, and the lifecycle events
@@ -529,15 +531,25 @@ export class MessageBuilder {
529
531
  }
530
532
  // ── Calendar invitations ──────────────────────────────────────────────
531
533
  /**
532
- * Attach a calendar invitation from an ICS string (AdonisJS `icalEvent`).
534
+ * Attach a calendar invitation (AdonisJS `icalEvent`).
533
535
  *
534
- * Named deviation: upstream also accepts a `(calendar: ICalCalendar) => void`
535
- * builder, which is `ical-generator`'s API. rover carries no such
536
- * dependency, so it takes the ICS text produced by whichever generator you
537
- * prefer. {@link icalEventFromFile} and {@link icalEventFromUrl} are the
538
- * other two upstream forms, unchanged.
536
+ * Takes either the ICS text or a `(calendar) => void` builder, as upstream
537
+ * does. The builder runs at {@link build} time against an `ical-generator`
538
+ * calendar; that package is an OPTIONAL peer, so passing the text needs
539
+ * nothing installed. {@link icalEventFromFile} and {@link icalEventFromUrl}
540
+ * are the other two upstream forms.
539
541
  */
540
542
  icalEvent(contents, options) {
543
+ if (typeof contents === "function") {
544
+ // Resolved at `build()`, not here: `ical-generator` is an optional
545
+ // peer that has to be imported dynamically, and the fluent chain
546
+ // stays synchronous — the same deferral `icalEventFromFile` uses to
547
+ // read its file.
548
+ this.#pendingCalendar = { build: contents, options };
549
+ this.#msg.icalEvent = undefined;
550
+ return this;
551
+ }
552
+ this.#pendingCalendar = null;
541
553
  this.#msg.icalEvent = { ...options, content: contents };
542
554
  return this;
543
555
  }
@@ -587,6 +599,13 @@ export class MessageBuilder {
587
599
  * longer clobber each other.
588
600
  */
589
601
  async build(viewsRoot) {
602
+ if (this.#pendingCalendar !== null) {
603
+ this.#msg.icalEvent = {
604
+ ...this.#pendingCalendar.options,
605
+ content: await renderCalendar(this.#pendingCalendar.build),
606
+ };
607
+ this.#pendingCalendar = null;
608
+ }
590
609
  if (this.#pendingView !== null) {
591
610
  this.#renderedViews.html = {
592
611
  template: this.#pendingView.path,
@@ -649,4 +668,43 @@ function addRecipients(list, address, name) {
649
668
  }
650
669
  list.push(formatAddress(address, name));
651
670
  }
671
+ /**
672
+ * Run an `icalEvent(callback)` against a real `ical-generator` calendar.
673
+ *
674
+ * The package is an optional peer: an app that never builds an invitation
675
+ * should not carry an iCalendar library. When one IS built without it
676
+ * installed, say exactly that — the alternative is a `Cannot find module`
677
+ * thrown from inside a mail send, which reads as a mail bug.
678
+ */
679
+ async function renderCalendar(build) {
680
+ let factory;
681
+ try {
682
+ const mod = await import("ical-generator");
683
+ factory = mod.default;
684
+ }
685
+ catch (cause) {
686
+ throw new RoverError("E_MAIL_PROVIDER_CONFIG", "icalEvent(callback) needs the `ical-generator` package, which is not installed.", {
687
+ hint: "Install ical-generator, or pass the ICS yourself with icalEvent(contents).",
688
+ context: {
689
+ reason: cause instanceof Error ? cause.message : String(cause),
690
+ },
691
+ });
692
+ }
693
+ if (typeof factory !== "function") {
694
+ throw new RoverError("E_MAIL_PROVIDER_CONFIG", "`ical-generator` did not export a calendar factory.");
695
+ }
696
+ const calendar = factory();
697
+ if (!isCalendarBuilder(calendar)) {
698
+ throw new RoverError("E_MAIL_PROVIDER_CONFIG", "`ical-generator` returned an object without createEvent()/toString().");
699
+ }
700
+ build(calendar);
701
+ return calendar.toString();
702
+ }
703
+ function isCalendarBuilder(value) {
704
+ return (typeof value === "object" &&
705
+ value !== null &&
706
+ "createEvent" in value &&
707
+ typeof value.createEvent === "function" &&
708
+ typeof value.toString === "function");
709
+ }
652
710
  //# sourceMappingURL=MessageBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBuilder.js","sourceRoot":"","sources":["../src/MessageBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MessageBuilder.js","sourceRoot":"","sources":["../src/MessageBuilder.ts"],"names":[],"mappings":"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"}
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@c9up/rover",
3
- "version": "0.1.17",
3
+ "version": "0.1.18",
4
4
  "description": "Mail transport for Ream — SMTP, log, and pluggable transports",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -64,22 +64,24 @@
64
64
  }
65
65
  },
66
66
  "dependencies": {
67
- "nodemailer": "^9.0.1"
67
+ "nodemailer": "^10.0.1"
68
68
  },
69
69
  "devDependencies": {
70
- "@biomejs/biome": "^2.4.10",
70
+ "@biomejs/biome": "^2.5.12",
71
71
  "@c9up/bay": "^0.2.0",
72
72
  "@c9up/helix": "^0.2.0",
73
73
  "@c9up/ream": "^0.2.0",
74
- "@types/node": "*",
75
- "@types/nodemailer": "^7.0.0",
76
- "@vitest/coverage-v8": "^4.1.2",
77
- "typescript": "^6.0.2",
78
- "vitest": "^4.1.2"
74
+ "@types/node": "^22.20.1",
75
+ "@types/nodemailer": "^8.0.1",
76
+ "@vitest/coverage-v8": "4.1.11",
77
+ "ical-generator": "^11.1.1",
78
+ "typescript": "^6.0.3",
79
+ "vitest": "4.1.11"
79
80
  },
80
81
  "peerDependencies": {
81
82
  "@c9up/helix": "^0.2.0",
82
- "@c9up/ream": "^0.2.0"
83
+ "@c9up/ream": "^0.2.0",
84
+ "ical-generator": ">=8"
83
85
  },
84
86
  "peerDependenciesMeta": {
85
87
  "@c9up/helix": {
@@ -87,6 +89,9 @@
87
89
  },
88
90
  "@c9up/ream": {
89
91
  "optional": true
92
+ },
93
+ "ical-generator": {
94
+ "optional": true
90
95
  }
91
96
  },
92
97
  "files": [
@@ -1,5 +1,5 @@
1
1
  import { copyFileSync, existsSync } from 'node:fs'
2
- import { dirname, join } from 'node:path'
2
+ import { dirname, join, resolve } from 'node:path'
3
3
  import { arch, env, platform } from 'node:process'
4
4
  import { fileURLToPath } from 'node:url'
5
5
 
@@ -26,6 +26,14 @@ const hostSuffixMap = {
26
26
  'win32-x64': 'win32-x64-msvc',
27
27
  }
28
28
 
29
+ // Cargo writes its artifacts under CARGO_TARGET_DIR when that is set — a
30
+ // shared cache, a CI mount — so they are not under this package's `target/` at
31
+ // all. A relative value is resolved against the directory cargo ran in, which
32
+ // is this package root.
33
+ const targetDir = env.CARGO_TARGET_DIR
34
+ ? resolve(root, env.CARGO_TARGET_DIR)
35
+ : join(root, 'target')
36
+
29
37
  const triple = env.CARGO_BUILD_TARGET ?? ''
30
38
  let suffix
31
39
  let os
@@ -35,11 +43,11 @@ if (triple) {
35
43
  if (!entry) throw new Error(`${TAG} unsupported CARGO_BUILD_TARGET: ${triple}`)
36
44
  suffix = entry.suffix
37
45
  os = entry.os
38
- releaseDir = join(root, 'target', triple, 'release')
46
+ releaseDir = join(targetDir, triple, 'release')
39
47
  } else {
40
48
  suffix = hostSuffixMap[`${platform}-${arch}`]
41
49
  os = platform
42
- releaseDir = join(root, 'target', 'release')
50
+ releaseDir = join(targetDir, 'release')
43
51
  if (!suffix) throw new Error(`${TAG} unsupported platform/arch: ${platform}-${arch}`)
44
52
  }
45
53
 
@@ -92,6 +92,22 @@ export interface CalendarEventOptions {
92
92
  encoding?: string;
93
93
  }
94
94
 
95
+ /**
96
+ * The calendar handed to an `icalEvent(callback)`.
97
+ *
98
+ * Structural, and deliberately not `ICalCalendar`: `ical-generator` is an
99
+ * OPTIONAL peer, so importing its type here would make every consumer install
100
+ * it to typecheck. A caller who has the package gets the real object at
101
+ * runtime and can annotate their own callback with the real type.
102
+ */
103
+ export interface CalendarBuilder {
104
+ createEvent(data: Record<string, unknown>): unknown;
105
+ toString(): string;
106
+ }
107
+
108
+ /** Builds the invitation in place (AdonisJS `icalEvent(callback)`). */
109
+ export type CalendarEventCallback = (calendar: CalendarBuilder) => void;
110
+
95
111
  /**
96
112
  * A calendar invitation. Exactly one source: inline `content`, a `path` read at
97
113
  * {@link MessageBuilder.build} time, or an `href` the provider fetches.
@@ -272,6 +288,11 @@ export class MessageBuilder {
272
288
  headers: {},
273
289
  };
274
290
  #pendingView: { path: string; data: Record<string, unknown> } | null = null;
291
+ /** An `icalEvent(callback)` waiting for `build()` to run it. */
292
+ #pendingCalendar: {
293
+ build: CalendarEventCallback;
294
+ options?: CalendarEventOptions;
295
+ } | null = null;
275
296
  /**
276
297
  * The templates {@link build} actually rendered. Recorded because `build()`
277
298
  * clears the pending views once they are rendered, and the lifecycle events
@@ -789,15 +810,28 @@ export class MessageBuilder {
789
810
  // ── Calendar invitations ──────────────────────────────────────────────
790
811
 
791
812
  /**
792
- * Attach a calendar invitation from an ICS string (AdonisJS `icalEvent`).
813
+ * Attach a calendar invitation (AdonisJS `icalEvent`).
793
814
  *
794
- * Named deviation: upstream also accepts a `(calendar: ICalCalendar) => void`
795
- * builder, which is `ical-generator`'s API. rover carries no such
796
- * dependency, so it takes the ICS text produced by whichever generator you
797
- * prefer. {@link icalEventFromFile} and {@link icalEventFromUrl} are the
798
- * other two upstream forms, unchanged.
815
+ * Takes either the ICS text or a `(calendar) => void` builder, as upstream
816
+ * does. The builder runs at {@link build} time against an `ical-generator`
817
+ * calendar; that package is an OPTIONAL peer, so passing the text needs
818
+ * nothing installed. {@link icalEventFromFile} and {@link icalEventFromUrl}
819
+ * are the other two upstream forms.
799
820
  */
800
- icalEvent(contents: string, options?: CalendarEventOptions): this {
821
+ icalEvent(
822
+ contents: string | CalendarEventCallback,
823
+ options?: CalendarEventOptions,
824
+ ): this {
825
+ if (typeof contents === "function") {
826
+ // Resolved at `build()`, not here: `ical-generator` is an optional
827
+ // peer that has to be imported dynamically, and the fluent chain
828
+ // stays synchronous — the same deferral `icalEventFromFile` uses to
829
+ // read its file.
830
+ this.#pendingCalendar = { build: contents, options };
831
+ this.#msg.icalEvent = undefined;
832
+ return this;
833
+ }
834
+ this.#pendingCalendar = null;
801
835
  this.#msg.icalEvent = { ...options, content: contents };
802
836
  return this;
803
837
  }
@@ -854,6 +888,13 @@ export class MessageBuilder {
854
888
  * longer clobber each other.
855
889
  */
856
890
  async build(viewsRoot?: string): Promise<MailMessage> {
891
+ if (this.#pendingCalendar !== null) {
892
+ this.#msg.icalEvent = {
893
+ ...this.#pendingCalendar.options,
894
+ content: await renderCalendar(this.#pendingCalendar.build),
895
+ };
896
+ this.#pendingCalendar = null;
897
+ }
857
898
  if (this.#pendingView !== null) {
858
899
  this.#renderedViews.html = {
859
900
  template: this.#pendingView.path,
@@ -942,3 +983,55 @@ function addRecipients(
942
983
  }
943
984
  list.push(formatAddress(address, name));
944
985
  }
986
+
987
+ /**
988
+ * Run an `icalEvent(callback)` against a real `ical-generator` calendar.
989
+ *
990
+ * The package is an optional peer: an app that never builds an invitation
991
+ * should not carry an iCalendar library. When one IS built without it
992
+ * installed, say exactly that — the alternative is a `Cannot find module`
993
+ * thrown from inside a mail send, which reads as a mail bug.
994
+ */
995
+ async function renderCalendar(build: CalendarEventCallback): Promise<string> {
996
+ let factory: unknown;
997
+ try {
998
+ const mod: { default?: unknown } = await import("ical-generator");
999
+ factory = mod.default;
1000
+ } catch (cause) {
1001
+ throw new RoverError(
1002
+ "E_MAIL_PROVIDER_CONFIG",
1003
+ "icalEvent(callback) needs the `ical-generator` package, which is not installed.",
1004
+ {
1005
+ hint: "Install ical-generator, or pass the ICS yourself with icalEvent(contents).",
1006
+ context: {
1007
+ reason: cause instanceof Error ? cause.message : String(cause),
1008
+ },
1009
+ },
1010
+ );
1011
+ }
1012
+ if (typeof factory !== "function") {
1013
+ throw new RoverError(
1014
+ "E_MAIL_PROVIDER_CONFIG",
1015
+ "`ical-generator` did not export a calendar factory.",
1016
+ );
1017
+ }
1018
+ const calendar: unknown = factory();
1019
+ if (!isCalendarBuilder(calendar)) {
1020
+ throw new RoverError(
1021
+ "E_MAIL_PROVIDER_CONFIG",
1022
+ "`ical-generator` returned an object without createEvent()/toString().",
1023
+ );
1024
+ }
1025
+ build(calendar);
1026
+ return calendar.toString();
1027
+ }
1028
+
1029
+ function isCalendarBuilder(value: unknown): value is CalendarBuilder {
1030
+ return (
1031
+ typeof value === "object" &&
1032
+ value !== null &&
1033
+ "createEvent" in value &&
1034
+ typeof value.createEvent === "function" &&
1035
+ typeof value.toString === "function"
1036
+ );
1037
+ }