fluxmail 0.8.0 → 0.9.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.
Files changed (45) hide show
  1. package/dist/accounts/googleAuth.d.ts +5 -1
  2. package/dist/accounts/googleAuth.d.ts.map +1 -1
  3. package/dist/accounts/googleAuth.js +5 -1
  4. package/dist/accounts/googleAuth.js.map +1 -1
  5. package/dist/accounts/registry.d.ts +1 -0
  6. package/dist/accounts/registry.d.ts.map +1 -1
  7. package/dist/accounts/registry.js +11 -0
  8. package/dist/accounts/registry.js.map +1 -1
  9. package/dist/cli.d.ts.map +1 -1
  10. package/dist/cli.js +91 -5
  11. package/dist/cli.js.map +1 -1
  12. package/dist/cliInstances.js +1 -1
  13. package/dist/cliInstances.js.map +1 -1
  14. package/dist/cliMail.d.ts +1 -0
  15. package/dist/cliMail.d.ts.map +1 -1
  16. package/dist/cliMail.js +71 -2
  17. package/dist/cliMail.js.map +1 -1
  18. package/dist/http/rest.d.ts.map +1 -1
  19. package/dist/http/rest.js +241 -12
  20. package/dist/http/rest.js.map +1 -1
  21. package/dist/mcp/buildServer.d.ts +1 -0
  22. package/dist/mcp/buildServer.d.ts.map +1 -1
  23. package/dist/mcp/buildServer.js +73 -3
  24. package/dist/mcp/buildServer.js.map +1 -1
  25. package/dist/permissions.js +1 -1
  26. package/dist/permissions.js.map +1 -1
  27. package/dist/scheduler/sendScheduler.js +1 -1
  28. package/dist/scheduler/sendScheduler.js.map +1 -1
  29. package/dist/service/emailService.d.ts +35 -2
  30. package/dist/service/emailService.d.ts.map +1 -1
  31. package/dist/service/emailService.js +270 -35
  32. package/dist/service/emailService.js.map +1 -1
  33. package/dist/service/searchCursor.d.ts +2 -0
  34. package/dist/service/searchCursor.d.ts.map +1 -1
  35. package/dist/service/searchCursor.js +4 -1
  36. package/dist/service/searchCursor.js.map +1 -1
  37. package/dist/storage/db.d.ts +66 -2
  38. package/dist/storage/db.d.ts.map +1 -1
  39. package/dist/storage/db.js +25 -1
  40. package/dist/storage/db.js.map +1 -1
  41. package/dist/storage/sendAs.d.ts +9 -0
  42. package/dist/storage/sendAs.d.ts.map +1 -0
  43. package/dist/storage/sendAs.js +26 -0
  44. package/dist/storage/sendAs.js.map +1 -0
  45. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"cliMail.js","sourceRoot":"","sources":["../src/cliMail.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cliMail.js","sourceRoot":"","sources":["../src/cliMail.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/http/rest.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAK,MAAM,mBAAmB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAWtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAA2C,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAIrF,OAAO,EAA2C,KAAK,SAAS,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAMpH,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAEzE,UAAU,aAAa;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED,KAAK,OAAO,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,aAAa,CAAA;CAAE,CAAC;AAGpE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,oBAAoB,CAAC;IACpC,EAAE,EAAE,UAAU,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAkPD,eAAO,MAAM,qBAAqB;;;;;;;CAOjC,CAAC;AAiiBF,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CA6tBrE"}
1
+ {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/http/rest.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAK,MAAM,mBAAmB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAA2C,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAIrF,OAAO,EAA2C,KAAK,SAAS,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAMpH,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAEzE,UAAU,aAAa;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED,KAAK,OAAO,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,aAAa,CAAA;CAAE,CAAC;AAGpE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,oBAAoB,CAAC;IACpC,EAAE,EAAE,UAAU,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAkSD,eAAO,MAAM,qBAAqB;;;;;;;CAOjC,CAAC;AAgkBF,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CA43BrE"}
package/dist/http/rest.js CHANGED
@@ -18,7 +18,7 @@ const messageId = id.openapi({ example: 'msg_123' });
18
18
  const threadId = id.openapi({ example: 'thread_123' });
19
19
  const draftId = id.openapi({ example: 'draft_123' });
20
20
  const scheduleId = id.openapi({ example: 'schedule_123' });
21
- const attachmentId = id.openapi({ example: 'attachment_123' });
21
+ const attachmentId = id.describe('Opaque attachment ID returned by message metadata').openapi({ example: 'part:1.2' });
22
22
  const isoDate = z
23
23
  .string()
24
24
  .regex(/^\d{4}-\d{2}-\d{2}$/, 'Expected an ISO date in YYYY-MM-DD format')
@@ -91,6 +91,24 @@ const LabelSchema = z
91
91
  })
