@debridge-finance/borderless-validation-sdk 0.4.1 → 0.5.1

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 (160) hide show
  1. package/README.md +15 -0
  2. package/dist/cjs/helpers/solana-hook-instructions.js +66 -0
  3. package/dist/cjs/helpers/solana-hook-instructions.js.map +1 -0
  4. package/dist/cjs/helpers/solana-instruction.js +5 -1
  5. package/dist/cjs/helpers/solana-instruction.js.map +1 -1
  6. package/dist/cjs/helpers/solana-intent-id.js +11 -1
  7. package/dist/cjs/helpers/solana-intent-id.js.map +1 -1
  8. package/dist/cjs/helpers/solana-intent-instruction.js +106 -0
  9. package/dist/cjs/helpers/solana-intent-instruction.js.map +1 -0
  10. package/dist/cjs/types/enums.js +2 -8
  11. package/dist/cjs/types/enums.js.map +1 -1
  12. package/dist/cjs/types/response.js +12 -2
  13. package/dist/cjs/types/response.js.map +1 -1
  14. package/dist/cjs/types/validation.js +30 -0
  15. package/dist/cjs/types/validation.js.map +1 -1
  16. package/dist/cjs/validations/evm-required-actions.js +2 -0
  17. package/dist/cjs/validations/evm-required-actions.js.map +1 -1
  18. package/dist/cjs/validations/evm-sign712-shared.js +2 -5
  19. package/dist/cjs/validations/evm-sign712-shared.js.map +1 -1
  20. package/dist/cjs/validations/evm-transaction-scope.js +29 -0
  21. package/dist/cjs/validations/evm-transaction-scope.js.map +1 -0
  22. package/dist/cjs/validations/hooks-common.js +18 -15
  23. package/dist/cjs/validations/hooks-common.js.map +1 -1
  24. package/dist/cjs/validations/low-input-sweep-bundle.js +94 -0
  25. package/dist/cjs/validations/low-input-sweep-bundle.js.map +1 -0
  26. package/dist/cjs/validations/low-input-sweep-hook.js +204 -0
  27. package/dist/cjs/validations/low-input-sweep-hook.js.map +1 -0
  28. package/dist/cjs/validations/low-input-sweep.js +294 -0
  29. package/dist/cjs/validations/low-input-sweep.js.map +1 -0
  30. package/dist/cjs/validations/on-chain-intent-submission.js +16 -5
  31. package/dist/cjs/validations/on-chain-intent-submission.js.map +1 -1
  32. package/dist/cjs/validations/ptp.js +13 -15
  33. package/dist/cjs/validations/ptp.js.map +1 -1
  34. package/dist/cjs/validations/solana-embedded-intent.js +187 -0
  35. package/dist/cjs/validations/solana-embedded-intent.js.map +1 -0
  36. package/dist/cjs/validations/solana-hook.js +1 -1
  37. package/dist/cjs/validations/solana-hook.js.map +1 -1
  38. package/dist/cjs/validations/solana-intent-accounts.js +99 -0
  39. package/dist/cjs/validations/solana-intent-accounts.js.map +1 -0
  40. package/dist/cjs/validations/solana-low-input-sweep.js +251 -0
  41. package/dist/cjs/validations/solana-low-input-sweep.js.map +1 -0
  42. package/dist/cjs/validations/solana-required-actions.js +6 -2
  43. package/dist/cjs/validations/solana-required-actions.js.map +1 -1
  44. package/dist/cjs/validations/solana-transaction.js +25 -5
  45. package/dist/cjs/validations/solana-transaction.js.map +1 -1
  46. package/dist/cjs/validations/trade-grouping.js +23 -26
  47. package/dist/cjs/validations/trade-grouping.js.map +1 -1
  48. package/dist/cjs/validations/trade-matching.js +21 -13
  49. package/dist/cjs/validations/trade-matching.js.map +1 -1
  50. package/dist/cjs/validations/trades.js +33 -20
  51. package/dist/cjs/validations/trades.js.map +1 -1
  52. package/dist/cjs/validator.js +14 -5
  53. package/dist/cjs/validator.js.map +1 -1
  54. package/dist/cjs/whitelists/environment-config.js +45 -3
  55. package/dist/cjs/whitelists/environment-config.js.map +1 -1
  56. package/dist/cjs/whitelists/types.js.map +1 -1
  57. package/dist/esm/helpers/solana-hook-instructions.js +63 -0
  58. package/dist/esm/helpers/solana-hook-instructions.js.map +1 -0
  59. package/dist/esm/helpers/solana-instruction.js +4 -0
  60. package/dist/esm/helpers/solana-instruction.js.map +1 -1
  61. package/dist/esm/helpers/solana-intent-id.js +10 -1
  62. package/dist/esm/helpers/solana-intent-id.js.map +1 -1
  63. package/dist/esm/helpers/solana-intent-instruction.js +98 -0
  64. package/dist/esm/helpers/solana-intent-instruction.js.map +1 -0
  65. package/dist/esm/types/enums.js +0 -6
  66. package/dist/esm/types/enums.js.map +1 -1
  67. package/dist/esm/types/response.js +12 -2
  68. package/dist/esm/types/response.js.map +1 -1
  69. package/dist/esm/types/validation.js +30 -0
  70. package/dist/esm/types/validation.js.map +1 -1
  71. package/dist/esm/validations/evm-required-actions.js +2 -0
  72. package/dist/esm/validations/evm-required-actions.js.map +1 -1
  73. package/dist/esm/validations/evm-sign712-shared.js +2 -5
  74. package/dist/esm/validations/evm-sign712-shared.js.map +1 -1
  75. package/dist/esm/validations/evm-transaction-scope.js +26 -0
  76. package/dist/esm/validations/evm-transaction-scope.js.map +1 -0
  77. package/dist/esm/validations/hooks-common.js +18 -15
  78. package/dist/esm/validations/hooks-common.js.map +1 -1
  79. package/dist/esm/validations/low-input-sweep-bundle.js +91 -0
  80. package/dist/esm/validations/low-input-sweep-bundle.js.map +1 -0
  81. package/dist/esm/validations/low-input-sweep-hook.js +201 -0
  82. package/dist/esm/validations/low-input-sweep-hook.js.map +1 -0
  83. package/dist/esm/validations/low-input-sweep.js +291 -0
  84. package/dist/esm/validations/low-input-sweep.js.map +1 -0
  85. package/dist/esm/validations/on-chain-intent-submission.js +17 -6
  86. package/dist/esm/validations/on-chain-intent-submission.js.map +1 -1
  87. package/dist/esm/validations/ptp.js +13 -15
  88. package/dist/esm/validations/ptp.js.map +1 -1
  89. package/dist/esm/validations/solana-embedded-intent.js +184 -0
  90. package/dist/esm/validations/solana-embedded-intent.js.map +1 -0
  91. package/dist/esm/validations/solana-hook.js +2 -2
  92. package/dist/esm/validations/solana-hook.js.map +1 -1
  93. package/dist/esm/validations/solana-intent-accounts.js +95 -0
  94. package/dist/esm/validations/solana-intent-accounts.js.map +1 -0
  95. package/dist/esm/validations/solana-low-input-sweep.js +248 -0
  96. package/dist/esm/validations/solana-low-input-sweep.js.map +1 -0
  97. package/dist/esm/validations/solana-required-actions.js +6 -2
  98. package/dist/esm/validations/solana-required-actions.js.map +1 -1
  99. package/dist/esm/validations/solana-transaction.js +25 -5
  100. package/dist/esm/validations/solana-transaction.js.map +1 -1
  101. package/dist/esm/validations/trade-grouping.js +23 -26
  102. package/dist/esm/validations/trade-grouping.js.map +1 -1
  103. package/dist/esm/validations/trade-matching.js +21 -13
  104. package/dist/esm/validations/trade-matching.js.map +1 -1
  105. package/dist/esm/validations/trades.js +33 -20
  106. package/dist/esm/validations/trades.js.map +1 -1
  107. package/dist/esm/validator.js +14 -5
  108. package/dist/esm/validator.js.map +1 -1
  109. package/dist/esm/whitelists/environment-config.js +45 -3
  110. package/dist/esm/whitelists/environment-config.js.map +1 -1
  111. package/dist/esm/whitelists/types.js.map +1 -1
  112. package/dist/types/helpers/solana-hook-instructions.d.ts +14 -0
  113. package/dist/types/helpers/solana-hook-instructions.d.ts.map +1 -0
  114. package/dist/types/helpers/solana-instruction.d.ts +3 -0
  115. package/dist/types/helpers/solana-instruction.d.ts.map +1 -1
  116. package/dist/types/helpers/solana-intent-id.d.ts +5 -0
  117. package/dist/types/helpers/solana-intent-id.d.ts.map +1 -1
  118. package/dist/types/helpers/solana-intent-instruction.d.ts +34 -0
  119. package/dist/types/helpers/solana-intent-instruction.d.ts.map +1 -0
  120. package/dist/types/types/enums.d.ts +0 -4
  121. package/dist/types/types/enums.d.ts.map +1 -1
  122. package/dist/types/types/response.d.ts +71 -1
  123. package/dist/types/types/response.d.ts.map +1 -1
  124. package/dist/types/types/validation.d.ts +29 -0
  125. package/dist/types/types/validation.d.ts.map +1 -1
  126. package/dist/types/validations/evm-required-actions.d.ts.map +1 -1
  127. package/dist/types/validations/evm-sign712-shared.d.ts.map +1 -1
  128. package/dist/types/validations/evm-transaction-scope.d.ts +3 -0
  129. package/dist/types/validations/evm-transaction-scope.d.ts.map +1 -0
  130. package/dist/types/validations/hooks-common.d.ts +2 -1
  131. package/dist/types/validations/hooks-common.d.ts.map +1 -1
  132. package/dist/types/validations/low-input-sweep-bundle.d.ts +3 -0
  133. package/dist/types/validations/low-input-sweep-bundle.d.ts.map +1 -0
  134. package/dist/types/validations/low-input-sweep-hook.d.ts +9 -0
  135. package/dist/types/validations/low-input-sweep-hook.d.ts.map +1 -0
  136. package/dist/types/validations/low-input-sweep.d.ts +15 -0
  137. package/dist/types/validations/low-input-sweep.d.ts.map +1 -0
  138. package/dist/types/validations/on-chain-intent-submission.d.ts.map +1 -1
  139. package/dist/types/validations/ptp.d.ts +3 -2
  140. package/dist/types/validations/ptp.d.ts.map +1 -1
  141. package/dist/types/validations/solana-embedded-intent.d.ts +3 -0
  142. package/dist/types/validations/solana-embedded-intent.d.ts.map +1 -0
  143. package/dist/types/validations/solana-hook.d.ts.map +1 -1
  144. package/dist/types/validations/solana-intent-accounts.d.ts +14 -0
  145. package/dist/types/validations/solana-intent-accounts.d.ts.map +1 -0
  146. package/dist/types/validations/solana-low-input-sweep.d.ts +9 -0
  147. package/dist/types/validations/solana-low-input-sweep.d.ts.map +1 -0
  148. package/dist/types/validations/solana-required-actions.d.ts.map +1 -1
  149. package/dist/types/validations/solana-transaction.d.ts.map +1 -1
  150. package/dist/types/validations/trade-grouping.d.ts +1 -1
  151. package/dist/types/validations/trade-grouping.d.ts.map +1 -1
  152. package/dist/types/validations/trade-matching.d.ts +1 -1
  153. package/dist/types/validations/trade-matching.d.ts.map +1 -1
  154. package/dist/types/validations/trades.d.ts +1 -1
  155. package/dist/types/validations/trades.d.ts.map +1 -1
  156. package/dist/types/validator.d.ts.map +1 -1
  157. package/dist/types/whitelists/environment-config.d.ts.map +1 -1
  158. package/dist/types/whitelists/types.d.ts +1 -0
  159. package/dist/types/whitelists/types.d.ts.map +1 -1
  160. package/package.json +70 -66
