@domino-sdk/relay 1.5.2 → 1.7.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 (44) hide show
  1. package/dist/{activity-DeKJsRry.d.ts → activity-Br6vyYze.d.ts} +147 -116
  2. package/dist/authoring.d.ts +59 -47
  3. package/dist/authoring.js +3 -3
  4. package/dist/{automatic-outcomes-B1xrETxm.d.ts → automatic-outcomes-C1Q9LrDb.d.ts} +224 -13
  5. package/dist/browser.d.ts +22 -10
  6. package/dist/browser.js +6 -6
  7. package/dist/{capability-error-DNMwKmlL.d.ts → capability-error-Bv996M-h.d.ts} +2 -0
  8. package/dist/{chunk-GQKYAQM6.js → chunk-23QJ7WH4.js} +1 -1
  9. package/dist/{chunk-WJSSJ7AF.js → chunk-5ECM6AWV.js} +24 -4
  10. package/dist/{chunk-XFMSUPNS.js → chunk-6ON4RMEN.js} +1 -1
  11. package/dist/{chunk-VFHHLN6A.js → chunk-6RBF3UDA.js} +49 -6
  12. package/dist/chunk-AXRMT33W.js +112 -0
  13. package/dist/{chunk-24AFCBZN.js → chunk-BFZHJA2B.js} +2 -2
  14. package/dist/{chunk-EYH5RDIE.js → chunk-C25TDFHN.js} +4 -2
  15. package/dist/{chunk-36HTX2BM.js → chunk-GMPPLZKH.js} +61 -4
  16. package/dist/{chunk-BGGKNIRP.js → chunk-JW4G3SY5.js} +1 -1
  17. package/dist/{chunk-JON5SESL.js → chunk-KGJSKGKI.js} +84 -6
  18. package/dist/{chunk-DGWMLN35.js → chunk-ZOUEEK5L.js} +16 -5
  19. package/dist/{client-gqnRUHpC.d.ts → client-pfml_XAa.d.ts} +88 -41
  20. package/dist/{groups-Ck-OxzjD.d.ts → groups-BpWEqaPn.d.ts} +175 -3
  21. package/dist/{images-Dv-P5VBw.d.ts → images-BaKYd0fl.d.ts} +1 -1
  22. package/dist/index.d.ts +9 -9
  23. package/dist/index.js +5 -5
  24. package/dist/internal.d.ts +6 -113
  25. package/dist/internal.js +18 -24
  26. package/dist/{offers-Cy-e4o5x.d.ts → offers-CYtal8jO.d.ts} +3 -2
  27. package/dist/{outcomes-kVB-Juzs.d.ts → pages-CixTNnF4.d.ts} +142 -99
  28. package/dist/{pages-BBYD21IE.d.ts → participant-activity-DkL3nY5a.d.ts} +1 -14
  29. package/dist/portal-proxy.js +48 -36
  30. package/dist/react/index.d.ts +25 -3949
  31. package/dist/react/index.js +8 -7
  32. package/dist/referral-reward-kinds-ClxAuCGx.d.ts +171 -0
  33. package/dist/{request-error-DWduJCGV.d.ts → request-error-D_dUPLwo.d.ts} +5 -0
  34. package/dist/{schema-DfJzH2ci.d.ts → schema-CQydLqw4.d.ts} +122 -37
  35. package/dist/schema.d.ts +10 -10
  36. package/dist/schema.js +48 -6
  37. package/dist/server/index.d.ts +9673 -66110
  38. package/dist/server/index.js +1048 -550
  39. package/dist/sign-in-options-CtXUFV7E.d.ts +202 -0
  40. package/dist/{submission-input-BZkm6ohU.d.ts → submission-input-CLefHTrj.d.ts} +2 -2
  41. package/package.json +1 -1
  42. package/dist/browser-D_3s8B5e.d.ts +0 -4154
  43. package/dist/chunk-GUP7YRR4.js +0 -42
  44. package/dist/identity-integration-GxAHdKR2.d.ts +0 -58
@@ -11,28 +11,45 @@ import {
11
11
  automaticSchedulingQuerySchema,
12
12
  automaticSchedulingRetrySchema,
13
13
  automaticSchedulingSchema,
14
+ deploymentActionSchema,
14
15
  deploymentPreviewSchema,
15
16
  deploymentRecordSchema,
17
+ deploymentRejectionSchema,
16
18
  deploymentResultSchema,
17
19
  projectDeploymentSchema,
18
20
  promoteDeploymentSchema,
19
21
  publishDeploymentSchema,
20
22
  rejectDeploymentSchema,
21
- rollbackDeploymentSchema,
22
23
  submitDeploymentSchema
23
- } from "../chunk-VFHHLN6A.js";
24
+ } from "../chunk-6RBF3UDA.js";
24
25
  import "../chunk-MC6V6VMG.js";
