@settlemint/dalp-sdk 2.1.7-main.23619085876 → 2.1.7-main.23633109637

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 (2) hide show
  1. package/dist/index.js +331 -324
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -2837,7 +2837,7 @@ var FixedYieldScheduleCreateInputSchema = MutationInputSchema.extend({
2837
2837
  });
2838
2838
 
2839
2839
  // ../../packages/core/validation/src/fixed-yield-schedule.ts
2840
- import { z as z22 } from "zod";
2840
+ import { z as z21 } from "zod";
2841
2841
 
2842
2842
  // ../../packages/core/validation/src/bigdecimal.ts
2843
2843
  import { from, isDnum } from "dnum";
@@ -2901,22 +2901,17 @@ var DecimalsSchema = z20.union([z20.string(), z20.number()]).transform((value2,
2901
2901
  }).meta({ description: "Number of decimal places for the asset", examples: [0, 2, 6, 8, 18] });
2902
2902
  var decimals = () => DecimalsSchema;
2903
2903
 
2904
- // ../../packages/core/validation/src/ethereum-hex.ts
2905
- import { isHex } from "viem";
2906
- import { z as z21 } from "zod";
2907
- var ethereumHex = z21.string().meta({
2908
- description: "A valid Ethereum hex string (starting with 0x)",
2909
- examples: ["0x1234abcd", "0x00", "0xdeadbeef"]
2910
- }).min(2, "Hex string must be at least 2 characters long (0x)").refine(isHex, {
2911
- message: "Invalid hex format - must start with '0x' followed by hexadecimal characters"
2912
- }).transform((value2) => value2);
2913
-
2914
2904
  // ../../packages/core/validation/src/fixed-yield-schedule.ts