@@ -7,32 +7,38 @@ const subscription_to_chain_id_1 = require("../whitelists/subscription-to-chain-
7
7
  // Builds the request↔response trade mapping used by validators that need a
8
8
  // concrete request trade for every response trade.
9
9
  //
10
- // Regular mode: API keeps trades in the same order, so index pairing is enough.
10
+ // Non-consolidation mode: API keeps non-swept trades in the same order, so order
11
+ // pairing is enough while preserving original request and response indices.
11
12
  //
12
13
  // Consolidation mode: API may omit request trades, but the remaining response
13
14
  // trades must still be an order-preserving subsequence of request.trades[].
14
- function matchTrades(requestTrades, responseTrades, quoteMode, consolidationMode) {
15
+ function matchTrades(requestTrades, responseTrades, quoteMode, consolidationMode, sweptTradeIndices) {
15
16
  if (!consolidationMode) {
16
17
  return {
17
- pairs: pairTradesByIndex(requestTrades, responseTrades),
18
+ pairs: pairTradesByIndex(requestTrades, responseTrades, sweptTradeIndices),
18
19
  violations: [],
19
20
  };
20
21
  }
21
- return matchConsolidationTrades(requestTrades, responseTrades, quoteMode);
22
+ return matchConsolidationTrades(requestTrades, responseTrades, quoteMode, sweptTradeIndices);
22
23
  }
23
24
  // Fast path for non-consolidation responses. Count mismatches are reported by
24
- // trade-level validators; this helper only returns the pairs that can be
25
+ // trade-level validators; this helper only returns non-swept pairs that can be
25
26
  // compared safely.
26
- function pairTradesByIndex(requestTrades, responseTrades) {
27
- const pairCount = Math.min(requestTrades.length, responseTrades.length);
27
+ function pairTradesByIndex(requestTrades, responseTrades, sweptTradeIndices) {
28
28
  const pairs = [];
29
- for (let i = 0; i < pairCount; i++) {
29
+ let responseIndex = 0;
30
+ for (let i = 0; i < requestTrades.length; i++) {
31
+ if (sweptTradeIndices.has(i))
32
+ continue;
33
+ if (responseIndex >= responseTrades.length)
34
+ break;
30
35
  pairs.push({
31
36
  requestIndex: i,
32
- responseIndex: i,
37
+ responseIndex,
33
38
  requestTrade: requestTrades[i],
34
- responseTrade: responseTrades[i],
39
+ responseTrade: responseTrades[responseIndex],
35
40
  });
41
+ responseIndex++;
36
42
  }
37
43
  return pairs;
38
44
  }
@@ -41,12 +47,12 @@ function pairTradesByIndex(requestTrades, responseTrades) {
41
47
  // This allows skipped request trades in consolidation mode while still
42
48
  // forbidding reordering or injecting a response trade that did not come from
43
49
  // the request.
44
- function matchConsolidationTrades(requestTrades, responseTrades, quoteMode) {
50
+ function matchConsolidationTrades(requestTrades, responseTrades, quoteMode, sweptTradeIndices) {
45
51
  const pairs = [];
46
52
  const violations = [];
47
53
  let nextRequestIndex = 0;
48
54
  for (let responseIndex = 0; responseIndex < responseTrades.length; responseIndex++) {
49
- const requestIndex = findMatchingRequestIndex(requestTrades, responseTrades[responseIndex], nextRequestIndex, quoteMode);
55
+ const requestIndex = findMatchingRequestIndex(requestTrades, responseTrades[responseIndex], nextRequestIndex, quoteMode, sweptTradeIndices);
50
56
  if (requestIndex === undefined) {
51
57
  violations.push(createUnmatchedTradeViolation(responseTrades[responseIndex], responseIndex));
52
58
  continue;
@@ -62,8 +68,10 @@ function matchConsolidationTrades(requestTrades, responseTrades, quoteMode) {
62
68
  return { pairs, violations };
63
69
  }
64
70
  // Searches only forward from `startIndex` to preserve request order.
65
- function findMatchingRequestIndex(requestTrades, responseTrade, startIndex, quoteMode) {
71
+ function findMatchingRequestIndex(requestTrades, responseTrade, startIndex, quoteMode, sweptTradeIndices) {
66
72
  for (let i = startIndex; i < requestTrades.length; i++) {
73
+ if (sweptTradeIndices.has(i))
74
+ continue;
67
75
  if (requestTradeMatchesResponse(requestTrades[i], responseTrade, quoteMode)) {
68
76
  return i;
69
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"trade-matching.js","sourceRoot":"","sources":["../../../src/validations/trade-matching.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trade-matching.js","sourceRoot":"","sources":["../../../src/validations/trade-matching.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,6 @@ const address_1 = require("../helpers/address");
7
7
  const trade_intent_consistency_1 = require("./trade-intent-consistency");
8
8
  const integer_1 = require("../helpers/integer");
9
9
  const amount_1 = require("../helpers/amount");
10
- const trade_matching_1 = require("./trade-matching");
11
10
  /**
12
11
  * Per-trade role in asset-consolidation mode. Computed once for all trades at
13
12
  * the start of validateTrades and threaded through to per-field validators.
@@ -39,27 +38,27 @@ var TradeRole;
39
38
  TradeRole[TradeRole["Balancing"] = 1] = "Balancing";
40
39
  TradeRole[TradeRole["NonBalancing"] = 2] = "NonBalancing";
41
40
  })(TradeRole || (TradeRole = {}));
42
- function validateTrades(request, response, quoteMode, tradePairs) {
41
+ function validateTrades(request, response, quoteMode, tradePairs, sweptTradeIndices) {
43
42
  const violations = [];
44
- // CRITICAL: response cannot carry more trades than the request asked for.
45
- // CRITICAL: response cannot carry fewer trades than the request, except when
46
- // the request opts into asset-consolidation mode (totalDstAmount set), where
47
- // the API may legitimately drop tail trades after the balancing trade.
43
+ // CRITICAL: only non-swept request trades may appear in response.trades.
44
+ // Response may carry fewer non-swept trades than the request only in
45
+ // asset-consolidation mode (totalDstAmount set), where the API may
46
+ // legitimately drop tail trades after the balancing trade.
48
47
  const consolidationMode = request.totalDstAmount !== undefined;
49
- const tooMany = response.trades.length > request.trades.length;
50
- const tooFew = response.trades.length < request.trades.length && !consolidationMode;
48
+ const expectedTradeCount = getExpectedTradeCount(request.trades.length, sweptTradeIndices);
49
+ const tooMany = response.trades.length > expectedTradeCount;
50
+ const tooFew = response.trades.length < expectedTradeCount && !consolidationMode;
51
51
  if (tooMany || tooFew) {
52
52
  violations.push({
53
53
  code: types_1.ViolationCode.TradeCountMismatch,
54
- message: "response.trades.length does not match request.trades.length",
54
+ message: "response.trades.length does not match the number of non-swept request trades",
55
55
  path: "response.trades",
56
- expected: request.trades.length,
56
+ expected: expectedTradeCount,
57
57
  actual: response.trades.length,
58
58
  });
59
59
  }
60
60
  const isBalancingMode = computeIsBalancingMode(request, response);
61
- const pairs = tradePairs ?? (0, trade_matching_1.matchTrades)(request.trades, response.trades, quoteMode, consolidationMode).pairs;
62
- for (const pair of pairs) {
61
+ for (const pair of tradePairs) {
63
62
  const isLastInResponse = pair.responseIndex === response.trades.length - 1;
64
63
  const role = computeTradeRole(pair.responseTrade, isLastInResponse, consolidationMode, isBalancingMode);
65
64
  violations.push(...validateSingleTrade(pair.requestTrade, pair.responseTrade, pair.requestIndex, pair.responseIndex, quoteMode, role));
@@ -68,12 +67,26 @@ function validateTrades(request, response, quoteMode, tradePairs) {
68
67
  if (!quoteMode) {
69
68
  violations.push(...(0, trade_intent_consistency_1.validateRelatedIntentIds)(response));
70
69
  }
71
- const partnerCostTrades = consolidationMode
72
- ? pairs.map(pair => pair.requestTrade)
73
- : request.trades;
70
+ const partnerCostTrades = getTradesForPartnerCost(request.trades, tradePairs, consolidationMode, sweptTradeIndices);
74
71
  violations.push(...validatePartnerCost(response, partnerCostTrades));
75
72
  return violations;
76
73
  }
74
+ function getExpectedTradeCount(requestTradeCount, sweptTradeIndices) {
75
+ let sweptCount = 0;
76
+ for (const tradeIndex of sweptTradeIndices) {
77
+ if (Number.isInteger(tradeIndex) && tradeIndex >= 0 && tradeIndex < requestTradeCount) {
78
+ sweptCount++;
79
+ }
80
+ }
81
+ return requestTradeCount - sweptCount;
82
+ }
83
+ function getTradesForPartnerCost(requestTrades, pairs, consolidationMode, sweptTradeIndices) {
84
+ if (consolidationMode)
85
+ return pairs.map(pair => pair.requestTrade);
86
+ if (sweptTradeIndices.size === 0)
87
+ return requestTrades;
88
+ return requestTrades.filter((_, requestIndex) => !sweptTradeIndices.has(requestIndex));
89
+ }
77
90
  // True if and only if the pipeline ran the balancing-trade construction path
78
91
  // (i.e. the dst total was reached). In `allowPartialFill=true` responses where
79
92
  // the pipeline ran out of trades without reaching `totalDstAmount`, the last
@@ -203,7 +216,7 @@ function validateSrcTokenInAmount(reqTrade, src, path, role) {
203
216
  // mode, Regular => non-consolidation. In consolidation mode the API forces
204
217
  // `prependOperatingExpenses=false` internally regardless of the request flag,
205
218
  // so we require exact-equality even when the request had `prepend=true`. In
206
- // regular mode we honor the request flag as-is.
219
+ // non-consolidation mode we honor the request flag as-is.
207
220
  const prependOperatingExpenses = role === TradeRole.NonBalancing
208
221
  ? false
209
222
  : (reqTrade.prependOperatingExpenses ?? false);
@@ -348,7 +361,7 @@ function validateMutatedWithOperatingExpense(reqTrade, src, path, role) {
348
361
  // Two roles remain (per TradeRole invariant): NonBalancing => consolidation
349
362
  // mode, Regular => non-consolidation. In consolidation mode the API forces
350
363
  // `prependOperatingExpenses=false` internally regardless of the request flag.
351
- // In regular mode we honor the request flag as-is.
364
+ // In non-consolidation mode we honor the request flag as-is.
352
365
  const prependExpenses = role === TradeRole.NonBalancing
353
366
  ? false
354
367
  : (reqTrade.prependOperatingExpenses ?? false);
@@ -692,15 +705,15 @@ function validatePrependedOperatingExpenseCost(reqTrade, resTrade, basePath, rol
692
705
  // Two roles remain (per TradeRole invariant): NonBalancing => consolidation
693
706
  // mode, Regular => non-consolidation. In consolidation mode the API forces
694
707
  // `prependOperatingExpenses=false` internally regardless of the request flag.
695
- // In regular mode we honor the request flag as-is.
708
+ // In non-consolidation mode we honor the request flag as-is.
696
709
  const prependExpenses = role === TradeRole.NonBalancing
697
710
  ? false
698
711
  : (reqTrade.prependOperatingExpenses ?? false);
699
712
  const isAuto = reqTrade.srcChainTokenInAmount === types_1.SpecialAmount.Auto;
700
713
  // Skip when the API is allowed to mutate `prependedOperatingExpenseCost`
701
714
  // freely:
702
- // - `prependOperatingExpenses=true` (regular mode): cost reflects the prepended amount.
703
- // - 'auto' srcChainTokenInAmount (regular mode): API forces the effective flag.
715
+ // - `prependOperatingExpenses=true` (non-consolidation mode): cost reflects the prepended amount.
716
+ // - 'auto' srcChainTokenInAmount (non-consolidation mode): API forces the effective flag.
704
717
  // In all other cases the cost must be zero — that's the only check below.
705
718
  if (prependExpenses || isAuto)
706
719
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"trades.js","sourceRoot":"","sources":["../../../src/validations/trades.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trades.js","sourceRoot":"","sources":["../../../src/validations/trades.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ const synthetic_native_wrap_1 = require("./helpers/synthetic-native-wrap");
24
24
  const quote_mode_1 = require("./helpers/quote-mode");
25
25
  const on_chain_intent_submission_1 = require("./validations/on-chain-intent-submission");
26
26
  const hook_version_1 = require("./validations/hook-version");
27
+ const low_input_sweep_1 = require("./validations/low-input-sweep");
28
+ const low_input_sweep_hook_1 = require("./validations/low-input-sweep-hook");
27
29
  const SUPPORTED_VALIDATION_VERSION = 1n;
28
30
  const COMPATIBLE_VALIDATION_VERSION_ALIASES = new Set(["2"]);
29
31
  function createValidator(config) {
@@ -145,8 +147,11 @@ function validateBundleCreation(request, response, envConfig) {
145
147
  }
146
148
  function buildBundleValidationContext(request, response, envConfig) {
147
149
  const modes = detectBundleModes(request, response);
148
- const tradeMatch = (0, trade_matching_1.matchTrades)(request.trades, response.trades, modes.quoteMode, modes.consolidationMode);
149
- const groupResult = (0, trade_grouping_1.groupTrades)(request.trades, response.trades, modes.quoteMode, modes.consolidationMode, tradeMatch.pairs);
150
+ const sweepResult = (0, low_input_sweep_1.validateLowInputSweeps)(request, response, modes.quoteMode);
151
+ const sweepHooks = (0, low_input_sweep_hook_1.matchLowInputSweepHooks)(request, response, sweepResult.sweeps, envConfig);
152
+ const sweptTradeIndices = new Set(sweepResult.sweeps.map(sweep => sweep.requestIndex));
153
+ const tradeMatch = (0, trade_matching_1.matchTrades)(request.trades, response.trades, modes.quoteMode, modes.consolidationMode, sweptTradeIndices);
154
+ const groupResult = (0, trade_grouping_1.groupTrades)(request.trades, modes.quoteMode, modes.consolidationMode, tradeMatch.pairs, sweptTradeIndices);
150
155
  const intentMatch = (0, trade_grouping_1.matchIntentsToGroups)(response.intents, groupResult.groups, modes.quoteMode);
151
156
  return {
152
157
  request,
@@ -158,6 +163,9 @@ function buildBundleValidationContext(request, response, envConfig) {
158
163
  groupViolations: groupResult.violations,
159
164
  intentContexts: intentMatch.contexts,
160
165
  intentMatchViolations: intentMatch.violations,
166
+ sweptTradeIndices,
167
+ expectedSweepHooks: sweepHooks.expectedHooks,
168
+ sweepViolations: [...sweepResult.violations, ...sweepHooks.violations],
161
169
  };
162
170
  }
163
171
  function detectBundleModes(request, response) {
@@ -173,13 +181,14 @@ function runBundleValidations(context) {
173
181
  return [
174
182
  ...(0, echo_fields_1.validateEchoFields)(request, response),
175
183
  ...(0, on_chain_intent_submission_1.validateOnChainIntentSubmission)(request),
184
+ ...context.sweepViolations,
176
185
  ...context.tradeMatch.violations,
177
- ...(0, trades_1.validateTrades)(request, response, modes.quoteMode, context.tradeMatch.pairs),
186
+ ...(0, trades_1.validateTrades)(request, response, modes.quoteMode, context.tradeMatch.pairs, context.sweptTradeIndices),
178
187
  ...(0, accumulative_token_1.validateAccumulativeTokens)(response, modes.quoteMode, modes.quoteGroupingUnverifiable),
179
188
  ...(0, max_reserved_1.validateMaxReservedRequest)(request),
180
189
  ...(0, total_dst_amount_1.validateTotalDstAmount)(request, response),
181
190
  ...(0, cost_token_1.validateCostToken)(request, response),
182
- ...(0, ptp_1.validatePtp)(request, response),
191
+ ...(0, ptp_1.validatePtp)(context.tradeMatch.pairs),
183
192
  ...(0, dln_metadata_1.validateRequestDlnMetadataFormat)(request.trades),
184
193
  ...(0, external_call_1.validateExternalCalls)(modes.quoteMode, context.tradeMatch.pairs),
185
194
  ...(0, interactions_1.validateRequestInteractions)(request.trades),
@@ -189,7 +198,7 @@ function runBundleValidations(context) {
189
198
  ...(0, interactions_1.validateIntentInteractions)(context.intentContexts),
190
199
  ...(0, intent_1.validateIntents)(context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode),
191
200
  ...(0, required_actions_1.validateRequiredActions)(request, response, context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode),
192
- ...(0, hooks_common_1.validateHooks)(request, response, modes.quoteMode, envConfig),
201
+ ...(0, hooks_common_1.validateHooks)(request, response, modes.quoteMode, envConfig, context.expectedSweepHooks),
193
202
  ];
194
203
  }
195
204
  // TODO: enable in the future
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/validator.ts"],"names":[],"mappings":"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"}
@@ -42,11 +42,22 @@ const DEV_EVM_EOA_DELEGATE_TWO = "0xDDd405336C13db1ccBf577f64B43890d9c386F7D";
42
42
  const DEV_EVM_EOA_DELEGATE_THREE = "0xE547d2EeD6DD60796013b485D284C17Da1194C82";
43
43
  // Solana delegates
44
44
  const PROD_SOLANA_DELEGATE = "DbjXAFabS9ymdbaGxuFBQAWuLB2MUGEFtpu3173aP3LR";
45
- const GASLESS_SOLANA_DELEGATE = "RevS7rhyy3XSXTyRXBj8Hd35wmzMwFJHGZDsA6d1k64";
45
+ const GASLESS_SOLANA_DELEGATE_ONE = "RevS7rhyy3XSXTyRXBj8Hd35wmzMwFJHGZDsA6d1k64";
46
+ const GASLESS_SOLANA_DELEGATE_TWO = "rEvEXwP2metfJvZ9mUMH6gKqxoAhy6Kk37amZ4rr7fm";
46
47
  const DEV_SOLANA_DELEGATE_ONE = "2snHHreXbpJ7UwZxPe37gnUNf7Wx7wv6UKDSR2JckKuS";
47
48
  const DEV_SOLANA_DELEGATE_TWO = "bud6cbDe3kpPaEWcRdnTnHEKZKg8YR9GaURKS9sXRGD";
48
49
  const DEV_SOLANA_DELEGATE_THREE = "7FfB2zQRYUQwpPzkRxAeg2mCBGeCRKp4PCEeULJA9xTo";
49
50
  // =============================================
51
+ // Sweep recipients
52
+ // =============================================
53
+ const PROD_AND_GASLESS_EVM_SWEEP_RECIPIENT = "0xfff74b0221e67653fe847acb4684b7a585ce63ff";
54
+ const PROD_AND_GASLESS_TRON_SWEEP_RECIPIENT = (0, address_1.evmHexToTronAddress)(PROD_AND_GASLESS_EVM_SWEEP_RECIPIENT);
55
+ const PROD_AND_GASLESS_SOLANA_SWEEP_RECIPIENT = "TrANS4WiVsqwRgzhNDm3gNAebwtu3BYSzdQctvH36Vn";
56
+ const DEV_EVM_SWEEP_RECIPIENT = "0xB020Ef4d2822698674A47A5Bb0DE4ff2eEb40FF0";
57
+ const DEV_TRON_SWEEP_RECIPIENT = (0, address_1.evmHexToTronAddress)(DEV_EVM_SWEEP_RECIPIENT);
58
+ const DEV_SOLANA_SWEEP_RECIPIENT_ONE = "9dBCHFBRJGmT9GsDVNY4BC9jcTUWGZxm6f464BTGzATE";
59
+ const DEV_SOLANA_SWEEP_RECIPIENT_TWO = "Bc8Ltv3dUKPwZzdqtYQmbhcw3ZdhiK6y4V7bGRYKr7hG";
60
+ // =============================================
50
61
  // Protocol-defined magic addresses
51
62
  // =============================================
52
63
  exports.EVM_MAGIC_ANY_TRUSTED_SOLVER_ADDRESS = "0xDDdDddDdDdddDDddDDddDDDDdDdDDdDDdDDDDDDd";
@@ -158,7 +169,8 @@ const SRC_ALLOWED_SENDERS_BY_ENVIRONMENT = {
158
169
  ],
159
170
  [enums_1.ChainId.Solana]: [
160
171
  PROD_SOLANA_DELEGATE,
161
- GASLESS_SOLANA_DELEGATE,
172
+ GASLESS_SOLANA_DELEGATE_ONE,
173
+ GASLESS_SOLANA_DELEGATE_TWO,
162
174
  DEV_SOLANA_DELEGATE_ONE,
163
175
  DEV_SOLANA_DELEGATE_TWO,
164
176
  DEV_SOLANA_DELEGATE_THREE,
@@ -185,11 +197,40 @@ const SRC_ALLOWED_SENDERS_BY_ENVIRONMENT = {
185
197
  exports.EVM_MAGIC_ANY_TRUSTED_SOLVER_ADDRESS,
186
198
  ]),
187
199
  [enums_1.ChainId.Solana]: [
188
- GASLESS_SOLANA_DELEGATE,
200
+ GASLESS_SOLANA_DELEGATE_ONE,
201
+ GASLESS_SOLANA_DELEGATE_TWO,
189
202
  exports.SOLANA_MAGIC_ANY_TRUSTED_SOLVER_ADDRESS,
190
203
  ],
191
204
  },
192
205
  };
206
+ // For Solana, list recipient owners, not token accounts; SPL destinations are derived ATAs.
207
+ const SWEEP_RECIPIENTS_BY_ENVIRONMENT = {
208
+ [validation_1.Environment.Dev]: {
209
+ ...(0, types_1.buildSameAddressesMap)(exports.EVM_CHAINS_ENABLED_FOR_INTENTS, [
210
+ PROD_AND_GASLESS_EVM_SWEEP_RECIPIENT,
211
+ DEV_EVM_SWEEP_RECIPIENT,
212
+ ]),
213
+ [enums_1.ChainId.Tron]: [
214
+ PROD_AND_GASLESS_TRON_SWEEP_RECIPIENT,
215
+ DEV_TRON_SWEEP_RECIPIENT,
216
+ ],
217
+ [enums_1.ChainId.Solana]: [
218
+ PROD_AND_GASLESS_SOLANA_SWEEP_RECIPIENT,
219
+ DEV_SOLANA_SWEEP_RECIPIENT_ONE,
220
+ DEV_SOLANA_SWEEP_RECIPIENT_TWO,
221
+ ],
222
+ },
223
+ [validation_1.Environment.Prod]: {
224
+ ...(0, types_1.buildSameAddressesMap)(exports.EVM_CHAINS_ENABLED_FOR_INTENTS, [PROD_AND_GASLESS_EVM_SWEEP_RECIPIENT]),
225
+ [enums_1.ChainId.Tron]: [PROD_AND_GASLESS_TRON_SWEEP_RECIPIENT],
226
+ [enums_1.ChainId.Solana]: [PROD_AND_GASLESS_SOLANA_SWEEP_RECIPIENT],
227
+ },
228
+ [validation_1.Environment.Gasless]: {
229
+ ...(0, types_1.buildSameAddressesMap)(exports.EVM_CHAINS_ENABLED_FOR_INTENTS, [PROD_AND_GASLESS_EVM_SWEEP_RECIPIENT]),
230
+ [enums_1.ChainId.Tron]: [PROD_AND_GASLESS_TRON_SWEEP_RECIPIENT],
231
+ [enums_1.ChainId.Solana]: [PROD_AND_GASLESS_SOLANA_SWEEP_RECIPIENT],
232
+ },
233
+ };
193
234
  // =============================================
194
235
  // Builder
195
236
  // =============================================
@@ -226,6 +267,7 @@ function buildEnvironmentConfig(environment) {
226
267
  allowanceHolderContracts: EVM_AND_TRON_ALLOWANCE_HOLDERS_BY_ENVIRONMENT[environment],
227
268
  intentManagerContracts: EVM_AND_TRON_INTENT_MANAGERS_BY_ENVIRONMENT[environment],
228
269
  srcAllowedSenderAddresses: SRC_ALLOWED_SENDERS_BY_ENVIRONMENT[environment],
270
+ sweepRecipientAddresses: SWEEP_RECIPIENTS_BY_ENVIRONMENT[environment],
229
271
  evmDelegateAddresses: EVM_AND_TRON_DELEGATES_BY_ENVIRONMENT[environment],
230
272
  eip7702DelegationContracts: filterChainAddressMap(evm_1.EIP7702_DELEGATION_CONTRACTS, metamaskChains),
231
273
  delegationManagerContracts: filterChainAddressMap(evm_1.DELEGATION_MANAGER_CONTRACTS, metamaskChains),
@@ -1 +1 @@
1
- {"version":3,"file":"environment-config.js","sourceRoot":"","sources":["../../../src/whitelists/environment-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"environment-config.js","sourceRoot":"","sources":["../../../src/whitelists/environment-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/whitelists/types.ts"],"names":[],"mappings":";;AAgBA,kDAKC;AAGD,sDASC;AAID,sDAkBC;AA6BD,sCA4BC;AAhHD,gDAI4B;AAC5B,0CAAsD;AAStD,8EAA8E;AAC9E,gFAAgF;AAChF,SAAgB,mBAAmB,CAC/B,MAA0B,EAC1B,OAAe;IAEf,OAAO,qBAAqB,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,uEAAuE;AACvE,SAAgB,qBAAqB,CACjC,MAA0B,EAC1B,SAA4B;IAE5B,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,+EAA+E;AAC/E,8CAA8C;AAC9C,SAAgB,qBAAqB,CAAC,GAAG,IAAgC;IACrE,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,SAAS,KAAK,SAAS;gBAAE,SAAS;YAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAY,CAAC;YAC9C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5C,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;gBAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAA,uBAAa,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAAE,SAAS;gBACjF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AA6BD,SAAgB,aAAa,CACzB,GAAoB,EACpB,OAAgB,EAChB,OAAe;IAEf,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,OAAO,CAAC,CAAC;IAEvC,IAAI,MAAM,KAAK,mBAAW,CAAC,MAAM,EAAE,CAAC;QAChC,iEAAiE;QACjE,kFAAkF;QAClF,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC;IAED,sCAAsC;IACtC,yGAAyG;IACzG,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,uBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,oCAAoC;IACpC,mEAAmE;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5B,OAAO,QAAQ,CAAC,IAAI,CAChB,OAAO,CAAC,EAAE,CAAC,IAAA,yBAAe,EAAC,OAAO,CAAC,IAAI,IAAA,uBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAClF,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/whitelists/types.ts"],"names":[],"mappings":";;AAgBA,kDAKC;AAGD,sDASC;AAID,sDAkBC;AA8BD,sCA4BC;AAjHD,gDAI4B;AAC5B,0CAAsD;AAStD,8EAA8E;AAC9E,gFAAgF;AAChF,SAAgB,mBAAmB,CAC/B,MAA0B,EAC1B,OAAe;IAEf,OAAO,qBAAqB,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,uEAAuE;AACvE,SAAgB,qBAAqB,CACjC,MAA0B,EAC1B,SAA4B;IAE5B,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,+EAA+E;AAC/E,8CAA8C;AAC9C,SAAgB,qBAAqB,CAAC,GAAG,IAAgC;IACrE,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,SAAS,KAAK,SAAS;gBAAE,SAAS;YAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAY,CAAC;YAC9C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5C,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;gBAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAA,uBAAa,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAAE,SAAS;gBACjF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AA8BD,SAAgB,aAAa,CACzB,GAAoB,EACpB,OAAgB,EAChB,OAAe;IAEf,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,OAAO,CAAC,CAAC;IAEvC,IAAI,MAAM,KAAK,mBAAW,CAAC,MAAM,EAAE,CAAC;QAChC,iEAAiE;QACjE,kFAAkF;QAClF,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC;IAED,sCAAsC;IACtC,yGAAyG;IACzG,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,uBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,oCAAoC;IACpC,mEAAmE;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5B,OAAO,QAAQ,CAAC,IAAI,CAChB,OAAO,CAAC,EAAE,CAAC,IAAA,yBAAe,EAAC,OAAO,CAAC,IAAI,IAAA,uBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAClF,CAAC;AACN,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { VersionedTransaction } from "@solana/web3.js";
2
+ import { bytesToHex, hexToBytes } from "viem";
3
+ import { isHexByteString } from "./hex.js";
4
+ // Decodes the complete payload, retaining account privileges for generated-hook
5
+ // validation. Throws on unsupported or malformed input; callers must report it.
6
+ export function decodeSolanaHookInstructions(data) {
7
+ if (!isHexByteString(data))
8
+ throw new Error("Solana hook data must be whole hex bytes");
9
+ const bytes = hexToBytes(data);
10
+ return decodeTransactionInstructions(bytes);
11
+ }
12
+ // Resolves every instruction account from a self-contained V0 transaction.
13
+ // Throws if the payload cannot be decoded without external account lookup data.
14
+ function decodeTransactionInstructions(bytes) {
15
+ const transaction = VersionedTransaction.deserialize(bytes);
16
+ const message = transaction.message;
17
+ // Lookup-table accounts cannot be resolved from these transaction bytes alone.
18
+ if (message.version !== 0
19
+ || message.addressTableLookups.length !== 0) {
20
+ throw new Error("Sweep transactions must use MessageV0 without address lookup tables");
21
+ }
22
+ // CRITICAL: deserializers may ignore trailing data. Only a full, canonical
23
+ // payload can become the independently verified expected signing payload.
24
+ if (bytesToHex(transaction.serialize()) !== bytesToHex(bytes)) {
25
+ throw new Error("Non-canonical or trailing Solana transaction bytes");
26
+ }
27
+ const keys = message.staticAccountKeys.map(key => key.toBase58());
28
+ const { numRequiredSignatures, numReadonlySignedAccounts, numReadonlyUnsignedAccounts } = message.header;
29
+ // CRITICAL: account identities must be unique and header counts must fit the
30
+ // account list. At least the fee payer must be a writable signer.
31
+ if (new Set(keys).size !== keys.length
32
+ || numRequiredSignatures < 1
33
+ || numRequiredSignatures > keys.length
34
+ || numReadonlySignedAccounts >= numRequiredSignatures
35
+ || numReadonlyUnsignedAccounts > keys.length - numRequiredSignatures) {
36
+ throw new Error("Invalid Solana transaction account header");
37
+ }
38
+ return {
39
+ // Account 0 is the fee payer; all required signers occupy the first N slots.
40
+ feePayer: keys[0],
41
+ signers: keys.slice(0, numRequiredSignatures),
42
+ // Compiled instructions store account indices, not addresses. Resolve both
43
+ // addresses and their transaction-wide signer/writable privileges.
44
+ instructions: message.compiledInstructions.map(instruction => ({
45
+ programId: requireAccount(keys, instruction.programIdIndex),
46
+ accountKeys: instruction.accountKeyIndexes.map(index => requireAccount(keys, index)),
47
+ accountMetas: instruction.accountKeyIndexes.map(index => ({
48
+ isSigner: message.isAccountSigner(index),
49
+ isWritable: message.isAccountWritable(index),
50
+ })),
51
+ data: instruction.data,
52
+ })),
53
+ };
54
+ }
55
+ // Returns the referenced account address. Throws rather than leaving an unresolved
56
+ // program or operand for downstream instruction validation.
57
+ function requireAccount(keys, index) {
58
+ const address = keys[index];
59
+ if (address === undefined)
60
+ throw new Error("Unresolved Solana instruction account");
61
+ return address;
62
+ }
63
+ //# sourceMappingURL=solana-hook-instructions.js.map