run402 2.20.1 → 2.22.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/lib/email.mjs CHANGED
@@ -20,7 +20,7 @@ Subcommands:
20
20
  Fetch raw RFC-822 bytes (inbound only)
21
21
  reply <message_id> --html "..." [--text "..."] [--subject "..."] [--from-name "..."] [--project <id>]
22
22
  Reply to an inbound message (threads via In-Reply-To)
23
- delete [<mailbox_id>] --confirm [--project <id>]
23
+ delete [<slug|mailbox_id>] --confirm [--project <id>]
24
24
  Delete the project's mailbox (irreversible)
25
25
  webhooks <action> [args...] Manage webhooks (see below)
26
26
 
@@ -38,6 +38,13 @@ Send modes:
38
38
  Raw HTML: --subject "..." --html "..." [--text "..."] (both --subject and --html required)
39
39
  Both modes support: --from-name "Display Name" --project <id>
40
40
 
41
+ Choosing a mailbox:
42
+ --mailbox <slug|id> Target a specific mailbox. Accepted by send, list, get,
43
+ get-raw, reply, info, and webhooks. Required when the
44
+ project has more than one mailbox; omit it only when the
45
+ project has exactly one. (delete takes the target as its
46
+ positional <slug|mailbox_id>.)
47
+
41
48
  Templates:
42
49
  project_invite — requires --var project_name=... --var invite_url=...
43
50
  magic_link — requires --var project_name=... --var link_url=... --var expires_in=...
@@ -58,7 +65,7 @@ Examples:
58
65
  run402 email webhooks register --url https://example.com/hook --events delivery,bounced
59
66
 
60
67
  Notes:
61
- - One mailbox per project
68
+ - Up to 5 mailboxes per project — pass --mailbox <slug|id> to pick one
62
69
  - Single recipient per send (no CC/BCC)
63
70
  - Slug: 3-63 chars, lowercase alphanumeric + hyphens, no consecutive hyphens
64
71
  - --project defaults to the active project
@@ -82,12 +89,13 @@ Options:
82
89
  --html "..." HTML body (raw HTML mode; required with --subject)
83
90
  --text "..." Plain-text body (raw HTML mode; optional)
84
91
  --from-name "..." Display name for the From header
92
+ --mailbox <slug|id> Target mailbox (required if the project has more than one)
85
93
  --project <id> Project ID (defaults to the active project)
86
94
  `,
87
95
  list: `run402 email list — List messages in the mailbox
88
96
 
89
97
  Usage:
90
- run402 email list [--limit <n>] [--after <cursor>] [--project <id>]
98
+ run402 email list [--mailbox <slug|id>] [--limit <n>] [--after <cursor>] [--project <id>]
91
99
  `,
92
100
  reply: `run402 email reply — Reply to an inbound message (threaded via In-Reply-To)
93
101
 
@@ -97,7 +105,7 @@ Usage:
97
105
  delete: `run402 email delete — Delete the project's mailbox (irreversible)
98
106
 
99
107
  Usage:
100
- run402 email delete [<mailbox_id>] --confirm [--project <id>]
108
+ run402 email delete [<slug|mailbox_id>] --confirm [--project <id>]
101
109
  `,
