@mailwurf/e2e 1.0.0-08357e2 → 1.0.0-4d86a57
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/README.md +6 -6
- package/dist/client.d.ts +11 -5
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +43 -32
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +15 -6
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @mailwurf/e2e
|
|
2
2
|
|
|
3
|
-
`fetch` client for the tenant-scoped Mailwurf API at `/
|
|
3
|
+
`fetch` client for the tenant-scoped Mailwurf API at `/v1`. No Playwright dependency. The app keeps its real mail sender; tests only set the recipient.
|
|
4
4
|
|
|
5
5
|
Public on [npm](https://www.npmjs.com/package/@mailwurf/e2e).
|
|
6
6
|
|
|
@@ -9,9 +9,9 @@ npm install @mailwurf/e2e
|
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
|
-
import {
|
|
12
|
+
import { createMailwurf } from "@mailwurf/e2e";
|
|
13
13
|
|
|
14
|
-
const mailwurf =
|
|
14
|
+
const mailwurf = createMailwurf(process.env.MAILWURF_API_KEY!); // API key (mw_live_…) from Dashboard → API keys
|
|
15
15
|
const inbox = await mailwurf.createInbox();
|
|
16
16
|
|
|
17
17
|
await page.fill("[name=email]", inbox.address);
|
|
@@ -22,10 +22,10 @@ await page.goto(mail.links[0]!);
|
|
|
22
22
|
// mail.otp → "482193"
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
The
|
|
25
|
+
The first argument is the organization key (`mw_live_…`) and is required; `createMailwurf()` throws when it is empty. The package reads no environment variables. It talks to `https://api.mailwurf.io`; pass `apiUrl` only for a self-hosted Mailwurf. A bare host is treated as `https://`:
|
|
26
26
|
|
|
27
27
|
```ts
|
|
28
|
-
|
|
28
|
+
createMailwurf("mw_live_…", { apiUrl: "mailwurf.example.com" });
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
`
|
|
31
|
+
`subject` is a case-insensitive substring. `timeout` is milliseconds.
|
package/dist/client.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { CreateInboxInput, Inbox, ListMessagesOptions, MailwurfOptions, Message, WaitForOptions } from "./types.js";
|
|
2
|
-
export declare const
|
|
1
|
+
import type { CreateInboxInput, Inbox, ListMessagesOptions, MailwurfOptions, Message, SendMessageInput, SentMessage, WaitForOptions } from "./types.js";
|
|
2
|
+
export declare const DEFAULT_API_URL = "https://api.mailwurf.io";
|
|
3
3
|
export declare class Mailwurf {
|
|
4
4
|
#private;
|
|
5
|
-
readonly
|
|
6
|
-
constructor(options?: MailwurfOptions);
|
|
5
|
+
readonly apiUrl: string;
|
|
6
|
+
constructor(apiKey: string, options?: MailwurfOptions);
|
|
7
7
|
health(): Promise<void>;
|
|
8
8
|
createInbox(input?: CreateInboxInput): Promise<MailwurfInbox>;
|
|
9
9
|
getInbox(id: string): Promise<MailwurfInbox>;
|
|
@@ -11,6 +11,7 @@ export declare class Mailwurf {
|
|
|
11
11
|
getMessage(id: string): Promise<Message>;
|
|
12
12
|
listMessages(inboxId: string, options?: ListMessagesOptions): Promise<Message[]>;
|
|
13
13
|
waitFor(inboxId: string, options?: WaitForOptions): Promise<Message>;
|
|
14
|
+
send(inboxId: string, input: SendMessageInput): Promise<SentMessage>;
|
|
14
15
|
deleteInbox(id: string): Promise<void>;
|
|
15
16
|
}
|
|
16
17
|
export declare class MailwurfInbox implements Inbox {
|
|
@@ -21,8 +22,13 @@ export declare class MailwurfInbox implements Inbox {
|
|
|
21
22
|
readonly expiresAt: Date | null;
|
|
22
23
|
constructor(client: Mailwurf, inbox: Inbox);
|
|
23
24
|
waitFor(options?: WaitForOptions): Promise<Message>;
|
|
25
|
+
send(input: SendMessageInput): Promise<SentMessage>;
|
|
24
26
|
messages(options?: ListMessagesOptions): Promise<Message[]>;
|
|
25
27
|
delete(): Promise<void>;
|
|
26
28
|
}
|
|
27
|
-
|
|
29
|
+
/**
|
|
30
|
+
* `apiKey` is the organization key (`mw_live_…`) and is required.
|
|
31
|
+
* `apiUrl` is only needed for a self-hosted Mailwurf.
|
|
32
|
+
*/
|
|
33
|
+
export declare function createMailwurf(apiKey: string, options?: MailwurfOptions): Mailwurf;
|
|
28
34
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAChB,KAAK,EACL,mBAAmB,EACnB,eAAe,EACf,OAAO,EAGP,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAChB,KAAK,EACL,mBAAmB,EACnB,eAAe,EACf,OAAO,EAGP,gBAAgB,EAChB,WAAW,EACX,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,eAAe,4BAA4B,CAAC;AAqDzD,qBAAa,QAAQ;;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAIZ,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAYnD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvB,WAAW,CAAC,KAAK,GAAE,gBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAWjE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAQ5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAQvD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQxC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IASpF,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBxE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAkBpE,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAqC7C;AAED,qBAAa,aAAc,YAAW,KAAK;;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;gBAGpB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK;IAQ1C,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAInD,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAInD,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAI3D,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGxB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,QAAQ,CAEtF"}
|
package/dist/client.js
CHANGED
|
@@ -1,23 +1,15 @@
|
|
|
1
1
|
import { MailwurfError, MailwurfTimeoutError } from "./errors.js";
|
|
2
|
-
export const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (env && env.length > 0) {
|
|
6
|
-
return env;
|
|
7
|
-
}
|
|
8
|
-
return DEFAULT_BASE_URL;
|
|
9
|
-
}
|
|
10
|
-
/** Accepts `api.mailwurf.io` as well as `https://api.mailwurf.io/`. */
|
|
11
|
-
function normalizeBaseUrl(url) {
|
|
2
|
+
export const DEFAULT_API_URL = "https://api.mailwurf.io";
|
|
3
|
+
/** Accepts `mailwurf.example.com` as well as `https://mailwurf.example.com/`. */
|
|
4
|
+
function normalizeApiUrl(url) {
|
|
12
5
|
const trimmed = url.trim().replace(/\/+$/, "");
|
|
13
6
|
return /^https?:\/\//i.test(trimmed) ? trimmed : `https://${trimmed}`;
|
|
14
7
|
}
|
|
15
|
-
function
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return env;
|
|
8
|
+
function requireApiKey(apiKey) {
|
|
9
|
+
if (typeof apiKey !== "string" || apiKey.trim().length === 0) {
|
|
10
|
+
throw new TypeError("Mailwurf: apiKey is required. Pass the organization key (mw_live_…) from the dashboard.");
|
|
19
11
|
}
|
|
20
|
-
return
|
|
12
|
+
return apiKey;
|
|
21
13
|
}
|
|
22
14
|
function asInbox(raw) {
|
|
23
15
|
return {
|
|
@@ -53,23 +45,21 @@ function query(params) {
|
|
|
53
45
|
return s ? `?${s}` : "";
|
|
54
46
|
}
|
|
55
47
|
export class Mailwurf {
|
|
56
|
-
|
|
48
|
+
apiUrl;
|
|
57
49
|
#fetch;
|
|
58
50
|
#apiKey;
|
|
59
|
-
constructor(options = {}) {
|
|
60
|
-
this
|
|
51
|
+
constructor(apiKey, options = {}) {
|
|
52
|
+
this.#apiKey = requireApiKey(apiKey);
|
|
53
|
+
this.apiUrl = normalizeApiUrl(options.apiUrl ?? DEFAULT_API_URL);
|
|
61
54
|
this.#fetch = options.fetch ?? fetch;
|
|
62
|
-
this.#apiKey = options.apiKey ?? defaultApiKey();
|
|
63
55
|
}
|
|
64
56
|
#headers(extra) {
|
|
65
57
|
const headers = new Headers(extra);
|
|
66
|
-
|
|
67
|
-
headers.set("authorization", `Bearer ${this.#apiKey}`);
|
|
68
|
-
}
|
|
58
|
+
headers.set("authorization", `Bearer ${this.#apiKey}`);
|
|
69
59
|
return headers;
|
|
70
60
|
}
|
|
71
61
|
async health() {
|
|
72
|
-
const res = await this.#fetch(`${this.
|
|
62
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/health`);
|
|
73
63
|
await this.#read(res);
|
|
74
64
|
}
|
|
75
65
|
async createInbox(input = {}) {
|
|
@@ -78,39 +68,39 @@ export class Mailwurf {
|
|
|
78
68
|
init.headers = this.#headers({ "content-type": "application/json" });
|
|
79
69
|
init.body = JSON.stringify({ address: input.address });
|
|
80
70
|
}
|
|
81
|
-
const res = await this.#fetch(`${this.
|
|
71
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes`, init);
|
|
82
72
|
const raw = await this.#read(res);
|
|
83
73
|
return this.#wrap(asInbox(raw));
|
|
84
74
|
}
|
|
85
75
|
async getInbox(id) {
|
|
86
|
-
const res = await this.#fetch(`${this.
|
|
76
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes/${encodeURIComponent(id)}`, {
|
|
87
77
|
headers: this.#headers(),
|
|
88
78
|
});
|
|
89
79
|
const raw = await this.#read(res);
|
|
90
80
|
return this.#wrap(asInbox(raw));
|
|
91
81
|
}
|
|
92
82
|
async inboxByAddress(address) {
|
|
93
|
-
const res = await this.#fetch(`${this.
|
|
83
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes${query({ address })}`, {
|
|
94
84
|
headers: this.#headers(),
|
|
95
85
|
});
|
|
96
86
|
const raw = await this.#read(res);
|
|
97
87
|
return this.#wrap(asInbox(raw));
|
|
98
88
|
}
|
|
99
89
|
async getMessage(id) {
|
|
100
|
-
const res = await this.#fetch(`${this.
|
|
90
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/messages/${encodeURIComponent(id)}`, {
|
|
101
91
|
headers: this.#headers(),
|
|
102
92
|
});
|
|
103
93
|
const raw = await this.#read(res);
|
|
104
94
|
return asMessage(raw);
|
|
105
95
|
}
|
|
106
96
|
async listMessages(inboxId, options = {}) {
|
|
107
|
-
const res = await this.#fetch(`${this.
|
|
97
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes/${encodeURIComponent(inboxId)}/messages${query(options)}`, { headers: this.#headers() });
|
|
108
98
|
const raw = await this.#read(res);
|
|
109
99
|
return (raw.messages ?? []).map(asMessage);
|
|
110
100
|
}
|
|
111
101
|
async waitFor(inboxId, options = {}) {
|
|
112
102
|
const timeout = options.timeout ?? 15_000;
|
|
113
|
-
const res = await this.#fetch(`${this.
|
|
103
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes/${encodeURIComponent(inboxId)}/messages/wait${query({
|
|
114
104
|
subject: options.subject,
|
|
115
105
|
after: options.after,
|
|
116
106
|
timeout,
|
|
@@ -121,8 +111,22 @@ export class Mailwurf {
|
|
|
121
111
|
const raw = await this.#read(res);
|
|
122
112
|
return asMessage(raw);
|
|
123
113
|
}
|
|
114
|
+
async send(inboxId, input) {
|
|
115
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes/${encodeURIComponent(inboxId)}/messages`, {
|
|
116
|
+
method: "POST",
|
|
117
|
+
headers: this.#headers({ "content-type": "application/json" }),
|
|
118
|
+
body: JSON.stringify({
|
|
119
|
+
to: input.to,
|
|
120
|
+
subject: input.subject,
|
|
121
|
+
text: input.text ?? "",
|
|
122
|
+
...(input.html ? { html: input.html } : {}),
|
|
123
|
+
...(input.inReplyTo ? { in_reply_to: input.inReplyTo } : {}),
|
|
124
|
+
}),
|
|
125
|
+
});
|
|
126
|
+
return this.#read(res);
|
|
127
|
+
}
|
|
124
128
|
async deleteInbox(id) {
|
|
125
|
-
const res = await this.#fetch(`${this.
|
|
129
|
+
const res = await this.#fetch(`${this.apiUrl}/v1/inboxes/${encodeURIComponent(id)}`, {
|
|
126
130
|
method: "DELETE",
|
|
127
131
|
headers: this.#headers(),
|
|
128
132
|
});
|
|
@@ -173,6 +177,9 @@ export class MailwurfInbox {
|
|
|
173
177
|
waitFor(options) {
|
|
174
178
|
return this.#client.waitFor(this.id, options);
|
|
175
179
|
}
|
|
180
|
+
send(input) {
|
|
181
|
+
return this.#client.send(this.id, input);
|
|
182
|
+
}
|
|
176
183
|
messages(options) {
|
|
177
184
|
return this.#client.listMessages(this.id, options);
|
|
178
185
|
}
|
|
@@ -180,7 +187,11 @@ export class MailwurfInbox {
|
|
|
180
187
|
return this.#client.deleteInbox(this.id);
|
|
181
188
|
}
|
|
182
189
|
}
|
|
183
|
-
|
|
184
|
-
|
|
190
|
+
/**
|
|
191
|
+
* `apiKey` is the organization key (`mw_live_…`) and is required.
|
|
192
|
+
* `apiUrl` is only needed for a self-hosted Mailwurf.
|
|
193
|
+
*/
|
|
194
|
+
export function createMailwurf(apiKey, options = {}) {
|
|
195
|
+
return new Mailwurf(apiKey, options);
|
|
185
196
|
}
|
|
186
197
|
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAclE,MAAM,CAAC,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAEzD,iFAAiF;AACjF,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,EAAE,CAAC;AACxE,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,SAAS,CACjB,yFAAyF,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,OAAO,CAAC,GAAa;IAC5B,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;QACnC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,GAAe;IAChC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;QACtB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,UAAU,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,MAAmD;IAChE,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC;IAChC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACxC,SAAS;QACX,CAAC;QACD,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,OAAO,QAAQ;IACV,MAAM,CAAS;IACf,MAAM,CAAe;IACrB,OAAO,CAAS;IAEzB,YAAY,MAAc,EAAE,UAA2B,EAAE;QACvD,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,KAA8B;QACrC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,YAAY,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAA0B,EAAE;QAC5C,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QACvE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACrE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,aAAa,EAAE,IAAI,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAW,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE;YACnF,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;SACzB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAW,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,cAAc,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;YAC9E,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;SACzB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAW,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,gBAAgB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE;YACpF,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;SACzB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAa,GAAG,CAAC,CAAC;QAC9C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,UAA+B,EAAE;QACnE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAC3B,GAAG,IAAI,CAAC,MAAM,eAAe,kBAAkB,CAAC,OAAO,CAAC,YAAY,KAAK,CAAC,OAAO,CAAC,EAAE,EACpF,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAC7B,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAA6B,GAAG,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,UAA0B,EAAE;QACzD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAC3B,GAAG,IAAI,CAAC,MAAM,eAAe,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,KAAK,CAAC;YAC7E,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO;SACR,CAAC,EAAE,EACJ,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CACrD,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,oBAAoB,EAAE,CAAC;QACnC,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAa,GAAG,CAAC,CAAC;QAC9C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAe,EAAE,KAAuB;QACjD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAC3B,GAAG,IAAI,CAAC,MAAM,eAAe,kBAAkB,CAAC,OAAO,CAAC,WAAW,EACnE;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;YAC9D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;gBACtB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7D,CAAC;SACH,CACF,CAAC;QACF,OAAO,IAAI,CAAC,KAAK,CAAc,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE;YACnF,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;SACzB,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAY;QAChB,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CAAc,GAAa;QACpC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,IAAa,CAAC;QAClB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,OAAO,GACX,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;gBACnF,CAAC,CAAC,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YAC7C,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,MAAM,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,aAAa;IACf,EAAE,CAAS;IACX,OAAO,CAAS;IAChB,SAAS,CAAO;IAChB,SAAS,CAAc;IACvB,OAAO,CAAW;IAE3B,YAAY,MAAgB,EAAE,KAAY;QACxC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACnC,CAAC;IAED,OAAO,CAAC,OAAwB;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,CAAC,KAAuB;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,QAAQ,CAAC,OAA6B;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,UAA2B,EAAE;IAC1E,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { createMailwurf, DEFAULT_API_URL, Mailwurf, MailwurfInbox } from "./client.js";
|
|
2
2
|
export { MailwurfError, MailwurfTimeoutError } from "./errors.js";
|
|
3
|
-
export type { CreateInboxInput, Inbox, ListMessagesOptions, MailwurfOptions, Message, WaitForOptions, } from "./types.js";
|
|
3
|
+
export type { CreateInboxInput, Inbox, ListMessagesOptions, MailwurfOptions, Message, SendMessageInput, SentMessage, WaitForOptions, } from "./types.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EACV,gBAAgB,EAChB,KAAK,EACL,mBAAmB,EACnB,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,cAAc,GACf,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { createMailwurf, DEFAULT_API_URL, Mailwurf, MailwurfInbox } from "./client.js";
|
|
2
2
|
export { MailwurfError, MailwurfTimeoutError } from "./errors.js";
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
export type MailwurfOptions = {
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
* Defaults to `
|
|
5
|
-
* A bare host such as `
|
|
3
|
+
* Origin of a self-hosted Mailwurf API. Calls are made under `/v1`.
|
|
4
|
+
* Defaults to `https://api.mailwurf.io`.
|
|
5
|
+
* A bare host such as `mailwurf.example.com` is treated as `https://`.
|
|
6
6
|
*/
|
|
7
|
-
|
|
8
|
-
/** Organization API key. Defaults to `MAILWURF_API_KEY`. */
|
|
9
|
-
apiKey?: string;
|
|
7
|
+
apiUrl?: string;
|
|
10
8
|
/** Injected in tests. Defaults to global `fetch`. */
|
|
11
9
|
fetch?: typeof fetch;
|
|
12
10
|
};
|
|
@@ -26,6 +24,17 @@ export type ListMessagesOptions = {
|
|
|
26
24
|
subject?: string;
|
|
27
25
|
after?: string;
|
|
28
26
|
};
|
|
27
|
+
export type SendMessageInput = {
|
|
28
|
+
to: string;
|
|
29
|
+
subject: string;
|
|
30
|
+
text?: string;
|
|
31
|
+
html?: string;
|
|
32
|
+
inReplyTo?: string;
|
|
33
|
+
};
|
|
34
|
+
export type SentMessage = {
|
|
35
|
+
id: string;
|
|
36
|
+
status: string;
|
|
37
|
+
};
|
|
29
38
|
export type Inbox = {
|
|
30
39
|
id: string;
|
|
31
40
|
address: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC"}
|