@domino-sdk/relay 1.30.1 → 1.32.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.
@@ -2,8 +2,8 @@ import { x as xContentBodySchema, I as IdentityKind, n as customSourceSchema, W
2
2
  export { a9 as LedgerSetting, aa as TrackerPage, ab as TrackerReadQuery, ac as trackerDataSchema, ad as trackerTriggerContextSchema } from './schema-DquhoBae.js';
3
3
  import * as z from 'zod';
4
4
  export { z } from 'zod';
5
- import { f as badgeDeclarationSchema, B as Badge } from './offers-DzdzB2ZI.js';
6
- export { g as defineOffer } from './offers-DzdzB2ZI.js';
5
+ import { f as badgeDeclarationSchema, B as Badge } from './offers-D14uyLQQ.js';
6
+ export { g as defineOffer } from './offers-D14uyLQQ.js';
7
7
  import { E as EngagementBudget, q as leaderboardDefinitionSchema, r as AuthoringIdentity, s as pointLedgerDeclarationSchema, t as referralAuthoringSchema, C as CampaignDefinition, A as AvailabilityWindow } from './groups-sgKusEzF.js';
8
8
  export { u as defineCampaign, v as defineGroup } from './groups-sgKusEzF.js';
9
9
  import { d as discordMessagesSourceSchema, D as DiscordMessageData, c as DiscordMessageTextData, e as discordReactionsSourceSchema, f as DiscordReactionData, g as TelegramReader, h as DiscordReader } from './accounts-DRPENuZe.js';
package/dist/authoring.js CHANGED
@@ -20,7 +20,7 @@ import {
20
20
  leaderboardAuthoringSchema,
21
21
  pointLedgerDeclarationSchema,
22
22
  referralAuthoringSchema
23
- } from "./chunk-WPD4N3OP.js";
23
+ } from "./chunk-5QZGXYH7.js";
24
24
  import {
25
25
  telegramReactionDataSchema,
26
26
  telegramReactionsNamespace
package/dist/browser.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { o as SubmissionStore, f as RelayClientOptions, R as RelayClient } from './client-Ciy0g8Hx.js';
2
- export { C as CosmosChains, D as DiscoveredWallet, E as Eip1193Provider, a as EmailSignInOption, K as KeplrLike, O as OAuthSignInOption, S as SignInClient, b as SignInIcon, c as SignInMethods, d as SignInOption, e as SignInOptions, f as SignInUnavailable, g as SignInWallet, h as SolanaInjectedProvider, i as StandardWallet, j as StandardWalletAccount, T as TelegramSignInOption, W as WalletSignInOption, k as cosmosChainList, l as cosmosSigner, m as discoverCosmosWallets, n as discoverEvmWallets, o as discoverSignInWallets, p as discoverSolanaWallets, q as evmSigner, s as signInOptions, r as solanaSigner, t as telegramMiniAppInitData, w as walletStandardSolanaSigner } from './telegram-browser-DJiawHY-.js';
1
+ import { o as SubmissionStore, f as RelayClientOptions, R as RelayClient } from './client-CFFgPnIX.js';
2
+ export { C as CosmosChains, D as DiscoveredWallet, E as Eip1193Provider, a as EmailSignInOption, K as KeplrLike, O as OAuthSignInOption, S as SignInClient, b as SignInIcon, c as SignInMethods, d as SignInOption, e as SignInOptions, f as SignInUnavailable, g as SignInWallet, h as SolanaInjectedProvider, i as StandardWallet, j as StandardWalletAccount, T as TelegramSignInOption, W as WalletSignInOption, k as cosmosChainList, l as cosmosSigner, m as discoverCosmosWallets, n as discoverEvmWallets, o as discoverSignInWallets, p as discoverSolanaWallets, q as evmSigner, s as signInOptions, r as solanaSigner, t as telegramMiniAppInitData, w as walletStandardSolanaSigner } from './telegram-browser-zPO8yYDJ.js';
3
3
  import './groups-sgKusEzF.js';
4
4
  import 'zod';
5
5
  import './schema-DquhoBae.js';
6
- import './pages-DFZThUH7.js';
6
+ import './pages-C1tNuRoB.js';
7
7
  import './submission-input-Dr0v6J9N.js';
8
8
  import './action-DBzILFx9.js';
9
9
  import './participant-activity-BPZiW7m7.js';
package/dist/browser.js CHANGED
@@ -12,14 +12,14 @@ import {
12
12
  solanaSigner,
13
13
  telegramMiniAppInitData,
14
14
  walletStandardSolanaSigner
15
- } from "./chunk-HSF75ZA6.js";
16
- import "./chunk-MWPAOC56.js";
15
+ } from "./chunk-CUT62B37.js";
16
+ import "./chunk-HSH7OBUX.js";
17
17
  import "./chunk-IJT4EKFY.js";