92
92
  .strict()
93
93
  .openapi('Label');
94
+ const SendAsIdentitySchema = z
95
+ .object({
96
+ email: z.string().email(),
97
+ name: z.string().optional(),
98
+ replyTo: z.string().email().optional(),
99
+ isPrimary: z.boolean(),
100
+ source: z.enum(['provider', 'configured']),
101
+ })
102
+ .strict()
103
+ .openapi('SendAsIdentity');
104
+ const ConfiguredSendAsSchema = z
105
+ .object({ email: z.string().email(), name: z.string().optional() })
106
+ .strict()
107
+ .openapi('ConfiguredSendAs');
108
+ const ReplaceSendAsRequestSchema = z
109
+ .object({ identities: z.array(ConfiguredSendAsSchema) })
110
+ .strict()
111
+ .openapi('ReplaceSendAsRequest');
94
112
  const MessageSchema = z
95
113
  .object({
96
114
  id: z.string(),
@@ -214,23 +232,49 @@ const ErrorSchema = z
214
232
  function dataEnvelope(schema) {
215
233
  return z.object({ data: schema, warnings: z.array(z.string()).optional() }).strict();
216
234
  }
235
+ const SearchPageMetaSchema = z
236
+ .object({
237
+ nextPageToken: z.string().optional(),
238
+ exhausted: z.boolean(),
239
+ diagnostics: z.array(SearchDiagnosticSchema).optional(),
240
+ incomplete: z.literal(true).optional(),
241
+ incompleteReason: z.enum(['scan_limit', 'provider_limit', 'time_limit']).optional(),
242
+ inspectedCandidates: z.number().int().nonnegative().optional(),
243
+ })
244
+ .strict()
245
+ .openapi('SearchPageMeta');
217
246
  function pagedEnvelope(schema) {
218
247
  return z
219
248
  .object({
220
249
  data: z.array(schema),
221
- meta: z
222
- .object({
223
- nextPageToken: z.string().optional(),
224
- diagnostics: z.array(SearchDiagnosticSchema).optional(),
225
- incomplete: z.literal(true).optional(),
226
- incompleteReason: z.enum(['scan_limit', 'provider_limit']).optional(),
227
- inspectedCandidates: z.number().int().nonnegative().optional(),
228
- })
229
- .strict(),
250
+ meta: SearchPageMetaSchema,
230
251
  warnings: z.array(z.string()).optional(),
231
252
  })
232
253
  .strict();
233
254
  }
255
+ const BatchSearchResponseSchema = z
256
+ .object({
257
+ data: z.array(z.union([
258
+ z.object({ accountId: z.string(), data: z.array(MessageSchema), meta: SearchPageMetaSchema }).strict(),
259
+ z
260
+ .object({
261
+ accountId: z.string(),
262
+ error: z
263
+ .object({
264
+ code: z.string(),
265
+ message: z.string(),
266
+ data: z.record(z.unknown()).optional(),
267
+ exhausted: z.literal(false),
268
+ })
269
+ .strict(),
270
+ })
271
+ .strict(),
272
+ ])),
273
+ meta: z.object({ exhausted: z.boolean() }).strict(),
274
+ warnings: z.array(z.string()).optional(),
275
+ })
276
+ .strict()
277
+ .openapi('BatchSearchResponse');
234
278
  const errorResponses = {
235
279
  400: { content: { 'application/json': { schema: ErrorSchema } }, description: 'Invalid request' },
236
280
  401: { content: { 'application/json': { schema: ErrorSchema } }, description: 'Authentication required' },
@@ -262,6 +306,7 @@ const idempotencyHeaders = z.object({
262
306
  .describe('A unique key for one intended delivery. Reuse it when retrying the same request.'),
263
307
  });
264
308
  const draftShape = {
309
+ from: z.string().email().optional(),
265
310
  to: z.array(EmailAddressSchema).optional(),
266
311
  cc: z.array(EmailAddressSchema).optional(),
267
312
  bcc: z.array(EmailAddressSchema).optional(),
@@ -285,6 +330,7 @@ const SendDraftSchema = z.object({ draftId, sendAt: z.string().datetime({ offset
285
330
  const SendRequestSchema = z.union([SendDraftSchema, SendContentSchema]).openapi('SendRequest');
286
331
  const ForwardRequestSchema = z
287
332
  .object({
333
+ from: z.string().email().optional(),
288
334
  to: z.array(EmailAddressSchema).min(1),
289
335
  cc: z.array(EmailAddressSchema).optional(),
290
336
  comment: z.string().optional(),
@@ -360,8 +406,32 @@ const messageQuerySchema = z
360
406
  .regex(/^(?:[1-9]|[1-9][0-9]|100)$/)
361
407
  .optional(),
362
408
  pageToken: z.string().min(1).optional(),
409
+ includeSnippet: z.enum(['true', 'false']).optional(),
363
410
  })
364
411
  .strict();
412
+ const portableFolder = z.enum(['inbox', 'sent', 'drafts', 'archive', 'spam', 'trash', 'all']);
413
+ const BatchSearchRequestSchema = z
414
+ .object({
415
+ accounts: z
416
+ .array(z.object({ accountId, pageToken: z.string().min(1).optional() }).strict())
417
+ .min(1)
418
+ .max(20),
419
+ query: z.string().min(1),
420
+ folder: portableFolder.optional(),
421
+ text: z.string().optional(),
422
+ from: z.string().optional(),
423
+ to: z.string().optional(),
424
+ subject: z.string().optional(),
425
+ read: z.boolean().optional(),
426
+ starred: z.boolean().optional(),
427
+ hasAttachment: z.boolean().optional(),
428
+ after: isoDate.optional(),
429
+ before: isoDate.optional(),
430
+ pageSize: z.number().int().min(1).max(100).optional(),
431
+ includeSnippet: z.boolean().optional(),
432
+ })
433
+ .strict()
434
+ .openapi('BatchSearchRequest');
365
435
  const MODIFY_CAPABILITIES = {
366
436
  markRead: 'mail.organize',
367
437
  markUnread: 'mail.organize',
@@ -538,7 +608,9 @@ async function runJson(c, deps, options, fn) {
538
608
  if (reservation) {
539
609
  completeIdempotencyKey(deps.db, { ...reservation, responseStatus: status, responseBody: body });
540
610
  }
541
- outcome = 'success';
611
+ outcome = result.operationFailed ? 'error' : 'success';
612
+ if (result.operationFailed)
613
+ errorCode = 'account_failure';
542
614
  return new Response(body, {
543
615
  status,
544
616
  headers: { 'content-type': 'application/json; charset=UTF-8', 'cache-control': 'no-store' },
@@ -643,6 +715,7 @@ async function runAttachment(c, deps, accountId, messageId, attachmentId) {
643
715
  function toSendInput(input) {
644
716
  return {
645
717
  body: input.body,
718
+ ...(input.from ? { from: input.from } : {}),
646
719
  ...(input.to ? { to: input.to } : {}),
647
720
  ...(input.cc ? { cc: input.cc } : {}),
648
721
  ...(input.bcc ? { bcc: input.bcc } : {}),
@@ -686,6 +759,7 @@ function toEmailQuery(input) {
686
759
  page: {
687
760
  ...(input.pageSize ? { pageSize: Number(input.pageSize) } : {}),
688
761
  ...(input.pageToken ? { pageToken: input.pageToken } : {}),
762
+ ...(input.includeSnippet !== undefined ? { includeSnippet: input.includeSnippet === 'true' } : {}),
689
763
  },
690
764
  };
691
765
  }
@@ -832,6 +906,40 @@ export function createRestApi(deps) {
832
906
  // Auditing must not replace the API response.
833
907
  }
834
908
  });
909
+ app.use('/api/v1/accounts/:accountId/send-as', async (c, next) => {
910
+ await next();
911
+ if (c.req.method !== 'PUT')
912
+ return;
913
+ const auth = c.get('restAuth');
914
+ if (!auth)
915
+ return;
916
+ let errorCode;
917
+ if (c.res.status >= 400) {
918
+ try {
919
+ const payload = (await c.res.clone().json());
920
+ if (typeof payload.error?.code === 'string')
921
+ errorCode = payload.error.code;
922
+ }
923
+ catch {
924
+ errorCode = 'internal';
925
+ }
926
+ }
927
+ try {
928
+ recordAdminAuditEvent(deps.db, {
929
+ operation: 'put /api/v1/accounts/:id/send-as',
930
+ outcome: c.res.status < 400 ? 'success' : 'error',
931
+ actorKeyId: auth.kind === 'api_key' ? auth.keyId : undefined,
932
+ actorSessionId: auth.kind === 'session' ? auth.sessionId : undefined,
933
+ actorMemberId: auth.memberId,
934
+ resourceType: 'account',
935
+ resourceId: c.req.param('accountId'),
936
+ ...(errorCode ? { errorCode } : {}),
937
+ });
938
+ }
939
+ catch {
940
+ // Auditing must not replace the API response.
941
+ }
942
+ });
835
943
  app.use('/api/v1/*', async (c, next) => {
836
944
  c.set('restLogger', deps.logger);
837
945
  if (c.req.path.startsWith('/api/v1/auth/') ||
@@ -859,7 +967,8 @@ export function createRestApi(deps) {
859
967
  }
860
968
  if (publicPaths.has(c.req.path))
861
969
  return next();
862
- const administrative = c.req.path.startsWith('/api/v1/admin/');
970
+ const administrative = c.req.path.startsWith('/api/v1/admin/') ||
971
+ (c.req.method === 'PUT' && /^\/api\/v1\/accounts\/[^/]+\/send-as$/.test(c.req.path));
863
972
  if (administrative) {
864
973
  c.header('cache-control', 'no-store');
865
974
  c.header('x-content-type-options', 'nosniff');
@@ -1005,6 +1114,54 @@ export function createRestApi(deps) {
1005
1114
  data: await c.get('restService').listLabels(accountId),
1006
1115
  }));
1007
1116
  });
1117
+ const listSendAsRoute = createRoute({
1118
+ method: 'get',
1119
+ path: '/api/v1/accounts/{accountId}/send-as',
1120
+ operationId: 'listSendAs',
1121
+ summary: 'List sender addresses',
1122
+ description: 'List sender addresses available for an email account.',
1123
+ request: { params: accountParams },
1124
+ ...protectedRoute,
1125
+ responses: {
1126
+ 200: {
1127
+ content: { 'application/json': { schema: dataEnvelope(z.array(SendAsIdentitySchema)) } },
1128
+ description: 'Sender addresses',
1129
+ },
1130
+ ...errorResponses,
1131
+ },
1132
+ });
1133
+ app.openapi(listSendAsRoute, (c) => {
1134
+ const { accountId } = c.req.valid('param');
1135
+ return runJson(c, deps, { operation: 'listSendAs', capabilities: ['mail.read'] }, async () => ({
1136
+ data: await c.get('restService').listSendAs(accountId),
1137
+ }));
1138
+ });
1139
+ const replaceSendAsRoute = createRoute({
1140
+ method: 'put',
1141
+ path: '/api/v1/accounts/{accountId}/send-as',
1142
+ operationId: 'replaceSendAs',
1143
+ summary: 'Replace configured sender addresses',
1144
+ description: 'Replace the configured Outlook or IMAP aliases for an email account.',
1145
+ request: {
1146
+ params: accountParams,
1147
+ body: { required: true, content: { 'application/json': { schema: ReplaceSendAsRequestSchema } } },
1148
+ },
1149
+ ...protectedRoute,
1150
+ responses: {
1151
+ 200: {
1152
+ content: { 'application/json': { schema: dataEnvelope(z.array(SendAsIdentitySchema)) } },
1153
+ description: 'Sender addresses replaced',
1154
+ },
1155
+ ...errorResponses,
1156
+ },
1157
+ });
1158
+ app.openapi(replaceSendAsRoute, (c) => {
1159
+ const { accountId } = c.req.valid('param');
1160
+ const { identities } = c.req.valid('json');
1161
+ return runJson(c, deps, { operation: 'replaceSendAs', capabilities: ['admin.accounts'], quota: false }, async () => ({
1162
+ data: await c.get('restService').replaceSendAs(accountId, identities),
1163
+ }));
1164
+ });
1008
1165
  const listMessagesRoute = createRoute({
1009
1166
  method: 'get',
1010
1167
  path: '/api/v1/accounts/{accountId}/messages',
@@ -1027,6 +1184,7 @@ export function createRestApi(deps) {
1027
1184
  data: result.items,
1028
1185
  meta: {
1029
1186
  ...(result.nextPageToken ? { nextPageToken: result.nextPageToken } : {}),
1187
+ exhausted: result.exhausted,
1030
1188
  ...([...diagnostics, ...(result.diagnostics ?? [])].length
1031
1189
  ? { diagnostics: [...diagnostics, ...(result.diagnostics ?? [])] }
1032
1190
  : {}),
@@ -1037,6 +1195,77 @@ export function createRestApi(deps) {
1037
1195
  };
1038
1196
  });
1039
1197
  });
1198
+ const batchSearchRoute = createRoute({
1199
+ method: 'post',
1200
+ path: '/api/v1/messages/search',
1201
+ operationId: 'searchMessages',
1202
+ summary: 'Search multiple accounts',
1203
+ description: 'Search up to 20 email accounts with one portable query.',
1204
+ request: {
1205
+ body: { content: { 'application/json': { schema: BatchSearchRequestSchema } }, required: true },
1206
+ },
1207
+ ...protectedRoute,
1208
+ responses: {
1209
+ 200: {
1210
+ content: { 'application/json': { schema: BatchSearchResponseSchema } },
1211
+ description: 'Grouped search results',
1212
+ },
1213
+ ...errorResponses,
1214
+ },
1215
+ });
1216
+ app.openapi(batchSearchRoute, (c) => runJson(c, deps, { operation: 'searchMessages', capabilities: ['mail.read'] }, async () => {
1217
+ const input = c.req.valid('json');
1218
+ const parsed = parseEmailSearch(input.query);
1219
+ if (!parsed.valid) {
1220
+ throw new EmailError('invalid_request', parsed.diagnostics.map((item) => item.message).join(' '), {
1221
+ diagnostics: parsed.diagnostics,
1222
+ });
1223
+ }
1224
+ const structured = {};
1225
+ for (const key of ['folder', 'text', 'from', 'to', 'subject', 'after', 'before']) {
1226
+ if (input[key] !== undefined)
1227
+ structured[key] = input[key];
1228
+ }
1229
+ for (const key of ['read', 'starred', 'hasAttachment']) {
1230
+ if (input[key] !== undefined)
1231
+ structured[key] = input[key];
1232
+ }
1233
+ const merged = mergeEmailQueries(parsed.query, structured);
1234
+ if (!merged.success) {
1235
+ throw new EmailError('invalid_request', merged.diagnostics.map((item) => item.message).join(' '), {
1236
+ diagnostics: merged.diagnostics,
1237
+ });
1238
+ }
1239
+ const result = await c.get('restService').searchMessagesBatch({
1240
+ accounts: input.accounts,
1241
+ query: merged.query,
1242
+ ...(input.pageSize !== undefined ? { pageSize: input.pageSize } : {}),
1243
+ ...(input.includeSnippet !== undefined ? { includeSnippet: input.includeSnippet } : {}),
1244
+ });
1245
+ return {
1246
+ data: result.groups.map((group) => {
1247
+ if (!group.page)
1248
+ return { accountId: group.accountId, error: group.error };
1249
+ const diagnostics = [...parsed.diagnostics, ...(group.page.diagnostics ?? [])];
1250
+ return {
1251
+ accountId: group.accountId,
1252
+ data: group.page.items,
1253
+ meta: {
1254
+ exhausted: group.page.exhausted,
1255
+ ...(group.page.nextPageToken ? { nextPageToken: group.page.nextPageToken } : {}),
1256
+ ...(diagnostics.length ? { diagnostics } : {}),
1257
+ ...(group.page.incomplete ? { incomplete: true } : {}),
1258
+ ...(group.page.incompleteReason ? { incompleteReason: group.page.incompleteReason } : {}),
1259
+ ...(group.page.inspectedCandidates !== undefined
1260
+ ? { inspectedCandidates: group.page.inspectedCandidates }
1261
+ : {}),
1262
+ },
1263
+ };
1264
+ }),
1265
+ meta: { exhausted: result.exhausted },
1266
+ operationFailed: result.groups.some((group) => group.error !== undefined),
1267
+ };
1268
+ }));
1040
1269
  const getMessageRoute = createRoute({
1041
1270
  method: 'get',
1042
1271
  path: '/api/v1/accounts/{accountId}/messages/{messageId}',