102
110
  info: `run402 email info — Show mailbox info (ID, address, slug)
103
111
 
@@ -131,7 +139,7 @@ Options:
131
139
  --project <id> Project ID (defaults to the active project)
132
140
 
133
141
  Notes:
134
- - One mailbox per project
142
+ - Up to 5 mailboxes per project (create distinct slugs, e.g. sign, support)
135
143
 
136
144
  Examples:
137
145
  run402 email create my-app
@@ -229,7 +237,7 @@ async function create(args) {
229
237
  }
230
238
 
231
239
  async function send(args) {
232
- const valueFlags = ["--template", "--to", "--subject", "--html", "--text", "--from-name", "--project", "--vars", "--var"];
240
+ const valueFlags = ["--template", "--to", "--subject", "--html", "--text", "--from-name", "--project", "--vars", "--var", "--mailbox"];
233
241
  validateArgs(args, valueFlags);
234
242
  const template = strictFlagValue(args, "--template");
235
243
  const to = strictFlagValue(args, "--to");
@@ -237,6 +245,7 @@ async function send(args) {
237
245
  const html = strictFlagValue(args, "--html");
238
246
  const text = strictFlagValue(args, "--text");
239
247
  const fromName = strictFlagValue(args, "--from-name");
248
+ const mailbox = strictFlagValue(args, "--mailbox");
240
249
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
241
250
  const variables = parseVars(args);
242
251
 
@@ -253,6 +262,7 @@ async function send(args) {
253
262
  html: html ?? undefined,
254
263
  text: text ?? undefined,
255
264
  from_name: fromName ?? undefined,
265
+ mailbox: mailbox ?? undefined,
256
266
  });
257
267
  console.log(JSON.stringify({ message_id: data.message_id, to: data.to, template: data.template, subject: data.subject, sent: true }));
258
268
  } catch (err) {
@@ -261,15 +271,17 @@ async function send(args) {
261
271
  }
262
272
 
263
273
  async function list(args) {
264
- const valueFlags = ["--project", "--limit", "--after"];
274
+ const valueFlags = ["--project", "--limit", "--after", "--mailbox"];
265
275
  validateArgs(args, valueFlags);
266
276
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
267
277
  const limit = strictFlagValue(args, "--limit");
268
278
  const after = strictFlagValue(args, "--after");
279
+ const mailbox = strictFlagValue(args, "--mailbox");
269
280
  try {
270
281
  const data = await getSdk().email.list(projectId, {
271
282
  limit: limit ? parseIntegerFlag("--limit", limit) : undefined,
272
283
  after: after ?? undefined,
284
+ mailbox: mailbox ?? undefined,
273
285
  });
274
286
  console.log(JSON.stringify(data, null, 2));
275
287
  } catch (err) {
@@ -278,9 +290,11 @@ async function list(args) {
278
290
  }
279
291
 
280
292
  async function get(args) {
281
- validateArgs(args, ["--project"]);
282
- const messageId = positionalArgs(args, ["--project"])[0] ?? null;
293
+ const valueFlags = ["--project", "--mailbox"];
294
+ validateArgs(args, valueFlags);
295
+ const messageId = positionalArgs(args, valueFlags)[0] ?? null;
283
296
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
297
+ const mailbox = strictFlagValue(args, "--mailbox");
284
298
  if (!messageId) {
285
299
  fail({
286
300
  code: "BAD_USAGE",
@@ -289,7 +303,7 @@ async function get(args) {
289
303
  });
290
304
  }
291
305
  try {
292
- const data = await getSdk().email.get(projectId, messageId);
306
+ const data = await getSdk().email.get(projectId, messageId, { mailbox: mailbox ?? undefined });
293
307
  console.log(JSON.stringify(data, null, 2));
294
308
  } catch (err) {
295
309
  reportSdkError(err);
@@ -297,10 +311,11 @@ async function get(args) {
297
311
  }
298
312
 
299
313
  async function getRaw(args) {
300
- const valueFlags = ["--project", "--output"];
314
+ const valueFlags = ["--project", "--output", "--mailbox"];
301
315
  validateArgs(args, valueFlags);
302
316
  const messageId = positionalArgs(args, valueFlags)[0] ?? null;
303
317
  const outputFile = strictFlagValue(args, "--output");
318
+ const mailbox = strictFlagValue(args, "--mailbox");
304
319
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
305
320
  if (!messageId) {
306
321
  fail({
@@ -311,7 +326,7 @@ async function getRaw(args) {
311
326
  }
312
327
 
313
328
  try {
314
- const result = await getSdk().email.getRaw(projectId, messageId);
329
+ const result = await getSdk().email.getRaw(projectId, messageId, { mailbox: mailbox ?? undefined });
315
330
  const buf = Buffer.from(result.bytes);
316
331
 
317
332
  if (outputFile) {
@@ -327,13 +342,14 @@ async function getRaw(args) {
327
342
  }
328
343
 
329
344
  async function reply(args) {
330
- const valueFlags = ["--project", "--html", "--text", "--subject", "--from-name"];
345
+ const valueFlags = ["--project", "--html", "--text", "--subject", "--from-name", "--mailbox"];
331
346
  validateArgs(args, valueFlags);
332
347
  const messageId = positionalArgs(args, valueFlags)[0] ?? null;
333
348
  const html = strictFlagValue(args, "--html");
334
349
  const text = strictFlagValue(args, "--text");
335
350
  const subjectOverride = strictFlagValue(args, "--subject");
336
351
  const fromName = strictFlagValue(args, "--from-name");
352
+ const mailbox = strictFlagValue(args, "--mailbox");
337
353
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
338
354
 
339
355
  if (!messageId) {
@@ -352,7 +368,7 @@ async function reply(args) {
352
368
 
353
369
  try {
354
370
  // Fetch the original message to derive the reply-to address and subject.
355
- const original = await getSdk().email.get(projectId, messageId);
371
+ const original = await getSdk().email.get(projectId, messageId, { mailbox: mailbox ?? undefined });
356
372
  const replyTo = original.from || original.from_address || original.sender || null;
357
373
  if (!replyTo) {
358
374
  fail({
@@ -374,6 +390,7 @@ async function reply(args) {
374
390
  text: text ?? undefined,
375
391
  from_name: fromName ?? undefined,
376
392
  in_reply_to: messageId,
393
+ mailbox: mailbox ?? undefined,
377
394
  });
378
395
  console.log(JSON.stringify({ message_id: data.message_id, to: data.to, subject: replySubject, in_reply_to: messageId, sent: true }));
379
396
  } catch (err) {
@@ -403,10 +420,12 @@ async function deleteMailbox(args) {
403
420
  }
404
421
 
405
422
  async function status(args) {
406
- validateArgs(args, ["--project"]);
423
+ const valueFlags = ["--project", "--mailbox"];
424
+ validateArgs(args, valueFlags);
407
425
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
426
+ const mailbox = strictFlagValue(args, "--mailbox");
408
427
  try {
409
- const mb = await getSdk().email.getMailbox(projectId);
428
+ const mb = await getSdk().email.getMailbox(projectId, mailbox ?? undefined);
410
429
  console.log(JSON.stringify({ mailbox_id: mb.mailbox_id, address: mb.address, slug: mb.slug }));
411
430
  } catch (err) {
412
431
  reportSdkError(err);
package/lib/webhooks.mjs CHANGED
@@ -9,14 +9,16 @@ Usage:
9
9
  run402 email webhooks <action> [args...]
10
10
 
11
11
  Actions:
12
- list [--project <id>] List webhooks
13
- get <webhook_id> [--project <id>] Get a webhook
14
- delete <webhook_id> [--project <id>] Delete a webhook
15
- update <webhook_id> [--url <url>] [--events <e1,e2>] Update a webhook
16
- register --url <url> --events <e1,e2> [--project <id>] Register a new webhook
12
+ list [--mailbox <slug|id>] [--project <id>] List webhooks
13
+ get <webhook_id> [--mailbox <slug|id>] [--project <id>] Get a webhook
14
+ delete <webhook_id> [--mailbox <slug|id>] [--project <id>] Delete a webhook
15
+ update <webhook_id> [--url <url>] [--events <e1,e2>] [--mailbox <slug|id>] Update a webhook
16
+ register --url <url> --events <e1,e2> [--mailbox <slug|id>] [--project <id>] Register a new webhook
17
17
 
18
18
  Valid events: delivery, bounced, complained, reply_received
19
19
 
20
+ Pass --mailbox <slug|id> to target a specific mailbox when the project has more than one.
21
+
20
22
  Examples:
21
23
  run402 email webhooks list
22
24
  run402 email webhooks register --url https://example.com/hook --events delivery,bounced
@@ -67,10 +69,12 @@ function validateArgs(args, knownFlags, flagsWithValues = knownFlags) {
67
69
  }
68
70
 
69
71
  async function list(args) {
70
- validateArgs(args, ["--project"]);
72
+ const valueFlags = ["--project", "--mailbox"];
73
+ validateArgs(args, valueFlags);
71
74
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
75
+ const mailbox = strictFlagValue(args, "--mailbox");
72
76
  try {
73
- const data = await getSdk().email.webhooks.list(projectId);
77
+ const data = await getSdk().email.webhooks.list(projectId, { mailbox: mailbox ?? undefined });
74
78
  console.log(JSON.stringify(data, null, 2));
75
79
  } catch (err) {
76
80
  reportSdkError(err);
@@ -78,9 +82,11 @@ async function list(args) {
78
82
  }
79
83
 
80
84
  async function get(args) {
81
- validateArgs(args, ["--project"]);
82
- const webhookId = positionalArgs(args, ["--project"])[0] ?? null;
85
+ const valueFlags = ["--project", "--mailbox"];
86
+ validateArgs(args, valueFlags);
87
+ const webhookId = positionalArgs(args, valueFlags)[0] ?? null;
83
88
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
89
+ const mailbox = strictFlagValue(args, "--mailbox");
84
90
  if (!webhookId) {
85
91
  fail({
86
92
  code: "BAD_USAGE",
@@ -89,7 +95,7 @@ async function get(args) {
89
95
  });
90
96
  }
91
97
  try {
92
- const data = await getSdk().email.webhooks.get(projectId, webhookId);
98
+ const data = await getSdk().email.webhooks.get(projectId, webhookId, { mailbox: mailbox ?? undefined });
93
99
  console.log(JSON.stringify(data, null, 2));
94
100
  } catch (err) {
95
101
  reportSdkError(err);
@@ -97,9 +103,11 @@ async function get(args) {
97
103
  }
98
104
 
99
105
  async function del(args) {
100
- validateArgs(args, ["--project"]);
101
- const webhookId = positionalArgs(args, ["--project"])[0] ?? null;
106
+ const valueFlags = ["--project", "--mailbox"];
107
+ validateArgs(args, valueFlags);
108
+ const webhookId = positionalArgs(args, valueFlags)[0] ?? null;
102
109
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
110
+ const mailbox = strictFlagValue(args, "--mailbox");
103
111
  if (!webhookId) {
104
112
  fail({
105
113
  code: "BAD_USAGE",
@@ -108,7 +116,7 @@ async function del(args) {
108
116
  });
109
117
  }
110
118
  try {
111
- await getSdk().email.webhooks.delete(projectId, webhookId);
119
+ await getSdk().email.webhooks.delete(projectId, webhookId, { mailbox: mailbox ?? undefined });
112
120
  console.log(JSON.stringify({ webhook_id: webhookId, project_id: projectId, deleted: true }));
113
121
  } catch (err) {
114
122
  reportSdkError(err);
@@ -116,11 +124,12 @@ async function del(args) {
116
124
  }
117
125
 
118
126
  async function update(args) {
119
- const valueFlags = ["--project", "--url", "--events"];
127
+ const valueFlags = ["--project", "--url", "--events", "--mailbox"];
120
128
  validateArgs(args, valueFlags);
121
129
  const webhookId = positionalArgs(args, valueFlags)[0] ?? null;
122
130
  const url = strictFlagValue(args, "--url");
123
131
  const eventsRaw = strictFlagValue(args, "--events");
132
+ const mailbox = strictFlagValue(args, "--mailbox");
124
133
  const projectId = resolveProjectId(strictFlagValue(args, "--project"));
125
134
  if (!webhookId) {
126
135
  fail({
@@ -142,6 +151,7 @@ async function update(args) {
142
151
  const data = await getSdk().email.webhooks.update(projectId, webhookId, {
143
152
  url: url ?? undefined,
144
153
  events: eventsRaw ? eventsRaw.split(",").map((e) => e.trim()) : undefined,
154
+ mailbox: mailbox ?? undefined,
145
155
  });
146
156
  console.log(JSON.stringify(data));
147
157
  } catch (err) {
@@ -150,10 +160,11 @@ async function update(args) {
150
160
  }
151
161
 
152
162
  async function register(args) {
153
- const valueFlags = ["--project", "--url", "--events"];
163
+ const valueFlags = ["--project", "--url", "--events", "--mailbox"];
154
164
  validateArgs(args, valueFlags);
155
165
  const url = strictFlagValue(args, "--url");
156
166
  const eventsRaw = strictFlagValue(args, "--events");
167
+ const mailbox = strictFlagValue(args, "--mailbox");
157
168
  const projectOpt = strictFlagValue(args, "--project");
158
169
  const projectId = resolveProjectId(projectOpt);
159
170
 
@@ -178,7 +189,7 @@ async function register(args) {
178
189
 
179
190
  const events = eventsRaw.split(",").map((e) => e.trim());
180
191
  try {
181
- const data = await getSdk().email.webhooks.register(projectId, { url, events });
192
+ const data = await getSdk().email.webhooks.register(projectId, { url, events, mailbox: mailbox ?? undefined });
182
193
  console.log(JSON.stringify(data));
183
194
  } catch (err) {
184
195
  reportSdkError(err);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "run402",
3
- "version": "2.20.1",
3
+ "version": "2.22.0",
4
4
  "description": "CLI for Run402 — provision Postgres databases, deploy static sites, generate images, and manage wallets via x402 and MPP micropayments.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -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, mailboxId?: string) => Promise<DeleteMailboxResult>;
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 the project's mailbox id + service key. Prefers the provider's
115
- * cached value; falls back to a discovery GET and persists the result
116
- * when the provider supports `updateProject`.
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
- /** Create a mailbox for a project. Idempotent: returns the existing one on 409. */
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
- /** Get the project's mailbox info. Uses the cached mailbox_id when available. */
134
- getMailbox(projectId: string): Promise<MailboxInfo>;
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, mailboxId?: string): Promise<DeleteMailboxResult>;
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":"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"}
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 the project's mailbox id + service key. Prefers the provider's
88
- * cached value; falls back to a discovery GET and persists the result
89
- * when the provider supports `updateProject`.
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 (project.mailbox_id) {
96
- return { id: project.mailbox_id, serviceKey: project.service_key };
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, "resolving mailbox");
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
- const first = list[0];
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
- try {
106
- await updater.call(this.client.credentials, projectId, {
107
- mailbox_id: first.mailbox_id,
108
- mailbox_address: first.address,
109
- });
110
- }
111
- catch {
112
- // best-effort cache — ignore failures
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
- /** Create a mailbox for a project. Idempotent: returns the existing one on 409. */
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
- try {
139
- const result = await this.client.request("/mailboxes/v1", {
140
- method: "POST",
141
- headers: { Authorization: `Bearer ${project.service_key}` },
142
- body: { slug, project_id: projectId },
143
- context: "creating mailbox",
144
- });
145
- const updater = this.client.credentials.updateProject;
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
- /** Get the project's mailbox info. Uses the cached mailbox_id when available. */
277
- async getMailbox(projectId) {
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
- if (list.length === 0) {
283
- throw new ApiError("No mailbox found for this project. Use `create_mailbox` to create one first.", 404, null, "getting mailbox");
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, mailboxId) {
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 = mailboxId;
311
- if (!id) {
312
- if (project.mailbox_id) {
313
- id = project.mailbox_id;
314
- }
315
- else {
316
- const list = await this.listMailboxes(project.service_key);
317
- if (list.length === 0) {
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":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,OAAO,GAAG,iCAAiC,CAAC;AAClD,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,CAAU,CAAC;AAuGxF,MAAM,OAAO,QAAQ;IAEA;IACA;IAFnB,YACmB,MAAc,EACd,cAAkF;QADlF,WAAM,GAAN,MAAM,CAAQ;QACd,mBAAc,GAAd,cAAc,CAAoE;IAClG,CAAC;IAEJ,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,IAA4B;QAC5D,8BAA8B,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAwB,iBAAiB,EAAE,WAAW,EAAE;YAChF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YAC5C,OAAO,EAAE,qBAAqB;SAC/B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAiB;QAC1B,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAwB,iBAAiB,EAAE,WAAW,EAAE;YAChF,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,kBAAkB;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,SAAiB,EAAE,SAAiB;QAC5C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACtF,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,iBAAiB,EAAE,aAAa,gBAAgB,EAAE,EAClD;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,iBAAiB;SAC3B,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CACV,SAAiB,EACjB,SAAiB,EACjB,IAA0B;QAE1B,MAAM,KAAK,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,UAAU,CAClB,yDAAyD,EACzD,kBAAkB,CACnB,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACvF,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACtC,IAAI,KAAK,CAAC,SAAS;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,iBAAiB,EAAE,aAAa,gBAAgB,EAAE,EAClD;YACE,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,IAAI;YACJ,OAAO,EAAE,kBAAkB;SAC5B,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,SAAiB;QAC/C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACvF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAU,iBAAiB,EAAE,aAAa,gBAAgB,EAAE,EAAE;YACrF,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,kBAAkB;SAC5B,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,KAAK;IAOa;IANpB,QAAQ,CAAW;IACnB,MAAM,CAAoE;IAC1E,MAAM,CAA8C;IACpD,IAAI,CAA8C;IAClD,MAAM,CAA0E;IAEzF,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,cAAc,CAAC,SAAiB;QAC5C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAExE,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;QACrE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAChB,8EAA8E,EAC9E,GAAG,EACH,IAAI,EACJ,mBAAmB,CACpB,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;QACtD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE;oBACrD,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,eAAe,EAAE,KAAK,CAAC,OAAO;iBAC/B,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;IACnE,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,UAAkB;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAsB,eAAe,EAAE;YAC1E,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,mBAAmB;SAC7B,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,IAAY;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAEvE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,UAAU,CAAC,+BAA+B,EAAE,kBAAkB,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,UAAU,CAClB,6EAA6E,EAC7E,kBAAkB,CACnB,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,UAAU,CAClB,4CAA4C,EAC5C,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAsB,eAAe,EAAE;gBAC7E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;gBAC3D,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE;gBACrC,OAAO,EAAE,kBAAkB;aAC5B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;YACtD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE;oBACrD,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,eAAe,EAAE,MAAM,CAAC,OAAO;iBAChC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClD,gEAAgE;gBAChE,kEAAkE;gBAClE,qDAAqD;gBACrD,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAC3D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;wBAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;wBACtD,IAAI,OAAO,EAAE,CAAC;4BACZ,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE;gCACrD,UAAU,EAAE,QAAQ,CAAC,UAAU;gCAC/B,eAAe,EAAE,QAAQ,CAAC,OAAO;6BAClC,CAAC,CAAC;wBACL,CAAC;wBACD,OAAO,QAAQ,CAAC;oBAClB,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,4CAA4C;gBAC9C,CAAC;YACH,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,IAAsB;QAClD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,UAAU,CAClB,4EAA4E,EAC5E,eAAe,CAChB,CAAC;QACJ,CAAC;QACD,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,IAAI,OAAO,CAAC;QACpC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnC,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1B,MAAM,IAAI,UAAU,CAClB,qEAAqE,EACrE,eAAe,CAChB,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,UAAU,CAClB,gEAAgE,EAChE,eAAe,CAChB,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,IAAI,CAAC,CAAC,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,IAAI,UAAU,CAClB,8DAA8D,OAAO,MAAM,EAC3E,eAAe,CAChB,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,IAAI,GAA4B,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;QACtD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAExE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAkB,iBAAiB,EAAE,WAAW,EAAE;YAC1E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,IAAI;YACJ,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,OAA0B,EAAE;QACxD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,KAAK;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,iBAAiB,EAAE,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvF,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAiB,IAAI,EAAE;YAC/C,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,gBAAgB;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,yDAAyD;IACzD,KAAK,CAAC,GAAG,CAAC,SAAiB,EAAE,SAAiB;QAC5C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAc,iBAAiB,EAAE,aAAa,gBAAgB,EAAE,EAAE;YAC1F,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;YAClD,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,SAAiB;QAC/C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACxF,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,iBAAiB,EAAE,aAAa,gBAAgB,MAAM,CAAC;QACzF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;YACvC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,UAAU,EAAE,EAAE;SACnD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,IAAa,CAAC;YAClB,IAAI,CAAC;gBAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAAC,CAAC;YACnF,MAAM,IAAI,QAAQ,CAChB,kCAAkC,GAAG,CAAC,MAAM,GAAG,EAC/C,GAAG,CAAC,MAAM,EACV,IAAI,EACJ,mBAAmB,CACpB,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO;YACL,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,gBAAgB;YACjE,KAAK,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAChB,8EAA8E,EAC9E,GAAG,EACH,IAAI,EACJ,iBAAiB,CAClB,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;QACtD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE;oBACrD,UAAU,EAAE,EAAE,CAAC,UAAU;oBACzB,eAAe,EAAE,EAAE,CAAC,OAAO;iBAC5B,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,cAAc;YAChB,CAAC;QACH,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,SAAkB;QACvD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAEvE,IAAI,EAAE,GAAG,SAAS,CAAC;QACnB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,QAAQ,CAChB,wDAAwD,EACxD,GAAG,EACH,IAAI,EACJ,kBAAkB,CACnB,CAAC;gBACJ,CAAC;gBACD,EAAE,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAsB,iBAAiB,EAAE,EAAE,EAAE;YACnF,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;YAC3D,OAAO,EAAE,kBAAkB;SAC5B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC;QACtD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE;oBACrD,UAAU,EAAE,SAAS;oBACrB,eAAe,EAAE,SAAS;iBAC3B,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,cAAc;YAChB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,SAAS,iBAAiB,CAAC,KAAc,EAAE,IAAY,EAAE,OAAe;IACtE,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,8BAA8B,CAAC,IAA4B;IAClE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,UAAU,CAClB,yFAAyF,EACzF,qBAAqB,CACtB,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC;IACtD,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,4BAA4B,CACnC,IAA0B;IAE1B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,UAAU,CAClB,8EAA8E,EAC9E,kBAAkB,CACnB,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;IAC5C,IAAI,MAAM;QAAE,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC/D,IAAI,SAAS;QAAE,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAChF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAc,EACd,IAAY,EACZ,OAAe;IAEf,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,qDAAqD,EAAE,OAAO,CAAC,CAAC;IAC9F,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/namespaces/email.ts"],"names":[],"mappings":"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"}
@@ -41,36 +41,8 @@ export type EffectiveProjectStatus = "active" | "past_due" | "frozen" | "dormant
41
41
  export interface ProjectSummary {
42
42
  id: string;
43
43
  name: string;
44
- tier: string;
45
- /**
46
- * Derived effective status — see {@link EffectiveProjectStatus}. Prefer
47
- * this over `account_lifecycle_state` for serving decisions because it
48
- * collapses per-project `deleted_at` / `archived_at` into the same union.
49
- */
50
- effective_status: EffectiveProjectStatus;
51
- /**
52
- * The owning billing account's lifecycle state. Every project on the
53
- * same account shares this value (gateway v1.57+).
54
- */
55
- account_lifecycle_state: BillingAccountLifecycleState;
56
- /**
57
- * Mirror of the owning billing account's `lease_perpetual` flag. When
58
- * `true`, the account never advances past `active` regardless of lease
59
- * expiry. Replaces the v1.56 per-project `pinned`.
60
- */
61
- lease_perpetual: boolean;
62
- /** ISO timestamp when the user deleted this project. `null` if the project still exists. */
63
- deleted_at: string | null;
64
- /** ISO timestamp when an operator archived this project. `null` if not archived. */
65
- archived_at: string | null;
66
44
  api_calls: number;
67
45
  storage_bytes: number;
68
- /**
69
- * Optional: the gateway's project list does not currently include the
70
- * lease expiry. Read it from `r.tier.status()` if you need it.
71
- * `null` is reserved for unleased accounts.
72
- */
73
- lease_expires_at?: string | null;
74
46
  created_at: string;
75
47
  }
76
48
  export interface ListProjectsResult {
@@ -1 +1 @@
1
- {"version":3,"file":"projects.types.d.ts","sourceRoot":"","sources":["../../src/namespaces/projects.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects.types.d.ts","sourceRoot":"","sources":["../../src/namespaces/projects.types.ts"],"names":[],"mappings":"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"}
@@ -67,17 +67,16 @@ export interface TierStatusResult {
67
67
  lease_expires_at: string | null;
68
68
  active: boolean;
69
69
  /**
70
- * Lifecycle state of the owning billing account (gateway v1.57+). Optional
71
- * older gateways do not return it at the top level. When present, this
72
- * mirrors the same field on each `projects[]` entry.
70
+ * Lifecycle state of the owning billing account. `null` only when the
71
+ * wallet has no billing account row (orphan wallet).
73
72
  */
74
- account_lifecycle_state?: "active" | "past_due" | "frozen" | "dormant" | "purged";
73
+ account_lifecycle_state: "active" | "past_due" | "frozen" | "dormant" | "purged" | null;
75
74
  /**
76
- * Operator escape hatch flag on the owning billing account (v1.57+). When
77
- * `true`, the account never advances past `active` regardless of lease
78
- * expiry. Optional older gateways do not return it.
75
+ * Operator escape hatch flag on the owning billing account. When `true`,
76
+ * the account never advances past `active` regardless of lease expiry.
77
+ * `null` only for orphan wallets with no billing account row.
79
78
  */
80
- lease_perpetual?: boolean;
79
+ lease_perpetual: boolean | null;
81
80
  pool_usage: {
82
81
  projects: number;
83
82
  total_api_calls: number;
@@ -1 +1 @@
1
- {"version":3,"file":"tier.d.ts","sourceRoot":"","sources":["../../src/namespaces/tier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tier.d.ts","sourceRoot":"","sources":["../../src/namespaces/tier.ts"],"names":[],"mappings":"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"}