run402-mcp 2.20.1 → 2.21.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.
- package/dist/tools/create-mailbox.d.ts.map +1 -1
- package/dist/tools/create-mailbox.js +1 -11
- package/dist/tools/create-mailbox.js.map +1 -1
- package/dist/tools/delete-mailbox-webhook.d.ts +2 -0
- package/dist/tools/delete-mailbox-webhook.d.ts.map +1 -1
- package/dist/tools/delete-mailbox-webhook.js +5 -1
- package/dist/tools/delete-mailbox-webhook.js.map +1 -1
- package/dist/tools/delete-mailbox.js +1 -1
- package/dist/tools/delete-mailbox.js.map +1 -1
- package/dist/tools/get-email-raw.d.ts +2 -0
- package/dist/tools/get-email-raw.d.ts.map +1 -1
- package/dist/tools/get-email-raw.js +5 -1
- package/dist/tools/get-email-raw.js.map +1 -1
- package/dist/tools/get-email.d.ts +2 -0
- package/dist/tools/get-email.d.ts.map +1 -1
- package/dist/tools/get-email.js +5 -1
- package/dist/tools/get-email.js.map +1 -1
- package/dist/tools/get-mailbox-webhook.d.ts +2 -0
- package/dist/tools/get-mailbox-webhook.d.ts.map +1 -1
- package/dist/tools/get-mailbox-webhook.js +5 -1
- package/dist/tools/get-mailbox-webhook.js.map +1 -1
- package/dist/tools/get-mailbox.d.ts +2 -0
- package/dist/tools/get-mailbox.d.ts.map +1 -1
- package/dist/tools/get-mailbox.js +5 -1
- package/dist/tools/get-mailbox.js.map +1 -1
- package/dist/tools/list-emails.d.ts +2 -0
- package/dist/tools/list-emails.d.ts.map +1 -1
- package/dist/tools/list-emails.js +5 -1
- package/dist/tools/list-emails.js.map +1 -1
- package/dist/tools/list-mailbox-webhooks.d.ts +2 -0
- package/dist/tools/list-mailbox-webhooks.d.ts.map +1 -1
- package/dist/tools/list-mailbox-webhooks.js +5 -1
- package/dist/tools/list-mailbox-webhooks.js.map +1 -1
- package/dist/tools/register-mailbox-webhook.d.ts +2 -0
- package/dist/tools/register-mailbox-webhook.d.ts.map +1 -1
- package/dist/tools/register-mailbox-webhook.js +5 -0
- package/dist/tools/register-mailbox-webhook.js.map +1 -1
- package/dist/tools/send-email.d.ts +2 -0
- package/dist/tools/send-email.d.ts.map +1 -1
- package/dist/tools/send-email.js +5 -0
- package/dist/tools/send-email.js.map +1 -1
- package/dist/tools/update-mailbox-webhook.d.ts +2 -0
- package/dist/tools/update-mailbox-webhook.d.ts.map +1 -1
- package/dist/tools/update-mailbox-webhook.js +5 -0
- package/dist/tools/update-mailbox-webhook.js.map +1 -1
- package/package.json +1 -1
- package/sdk/dist/namespaces/email.d.ts +65 -16
- package/sdk/dist/namespaces/email.d.ts.map +1 -1
- package/sdk/dist/namespaces/email.js +105 -106
- package/sdk/dist/namespaces/email.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-mailbox.d.ts","sourceRoot":"","sources":["../../src/tools/create-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,mBAAmB;;;CAO/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"create-mailbox.d.ts","sourceRoot":"","sources":["../../src/tools/create-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,mBAAmB;;;CAO/B,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA0BjF"}
|
|
@@ -10,20 +10,10 @@ export const createMailboxSchema = {
|
|
|
10
10
|
export async function handleCreateMailbox(args) {
|
|
11
11
|
try {
|
|
12
12
|
const body = await getSdk().email.createMailbox(args.project_id, args.slug);
|
|
13
|
-
// When the SDK returned the existing mailbox on 409, `status`/`slug` are absent.
|
|
14
|
-
const bodyWithStatus = body;
|
|
15
|
-
if (bodyWithStatus.status) {
|
|
16
|
-
return {
|
|
17
|
-
content: [{
|
|
18
|
-
type: "text",
|
|
19
|
-
text: `## Mailbox Created\n\n- **Address:** ${bodyWithStatus.address}\n- **Mailbox ID:** \`${bodyWithStatus.mailbox_id}\`\n- **Status:** ${bodyWithStatus.status}\n\nUse \`send_email\` to send template-based emails from this mailbox.`,
|
|
20
|
-
}],
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
13
|
return {
|
|
24
14
|
content: [{
|
|
25
15
|
type: "text",
|
|
26
|
-
text: `## Mailbox
|
|
16
|
+
text: `## Mailbox Created\n\n- **Address:** ${body.address}\n- **Mailbox ID:** \`${body.mailbox_id}\`\n- **Status:** ${body.status}\n\nUse \`send_email\` to send template-based emails from this mailbox.`,
|
|
27
17
|
}],
|
|
28
18
|
};
|
|
29
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-mailbox.js","sourceRoot":"","sources":["../../src/tools/create-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACzE,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,CACP,qHAAqH,CACtH;CACJ,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAGzC;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5E,
|
|
1
|
+
{"version":3,"file":"create-mailbox.js","sourceRoot":"","sources":["../../src/tools/create-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACzE,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,CACP,qHAAqH,CACtH;CACJ,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAGzC;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5E,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,wCAAwC,IAAI,CAAC,OAAO,yBAAyB,IAAI,CAAC,UAAU,qBAAqB,IAAI,CAAC,MAAM,yEAAyE;iBAC5M,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtG,CAAC;QACD,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oFAAoF,EAAE,CAAC;gBACvH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mDAAmD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACnH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -2,10 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
export declare const deleteMailboxWebhookSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
webhook_id: z.ZodString;
|
|
5
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
5
6
|
};
|
|
6
7
|
export declare function handleDeleteMailboxWebhook(args: {
|
|
7
8
|
project_id: string;
|
|
8
9
|
webhook_id: string;
|
|
10
|
+
mailbox?: string;
|
|
9
11
|
}): Promise<{
|
|
10
12
|
content: Array<{
|
|
11
13
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/delete-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,0BAA0B
|
|
1
|
+
{"version":3,"file":"delete-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/delete-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,0BAA0B;;;;CAOtC,CAAC;AAEF,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAWjF"}
|
|
@@ -4,10 +4,14 @@ import { mapSdkError } from "../errors.js";
|
|
|
4
4
|
export const deleteMailboxWebhookSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
6
|
webhook_id: z.string().describe("The webhook ID (whk_...)"),
|
|
7
|
+
mailbox: z
|
|
8
|
+
.string()
|
|
9
|
+
.optional()
|
|
10
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
7
11
|
};
|
|
8
12
|
export async function handleDeleteMailboxWebhook(args) {
|
|
9
13
|
try {
|
|
10
|
-
await getSdk().email.webhooks.delete(args.project_id, args.webhook_id);
|
|
14
|
+
await getSdk().email.webhooks.delete(args.project_id, args.webhook_id, { mailbox: args.mailbox });
|
|
11
15
|
return { content: [{ type: "text", text: `Webhook \`${args.webhook_id}\` deleted.` }] };
|
|
12
16
|
}
|
|
13
17
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/delete-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/delete-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,IAIhD;IACC,IAAI,CAAC;QACH,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAClG,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,IAAI,CAAC,UAAU,aAAa,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -6,7 +6,7 @@ export const deleteMailboxSchema = {
|
|
|
6
6
|
mailbox_id: z
|
|
7
7
|
.string()
|
|
8
8
|
.optional()
|
|
9
|
-
.describe("Mailbox
|
|
9
|
+
.describe("Mailbox to delete — slug or id (mbx_...). If omitted, deletes the project's only mailbox; on a project with more than one mailbox, omitting it returns an ambiguity error naming the slugs."),
|
|
10
10
|
confirm: z
|
|
11
11
|
.boolean()
|
|
12
12
|
.describe("Must be true. Destructive: deleting a mailbox drops all messages and webhook subscriptions and is irreversible."),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-mailbox.js","sourceRoot":"","sources":["../../src/tools/delete-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,
|
|
1
|
+
{"version":3,"file":"delete-mailbox.js","sourceRoot":"","sources":["../../src/tools/delete-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,6LAA6L,CAC9L;IACH,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,CACP,iHAAiH,CAClH;CACJ,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAIzC;IACC,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,+HAA+H;iBACtI,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACrE,sHAAsH;QACtH,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,uDAAuD,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACtE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+DAA+D,EAAE,CAAC;gBAClG,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { z } from "zod";
|
|
|
2
2
|
export declare const getEmailRawSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
message_id: z.ZodString;
|
|
5
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
5
6
|
};
|
|
6
7
|
/**
|
|
7
8
|
* Fetch the raw RFC-822 bytes of an inbound email message.
|
|
@@ -17,6 +18,7 @@ export declare const getEmailRawSchema: {
|
|
|
17
18
|
export declare function handleGetEmailRaw(args: {
|
|
18
19
|
project_id: string;
|
|
19
20
|
message_id: string;
|
|
21
|
+
mailbox?: string;
|
|
20
22
|
}): Promise<{
|
|
21
23
|
content: Array<{
|
|
22
24
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-email-raw.d.ts","sourceRoot":"","sources":["../../src/tools/get-email-raw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"get-email-raw.d.ts","sourceRoot":"","sources":["../../src/tools/get-email-raw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;CAO7B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA+BjF"}
|
|
@@ -4,6 +4,10 @@ import { mapSdkError } from "../errors.js";
|
|
|
4
4
|
export const getEmailRawSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
6
|
message_id: z.string().describe("The message ID to retrieve raw bytes for (must be an inbound message)"),
|
|
7
|
+
mailbox: z
|
|
8
|
+
.string()
|
|
9
|
+
.optional()
|
|
10
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
7
11
|
};
|
|
8
12
|
/**
|
|
9
13
|
* Fetch the raw RFC-822 bytes of an inbound email message.
|
|
@@ -18,7 +22,7 @@ export const getEmailRawSchema = {
|
|
|
18
22
|
*/
|
|
19
23
|
export async function handleGetEmailRaw(args) {
|
|
20
24
|
try {
|
|
21
|
-
const result = await getSdk().email.getRaw(args.project_id, args.message_id);
|
|
25
|
+
const result = await getSdk().email.getRaw(args.project_id, args.message_id, { mailbox: args.mailbox });
|
|
22
26
|
const bytes = Buffer.from(result.bytes);
|
|
23
27
|
const base64 = bytes.toString("base64");
|
|
24
28
|
const lines = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-email-raw.js","sourceRoot":"","sources":["../../src/tools/get-email-raw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;
|
|
1
|
+
{"version":3,"file":"get-email-raw.js","sourceRoot":"","sources":["../../src/tools/get-email-raw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IACxG,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAIvC;IACC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAExC,MAAM,KAAK,GAAG;YACZ,kBAAkB,IAAI,CAAC,UAAU,IAAI;YACrC,EAAE;YACF,uBAAuB,MAAM,CAAC,YAAY,EAAE;YAC5C,eAAe,KAAK,CAAC,MAAM,QAAQ;YACnC,4GAA4G;YAC5G,EAAE;YACF,KAAK;YACL,MAAM;YACN,KAAK;YACL,EAAE;YACF,kKAAkK;SACnK,CAAC;QAEF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qFAAqF,EAAE,CAAC;gBACxH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
|
@@ -2,10 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
export declare const getEmailSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
message_id: z.ZodString;
|
|
5
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
5
6
|
};
|
|
6
7
|
export declare function handleGetEmail(args: {
|
|
7
8
|
project_id: string;
|
|
8
9
|
message_id: string;
|
|
10
|
+
mailbox?: string;
|
|
9
11
|
}): Promise<{
|
|
10
12
|
content: Array<{
|
|
11
13
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-email.d.ts","sourceRoot":"","sources":["../../src/tools/get-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"get-email.d.ts","sourceRoot":"","sources":["../../src/tools/get-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;CAO1B,CAAC;AAEF,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoCjF"}
|
package/dist/tools/get-email.js
CHANGED
|
@@ -4,10 +4,14 @@ import { mapSdkError } from "../errors.js";
|
|
|
4
4
|
export const getEmailSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
6
|
message_id: z.string().describe("The message ID to retrieve"),
|
|
7
|
+
mailbox: z
|
|
8
|
+
.string()
|
|
9
|
+
.optional()
|
|
10
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
7
11
|
};
|
|
8
12
|
export async function handleGetEmail(args) {
|
|
9
13
|
try {
|
|
10
|
-
const body = await getSdk().email.get(args.project_id, args.message_id);
|
|
14
|
+
const body = await getSdk().email.get(args.project_id, args.message_id, { mailbox: args.mailbox });
|
|
11
15
|
const lines = [
|
|
12
16
|
`## Email: \`${body.id}\``,
|
|
13
17
|
``,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-email.js","sourceRoot":"","sources":["../../src/tools/get-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"get-email.js","sourceRoot":"","sources":["../../src/tools/get-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC7D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAIpC;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEnG,MAAM,KAAK,GAAG;YACZ,eAAe,IAAI,CAAC,EAAE,IAAI;YAC1B,EAAE;YACF,aAAa,IAAI,CAAC,EAAE,EAAE;YACtB,mBAAmB,IAAI,CAAC,QAAQ,EAAE;YAClC,iBAAiB,IAAI,CAAC,MAAM,EAAE;YAC9B,eAAe,IAAI,CAAC,UAAU,EAAE;YAChC,oBAAoB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;SACrD,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACvD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CACR,EAAE,EACF,aAAa,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,WAAW,EAAE,EAChD,KAAK,KAAK,CAAC,IAAI,EAAE,CAClB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qFAAqF,EAAE,CAAC;gBACxH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC"}
|
|
@@ -2,10 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
export declare const getMailboxWebhookSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
webhook_id: z.ZodString;
|
|
5
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
5
6
|
};
|
|
6
7
|
export declare function handleGetMailboxWebhook(args: {
|
|
7
8
|
project_id: string;
|
|
8
9
|
webhook_id: string;
|
|
10
|
+
mailbox?: string;
|
|
9
11
|
}): Promise<{
|
|
10
12
|
content: Array<{
|
|
11
13
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/get-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"get-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/get-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB;;;;CAOnC,CAAC;AAEF,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAgBjF"}
|
|
@@ -4,10 +4,14 @@ import { mapSdkError } from "../errors.js";
|
|
|
4
4
|
export const getMailboxWebhookSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
6
|
webhook_id: z.string().describe("The webhook ID (whk_...)"),
|
|
7
|
+
mailbox: z
|
|
8
|
+
.string()
|
|
9
|
+
.optional()
|
|
10
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
7
11
|
};
|
|
8
12
|
export async function handleGetMailboxWebhook(args) {
|
|
9
13
|
try {
|
|
10
|
-
const w = await getSdk().email.webhooks.get(args.project_id, args.webhook_id);
|
|
14
|
+
const w = await getSdk().email.webhooks.get(args.project_id, args.webhook_id, { mailbox: args.mailbox });
|
|
11
15
|
return {
|
|
12
16
|
content: [{
|
|
13
17
|
type: "text",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/get-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"get-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/get-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAI7C;IACC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACzG,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,eAAe,CAAC,CAAC,UAAU,kBAAkB,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,UAAU,EAAE;iBACjI,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const getMailboxSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
4
5
|
};
|
|
5
6
|
export declare function handleGetMailbox(args: {
|
|
6
7
|
project_id: string;
|
|
8
|
+
mailbox?: string;
|
|
7
9
|
}): Promise<{
|
|
8
10
|
content: Array<{
|
|
9
11
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-mailbox.d.ts","sourceRoot":"","sources":["../../src/tools/get-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"get-mailbox.d.ts","sourceRoot":"","sources":["../../src/tools/get-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,gBAAgB;;;CAM5B,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAmBjF"}
|
|
@@ -3,10 +3,14 @@ import { getSdk } from "../sdk.js";
|
|
|
3
3
|
import { mapSdkError } from "../errors.js";
|
|
4
4
|
export const getMailboxSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
|
+
mailbox: z
|
|
7
|
+
.string()
|
|
8
|
+
.optional()
|
|
9
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox (otherwise returns an ambiguity error naming the slugs)."),
|
|
6
10
|
};
|
|
7
11
|
export async function handleGetMailbox(args) {
|
|
8
12
|
try {
|
|
9
|
-
const mb = await getSdk().email.getMailbox(args.project_id);
|
|
13
|
+
const mb = await getSdk().email.getMailbox(args.project_id, args.mailbox);
|
|
10
14
|
return {
|
|
11
15
|
content: [{
|
|
12
16
|
type: "text",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-mailbox.js","sourceRoot":"","sources":["../../src/tools/get-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"get-mailbox.js","sourceRoot":"","sources":["../../src/tools/get-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2IAA2I,CAAC;CACzJ,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAGtC;IACC,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1E,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qCAAqC,EAAE,CAAC,OAAO,yBAAyB,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC5I,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qFAAqF,EAAE,CAAC;gBACxH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
|
@@ -3,11 +3,13 @@ export declare const listEmailsSchema: {
|
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
5
5
|
after: z.ZodOptional<z.ZodString>;
|
|
6
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
6
7
|
};
|
|
7
8
|
export declare function handleListEmails(args: {
|
|
8
9
|
project_id: string;
|
|
9
10
|
limit?: number;
|
|
10
11
|
after?: string;
|
|
12
|
+
mailbox?: string;
|
|
11
13
|
}): Promise<{
|
|
12
14
|
content: Array<{
|
|
13
15
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-emails.d.ts","sourceRoot":"","sources":["../../src/tools/list-emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"list-emails.d.ts","sourceRoot":"","sources":["../../src/tools/list-emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,gBAAgB;;;;;CAiB5B,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAgCjF"}
|
|
@@ -14,10 +14,14 @@ export const listEmailsSchema = {
|
|
|
14
14
|
.string()
|
|
15
15
|
.optional()
|
|
16
16
|
.describe("Pagination cursor (message id from prior page)"),
|
|
17
|
+
mailbox: z
|
|
18
|
+
.string()
|
|
19
|
+
.optional()
|
|
20
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
17
21
|
};
|
|
18
22
|
export async function handleListEmails(args) {
|
|
19
23
|
try {
|
|
20
|
-
const body = await getSdk().email.list(args.project_id, { limit: args.limit, after: args.after });
|
|
24
|
+
const body = await getSdk().email.list(args.project_id, { limit: args.limit, after: args.after, mailbox: args.mailbox });
|
|
21
25
|
if (!Array.isArray(body) || body.length === 0) {
|
|
22
26
|
return { content: [{ type: "text", text: `## Sent Emails\n\n_No emails sent yet._` }] };
|
|
23
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-emails.js","sourceRoot":"","sources":["../../src/tools/list-emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6CAA6C,CAAC;IAC1D,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"list-emails.js","sourceRoot":"","sources":["../../src/tools/list-emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6CAA6C,CAAC;IAC1D,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;IAC7D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAKtC;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,EAAE,CAAC,EAAE,CAAC;QAC1F,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,mBAAmB,IAAI,CAAC,MAAM,GAAG;YACjC,EAAE;YACF,wCAAwC;YACxC,wCAAwC;SACzC,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CACR,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,IAAI,CACtF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qFAAqF,EAAE,CAAC;gBACxH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const listMailboxWebhooksSchema: {
|
|
3
3
|
project_id: z.ZodString;
|
|
4
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
4
5
|
};
|
|
5
6
|
export declare function handleListMailboxWebhooks(args: {
|
|
6
7
|
project_id: string;
|
|
8
|
+
mailbox?: string;
|
|
7
9
|
}): Promise<{
|
|
8
10
|
content: Array<{
|
|
9
11
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-mailbox-webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/list-mailbox-webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"list-mailbox-webhooks.d.ts","sourceRoot":"","sources":["../../src/tools/list-mailbox-webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,yBAAyB;;;CAMrC,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAkBjF"}
|
|
@@ -3,10 +3,14 @@ import { getSdk } from "../sdk.js";
|
|
|
3
3
|
import { mapSdkError } from "../errors.js";
|
|
4
4
|
export const listMailboxWebhooksSchema = {
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
|
+
mailbox: z
|
|
7
|
+
.string()
|
|
8
|
+
.optional()
|
|
9
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
6
10
|
};
|
|
7
11
|
export async function handleListMailboxWebhooks(args) {
|
|
8
12
|
try {
|
|
9
|
-
const body = await getSdk().email.webhooks.list(args.project_id);
|
|
13
|
+
const body = await getSdk().email.webhooks.list(args.project_id, { mailbox: args.mailbox });
|
|
10
14
|
if (!body.webhooks || body.webhooks.length === 0) {
|
|
11
15
|
return { content: [{ type: "text", text: "No webhooks registered on this mailbox." }] };
|
|
12
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-mailbox-webhooks.js","sourceRoot":"","sources":["../../src/tools/list-mailbox-webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"list-mailbox-webhooks.js","sourceRoot":"","sources":["../../src/tools/list-mailbox-webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAG/C;IACC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5F,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,EAAE,CAAC,EAAE,CAAC;QAC1F,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,UAAU,QAAQ,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CACvG,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACrF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
|
@@ -3,11 +3,13 @@ export declare const registerMailboxWebhookSchema: {
|
|
|
3
3
|
project_id: z.ZodString;
|
|
4
4
|
url: z.ZodString;
|
|
5
5
|
events: z.ZodArray<z.ZodString, "many">;
|
|
6
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
6
7
|
};
|
|
7
8
|
export declare function handleRegisterMailboxWebhook(args: {
|
|
8
9
|
project_id: string;
|
|
9
10
|
url: string;
|
|
10
11
|
events: string[];
|
|
12
|
+
mailbox?: string;
|
|
11
13
|
}): Promise<{
|
|
12
14
|
content: Array<{
|
|
13
15
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/register-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,4BAA4B
|
|
1
|
+
{"version":3,"file":"register-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/register-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,4BAA4B;;;;;CAQxC,CAAC;AAEF,wBAAsB,4BAA4B,CAAC,IAAI,EAAE;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoBjF"}
|
|
@@ -5,12 +5,17 @@ export const registerMailboxWebhookSchema = {
|
|
|
5
5
|
project_id: z.string().describe("The project ID"),
|
|
6
6
|
url: z.string().describe("Webhook callback URL"),
|
|
7
7
|
events: z.array(z.string()).describe("Events to subscribe to. Valid: delivery, bounced, complained, reply_received"),
|
|
8
|
+
mailbox: z
|
|
9
|
+
.string()
|
|
10
|
+
.optional()
|
|
11
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
8
12
|
};
|
|
9
13
|
export async function handleRegisterMailboxWebhook(args) {
|
|
10
14
|
try {
|
|
11
15
|
const w = await getSdk().email.webhooks.register(args.project_id, {
|
|
12
16
|
url: args.url,
|
|
13
17
|
events: args.events,
|
|
18
|
+
mailbox: args.mailbox,
|
|
14
19
|
});
|
|
15
20
|
return {
|
|
16
21
|
content: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/register-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;
|
|
1
|
+
{"version":3,"file":"register-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/register-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;IACpH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,IAKlD;IACC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE;YAChE,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,wCAAwC,CAAC,CAAC,UAAU,kBAAkB,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBAC1H,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
|
|
@@ -9,6 +9,7 @@ export declare const sendEmailSchema: {
|
|
|
9
9
|
text: z.ZodOptional<z.ZodString>;
|
|
10
10
|
from_name: z.ZodOptional<z.ZodString>;
|
|
11
11
|
in_reply_to: z.ZodOptional<z.ZodString>;
|
|
12
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
12
13
|
};
|
|
13
14
|
export declare function handleSendEmail(args: {
|
|
14
15
|
project_id: string;
|
|
@@ -20,6 +21,7 @@ export declare function handleSendEmail(args: {
|
|
|
20
21
|
text?: string;
|
|
21
22
|
from_name?: string;
|
|
22
23
|
in_reply_to?: string;
|
|
24
|
+
mailbox?: string;
|
|
23
25
|
}): Promise<{
|
|
24
26
|
content: Array<{
|
|
25
27
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-email.d.ts","sourceRoot":"","sources":["../../src/tools/send-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"send-email.d.ts","sourceRoot":"","sources":["../../src/tools/send-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe;;;;;;;;;;;CA2B3B,CAAC;AAEF,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAkCjF"}
|
package/dist/tools/send-email.js
CHANGED
|
@@ -20,6 +20,10 @@ export const sendEmailSchema = {
|
|
|
20
20
|
.string()
|
|
21
21
|
.optional()
|
|
22
22
|
.describe("ID of a prior message (typically inbound) to thread this one under. The server uses it to set RFC-822 In-Reply-To and References headers. Usually set via reply flows; leave empty for new threads."),
|
|
23
|
+
mailbox: z
|
|
24
|
+
.string()
|
|
25
|
+
.optional()
|
|
26
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox (otherwise the send returns an ambiguity error naming the slugs)."),
|
|
23
27
|
};
|
|
24
28
|
export async function handleSendEmail(args) {
|
|
25
29
|
try {
|
|
@@ -32,6 +36,7 @@ export async function handleSendEmail(args) {
|
|
|
32
36
|
text: args.text,
|
|
33
37
|
from_name: args.from_name,
|
|
34
38
|
in_reply_to: args.in_reply_to,
|
|
39
|
+
mailbox: args.mailbox,
|
|
35
40
|
});
|
|
36
41
|
const mode = body.template ? `**Template:** ${body.template}` : `**Subject:** ${body.subject}`;
|
|
37
42
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-email.js","sourceRoot":"","sources":["../../src/tools/send-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAC1E,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC,CAAC,gBAAgB,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;SACtD,QAAQ,EAAE;SACV,QAAQ,CAAC,6EAA6E,CAAC;IAC1F,SAAS,EAAE,CAAC;SACT,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,QAAQ,EAAE;SACV,QAAQ,CACP,oLAAoL,CACrL;IACH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAC5F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IAChF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;IAChH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IACzG,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,qMAAqM,CACtM;
|
|
1
|
+
{"version":3,"file":"send-email.js","sourceRoot":"","sources":["../../src/tools/send-email.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,14 @@ export declare const updateMailboxWebhookSchema: {
|
|
|
4
4
|
webhook_id: z.ZodString;
|
|
5
5
|
url: z.ZodOptional<z.ZodString>;
|
|
6
6
|
events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
7
|
+
mailbox: z.ZodOptional<z.ZodString>;
|
|
7
8
|
};
|
|
8
9
|
export declare function handleUpdateMailboxWebhook(args: {
|
|
9
10
|
project_id: string;
|
|
10
11
|
webhook_id: string;
|
|
11
12
|
url?: string;
|
|
12
13
|
events?: string[];
|
|
14
|
+
mailbox?: string;
|
|
13
15
|
}): Promise<{
|
|
14
16
|
content: Array<{
|
|
15
17
|
type: "text";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/update-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,0BAA0B
|
|
1
|
+
{"version":3,"file":"update-mailbox-webhook.d.ts","sourceRoot":"","sources":["../../src/tools/update-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,0BAA0B;;;;;;CAStC,CAAC;AAEF,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAuBjF"}
|
|
@@ -6,12 +6,17 @@ export const updateMailboxWebhookSchema = {
|
|
|
6
6
|
webhook_id: z.string().describe("The webhook ID (whk_...)"),
|
|
7
7
|
url: z.string().optional().describe("New webhook URL"),
|
|
8
8
|
events: z.array(z.string()).optional().describe("New events array (full replacement). Valid: delivery, bounced, complained, reply_received"),
|
|
9
|
+
mailbox: z
|
|
10
|
+
.string()
|
|
11
|
+
.optional()
|
|
12
|
+
.describe("Target mailbox by slug or id; omit only when the project has exactly one mailbox."),
|
|
9
13
|
};
|
|
10
14
|
export async function handleUpdateMailboxWebhook(args) {
|
|
11
15
|
try {
|
|
12
16
|
const w = await getSdk().email.webhooks.update(args.project_id, args.webhook_id, {
|
|
13
17
|
url: args.url,
|
|
14
18
|
events: args.events,
|
|
19
|
+
mailbox: args.mailbox,
|
|
15
20
|
});
|
|
16
21
|
return {
|
|
17
22
|
content: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/update-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC3D,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2FAA2F,CAAC;
|
|
1
|
+
{"version":3,"file":"update-mailbox-webhook.js","sourceRoot":"","sources":["../../src/tools/update-mailbox-webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC3D,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2FAA2F,CAAC;IAC5I,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;CACjG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,IAMhD;IACC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;YAC/E,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uBAAuB,CAAC,CAAC,UAAU,kBAAkB,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBACzG,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,EAAE,OAAO,IAAI,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACtH,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "run402-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.21.0",
|
|
4
4
|
"description": "MCP server for Run402 — AI-native Postgres databases with REST API, auth, storage, and row-level security. Pay with x402 USDC micropayments.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -25,6 +25,8 @@ export interface DeleteMailboxResult {
|
|
|
25
25
|
address: string;
|
|
26
26
|
}
|
|
27
27
|
export type EmailTemplate = "project_invite" | "magic_link" | "notification";
|
|
28
|
+
/** Selects a target mailbox on a multi-mailbox project: a mailbox id (`mbx_…`) or a slug. */
|
|
29
|
+
export type MailboxSelector = string;
|
|
28
30
|
export interface SendEmailOptions {
|
|
29
31
|
to: string;
|
|
30
32
|
template?: EmailTemplate;
|
|
@@ -34,6 +36,16 @@ export interface SendEmailOptions {
|
|
|
34
36
|
text?: string;
|
|
35
37
|
from_name?: string;
|
|
36
38
|
in_reply_to?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Target mailbox (slug or `mbx_…` id) on a project that has more than one.
|
|
41
|
+
* Omit only when the project has exactly one mailbox — otherwise the call
|
|
42
|
+
* throws an ambiguity error naming the available slugs.
|
|
43
|
+
*/
|
|
44
|
+
mailbox?: MailboxSelector;
|
|
45
|
+
}
|
|
46
|
+
/** Options carrying just a mailbox selector, for `get` / `getRaw` / webhook reads. */
|
|
47
|
+
export interface MailboxScopedOptions {
|
|
48
|
+
mailbox?: MailboxSelector;
|
|
37
49
|
}
|
|
38
50
|
export interface SendEmailResult {
|
|
39
51
|
message_id: string;
|
|
@@ -67,6 +79,8 @@ export interface EmailDetail {
|
|
|
67
79
|
export interface ListEmailsOptions {
|
|
68
80
|
limit?: number;
|
|
69
81
|
after?: string;
|
|
82
|
+
/** Target mailbox (slug or `mbx_…` id); omit only on single-mailbox projects. */
|
|
83
|
+
mailbox?: MailboxSelector;
|
|
70
84
|
}
|
|
71
85
|
export interface RawEmailResult {
|
|
72
86
|
content_type: string;
|
|
@@ -84,60 +98,95 @@ export interface MailboxWebhooksResult {
|
|
|
84
98
|
export interface RegisterWebhookOptions {
|
|
85
99
|
url: string;
|
|
86
100
|
events: string[];
|
|
101
|
+
/** Target mailbox (slug or `mbx_…` id); omit only on single-mailbox projects. */
|
|
102
|
+
mailbox?: MailboxSelector;
|
|
87
103
|
}
|
|
88
104
|
export interface UpdateWebhookOptions {
|
|
89
105
|
url?: string;
|
|
90
106
|
events?: string[];
|
|
107
|
+
/** Target mailbox (slug or `mbx_…` id); omit only on single-mailbox projects. */
|
|
108
|
+
mailbox?: MailboxSelector;
|
|
91
109
|
}
|
|
92
110
|
export declare class Webhooks {
|
|
93
111
|
private readonly client;
|
|
94
112
|
private readonly resolveMailbox;
|
|
95
|
-
constructor(client: Client, resolveMailbox: (projectId: string) => Promise<{
|
|
113
|
+
constructor(client: Client, resolveMailbox: (projectId: string, selector?: MailboxSelector) => Promise<{
|
|
96
114
|
id: string;
|
|
97
115
|
serviceKey: string;
|
|
98
116
|
}>);
|
|
99
117
|
register(projectId: string, opts: RegisterWebhookOptions): Promise<MailboxWebhookSummary>;
|
|
100
|
-
list(projectId: string): Promise<MailboxWebhooksResult>;
|
|
101
|
-
get(projectId: string, webhookId: string): Promise<MailboxWebhookSummary>;
|
|
118
|
+
list(projectId: string, opts?: MailboxScopedOptions): Promise<MailboxWebhooksResult>;
|
|
119
|
+
get(projectId: string, webhookId: string, opts?: MailboxScopedOptions): Promise<MailboxWebhookSummary>;
|
|
102
120
|
update(projectId: string, webhookId: string, opts: UpdateWebhookOptions): Promise<MailboxWebhookSummary>;
|
|
103
|
-
delete(projectId: string, webhookId: string): Promise<void>;
|
|
121
|
+
delete(projectId: string, webhookId: string, opts?: MailboxScopedOptions): Promise<void>;
|
|
104
122
|
}
|
|
105
123
|
export declare class Email {
|
|
106
124
|
private readonly client;
|
|
107
125
|
readonly webhooks: Webhooks;
|
|
108
126
|
readonly create: (projectId: string, slug: string) => Promise<CreateMailboxResult>;
|
|
109
|
-
readonly status: (projectId: string) => Promise<MailboxInfo>;
|
|
110
|
-
readonly info: (projectId: string) => Promise<MailboxInfo>;
|
|
111
|
-
readonly delete: (projectId: string,
|
|
127
|
+
readonly status: (projectId: string, mailbox?: MailboxSelector) => Promise<MailboxInfo>;
|
|
128
|
+
readonly info: (projectId: string, mailbox?: MailboxSelector) => Promise<MailboxInfo>;
|
|
129
|
+
readonly delete: (projectId: string, mailbox?: MailboxSelector) => Promise<DeleteMailboxResult>;
|
|
112
130
|
constructor(client: Client);
|
|
113
131
|
/**
|
|
114
|
-
* Resolve
|
|
115
|
-
*
|
|
116
|
-
*
|
|
132
|
+
* Resolve a project mailbox to `{ id, serviceKey }` for an operation.
|
|
133
|
+
*
|
|
134
|
+
* - `selector` is a mailbox id (`mbx_…`) → used directly; the gateway 403s
|
|
135
|
+
* if the id belongs to a different project, so no list call is needed.
|
|
136
|
+
* - `selector` is a slug → the project's mailboxes are listed and matched.
|
|
137
|
+
* - `selector` omitted → the project's mailboxes are listed:
|
|
138
|
+
* 0 → "create one first"; exactly 1 → that one (cache refreshed);
|
|
139
|
+
* 2+ → an ambiguity error naming the slugs (never a silent pick).
|
|
140
|
+
*
|
|
141
|
+
* The cached `mailbox_id` is intentionally NOT used to resolve when a
|
|
142
|
+
* selector is omitted — trusting it would silently target an arbitrary
|
|
143
|
+
* mailbox on a multi-mailbox project. It remains a best-effort convenience
|
|
144
|
+
* cache, refreshed only on the single-mailbox path.
|
|
117
145
|
*/
|
|
118
146
|
private resolveMailbox;
|
|
147
|
+
/**
|
|
148
|
+
* Choose a mailbox from a project's list given an optional selector.
|
|
149
|
+
* `selector` matches by exact mailbox id or slug. With no selector: 0 →
|
|
150
|
+
* "create one first" (404), 1 → that one, 2+ → ambiguity error (409) naming
|
|
151
|
+
* the available slugs.
|
|
152
|
+
*/
|
|
153
|
+
private pickMailbox;
|
|
154
|
+
/** Best-effort refresh of the single-mailbox convenience cache. */
|
|
155
|
+
private cacheMailbox;
|
|
119
156
|
private listMailboxes;
|
|
120
|
-
/**
|
|
157
|
+
/**
|
|
158
|
+
* Create a mailbox for a project.
|
|
159
|
+
*
|
|
160
|
+
* NOT idempotent. A 409 from the gateway now means `Slug already in use`,
|
|
161
|
+
* `Address is in cooldown period`, or `Project mailbox limit reached (5)` —
|
|
162
|
+
* none of which mean "you already own this slug" — so the 409 is surfaced
|
|
163
|
+
* verbatim rather than silently returning some other existing mailbox.
|
|
164
|
+
* Callers that want create-or-get should `list`/`getMailbox` explicitly.
|
|
165
|
+
*/
|
|
121
166
|
createMailbox(projectId: string, slug: string): Promise<CreateMailboxResult>;
|
|
122
167
|
/** Send an email via template or raw (subject + html) mode. */
|
|
123
168
|
send(projectId: string, opts: SendEmailOptions): Promise<SendEmailResult>;
|
|
124
169
|
/** List messages in the project's mailbox. */
|
|
125
170
|
list(projectId: string, opts?: ListEmailsOptions): Promise<EmailSummary[]>;
|
|
126
171
|
/** Get a single message by id, including any replies. */
|
|
127
|
-
get(projectId: string, messageId: string): Promise<EmailDetail>;
|
|
172
|
+
get(projectId: string, messageId: string, opts?: MailboxScopedOptions): Promise<EmailDetail>;
|
|
128
173
|
/**
|
|
129
174
|
* Fetch the raw RFC-822 bytes of an inbound message. Returns `Uint8Array`
|
|
130
175
|
* so the consumer can decode / store / forward without re-encoding.
|
|
131
176
|
*/
|
|
132
|
-
getRaw(projectId: string, messageId: string): Promise<RawEmailResult>;
|
|
133
|
-
/**
|
|
134
|
-
|
|
177
|
+
getRaw(projectId: string, messageId: string, opts?: MailboxScopedOptions): Promise<RawEmailResult>;
|
|
178
|
+
/**
|
|
179
|
+
* Get a project mailbox's info. With a `selector` (slug or `mbx_…` id),
|
|
180
|
+
* returns that mailbox; without one, returns the project's only mailbox or
|
|
181
|
+
* throws an ambiguity error when it has more than one.
|
|
182
|
+
*/
|
|
183
|
+
getMailbox(projectId: string, selector?: MailboxSelector): Promise<MailboxInfo>;
|
|
135
184
|
/**
|
|
136
185
|
* Delete the project's mailbox. Destructive — drops all messages and
|
|
137
186
|
* webhook subscriptions. Pass `mailboxId` explicitly to delete a specific
|
|
138
187
|
* mailbox; otherwise the project's current mailbox is resolved. Returns
|
|
139
188
|
* the deleted record echoed by the gateway.
|
|
140
189
|
*/
|
|
141
|
-
deleteMailbox(projectId: string,
|
|
190
|
+
deleteMailbox(projectId: string, selector?: MailboxSelector): Promise<DeleteMailboxResult>;
|
|
142
191
|
}
|
|
143
192
|
//# sourceMappingURL=email.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/namespaces/email.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAa3C,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAEhD,MAAM,MAAM,WAAW,GAAG,aAAa,CAAC;AAExC,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,cAAc,CAAC;AAE7E,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/namespaces/email.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export class Webhooks {
|
|
|
16
16
|
}
|
|
17
17
|
async register(projectId, opts) {
|
|
18
18
|
validateRegisterWebhookOptions(opts);
|
|
19
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
19
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
20
20
|
return this.client.request(`/mailboxes/v1/${id}/webhooks`, {
|
|
21
21
|
method: "POST",
|
|
22
22
|
headers: { Authorization: `Bearer ${serviceKey}` },
|
|
@@ -24,15 +24,15 @@ export class Webhooks {
|
|
|
24
24
|
context: "registering webhook",
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
-
async list(projectId) {
|
|
28
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
27
|
+
async list(projectId, opts = {}) {
|
|
28
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
29
29
|
return this.client.request(`/mailboxes/v1/${id}/webhooks`, {
|
|
30
30
|
headers: { Authorization: `Bearer ${serviceKey}` },
|
|
31
31
|
context: "listing webhooks",
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
-
async get(projectId, webhookId) {
|
|
35
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
34
|
+
async get(projectId, webhookId, opts = {}) {
|
|
35
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
36
36
|
const encodedWebhookId = encodePathSegment(webhookId, "webhookId", "getting webhook");
|
|
37
37
|
return this.client.request(`/mailboxes/v1/${id}/webhooks/${encodedWebhookId}`, {
|
|
38
38
|
headers: { Authorization: `Bearer ${serviceKey}` },
|
|
@@ -44,7 +44,7 @@ export class Webhooks {
|
|
|
44
44
|
if (!patch.hasUrl && !patch.hasEvents) {
|
|
45
45
|
throw new LocalError("Provide at least `url` or `events` to update a webhook.", "updating webhook");
|
|
46
46
|
}
|
|
47
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
47
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
48
48
|
const encodedWebhookId = encodePathSegment(webhookId, "webhookId", "updating webhook");
|
|
49
49
|
const body = {};
|
|
50
50
|
if (patch.hasUrl)
|
|
@@ -58,8 +58,8 @@ export class Webhooks {
|
|
|
58
58
|
context: "updating webhook",
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
|
-
async delete(projectId, webhookId) {
|
|
62
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
61
|
+
async delete(projectId, webhookId, opts = {}) {
|
|
62
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
63
63
|
const encodedWebhookId = encodePathSegment(webhookId, "webhookId", "deleting webhook");
|
|
64
64
|
await this.client.request(`/mailboxes/v1/${id}/webhooks/${encodedWebhookId}`, {
|
|
65
65
|
method: "DELETE",
|
|
@@ -77,42 +77,77 @@ export class Email {
|
|
|
77
77
|
delete;
|
|
78
78
|
constructor(client) {
|
|
79
79
|
this.client = client;
|
|
80
|
-
this.webhooks = new Webhooks(client, (projectId) => this.resolveMailbox(projectId));
|
|
80
|
+
this.webhooks = new Webhooks(client, (projectId, selector) => this.resolveMailbox(projectId, selector));
|
|
81
81
|
this.create = this.createMailbox.bind(this);
|
|
82
82
|
this.status = this.getMailbox.bind(this);
|
|
83
83
|
this.info = this.getMailbox.bind(this);
|
|
84
84
|
this.delete = this.deleteMailbox.bind(this);
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
|
-
* Resolve
|
|
88
|
-
*
|
|
89
|
-
*
|
|
87
|
+
* Resolve a project mailbox to `{ id, serviceKey }` for an operation.
|
|
88
|
+
*
|
|
89
|
+
* - `selector` is a mailbox id (`mbx_…`) → used directly; the gateway 403s
|
|
90
|
+
* if the id belongs to a different project, so no list call is needed.
|
|
91
|
+
* - `selector` is a slug → the project's mailboxes are listed and matched.
|
|
92
|
+
* - `selector` omitted → the project's mailboxes are listed:
|
|
93
|
+
* 0 → "create one first"; exactly 1 → that one (cache refreshed);
|
|
94
|
+
* 2+ → an ambiguity error naming the slugs (never a silent pick).
|
|
95
|
+
*
|
|
96
|
+
* The cached `mailbox_id` is intentionally NOT used to resolve when a
|
|
97
|
+
* selector is omitted — trusting it would silently target an arbitrary
|
|
98
|
+
* mailbox on a multi-mailbox project. It remains a best-effort convenience
|
|
99
|
+
* cache, refreshed only on the single-mailbox path.
|
|
90
100
|
*/
|
|
91
|
-
async resolveMailbox(projectId) {
|
|
101
|
+
async resolveMailbox(projectId, selector) {
|
|
92
102
|
const project = await this.client.getProject(projectId);
|
|
93
103
|
if (!project)
|
|
94
104
|
throw new ProjectNotFound(projectId, "resolving mailbox");
|
|
95
|
-
if (
|
|
96
|
-
return { id:
|
|
105
|
+
if (selector && /^mbx_/.test(selector)) {
|
|
106
|
+
return { id: selector, serviceKey: project.service_key };
|
|
97
107
|
}
|
|
98
108
|
const list = await this.listMailboxes(project.service_key);
|
|
109
|
+
const mb = this.pickMailbox(list, selector, "resolving mailbox");
|
|
110
|
+
if (!selector && list.length === 1)
|
|
111
|
+
await this.cacheMailbox(projectId, mb);
|
|
112
|
+
return { id: mb.mailbox_id, serviceKey: project.service_key };
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Choose a mailbox from a project's list given an optional selector.
|
|
116
|
+
* `selector` matches by exact mailbox id or slug. With no selector: 0 →
|
|
117
|
+
* "create one first" (404), 1 → that one, 2+ → ambiguity error (409) naming
|
|
118
|
+
* the available slugs.
|
|
119
|
+
*/
|
|
120
|
+
pickMailbox(list, selector, context) {
|
|
121
|
+
if (selector) {
|
|
122
|
+
const hit = list.find((m) => m.mailbox_id === selector || m.slug === selector);
|
|
123
|
+
if (!hit) {
|
|
124
|
+
throw new ApiError(`No mailbox matching "${selector}" (slug or id) in this project.`, 404, null, context);
|
|
125
|
+
}
|
|
126
|
+
return hit;
|
|
127
|
+
}
|
|
99
128
|
if (list.length === 0) {
|
|
100
|
-
throw new ApiError("No mailbox found for this project. Use `create_mailbox` to create one first.", 404, null,
|
|
129
|
+
throw new ApiError("No mailbox found for this project. Use `create_mailbox` to create one first.", 404, null, context);
|
|
130
|
+
}
|
|
131
|
+
if (list.length > 1) {
|
|
132
|
+
const slugs = list.map((m) => m.slug).join(", ");
|
|
133
|
+
throw new ApiError(`Project has ${list.length} mailboxes (${slugs}). Specify which one via the "mailbox" parameter (slug or id).`, 409, null, context);
|
|
101
134
|
}
|
|
102
|
-
|
|
135
|
+
return list[0];
|
|
136
|
+
}
|
|
137
|
+
/** Best-effort refresh of the single-mailbox convenience cache. */
|
|
138
|
+
async cacheMailbox(projectId, mb) {
|
|
103
139
|
const updater = this.client.credentials.updateProject;
|
|
104
|
-
if (updater)
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
140
|
+
if (!updater)
|
|
141
|
+
return;
|
|
142
|
+
try {
|
|
143
|
+
await updater.call(this.client.credentials, projectId, {
|
|
144
|
+
mailbox_id: mb.mailbox_id,
|
|
145
|
+
mailbox_address: mb.address,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
catch {
|
|
149
|
+
// best-effort cache — ignore failures
|
|
114
150
|
}
|
|
115
|
-
return { id: first.mailbox_id, serviceKey: project.service_key };
|
|
116
151
|
}
|
|
117
152
|
async listMailboxes(serviceKey) {
|
|
118
153
|
const raw = await this.client.request(`/mailboxes/v1`, {
|
|
@@ -121,7 +156,15 @@ export class Email {
|
|
|
121
156
|
});
|
|
122
157
|
return raw.mailboxes ?? [];
|
|
123
158
|
}
|
|
124
|
-
/**
|
|
159
|
+
/**
|
|
160
|
+
* Create a mailbox for a project.
|
|
161
|
+
*
|
|
162
|
+
* NOT idempotent. A 409 from the gateway now means `Slug already in use`,
|
|
163
|
+
* `Address is in cooldown period`, or `Project mailbox limit reached (5)` —
|
|
164
|
+
* none of which mean "you already own this slug" — so the 409 is surfaced
|
|
165
|
+
* verbatim rather than silently returning some other existing mailbox.
|
|
166
|
+
* Callers that want create-or-get should `list`/`getMailbox` explicitly.
|
|
167
|
+
*/
|
|
125
168
|
async createMailbox(projectId, slug) {
|
|
126
169
|
const project = await this.client.getProject(projectId);
|
|
127
170
|
if (!project)
|
|
@@ -135,47 +178,14 @@ export class Email {
|
|
|
135
178
|
if (slug.includes("--")) {
|
|
136
179
|
throw new LocalError("Slug must not contain consecutive hyphens.", "creating mailbox");
|
|
137
180
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
if (updater) {
|
|
147
|
-
await updater.call(this.client.credentials, projectId, {
|
|
148
|
-
mailbox_id: result.mailbox_id,
|
|
149
|
-
mailbox_address: result.address,
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
return result;
|
|
153
|
-
}
|
|
154
|
-
catch (err) {
|
|
155
|
-
if (err instanceof ApiError && err.status === 409) {
|
|
156
|
-
// Existing mailbox — try to discover and cache it. If discovery
|
|
157
|
-
// fails or returns empty, re-throw the original 409 so the caller
|
|
158
|
-
// sees the server's "already has a mailbox" message.
|
|
159
|
-
try {
|
|
160
|
-
const list = await this.listMailboxes(project.service_key);
|
|
161
|
-
if (list.length > 0) {
|
|
162
|
-
const existing = list[0];
|
|
163
|
-
const updater = this.client.credentials.updateProject;
|
|
164
|
-
if (updater) {
|
|
165
|
-
await updater.call(this.client.credentials, projectId, {
|
|
166
|
-
mailbox_id: existing.mailbox_id,
|
|
167
|
-
mailbox_address: existing.address,
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
return existing;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
catch {
|
|
174
|
-
// fall through to re-throw the original 409
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
throw err;
|
|
178
|
-
}
|
|
181
|
+
const result = await this.client.request("/mailboxes/v1", {
|
|
182
|
+
method: "POST",
|
|
183
|
+
headers: { Authorization: `Bearer ${project.service_key}` },
|
|
184
|
+
body: { slug, project_id: projectId },
|
|
185
|
+
context: "creating mailbox",
|
|
186
|
+
});
|
|
187
|
+
await this.cacheMailbox(projectId, result);
|
|
188
|
+
return result;
|
|
179
189
|
}
|
|
180
190
|
/** Send an email via template or raw (subject + html) mode. */
|
|
181
191
|
async send(projectId, opts) {
|
|
@@ -197,7 +207,7 @@ export class Email {
|
|
|
197
207
|
const missing = hasSubject ? "html" : "subject";
|
|
198
208
|
throw new LocalError(`Raw mode requires both \`subject\` and \`html\` (missing \`${missing}\`).`, "sending email");
|
|
199
209
|
}
|
|
200
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
210
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
201
211
|
const body = { to: opts.to };
|
|
202
212
|
if (isTemplate) {
|
|
203
213
|
body.template = opts.template;
|
|
@@ -225,7 +235,7 @@ export class Email {
|
|
|
225
235
|
if (opts.limit !== undefined) {
|
|
226
236
|
assertPositiveSafeInteger(opts.limit, "limit", "listing emails");
|
|
227
237
|
}
|
|
228
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
238
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
229
239
|
const qs = new URLSearchParams();
|
|
230
240
|
if (opts.limit !== undefined)
|
|
231
241
|
qs.set("limit", String(opts.limit));
|
|
@@ -238,8 +248,8 @@ export class Email {
|
|
|
238
248
|
});
|
|
239
249
|
}
|
|
240
250
|
/** Get a single message by id, including any replies. */
|
|
241
|
-
async get(projectId, messageId) {
|
|
242
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
251
|
+
async get(projectId, messageId, opts = {}) {
|
|
252
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
243
253
|
const encodedMessageId = encodePathSegment(messageId, "messageId", "getting email");
|
|
244
254
|
return this.client.request(`/mailboxes/v1/${id}/messages/${encodedMessageId}`, {
|
|
245
255
|
headers: { Authorization: `Bearer ${serviceKey}` },
|
|
@@ -250,8 +260,8 @@ export class Email {
|
|
|
250
260
|
* Fetch the raw RFC-822 bytes of an inbound message. Returns `Uint8Array`
|
|
251
261
|
* so the consumer can decode / store / forward without re-encoding.
|
|
252
262
|
*/
|
|
253
|
-
async getRaw(projectId, messageId) {
|
|
254
|
-
const { id, serviceKey } = await this.resolveMailbox(projectId);
|
|
263
|
+
async getRaw(projectId, messageId, opts = {}) {
|
|
264
|
+
const { id, serviceKey } = await this.resolveMailbox(projectId, opts.mailbox);
|
|
255
265
|
const encodedMessageId = encodePathSegment(messageId, "messageId", "fetching raw MIME");
|
|
256
266
|
const url = `${this.client.apiBase}/mailboxes/v1/${id}/messages/${encodedMessageId}/raw`;
|
|
257
267
|
const res = await this.client.fetch(url, {
|
|
@@ -273,28 +283,19 @@ export class Email {
|
|
|
273
283
|
bytes: new Uint8Array(buf),
|
|
274
284
|
};
|
|
275
285
|
}
|
|
276
|
-
/**
|
|
277
|
-
|
|
286
|
+
/**
|
|
287
|
+
* Get a project mailbox's info. With a `selector` (slug or `mbx_…` id),
|
|
288
|
+
* returns that mailbox; without one, returns the project's only mailbox or
|
|
289
|
+
* throws an ambiguity error when it has more than one.
|
|
290
|
+
*/
|
|
291
|
+
async getMailbox(projectId, selector) {
|
|
278
292
|
const project = await this.client.getProject(projectId);
|
|
279
293
|
if (!project)
|
|
280
294
|
throw new ProjectNotFound(projectId, "getting mailbox");
|
|
281
295
|
const list = await this.listMailboxes(project.service_key);
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
const mb = list[0];
|
|
286
|
-
const updater = this.client.credentials.updateProject;
|
|
287
|
-
if (updater) {
|
|
288
|
-
try {
|
|
289
|
-
await updater.call(this.client.credentials, projectId, {
|
|
290
|
-
mailbox_id: mb.mailbox_id,
|
|
291
|
-
mailbox_address: mb.address,
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
catch {
|
|
295
|
-
// best-effort
|
|
296
|
-
}
|
|
297
|
-
}
|
|
296
|
+
const mb = this.pickMailbox(list, selector, "getting mailbox");
|
|
297
|
+
if (!selector && list.length === 1)
|
|
298
|
+
await this.cacheMailbox(projectId, mb);
|
|
298
299
|
return mb;
|
|
299
300
|
}
|
|
300
301
|
/**
|
|
@@ -303,22 +304,20 @@ export class Email {
|
|
|
303
304
|
* mailbox; otherwise the project's current mailbox is resolved. Returns
|
|
304
305
|
* the deleted record echoed by the gateway.
|
|
305
306
|
*/
|
|
306
|
-
async deleteMailbox(projectId,
|
|
307
|
+
async deleteMailbox(projectId, selector) {
|
|
307
308
|
const project = await this.client.getProject(projectId);
|
|
308
309
|
if (!project)
|
|
309
310
|
throw new ProjectNotFound(projectId, "deleting mailbox");
|
|
310
|
-
let id
|
|
311
|
-
if (
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
throw new ApiError("No mailbox found for this project — nothing to delete.", 404, null, "deleting mailbox");
|
|
319
|
-
}
|
|
320
|
-
id = list[0].mailbox_id;
|
|
311
|
+
let id;
|
|
312
|
+
if (selector && /^mbx_/.test(selector)) {
|
|
313
|
+
id = selector;
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
const list = await this.listMailboxes(project.service_key);
|
|
317
|
+
if (!selector && list.length === 0) {
|
|
318
|
+
throw new ApiError("No mailbox found for this project — nothing to delete.", 404, null, "deleting mailbox");
|
|
321
319
|
}
|
|
320
|
+
id = this.pickMailbox(list, selector, "deleting mailbox").mailbox_id;
|
|
322
321
|
}
|
|
323
322
|
const result = await this.client.request(`/mailboxes/v1/${id}`, {
|
|
324
323
|
method: "DELETE",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/namespaces/email.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/namespaces/email.ts"],"names":[],"mappings":"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"}
|