2915
- var FixedYieldSchedulePeriodSchema = z22.object({
2916
- id: ethereumHex.meta({
2917
- description: "Unique identifier for the yield period (composite hex ID from subgraph)",
2918
- examples: ["0x1234567890abcdef"]
2919
- }),
2905
+ function fixedYieldSchedulePeriodId() {
2906
+ return z21.string().refine((id) => /^0x[a-f0-9]{40}-period-\d+$/i.test(id), {
2907
+ message: 'Period ID must be in format "0x{40-hex-chars}-period-{index}"'
2908
+ }).meta({
2909
+ description: "Unique identifier for a fixed yield period (composite: {scheduleAddress}-period-{index})",
2910
+ examples: ["0x1234567890abcdef1234567890abcdef12345678-period-0"]
2911
+ });
2912
+ }
2913
+ var FixedYieldSchedulePeriodSchema = z21.object({
2914
+ id: fixedYieldSchedulePeriodId(),
2920
2915
  startDate: timestamp().meta({
2921
2916
  description: "Unix timestamp when period starts",
2922
2917
  examples: [1680354000, 1704067200]
@@ -2934,9 +2929,9 @@ var FixedYieldSchedulePeriodSchema = z22.object({
2934
2929
  description: "Total yield generated in this period",
2935
2930
  examples: ["1500.0", "1000.0"]
2936
2931
  }),
2937
- completed: z22.boolean().meta({ description: "Whether this period has been completed", examples: [true, false] })
2932
+ completed: z21.boolean().meta({ description: "Whether this period has been completed", examples: [true, false] })
2938
2933
  });
2939
- var FixedYieldScheduleSchema = z22.object({
2934
+ var FixedYieldScheduleSchema = z21.object({
2940
2935
  id: ethereumAddress.meta({
2941
2936
  description: "Yield schedule contract address",
2942
2937
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
@@ -2949,18 +2944,18 @@ var FixedYieldScheduleSchema = z22.object({
2949
2944
  description: "Unix timestamp when yield ends",
2950
2945
  examples: [1711890000, 1735689600]
2951
2946
  }),
2952
- rate: z22.string().meta({ description: "Yield rate in basis points", examples: ["500", "1000", "250"] }),
2953
- interval: z22.string().meta({ description: "Payment interval in seconds", examples: ["2592000", "86400", "604800"] }),
2947
+ rate: z21.string().meta({ description: "Yield rate in basis points", examples: ["500", "1000", "250"] }),
2948
+ interval: z21.string().meta({ description: "Payment interval in seconds", examples: ["2592000", "86400", "604800"] }),
2954
2949
  totalClaimed: bigDecimal().meta({ description: "Total yield claimed", examples: ["1000.0", "0"] }),
2955
2950
  totalUnclaimedYield: bigDecimal().meta({ description: "Total unclaimed yield", examples: ["500.0", "0"] }),
2956
2951
  totalYield: bigDecimal().meta({ description: "Total yield generated", examples: ["1500.0", "1000.0"] }),
2957
- denominationAsset: z22.object({
2952
+ denominationAsset: z21.object({
2958
2953
  id: ethereumAddress.meta({
2959
2954
  description: "Denomination asset contract address",
2960
2955
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
2961
2956
  }),
2962
2957
  decimals: decimals().meta({ description: "Denomination asset decimals", examples: [6, 18] }),
2963
- symbol: z22.string().meta({ description: "Denomination asset symbol", examples: ["USDC", "USDT", "DAI"] })
2958
+ symbol: z21.string().meta({ description: "Denomination asset symbol", examples: ["USDC", "USDT", "DAI"] })
2964
2959
  }),
2965
2960
  currentPeriod: FixedYieldSchedulePeriodSchema.nullable().meta({
2966
2961
  description: "Current active yield period",
@@ -2970,7 +2965,7 @@ var FixedYieldScheduleSchema = z22.object({
2970
2965
  description: "Next scheduled yield period",
2971
2966
  examples: [null]
2972
2967
  }),
2973
- periods: z22.array(FixedYieldSchedulePeriodSchema).meta({ description: "Array of all yield periods", examples: [[]] })
2968
+ periods: z21.array(FixedYieldSchedulePeriodSchema).meta({ description: "Array of all yield periods", examples: [[]] })
2974
2969
  });
2975
2970
  var fixedYieldSchedule = () => FixedYieldScheduleSchema;
2976
2971
 
@@ -2997,16 +2992,16 @@ var fixedYieldScheduleReadContract = v1Contract.route({
2997
2992
 
2998
2993
  // ../../packages/core/validation/src/asset-amount.ts
2999
2994
  import { from as from2, isDnum as isDnum2 } from "dnum";
3000
- import { z as z23 } from "zod";
2995
+ import { z as z22 } from "zod";
3001
2996
  var MAX_UINT256 = 2n ** 256n - 1n;
3002
- var assetAmount = z23.preprocess((value2, ctx) => {
2997
+ var assetAmount = z22.preprocess((value2, ctx) => {
3003
2998
  const isDnumValue = isDnum2(value2);
3004
2999
  if (Array.isArray(value2) && (value2.length !== 2 || !isDnumValue)) {
3005
3000
  ctx.addIssue({
3006
3001
  code: "custom",
3007
3002
  message: "Invalid asset amount format: array (not a dnum)"
3008
3003
  });
3009
- return z23.NEVER;
3004
+ return z22.NEVER;
3010
3005
  }
3011
3006
  try {
3012
3007
  const dnum = from2(value2);
@@ -3015,14 +3010,14 @@ var assetAmount = z23.preprocess((value2, ctx) => {
3015
3010
  code: "custom",
3016
3011
  message: "Asset amount cannot be negative"
3017
3012
  });
3018
- return z23.NEVER;
3013
+ return z22.NEVER;
3019
3014
  }
3020
3015
  if (dnum[0] > MAX_UINT256) {
3021
3016
  ctx.addIssue({
3022
3017
  code: "custom",
3023
3018
  message: "Asset amount exceeds the maximum uint256 value"
3024
3019
  });
3025
- return z23.NEVER;
3020
+ return z22.NEVER;
3026
3021
  }
3027
3022
  return dnum[0];
3028
3023
  } catch {
@@ -3033,21 +3028,21 @@ var assetAmount = z23.preprocess((value2, ctx) => {
3033
3028
  code: "custom",
3034
3029
  message: "Asset amount cannot be negative"
3035
3030
  });
3036
- return z23.NEVER;
3031
+ return z22.NEVER;
3037
3032
  }
3038
3033
  if (bigintValue > MAX_UINT256) {
3039
3034
  ctx.addIssue({
3040
3035
  code: "custom",
3041
3036
  message: "Asset amount exceeds the maximum uint256 value"
3042
3037
  });
3043
- return z23.NEVER;
3038
+ return z22.NEVER;
3044
3039
  }
3045
3040
  return bigintValue;
3046
3041
  } catch {
3047
3042
  return value2;
3048
3043
  }
3049
3044
  }
3050
- }, z23.coerce.bigint());
3045
+ }, z22.coerce.bigint());
3051
3046
 
3052
3047
  // ../../packages/dalp/api-contract/src/routes/addons/fixed-yield-schedule/routes/fixed-yield-schedule.top-up.schema.ts
3053
3048
  var FixedYieldScheduleTopUpInputSchema = FixedYieldScheduleMutationInputSchema.extend({
@@ -3098,11 +3093,11 @@ var fixedYieldScheduleWithdrawContract = v1Contract.route({
3098
3093
  }).input(FixedYieldScheduleWithdrawInputSchema).output(FixedYieldScheduleWithdrawOutputSchema);
3099
3094
 
3100
3095
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/approve/xvp.approve.schema.ts
3101
- import { z as z25 } from "zod";
3096
+ import { z as z24 } from "zod";
3102
3097
 
3103
3098
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/schemas/xvp.input.schema.ts
3104
- import { z as z24 } from "zod";
3105
- var XvpSettlementReadInputSchema = z24.object({
3099
+ import { z as z23 } from "zod";
3100
+ var XvpSettlementReadInputSchema = z23.object({
3106
3101
  settlementAddress: ethereumAddress.meta({
3107
3102
  description: "The XvP settlement contract address",
3108
3103
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
@@ -3112,25 +3107,25 @@ var XvpSettlementMutationInputSchema = XvpSettlementReadInputSchema.extend(Mutat
3112
3107
 
3113
3108
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/approve/xvp.approve.schema.ts
3114
3109
  var XvpApproveInputSchema = XvpSettlementMutationInputSchema;
3115
- var XvpApproveOutputSchema = z25.object({
3116
- transactionHash: z25.string()
3110
+ var XvpApproveOutputSchema = z24.object({
3111
+ transactionHash: z24.string()
3117
3112
  });
3118
3113
 
3119
3114
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/cancel/xvp.cancel.schema.ts
3120
- import { z as z26 } from "zod";
3115
+ import { z as z25 } from "zod";
3121
3116
  var XvpCancelInputSchema = XvpSettlementMutationInputSchema;
3122
- var XvpCancelOutputSchema = z26.object({
3123
- transactionHash: z26.string()
3117
+ var XvpCancelOutputSchema = z25.object({
3118
+ transactionHash: z25.string()
3124
3119
  });
3125
3120
 
3126
3121
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/create/xvp.create.schema.ts
3127
- import { z as z27 } from "zod";
3128
- function isHex2(value2) {
3122
+ import { z as z26 } from "zod";
3123
+ function isHex(value2) {
3129
3124
  return /^0x[0-9a-fA-F]*$/.test(value2);
3130
3125
  }
3131
3126
  var SECRET_MIN_LENGTH = 32;
3132
- var LocalFlowSchema = z27.object({
3133
- type: z27.literal("local"),
3127
+ var LocalFlowSchema = z26.object({
3128
+ type: z26.literal("local"),
3134
3129
  assetId: ethereumAddress.meta({
3135
3130
  description: "ERC-20 asset address",
3136
3131
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
@@ -3145,8 +3140,8 @@ var LocalFlowSchema = z27.object({
3145
3140
  }),
3146
3141
  amount: assetAmount.meta({ description: "Token amount in base units", examples: ["1000000000000000000"] })
3147
3142
  });
3148
- var ExternalFlowSchema = z27.object({
3149
- type: z27.literal("external"),
3143
+ var ExternalFlowSchema = z26.object({
3144
+ type: z26.literal("external"),
3150
3145
  assetId: ethereumAddress.meta({
3151
3146
  description: "ERC-20 asset address on external chain",
3152
3147
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
@@ -3160,15 +3155,15 @@ var ExternalFlowSchema = z27.object({
3160
3155
  examples: ["0xbDA5747bFD65F08deb54cb465eB87D40e51B197E"]
3161
3156
  }),
3162
3157
  amount: assetAmount.meta({ description: "Token amount in base units", examples: ["1000000000000000000"] }),
3163
- externalChainId: z27.int().positive().meta({ description: "Target chain ID", examples: [1, 137, 42161] }),
3158
+ externalChainId: z26.int().positive().meta({ description: "Target chain ID", examples: [1, 137, 42161] }),
3164
3159
  externalAssetDecimals: decimals().meta({ description: "Asset decimals on external chain", examples: [18, 6, 8] })
3165
3160
  });
3166
- var XvpSettlementFlowSchema = z27.discriminatedUnion("type", [LocalFlowSchema, ExternalFlowSchema]);
3167
- var RawSecretSchema = z27.string().min(SECRET_MIN_LENGTH, `Secret must be at least ${SECRET_MIN_LENGTH} characters`).meta({
3161
+ var XvpSettlementFlowSchema = z26.discriminatedUnion("type", [LocalFlowSchema, ExternalFlowSchema]);
3162
+ var RawSecretSchema = z26.string().min(SECRET_MIN_LENGTH, `Secret must be at least ${SECRET_MIN_LENGTH} characters`).meta({
3168
3163
  description: "Raw HTLC secret pre-image (plain text string).",
3169
3164
  examples: ["my-super-secret-preimage-for-htlc-swap"]
3170
3165
  });
3171
- var HashlockSchema = z27.string().refine((value2) => isHex2(value2) && value2.length === 66, {
3166
+ var HashlockSchema = z26.string().refine((value2) => isHex(value2) && value2.length === 66, {
3172
3167
  message: "Hashlock must be a 0x-prefixed 32-byte hex string (66 chars)"
3173
3168
  }).meta({
3174
3169
  description: "Pre-computed keccak256 hashlock (bytes32)",
@@ -3191,12 +3186,12 @@ var XvpCreateBaseSchema = MutationInputSchema.extend({
3191
3186
  description: "The XvP addon factory contract address",
3192
3187
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
3193
3188
  }),
3194
- name: z27.string(),
3195
- autoExecute: z27.boolean().default(false),
3189
+ name: z26.string(),
3190
+ autoExecute: z26.boolean().default(false),
3196
3191
  cutoffDate: blocktime({ future: true }).meta({ description: "Settlement cutoff", examples: [1735689600] }),
3197
3192
  secret: RawSecretSchema.optional(),
3198
3193
  hashlock: HashlockSchema.optional(),
3199
- flows: z27.array(XvpSettlementFlowSchema),
3194
+ flows: z26.array(XvpSettlementFlowSchema),
3200
3195
  country: isoCountryCodeNumeric.optional().meta({
3201
3196
  description: "ISO 3166-1 numeric country code for the settlement contract identity (required for V3 factories with identity registration)",
3202
3197
  examples: [840, 276, 756]
@@ -3209,8 +3204,8 @@ var XvpCreateSchema = XvpCreateBaseSchema.refine(validateHashlockRequirement, {
3209
3204
  message: "At least one flow must be a local flow (type: 'local').",
3210
3205
  path: ["flows"]
3211
3206
  });
3212
- var XvpCreateOutputSchema = z27.object({
3213
- transactionHash: z27.string(),
3207
+ var XvpCreateOutputSchema = z26.object({
3208
+ transactionHash: z26.string(),
3214
3209
  settlementId: ethereumAddress.meta({
3215
3210
  description: "Created XvP settlement contract address",
3216
3211
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
@@ -3218,81 +3213,81 @@ var XvpCreateOutputSchema = z27.object({
3218
3213
  });
3219
3214
 
3220
3215
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/execute/xvp.execute.schema.ts
3221
- import { z as z28 } from "zod";
3216
+ import { z as z27 } from "zod";
3222
3217
  var XvpExecuteInputSchema = XvpSettlementMutationInputSchema;
3223
- var XvpExecuteOutputSchema = z28.object({
3224
- transactionHash: z28.string()
3218
+ var XvpExecuteOutputSchema = z27.object({
3219
+ transactionHash: z27.string()
3225
3220
  });
3226
3221
 
3227
3222
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/reveal-secret/xvp.reveal-secret.schema.ts
3228
- import { z as z29 } from "zod";
3229
- var EmailRecipientsSchema = z29.array(z29.email("Invalid email address")).max(10, "Maximum 10 email recipients allowed").optional().default([]);
3223
+ import { z as z28 } from "zod";
3224
+ var EmailRecipientsSchema = z28.array(z28.email("Invalid email address")).max(10, "Maximum 10 email recipients allowed").optional().default([]);
3230
3225
  var XvpRevealSecretInputSchema = XvpSettlementMutationInputSchema.extend({
3231
3226
  secret: RawSecretSchema,
3232
3227
  emailRecipients: EmailRecipientsSchema,
3233
- settlementName: z29.string().optional()
3228
+ settlementName: z28.string().optional()
3234
3229
  });
3235
- var EmailSendResultSchema = z29.object({
3236
- recipient: z29.email(),
3237
- success: z29.boolean(),
3238
- error: z29.string().optional()
3230
+ var EmailSendResultSchema = z28.object({
3231
+ recipient: z28.email(),
3232
+ success: z28.boolean(),
3233
+ error: z28.string().optional()
3239
3234
  });
3240
- var XvpRevealSecretOutputSchema = z29.object({
3241
- transactionHash: z29.string(),
3242
- emailResults: z29.array(EmailSendResultSchema).optional()
3235
+ var XvpRevealSecretOutputSchema = z28.object({
3236
+ transactionHash: z28.string(),
3237
+ emailResults: z28.array(EmailSendResultSchema).optional()
3243
3238
  });
3244
3239
 
3245
3240
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/revoke-approval/xvp.revoke-approval.schema.ts
3246
- import { z as z30 } from "zod";
3241
+ import { z as z29 } from "zod";
3247
3242
  var XvpRevokeApprovalInputSchema = XvpSettlementMutationInputSchema;
3248
- var XvpRevokeApprovalOutputSchema = z30.object({
3249
- transactionHash: z30.string()
3243
+ var XvpRevokeApprovalOutputSchema = z29.object({
3244
+ transactionHash: z29.string()
3250
3245
  });
3251
3246
 
3252
3247
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/withdraw-cancel/xvp.withdraw-cancel.schema.ts
3253
- import { z as z31 } from "zod";
3248
+ import { z as z30 } from "zod";
3254
3249
  var XvpWithdrawCancelInputSchema = XvpSettlementMutationInputSchema;
3255
- var XvpWithdrawCancelOutputSchema = z31.object({
3256
- transactionHash: z31.string()
3250
+ var XvpWithdrawCancelOutputSchema = z30.object({
3251
+ transactionHash: z30.string()
3257
3252
  });
3258
3253
 
3259
3254
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/mutations/withdraw-expired/xvp.withdraw-expired.schema.ts
3260
- import { z as z32 } from "zod";
3255
+ import { z as z31 } from "zod";
3261
3256
  var XvpWithdrawExpiredInputSchema = XvpSettlementMutationInputSchema;
3262
- var XvpWithdrawExpiredOutputSchema = z32.object({
3263
- transactionHash: z32.string()
3257
+ var XvpWithdrawExpiredOutputSchema = z31.object({
3258
+ transactionHash: z31.string()
3264
3259
  });
3265
3260
 
3266
3261
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/xvp.decrypt.schema.ts
3267
- import { z as z33 } from "zod";
3262
+ import { z as z32 } from "zod";
3268
3263
  var XvpDecryptInputSchema = XvpSettlementMutationInputSchema;
3269
- var XvpDecryptOutputSchema = z33.object({
3270
- secret: z33.string().meta({
3264
+ var XvpDecryptOutputSchema = z32.object({
3265
+ secret: z32.string().meta({
3271
3266
  description: "Decrypted HTLC secret in hex format",
3272
3267
  examples: ["0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"]
3273
3268
  }),
3274
- hashlock: z33.string().meta({
3269
+ hashlock: z32.string().meta({
3275
3270
  description: "Keccak256 hashlock of the decrypted secret",
3276
3271
  examples: ["0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12"]
3277
3272
  })
3278
3273
  });
3279
3274
 
3280
3275
  // ../../packages/core/validation/src/account.ts
3281
- import { z as z34 } from "zod";
3282
- var AccountSchema = z34.object({
3276
+ import { z as z33 } from "zod";
3277
+ var AccountSchema = z33.object({
3283
3278
  id: ethereumAddress,
3284
- isContract: z34.boolean().meta({ description: "Whether this address is a smart contract (true) or EOA (false)", examples: [true, false] })
3279
+ isContract: z33.boolean().meta({ description: "Whether this address is a smart contract (true) or EOA (false)", examples: [true, false] })
3285
3280
  });
3286
3281
  var account = () => AccountSchema;
3287
- var accountArray = () => z34.array(account()).meta({
3282
+ var accountArray = () => z33.array(account()).meta({
3288
3283
  description: "Array of Account entities",
3289
3284
  examples: [[{ id: "0x71C7656EC7ab88b098defB751B7401B5f6d8976F", isContract: false }]]
3290
3285
  });
3291
3286
 
3292
3287
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/xvp.list.schema.ts
3293
- import { z as z35 } from "zod";
3294
- var XvpSettlementTypeSchema = z35.enum(["LOCAL", "HTLC"]);
3295
- var XvpSettlementStatusSchema = z35.enum([
3288
+ import { z as z34 } from "zod";
3289
+ var XvpSettlementTypeSchema = z34.enum(["LOCAL", "HTLC"]);
3290
+ var XvpSettlementStatusSchema = z34.enum([
3296
3291
  "EXECUTED",
3297
3292
  "CANCELLED",
3298
3293
  "EXPIRED",
@@ -3300,58 +3295,58 @@ var XvpSettlementStatusSchema = z35.enum([
3300
3295
  "WAITING_SECRET",
3301
3296
  "PENDING"
3302
3297
  ]);
3303
- var XvpSettlementWarningSchema = z35.enum([
3298
+ var XvpSettlementWarningSchema = z34.enum([
3304
3299
  "CANCEL_PROPOSED",
3305
3300
  "EXPIRY_APPROACHING",
3306
3301
  "WAITING_SECRET_DELAY",
3307
3302
  "WITHDRAW_EXPIRED"
3308
3303
  ]);
3309
- var XvpUserParticipationRoleSchema = z35.enum(["SENDER", "RECIPIENT", "BOTH"]);
3310
- var XvpSettlementGraphItemSchema = z35.object({
3304
+ var XvpUserParticipationRoleSchema = z34.enum(["SENDER", "RECIPIENT", "BOTH"]);
3305
+ var XvpSettlementGraphItemSchema = z34.object({
3311
3306
  id: ethereumAddress,
3312
- name: z35.string(),
3313
- hasExternalFlows: z35.boolean(),
3307
+ name: z34.string(),
3308
+ hasExternalFlows: z34.boolean(),
3314
3309
  cutoffDate: timestamp(),
3315
3310
  createdAt: timestamp(),
3316
3311
  createdBy: account(),
3317
- secretRevealTx: z35.string().nullable().optional(),
3318
- executed: z35.boolean(),
3319
- cancelled: z35.boolean(),
3320
- withdrawn: z35.boolean(),
3312
+ secretRevealTx: z34.string().nullable().optional(),
3313
+ executed: z34.boolean(),
3314
+ cancelled: z34.boolean(),
3315
+ withdrawn: z34.boolean(),
3321
3316
  allApprovedAt: timestamp().nullable(),
3322
- approvalsCount: z35.coerce.number().int().nonnegative(),
3323
- approvals: z35.array(z35.object({
3324
- id: z35.string()
3317
+ approvalsCount: z34.coerce.number().int().nonnegative(),
3318
+ approvals: z34.array(z34.object({
3319
+ id: z34.string()
3325
3320
  })).optional(),
3326
- cancelVotesCount: z35.coerce.number().int().nonnegative(),
3327
- localSendersCount: z35.coerce.number().int().nonnegative(),
3328
- localParticipantsCount: z35.coerce.number().int().nonnegative()
3321
+ cancelVotesCount: z34.coerce.number().int().nonnegative(),
3322
+ localSendersCount: z34.coerce.number().int().nonnegative(),
3323
+ localParticipantsCount: z34.coerce.number().int().nonnegative()
3329
3324
  });
3330
3325
  var XvpSettlementListItemSchema = XvpSettlementGraphItemSchema.extend({
3331
- userApproved: z35.boolean()
3326
+ userApproved: z34.boolean()
3332
3327
  });
3333
- var XvpSettlementListSchema = z35.array(XvpSettlementListItemSchema);
3334
- var XvpSettlementOrderBySchema = z35.enum(["createdAt", "cutoffDate", "name"]);
3328
+ var XvpSettlementListSchema = z34.array(XvpSettlementListItemSchema);
3329
+ var XvpSettlementOrderBySchema = z34.enum(["createdAt", "cutoffDate", "name"]);
3335
3330
  var XvpSettlementListInputSchema = PaginatedListSchema.extend({
3336
3331
  participant: ethereumAddress.optional(),
3337
3332
  systemAddon: ethereumAddress.optional(),
3338
3333
  orderBy: XvpSettlementOrderBySchema.default("createdAt"),
3339
- orderDirection: z35.enum(["asc", "desc"]).default("desc")
3334
+ orderDirection: z34.enum(["asc", "desc"]).default("desc")
3340
3335
  });
3341
- var XvpSettlementListResponseSchema = z35.object({
3336
+ var XvpSettlementListResponseSchema = z34.object({
3342
3337
  xvPSettlements: XvpSettlementListSchema,
3343
- total: z35.number().int().nonnegative()
3338
+ total: z34.number().int().nonnegative()
3344
3339
  });
3345
3340
 
3346
3341
  // ../../packages/core/validation/src/asset-symbol.ts
3347
- import { z as z36 } from "zod";
3348
- var AssetSymbolSchema = z36.string().min(1, "Asset symbol is required").max(24, "Asset symbol must not exceed 24 characters").regex(/^[A-Z0-9]+$/, "Asset symbol must contain only uppercase letters (A-Z) and numbers (0-9)").meta({ description: "Trading symbol for the asset", examples: ["ETH", "BTC", "USDC", "AAPL"] });
3342
+ import { z as z35 } from "zod";
3343
+ var AssetSymbolSchema = z35.string().min(1, "Asset symbol is required").max(24, "Asset symbol must not exceed 24 characters").regex(/^[A-Z0-9]+$/, "Asset symbol must contain only uppercase letters (A-Z) and numbers (0-9)").meta({ description: "Trading symbol for the asset", examples: ["ETH", "BTC", "USDC", "AAPL"] });
3349
3344
  var assetSymbol = () => AssetSymbolSchema;
3350
3345
 
3351
3346
  // ../../packages/core/validation/src/bigint.ts
3352
3347
  import { ceil, toString as dnumToString, floor, from as from3, isDnum as isDnum3 } from "dnum";
3353
- import { z as z37 } from "zod";
3354
- var apiBigInt = z37.preprocess((value2, ctx) => {
3348
+ import { z as z36 } from "zod";
3349
+ var apiBigInt = z36.preprocess((value2, ctx) => {
3355
3350
  if (typeof value2 === "bigint") {
3356
3351
  return value2;
3357
3352
  }
@@ -3360,7 +3355,7 @@ var apiBigInt = z37.preprocess((value2, ctx) => {
3360
3355
  code: "custom",
3361
3356
  message: "Invalid BigInt format: multiple decimal points"
3362
3357
  });
3363
- return z37.NEVER;
3358
+ return z36.NEVER;
3364
3359
  }
3365
3360
  const isDnumValue = isDnum3(value2);
3366
3361
  if (Array.isArray(value2) && (value2.length !== 2 || !isDnumValue)) {
@@ -3368,7 +3363,7 @@ var apiBigInt = z37.preprocess((value2, ctx) => {
3368
3363
  code: "custom",
3369
3364
  message: "Invalid BigInt format: array (not a dnum)"
3370
3365
  });
3371
- return z37.NEVER;
3366
+ return z36.NEVER;
3372
3367
  }
3373
3368
  try {
3374
3369
  const dnum = from3(value2);
@@ -3377,60 +3372,60 @@ var apiBigInt = z37.preprocess((value2, ctx) => {
3377
3372
  } catch {
3378
3373
  return value2;
3379
3374
  }
3380
- }, z37.coerce.bigint());
3375
+ }, z36.coerce.bigint());
3381
3376
 
3382
3377
  // ../../packages/dalp/api-contract/src/routes/addons/xvp/routes/xvp.read.schema.ts
3383
- import { z as z38 } from "zod";
3384
- var XvpSettlementFlowReadSchema = z38.object({
3385
- id: z38.string(),
3386
- isExternal: z38.boolean(),
3387
- externalChainId: z38.coerce.number(),
3378
+ import { z as z37 } from "zod";
3379
+ var XvpSettlementFlowReadSchema = z37.object({
3380
+ id: z37.string(),
3381
+ isExternal: z37.boolean(),
3382
+ externalChainId: z37.coerce.number(),
3388
3383
  amount: bigDecimal().meta({ description: "Flow amount with arbitrary precision", examples: ["1000.50"] }),
3389
3384
  amountExact: apiBigInt,
3390
- from: z38.object({ id: ethereumAddress }),
3391
- to: z38.object({ id: ethereumAddress }),
3392
- asset: z38.object({
3385
+ from: z37.object({ id: ethereumAddress }),
3386
+ to: z37.object({ id: ethereumAddress }),
3387
+ asset: z37.object({
3393
3388
  id: ethereumAddress,
3394
3389
  decimals: decimals(),
3395
3390
  symbol: assetSymbol()
3396
3391
  }).nullable(),
3397
- assetReference: z38.object({
3398
- id: z38.string(),
3392
+ assetReference: z37.object({
3393
+ id: z37.string(),
3399
3394
  address: ethereumAddress,
3400
3395
  decimals: decimals()
3401
3396
  }).nullable()
3402
3397
  });
3403
- var XvpSettlementApprovalSchema = z38.object({
3404
- id: z38.string(),
3405
- approved: z38.boolean(),
3398
+ var XvpSettlementApprovalSchema = z37.object({
3399
+ id: z37.string(),
3400
+ approved: z37.boolean(),
3406
3401
  timestamp: timestamp().nullable(),
3407
- account: z38.object({ id: ethereumAddress })
3402
+ account: z37.object({ id: ethereumAddress })
3408
3403
  });
3409
- var XvpSettlementCancelVoteSchema = z38.object({
3410
- id: z38.string(),
3404
+ var XvpSettlementCancelVoteSchema = z37.object({
3405
+ id: z37.string(),
3411
3406
  votedAt: timestamp().nullable(),
3412
- active: z38.boolean(),
3413
- account: z38.object({ id: ethereumAddress })
3407
+ active: z37.boolean(),
3408
+ account: z37.object({ id: ethereumAddress })
3414
3409
  });
3415
3410
  var XvpSettlementReadGraphSchema = XvpSettlementGraphItemSchema.extend({
3416
- secret: z38.string().meta({ description: "Secret from GraphQL", examples: ["0x1234..."] }).nullable().optional(),
3417
- secretRevealed: z38.boolean(),
3411
+ secret: z37.string().meta({ description: "Secret from GraphQL", examples: ["0x1234..."] }).nullable().optional(),
3412
+ secretRevealed: z37.boolean(),
3418
3413
  secretRevealedAt: timestamp().nullable(),
3419
- secretRevealTx: z38.string().nullable(),
3420
- secretRevealedBy: z38.object({ id: ethereumAddress }).nullable(),
3414
+ secretRevealTx: z37.string().nullable(),
3415
+ secretRevealedBy: z37.object({ id: ethereumAddress }).nullable(),
3421
3416
  hashlock: HashlockSchema.nullable().optional(),
3422
- autoExecute: z38.boolean(),
3423
- approvals: z38.array(XvpSettlementApprovalSchema),
3424
- cancelVotes: z38.array(XvpSettlementCancelVoteSchema),
3425
- flows: z38.array(XvpSettlementFlowReadSchema),
3426
- systemAddon: z38.object({ id: ethereumAddress })
3417
+ autoExecute: z37.boolean(),
3418
+ approvals: z37.array(XvpSettlementApprovalSchema),
3419
+ cancelVotes: z37.array(XvpSettlementCancelVoteSchema),
3420
+ flows: z37.array(XvpSettlementFlowReadSchema),
3421
+ systemAddon: z37.object({ id: ethereumAddress })
3427
3422
  });
3428
3423
  var XvpSettlementReadSchema = XvpSettlementReadGraphSchema.extend({
3429
- hasStoredSecret: z38.boolean().meta({
3424
+ hasStoredSecret: z37.boolean().meta({
3430
3425
  description: "Whether an encrypted secret is stored in the database for this settlement",
3431
3426
  examples: [true, false]
3432
3427
  }),
3433
- userApproved: z38.boolean().meta({
3428
+ userApproved: z37.boolean().meta({
3434
3429
  description: "Whether the current user has approved this settlement",
3435
3430
  examples: [true, false]
3436
3431
  })
@@ -3517,52 +3512,52 @@ var execute = v1Contract.route({
3517
3512
  }).input(XvpExecuteInputSchema).output(XvpExecuteOutputSchema);
3518
3513
 
3519
3514
  // ../../packages/dalp/api-contract/src/routes/admin/routes/organizations.list.schema.ts
3520
- import { z as z39 } from "zod";
3521
- var OrganizationListItemSchema = z39.object({
3522
- id: z39.string().meta({ description: "Organization ID", examples: ["org_123abc"] }),
3523
- name: z39.string().meta({ description: "Organization name", examples: ["Acme Corp"] }),
3524
- slug: z39.string().meta({
3515
+ import { z as z38 } from "zod";
3516
+ var OrganizationListItemSchema = z38.object({
3517
+ id: z38.string().meta({ description: "Organization ID", examples: ["org_123abc"] }),
3518
+ name: z38.string().meta({ description: "Organization name", examples: ["Acme Corp"] }),
3519
+ slug: z38.string().meta({
3525
3520
  description: "Organization slug for URLs",
3526
3521
  examples: ["acme-corp"]
3527
3522
  }),
3528
- logo: z39.string().nullable().meta({
3523
+ logo: z38.string().nullable().meta({
3529
3524
  description: "URL to organization logo",
3530
3525
  examples: ["https://example.com/logo.png"]
3531
3526
  }),
3532
- createdAt: z39.date().meta({ description: "When the organization was created" }),
3533
- ownerCount: z39.number().int().nonnegative().meta({
3527
+ createdAt: z38.date().meta({ description: "When the organization was created" }),
3528
+ ownerCount: z38.number().int().nonnegative().meta({
3534
3529
  description: "Number of owners in the organization",
3535
3530
  examples: [2]
3536
3531
  }),
3537
- ownerEmails: z39.array(z39.string().email()).meta({
3532
+ ownerEmails: z38.array(z38.string().email()).meta({
3538
3533
  description: "Email addresses for all organization owners",
3539
3534
  examples: [["owner@company.com", "owner2@company.com"]]
3540
3535
  }),
3541
- memberCount: z39.number().int().nonnegative().meta({
3536
+ memberCount: z38.number().int().nonnegative().meta({
3542
3537
  description: "Total number of members (including owners)",
3543
3538
  examples: [10]
3544
3539
  }),
3545
- assetCount: z39.number().int().nonnegative().meta({
3540
+ assetCount: z38.number().int().nonnegative().meta({
3546
3541
  description: "Number of assets owned by the organization",
3547
3542
  examples: [5]
3548
3543
  })
3549
3544
  });
3550
3545
  var OrganizationListInputSchema = PaginatedListSchema.extend({
3551
3546
  orderBy: PaginatedListSchema.shape.orderBy.default("createdAt").describe("Field to order by (supports: name, slug, createdAt)"),
3552
- filters: z39.object({
3553
- search: z39.string().optional().meta({
3547
+ filters: z38.object({
3548
+ search: z38.string().optional().meta({
3554
3549
  description: "Search query for organization name or slug",
3555
3550
  examples: ["acme", "corp"]
3556
3551
  })
3557
3552
  }).optional()
3558
3553
  });
3559
- var OrganizationListOutputSchema = z39.object({
3560
- items: z39.array(OrganizationListItemSchema).meta({ description: "List of organizations" }),
3561
- total: z39.number().int().nonnegative().meta({
3554
+ var OrganizationListOutputSchema = z38.object({
3555
+ items: z38.array(OrganizationListItemSchema).meta({ description: "List of organizations" }),
3556
+ total: z38.number().int().nonnegative().meta({
3562
3557
  description: "Total count of organizations matching the query"
3563
3558
  }),
3564
- limit: z39.number().int().positive().optional().meta({ description: "Applied limit" }),
3565
- offset: z39.number().int().nonnegative().meta({ description: "Applied offset" })
3559
+ limit: z38.number().int().positive().optional().meta({ description: "Applied limit" }),
3560
+ offset: z38.number().int().nonnegative().meta({ description: "Applied offset" })
3566
3561
  });
3567
3562
 
3568
3563
  // ../../packages/dalp/api-contract/src/routes/admin/admin.contract.ts
@@ -3575,52 +3570,52 @@ var organizationsList = v1Contract.route({
3575
3570
  }).input(OrganizationListInputSchema).output(OrganizationListOutputSchema);
3576
3571
 
3577
3572
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.delete.schema.ts
3578
- import { z as z40 } from "zod";
3579
- var ContactsDeleteSchema = z40.object({
3580
- id: z40.uuid()
3573
+ import { z as z39 } from "zod";
3574
+ var ContactsDeleteSchema = z39.object({
3575
+ id: z39.uuid()
3581
3576
  });
3582
- var ContactsDeleteOutputSchema = z40.object({
3583
- success: z40.literal(true)
3577
+ var ContactsDeleteOutputSchema = z39.object({
3578
+ success: z39.literal(true)
3584
3579
  });
3585
3580
 
3586
3581
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.list.schema.ts
3587
- import { z as z42 } from "zod";
3582
+ import { z as z41 } from "zod";
3588
3583
 
3589
3584
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.record.schema.ts
3590
- import { z as z41 } from "zod";
3591
- var ContactSchema = z41.object({
3592
- id: z41.string(),
3593
- name: z41.string(),
3585
+ import { z as z40 } from "zod";
3586
+ var ContactSchema = z40.object({
3587
+ id: z40.string(),
3588
+ name: z40.string(),
3594
3589
  wallet: ethereumAddress,
3595
- createdAt: z41.date(),
3596
- updatedAt: z41.date()
3590
+ createdAt: z40.date(),
3591
+ updatedAt: z40.date()
3597
3592
  });
3598
3593
 
3599
3594
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.list.schema.ts
3600
3595
  var ContactsListInputSchema = PaginatedListSchema.extend({
3601
- orderBy: z42.enum(["createdAt", "updatedAt", "name", "wallet"]).default("createdAt"),
3602
- filters: z42.object({
3603
- search: z42.string().min(1).max(120).optional().meta({ description: "Case-insensitive match against name or wallet address", examples: ["alice", "0x71C7"] })
3596
+ orderBy: z41.enum(["createdAt", "updatedAt", "name", "wallet"]).default("createdAt"),
3597
+ filters: z41.object({
3598
+ search: z41.string().min(1).max(120).optional().meta({ description: "Case-insensitive match against name or wallet address", examples: ["alice", "0x71C7"] })
3604
3599
  }).optional()
3605
3600
  });
3606
- var ContactsListOutputSchema = z42.object({
3601
+ var ContactsListOutputSchema = z41.object({
3607
3602
  items: ContactSchema.array(),
3608
- total: z42.number(),
3609
- limit: z42.number().optional(),
3610
- offset: z42.number()
3603
+ total: z41.number(),
3604
+ limit: z41.number().optional(),
3605
+ offset: z41.number()
3611
3606
  });
3612
3607
 
3613
3608
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.read.schema.ts
3614
- import { z as z43 } from "zod";
3615
- var ContactsReadSchema = z43.object({
3616
- id: z43.string().uuid()
3609
+ import { z as z42 } from "zod";
3610
+ var ContactsReadSchema = z42.object({
3611
+ id: z42.string().uuid()
3617
3612
  });
3618
3613
 
3619
3614
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.search.schema.ts
3620
- import { z as z44 } from "zod";
3621
- var ContactsSearchSchema = z44.object({
3622
- query: z44.string().trim().min(1).max(120).meta({ description: "Case-insensitive search across contact name and wallet", examples: ["alice", "0x71C7"] }),
3623
- limit: z44.number().int().positive().max(50).default(10)
3615
+ import { z as z43 } from "zod";
3616
+ var ContactsSearchSchema = z43.object({
3617
+ query: z43.string().trim().min(1).max(120).meta({ description: "Case-insensitive search across contact name and wallet", examples: ["alice", "0x71C7"] }),
3618
+ limit: z43.number().int().positive().max(50).default(10)
3624
3619
  });
3625
3620
  var ContactSearchResultSchema = ContactSchema.pick({
3626
3621
  id: true,
@@ -3630,10 +3625,10 @@ var ContactSearchResultSchema = ContactSchema.pick({
3630
3625
  var ContactsSearchOutputSchema = ContactSearchResultSchema.array();
3631
3626
 
3632
3627
  // ../../packages/dalp/api-contract/src/routes/contacts/routes/contacts.upsert.schema.ts
3633
- import { z as z45 } from "zod";
3634
- var ContactsUpsertSchema = z45.object({
3635
- id: z45.uuid().optional(),
3636
- name: z45.string().trim().min(1, "Contact name cannot be empty").max(120).meta({ description: "Human readable label for the contact", examples: ["Alice", "Treasury Wallet"] }),
3628
+ import { z as z44 } from "zod";
3629
+ var ContactsUpsertSchema = z44.object({
3630
+ id: z44.uuid().optional(),
3631
+ name: z44.string().trim().min(1, "Contact name cannot be empty").max(120).meta({ description: "Human readable label for the contact", examples: ["Alice", "Treasury Wallet"] }),
3637
3632
  wallet: ethereumAddress
3638
3633
  });
3639
3634
 
@@ -3675,11 +3670,11 @@ var search = v1Contract.route({
3675
3670
  }).input(ContactsSearchSchema).output(ContactsSearchOutputSchema);
3676
3671
 
3677
3672
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/exchange-rates.contract.ts
3678
- import { z as z54 } from "zod";
3673
+ import { z as z53 } from "zod";
3679
3674
 
3680
3675
  // ../../packages/core/validation/src/fiat-currency.ts
3681
3676
  import * as cc from "currency-codes";
3682
- import { z as z46 } from "zod";
3677
+ import { z as z45 } from "zod";
3683
3678
  function getValidFiatCurrencies() {
3684
3679
  return cc.codes().filter((code2) => {
3685
3680
  const currency = cc.code(code2);
@@ -3721,104 +3716,104 @@ var fiatCurrencyMetadata = Object.fromEntries(fiatCurrencies.map((code2) => {
3721
3716
  const metadata = getCurrencyMetadata(code2);
3722
3717
  return [code2, metadata ?? { name: code2, decimals: 2 }];
3723
3718
  }));
3724
- var fiatCurrency = () => z46.enum(fiatCurrencies).meta({ description: "Fiat currency code (ISO 4217)", examples: ["USD", "EUR", "GBP", "JPY"] });
3719
+ var fiatCurrency = () => z45.enum(fiatCurrencies).meta({ description: "Fiat currency code (ISO 4217)", examples: ["USD", "EUR", "GBP", "JPY"] });
3725
3720
 
3726
3721
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.delete.schema.ts
3727
- import { z as z47 } from "zod";
3728
- var ExchangeRatesDeleteSchema = z47.object({
3722
+ import { z as z46 } from "zod";
3723
+ var ExchangeRatesDeleteSchema = z46.object({
3729
3724
  baseCurrency: fiatCurrency(),
3730
3725
  quoteCurrency: fiatCurrency()
3731
3726
  });
3732
3727
 
3733
3728
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.history.schema.ts
3734
- import { z as z48 } from "zod";
3735
- var ExchangeRatesHistorySchema = z48.object({
3729
+ import { z as z47 } from "zod";
3730
+ var ExchangeRatesHistorySchema = z47.object({
3736
3731
  baseCurrency: fiatCurrency(),
3737
3732
  quoteCurrency: fiatCurrency(),
3738
- startDate: z48.date().optional(),
3739
- endDate: z48.date().optional(),
3740
- limit: z48.number().int().positive().max(1000).default(100)
3733
+ startDate: z47.date().optional(),
3734
+ endDate: z47.date().optional(),
3735
+ limit: z47.number().int().positive().max(1000).default(100)
3741
3736
  });
3742
3737
 
3743
3738
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.list.schema.ts
3744
- import { z as z49 } from "zod";
3739
+ import { z as z48 } from "zod";
3745
3740
  var ExchangeRatesListSchema = PaginatedListSchema.extend({
3746
- baseCurrencies: z49.array(fiatCurrency()).optional(),
3747
- quoteCurrencies: z49.array(fiatCurrency()).optional()
3741
+ baseCurrencies: z48.array(fiatCurrency()).optional(),
3742
+ quoteCurrencies: z48.array(fiatCurrency()).optional()
3748
3743
  });
3749
- var ExchangeRatesListOutputSchema = z49.object({
3750
- items: z49.array(z49.object({
3744
+ var ExchangeRatesListOutputSchema = z48.object({
3745
+ items: z48.array(z48.object({
3751
3746
  baseCurrency: fiatCurrency(),
3752
3747
  quoteCurrency: fiatCurrency(),
3753
- rate: z49.number().nullable(),
3754
- effectiveAt: z49.date().nullable(),
3755
- updatedAt: z49.date().nullable(),
3748
+ rate: z48.number().nullable(),
3749
+ effectiveAt: z48.date().nullable(),
3750
+ updatedAt: z48.date().nullable(),
3756
3751
  feedAddress: ethereumAddress.nullable()
3757
3752
  })),
3758
- totalCount: z49.number(),
3759
- offset: z49.number(),
3760
- limit: z49.number().optional()
3753
+ totalCount: z48.number(),
3754
+ offset: z48.number(),
3755
+ limit: z48.number().optional()
3761
3756
  });
3762
3757
 
3763
3758
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.read.schema.ts
3764
- import { z as z50 } from "zod";
3765
- var ExchangeRatesReadSchema = z50.object({
3759
+ import { z as z49 } from "zod";
3760
+ var ExchangeRatesReadSchema = z49.object({
3766
3761
  baseCurrency: fiatCurrency(),
3767
3762
  quoteCurrency: fiatCurrency()
3768
3763
  });
3769
- var ExchangeRatesReadOutputSchema = z50.object({
3764
+ var ExchangeRatesReadOutputSchema = z49.object({
3770
3765
  baseCurrency: fiatCurrency(),
3771
3766
  quoteCurrency: fiatCurrency(),
3772
- rate: z50.number().positive(),
3773
- effectiveAt: z50.date()
3767
+ rate: z49.number().positive(),
3768
+ effectiveAt: z49.date()
3774
3769
  }).nullable();
3775
3770
 
3776
3771
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.sync.schema.ts
3777
- import { z as z52 } from "zod";
3772
+ import { z as z51 } from "zod";
3778
3773
 
3779
3774
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/schemas.ts
3780
- import { z as z51 } from "zod";
3775
+ import { z as z50 } from "zod";
3781
3776
  var exchangeRateProviders = ["er-api", "ECB", "manual"];
3782
- var ExchangeRateProviderSchema = z51.enum(exchangeRateProviders).meta({ description: "Exchange rate data provider", examples: ["er-api", "ECB", "manual"] });
3783
- var exchangeRateApiResponseSchema = z51.object({
3784
- result: z51.literal("success"),
3785
- provider: z51.string(),
3786
- documentation: z51.string(),
3787
- terms_of_use: z51.string(),
3788
- time_last_update_unix: z51.number(),
3789
- time_last_update_utc: z51.string(),
3790
- time_next_update_unix: z51.number(),
3791
- time_next_update_utc: z51.string(),
3792
- time_eol_unix: z51.number(),
3793
- base_code: z51.string(),
3794
- rates: z51.record(z51.string(), z51.number())
3777
+ var ExchangeRateProviderSchema = z50.enum(exchangeRateProviders).meta({ description: "Exchange rate data provider", examples: ["er-api", "ECB", "manual"] });
3778
+ var exchangeRateApiResponseSchema = z50.object({
3779
+ result: z50.literal("success"),
3780
+ provider: z50.string(),
3781
+ documentation: z50.string(),
3782
+ terms_of_use: z50.string(),
3783
+ time_last_update_unix: z50.number(),
3784
+ time_last_update_utc: z50.string(),
3785
+ time_next_update_unix: z50.number(),
3786
+ time_next_update_utc: z50.string(),
3787
+ time_eol_unix: z50.number(),
3788
+ base_code: z50.string(),
3789
+ rates: z50.record(z50.string(), z50.number())
3795
3790
  });
3796
3791
 
3797
3792
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.sync.schema.ts
3798
- var ExchangeRatesSyncSchema = z52.object({
3799
- force: z52.boolean().default(false)
3793
+ var ExchangeRatesSyncSchema = z51.object({
3794
+ force: z51.boolean().default(false)
3800
3795
  });
3801
- var ExchangeRatesSyncInternalSchema = z52.object({
3796
+ var ExchangeRatesSyncInternalSchema = z51.object({
3802
3797
  provider: ExchangeRateProviderSchema.default("er-api"),
3803
3798
  baseCurrency: fiatCurrency().default("USD"),
3804
- force: z52.boolean().default(false)
3799
+ force: z51.boolean().default(false)
3805
3800
  });
3806
3801
 
3807
3802
  // ../../packages/dalp/api-contract/src/routes/exchange-rates/routes/exchange-rates.update.schema.ts
3808
- import { z as z53 } from "zod";
3809
- var ExchangeRatesUpdateSchema = z53.object({
3803
+ import { z as z52 } from "zod";
3804
+ var ExchangeRatesUpdateSchema = z52.object({
3810
3805
  baseCurrency: fiatCurrency(),
3811
3806
  quoteCurrency: fiatCurrency(),
3812
- rate: z53.number().positive("Rate must be positive"),
3813
- effectiveAt: z53.date().optional()
3807
+ rate: z52.number().positive("Rate must be positive"),
3808
+ effectiveAt: z52.date().optional()
3814
3809
  });
3815
- var ExchangeRatesUpdateOutputSchema = z53.object({
3816
- success: z53.boolean(),
3817
- rate: z53.object({
3810
+ var ExchangeRatesUpdateOutputSchema = z52.object({
3811
+ success: z52.boolean(),
3812
+ rate: z52.object({
3818
3813
  baseCurrency: fiatCurrency(),
3819
3814
  quoteCurrency: fiatCurrency(),
3820
- rate: z53.number().positive(),
3821
- effectiveAt: z53.date()
3815
+ rate: z52.number().positive(),
3816
+ effectiveAt: z52.date()
3822
3817
  })
3823
3818
  });
3824
3819
 
@@ -3829,11 +3824,11 @@ var read3 = v1Contract.route({
3829
3824
  description: "Get the current exchange rate between two currencies",
3830
3825
  successDescription: "Exchange rate retrieved successfully",
3831
3826
  tags: ["exchange-rates"]
3832
- }).input(ExchangeRatesReadSchema).output(z54.object({
3833
- baseCurrency: z54.string(),
3834
- quoteCurrency: z54.string(),
3835
- rate: z54.number(),
3836
- effectiveAt: z54.date()
3827
+ }).input(ExchangeRatesReadSchema).output(z53.object({
3828
+ baseCurrency: z53.string(),
3829
+ quoteCurrency: z53.string(),
3830
+ rate: z53.number(),
3831
+ effectiveAt: z53.date()
3837
3832
  }).nullable());
3838
3833
  var list4 = v1Contract.route({
3839
3834
  method: "GET",
@@ -3848,13 +3843,13 @@ var update = v1Contract.route({
3848
3843
  description: "Manually update an exchange rate",
3849
3844
  successDescription: "Exchange rate updated successfully",
3850
3845
  tags: ["exchange-rates"]
3851
- }).input(ExchangeRatesUpdateSchema).output(z54.object({
3852
- success: z54.boolean(),
3853
- rate: z54.object({
3854
- baseCurrency: z54.string(),
3855
- quoteCurrency: z54.string(),
3856
- rate: z54.number(),
3857
- effectiveAt: z54.date()
3846
+ }).input(ExchangeRatesUpdateSchema).output(z53.object({
3847
+ success: z53.boolean(),
3848
+ rate: z53.object({
3849
+ baseCurrency: z53.string(),
3850
+ quoteCurrency: z53.string(),
3851
+ rate: z53.number(),
3852
+ effectiveAt: z53.date()
3858
3853
  })
3859
3854
  }));
3860
3855
  var del2 = v1Contract.route({
@@ -3863,17 +3858,17 @@ var del2 = v1Contract.route({
3863
3858
  description: "Delete a manual exchange rate",
3864
3859
  successDescription: "Exchange rate deleted successfully",
3865
3860
  tags: ["exchange-rates"]
3866
- }).input(ExchangeRatesDeleteSchema).output(z54.object({ success: z54.boolean() }));
3861
+ }).input(ExchangeRatesDeleteSchema).output(z53.object({ success: z53.boolean() }));
3867
3862
  var sync = v1Contract.route({
3868
3863
  method: "POST",
3869
3864
  path: "/exchange-rates/sync",
3870
3865
  description: "Synchronize exchange rates with external providers",
3871
3866
  successDescription: "Exchange rates synchronized successfully",
3872
3867
  tags: ["exchange-rates"]
3873
- }).input(ExchangeRatesSyncSchema).output(z54.object({
3874
- success: z54.boolean(),
3875
- ratesUpdated: z54.number(),
3876
- syncedAt: z54.date()
3868
+ }).input(ExchangeRatesSyncSchema).output(z53.object({
3869
+ success: z53.boolean(),
3870
+ ratesUpdated: z53.number(),
3871
+ syncedAt: z53.date()
3877
3872
  }));
3878
3873
  var history = v1Contract.route({
3879
3874
  method: "GET",
@@ -3881,34 +3876,34 @@ var history = v1Contract.route({
3881
3876
  description: "Get historical exchange rates for a currency pair",
3882
3877
  successDescription: "Historical rates retrieved successfully",
3883
3878
  tags: ["exchange-rates"]
3884
- }).input(ExchangeRatesHistorySchema).output(z54.array(z54.object({
3885
- baseCurrency: z54.string(),
3886
- quoteCurrency: z54.string(),
3887
- rate: z54.number(),
3888
- effectiveAt: z54.date()
3879
+ }).input(ExchangeRatesHistorySchema).output(z53.array(z53.object({
3880
+ baseCurrency: z53.string(),
3881
+ quoteCurrency: z53.string(),
3882
+ rate: z53.number(),
3883
+ effectiveAt: z53.date()
3889
3884
  })));
3890
3885
 
3891
3886
  // ../../packages/dalp/api-contract/src/routes/external-token/routes/external-token.list.schema.ts
3892
- import { z as z55 } from "zod";
3893
- var ExternalTokenSchema = z55.object({
3887
+ import { z as z54 } from "zod";
3888
+ var ExternalTokenSchema = z54.object({
3894
3889
  id: ethereumAddress.meta({
3895
3890
  description: "The token contract address",
3896
3891
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
3897
3892
  }),
3898
- name: z55.string().meta({ description: "The name of the token", examples: ["USD Coin", "Wrapped Ether"] }),
3899
- symbol: z55.string().meta({ description: "The symbol of the token", examples: ["USDC", "WETH"] }),
3893
+ name: z54.string().meta({ description: "The name of the token", examples: ["USD Coin", "Wrapped Ether"] }),
3894
+ symbol: z54.string().meta({ description: "The symbol of the token", examples: ["USDC", "WETH"] }),
3900
3895
  decimals: decimals(),
3901
3896
  totalSupply: bigDecimal().nullable().meta({ description: "The total supply of the token (scaled by decimals)", examples: ["1000000000.00"] }),
3902
3897
  totalSupplyExact: apiBigInt.optional().meta({
3903
3898
  description: "The total supply of the token (raw on-chain uint256)",
3904
3899
  examples: ["1000000000000000000000"]
3905
3900
  }),
3906
- type: z55.string().meta({ description: "The type assigned to the token", examples: ["stablecoin", "bond", "equity"] }),
3907
- pausable: z55.object({
3908
- paused: z55.boolean().meta({ description: "Whether the token is paused", examples: [true, false] })
3901
+ type: z54.string().meta({ description: "The type assigned to the token", examples: ["stablecoin", "bond", "equity"] }),
3902
+ pausable: z54.object({
3903
+ paused: z54.boolean().meta({ description: "Whether the token is paused", examples: [true, false] })
3909
3904
  }).nullable().optional(),
3910
3905
  externalRegisteredAt: timestamp().nullable().meta({ description: "When the token was registered as external", examples: ["2024-01-15T10:30:00.000Z"] }),
3911
- externalRegisteredBy: z55.object({
3906
+ externalRegisteredBy: z54.object({
3912
3907
  id: ethereumAddress.meta({
3913
3908
  description: "Address that registered the token",
3914
3909
  examples: ["0x2546BcD3c84621e976D8185a91A922aE77ECEc30"]
@@ -3917,18 +3912,18 @@ var ExternalTokenSchema = z55.object({
3917
3912
  description: "Account that registered the token",
3918
3913
  examples: [{ id: "0x2546BcD3c84621e976D8185a91A922aE77ECEc30" }]
3919
3914
  }),
3920
- externalDetectedInterfaces: z55.array(z55.string()).nullable().meta({ description: "Detected interfaces on the token", examples: [["ERC20", "Pausable"]] }),
3921
- implementsERC3643: z55.boolean().meta({ description: "Whether the token implements ERC3643", examples: [true, false] }),
3922
- implementsSMART: z55.boolean().meta({ description: "Whether the token implements SMART", examples: [true, false] })
3915
+ externalDetectedInterfaces: z54.array(z54.string()).nullable().meta({ description: "Detected interfaces on the token", examples: [["ERC20", "Pausable"]] }),
3916
+ implementsERC3643: z54.boolean().meta({ description: "Whether the token implements ERC3643", examples: [true, false] }),
3917
+ implementsSMART: z54.boolean().meta({ description: "Whether the token implements SMART", examples: [true, false] })
3923
3918
  });
3924
- var ExternalTokenListSchema = z55.array(ExternalTokenSchema);
3925
- var ExternalTokenListInputSchema = z55.object({
3926
- orderBy: z55.string().optional().meta({ description: "Field to order by", examples: ["name", "symbol", "type"] }),
3927
- orderDirection: z55.enum(["asc", "desc"]).optional().meta({ description: "Order direction", examples: ["asc", "desc"] })
3919
+ var ExternalTokenListSchema = z54.array(ExternalTokenSchema);
3920
+ var ExternalTokenListInputSchema = z54.object({
3921
+ orderBy: z54.string().optional().meta({ description: "Field to order by", examples: ["name", "symbol", "type"] }),
3922
+ orderDirection: z54.enum(["asc", "desc"]).optional().meta({ description: "Order direction", examples: ["asc", "desc"] })
3928
3923
  });
3929
- var ExternalTokenListResponseSchema = z55.object({
3924
+ var ExternalTokenListResponseSchema = z54.object({
3930
3925
  tokens: ExternalTokenListSchema,
3931
- totalCount: z55.number().int().nonnegative()
3926
+ totalCount: z54.number().int().nonnegative()
3932
3927
  });
3933
3928
 
3934
3929
  // ../../packages/dalp/api-contract/src/routes/external-token/routes/external-token.list.contract.ts
@@ -3941,20 +3936,20 @@ var externalTokenListContract = v1Contract.route({
3941
3936
  }).input(ExternalTokenListInputSchema).output(ExternalTokenListResponseSchema);
3942
3937
 
3943
3938
  // ../../packages/dalp/api-contract/src/routes/external-token/routes/mutations/external-token.register.schema.ts
3944
- import { z as z56 } from "zod";
3945
- var ExternalTokenRegisterInputSchema = z56.object({
3939
+ import { z as z55 } from "zod";
3940
+ var ExternalTokenRegisterInputSchema = z55.object({
3946
3941
  tokenAddress: ethereumAddress.meta({
3947
3942
  description: "The external token contract address to register",
3948
3943
  examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
3949
3944
  }),
3950
- tokenType: z56.string().min(1, "Token type cannot be empty").meta({
3945
+ tokenType: z55.string().min(1, "Token type cannot be empty").meta({
3951
3946
  description: "The type to assign to the token",
3952
3947
  examples: ["bond", "equity", "stablecoin"]
3953
3948
  }),
3954
3949
  walletVerification: UserVerificationSchema.optional()
3955
3950
  });
3956
- var ExternalTokenRegisterOutputSchema = z56.object({
3957
- txHash: z56.string().meta({
3951
+ var ExternalTokenRegisterOutputSchema = z55.object({
3952
+ txHash: z55.string().meta({
3958
3953
  description: "The transaction hash",
3959
3954
  examples: ["0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12"]
3960
3955
  }),
@@ -3974,45 +3969,45 @@ var externalTokenRegisterContract = v1Contract.route({
3974
3969
  }).input(ExternalTokenRegisterInputSchema).output(ExternalTokenRegisterOutputSchema);
3975
3970
 
3976
3971
  // ../../packages/dalp/api-contract/src/routes/identity-recovery/routes/recovery.execute.schema.ts
3977
- import { z as z57 } from "zod";
3978
- var RecoveryExecuteInputSchema = z57.object({
3979
- userId: z57.string().min(1).meta({
3972
+ import { z as z56 } from "zod";
3973
+ var RecoveryExecuteInputSchema = z56.object({
3974
+ userId: z56.string().min(1).meta({
3980
3975
  description: "The internal database ID of the user to recover"
3981
3976
  }),
3982
3977
  walletVerification: UserVerificationSchema.optional().meta({
3983
3978
  description: "Wallet verification (PIN/2FA) for the admin executing the recovery"
3984
3979
  })
3985
3980
  });
3986
- var RecoveryExecuteOutputSchema = z57.object({
3987
- success: z57.boolean().meta({
3981
+ var RecoveryExecuteOutputSchema = z56.object({
3982
+ success: z56.boolean().meta({
3988
3983
  description: "Whether the workflow was submitted successfully"
3989
3984
  })
3990
3985
  });
3991
3986
 
3992
3987
  // ../../packages/core/validation/src/identity-status.ts
3993
- import { z as z58 } from "zod";
3988
+ import { z as z57 } from "zod";
3994
3989
  var identityStatuses = ["pending", "registered"];
3995
3990
  var theGraphIdentityStatuses = ["PENDING", "ACTIVE"];
3996
- var IdentityStatusSchema = z58.enum(identityStatuses).meta({ description: "On-chain identity registration status", examples: ["pending", "registered"] });
3991
+ var IdentityStatusSchema = z57.enum(identityStatuses).meta({ description: "On-chain identity registration status", examples: ["pending", "registered"] });
3997
3992
  var identityStatus = () => IdentityStatusSchema;
3998
- var TheGraphIdentityStatusSchema = z58.enum(theGraphIdentityStatuses).meta({ description: "TheGraph subgraph identity registration status", examples: ["PENDING", "ACTIVE"] });
3993
+ var TheGraphIdentityStatusSchema = z57.enum(theGraphIdentityStatuses).meta({ description: "TheGraph subgraph identity registration status", examples: ["PENDING", "ACTIVE"] });
3999
3994
  var theGraphIdentityStatus = () => TheGraphIdentityStatusSchema;
4000
3995
 
4001
3996
  // ../../packages/dalp/api-contract/src/routes/identity-recovery/routes/recovery.preview.schema.ts
4002
- import { z as z59 } from "zod";
4003
- var RecoveryPreviewInputSchema = z59.object({
4004
- userId: z59.string().min(1).meta({
3997
+ import { z as z58 } from "zod";
3998
+ var RecoveryPreviewInputSchema = z58.object({
3999
+ userId: z58.string().min(1).meta({
4005
4000
  description: "The internal database ID of the user to recover"
4006
4001
  })
4007
4002
  });
4008
- var TokenBalanceSchema = z59.object({
4003
+ var TokenBalanceSchema = z58.object({
4009
4004
  tokenAddress: ethereumAddress.meta({
4010
4005
  description: "The token contract address"
4011
4006
  }),
4012
- tokenName: z59.string().meta({
4007
+ tokenName: z58.string().meta({
4013
4008
  description: "The token name"
4014
4009
  }),
4015
- tokenSymbol: z59.string().meta({
4010
+ tokenSymbol: z58.string().meta({
4016
4011
  description: "The token symbol"
4017
4012
  }),
4018
4013
  balance: bigDecimal().meta({
@@ -4021,55 +4016,55 @@ var TokenBalanceSchema = z59.object({
4021
4016
  balanceExact: apiBigInt.optional().meta({
4022
4017
  description: "The token balance (raw on-chain uint256)"
4023
4018
  }),
4024
- decimals: z59.number().meta({
4019
+ decimals: z58.number().meta({
4025
4020
  description: "The token decimals"
4026
4021
  })
4027
4022
  });
4028
- var RecoveryPreviewOutputSchema = z59.object({
4029
- user: z59.object({
4030
- id: z59.string().meta({
4023
+ var RecoveryPreviewOutputSchema = z58.object({
4024
+ user: z58.object({
4025
+ id: z58.string().meta({
4031
4026
  description: "The internal database ID of the user"
4032
4027
  }),
4033
- email: z59.string().nullable().meta({
4028
+ email: z58.string().nullable().meta({
4034
4029
  description: "The user's email address"
4035
4030
  }),
4036
- name: z59.string().nullable().meta({
4031
+ name: z58.string().nullable().meta({
4037
4032
  description: "The user's display name"
4038
4033
  })
4039
4034
  }),
4040
4035
  lostWallet: ethereumAddress.meta({
4041
4036
  description: "The wallet address that has lost access"
4042
4037
  }),
4043
- identity: z59.object({
4038
+ identity: z58.object({
4044
4039
  id: ethereumAddress.nullable().meta({
4045
4040
  description: "The OnchainID contract address"
4046
4041
  }),
4047
4042
  status: identityStatus().nullable().meta({
4048
4043
  description: "The identity registration status (pending or registered)"
4049
4044
  }),
4050
- isMarkedAsLost: z59.boolean().meta({
4045
+ isMarkedAsLost: z58.boolean().meta({
4051
4046
  description: "Whether the wallet is already marked as lost"
4052
4047
  })
4053
4048
  }),
4054
- tokenBalances: z59.array(TokenBalanceSchema).meta({
4049
+ tokenBalances: z58.array(TokenBalanceSchema).meta({
4055
4050
  description: "Token balances that will need recovery"
4056
4051
  }),
4057
- canRecover: z59.boolean().meta({
4052
+ canRecover: z58.boolean().meta({
4058
4053
  description: "Whether recovery can proceed"
4059
4054
  }),
4060
- blockingReasons: z59.array(z59.string()).meta({
4055
+ blockingReasons: z58.array(z58.string()).meta({
4061
4056
  description: "Reasons why recovery cannot proceed (if canRecover is false)"
4062
4057
  })
4063
4058
  });
4064
4059
 
4065
4060
  // ../../packages/dalp/api-contract/src/routes/identity-recovery/routes/recovery.status.schema.ts
4066
- import { z as z60 } from "zod";
4067
- var RecoveryStatusInputSchema = z60.object({
4068
- userId: z60.string().min(1).meta({
4061
+ import { z as z59 } from "zod";
4062
+ var RecoveryStatusInputSchema = z59.object({
4063
+ userId: z59.string().min(1).meta({
4069
4064
  description: "The internal database ID of the user being recovered"
4070
4065
  })
4071
4066
  });
4072
- var RecoveryPhaseSchema = z60.enum([
4067
+ var RecoveryPhaseSchema = z59.enum([
4073
4068
  "creating-wallet",
4074
4069
  "deploying-identity",
4075
4070
  "recovering-identity",
@@ -4078,17 +4073,17 @@ var RecoveryPhaseSchema = z60.enum([
4078
4073
  "completed",
4079
4074
  "failed"
4080
4075
  ]);
4081
- var RecoveryStatusOutputSchema = z60.object({
4076
+ var RecoveryStatusOutputSchema = z59.object({
4082
4077
  phase: RecoveryPhaseSchema.meta({
4083
4078
  description: "The current phase of the recovery workflow"
4084
4079
  }),
4085
- tokensRecovered: z60.number().meta({
4080
+ tokensRecovered: z59.number().meta({
4086
4081
  description: "Number of tokens successfully recovered so far"
4087
4082
  }),
4088
- totalTokens: z60.number().meta({
4083
+ totalTokens: z59.number().meta({
4089
4084
  description: "Total number of tokens to recover"
4090
4085
  }),
4091
- error: z60.string().nullable().meta({
4086
+ error: z59.string().nullable().meta({
4092
4087
  description: "Error message if the workflow failed"
4093
4088
  }),
4094
4089
  newWallet: ethereumAddress.nullable().meta({
@@ -4131,6 +4126,18 @@ import { z as z71 } from "zod";
4131
4126
 
4132
4127
  // ../../packages/core/validation/src/access-control-roles.ts
4133
4128
  import { z as z61 } from "zod";
4129
+
4130
+ // ../../packages/core/validation/src/ethereum-hex.ts
4131
+ import { isHex as isHex2 } from "viem";
4132
+ import { z as z60 } from "zod";
4133
+ var ethereumHex = z60.string().meta({
4134
+ description: "A valid Ethereum hex string (starting with 0x)",
4135
+ examples: ["0x1234abcd", "0x00", "0xdeadbeef"]
4136
+ }).min(2, "Hex string must be at least 2 characters long (0x)").refine(isHex2, {
4137
+ message: "Invalid hex format - must start with '0x' followed by hexadecimal characters"
4138
+ }).transform((value2) => value2);
4139
+
4140
+ // ../../packages/core/validation/src/access-control-roles.ts
4134
4141
  var roles = [
4135
4142
  "addonModule",
4136
4143
  "addonRegistryModule",
@@ -23895,7 +23902,7 @@ var dalpSerializers = [
23895
23902
  // package.json
23896
23903
  var package_default = {
23897
23904
  name: "@settlemint/dalp-sdk",
23898
- version: "2.1.7-main.23619085876",
23905
+ version: "2.1.7-main.23633109637",
23899
23906
  private: false,
23900
23907
  description: "Fully typed SDK for the DALP tokenization platform API",
23901
23908
  homepage: "https://settlemint.com",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@settlemint/dalp-sdk",
3
- "version": "2.1.7-main.23619085876",
3
+ "version": "2.1.7-main.23633109637",
4
4
  "private": false,
5
5
  "description": "Fully typed SDK for the DALP tokenization platform API",
6
6
  "homepage": "https://settlemint.com",