18
- import "./chunk-6NWCLBXR.js";
19
- import "./chunk-WPD4N3OP.js";
18
+ import "./chunk-MHPTCD5O.js";
19
+ import "./chunk-5QZGXYH7.js";
20
20
  import "./chunk-BUHGXKPY.js";
21
21
  import "./chunk-V7K7XXFB.js";
22
- import "./chunk-FTZG6KMQ.js";
22
+ import "./chunk-CCUJ4UJG.js";
23
23
  import "./chunk-466IRAJP.js";
24
24
  import "./chunk-OW22TOV7.js";
25
25
  export {
@@ -908,6 +908,15 @@ var redemptionSchema = responseShape(
908
908
  }).strict()
909
909
  ])
910
910
  );
911
+ var redemptionQuerySchema = z7.strictObject({
912
+ member: identifier.optional(),
913
+ cursor: pageCursorSchema.optional(),
914
+ limit: z7.coerce.number().int().min(1).max(100).optional()
915
+ });
916
+ var redemptionPageSchema = z7.object({
917
+ items: z7.array(redemptionSchema),
918
+ nextCursor: pageCursorSchema.nullable()
919
+ });
911
920
  var offerControlSchema = z7.object({
912
921
  actionId: identifier,
913
922
  revision: z7.number().int().positive(),
@@ -1036,6 +1045,8 @@ export {
1036
1045
  offerSchema,
1037
1046
  redeemOfferSchema,
1038
1047
  redemptionSchema,
1048
+ redemptionQuerySchema,
1049
+ redemptionPageSchema,
1039
1050
  offerControlSchema,
1040
1051
  redemptionCancellationSchema,
1041
1052
  defineOffer
@@ -24,7 +24,7 @@ import {
24
24
  questTypeVersionSchema,
25
25
  questViewSchema,
26
26
  rewardDeliveriesSchema
27
- } from "./chunk-6NWCLBXR.js";
27
+ } from "./chunk-MHPTCD5O.js";
28
28
  import {
29
29
  badgeArtifactSchema,
30
30
  badgeSchema,
@@ -57,7 +57,7 @@ import {
57
57
  referralDefinitionSchema,
58
58
  referralHistorySchema,
59
59
  referralSummarySchema
60
- } from "./chunk-WPD4N3OP.js";
60
+ } from "./chunk-5QZGXYH7.js";
61
61
  import {
62
62
  telegramAccountConnectionSchema
63
63
  } from "./chunk-BUHGXKPY.js";
@@ -199,6 +199,15 @@ var deploymentRecordSchema = z.discriminatedUnion("status", [
199
199
  publishedBy: z.string().nullable()
200
200
  })
201
201
  ]);
202
+ var deploymentHistoryQuerySchema = z.strictObject({
203
+ cursor: pageCursorSchema.optional(),
204
+ limit: z.coerce.number().int().min(1).max(100).optional()
205
+ });
206
+ var deploymentHistoryPageSchema = z.object({
207
+ items: z.array(deploymentRecordSchema),
208
+ published: z.array(deploymentRecordSchema).max(2),
209
+ nextCursor: pageCursorSchema.nullable()
210
+ });
202
211
  var submitDeploymentSchema = z.object({ id: identifier }).strict();