25
26
  import {
27
+ REFERRAL_INTEGRATION_REWARD_ERROR,
28
+ containsReferralIntegrationReward,
26
29
  identityIntegrationInputSchema,
27
30
  identityIntegrationSchema,
28
31
  identityIntegrationSecretSchema,
29
- identityKindClaimSchema
30
- } from "../chunk-WJSSJ7AF.js";
32
+ identityKindClaimSchema,
33
+ parseImageExtraction,
34
+ parseImageResult,
35
+ participantExchangeSchema,
36
+ questConfiguration,
37
+ sequenceCursorSchema
38
+ } from "../chunk-5ECM6AWV.js";
31
39
  import {
32
40
  imageAssetArtifactSchema
33
- } from "../chunk-BGGKNIRP.js";
34
- import "../chunk-GQKYAQM6.js";
35
- import "../chunk-GUP7YRR4.js";
41
+ } from "../chunk-JW4G3SY5.js";
42
+ import {
43
+ sourceDataSchema,
44
+ sourceRoles,
45
+ validateQuestShape
46
+ } from "../chunk-23QJ7WH4.js";
47
+ import {
48
+ isIntegrationParticipantPath,
49
+ isParticipantRoute,
50
+ participantRoutePattern,
51
+ participantRoutes
52
+ } from "../chunk-AXRMT33W.js";
36
53
  import {
37
54
  allocateQuestSchema,
38
55
  allocatedQuestSchema,
@@ -50,7 +67,7 @@ import {
50
67
  rewardDeliveriesSchema,
51
68
  rewardDeliverySchema,
52
69
  saveQuestDraftSchema
53
- } from "../chunk-EYH5RDIE.js";
70
+ } from "../chunk-C25TDFHN.js";
54
71
  import {
55
72
  cosmosNetworkSchema,
56
73
  createPointLedgerSchema,
@@ -62,6 +79,7 @@ import {
62
79
  engagementPageSchema,
63
80
  engagementPublishSchema,
64
81
  engagementRuleSchema,
82
+ engagementRuleVersionPageSchema,
65
83
  engagementVersionPageSchema,
66
84
  engagementVersionQuerySchema,
67
85
  evmChainIdSchema,
@@ -73,13 +91,14 @@ import {
73
91
  leaderboardSettlementSchema,
74
92
  leaderboardSettlementSummarySchema,
75
93
  linkedWalletSchema,
94
+ managedPointHistoryPageSchema,
76
95
  managedPointLedgerSchema,
77
96
  managedProfileSchema,
78
97
  offerControlSchema,
79
98
  offerSchema,
99
+ pointLedgerPropertiesSchema,
80
100
  pointLedgerSchema,
81
101
  pointsAccountSchema,
82
- pointsEntrySchema,
83
102
  pointsMutationSchema,
84
103
  pointsResultSchema,
85
104
  profileModerationSchema,
@@ -92,11 +111,14 @@ import {
92
111
  referralControlSchema,
93
112
  referralHistorySchema,
94
113
  referralManagementSchema,
114
+ referralQualificationSchema,
115
+ referralRewardResolutionSchema,
116
+ referralSuspensionSchema,
95
117
  solanaMainnet,
96
118
  walletBalanceSchema,
97
119
  walletSignInNetworksSchema,
98
120
  walletUnlinkInputSchema
99
- } from "../chunk-36HTX2BM.js";
121
+ } from "../chunk-GMPPLZKH.js";
100
122
  import {
101
123
  MANAGEMENT_TIMEOUT,
102
124
  lifetime,
@@ -108,13 +130,16 @@ import {
108
130
  RequestError,
109
131
  isRequestError
110
132
  } from "../chunk-NPGENI7K.js";
111
- import "../chunk-XFMSUPNS.js";
133
+ import "../chunk-6ON4RMEN.js";
112
134
  import {
135
+ CompletionSourceKind,
136
+ addGroupMemberSchema,
113
137
  appIdentityKindSchema,
114
138
  attemptSchema,
115
139
  authProviderSchema,
116
140
  beginHandoverSchema,
117
141
  campaignEnrollmentSchema,
142
+ completionSourceSchema,
118
143
  configurePickupSchema,
119
144
  confirmHandoverSchema,
120
145
  contentPerformancePageSchema,
@@ -125,14 +150,23 @@ import {
125
150
  counterHistorySchema,
126
151
  counterModerationResultSchema,
127
152
  counterModerationSchema,
153
+ createGroupSchema,
128
154
  createStockItemSchema,
129
155
  entitlementCorrectionSchema,
130
156
  entitlementSchema,
157
+ eventSchema,
158
+ groupMemberPageSchema,
159
+ groupMemberSchema,
160
+ groupPageQuerySchema,
161
+ groupPageSchema,
131
162
  identifier,
163
+ managedGroupSchema,
132
164
  memberCampaignEnrollmentInputSchema,
133
165
  memberCampaignWithdrawalInputSchema,
134
166
  memberIdentitySchema,
135
167
  memberProgressSchema,
168
+ pageCursorSchema,
169
+ pageQuerySchema,
136
170
  pickupAvailabilitySchema,
137
171
  pickupCatalogSchema,
138
172
  projectCalendarInputSchema,
@@ -140,6 +174,7 @@ import {
140
174
  projectGroupKey,
141
175
  publishedReleaseSchema,
142
176
  questSettingsInputSchema,
177
+ removeGroupMemberSchema,
143
178
  snapshotSchema,
144
179
  staffDecisionSchema,
145
180
  stockItemSchema,
@@ -147,6 +182,8 @@ import {
147
182
  trackerContentReadSchema,
148
183
  trackerContentSchema,
149
184
  trackerControlSchema,
185
+ trackerDataIssue,
186
+ trackerDataIssues,
150
187
  trackerIngestResultSchema,
151
188
  trackerIngestSchema,
152
189
  trackerOutcomePageSchema,
@@ -158,8 +195,12 @@ import {
158
195
  trackerPreviewSchema,
159
196
  trackerQuerySchema,
160
197
  trackerStatusSchema,
161
- trackerSummarySchema
162
- } from "../chunk-JON5SESL.js";
198
+ trackerSummarySchema,
199
+ trackerTriggerOutcomePageSchema,
200
+ trackerTriggerOutcomeQuerySchema,
201
+ updateGroupSchema,
202
+ whereSchemaIssue
203
+ } from "../chunk-KGJSKGKI.js";
163
204
 
164
205
  // src/server/test-members.ts
165
206
  import { z } from "zod";
@@ -213,6 +254,12 @@ var testMemberHistorySchema = z.object({
213
254
 
214
255
  // src/server/webhooks.ts
215
256
  import { z as z2 } from "zod";
257
+ var PayoutSourceKind = {
258
+ Quest: "quest",
259
+ Leaderboard: "leaderboard",
260
+ Engagement: "engagement",
261
+ Manual: "manual"
262
+ };
216
263
  var webhookEventSchema = z2.object({
217
264
  id: z2.string().uuid(),
218
265
  version: z2.literal(1),
@@ -258,11 +305,16 @@ var webhookDeliverySchema = z2.object({
258
305
  replayOf: z2.string().uuid().nullable()
259
306
  });
260
307
  var webhookQuerySchema = z2.object({
308
+ /** A page's `nextCursor`: the deliveries after it, newest first. */
309
+ cursor: pageCursorSchema.optional(),
310
+ /** @deprecated Use `cursor`. Removed in 2.0.0. */
261
311
  before: z2.string().uuid().optional(),
262
312
  limit: z2.coerce.number().int().min(1).max(100).default(50)
263
313
  }).strict();
264
314
  var webhookDeliveryPageSchema = z2.object({
265
315
  items: z2.array(webhookDeliverySchema),
316
+ nextCursor: pageCursorSchema.nullable().default(null),
317
+ /** @deprecated Use `nextCursor`, passed back as `cursor`. Removed in 2.0.0. */
266
318
  next: z2.string().uuid().nullable()
267
319
  });
268
320
  var WEBHOOK_MAX_BYTES = 64 * 1024;
@@ -339,9 +391,10 @@ var resourceLifecycleResultSchema = z3.object({
339
391
  });
340
392
 
341
393
  // src/server/index.ts
342
- import { z as z8 } from "zod";
394
+ import { z as z9 } from "zod";
343
395
 
344
396
  // src/server/errors.ts
397
+ import { z as z4 } from "zod";
345
398
  var ManagementErrorCode = {
346
399
  /** The input or an option failed validation before anything was sent (kind `client`). */
347
400
  InvalidInput: "invalid-input",
@@ -352,6 +405,10 @@ var ManagementErrorCode = {
352
405
  Aborted: "aborted",
353
406
  InvalidResponse: "invalid-response"
354
407
  };
408
+ var managementErrorSchema = z4.looseObject({
409
+ error: z4.string(),
410
+ code: z4.string().optional()
411
+ });
355
412
  var uncertainStatuses = /* @__PURE__ */ new Set([500, 502, 504]);
356
413
  function uncertainOutcome(init) {
357
414
  if (init.method === void 0 || init.method === "GET") {
@@ -402,10 +459,10 @@ var ManagementError = class extends RequestError {
402
459
  var DEFAULT_MANAGEMENT_TIMEOUT = MANAGEMENT_TIMEOUT;
403
460
 
404
461
  // src/server/hosting.ts
405
- import { z as z5 } from "zod";
462
+ import { z as z6 } from "zod";
406
463
 
407
464
  // src/server/starters.ts
408
- import { z as z4 } from "zod";
465
+ import { z as z5 } from "zod";
409
466
  var starterTemplates = [
410
467
  {
411
468
  id: "campaign",
@@ -438,63 +495,63 @@ var starterTemplates = [
438
495
  summary: "A headless Worker with typed routes and interactive API docs, for plugging Domino into your own product."
439
496
  }
440
497
  ];
441
- var starterIdSchema = z4.enum(
498
+ var starterIdSchema = z5.enum(
442
499
  starterTemplates.map((template) => template.id)
443
500
  );
444
501
 
445
502
  // src/server/hosting.ts
446
- var outputPathSchema = z5.string().min(1).max(512).refine(
503
+ var outputPathSchema = z6.string().min(1).max(512).refine(
447
504
  (path) => path.split("/").every(
448
505
  (part) => /^[\w-][\w.-]*$/.test(part) && part !== "node_modules"
449
506
  ),
450
507
  "Expected a relative build output path without hidden segments"
451
508
  );
452
- var appRoutingSchema = z5.enum(["legacy", "transparent"]).default("legacy");
509
+ var appRoutingSchema = z6.enum(["legacy", "transparent"]).default("legacy");
453
510
  var APP_SECRET_LIMIT = 50;
454
511
  var APP_KV_LIMIT = 5;
455
512
  var APP_SQL_LIMIT = 5;
456
513
  var APP_MIGRATION_LIMIT = 100;
457
514
  var APP_MIGRATION_FILE_BYTES = 9e4;
458
515
  var APP_MIGRATION_TOTAL_BYTES = 1e6;
459
- var appSecretNameSchema = z5.string().regex(
516
+ var appSecretNameSchema = z6.string().regex(
460
517
  /^[A-Z_][A-Z0-9_]{0,63}$/,
461
518
  "Use 1-64 uppercase letters, digits, and underscores, not starting with a digit"
462
519
  ).refine(
463
520
  (name) => !name.startsWith("DOMINO_") && name !== "ASSETS",
464
521
  "DOMINO_ names and ASSETS are reserved for Domino's own bindings"
465
522
  );
466
- var appSecretValueSchema = z5.string().min(1).refine(
523
+ var appSecretValueSchema = z6.string().min(1).refine(
467
524
  (value) => new TextEncoder().encode(value).length <= 5120,
468
525
  "Secret values can be at most 5 KiB"
469
526
  );
470
- var appSecretInputSchema = z5.object({ value: appSecretValueSchema }).strict();
471
- var appSecretSchema = z5.object({
527
+ var appSecretInputSchema = z6.object({ value: appSecretValueSchema }).strict();
528
+ var appSecretSchema = z6.object({
472
529
  name: appSecretNameSchema,
473
- updatedAt: z5.number(),
474
- updatedBy: z5.string()
530
+ updatedAt: z6.number(),
531
+ updatedBy: z6.string()
475
532
  });
476
- var appSecretDeclarationSchema = z5.object({
477
- description: z5.string().trim().min(1).max(500),
478
- required: z5.boolean().default(true)
533
+ var appSecretDeclarationSchema = z6.object({
534
+ description: z6.string().trim().min(1).max(500),
535
+ required: z6.boolean().default(true)
479
536
  }).strict();
480
- var appSecretDeclarationsSchema = z5.record(appSecretNameSchema, appSecretDeclarationSchema).refine(
537
+ var appSecretDeclarationsSchema = z6.record(appSecretNameSchema, appSecretDeclarationSchema).refine(
481
538
  (secrets) => Object.keys(secrets).length <= APP_SECRET_LIMIT,
482
539
  `Declare at most ${APP_SECRET_LIMIT} app secrets`
483
540
  );
484
- var appSecretListSchema = z5.object({
485
- secrets: z5.array(appSecretSchema),
486
- declared: z5.array(appSecretDeclarationSchema.extend({ name: appSecretNameSchema })).default([])
541
+ var appSecretListSchema = z6.object({
542
+ secrets: z6.array(appSecretSchema),
543
+ declared: z6.array(appSecretDeclarationSchema.extend({ name: appSecretNameSchema })).default([])
487
544
  });
488
- var hostedAppSecretsSchema = z5.object({ secrets: z5.record(appSecretNameSchema, appSecretValueSchema) }).strict();
489
- var storageDescription = z5.object({
490
- description: z5.string().trim().min(1).max(500)
545
+ var hostedAppSecretsSchema = z6.object({ secrets: z6.record(appSecretNameSchema, appSecretValueSchema) }).strict();
546
+ var storageDescription = z6.object({
547
+ description: z6.string().trim().min(1).max(500)
491
548
  }).strict();
492
- var appStorageSchema = z5.object({
493
- kv: z5.record(appSecretNameSchema, storageDescription).refine(
549
+ var appStorageSchema = z6.object({
550
+ kv: z6.record(appSecretNameSchema, storageDescription).refine(
494
551
  (stores) => Object.keys(stores).length <= APP_KV_LIMIT,
495
552
  `Declare at most ${APP_KV_LIMIT} KV stores`
496
553
  ).default({}),
497
- sql: z5.record(
554
+ sql: z6.record(
498
555
  appSecretNameSchema,
499
556
  storageDescription.extend({
500
557
  migrations: outputPathSchema.optional()
@@ -504,55 +561,60 @@ var appStorageSchema = z5.object({
504
561
  `Declare at most ${APP_SQL_LIMIT} SQL stores`
505
562
  ).default({})
506
563
  }).strict();
507
- var appStorageKindSchema = z5.enum(["kv", "sql"]);
508
- var appStorageListSchema = z5.object({
509
- stores: z5.array(
510
- z5.object({
511
- kind: z5.string(),
564
+ var appStorageKindSchema = z6.enum(["kv", "sql"]);
565
+ var appStorageListSchema = z6.object({
566
+ stores: z6.array(
567
+ z6.object({
568
+ kind: z6.string(),
512
569
  name: appSecretNameSchema,
513
- createdAt: z5.number().nullable(),
514
- declared: z5.boolean(),
515
- description: z5.string().optional()
570
+ createdAt: z6.number().nullable(),
571
+ declared: z6.boolean(),
572
+ description: z6.string().optional()
516
573
  })
517
574
  )
518
575
  });
519
576
  var APP_STORAGE_ROW_LIMIT = 50;
520
577
  var APP_STORAGE_PREVIEW_CHARACTERS = 2e3;
521
- var appStorageCellSchema = z5.union([
522
- z5.string(),
523
- z5.number(),
524
- z5.null(),
525
- z5.object({ text: z5.string(), truncated: z5.literal(true) }),
526
- z5.object({ blob: z5.number().int().min(0) })
578
+ var appStorageCellSchema = z6.union([
579
+ z6.string(),
580
+ z6.number(),
581
+ z6.null(),
582
+ z6.object({ text: z6.string(), truncated: z6.literal(true) }),
583
+ z6.object({ blob: z6.number().int().min(0) })
527
584
  ]);
528
- var appStorageTablesSchema = z5.object({
529
- tables: z5.array(
585
+ var appStorageTablesSchema = z6.object({
586
+ tables: z6.array(
530
587
  /** `kind` is SQLite's: `table` or `view`. */
531
- z5.object({ name: z5.string(), kind: z5.string() })
588
+ z6.object({ name: z6.string(), kind: z6.string() })
532
589
  )
533
590
  });
534
- var appStorageRowsSchema = z5.object({
535
- table: z5.string(),
536
- columns: z5.array(z5.string()),
537
- rows: z5.array(z5.array(appStorageCellSchema)),
538
- offset: z5.number().int().min(0),
539
- total: z5.number().int().min(0)
591
+ var appStorageRowsSchema = z6.object({
592
+ table: z6.string(),
593
+ columns: z6.array(z6.string()),
594
+ rows: z6.array(z6.array(appStorageCellSchema)),
595
+ /** How many rows come before this page in storage order. */
596
+ offset: z6.number().int().min(0),
597
+ total: z6.number().int().min(0),
598
+ /** Pass back as `cursor` for the next page; null on the last one. */
599
+ nextCursor: pageCursorSchema.nullable().default(null)
540
600
  });
541
- var appStorageKeysSchema = z5.object({
542
- keys: z5.array(
543
- z5.object({ name: z5.string(), expiration: z5.number().nullable() })
601
+ var appStorageKeysSchema = z6.object({
602
+ keys: z6.array(
603
+ z6.object({ name: z6.string(), expiration: z6.number().nullable() })
544
604
  ),
545
- /** Pass back to read the next page; null on the last one. */
546
- cursor: z5.string().nullable()
605
+ /** Pass back as `cursor` for the next page; null on the last one. */
606
+ nextCursor: pageCursorSchema.nullable().default(null),
607
+ /** @deprecated Use `nextCursor`. Removed in 2.0.0. */
608
+ cursor: z6.string().nullable()
547
609
  });
548
- var appStorageValueSchema = z5.object({
549
- key: z5.string(),
550
- size: z5.number().int().min(0),
610
+ var appStorageValueSchema = z6.object({
611
+ key: z6.string(),
612
+ size: z6.number().int().min(0),
551
613
  /** Null when the value is not UTF-8 text. */
552
- text: z5.string().nullable(),
553
- truncated: z5.boolean()
614
+ text: z6.string().nullable(),
615
+ truncated: z6.boolean()
554
616
  });
555
- var appMigrationNameSchema = z5.string().max(255).regex(/^[\w-][\w.-]*\.sql$/);
617
+ var appMigrationNameSchema = z6.string().max(255).regex(/^[\w-][\w.-]*\.sql$/);
556
618
  function compareAppMigrations(a, b) {
557
619
  const left = Number.parseInt(a.split("_")[0], 10);
558
620
  const right = Number.parseInt(b.split("_")[0], 10);
@@ -569,12 +631,12 @@ function compareAppMigrations(a, b) {
569
631
  }
570
632
  return a < b ? -1 : a > b ? 1 : 0;
571
633
  }
572
- var appMigrationsSchema = z5.record(
634
+ var appMigrationsSchema = z6.record(
573
635
  appSecretNameSchema,
574
- z5.array(
575
- z5.object({
636
+ z6.array(
637
+ z6.object({
576
638
  name: appMigrationNameSchema,
577
- sql: z5.string().min(1).refine(
639
+ sql: z6.string().min(1).refine(
578
640
  (sql) => new TextEncoder().encode(sql).length <= APP_MIGRATION_FILE_BYTES,
579
641
  `A migration file must not exceed ${APP_MIGRATION_FILE_BYTES} bytes`
580
642
  )
@@ -592,21 +654,21 @@ var appMigrationsSchema = z5.record(
592
654
  );
593
655
  var appScripts = {
594
656
  routing: appRoutingSchema,
595
- devScript: z5.string().regex(/^[\w:-]+$/),
596
- checkScript: z5.string().regex(/^[\w:-]+$/),
597
- buildScript: z5.string().regex(/^[\w:-]+$/)
657
+ devScript: z6.string().regex(/^[\w:-]+$/),
658
+ checkScript: z6.string().regex(/^[\w:-]+$/),
659
+ buildScript: z6.string().regex(/^[\w:-]+$/)
598
660
  };
599
661
  var workerSettings = {
600
- runWorkerFirst: z5.boolean().default(false),
662
+ runWorkerFirst: z6.boolean().default(false),
601
663
  main: outputPathSchema.refine(
602
664
  (path) => /\.m?js$/.test(path),
603
665
  "Expected a compiled JavaScript entry"
604
666
  ),
605
- compatibilityDate: z5.string().regex(/^\d{4}-\d{2}-\d{2}$/),
606
- compatibilityFlags: z5.array(z5.string().min(1)).max(50).default([]),
607
- vars: z5.record(
608
- z5.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/).refine((name) => name !== "ASSETS"),
609
- z5.string()
667
+ compatibilityDate: z6.string().regex(/^\d{4}-\d{2}-\d{2}$/),
668
+ compatibilityFlags: z6.array(z6.string().min(1)).max(50).default([]),
669
+ vars: z6.record(
670
+ z6.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/).refine((name) => name !== "ASSETS"),
671
+ z6.string()
610
672
  ).default({}),
611
673
  secrets: appSecretDeclarationsSchema.default({}),
612
674
  storage: appStorageSchema.optional()
@@ -634,62 +696,62 @@ var distinctBindings = (worker, ctx) => {
634
696
  }
635
697
  }
636
698
  };
637
- var hostedAppSchema = z5.discriminatedUnion("kind", [
638
- z5.object({
639
- kind: z5.literal("static"),
699
+ var hostedAppSchema = z6.discriminatedUnion("kind", [
700
+ z6.object({
701
+ kind: z6.literal("static"),
640
702
  directory: outputPathSchema,
641
703
  ...appScripts
642
704
  }).strict(),
643
- z5.object({
644
- kind: z5.literal("worker"),
705
+ z6.object({
706
+ kind: z6.literal("worker"),
645
707
  directory: outputPathSchema,
646
708
  assetsDirectory: outputPathSchema.optional(),
647
709
  ...appScripts,
648
710
  ...workerSettings
649
711
  }).strict().superRefine(distinctBindings)
650
712
  ]);
651
- var repositorySchema = z5.object({
652
- id: z5.string().uuid(),
713
+ var repositorySchema = z6.object({
714
+ id: z6.string().uuid(),
653
715
  organization: identifier,
654
716
  project: identifier,
655
- remote: z5.string().url(),
656
- defaultBranch: z5.string(),
657
- status: z5.enum(["provisioning", "ready"])
717
+ remote: z6.string().url(),
718
+ defaultBranch: z6.string(),
719
+ status: z6.enum(["provisioning", "ready"])
658
720
  });
659
- var createRepositorySchema = z5.object({
721
+ var createRepositorySchema = z6.object({
660
722
  /** Omitted: the starter chosen at project setup, else `campaign`. */
661
723
  starter: starterIdSchema.optional()
662
724
  }).strict();
663
- var deviceStartSchema = z5.object({
664
- challenge: z5.string().regex(/^[a-f0-9]{64}$/)
725
+ var deviceStartSchema = z6.object({
726
+ challenge: z6.string().regex(/^[a-f0-9]{64}$/)
665
727
  }).strict();
666
- var deviceRedeemSchema = z5.object({
667
- id: z5.string().uuid(),
668
- verifier: z5.string().min(43).max(128)
728
+ var deviceRedeemSchema = z6.object({
729
+ id: z6.string().uuid(),
730
+ verifier: z6.string().min(43).max(128)
669
731
  }).strict();
670
- var deviceApproveSchema = z5.object({
671
- id: z5.string().uuid(),
672
- code: z5.string().regex(/^[A-F0-9]{4}-[A-F0-9]{4}$/)
732
+ var deviceApproveSchema = z6.object({
733
+ id: z6.string().uuid(),
734
+ code: z6.string().regex(/^[A-F0-9]{4}-[A-F0-9]{4}$/)
673
735
  }).strict();
674
- var commitSchema = z5.string().regex(/^[a-f0-9]{40}$/);
675
- var stageRequestSchema = z5.object({
736
+ var commitSchema = z6.string().regex(/^[a-f0-9]{40}$/);
737
+ var stageRequestSchema = z6.object({
676
738
  commit: commitSchema,
677
- requestId: z5.string().uuid()
739
+ requestId: z6.string().uuid()
678
740
  }).strict();
679
- var buildIdentitySchema = z5.object({
741
+ var buildIdentitySchema = z6.object({
680
742
  routing: appRoutingSchema,
681
- slug: z5.string().min(1).max(35).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/).optional(),
682
- runtime: z5.enum(["simulation", "hosted-test"]).default("simulation"),
683
- id: z5.string().uuid(),
684
- repository: z5.string().uuid(),
743
+ slug: z6.string().min(1).max(35).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/).optional(),
744
+ runtime: z6.enum(["simulation", "hosted-test"]).default("simulation"),
745
+ id: z6.string().uuid(),
746
+ repository: z6.string().uuid(),
685
747
  organization: identifier,
686
748
  project: identifier,
687
749
  commit: commitSchema,
688
- createdAt: z5.number(),
689
- actor: z5.string(),
690
- commitMessage: z5.string().max(500).optional()
750
+ createdAt: z6.number(),
751
+ actor: z6.string(),
752
+ commitMessage: z6.string().max(500).optional()
691
753
  });
692
- var buildPhaseSchema = z5.enum([
754
+ var buildPhaseSchema = z6.enum([
693
755
  "queued",
694
756
  "source",
695
757
  "install",
@@ -699,72 +761,72 @@ var buildPhaseSchema = z5.enum([
699
761
  "ready",
700
762
  "failed"
701
763
  ]);
702
- var buildStatusSchema = z5.object({
764
+ var buildStatusSchema = z6.object({
703
765
  phase: buildPhaseSchema,
704
766
  failedPhase: buildPhaseSchema.optional(),
705
- updatedAt: z5.number(),
706
- message: z5.string()
767
+ updatedAt: z6.number(),
768
+ message: z6.string()
707
769
  });
708
770
  var hostedBuildSchema = buildIdentitySchema.extend({
709
771
  ...buildStatusSchema.shape,
710
- finished: z5.boolean(),
711
- current: z5.boolean(),
712
- stagingUrl: z5.string().url()
713
- });
714
- var stagingAccessModeSchema = z5.enum(["console", "password"]);
715
- var stagingAccessSchema = z5.object({ mode: stagingAccessModeSchema });
716
- var stagingAccessInputSchema = z5.discriminatedUnion("mode", [
717
- z5.object({ mode: z5.literal("console") }).strict(),
718
- z5.object({
719
- mode: z5.literal("password"),
720
- password: z5.string().min(8).max(128)
772
+ finished: z6.boolean(),
773
+ current: z6.boolean(),
774
+ stagingUrl: z6.string().url()
775
+ });
776
+ var stagingAccessModeSchema = z6.enum(["console", "password"]);
777
+ var stagingAccessSchema = z6.object({ mode: stagingAccessModeSchema });
778
+ var stagingAccessInputSchema = z6.discriminatedUnion("mode", [
779
+ z6.object({ mode: z6.literal("console") }).strict(),
780
+ z6.object({
781
+ mode: z6.literal("password"),
782
+ password: z6.string().min(8).max(128)
721
783
  }).strict()
722
784
  ]);
723
- var stagingPathSchema = z5.string().max(2048).refine(
785
+ var stagingPathSchema = z6.string().max(2048).refine(
724
786
  (path) => path.startsWith("/") && !path.startsWith("//") && !path.includes("\\"),
725
787
  "Expected a path on the staging host"
726
788
  );
727
- var stagingLinkSchema = z5.object({
728
- url: z5.string().url(),
729
- expiresAt: z5.number()
789
+ var stagingLinkSchema = z6.object({
790
+ url: z6.string().url(),
791
+ expiresAt: z6.number()
730
792
  });
731
- var buildSnapshotSchema = z5.object({
732
- builds: z5.array(hostedBuildSchema),
793
+ var buildSnapshotSchema = z6.object({
794
+ builds: z6.array(hostedBuildSchema),
733
795
  current: hostedBuildSchema.nullable(),
734
796
  selected: hostedBuildSchema.nullable(),
735
- logs: z5.string()
797
+ logs: z6.string()
736
798
  });
737
- var assetPathSchema = z5.string().max(512).refine(
799
+ var assetPathSchema = z6.string().max(512).refine(
738
800
  (path) => path.startsWith("/") && // oxlint-disable-next-line no-control-regex -- Asset paths must reject control characters.
739
801
  !/[\\\u0000-\u001f?#%]/.test(path) && path.slice(1).split("/").every((part) => part.length > 0 && !part.startsWith(".")),
740
802
  "Expected a public asset path without hidden segments"
741
803
  );
742
- var base64Schema = z5.string().regex(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/);
804
+ var base64Schema = z6.string().regex(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/);
743
805
  var stagedDeploymentLimits = {
744
806
  /** Bytes of JSON, uncompressed. */
745
807
  size: 64e6,
746
808
  /** Bytes of the Brotli-compressed object. */
747
809
  compressedSize: 1e7
748
810
  };
749
- var stagedDeploymentSchema = z5.object({
750
- encoding: z5.literal("br"),
751
- sha256: z5.string().regex(/^[0-9a-f]{64}$/),
752
- compressedSize: z5.number().int().positive().max(stagedDeploymentLimits.compressedSize),
753
- size: z5.number().int().positive().max(stagedDeploymentLimits.size)
811
+ var stagedDeploymentSchema = z6.object({
812
+ encoding: z6.literal("br"),
813
+ sha256: z6.string().regex(/^[0-9a-f]{64}$/),
814
+ compressedSize: z6.number().int().positive().max(stagedDeploymentLimits.compressedSize),
815
+ size: z6.number().int().positive().max(stagedDeploymentLimits.size)
754
816
  }).strict();
755
817
  var stagedDeploymentContentSchema = stagedDeploymentSchema.extend({
756
- content: z5.string().max(Math.ceil(stagedDeploymentLimits.compressedSize / 3) * 4)
818
+ content: z6.string().max(Math.ceil(stagedDeploymentLimits.compressedSize / 3) * 4)
757
819
  }).strict();
758
820
  var stagedDeploymentKey = (build, sha256) => `builds/${build}/deployment/${sha256}.br`;
759
821
  var artifactFields = {
760
822
  routing: appRoutingSchema,
761
- worker: z5.object({
823
+ worker: z6.object({
762
824
  ...workerSettings,
763
825
  migrations: appMigrationsSchema.optional(),
764
- modules: z5.array(
765
- z5.object({
826
+ modules: z6.array(
827
+ z6.object({
766
828
  path: outputPathSchema.refine((path) => path !== "metadata"),
767
- type: z5.enum([
829
+ type: z6.enum([
768
830
  "application/javascript+module",
769
831
  "application/wasm",
770
832
  "text/plain",
@@ -774,26 +836,26 @@ var artifactFields = {
774
836
  }).strict()
775
837
  ).min(1).max(500)
776
838
  }).strict().superRefine(distinctBindings).optional(),
777
- assets: z5.array(
778
- z5.object({
839
+ assets: z6.array(
840
+ z6.object({
779
841
  path: assetPathSchema,
780
842
  content: base64Schema.max(14e6),
781
- size: z5.number().int().min(0).max(1e7)
843
+ size: z6.number().int().min(0).max(1e7)
782
844
  }).strict()
783
845
  ).max(500)
784
846
  };
785
- var buildArtifactsSchema = z5.discriminatedUnion("format", [
786
- z5.object({
787
- format: z5.literal(1),
847
+ var buildArtifactsSchema = z6.discriminatedUnion("format", [
848
+ z6.object({
849
+ format: z6.literal(1),
788
850
  ...artifactFields,
789
- quests: z5.unknown(),
790
- catalog: z5.unknown()
851
+ quests: z6.unknown(),
852
+ catalog: z6.unknown()
791
853
  }).strict(),
792
- z5.object({
793
- format: z5.literal(2),
854
+ z6.object({
855
+ format: z6.literal(2),
794
856
  ...artifactFields,
795
857
  deployment: stagedDeploymentSchema,
796
- images: z5.array(imageAssetArtifactSchema).max(10)
858
+ images: z6.array(imageAssetArtifactSchema).max(10)
797
859
  }).strict()
798
860
  ]).superRefine((value, ctx) => {
799
861
  if (value.worker) {
@@ -845,39 +907,39 @@ var buildArtifactsSchema = z5.discriminatedUnion("format", [
845
907
  });
846
908
 
847
909
  // src/server/development.ts
848
- import { z as z6 } from "zod";
849
- var developmentPreflightSchema = z6.object({
850
- organization: z6.string(),
851
- project: z6.string(),
852
- environment: z6.enum(["test", "live"]),
853
- identity: z6.object({
854
- exchange: z6.literal("supported"),
855
- activeIntegrations: z6.number().int().nonnegative()
910
+ import { z as z7 } from "zod";
911
+ var developmentPreflightSchema = z7.object({
912
+ organization: z7.string(),
913
+ project: z7.string(),
914
+ environment: z7.enum(["test", "live"]),
915
+ identity: z7.object({
916
+ exchange: z7.literal("supported"),
917
+ activeIntegrations: z7.number().int().nonnegative()
856
918
  }).optional(),
857
- staging: z6.enum(["configured", "blocked"]),
858
- development: z6.object({
859
- status: z6.enum(["configured", "blocked"]),
919
+ staging: z7.enum(["configured", "blocked"]),
920
+ development: z7.object({
921
+ status: z7.enum(["configured", "blocked"]),
860
922
  // How `domino dev` reaches the preview origin: a Cloudflare tunnel, or a direct route on a
861
923
  // local development stack. APIs that predate the field use tunnels.
862
- transport: z6.enum(["tunnel", "direct"]).default("tunnel"),
863
- missing: z6.array(z6.string()),
864
- authentication: z6.array(z6.string())
924
+ transport: z7.enum(["tunnel", "direct"]).default("tunnel"),
925
+ missing: z7.array(z7.string()),
926
+ authentication: z7.array(z7.string())
865
927
  }),
866
- checks: z6.array(
867
- z6.object({
868
- id: z6.string(),
869
- status: z6.enum(["ok", "error"]),
870
- message: z6.string(),
871
- missing: z6.array(z6.string()).optional(),
872
- issues: z6.array(z6.string()).optional()
928
+ checks: z7.array(
929
+ z7.object({
930
+ id: z7.string(),
931
+ status: z7.enum(["ok", "error"]),
932
+ message: z7.string(),
933
+ missing: z7.array(z7.string()).optional(),
934
+ issues: z7.array(z7.string()).optional()
873
935
  })
874
936
  )
875
937
  });
876
938
 
877
939
  // src/server/hosted.ts
878
- import { z as z7 } from "zod";
940
+ import { z as z8 } from "zod";
879
941
  var hostedKeyPermissions = ["read", "points", "ingest"];
880
- var hostedKeyPermissionList = z7.array(z7.string()).transform(
942
+ var hostedKeyPermissionList = z8.array(z8.string()).transform(
881
943
  (values) => values.filter(
882
944
  (value) => hostedKeyPermissions.includes(value)
883
945
  )
@@ -889,17 +951,17 @@ var hostedManagementBindings = [
889
951
  "DOMINO_PROJECT",
890
952
  "DOMINO_ENVIRONMENT"
891
953
  ];
892
- var hostedKeySecretSchema = z7.string().regex(/^dhk_[A-Za-z0-9_-]{43}$/, "Expected a hosted app key");
893
- var hostedKeySchema = z7.object({
894
- id: z7.string().uuid(),
954
+ var hostedKeySecretSchema = z8.string().regex(/^dhk_[A-Za-z0-9_-]{43}$/, "Expected a hosted app key");
955
+ var hostedKeySchema = z8.object({
956
+ id: z8.string().uuid(),
895
957
  token: hostedKeySecretSchema,
896
958
  organization: identifier,
897
959
  project: identifier,
898
- environment: z7.enum(["test", "live"]),
960
+ environment: z8.enum(["test", "live"]),
899
961
  permissions: hostedKeyPermissionList,
900
- expiresAt: z7.number().nullable()
962
+ expiresAt: z8.number().nullable()
901
963
  }).strict();
902
- var hostedDeploymentKeySchema = hostedKeySchema.extend({ apiUrl: z7.string().url() }).strict();
964
+ var hostedDeploymentKeySchema = hostedKeySchema.extend({ apiUrl: z8.string().url() }).strict();
903
965
  function hostedManagementClient(env) {
904
966
  const missing = hostedManagementBindings.filter((name) => !env[name]);
905
967
  if (missing.length) {
@@ -907,7 +969,7 @@ function hostedManagementClient(env) {
907
969
  `Missing ${missing.join(", ")}. Domino sets these for hosted apps and domino dev; update the project's vite.config.ts to forward them in development.`
908
970
  );
909
971
  }
910
- const environment = z7.enum(["test", "live"]).parse(env.DOMINO_ENVIRONMENT);
972
+ const environment = z8.enum(["test", "live"]).parse(env.DOMINO_ENVIRONMENT);
911
973
  const token = env.DOMINO_MANAGEMENT_KEY;
912
974
  return createManagementClient({
913
975
  baseUrl: env.DOMINO_API_URL.replace(/\/+$/, ""),
@@ -919,9 +981,9 @@ function hostedManagementClient(env) {
919
981
  }
920
982
 
921
983
  // src/server/index.ts
922
- var environmentSchema = z8.enum(["test", "live"]);
923
- var roleSchema = z8.enum(["editor", "reviewer", "staff"]);
924
- var permissionSchema = z8.enum([
984
+ var environmentSchema = z9.enum(["test", "live"]);
985
+ var roleSchema = z9.enum(["editor", "reviewer", "staff"]);
986
+ var permissionSchema = z9.enum([
925
987
  "read",
926
988
  "publish",
927
989
  "review",
@@ -941,7 +1003,7 @@ var permissionSchema = z8.enum([
941
1003
  */
942
1004
  "enroll"
943
1005
  ]);
944
- var permissionListSchema = z8.array(z8.string()).transform(
1006
+ var permissionListSchema = z9.array(z9.string()).transform(
945
1007
  (values) => values.filter(
946
1008
  (value) => permissionSchema.safeParse(value).success
947
1009
  )
@@ -951,33 +1013,33 @@ var rolePermissions = {
951
1013
  reviewer: ["read", "review"],
952
1014
  staff: ["read", "confirm", "handover"]
953
1015
  };
954
- var projectSetupSchema = z8.object({
955
- mode: z8.enum(["new", "existing"]),
956
- brief: z8.string().trim().min(1).max(4e3)
1016
+ var projectSetupSchema = z9.object({
1017
+ mode: z9.enum(["new", "existing"]),
1018
+ brief: z9.string().trim().min(1).max(4e3)
957
1019
  }).strict();
958
- var operatorUserSchema = z8.object({
959
- id: z8.string(),
960
- name: z8.string().nullable(),
961
- email: z8.string().nullable(),
962
- avatar: z8.string().nullable()
963
- });
964
- var projectSchema = z8.object({
965
- slug: z8.string().min(1).max(35).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/),
966
- createdBy: z8.string().nullable().optional(),
1020
+ var operatorUserSchema = z9.object({
1021
+ id: z9.string(),
1022
+ name: z9.string().nullable(),
1023
+ email: z9.string().nullable(),
1024
+ avatar: z9.string().nullable()
1025
+ });
1026
+ var projectSchema = z9.object({
1027
+ slug: z9.string().min(1).max(35).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/),
1028
+ createdBy: z9.string().nullable().optional(),
967
1029
  creator: operatorUserSchema.nullable().optional(),
968
1030
  /** A response, so fields a newer server adds to the setup are dropped, not rejected. */
969
- setup: z8.object(projectSetupSchema.shape).optional(),
1031
+ setup: z9.object(projectSetupSchema.shape).optional(),
970
1032
  /** The starter chosen at setup. A plain string, so later starters still parse. */
971
- starter: z8.string().optional(),
972
- id: z8.string().min(1),
1033
+ starter: z9.string().optional(),
1034
+ id: z9.string().min(1),
973
1035
  organization: identifier,
974
1036
  project: identifier,
975
- name: z8.string(),
976
- subtitle: z8.string(),
977
- initials: z8.string(),
978
- color: z8.string(),
1037
+ name: z9.string(),
1038
+ subtitle: z9.string(),
1039
+ initials: z9.string(),
1040
+ color: z9.string(),
979
1041
  permissions: permissionListSchema,
980
- environments: z8.array(environmentSchema)
1042
+ environments: z9.array(environmentSchema)
981
1043
  }).refine(
982
1044
  (project) => !project.creator || project.creator.id === project.createdBy,
983
1045
  {
@@ -985,45 +1047,45 @@ var projectSchema = z8.object({
985
1047
  path: ["creator"]
986
1048
  }
987
1049
  );
988
- var projectInputSchema = z8.object({
1050
+ var projectInputSchema = z9.object({
989
1051
  actionId: identifier,
990
- name: z8.string().trim().min(1).max(80),
1052
+ name: z9.string().trim().min(1).max(80),
991
1053
  setup: projectSetupSchema.optional(),
992
1054
  /** The starter a new hosted app begins from, with `setup.mode` "new". */
993
1055
  starter: starterIdSchema.optional()
994
1056
  }).strict();
995
- var projectUpdateInputSchema = z8.union([
996
- z8.object({ name: projectInputSchema.shape.name }).strict(),
997
- z8.object({
1057
+ var projectUpdateInputSchema = z9.union([
1058
+ z9.object({ name: projectInputSchema.shape.name }).strict(),
1059
+ z9.object({
998
1060
  slug: projectSchema.shape.slug,
999
- confirm: z8.string().min(1).max(80)
1061
+ confirm: z9.string().min(1).max(80)
1000
1062
  }).strict()
1001
1063
  ]);
1002
- var projectDeletionInputSchema = z8.object({ confirm: z8.string().min(1).max(80) }).strict();
1003
- var projectDeletionSchema = z8.object({
1064
+ var projectDeletionInputSchema = z9.object({ confirm: z9.string().min(1).max(80) }).strict();
1065
+ var projectDeletionSchema = z9.object({
1004
1066
  project: identifier,
1005
- purgeAfter: z8.number().int()
1067
+ purgeAfter: z9.number().int()
1006
1068
  });
1007
- var projectTransferInputSchema = z8.object({ organization: identifier, confirm: z8.string().min(1).max(80) }).strict();
1008
- var projectTransferSchema = z8.object({
1069
+ var projectTransferInputSchema = z9.object({ organization: identifier, confirm: z9.string().min(1).max(80) }).strict();
1070
+ var projectTransferSchema = z9.object({
1009
1071
  organization: identifier,
1010
1072
  project: identifier
1011
1073
  });
1012
- var grantSchema = z8.object({
1013
- subject: z8.string().min(1).max(200),
1014
- roles: z8.array(roleSchema),
1015
- environments: z8.array(environmentSchema)
1074
+ var grantSchema = z9.object({
1075
+ subject: z9.string().min(1).max(200),
1076
+ roles: z9.array(roleSchema),
1077
+ environments: z9.array(environmentSchema)
1016
1078
  }).strict();
1017
- var grantRecordSchema = z8.object(grantSchema.shape);
1018
- var stockAdditionSchema = z8.object({
1079
+ var grantRecordSchema = z9.object(grantSchema.shape);
1080
+ var stockAdditionSchema = z9.object({
1019
1081
  item: identifier,
1020
- quantity: z8.number().int(),
1082
+ quantity: z9.number().int(),
1021
1083
  actionId: identifier
1022
1084
  });
1023
- var completionRevokeSchema = z8.object({
1085
+ var completionRevokeSchema = z9.object({
1024
1086
  actionId: identifier,
1025
- reason: z8.string().trim().min(1).max(500),
1026
- freeOccurrence: z8.boolean().default(false)
1087
+ reason: z9.string().trim().min(1).max(500),
1088
+ freeOccurrence: z9.boolean().default(false)
1027
1089
  }).strict();
1028
1090
  var RevokedEntitlementOutcome = {
1029
1091
  /** No other completion grants the reward: it is void, after cancelling a handover in progress. */
@@ -1051,213 +1113,216 @@ var RevokedReferralOutcome = {
1051
1113
  /** Qualified on another accepted completion of the program's quest instead. */
1052
1114
  Requalified: "requalified"
1053
1115
  };
1054
- var entitlementOutcomeSchema = z8.string().min(1).max(64);
1055
- var deliveryOutcomeSchema = z8.string().min(1).max(64);
1056
- var referralOutcomeSchema = z8.string().min(1).max(64);
1057
- var completionRevocationSchema = z8.object({
1116
+ var entitlementOutcomeSchema = z9.string().min(1).max(64);
1117
+ var deliveryOutcomeSchema = z9.string().min(1).max(64);
1118
+ var referralOutcomeSchema = z9.string().min(1).max(64);
1119
+ var completionRevocationSchema = z9.object({
1058
1120
  completion: identifier,
1121
+ /** The quest ID, or the board ID when `source.kind` is `leaderboard`. */
1059
1122
  quest: identifier,
1060
1123
  member: identifier,
1061
- revokedAt: z8.number(),
1062
- occurrenceFreed: z8.boolean(),
1063
- points: z8.array(
1064
- z8.object({
1124
+ /** What paid the revoked completion. `source.id` repeats `quest`. */
1125
+ source: completionSourceSchema.optional(),
1126
+ revokedAt: z9.number(),
1127
+ occurrenceFreed: z9.boolean(),
1128
+ points: z9.array(
1129
+ z9.object({
1065
1130
  entry: identifier,
1066
1131
  balance: identifier,
1067
1132
  reversal: identifier.nullable(),
1068
- reversed: z8.number().int(),
1069
- unreversed: z8.number().int()
1133
+ reversed: z9.number().int(),
1134
+ unreversed: z9.number().int()
1070
1135
  })
1071
1136
  ),
1072
- entitlements: z8.array(
1073
- z8.object({
1137
+ entitlements: z9.array(
1138
+ z9.object({
1074
1139
  entitlement: identifier,
1075
1140
  reward: identifier,
1076
1141
  outcome: entitlementOutcomeSchema,
1077
- status: z8.string()
1142
+ status: z9.string()
1078
1143
  })
1079
1144
  ),
1080
- deliveries: z8.array(
1081
- z8.object({
1082
- delivery: z8.string(),
1083
- roleId: z8.string(),
1145
+ deliveries: z9.array(
1146
+ z9.object({
1147
+ delivery: z9.string(),
1148
+ roleId: z9.string(),
1084
1149
  outcome: deliveryOutcomeSchema,
1085
1150
  /**
1086
1151
  * By Relay's records, another accepted, unrevoked completion of the member also granted this
1087
1152
  * role to the same Discord account and server. Relay does not read Discord's membership.
1088
1153
  */
1089
- stillGranted: z8.boolean()
1154
+ stillGranted: z9.boolean()
1090
1155
  })
1091
1156
  ),
1092
- referrals: z8.array(
1093
- z8.object({
1157
+ referrals: z9.array(
1158
+ z9.object({
1094
1159
  program: identifier,
1095
1160
  outcome: referralOutcomeSchema
1096
1161
  })
1097
1162
  ),
1098
- streakMilestone: z8.boolean()
1099
- });
1100
- var accessSchema = z8.object({
1101
- actor: z8.string(),
1102
- organization: z8.string(),
1103
- admin: z8.boolean(),
1104
- local: z8.boolean(),
1105
- projects: z8.array(projectSchema)
1106
- });
1107
- var querySchema = z8.object({
1108
- q: z8.string().max(200).default(""),
1109
- filter: z8.string().max(50).default("all"),
1110
- offset: z8.coerce.number().int().min(0).max(1e6).default(0),
1111
- limit: z8.coerce.number().int().min(1).max(100).default(25)
1112
- });
1113
- var accountProfileSchema = z8.object({
1114
- name: z8.string().optional(),
1163
+ streakMilestone: z9.boolean()
1164
+ });
1165
+ var accessSchema = z9.object({
1166
+ actor: z9.string(),
1167
+ organization: z9.string(),
1168
+ admin: z9.boolean(),
1169
+ local: z9.boolean(),
1170
+ projects: z9.array(projectSchema)
1171
+ });
1172
+ var querySchema = z9.object({
1173
+ q: z9.string().max(200).default(""),
1174
+ filter: z9.string().max(50).default("all"),
1175
+ offset: z9.coerce.number().int().min(0).max(1e6).default(0),
1176
+ limit: z9.coerce.number().int().min(1).max(100).default(25)
1177
+ });
1178
+ var accountProfileSchema = z9.object({
1179
+ name: z9.string().optional(),
1115
1180
  /** The account's handle, where the provider has one (X and Discord). */
1116
- username: z8.string().optional(),
1117
- email: z8.string().optional(),
1118
- emailVerified: z8.boolean().default(false),
1119
- imageUrl: z8.string().url().optional()
1181
+ username: z9.string().optional(),
1182
+ email: z9.string().optional(),
1183
+ emailVerified: z9.boolean().default(false),
1184
+ imageUrl: z9.string().url().optional()
1120
1185
  });
1121
- var memberAccountSchema = z8.object({
1186
+ var memberAccountSchema = z9.object({
1122
1187
  /** `wallet` for wallet sign-in, `account` for every other connected account. */
1123
- kind: z8.enum(["account", "wallet"]),
1124
- provider: z8.string(),
1125
- subject: z8.string(),
1126
- signInEnabled: z8.boolean(),
1188
+ kind: z9.enum(["account", "wallet"]),
1189
+ provider: z9.string(),
1190
+ subject: z9.string(),
1191
+ signInEnabled: z9.boolean(),
1127
1192
  profile: accountProfileSchema.optional()
1128
1193
  });
1129
- var operationSchema = z8.object({
1130
- target: z8.string(),
1131
- paused: z8.boolean(),
1132
- revision: z8.number().int(),
1133
- reason: z8.string(),
1134
- actor: z8.string().nullable(),
1135
- changedAt: z8.number()
1136
- });
1137
- var operationInputSchema = z8.object({
1138
- target: z8.union([
1139
- z8.literal("redemptions"),
1140
- z8.string().regex(/^quest:[\w-]+$/)
1194
+ var operationSchema = z9.object({
1195
+ target: z9.string(),
1196
+ paused: z9.boolean(),
1197
+ revision: z9.number().int(),
1198
+ reason: z9.string(),
1199
+ actor: z9.string().nullable(),
1200
+ changedAt: z9.number()
1201
+ });
1202
+ var operationInputSchema = z9.object({
1203
+ target: z9.union([
1204
+ z9.literal("redemptions"),
1205
+ z9.string().regex(/^quest:[\w-]+$/)
1141
1206
  ]),
1142
- paused: z8.boolean(),
1143
- revision: z8.number().int().nonnegative(),
1144
- reason: z8.string().trim().min(1).max(500),
1207
+ paused: z9.boolean(),
1208
+ revision: z9.number().int().nonnegative(),
1209
+ reason: z9.string().trim().min(1).max(500),
1145
1210
  actionId: identifier
1146
1211
  }).strict();
1147
- var questLifecycleInputSchema = z8.object({
1212
+ var questLifecycleInputSchema = z9.object({
1148
1213
  quest: identifier,
1149
1214
  expectedRelease: identifier.optional(),
1150
- archived: z8.boolean(),
1151
- reason: z8.string().trim().min(1).max(500),
1215
+ archived: z9.boolean(),
1216
+ reason: z9.string().trim().min(1).max(500),
1152
1217
  actionId: identifier
1153
1218
  }).strict();
1154
- var questLifecycleSchema = z8.object({
1219
+ var questLifecycleSchema = z9.object({
1155
1220
  quest: identifier,
1156
1221
  key: identifier.nullable(),
1157
- title: z8.string(),
1222
+ title: z9.string(),
1158
1223
  release: identifier,
1159
- lifecycle: z8.enum(["active", "paused", "archived"]),
1160
- changed: z8.boolean()
1161
- });
1162
- var memberSchema = z8.object({
1163
- id: z8.string(),
1164
- test: z8.boolean().optional(),
1165
- name: z8.string().nullable().optional(),
1166
- accounts: z8.array(memberAccountSchema).default([]),
1167
- attempts: z8.number(),
1168
- completions: z8.number(),
1169
- rewards: z8.number(),
1170
- lastActivity: z8.number().nullable()
1171
- });
1172
- var personSchema = z8.object({
1173
- id: z8.string(),
1174
- accounts: z8.array(memberAccountSchema).default([])
1175
- });
1176
- var metricsSchema = z8.object({
1177
- quests: z8.number(),
1178
- members: z8.number(),
1179
- attempts: z8.number(),
1180
- completions: z8.number(),
1181
- review: z8.number(),
1182
- failed: z8.number(),
1183
- entitlements: z8.number()
1184
- });
1185
- var readinessSchema = z8.object({
1186
- checks: z8.array(
1187
- z8.object({
1188
- id: z8.string(),
1189
- status: z8.enum(["ready", "blocked"]),
1190
- title: z8.string(),
1191
- detail: z8.string()
1224
+ lifecycle: z9.enum(["active", "paused", "archived"]),
1225
+ changed: z9.boolean()
1226
+ });
1227
+ var memberSchema = z9.object({
1228
+ id: z9.string(),
1229
+ test: z9.boolean().optional(),
1230
+ name: z9.string().nullable().optional(),
1231
+ accounts: z9.array(memberAccountSchema).default([]),
1232
+ attempts: z9.number(),
1233
+ completions: z9.number(),
1234
+ rewards: z9.number(),
1235
+ lastActivity: z9.number().nullable()
1236
+ });
1237
+ var personSchema = z9.object({
1238
+ id: z9.string(),
1239
+ accounts: z9.array(memberAccountSchema).default([])
1240
+ });
1241
+ var metricsSchema = z9.object({
1242
+ quests: z9.number(),
1243
+ members: z9.number(),
1244
+ attempts: z9.number(),
1245
+ completions: z9.number(),
1246
+ review: z9.number(),
1247
+ failed: z9.number(),
1248
+ entitlements: z9.number()
1249
+ });
1250
+ var readinessSchema = z9.object({
1251
+ checks: z9.array(
1252
+ z9.object({
1253
+ id: z9.string(),
1254
+ status: z9.enum(["ready", "blocked"]),
1255
+ title: z9.string(),
1256
+ detail: z9.string()
1192
1257
  })
1193
1258
  )
1194
1259
  });
1195
- var inventorySchema = z8.object({
1196
- item: z8.string(),
1197
- name: z8.string().nullable().default(null),
1198
- available: z8.number(),
1199
- reserved: z8.number(),
1200
- allocated: z8.number().default(0)
1201
- });
1202
- var auditRecordSchema = z8.object({
1203
- id: z8.string(),
1204
- action: z8.string(),
1205
- actor: z8.string().nullable(),
1260
+ var inventorySchema = z9.object({
1261
+ item: z9.string(),
1262
+ name: z9.string().nullable().default(null),
1263
+ available: z9.number(),
1264
+ reserved: z9.number(),
1265
+ allocated: z9.number().default(0)
1266
+ });
1267
+ var auditRecordSchema = z9.object({
1268
+ id: z9.string(),
1269
+ action: z9.string(),
1270
+ actor: z9.string().nullable(),
1206
1271
  user: operatorUserSchema.nullable().optional(),
1207
- detail: z8.string(),
1208
- at: z8.number(),
1209
- attempt: z8.string().nullable()
1272
+ detail: z9.string(),
1273
+ at: z9.number(),
1274
+ attempt: z9.string().nullable()
1210
1275
  }).refine((record) => !record.user || record.user.id === record.actor, {
1211
1276
  message: "User profile must match the recorded actor",
1212
1277
  path: ["user"]
1213
1278
  });
1214
- var pageSchema = z8.object({
1279
+ var pageSchema = z9.object({
1215
1280
  snapshot: snapshotSchema,
1216
- members: z8.array(memberSchema),
1217
- people: z8.array(personSchema).default([]),
1281
+ members: z9.array(memberSchema),
1282
+ people: z9.array(personSchema).default([]),
1218
1283
  metrics: metricsSchema,
1219
- total: z8.number(),
1220
- offset: z8.number(),
1221
- limit: z8.number(),
1222
- inventory: z8.array(inventorySchema),
1223
- operations: z8.array(operationSchema).default([]),
1224
- audit: z8.array(auditRecordSchema).default([]),
1225
- questCounts: z8.record(z8.string(), z8.number())
1226
- });
1227
- var managedOAuthAccountBaseSchema = z8.object({
1228
- provider: z8.enum(["x", "discord"]),
1229
- revision: z8.number().int().nonnegative()
1230
- });
1231
- var managedOAuthAccountSchema = z8.discriminatedUnion("status", [
1284
+ total: z9.number(),
1285
+ offset: z9.number(),
1286
+ limit: z9.number(),
1287
+ inventory: z9.array(inventorySchema),
1288
+ operations: z9.array(operationSchema).default([]),
1289
+ audit: z9.array(auditRecordSchema).default([]),
1290
+ questCounts: z9.record(z9.string(), z9.number())
1291
+ });
1292
+ var managedOAuthAccountBaseSchema = z9.object({
1293
+ provider: z9.enum(["x", "discord"]),
1294
+ revision: z9.number().int().nonnegative()
1295
+ });
1296
+ var managedOAuthAccountSchema = z9.discriminatedUnion("status", [
1232
1297
  managedOAuthAccountBaseSchema.extend({
1233
- status: z8.literal("connected"),
1234
- subject: z8.string().min(1),
1235
- linkedAt: z8.number()
1298
+ status: z9.literal("connected"),
1299
+ subject: z9.string().min(1),
1300
+ linkedAt: z9.number()
1236
1301
  }),
1237
- managedOAuthAccountBaseSchema.extend({ status: z8.literal("disconnected") })
1302
+ managedOAuthAccountBaseSchema.extend({ status: z9.literal("disconnected") })
1238
1303
  ]);
1239
- var memberOAuthUnlinkInputSchema = z8.object({
1240
- provider: z8.enum(["x", "discord"]),
1241
- subject: z8.string().min(1).max(4096),
1242
- revision: z8.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER - 1),
1243
- reason: z8.string().trim().min(1).max(500)
1304
+ var memberOAuthUnlinkInputSchema = z9.object({
1305
+ provider: z9.enum(["x", "discord"]),
1306
+ subject: z9.string().min(1).max(4096),
1307
+ revision: z9.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER - 1),
1308
+ reason: z9.string().trim().min(1).max(500)
1244
1309
  }).strict();
1245
1310
  var managedWalletSchema = linkedWalletSchema.extend({
1246
- status: z8.enum(["linked", "unlinked"]),
1247
- unlinkedAt: z8.number().int().nullable(),
1311
+ status: z9.enum(["linked", "unlinked"]),
1312
+ unlinkedAt: z9.number().int().nullable(),
1248
1313
  /** "member", or the operator or key that unlinked it. */
1249
- unlinkedBy: z8.string().nullable()
1314
+ unlinkedBy: z9.string().nullable()
1250
1315
  });
1251
1316
  var managedMemberIdentitySchema = memberIdentitySchema.extend({
1252
- status: z8.enum(["linked", "unlinked"]),
1253
- unlinkedAt: z8.number().int().nullable(),
1317
+ status: z9.enum(["linked", "unlinked"]),
1318
+ unlinkedAt: z9.number().int().nullable(),
1254
1319
  /** The operator or key that unlinked it. */
1255
- unlinkedBy: z8.string().nullable()
1320
+ unlinkedBy: z9.string().nullable()
1256
1321
  });
1257
- var memberIdentityChangeInputSchema = z8.object({
1322
+ var memberIdentityChangeInputSchema = z9.object({
1258
1323
  kind: appIdentityKindSchema,
1259
- subject: z8.string().min(1).max(256),
1260
- reason: z8.string().trim().min(1).max(500)
1324
+ subject: z9.string().min(1).max(256),
1325
+ reason: z9.string().trim().min(1).max(500)
1261
1326
  }).strict();
1262
1327
  var balanceCheckSchema = walletBalanceSchema.pick({
1263
1328
  chain: true,
@@ -1267,57 +1332,65 @@ var balanceCheckSchema = walletBalanceSchema.pick({
1267
1332
  wallets: true,
1268
1333
  observedAt: true
1269
1334
  }).extend({ attempt: identifier });
1270
- var walletBalanceChainsSchema = z8.object({
1271
- chains: z8.array(
1272
- z8.object({
1273
- chain: z8.union([
1274
- z8.literal(solanaMainnet),
1335
+ var walletBalanceChainsSchema = z9.object({
1336
+ chains: z9.array(
1337
+ z9.object({
1338
+ chain: z9.union([
1339
+ z9.literal(solanaMainnet),
1275
1340
  cosmosNetworkSchema,
1276
1341
  evmChainIdSchema
1277
1342
  ]),
1278
- name: z8.string(),
1279
- testnet: z8.boolean()
1343
+ name: z9.string(),
1344
+ testnet: z9.boolean()
1280
1345
  })
1281
1346
  )
1282
1347
  });
1283
- var memberWalletUnlinkInputSchema = walletUnlinkInputSchema.extend({ reason: z8.string().trim().min(1).max(500) }).strict();
1348
+ var memberWalletUnlinkInputSchema = walletUnlinkInputSchema.extend({ reason: z9.string().trim().min(1).max(500) }).strict();
1284
1349
  var memberWalletSignInInputSchema = walletUnlinkInputSchema.extend({
1285
- enabled: z8.boolean(),
1286
- reason: z8.string().trim().min(1).max(500)
1350
+ enabled: z9.boolean(),
1351
+ reason: z9.string().trim().min(1).max(500)
1287
1352
  }).strict();
1288
- var participantSignInSchema = z8.object({
1289
- providers: z8.array(
1290
- z8.object({ provider: authProviderSchema, configured: z8.boolean() })
1353
+ var participantSignInSchema = z9.object({
1354
+ providers: z9.array(
1355
+ z9.object({ provider: authProviderSchema, configured: z9.boolean() })
1291
1356
  ),
1292
- email: z8.boolean(),
1357
+ email: z9.boolean(),
1293
1358
  /** Wallet families: `"solana"`, `"eip155"`, `"cosmos"`. */
1294
1359
  wallets: walletSignInNetworksSchema,
1295
1360
  /** Why participants cannot sign in to this project, or null. */
1296
- issue: z8.string().nullable(),
1297
- updatedAt: z8.number().nullable(),
1298
- updatedBy: z8.string().nullable()
1361
+ issue: z9.string().nullable(),
1362
+ updatedAt: z9.number().nullable(),
1363
+ updatedBy: z9.string().nullable()
1299
1364
  });
1300
- var participantSignInInputSchema = z8.object({
1365
+ var participantSignInInputSchema = z9.object({
1301
1366
  wallets: walletSignInNetworksSchema
1302
1367
  }).strict();
1303
- var memberDetailSchema = z8.object({
1368
+ var completionRevocationShortfallSchema = z9.object({
1369
+ completion: identifier,
1370
+ quest: identifier,
1371
+ revokedAt: z9.number().int().nonnegative().safe(),
1372
+ unreversedPoints: z9.record(identifier, z9.number().int().positive().safe())
1373
+ });
1374
+ var memberDetailSchema = z9.object({
1304
1375
  snapshot: snapshotSchema,
1305
1376
  member: memberSchema,
1306
1377
  progress: memberProgressSchema,
1378
+ /** Up to 25 revoked completions with an unreversed point remainder, newest first. */
1379
+ revocationShortfalls: z9.array(completionRevocationShortfallSchema).default([]),
1307
1380
  /** Current and historical campaign enrollment state, including inactive enrollments. */
1308
- campaignEnrollments: z8.array(campaignEnrollmentSchema).default([]),
1309
- passes: z8.array(
1310
- z8.object({
1311
- provider: z8.string(),
1312
- event: z8.string(),
1313
- subject: z8.string(),
1381
+ campaignEnrollments: z9.array(campaignEnrollmentSchema).default([]),
1382
+ passes: z9.array(
1383
+ z9.object({
1384
+ provider: z9.string(),
1385
+ event: z9.string(),
1386
+ subject: z9.string(),
1314
1387
  attempt: identifier.nullable()
1315
1388
  })
1316
1389
  ).default([]),
1317
1390
  /** Linked and unlinked wallets. */
1318
- wallets: z8.array(managedWalletSchema),
1391
+ wallets: z9.array(managedWalletSchema),
1319
1392
  /** The member's 10 most recent recorded balance reads, newest first. */
1320
- balanceChecks: z8.array(balanceCheckSchema),
1393
+ balanceChecks: z9.array(balanceCheckSchema),
1321
1394
  /** The member's participant profile in this project. */
1322
1395
  profile: managedProfileSchema.nullable(),
1323
1396
  /**
@@ -1325,44 +1398,117 @@ var memberDetailSchema = z8.object({
1325
1398
  * member ID: their selected X and Discord accounts and their `app:<name>` identities in this
1326
1399
  * project, including app identities an operator unlinked, by kind.
1327
1400
  */
1328
- identities: z8.array(managedMemberIdentitySchema)
1401
+ identities: z9.array(managedMemberIdentitySchema)
1329
1402
  });
1330
- var stockInputSchema = z8.object({
1403
+ var stockInputSchema = z9.object({
1331
1404
  item: identifier,
1332
- quantity: z8.number().int().positive().max(1e6),
1405
+ quantity: z9.number().int().positive().max(1e6),
1333
1406
  actionId: identifier
1334
1407
  }).strict();
1335
- var ingestTrackerScopeSchema = z8.array(identifier).min(1).max(100).nullable();
1336
- var tokenScopeInputSchema = z8.object({ ingestTrackers: ingestTrackerScopeSchema }).strict();
1337
- var tokenInputSchema = z8.object({
1338
- name: z8.string().trim().min(1).max(80),
1408
+ var ingestTrackerScopeSchema = z9.array(identifier).min(1).max(100).nullable();
1409
+ var tokenScopeInputSchema = z9.object({ ingestTrackers: ingestTrackerScopeSchema }).strict();
1410
+ var tokenInputSchema = z9.object({
1411
+ name: z9.string().trim().min(1).max(80),
1339
1412
  project: identifier,
1340
1413
  environment: environmentSchema,
1341
- permissions: z8.array(permissionSchema).min(1),
1414
+ permissions: z9.array(permissionSchema).min(1),
1342
1415
  ingestTrackers: ingestTrackerScopeSchema.optional(),
1343
- days: z8.number().int().min(1).max(90).default(30)
1416
+ days: z9.number().int().min(1).max(90).default(30)
1344
1417
  }).strict();
1345
- var tokenSchema = z8.object({
1346
- id: z8.string(),
1347
- name: z8.string(),
1348
- project: z8.string(),
1418
+ var tokenSchema = z9.object({
1419
+ id: z9.string(),
1420
+ name: z9.string(),
1421
+ project: z9.string(),
1349
1422
  environment: environmentSchema,
1350
1423
  permissions: permissionListSchema,
1351
1424
  ingestTrackers: ingestTrackerScopeSchema.optional(),
1352
- expiresAt: z8.number()
1425
+ expiresAt: z9.number()
1353
1426
  });
1354
- var issuedTokenSchema = tokenSchema.extend({ token: z8.string() });
1355
- var teamSchema = z8.array(
1356
- z8.object({ id: z8.string(), label: z8.string() })
1427
+ var issuedTokenSchema = tokenSchema.extend({ token: z9.string() });
1428
+ var teamSchema = z9.array(
1429
+ z9.object({ id: z9.string(), label: z9.string() })
1357
1430
  );
1358
- var memberLookupSchema = z8.object({
1359
- provider: z8.string().min(1).max(200),
1360
- subject: z8.string().min(1).max(2048)
1431
+ var memberLookupSchema = z9.object({
1432
+ provider: z9.string().min(1).max(200),
1433
+ subject: z9.string().min(1).max(2048)
1361
1434
  }).strict();
1362
- var verifiedPassSchema = z8.object({
1435
+ var booleanQuery = z9.union([
1436
+ z9.boolean(),
1437
+ z9.enum(["true", "false"]).transform((v) => v === "true")
1438
+ ]);
1439
+ var managedMemberQuerySchema = z9.strictObject({
1440
+ q: z9.string().max(200).optional(),
1441
+ needsReview: booleanQuery.optional(),
1442
+ limit: z9.coerce.number().int().min(1).max(100).optional(),
1443
+ cursor: pageCursorSchema.optional()
1444
+ });
1445
+ var managedMemberPageSchema = z9.object({
1446
+ items: z9.array(memberSchema),
1447
+ total: z9.number().int().nonnegative(),
1448
+ nextCursor: z9.string().nullable()
1449
+ });
1450
+ var projectMetricsSchema = metricsSchema.extend({
1451
+ completionsByQuest: z9.array(
1452
+ z9.object({ quest: identifier, completions: z9.number() })
1453
+ )
1454
+ });
1455
+ var pageLimit = z9.coerce.number().int().min(1).max(100).optional();
1456
+ var managedAttemptQuerySchema = z9.strictObject({
1457
+ q: z9.string().max(200).optional(),
1458
+ status: z9.string().min(1).max(50).optional(),
1459
+ limit: pageLimit,
1460
+ cursor: pageCursorSchema.optional()
1461
+ });
1462
+ var managedAttemptPageSchema = z9.object({
1463
+ items: z9.array(attemptSchema),
1464
+ releases: z9.array(publishedReleaseSchema),
1465
+ people: z9.array(personSchema),
1466
+ total: z9.number().int().nonnegative(),
1467
+ nextCursor: z9.string().nullable()
1468
+ });
1469
+ var managedAttemptSchema = z9.object({
1470
+ attempt: attemptSchema,
1471
+ release: publishedReleaseSchema.nullable(),
1472
+ events: z9.array(eventSchema),
1473
+ person: personSchema
1474
+ });
1475
+ var managedEntitlementQuerySchema = z9.strictObject({
1476
+ q: z9.string().max(200).optional(),
1477
+ status: z9.string().min(1).max(50).optional(),
1478
+ limit: pageLimit,
1479
+ cursor: pageCursorSchema.optional()
1480
+ });
1481
+ var managedEntitlementPageSchema = z9.object({
1482
+ items: z9.array(entitlementSchema),
1483
+ people: z9.array(personSchema),
1484
+ total: z9.number().int().nonnegative(),
1485
+ nextCursor: z9.string().nullable()
1486
+ });
1487
+ var managedEntitlementSchema = z9.object({
1488
+ entitlement: entitlementSchema,
1489
+ person: personSchema
1490
+ });
1491
+ var managedStockItemSchema = inventorySchema.extend({
1492
+ offers: z9.array(identifier)
1493
+ });
1494
+ var auditQuerySchema = z9.strictObject({
1495
+ category: z9.enum(["reviews", "rewards", "configuration"]).optional(),
1496
+ q: z9.string().max(200).optional(),
1497
+ limit: pageLimit,
1498
+ cursor: pageCursorSchema.optional()
1499
+ });
1500
+ var accessHistoryQuerySchema = auditQuerySchema.omit({
1501
+ category: true
1502
+ });
1503
+ var auditPageSchema = z9.object({
1504
+ items: z9.array(auditRecordSchema),
1505
+ total: z9.number().int().nonnegative(),
1506
+ nextCursor: z9.string().nullable()
1507
+ });
1508
+ var verifiedPassSchema = z9.object({
1363
1509
  provider: identifier,
1364
1510
  event: identifier,
1365
- subject: z8.string().min(1).max(2048),
1511
+ subject: z9.string().min(1).max(2048),
1366
1512
  member: identifier,
1367
1513
  quest: identifier
1368
1514
  }).strict();
@@ -1372,6 +1518,11 @@ function withActionId(input) {
1372
1518
  function actionIdOf(input) {
1373
1519
  return typeof input === "object" && input !== null && "actionId" in input && typeof input.actionId === "string" ? input.actionId : void 0;
1374
1520
  }
1521
+ function groupKey(group) {
1522
+ return identifier.parse(
1523
+ typeof group === "string" ? group : projectGroupKey(group)
1524
+ );
1525
+ }
1375
1526
  function queryString(values) {
1376
1527
  const query = new URLSearchParams(
1377
1528
  Object.entries(values).flatMap(
@@ -1380,10 +1531,6 @@ function queryString(values) {
1380
1531
  ).toString();
1381
1532
  return query ? "?" + query : "";
1382
1533
  }
1383
- var serverErrorSchema = z8.looseObject({
1384
- error: z8.string(),
1385
- code: z8.string().optional()
1386
- });
1387
1534
  function checkedTimeout(timeout) {
1388
1535
  if (timeout !== void 0 && !validTimeout(timeout)) {
1389
1536
  throw new ManagementError({
@@ -1401,7 +1548,7 @@ function clientFailure(error) {
1401
1548
  return new ManagementError({
1402
1549
  kind: "client",
1403
1550
  code: ManagementErrorCode.InvalidInput,
1404
- message: error instanceof z8.ZodError ? `Invalid management request: ${z8.prettifyError(error)}` : error instanceof Error ? error.message : "Invalid management request",
1551
+ message: error instanceof z9.ZodError ? `Invalid management request: ${z9.prettifyError(error)}` : error instanceof Error ? error.message : "Invalid management request",
1405
1552
  cause: error
1406
1553
  });
1407
1554
  }
@@ -1422,6 +1569,9 @@ function guarded(api) {
1422
1569
  );
1423
1570
  }
1424
1571
  function createManagementClient(options) {
1572
+ return managementClient(options);
1573
+ }
1574
+ function managementClient(options) {
1425
1575
  const clientTimeout = checkedTimeout(options.timeout) ?? DEFAULT_MANAGEMENT_TIMEOUT;
1426
1576
  function callLifetime(call) {
1427
1577
  return lifetime(
@@ -1544,7 +1694,7 @@ function createManagementClient(options) {
1544
1694
  body = JSON.parse(text);
1545
1695
  } catch {
1546
1696
  }
1547
- const parsed = serverErrorSchema.safeParse(body);
1697
+ const parsed = managementErrorSchema.safeParse(body);
1548
1698
  const { error, code, ...details } = parsed.success ? parsed.data : { error: `Request failed (${response.status})`, code: void 0 };
1549
1699
  throw new ManagementError({
1550
1700
  ...context,
@@ -1653,12 +1803,81 @@ function createManagementClient(options) {
1653
1803
  call
1654
1804
  );
1655
1805
  }
1656
- const ok = z8.object({ ok: z8.literal(true) });
1806
+ const ok = z9.object({ ok: z9.literal(true) });
1807
+ function pointHistory(member, ledger, query = {}, call) {
1808
+ return get(
1809
+ `/points/${identifier.parse(member)}/${identifier.parse(ledger)}/history${queryString(typeof query === "number" ? { before: query } : pageQuerySchema.parse(query))}`,
1810
+ managedPointHistoryPageSchema,
1811
+ call
1812
+ );
1813
+ }
1814
+ function referralParticipants(query = {}, call) {
1815
+ return get(
1816
+ `/referrals/participants${queryString(typeof query === "number" ? { before: query } : pageQuerySchema.parse(query))}`,
1817
+ referralManagementSchema,
1818
+ call
1819
+ );
1820
+ }
1821
+ function createPointLedger(input, call) {
1822
+ return create(
1823
+ "/point-ledgers",
1824
+ pointLedgerSchema,
1825
+ createPointLedgerSchema,
1826
+ input,
1827
+ call
1828
+ );
1829
+ }
1830
+ function recordPoints(input, call) {
1831
+ return post(
1832
+ "/points",
1833
+ pointsResultSchema,
1834
+ pointsMutationSchema.parse(input),
1835
+ call
1836
+ );
1837
+ }
1838
+ function publishDeployment(target, call) {
1839
+ const id = typeof target === "string" ? identifier.parse(target) : publishDeploymentSchema.parse(target).id;
1840
+ return post(`/deployments/${id}/publish`, deploymentResultSchema, {}, call);
1841
+ }
1842
+ function submitDeployment(target, call) {
1843
+ const id = typeof target === "string" ? identifier.parse(target) : submitDeploymentSchema.parse(target).id;
1844
+ return post(`/deployments/${id}/submit`, deploymentRecordSchema, {}, call);
1845
+ }
1846
+ function rejectDeployment(target, inputOrCall, call) {
1847
+ const { id, ...input } = typeof target === "string" ? {
1848
+ id: identifier.parse(target),
1849
+ ...deploymentRejectionSchema.parse(inputOrCall)
1850
+ } : rejectDeploymentSchema.parse(target);
1851
+ return post(
1852
+ `/deployments/${id}/reject`,
1853
+ deploymentRecordSchema,
1854
+ input,
1855
+ typeof target === "string" ? call : inputOrCall
1856
+ );
1857
+ }
1858
+ function promoteDeployment(target, inputOrCall, call) {
1859
+ return repeatDeployment("promote", target, inputOrCall, call);
1860
+ }
1861
+ function rollbackDeployment(target, inputOrCall, call) {
1862
+ return repeatDeployment("rollback", target, inputOrCall, call);
1863
+ }
1864
+ function repeatDeployment(verb, target, inputOrCall, call) {
1865
+ const { id, ...input } = typeof target === "string" ? {
1866
+ id: identifier.parse(target),
1867
+ ...deploymentActionSchema.parse(withActionId(inputOrCall ?? {}))
1868
+ } : promoteDeploymentSchema.parse(withActionId(target));
1869
+ return post(
1870
+ `/deployments/${id}/${verb}`,
1871
+ deploymentRecordSchema,
1872
+ input,
1873
+ typeof target === "string" ? call : inputOrCall
1874
+ );
1875
+ }
1657
1876
  return guarded({
1658
1877
  raw,
1659
1878
  request,
1660
1879
  trackers: {
1661
- list: (call) => get("/trackers", z8.array(trackerStatusSchema), call),
1880
+ list: (call) => get("/trackers", z9.array(trackerStatusSchema), call),
1662
1881
  get: (reference, call) => get(
1663
1882
  `/trackers/${identifier.parse(reference)}`,
1664
1883
  trackerStatusSchema,
@@ -1691,12 +1910,25 @@ function createManagementClient(options) {
1691
1910
  trackerIngestSchema.parse(input),
1692
1911
  call
1693
1912
  ),
1694
- /** Why each tracker-triggered quest admitted or skipped a record observation, newest first. */
1913
+ /**
1914
+ * Why each tracker-triggered quest admitted or skipped a record observation, newest first.
1915
+ *
1916
+ * @deprecated Use `triggerOutcomes`, which pages by `cursor` and `nextCursor`. Removed in 2.0.0.
1917
+ */
1695
1918
  outcomes: (reference, query = {}, call) => get(
1696
1919
  `/trackers/${identifier.parse(reference)}/outcomes${queryString(trackerOutcomeQuerySchema.parse(query))}`,
1697
1920
  trackerOutcomePageSchema,
1698
1921
  call
1699
1922
  ),
1923
+ /**
1924
+ * Why each tracker-triggered quest admitted or skipped a record observation, newest first.
1925
+ * Pass a page's `nextCursor` back as `cursor` for the next page.
1926
+ */
1927
+ triggerOutcomes: (reference, query = {}, call) => get(
1928
+ `/trackers/${identifier.parse(reference)}/trigger-outcomes${queryString(trackerTriggerOutcomeQuerySchema.parse(query))}`,
1929
+ trackerTriggerOutcomePageSchema,
1930
+ call
1931
+ ),
1700
1932
  /**
1701
1933
  * Re-runs admission for a skipped observation under the quest's current release, links,
1702
1934
  * membership and enrollment, releasing historical activity whatever the quest's historical
@@ -1730,11 +1962,21 @@ function createManagementClient(options) {
1730
1962
  engagementChangeSchema.parse(input),
1731
1963
  call
1732
1964
  ),
1965
+ /** @deprecated Use `ruleVersions(rule, { cursor })`. Removed in 2.0.0. */
1733
1966
  versions: (input, call) => get(
1734
1967
  "/engagement/versions" + queryString(engagementVersionQuerySchema.parse(input)),
1735
1968
  engagementVersionPageSchema,
1736
1969
  call
1737
1970
  ),
1971
+ /**
1972
+ * An engagement rule's published versions, newest first. Pass a page's `nextCursor` back as
1973
+ * `cursor` for the next page.
1974
+ */
1975
+ ruleVersions: (rule, query = {}, call) => get(
1976
+ `/engagement/rules/${identifier.parse(rule)}/versions${queryString(pageQuerySchema.parse(query))}`,
1977
+ engagementRuleVersionPageSchema,
1978
+ call
1979
+ ),
1738
1980
  boundaries: (input, call) => get(
1739
1981
  "/engagement/boundaries" + queryString(engagementPageQuerySchema.parse(input)),
1740
1982
  engagementBoundaryPageSchema,
@@ -1746,7 +1988,7 @@ function createManagementClient(options) {
1746
1988
  engagementPublishSchema.parse(input),
1747
1989
  call
1748
1990
  ),
1749
- list: (call) => get("/engagement", z8.array(engagementRuleSchema), call),
1991
+ list: (call) => get("/engagement", z9.array(engagementRuleSchema), call),
1750
1992
  page: (input, call) => get(
1751
1993
  "/engagement/history" + queryString(engagementPageQuerySchema.parse(input)),
1752
1994
  engagementPageSchema,
@@ -1766,13 +2008,32 @@ function createManagementClient(options) {
1766
2008
  )
1767
2009
  },
1768
2010
  pointLedgers: {
1769
- list: (call) => get("/point-ledgers", z8.array(managedPointLedgerSchema), call),
1770
- save: (input, call) => post(
1771
- "/point-ledgers/update",
2011
+ list: (call) => get("/point-ledgers", z9.array(managedPointLedgerSchema), call),
2012
+ /**
2013
+ * Creates a point ledger, with a stable `key` when code refers to it; requires `publish`. In
2014
+ * live, only a person in Console can create one.
2015
+ */
2016
+ create: createPointLedger,
2017
+ /**
2018
+ * Renames a point ledger, by key or ID, and replaces its description (empty when omitted);
2019
+ * requires `publish`. In live, only a person in Console can change one.
2020
+ */
2021
+ update: (ledger, input, call) => post(
2022
+ `/point-ledgers/${identifier.parse(ledger)}/update`,
1772
2023
  managedPointLedgerSchema,
1773
- pointLedgerSchema.parse(input),
2024
+ pointLedgerPropertiesSchema.parse(input),
1774
2025
  call
1775
2026
  ),
2027
+ /** @deprecated Use `update(ledger, { name, description })`. Removed in 2.0.0. */
2028
+ save: (input, call) => {
2029
+ const { id, ...properties } = pointLedgerSchema.parse(input);
2030
+ return post(
2031
+ `/point-ledgers/${id}/update`,
2032
+ managedPointLedgerSchema,
2033
+ properties,
2034
+ call
2035
+ );
2036
+ },
1776
2037
  archive: (ledger, call) => post(
1777
2038
  `/point-ledgers/${identifier.parse(ledger)}/archive`,
1778
2039
  managedPointLedgerSchema,
@@ -1781,33 +2042,24 @@ function createManagementClient(options) {
1781
2042
  )
1782
2043
  },
1783
2044
  points: {
1784
- ledgers: (call) => get("/point-ledgers", z8.array(managedPointLedgerSchema), call),
1785
- createLedger: (input, call) => create(
1786
- "/point-ledgers",
1787
- pointLedgerSchema,
1788
- createPointLedgerSchema,
1789
- input,
1790
- call
1791
- ),
1792
- update: (input, call) => post(
1793
- "/points",
1794
- pointsResultSchema,
1795
- pointsMutationSchema.parse(input),
1796
- call
1797
- ),
2045
+ /** @deprecated Use `pointLedgers.list()`, which reads the same ledgers. Removed in 2.0.0. */
2046
+ ledgers: (call) => get("/point-ledgers", z9.array(managedPointLedgerSchema), call),
2047
+ /** @deprecated Use `pointLedgers.create(input)`. Removed in 2.0.0. */
2048
+ createLedger: createPointLedger,
2049
+ /**
2050
+ * Records a change to a member's balance in one ledger: an `award`, a `spend`, an `adjust`,
2051
+ * a `reverse` of an earlier award, or a `set` to an absolute total; requires `points`
2052
+ * permission. The action ID makes a retry answer with the first result.
2053
+ */
2054
+ record: recordPoints,
2055
+ /** @deprecated Use `record`, which makes the same change. Removed in 2.0.0. */
2056
+ update: recordPoints,
1798
2057
  balance: (member, balance, call) => get(
1799
2058
  `/points/${identifier.parse(member)}/${identifier.parse(balance)}`,
1800
2059
  pointsAccountSchema,
1801
2060
  call
1802
2061
  ),
1803
- history: (member, balance, before, call) => get(
1804
- `/points/${identifier.parse(member)}/${identifier.parse(balance)}/history${queryString({ before })}`,
1805
- z8.object({
1806
- items: z8.array(pointsEntrySchema),
1807
- next: z8.number().nullable()
1808
- }),
1809
- call
1810
- )
2062
+ history: pointHistory
1811
2063
  },
1812
2064
  referrals: {
1813
2065
  /** A member's referral point history, newest first. Pass `nextCursor` as `cursor`. */
@@ -1816,21 +2068,68 @@ function createManagementClient(options) {
1816
2068
  referralHistorySchema,
1817
2069
  call
1818
2070
  ),
1819
- list: (call) => get("/referrals", z8.array(publishedReferralSchema), call),
1820
- participants: (before, call) => get(
1821
- `/referrals/participants${queryString({ before })}`,
1822
- referralManagementSchema,
2071
+ list: (call) => get("/referrals", z9.array(publishedReferralSchema), call),
2072
+ participants: referralParticipants,
2073
+ /**
2074
+ * Suspends or restores a member's referral relationship, with a reason; requires `publish`.
2075
+ * A suspended member earns their inviter nothing.
2076
+ */
2077
+ suspend: (member, input, call) => post(
2078
+ `/referral-relationships/${identifier.parse(member)}/suspend`,
2079
+ ok,
2080
+ referralSuspensionSchema.parse(withActionId(input)),
1823
2081
  call
1824
2082
  ),
1825
- control: (input, call) => post(
1826
- "/referrals/control",
2083
+ /**
2084
+ * Qualifies or unqualifies a member in a referral program after checking a condition outside
2085
+ * Relay, with a reason; requires `publish`.
2086
+ */
2087
+ qualify: (program, member, input, call) => post(
2088
+ `/referral-programs/${identifier.parse(program)}/members/${identifier.parse(member)}/qualify`,
1827
2089
  ok,
1828
- referralControlSchema.parse(input),
2090
+ referralQualificationSchema.parse(withActionId(input)),
1829
2091
  call
1830
- )
2092
+ ),
2093
+ /**
2094
+ * Marks a referral reward held for review reconciled, so its entitlement can be handed over
2095
+ * again, with a reason; requires `publish`.
2096
+ */
2097
+ resolveReward: (entitlement, input, call) => post(
2098
+ `/referral-rewards/${identifier.parse(entitlement)}/resolve`,
2099
+ ok,
2100
+ referralRewardResolutionSchema.parse(withActionId(input)),
2101
+ call
2102
+ ),
2103
+ /** @deprecated Use `suspend`, `qualify` or `resolveReward`. Removed in 2.0.0. */
2104
+ control: (input, call) => {
2105
+ const parsed = referralControlSchema.parse(input);
2106
+ const { actionId, reason } = parsed;
2107
+ if (parsed.kind === "suspend") {
2108
+ return post(
2109
+ `/referral-relationships/${parsed.member}/suspend`,
2110
+ ok,
2111
+ { actionId, suspended: parsed.suspended, reason },
2112
+ call
2113
+ );
2114
+ }
2115
+ if (parsed.kind === "qualify") {
2116
+ return post(
2117
+ `/referral-programs/${parsed.program}/members/${parsed.member}/qualify`,
2118
+ ok,
2119
+ { actionId, qualified: parsed.qualified, reason },
2120
+ call
2121
+ );
2122
+ }
2123
+ return post(
2124
+ `/referral-rewards/${parsed.entitlement}/resolve`,
2125
+ ok,
2126
+ { actionId, reason },
2127
+ call
2128
+ );
2129
+ }
1831
2130
  },
1832
2131
  leaderboards: {
1833
- list: (call) => get("/leaderboards", z8.array(publishedLeaderboardSchema), call),
2132
+ list: (call) => get("/leaderboards", z9.array(publishedLeaderboardSchema), call),
1834
2133
  standings: (board, input = {}, call) => {
1835
2134
  const query = leaderboardQuerySchema.parse(input);
1836
2135
  return get(
@@ -1844,12 +2143,12 @@ function createManagementClient(options) {
1844
2143
  },
1845
2144
  history: (board, call) => get(
1846
2145
  `/leaderboards/${identifier.parse(board)}/history`,
1847
- z8.array(publishedLeaderboardSchema),
2146
+ z9.array(publishedLeaderboardSchema),
1848
2147
  call
1849
2148
  ),
1850
2149
  exclusions: (board, call) => get(
1851
2150
  `/leaderboards/${identifier.parse(board)}/exclusions`,
1852
- z8.array(z8.object({ member: identifier })),
2151
+ z9.array(z9.object({ member: identifier })),
1853
2152
  call
1854
2153
  ),
1855
2154
  exclude: (board, input, call) => post(
@@ -1858,15 +2157,22 @@ function createManagementClient(options) {
1858
2157
  leaderboardExclusionSchema.parse(input),
1859
2158
  call
1860
2159
  ),
2160
+ /**
2161
+ * Adds a member to a group, creating the group (titled with its key) when it is new, or
2162
+ * removes one.
2163
+ *
2164
+ * @deprecated Use `groups.addMember` and `groups.removeMember` instead; create the group
2165
+ * first with `groups.create`. Removed in 2.0.0.
2166
+ */
1861
2167
  group: (group, input, call) => post(
1862
- `/leaderboard-groups/${identifier.parse(typeof group === "string" ? group : projectGroupKey(group))}`,
2168
+ `/leaderboard-groups/${groupKey(group)}`,
1863
2169
  ok,
1864
2170
  leaderboardGroupSchema.parse(input),
1865
2171
  call
1866
2172
  ),
1867
2173
  settlements: (board, call) => get(
1868
2174
  `/leaderboards/${identifier.parse(board)}/settlements`,
1869
- z8.array(leaderboardSettlementSummarySchema),
2175
+ z9.array(leaderboardSettlementSummarySchema),
1870
2176
  call
1871
2177
  ),
1872
2178
  settlement: (settlement, call) => get(
@@ -1881,8 +2187,72 @@ function createManagementClient(options) {
1881
2187
  call
1882
2188
  )
1883
2189
  },
2190
+ /**
2191
+ * Groups: named sets of members that prerequisites (`inGroup`), leaderboards and referral rules
2192
+ * read by key. Reads need `read`; changes need `publish`, in live too.
2193
+ */
2194
+ groups: {
2195
+ /** Groups by key, archived ones included. Pass `nextCursor` back as `cursor`. */
2196
+ list: (query = {}, call) => get(
2197
+ `/groups${queryString(groupPageQuerySchema.parse(query))}`,
2198
+ groupPageSchema,
2199
+ call
2200
+ ),
2201
+ get: (group, call) => get(`/groups/${groupKey(group)}`, managedGroupSchema, call),
2202
+ /** Creates a group. A key already in use fails with 409. */
2203
+ create: (input, call) => create("/groups", managedGroupSchema, createGroupSchema, input, call),
2204
+ /** Renames a group. Its key and members stay. */
2205
+ update: (group, input, call) => post(
2206
+ `/groups/${groupKey(group)}/update`,
2207
+ managedGroupSchema,
2208
+ updateGroupSchema.parse(input),
2209
+ call
2210
+ ),
2211
+ /**
2212
+ * Freezes a group's membership. Its members still count for prerequisites, leaderboards
2213
+ * and referral rules.
2214
+ */
2215
+ archive: (group, call) => post(
2216
+ `/groups/${groupKey(group)}/archive`,
2217
+ managedGroupSchema,
2218
+ {},
2219
+ call
2220
+ ),
2221
+ unarchive: (group, call) => post(
2222
+ `/groups/${groupKey(group)}/unarchive`,
2223
+ managedGroupSchema,
2224
+ {},
2225
+ call
2226
+ ),
2227
+ /** A group's current members by member ID. Pass `nextCursor` back as `cursor`. */
2228
+ members: (group, query = {}, call) => get(
2229
+ `/groups/${groupKey(group)}/members${queryString(groupPageQuerySchema.parse(query))}`,
2230
+ groupMemberPageSchema,
2231
+ call
2232
+ ),
2233
+ /** One current membership; 404 when the member is not in the group. */
2234
+ member: (group, member, call) => get(
2235
+ `/groups/${groupKey(group)}/members/${identifier.parse(member)}`,
2236
+ groupMemberSchema,
2237
+ call
2238
+ ),
2239
+ /** Adds a member, or answers their membership when they already belong. */
2240
+ addMember: (group, input, call) => post(
2241
+ `/groups/${groupKey(group)}/members`,
2242
+ groupMemberSchema,
2243
+ addGroupMemberSchema.parse(withActionId(input)),
2244
+ call
2245
+ ),
2246
+ /** Removes a member; removing someone who is not a member changes nothing. */
2247
+ removeMember: (group, member, input, call) => post(
2248
+ `/groups/${groupKey(group)}/members/${identifier.parse(member)}/remove`,
2249
+ ok,
2250
+ removeGroupMemberSchema.parse(withActionId(input)),
2251
+ call
2252
+ )
2253
+ },
1884
2254
  deployments: {
1885
- list: (call) => get("/deployments", z8.array(deploymentRecordSchema), call),
2255
+ list: (call) => get("/deployments", z9.array(deploymentRecordSchema), call),
1886
2256
  get: (deployment, call) => get(
1887
2257
  `/deployments/${identifier.parse(deployment)}`,
1888
2258
  deploymentRecordSchema,
@@ -1897,42 +2267,11 @@ function createManagementClient(options) {
1897
2267
  call
1898
2268
  );
1899
2269
  },
1900
- publish: (input, call) => post(
1901
- "/deployments/publish",
1902
- deploymentResultSchema,
1903
- publishDeploymentSchema.parse(input),
1904
- call
1905
- ),
1906
- submit: (input, call) => post(
1907
- "/deployments/submit",
1908
- deploymentRecordSchema,
1909
- submitDeploymentSchema.parse(input),
1910
- call
1911
- ),
1912
- reject: (input, call) => post(
1913
- "/deployments/reject",
1914
- deploymentRecordSchema,
1915
- rejectDeploymentSchema.parse(input),
1916
- call
1917
- ),
1918
- promote: (input, call) => {
1919
- const parsed = promoteDeploymentSchema.parse(withActionId(input));
1920
- return post(
1921
- "/deployments/promote",
1922
- deploymentRecordSchema,
1923
- parsed,
1924
- call
1925
- );
1926
- },
1927
- rollback: (input, call) => {
1928
- const parsed = rollbackDeploymentSchema.parse(withActionId(input));
1929
- return post(
1930
- "/deployments/rollback",
1931
- deploymentRecordSchema,
1932
- parsed,
1933
- call
1934
- );
1935
- }
2270
+ publish: publishDeployment,
2271
+ submit: submitDeployment,
2272
+ reject: rejectDeployment,
2273
+ promote: promoteDeployment,
2274
+ rollback: rollbackDeployment
1936
2275
  },
1937
2276
  catalog: {
1938
2277
  allocateQuest: (input = {}, call) => create(
@@ -1974,8 +2313,31 @@ function createManagementClient(options) {
1974
2313
  call
1975
2314
  )
1976
2315
  },
1977
- /** Staff-confirmed quests and reviews. */
2316
+ /** The project's headline counts; requires `read` permission. */
2317
+ metrics: {
2318
+ read: (call) => get("/metrics", projectMetricsSchema, call)
2319
+ },
2320
+ /** Attempts, staff-confirmed quests and reviews. */
1978
2321
  attempts: {
2322
+ /**
2323
+ * One page of the project's attempts, newest first, with the releases they were admitted
2324
+ * under and the members they name, and `total`, how many match. Pass a page's `nextCursor`
2325
+ * back as `cursor` for the next page; requires `read` permission.
2326
+ */
2327
+ list: (query = {}, call) => get(
2328
+ `/attempts${queryString(managedAttemptQuerySchema.parse(query))}`,
2329
+ managedAttemptPageSchema,
2330
+ call
2331
+ ),
2332
+ /**
2333
+ * One attempt with its release, its recorded events and its member; requires `read`
2334
+ * permission. Fails with 404 when the project has no such attempt.
2335
+ */
2336
+ get: (attempt, call) => get(
2337
+ `/attempts/${identifier.parse(attempt)}`,
2338
+ managedAttemptSchema,
2339
+ call
2340
+ ),
1979
2341
  /**
1980
2342
  * Submits a staff-confirmed quest (`manual({ actor: "staff" })`) for a member; requires
1981
2343
  * `confirm` permission. Resolves with the queued attempt, or with the original attempt when
@@ -2065,8 +2427,27 @@ function createManagementClient(options) {
2065
2427
  call
2066
2428
  )
2067
2429
  },
2068
- /** Operator corrections of a member's reward entitlement; require `review` permission. */
2430
+ /** Members' reward entitlements; corrections require `review` permission. */
2069
2431
  entitlements: {
2432
+ /**
2433
+ * One page of the project's entitlements, newest first, with the members they name, and
2434
+ * `total`, how many match. Pass a page's `nextCursor` back as `cursor` for the next page;
2435
+ * requires `read` permission.
2436
+ */
2437
+ list: (query = {}, call) => get(
2438
+ `/entitlements${queryString(managedEntitlementQuerySchema.parse(query))}`,
2439
+ managedEntitlementPageSchema,
2440
+ call
2441
+ ),
2442
+ /**
2443
+ * One entitlement and its member; requires `read` permission. Fails with 404 when the
2444
+ * project has no such entitlement.
2445
+ */
2446
+ get: (entitlement, call) => get(
2447
+ `/entitlements/${identifier.parse(entitlement)}`,
2448
+ managedEntitlementSchema,
2449
+ call
2450
+ ),
2070
2451
  /**
2071
2452
  * Voids an available entitlement granted by mistake, at the `revision` the operator saw, with
2072
2453
  * a reason. It can no longer be handed over. A quest that grants the member the same reward
@@ -2104,6 +2485,8 @@ function createManagementClient(options) {
2104
2485
  )
2105
2486
  },
2106
2487
  operations: {
2488
+ /** Every paused or resumed operation: redemptions and each quest's participation; requires `read`. */
2489
+ list: (call) => get("/operations", z9.array(operationSchema), call),
2107
2490
  /**
2108
2491
  * Pauses or resumes redemptions or one quest's participation, against the `revision` the
2109
2492
  * operator saw, with a reason; requires `publish` permission.
@@ -2116,6 +2499,8 @@ function createManagementClient(options) {
2116
2499
  )
2117
2500
  },
2118
2501
  inventory: {
2502
+ /** Every stock item with its counts and the offers that sell it; requires `read` permission. */
2503
+ list: (call) => get("/stock-items", z9.array(managedStockItemSchema), call),
2119
2504
  createItem: (input, call) => create(
2120
2505
  "/stock-items",
2121
2506
  stockItemSchema,
@@ -2130,7 +2515,7 @@ function createManagementClient(options) {
2130
2515
  stockInputSchema.parse(withActionId(input)),
2131
2516
  call
2132
2517
  ),
2133
- catalog: (call) => get("/pickup-inventory", z8.array(pickupCatalogSchema), call),
2518
+ catalog: (call) => get("/pickup-inventory", z9.array(pickupCatalogSchema), call),
2134
2519
  configure: (input, call) => post(
2135
2520
  "/pickup-inventory",
2136
2521
  pickupCatalogSchema,
@@ -2144,10 +2529,10 @@ function createManagementClient(options) {
2144
2529
  )
2145
2530
  },
2146
2531
  offers: {
2147
- list: (call) => get("/offers", z8.array(offerSchema), call),
2532
+ list: (call) => get("/offers", z9.array(offerSchema), call),
2148
2533
  redemptions: (input = {}, call) => get(
2149
2534
  `/redemptions${queryString({ member: input.member })}`,
2150
- z8.array(redemptionSchema),
2535
+ z9.array(redemptionSchema),
2151
2536
  call
2152
2537
  ),
2153
2538
  /** Pauses or resumes an offer at the revision the operator saw. */
@@ -2195,7 +2580,7 @@ function createManagementClient(options) {
2195
2580
  * them; API keys and project-scoped playground sessions cannot.
2196
2581
  */
2197
2582
  tokens: {
2198
- list: (call) => get("/tokens", z8.array(tokenSchema), call),
2583
+ list: (call) => get("/tokens", z9.array(tokenSchema), call),
2199
2584
  /**
2200
2585
  * Issues a key for one project and environment, limited to permissions the caller holds
2201
2586
  * there. The secret `token` is in this response only.
@@ -2203,14 +2588,14 @@ function createManagementClient(options) {
2203
2588
  create: (input, call) => post("/tokens", issuedTokenSchema, tokenInputSchema.parse(input), call),
2204
2589
  /** Replace a personal key's ingestion restriction without changing its secret. */
2205
2590
  scope: (id, input, call) => request(
2206
- `/tokens/${encodeURIComponent(z8.string().min(1).parse(id))}/scope`,
2591
+ `/tokens/${encodeURIComponent(z9.string().min(1).parse(id))}/scope`,
2207
2592
  tokenSchema,
2208
2593
  tokenScopeInputSchema.parse(input),
2209
2594
  "PUT",
2210
2595
  call
2211
2596
  ),
2212
2597
  revoke: (id, call) => request(
2213
- `/tokens/${encodeURIComponent(z8.string().min(1).parse(id))}`,
2598
+ `/tokens/${encodeURIComponent(z9.string().min(1).parse(id))}`,
2214
2599
  ok,
2215
2600
  void 0,
2216
2601
  "DELETE",
@@ -2219,7 +2604,7 @@ function createManagementClient(options) {
2219
2604
  },
2220
2605
  /** Who holds which roles on the client's project; organization administrators only. */
2221
2606
  grants: {
2222
- list: (call) => get("/grants", z8.array(grantRecordSchema), call),
2607
+ list: (call) => get("/grants", z9.array(grantRecordSchema), call),
2223
2608
  /** Replaces one person's roles and environments on the project. The audit log records it. */
2224
2609
  set: (input, call) => request(
2225
2610
  "/grants",
@@ -2235,7 +2620,7 @@ function createManagementClient(options) {
2235
2620
  },
2236
2621
  /** Signed activity notifications for one project/environment; writes require publish permission. */
2237
2622
  webhooks: {
2238
- list: (call) => get("/webhooks", z8.array(webhookEndpointSchema), call),
2623
+ list: (call) => get("/webhooks", z9.array(webhookEndpointSchema), call),
2239
2624
  create: (input, call) => post(
2240
2625
  "/webhooks",
2241
2626
  webhookSecretSchema,
@@ -2243,31 +2628,31 @@ function createManagementClient(options) {
2243
2628
  call
2244
2629
  ),
2245
2630
  update: (id, input, call) => request(
2246
- `/webhooks/${z8.string().uuid().parse(id)}`,
2631
+ `/webhooks/${z9.string().uuid().parse(id)}`,
2247
2632
  webhookEndpointSchema,
2248
2633
  webhookUpdateSchema.parse(input),
2249
2634
  "PUT",
2250
2635
  call
2251
2636
  ),
2252
2637
  disable: (id, call) => post(
2253
- `/webhooks/${z8.string().uuid().parse(id)}/disable`,
2638
+ `/webhooks/${z9.string().uuid().parse(id)}/disable`,
2254
2639
  webhookEndpointSchema,
2255
2640
  {},
2256
2641
  call
2257
2642
  ),
2258
2643
  rotateSecret: (id, call) => post(
2259
- `/webhooks/${z8.string().uuid().parse(id)}/rotate-secret`,
2644
+ `/webhooks/${z9.string().uuid().parse(id)}/rotate-secret`,
2260
2645
  webhookSecretSchema,
2261
2646
  {},
2262
2647
  call
2263
2648
  ),
2264
2649
  deliveries: (id, query = {}, call) => get(
2265
- `/webhooks/${z8.string().uuid().parse(id)}/deliveries${queryString(webhookQuerySchema.parse(query))}`,
2650
+ `/webhooks/${z9.string().uuid().parse(id)}/deliveries${queryString(webhookQuerySchema.parse(query))}`,
2266
2651
  webhookDeliveryPageSchema,
2267
2652
  call
2268
2653
  ),
2269
2654
  replay: (id, delivery, call) => post(
2270
- `/webhooks/${z8.string().uuid().parse(id)}/deliveries/${z8.string().uuid().parse(delivery)}/replay`,
2655
+ `/webhooks/${z9.string().uuid().parse(id)}/deliveries/${z9.string().uuid().parse(delivery)}/replay`,
2271
2656
  webhookDeliverySchema,
2272
2657
  {},
2273
2658
  call
@@ -2278,7 +2663,7 @@ function createManagementClient(options) {
2278
2663
  * environment. Organization administrators, from a Console session only.
2279
2664
  */
2280
2665
  identityIntegrations: {
2281
- list: (call) => get("/identity-integrations", z8.array(identityIntegrationSchema), call),
2666
+ list: (call) => get("/identity-integrations", z9.array(identityIntegrationSchema), call),
2282
2667
  /** The secret `token` is in this response only. */
2283
2668
  create: (input, call) => post(
2284
2669
  "/identity-integrations",
@@ -2288,7 +2673,7 @@ function createManagementClient(options) {
2288
2673
  ),
2289
2674
  /** Replaces the key's secret and extends it by 90 days; the old secret stops working. */
2290
2675
  rotate: (id, call) => post(
2291
- `/identity-integrations/${z8.string().uuid().parse(id)}/rotate`,
2676
+ `/identity-integrations/${z9.string().uuid().parse(id)}/rotate`,
2292
2677
  identityIntegrationSecretSchema,
2293
2678
  {},
2294
2679
  call
@@ -2300,7 +2685,7 @@ function createManagementClient(options) {
2300
2685
  */
2301
2686
  kinds: (call) => get(
2302
2687
  "/identity-integrations/kinds",
2303
- z8.array(identityKindClaimSchema),
2688
+ z9.array(identityKindClaimSchema),
2304
2689
  call
2305
2690
  ),
2306
2691
  /**
@@ -2308,18 +2693,57 @@ function createManagementClient(options) {
2308
2693
  * and keep attributing tracker records; unlink them on the member to stop that.
2309
2694
  */
2310
2695
  revoke: (id, call) => request(
2311
- `/identity-integrations/${z8.string().uuid().parse(id)}`,
2312
- z8.null(),
2696
+ `/identity-integrations/${z9.string().uuid().parse(id)}`,
2697
+ z9.null(),
2313
2698
  void 0,
2314
2699
  "DELETE",
2315
2700
  call
2316
2701
  )
2317
2702
  },
2703
+ /**
2704
+ * One of Console's former screens (`overview`, `quests`, `activity`, `members`, `rewards`,
2705
+ * `releases`, `settings`, `audit`), paged by `offset`.
2706
+ *
2707
+ * @deprecated Replace each page as follows. `overview` uses `metrics.read`, `attempts.list`,
2708
+ * `quests.list` and `operations.list`; its `detail` has no effect. `quests` uses `quests.list`
2709
+ * and finds a `detail` quest in that result. `activity` uses `attempts.list`, and its `detail`
2710
+ * uses `attempts.get`. `members` uses `members.list`; `page()` ignores its `detail`, while
2711
+ * `members.get` reads a member. `rewards` uses `entitlements.list` and `inventory.list`, and
2712
+ * its `detail` uses `entitlements.get`. No resource read lists historical releases or reads
2713
+ * one historical release, so `releases` and its `detail` have no exact replacement;
2714
+ * `quests.list` returns current releases only. `settings` uses `metrics.read`, `quests.list`
2715
+ * and `operations.list`; its `detail` has no effect. `audit` uses `audit.list`, except
2716
+ * `filter: "access"` uses `audit.access`; its `detail` has no effect. On every page,
2717
+ * `detail: "new"` is client-side create mode and triggers no replacement read. Resource lists
2718
+ * take `cursor` instead of `offset`. Removed in 2.0.0.
2719
+ */
2318
2720
  page: (page, query, call) => get(`/${page}${queryString(query)}`, pageSchema, call),
2721
+ /** The project's audit history; requires `read` permission. */
2722
+ audit: {
2723
+ /**
2724
+ * One page of the project's operations in this environment (reviews, reward changes and
2725
+ * configuration), newest first, and `total`, how many match. Pass a page's `nextCursor`
2726
+ * back as `cursor` for the next page.
2727
+ */
2728
+ list: (query = {}, call) => get(
2729
+ `/audit/list${queryString(auditQuerySchema.parse(query))}`,
2730
+ auditPageSchema,
2731
+ call
2732
+ ),
2733
+ /**
2734
+ * One page of the project's access and API key changes across test and live, newest first.
2735
+ * Requires an organization administrator's Console session or CLI sign-in.
2736
+ */
2737
+ access: (query = {}, call) => get(
2738
+ `/audit/access${queryString(accessHistoryQuerySchema.parse(query))}`,
2739
+ auditPageSchema,
2740
+ call
2741
+ )
2742
+ },
2319
2743
  resources: {
2320
2744
  list: (call) => get(
2321
2745
  "/resources",
2322
- z8.object({ resources: z8.array(managedResourceSchema) }),
2746
+ z9.object({ resources: z9.array(managedResourceSchema) }),
2323
2747
  call
2324
2748
  ),
2325
2749
  lifecycle: (input, call) => post(
@@ -2355,7 +2779,7 @@ function createManagementClient(options) {
2355
2779
  testMemberCreateSchema.parse(input),
2356
2780
  call
2357
2781
  ),
2358
- list: (call) => get("/test-members", z8.array(testMemberSchema), call),
2782
+ list: (call) => get("/test-members", z9.array(testMemberSchema), call),
2359
2783
  history: (member, query = {}, call) => get(
2360
2784
  `/test-members/${identifier.parse(member)}/history${queryString(testMemberHistoryQuerySchema.parse(query))}`,
2361
2785
  testMemberHistorySchema,
@@ -2396,6 +2820,16 @@ function createManagementClient(options) {
2396
2820
  call
2397
2821
  )
2398
2822
  },
2823
+ /**
2824
+ * One page of the project's members, most recently joined first, with their accounts and
2825
+ * activity counts, and `total`, how many match. Pass a page's `nextCursor` back as `cursor`
2826
+ * for the next page; requires `read` permission.
2827
+ */
2828
+ list: (query = {}, call) => get(
2829
+ `/members/list${queryString(managedMemberQuerySchema.parse(query))}`,
2830
+ managedMemberPageSchema,
2831
+ call
2832
+ ),
2399
2833
  /** A member's detail: accounts, progress, passes, wallets and profile. */
2400
2834
  get: (member, call) => get(`/members/${encodeURIComponent(member)}`, memberDetailSchema, call),
2401
2835
  /**
@@ -2412,26 +2846,26 @@ function createManagementClient(options) {
2412
2846
  /** Who each member is: up to 100 distinct IDs; unknown IDs come back without accounts. */
2413
2847
  people: (members, call) => get(
2414
2848
  `/people${queryString({ ids: members.join(",") })}`,
2415
- z8.array(personSchema),
2849
+ z9.array(personSchema),
2416
2850
  call
2417
2851
  ),
2418
2852
  /** Current X and Discord quest account selections; requires read permission. */
2419
2853
  oauthAccounts: (member, call) => get(
2420
2854
  `/members/${encodeURIComponent(member)}/oauth-accounts`,
2421
- z8.array(managedOAuthAccountSchema),
2855
+ z9.array(managedOAuthAccountSchema),
2422
2856
  call
2423
2857
  ),
2424
2858
  /** Unlinks the reviewed selection across this organization/environment, preserving ownership and sign-in. */
2425
2859
  unlinkOAuthAccount: (member, input, call) => post(
2426
2860
  `/members/${encodeURIComponent(member)}/oauth-accounts/unlink`,
2427
- z8.array(managedOAuthAccountSchema),
2861
+ z9.array(managedOAuthAccountSchema),
2428
2862
  memberOAuthUnlinkInputSchema.parse(input),
2429
2863
  call
2430
2864
  ),
2431
2865
  /** Unlinks a member's wallet from the project with a reason; requires `review` permission. The address stays bound to the member. */
2432
2866
  unlinkWallet: (member, input, call) => post(
2433
2867
  `/members/${encodeURIComponent(member)}/wallets/unlink`,
2434
- z8.array(managedWalletSchema),
2868
+ z9.array(managedWalletSchema),
2435
2869
  memberWalletUnlinkInputSchema.parse(input),
2436
2870
  call
2437
2871
  ),
@@ -2442,14 +2876,14 @@ function createManagementClient(options) {
2442
2876
  */
2443
2877
  unlinkIdentity: (member, input, call) => post(
2444
2878
  `/members/${encodeURIComponent(member)}/identities/unlink`,
2445
- z8.array(managedMemberIdentitySchema),
2879
+ z9.array(managedMemberIdentitySchema),
2446
2880
  memberIdentityChangeInputSchema.parse(input),
2447
2881
  call
2448
2882
  ),
2449
2883
  /** Relinks an `app:<name>` identity an operator unlinked from this member, with a reason; requires `review` permission. */
2450
2884
  relinkIdentity: (member, input, call) => post(
2451
2885
  `/members/${encodeURIComponent(member)}/identities/relink`,
2452
- z8.array(managedMemberIdentitySchema),
2886
+ z9.array(managedMemberIdentitySchema),
2453
2887
  memberIdentityChangeInputSchema.parse(input),
2454
2888
  call
2455
2889
  ),
@@ -2459,7 +2893,7 @@ function createManagementClient(options) {
2459
2893
  */
2460
2894
  setWalletSignIn: (member, input, call) => post(
2461
2895
  `/members/${encodeURIComponent(member)}/wallets/sign-in`,
2462
- z8.array(managedWalletSchema),
2896
+ z9.array(managedWalletSchema),
2463
2897
  memberWalletSignInInputSchema.parse(input),
2464
2898
  call
2465
2899
  )
@@ -2494,13 +2928,18 @@ function createManagementClient(options) {
2494
2928
  appStorageTablesSchema,
2495
2929
  call
2496
2930
  ),
2497
- /** One page of 50 rows in the table's storage order, which rows changing in between can shift. */
2931
+ /**
2932
+ * One page of 50 rows in the table's storage order, which rows changing in between can shift.
2933
+ * Pass a page's `nextCursor` back as `cursor` for the next page.
2934
+ */
2498
2935
  rows: (name, table, options2 = {}, call) => get(
2499
- `/storage/sql/${appSecretNameSchema.parse(name)}/rows?${new URLSearchParams({ table, offset: String(options2.offset ?? 0) })}`,
2936
+ `/storage/sql/${appSecretNameSchema.parse(name)}/rows?${new URLSearchParams(
2937
+ options2.cursor === void 0 ? { table, offset: String(options2.offset ?? 0) } : { table, cursor: pageCursorSchema.parse(options2.cursor) }
2938
+ )}`,
2500
2939
  appStorageRowsSchema,
2501
2940
  call
2502
2941
  ),
2503
- /** One page of a KV store's keys; pass the returned `cursor` for the next. */
2942
+ /** One page of a KV store's keys. Pass a page's `nextCursor` back as `cursor` for the next. */
2504
2943
  keys: (name, options2 = {}, call) => get(
2505
2944
  `/storage/kv/${appSecretNameSchema.parse(name)}/keys?${new URLSearchParams(
2506
2945
  Object.entries(options2).filter(
@@ -2598,6 +3037,11 @@ function createManagementClient(options) {
2598
3037
  )
2599
3038
  },
2600
3039
  quests: {
3040
+ /**
3041
+ * Each quest's current release, the most recently published first, archived quests
3042
+ * included; requires `read` permission.
3043
+ */
3044
+ list: (call) => get("/quests/list", z9.array(publishedReleaseSchema), call),
2601
3045
  /** Pending and exhausted asynchronous balance checks. Requires read. */
2602
3046
  automaticScheduling: (query = {}, call) => get(
2603
3047
  `/quests/automatic-scheduling${queryString(automaticSchedulingQuerySchema.parse(query))}`,
@@ -2699,17 +3143,22 @@ export {
2699
3143
  APP_SQL_LIMIT,
2700
3144
  APP_STORAGE_PREVIEW_CHARACTERS,
2701
3145
  APP_STORAGE_ROW_LIMIT,
3146
+ CompletionSourceKind,
2702
3147
  DEFAULT_MANAGEMENT_TIMEOUT,
2703
3148
  ManagementError,
2704
3149
  ManagementErrorCode,
3150
+ PayoutSourceKind,
3151
+ REFERRAL_INTEGRATION_REWARD_ERROR,
2705
3152
  RevokedDeliveryOutcome,
2706
3153
  RevokedEntitlementOutcome,
2707
3154
  RevokedReferralOutcome,
2708
3155
  WEBHOOK_MAX_BYTES,
3156
+ accessHistoryQuerySchema,
2709
3157
  accessSchema,
2710
3158
  accountProfileSchema,
2711
3159
  activityTypeSchema,
2712
3160
  activityTypes,
3161
+ addGroupMemberSchema,
2713
3162
  appMigrationNameSchema,
2714
3163
  appRoutingSchema,
2715
3164
  appSecretDeclarationSchema,
@@ -2728,6 +3177,8 @@ export {
2728
3177
  appStorageTablesSchema,
2729
3178
  appStorageValueSchema,
2730
3179
  assetPathSchema,
3180
+ auditPageSchema,
3181
+ auditQuerySchema,
2731
3182
  auditRecordSchema,
2732
3183
  balanceCheckSchema,
2733
3184
  buildArtifactsSchema,
@@ -2738,18 +3189,28 @@ export {
2738
3189
  commitSchema,
2739
3190
  compareAppMigrations,
2740
3191
  completionRevocationSchema,
3192
+ completionRevocationShortfallSchema,
2741
3193
  completionRevokeSchema,
3194
+ containsReferralIntegrationReward,
3195
+ createGroupSchema,
2742
3196
  createManagementClient,
2743
3197
  createRepositorySchema,
3198
+ deploymentActionSchema,
3199
+ deploymentRejectionSchema,
2744
3200
  developmentPreflightSchema,
2745
3201
  deviceApproveSchema,
2746
3202
  deviceRedeemSchema,
2747
3203
  deviceStartSchema,
3204
+ engagementRuleVersionPageSchema,
2748
3205
  entitlementCorrectionSchema,
2749
3206
  entitlementSchema,
2750
3207
  environmentSchema,
2751
3208
  grantRecordSchema,
2752
3209
  grantSchema,
3210
+ groupMemberPageSchema,
3211
+ groupMemberSchema,
3212
+ groupPageQuerySchema,
3213
+ groupPageSchema,
2753
3214
  hostedAppSchema,
2754
3215
  hostedAppSecretsSchema,
2755
3216
  hostedBuildSchema,
@@ -2759,16 +3220,31 @@ export {
2759
3220
  hostedKeySecretSchema,
2760
3221
  hostedManagementBindings,
2761
3222
  hostedManagementClient,
3223
+ identityIntegrationInputSchema,
2762
3224
  identityIntegrationSchema,
2763
3225
  identityKindClaimSchema,
2764
3226
  ingestTrackerScopeSchema,
2765
3227
  inventorySchema,
3228
+ isIntegrationParticipantPath,
2766
3229
  isManagementError,
3230
+ isParticipantRoute,
2767
3231
  issuedTokenSchema,
3232
+ managedAttemptPageSchema,
3233
+ managedAttemptQuerySchema,
3234
+ managedAttemptSchema,
3235
+ managedEntitlementPageSchema,
3236
+ managedEntitlementQuerySchema,
3237
+ managedEntitlementSchema,
3238
+ managedGroupSchema,
2768
3239
  managedMemberIdentitySchema,
3240
+ managedMemberPageSchema,
3241
+ managedMemberQuerySchema,
2769
3242
  managedOAuthAccountSchema,
3243
+ managedPointHistoryPageSchema,
2770
3244
  managedResourceSchema,
3245
+ managedStockItemSchema,
2771
3246
  managedWalletSchema,
3247
+ managementErrorSchema,
2772
3248
  memberAccountSchema,
2773
3249
  memberDetailSchema,
2774
3250
  memberIdentityChangeInputSchema,
@@ -2783,28 +3259,44 @@ export {
2783
3259
  operationSchema,
2784
3260
  operatorUserSchema,
2785
3261
  pageSchema,
3262
+ parseImageExtraction,
3263
+ parseImageResult,
3264
+ participantExchangeSchema,
3265
+ participantRoutePattern,
3266
+ participantRoutes,
2786
3267
  participantSignInInputSchema,
2787
3268
  participantSignInSchema,
2788
3269
  permissionSchema,
2789
3270
  personSchema,
3271
+ pointLedgerPropertiesSchema,
2790
3272
  projectDeletionInputSchema,
2791
3273
  projectDeletionSchema,
2792
3274
  projectInputSchema,
3275
+ projectMetricsSchema,
2793
3276
  projectSchema,
2794
3277
  projectSetupSchema,
2795
3278
  projectTransferInputSchema,
2796
3279
  projectTransferSchema,
2797
3280
  projectUpdateInputSchema,
2798
3281
  querySchema,
3282
+ questConfiguration,
2799
3283
  questLifecycleInputSchema,
2800
3284
  questLifecycleSchema,
2801
3285
  readinessSchema,
3286
+ referralManagementSchema,
3287
+ referralQualificationSchema,
3288
+ referralRewardResolutionSchema,
3289
+ referralSuspensionSchema,
3290
+ removeGroupMemberSchema,
2802
3291
  repositorySchema,
2803
3292
  resourceLifecycleInputSchema,
2804
3293
  resourceLifecycleKindSchema,
2805
3294
  resourceLifecycleResultSchema,
2806
3295
  rolePermissions,
2807
3296
  roleSchema,
3297
+ sequenceCursorSchema,
3298
+ sourceDataSchema,
3299
+ sourceRoles,
2808
3300
  stageRequestSchema,
2809
3301
  stagedDeploymentContentSchema,
2810
3302
  stagedDeploymentKey,
@@ -2831,6 +3323,11 @@ export {
2831
3323
  tokenInputSchema,
2832
3324
  tokenSchema,
2833
3325
  tokenScopeInputSchema,
3326
+ trackerDataIssue,
3327
+ trackerDataIssues,
3328
+ trackerTriggerOutcomePageSchema,
3329
+ updateGroupSchema,
3330
+ validateQuestShape,
2834
3331
  verifiedPassSchema,
2835
3332
  verifyWebhook,
2836
3333
  walletBalanceChainsSchema,
@@ -2841,5 +3338,6 @@ export {
2841
3338
  webhookInputSchema,
2842
3339
  webhookQuerySchema,
2843
3340
  webhookSecretSchema,
2844
- webhookUpdateSchema
3341
+ webhookUpdateSchema,
3342
+ whereSchemaIssue
2845
3343
  };