203
212
  var rejectDeploymentSchema = z.object({
204
213
  id: identifier,
@@ -648,6 +657,8 @@ export {
648
657
  deploymentResultSchema,
649
658
  deploymentSourceSchema,
650
659
  deploymentRecordSchema,
660
+ deploymentHistoryQuerySchema,
661
+ deploymentHistoryPageSchema,
651
662
  submitDeploymentSchema,
652
663
  rejectDeploymentSchema,
653
664
  deploymentRejectionSchema,
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-V7K7XXFB.js";
8
8
  import {
9
9
  clientIdentity
10
- } from "./chunk-FTZG6KMQ.js";
10
+ } from "./chunk-CCUJ4UJG.js";
11
11
  import {
12
12
  authScopeSchema
13
13
  } from "./chunk-466IRAJP.js";
@@ -33,11 +33,27 @@ function questConfiguration(release) {
33
33
  };
34
34
  }
35
35
 
36
- // src/identity-integration.ts
36
+ // src/credential-secrets.ts
37
37
  import * as z from "zod";
38
- var identityIntegrationInputSchema = z.object({
39
- name: z.string().trim().min(1).max(80),
40
- origin: z.string().url().refine((value) => {
38
+ var credentialSecretSchema = z.object({
39
+ id: z.string().uuid(),
40
+ /** The secret's last four characters, to tell secrets apart; null for one issued before hints. */
41
+ hint: z.string().nullable(),
42
+ createdAt: z.number(),
43
+ /** When the secret stops working; null when it never expires. */
44
+ expiresAt: z.number().nullable(),
45
+ /** When the secret last authenticated a request; null when it never has. */
46
+ lastUsedAt: z.number().nullable()
47
+ });
48
+ var credentialSecretInputSchema = z.object({
49
+ expiresInDays: z.number().int().min(1).max(3650).optional()
50
+ }).strict();
51
+
52
+ // src/identity-integration.ts
53
+ import * as z2 from "zod";
54
+ var identityIntegrationInputSchema = z2.object({
55
+ name: z2.string().trim().min(1).max(80),
56
+ origin: z2.string().url().refine((value) => {
41
57
  const url = new URL(value);
42
58
  return url.protocol === "https:" && url.origin === value;
43
59
  }, "Use an exact HTTPS application origin"),
@@ -58,9 +74,11 @@ var identityIntegrationInputSchema = z.object({
58
74
  * users as that integration's, because each one then signs in as the member that ID is linked
59
75
  * to. Needs `reason`, which the audit log keeps.
60
76
  */
61
- adoptIdentitiesFrom: z.string().uuid().optional(),
77
+ adoptIdentitiesFrom: z2.string().uuid().optional(),
62
78
  /** Why the identities are adopted; required with `adoptIdentitiesFrom`. */
63
- reason: z.string().trim().min(1).max(500).optional()
79
+ reason: z2.string().trim().min(1).max(500).optional(),
80
+ /** Days until the first secret expires. Omit it for a key that never expires. */
81
+ expiresInDays: z2.number().int().min(1).max(3650).optional()
64
82
  }).strict().refine(
65
83
  (input) => !input.adoptIdentitiesFrom || input.identityKind,
66
84
  "Adopting identities needs the identityKind they have"
@@ -68,41 +86,51 @@ var identityIntegrationInputSchema = z.object({
68
86
  (input) => !input.adoptIdentitiesFrom === !input.reason,
69
87
  "Give a reason when adopting identities, and only then"
70
88
  );
71
- var identityIntegrationSchema = z.object({
89
+ var identityIntegrationSchema = z2.object({
72
90
  ...authScopeSchema.shape,
73
- id: z.string().uuid(),
74
- name: z.string(),
75
- origin: z.string(),
76
- expiresAt: z.number(),
91
+ id: z2.string().uuid(),
92
+ name: z2.string(),
93
+ origin: z2.string(),
94
+ /**
95
+ * When the integration's last working secret expires: 8640000000000000 (the latest date
96
+ * JavaScript represents) when one never does.
97
+ *
98
+ * @deprecated Read `secrets`, which gives each secret's own expiry.
99
+ */
100
+ expiresAt: z2.number(),
101
+ /** The integration's working secrets, oldest first. Any of them authenticates it. */
102
+ secrets: z2.array(credentialSecretSchema).default([]),
103
+ /** The latest use of any of its secrets, revoked ones included; null when none was used. */
104
+ lastUsedAt: z2.number().nullable().default(null),
77
105
  /** The identity kind the integration owns; null when it only signs members in. */
78
106
  identityKind: openIdentityKindSchema.nullable().default(null)
79
107
  });
80
108
  var identityIntegrationSecretSchema = identityIntegrationSchema.extend(
81
109
  {
82
- token: z.string()
110
+ token: z2.string()
83
111
  }
84
112
  );
85
- var identityKindClaimSchema = z.object({
113
+ var identityKindClaimSchema = z2.object({
86
114
  kind: openIdentityKindSchema,
87
115
  /** The owning integration's ID; it stays after the integration is disconnected. */
88
- integration: z.string(),
116
+ integration: z2.string(),
89
117
  /** The owning integration's name when it claimed or adopted the kind. */
90
- integrationName: z.string(),
118
+ integrationName: z2.string(),
91
119
  /** Whether the owning integration is still connected. */
92
- connected: z.boolean(),
120
+ connected: z2.boolean(),
93
121
  /** Linked identities of the kind; adopting them is required to reuse the kind. */
94
- linked: z.number().int().nonnegative(),
122
+ linked: z2.number().int().nonnegative(),
95
123
  /** Identities an operator unlinked. */
96
- unlinked: z.number().int().nonnegative(),
97
- claimedAt: z.number().int().nonnegative()
124
+ unlinked: z2.number().int().nonnegative(),
125
+ claimedAt: z2.number().int().nonnegative()
98
126
  });
99
- var participantExchangeSchema = z.object({
100
- subject: z.string().min(1).max(200),
101
- previousToken: z.string().max(200).optional()
127
+ var participantExchangeSchema = z2.object({
128
+ subject: z2.string().min(1).max(200),
129
+ previousToken: z2.string().max(200).optional()
102
130
  }).strict();
103
131
 
104
132
  // src/server/errors.ts
105
- import * as z2 from "zod";
133
+ import * as z3 from "zod";
106
134
  var ManagementErrorCode = {
107
135
  /** The input or an option failed validation before anything was sent (kind `client`). */
108
136
  InvalidInput: "invalid-input",
@@ -113,9 +141,9 @@ var ManagementErrorCode = {
113
141
  Aborted: "aborted",
114
142
  InvalidResponse: "invalid-response"
115
143
  };
116
- var managementErrorSchema = z2.looseObject({
117
- error: z2.string(),
118
- code: z2.string().optional()
144
+ var managementErrorSchema = z3.looseObject({
145
+ error: z3.string(),
146
+ code: z3.string().optional()
119
147
  });
120
148
  var uncertainStatuses = /* @__PURE__ */ new Set([500, 502, 504]);
121
149
  function uncertainOutcome(init) {
@@ -167,7 +195,7 @@ var ManagementError = class extends RequestError {
167
195
  var DEFAULT_MANAGEMENT_TIMEOUT = MANAGEMENT_TIMEOUT;
168
196
 
169
197
  // src/server/transport.ts
170
- import * as z3 from "zod";
198
+ import * as z4 from "zod";
171
199
  function failureCause(error) {
172
200
  if (typeof error !== "object" || error === null || !("cause" in error)) {
173
201
  return {};
@@ -463,7 +491,7 @@ function managementTransport(options) {
463
491
  replaySafe
464
492
  }) => exchange(
465
493
  path,
466
- z3.unknown(),
494
+ z4.unknown(),
467
495
  body,
468
496
  method,
469
497
  void 0,
@@ -473,8 +501,8 @@ function managementTransport(options) {
473
501
  }
474
502
 
475
503
  // src/sequence-cursor.ts
476
- import * as z4 from "zod";
477
- var sequenceCursorSchema = z4.string().regex(/^[1-9][0-9]{0,15}$/, "Invalid cursor").transform(Number).pipe(z4.number().int().positive().safe());
504
+ import * as z5 from "zod";
505
+ var sequenceCursorSchema = z5.string().regex(/^[1-9][0-9]{0,15}$/, "Invalid cursor").transform(Number).pipe(z5.number().int().positive().safe());
478
506
 
479
507
  // src/referral-reward-kinds.ts
480
508
  var REFERRAL_INTEGRATION_REWARD_ERROR = "Referral programs can grant points and tiered rewards; Discord roles need a quest";
@@ -496,6 +524,8 @@ function containsReferralIntegrationReward(value) {
496
524
 
497
525
  export {
498
526
  questConfiguration,
527
+ credentialSecretSchema,
528
+ credentialSecretInputSchema,
499
529
  identityIntegrationInputSchema,
500
530
  identityIntegrationSchema,
501
531
  identityIntegrationSecretSchema,
@@ -1,6 +1,6 @@
1
1
  // package.json
2
2
  var name = "@domino-sdk/relay";
3
- var version = "1.30.1";
3
+ var version = "1.32.0";
4
4
 
5
5
  // src/client-identity.ts
6
6
  function clientIdentity() {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createRelayClient
3
- } from "./chunk-MWPAOC56.js";
3
+ } from "./chunk-HSH7OBUX.js";
4
4
  import {
5
5
  RelayErrorCode,
6
6
  asRelayError,
@@ -15,8 +15,9 @@ import {
15
15
  questOutcomePageSchema,
16
16
  questOutcomeQuerySchema,
17
17
  questOutcomeSchema,
18
- rewardDeliveriesSchema
19
- } from "./chunk-6NWCLBXR.js";
18
+ rewardDeliveriesSchema,
19
+ rewardDeliveryQuerySchema
20
+ } from "./chunk-MHPTCD5O.js";
20
21
  import {
21
22
  AVATAR_UPLOAD_LIMIT,
22
23
  avatarUploadTypes,
@@ -45,7 +46,7 @@ import {
45
46
  referralDefinitionSchema,
46
47
  referralHistorySchema,
47
48
  referralSummarySchema
48
- } from "./chunk-WPD4N3OP.js";
49
+ } from "./chunk-5QZGXYH7.js";
49
50
  import {
50
51
  telegramAccountConnectionSchema,
51
52
  telegramMiniAppSignInSchema,
@@ -60,7 +61,7 @@ import {
60
61
  } from "./chunk-V7K7XXFB.js";
61
62
  import {
62
63
  clientIdentity
63
- } from "./chunk-FTZG6KMQ.js";
64
+ } from "./chunk-CCUJ4UJG.js";
64
65
  import {
65
66
  exchangeResultSchema,
66
67
  exchangeSchema,
@@ -2217,9 +2218,21 @@ function relayClient(options) {
2217
2218
  progress: (requestOptions) => request("/v1/me/progress", memberProgressSchema, {
2218
2219
  options: requestOptions
2219
2220
  }),
2220
- rewardDeliveries: (requestOptions) => request("/v1/reward-deliveries", rewardDeliveriesSchema, {
2221
- options: requestOptions
2222
- }),
2221
+ /**
2222
+ * The member's reward deliveries, newest first, one page at a time. Pass a page's
2223
+ * `nextCursor` back as `cursor` for older ones; `limit` is 1 to 500, 500 by default.
2224
+ */
2225
+ rewardDeliveries: (requestOptions = {}) => {
2226
+ const { cursor, limit, ...options2 } = requestOptions;
2227
+ return request(
2228
+ withQuery(
2229
+ "/v1/reward-deliveries",
2230
+ parseInput(rewardDeliveryQuerySchema, { cursor, limit })
2231
+ ),
2232
+ rewardDeliveriesSchema,
2233
+ { options: options2 }
2234
+ );
2235
+ },
2223
2236
  /**
2224
2237
  * `{ items }`: the member's balance in each of the project's point ledgers, in the project's
2225
2238
  * ledger order, zero in a ledger they have no entries in.
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  badgeSchema,
3
3
  pointLedgerReferenceSchema
4
- } from "./chunk-WPD4N3OP.js";
4
+ } from "./chunk-5QZGXYH7.js";
5
5
  import {
6
6
  authoringIdentityShape,
7
7
  entitlementSchema,
@@ -477,7 +477,12 @@ var rewardDeliverySchema = z6.union([
477
477
  futureRewardDeliverySchema
478
478
  ]);
479
479
  var rewardDeliveriesSchema = z6.object({
480
- deliveries: z6.array(rewardDeliverySchema)
480
+ deliveries: z6.array(rewardDeliverySchema),
481
+ nextCursor: pageCursorSchema.nullable().default(null)
482
+ });
483
+ var rewardDeliveryQuerySchema = z6.strictObject({
484
+ cursor: pageCursorSchema.optional(),
485
+ limit: z6.coerce.number().int().min(1).max(500).optional()
481
486
  });
482
487
 
483
488
  export {
@@ -526,5 +531,6 @@ export {
526
531
  roleReconciliationSchema,
527
532
  knownRewardDeliverySchema,
528
533
  rewardDeliverySchema,
529
- rewardDeliveriesSchema
534
+ rewardDeliveriesSchema,
535
+ rewardDeliveryQuerySchema
530
536
  };
@@ -1,5 +1,5 @@
1
1
  import { b0 as referralAcceptSchema, g as LeaderboardQuery, b as CampaignEnrollmentInput, d as CampaignWithdrawalInput, m as PointHistoryQuery, k as PointEntryKind, a7 as engagementPageQuerySchema } from './groups-sgKusEzF.js';
2
- import { j as QuestView, k as ResponseSchema, a as PageQuery, c as QuestEnrollmentInput, Q as QuestClaimInput, g as QuestOutcomeQuery, $ as questExperienceSchema, l as RewardDeliveryAction, G as contentQualificationQuerySchema } from './pages-DFZThUH7.js';
2
+ import { j as QuestView, k as ResponseSchema, a as PageQuery, c as QuestEnrollmentInput, Q as QuestClaimInput, g as QuestOutcomeQuery, a0 as questExperienceSchema, t as RewardDeliveryQuery, l as RewardDeliveryAction, H as contentQualificationQuerySchema } from './pages-C1tNuRoB.js';
3
3
  import { M as MissingPrerequisite, V as ValueEvidence } from './submission-input-Dr0v6J9N.js';
4
4
  import { a as RequestError, b as RequestErrorDetails, c as RequestErrorKind, e as createRelayAction, O as OptionalActionId } from './action-DBzILFx9.js';
5
5
  import { f as QuizEvidence, A as Attempt, M as MemberProgress, a as AttemptStatus, h as TrackerSkipCode, co as submitSchema, bj as contentPerformanceQuerySchema } from './schema-DquhoBae.js';
@@ -4327,7 +4327,11 @@ declare function relayClient(options: RelayClientOptions): {
4327
4327
  revision: number;
4328
4328
  })[];
4329
4329
  }>;
4330
- rewardDeliveries: (requestOptions?: RelayRequestOptions) => Promise<{
4330
+ /**
4331
+ * The member's reward deliveries, newest first, one page at a time. Pass a page's
4332
+ * `nextCursor` back as `cursor` for older ones; `limit` is 1 to 500, 500 by default.
4333
+ */
4334
+ rewardDeliveries: (requestOptions?: RelayRequestOptions & RewardDeliveryQuery) => Promise<{
4331
4335
  deliveries: ({
4332
4336
  [x: string]: z.core.util.JSONType | undefined;
4333
4337
  id: string;
@@ -4376,6 +4380,7 @@ declare function relayClient(options: RelayClientOptions): {
4376
4380
  reason: string | null;
4377
4381
  } | null | undefined;
4378
4382
  })[];
4383
+ nextCursor: string | null;
4379
4384
  }>;
4380
4385
  /**
4381
4386
  * `{ items }`: the member's balance in each of the project's point ledgers, in the project's