@debridge-finance/borderless-validation-sdk 0.0.9 → 0.0.11
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.
- package/README.md +20 -7
- package/dist/cjs/graylists/evm/token-permit-metadata.js +39 -6
- package/dist/cjs/graylists/evm/token-permit-metadata.js.map +1 -1
- package/dist/cjs/helpers/address.js +6 -0
- package/dist/cjs/helpers/address.js.map +1 -1
- package/dist/cjs/helpers/evm-intent-id.js +18 -14
- package/dist/cjs/helpers/evm-intent-id.js.map +1 -1
- package/dist/cjs/helpers/evm-trade-amounts.js +2 -1
- package/dist/cjs/helpers/evm-trade-amounts.js.map +1 -1
- package/dist/cjs/helpers/quote-mode.js +23 -0
- package/dist/cjs/helpers/quote-mode.js.map +1 -0
- package/dist/cjs/helpers/synthetic-native-wrap.js +13 -13
- package/dist/cjs/helpers/synthetic-native-wrap.js.map +1 -1
- package/dist/cjs/helpers/zod.js +55 -0
- package/dist/cjs/helpers/zod.js.map +1 -1
- package/dist/cjs/types/request.js +69 -54
- package/dist/cjs/types/request.js.map +1 -1
- package/dist/cjs/types/response.js +67 -66
- package/dist/cjs/types/response.js.map +1 -1
- package/dist/cjs/types/validation.js +5 -5
- package/dist/cjs/types/validation.js.map +1 -1
- package/dist/cjs/validations/accumulative-token.js +7 -1
- package/dist/cjs/validations/accumulative-token.js.map +1 -1
- package/dist/cjs/validations/cost-token.js +14 -4
- package/dist/cjs/validations/cost-token.js.map +1 -1
- package/dist/cjs/validations/echo-fields.js +8 -0
- package/dist/cjs/validations/echo-fields.js.map +1 -1
- package/dist/cjs/validations/evm-caveats.js +4 -3
- package/dist/cjs/validations/evm-caveats.js.map +1 -1
- package/dist/cjs/validations/evm-op-budget.js +14 -7
- package/dist/cjs/validations/evm-op-budget.js.map +1 -1
- package/dist/cjs/validations/evm-op-hook.js +19 -1
- package/dist/cjs/validations/evm-op-hook.js.map +1 -1
- package/dist/cjs/validations/evm-op-wrap.js +10 -4
- package/dist/cjs/validations/evm-op-wrap.js.map +1 -1
- package/dist/cjs/validations/evm-permit.js +4 -3
- package/dist/cjs/validations/evm-permit.js.map +1 -1
- package/dist/cjs/validations/evm-required-actions.js +3 -3
- package/dist/cjs/validations/evm-required-actions.js.map +1 -1
- package/dist/cjs/validations/evm-sign712-metamask.js +4 -3
- package/dist/cjs/validations/evm-sign712-metamask.js.map +1 -1
- package/dist/cjs/validations/evm-sign712.js +2 -2
- package/dist/cjs/validations/evm-sign712.js.map +1 -1
- package/dist/cjs/validations/evm-sign7702.js +2 -1
- package/dist/cjs/validations/evm-sign7702.js.map +1 -1
- package/dist/cjs/validations/external-call.js +15 -23
- package/dist/cjs/validations/external-call.js.map +1 -1
- package/dist/cjs/validations/hooks-common.js +82 -44
- package/dist/cjs/validations/hooks-common.js.map +1 -1
- package/dist/cjs/validations/intent-destinations.js +42 -16
- package/dist/cjs/validations/intent-destinations.js.map +1 -1
- package/dist/cjs/validations/intent-tokens.js +37 -25
- package/dist/cjs/validations/intent-tokens.js.map +1 -1
- package/dist/cjs/validations/intent.js +24 -10
- package/dist/cjs/validations/intent.js.map +1 -1
- package/dist/cjs/validations/required-actions.js +2 -2
- package/dist/cjs/validations/required-actions.js.map +1 -1
- package/dist/cjs/validations/solana-hook.js +35 -14
- package/dist/cjs/validations/solana-hook.js.map +1 -1
- package/dist/cjs/validations/solana-op-budget.js +28 -12
- package/dist/cjs/validations/solana-op-budget.js.map +1 -1
- package/dist/cjs/validations/solana-op-wrap.js +10 -5
- package/dist/cjs/validations/solana-op-wrap.js.map +1 -1
- package/dist/cjs/validations/solana-required-actions.js +3 -3
- package/dist/cjs/validations/solana-required-actions.js.map +1 -1
- package/dist/cjs/validations/solana-transaction.js +81 -45
- package/dist/cjs/validations/solana-transaction.js.map +1 -1
- package/dist/cjs/validations/trade-grouping.js +20 -3
- package/dist/cjs/validations/trade-grouping.js.map +1 -1
- package/dist/cjs/validations/trades.js +75 -109
- package/dist/cjs/validations/trades.js.map +1 -1
- package/dist/cjs/validator.js +98 -52
- package/dist/cjs/validator.js.map +1 -1
- package/dist/cjs/whitelists/environment-config.js +89 -56
- package/dist/cjs/whitelists/environment-config.js.map +1 -1
- package/dist/cjs/whitelists/evm/index.js +3 -1
- package/dist/cjs/whitelists/evm/index.js.map +1 -1
- package/dist/cjs/whitelists/solana/intent-signature.js +6 -10
- package/dist/cjs/whitelists/solana/intent-signature.js.map +1 -1
- package/dist/esm/graylists/evm/token-permit-metadata.js +39 -6
- package/dist/esm/graylists/evm/token-permit-metadata.js.map +1 -1
- package/dist/esm/helpers/address.js +6 -0
- package/dist/esm/helpers/address.js.map +1 -1
- package/dist/esm/helpers/evm-intent-id.js +18 -14
- package/dist/esm/helpers/evm-intent-id.js.map +1 -1
- package/dist/esm/helpers/evm-trade-amounts.js +2 -1
- package/dist/esm/helpers/evm-trade-amounts.js.map +1 -1
- package/dist/esm/helpers/quote-mode.js +17 -0
- package/dist/esm/helpers/quote-mode.js.map +1 -0
- package/dist/esm/helpers/synthetic-native-wrap.js +13 -13
- package/dist/esm/helpers/synthetic-native-wrap.js.map +1 -1
- package/dist/esm/helpers/zod.js +47 -0
- package/dist/esm/helpers/zod.js.map +1 -1
- package/dist/esm/types/request.js +69 -54
- package/dist/esm/types/request.js.map +1 -1
- package/dist/esm/types/response.js +67 -66
- package/dist/esm/types/response.js.map +1 -1
- package/dist/esm/types/validation.js +5 -5
- package/dist/esm/types/validation.js.map +1 -1
- package/dist/esm/validations/accumulative-token.js +7 -1
- package/dist/esm/validations/accumulative-token.js.map +1 -1
- package/dist/esm/validations/cost-token.js +14 -4
- package/dist/esm/validations/cost-token.js.map +1 -1
- package/dist/esm/validations/echo-fields.js +8 -0
- package/dist/esm/validations/echo-fields.js.map +1 -1
- package/dist/esm/validations/evm-caveats.js +4 -3
- package/dist/esm/validations/evm-caveats.js.map +1 -1
- package/dist/esm/validations/evm-op-budget.js +14 -7
- package/dist/esm/validations/evm-op-budget.js.map +1 -1
- package/dist/esm/validations/evm-op-hook.js +19 -1
- package/dist/esm/validations/evm-op-hook.js.map +1 -1
- package/dist/esm/validations/evm-op-wrap.js +10 -4
- package/dist/esm/validations/evm-op-wrap.js.map +1 -1
- package/dist/esm/validations/evm-permit.js +4 -3
- package/dist/esm/validations/evm-permit.js.map +1 -1
- package/dist/esm/validations/evm-required-actions.js +3 -3
- package/dist/esm/validations/evm-required-actions.js.map +1 -1
- package/dist/esm/validations/evm-sign712-metamask.js +1 -1
- package/dist/esm/validations/evm-sign712-metamask.js.map +1 -1
- package/dist/esm/validations/evm-sign712.js +2 -2
- package/dist/esm/validations/evm-sign712.js.map +1 -1
- package/dist/esm/validations/evm-sign7702.js +2 -1
- package/dist/esm/validations/evm-sign7702.js.map +1 -1
- package/dist/esm/validations/external-call.js +15 -23
- package/dist/esm/validations/external-call.js.map +1 -1
- package/dist/esm/validations/hooks-common.js +83 -45
- package/dist/esm/validations/hooks-common.js.map +1 -1
- package/dist/esm/validations/intent-destinations.js +43 -17
- package/dist/esm/validations/intent-destinations.js.map +1 -1
- package/dist/esm/validations/intent-tokens.js +37 -25
- package/dist/esm/validations/intent-tokens.js.map +1 -1
- package/dist/esm/validations/intent.js +24 -10
- package/dist/esm/validations/intent.js.map +1 -1
- package/dist/esm/validations/required-actions.js +2 -2
- package/dist/esm/validations/required-actions.js.map +1 -1
- package/dist/esm/validations/solana-hook.js +35 -14
- package/dist/esm/validations/solana-hook.js.map +1 -1
- package/dist/esm/validations/solana-op-budget.js +28 -12
- package/dist/esm/validations/solana-op-budget.js.map +1 -1
- package/dist/esm/validations/solana-op-wrap.js +10 -5
- package/dist/esm/validations/solana-op-wrap.js.map +1 -1
- package/dist/esm/validations/solana-required-actions.js +3 -3
- package/dist/esm/validations/solana-required-actions.js.map +1 -1
- package/dist/esm/validations/solana-transaction.js +81 -45
- package/dist/esm/validations/solana-transaction.js.map +1 -1
- package/dist/esm/validations/trade-grouping.js +21 -4
- package/dist/esm/validations/trade-grouping.js.map +1 -1
- package/dist/esm/validations/trades.js +75 -109
- package/dist/esm/validations/trades.js.map +1 -1
- package/dist/esm/validator.js +99 -53
- package/dist/esm/validator.js.map +1 -1
- package/dist/esm/whitelists/environment-config.js +84 -52
- package/dist/esm/whitelists/environment-config.js.map +1 -1
- package/dist/esm/whitelists/evm/index.js +1 -0
- package/dist/esm/whitelists/evm/index.js.map +1 -1
- package/dist/esm/whitelists/solana/intent-signature.js +4 -9
- package/dist/esm/whitelists/solana/intent-signature.js.map +1 -1
- package/dist/types/graylists/evm/token-permit-metadata.d.ts +2 -2
- package/dist/types/graylists/evm/token-permit-metadata.d.ts.map +1 -1
- package/dist/types/helpers/address.d.ts.map +1 -1
- package/dist/types/helpers/evm-trade-amounts.d.ts.map +1 -1
- package/dist/types/helpers/quote-mode.d.ts +6 -0
- package/dist/types/helpers/quote-mode.d.ts.map +1 -0
- package/dist/types/helpers/synthetic-native-wrap.d.ts.map +1 -1
- package/dist/types/helpers/zod.d.ts +9 -0
- package/dist/types/helpers/zod.d.ts.map +1 -1
- package/dist/types/types/request.d.ts +159 -159
- package/dist/types/types/request.d.ts.map +1 -1
- package/dist/types/types/response.d.ts +456 -456
- package/dist/types/types/response.d.ts.map +1 -1
- package/dist/types/types/validation.d.ts +5 -4
- package/dist/types/types/validation.d.ts.map +1 -1
- package/dist/types/validations/accumulative-token.d.ts +1 -1
- package/dist/types/validations/accumulative-token.d.ts.map +1 -1
- package/dist/types/validations/cost-token.d.ts.map +1 -1
- package/dist/types/validations/echo-fields.d.ts.map +1 -1
- package/dist/types/validations/evm-caveats.d.ts.map +1 -1
- package/dist/types/validations/evm-op-budget.d.ts +1 -1
- package/dist/types/validations/evm-op-budget.d.ts.map +1 -1
- package/dist/types/validations/evm-op-wrap.d.ts +1 -1
- package/dist/types/validations/evm-op-wrap.d.ts.map +1 -1
- package/dist/types/validations/evm-required-actions.d.ts +1 -1
- package/dist/types/validations/evm-required-actions.d.ts.map +1 -1
- package/dist/types/validations/evm-sign712-metamask.d.ts +1 -0
- package/dist/types/validations/evm-sign712-metamask.d.ts.map +1 -1
- package/dist/types/validations/evm-sign7702.d.ts.map +1 -1
- package/dist/types/validations/external-call.d.ts +2 -2
- package/dist/types/validations/external-call.d.ts.map +1 -1
- package/dist/types/validations/hooks-common.d.ts.map +1 -1
- package/dist/types/validations/intent-destinations.d.ts +3 -3
- package/dist/types/validations/intent-destinations.d.ts.map +1 -1
- package/dist/types/validations/intent-tokens.d.ts.map +1 -1
- package/dist/types/validations/intent.d.ts +1 -1
- package/dist/types/validations/intent.d.ts.map +1 -1
- package/dist/types/validations/required-actions.d.ts.map +1 -1
- package/dist/types/validations/solana-op-budget.d.ts +1 -1
- package/dist/types/validations/solana-op-budget.d.ts.map +1 -1
- package/dist/types/validations/solana-op-wrap.d.ts +1 -1
- package/dist/types/validations/solana-op-wrap.d.ts.map +1 -1
- package/dist/types/validations/solana-required-actions.d.ts +1 -1
- package/dist/types/validations/solana-required-actions.d.ts.map +1 -1
- package/dist/types/validations/solana-transaction.d.ts +2 -2
- package/dist/types/validations/solana-transaction.d.ts.map +1 -1
- package/dist/types/validations/trade-grouping.d.ts +2 -0
- package/dist/types/validations/trade-grouping.d.ts.map +1 -1
- package/dist/types/validator.d.ts.map +1 -1
- package/dist/types/whitelists/environment-config.d.ts +17 -0
- package/dist/types/whitelists/environment-config.d.ts.map +1 -1
- package/dist/types/whitelists/evm/index.d.ts +1 -0
- package/dist/types/whitelists/evm/index.d.ts.map +1 -1
- package/dist/types/whitelists/solana/intent-signature.d.ts +1 -0
- package/dist/types/whitelists/solana/intent-signature.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-permit-metadata.js","sourceRoot":"","sources":["../../../../src/graylists/evm/token-permit-metadata.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,mEAAmE;AACnE,oEAAoE;AACpE,oEAAoE;
|
|
1
|
+
{"version":3,"file":"token-permit-metadata.js","sourceRoot":"","sources":["../../../../src/graylists/evm/token-permit-metadata.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,mEAAmE;AACnE,oEAAoE;AACpE,oEAAoE;AAEpE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAgB5C,kDAAkD;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAA2B;IACzD,wEAAwE;IACxE,2EAA2E;IAC3E,uEAAuE;IACvE,kEAAkE;IAClE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChB,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;QAChF,4CAA4C,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,EAAE;QACtF,4CAA4C,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;KACvE;IACD,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChB,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;KACnF;IACD,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACf,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;KACnF;IACD,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACb,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACb,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChB,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACX,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACjB,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACZ,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;KACnF;IACD,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACb,4CAA4C,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;KAC/E;IACD,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChB,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;KACnF;IACD,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACjB,4CAA4C,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE;KACnF;CACJ,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAClC,WAAoB,EACpB,YAAoB;IAEpB,MAAM,KAAK,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -72,6 +72,12 @@ export function addressToHexByValue(address) {
|
|
|
72
72
|
return applyEngineToHex(address, detectChainEngine(address));
|
|
73
73
|
}
|
|
74
74
|
function applyEngineToHex(address, engine) {
|
|
75
|
+
// API address parsing treats 0x-prefixed values as raw hex for every
|
|
76
|
+
// chain, including Tron. Preserve that behavior before engine-specific
|
|
77
|
+
// human-readable decoding.
|
|
78
|
+
if (address.startsWith("0x")) {
|
|
79
|
+
return address.toLowerCase();
|
|
80
|
+
}
|
|
75
81
|
if (engine === ChainEngine.EVM) {
|
|
76
82
|
return address.toLowerCase();
|
|
77
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/helpers/address.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/helpers/address.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,24 +9,28 @@ export function computeIntentId(intent) {
|
|
|
9
9
|
return keccak256(encoded);
|
|
10
10
|
}
|
|
11
11
|
function convertToIntentStruct(intent) {
|
|
12
|
+
const intentRealChainId = resolveChainId(intent.intentChainId) ?? intent.intentChainId;
|
|
12
13
|
return {
|
|
13
14
|
intentChainId: intent.intentChainId,
|
|
14
|
-
intentOwner: intent.intentOwner,
|
|
15
|
+
intentOwner: addressToHex(intentRealChainId, intent.intentOwner),
|
|
15
16
|
receiverDetails: convertAllowedAddresses(intent.receiverDetails),
|
|
16
|
-
inputToken: convertInputTokens(intent.inputToken),
|
|
17
|
-
giveToken: convertGiveTokens(intent.giveToken),
|
|
18
|
-
takeToken: convertTakeTokens(intent.takeToken),
|
|
17
|
+
inputToken: convertInputTokens(intentRealChainId, intent.inputToken),
|
|
18
|
+
giveToken: convertGiveTokens(intentRealChainId, intent.giveToken),
|
|
19
|
+
takeToken: convertTakeTokens(intent.takeToken, intentRealChainId),
|
|
19
20
|
expirationTimestamp: BigInt(intent.expirationTimestamp),
|
|
20
21
|
intentTimestamp: BigInt(intent.intentTimestamp),
|
|
21
|
-
srcAllowedSender: (intent.srcAllowedSender ?? [])
|
|
22
|
+
srcAllowedSender: (intent.srcAllowedSender ?? [])
|
|
23
|
+
.map(address => addressToHex(intentRealChainId, address)),
|
|
22
24
|
executionMetadata: (intent.executionMetadata ?? zeroHash),
|
|
23
25
|
isAnyDlnMetadataAllowed: !intent.dlnMetadata,
|
|
24
26
|
dlnMetadata: (intent.dlnMetadata ?? "0x"),
|
|
25
27
|
externalCallHash: (intent.externalCallHash ?? zeroHash),
|
|
26
28
|
combinedInteractions: "0x",
|
|
27
|
-
allowedCancelBeneficiary:
|
|
29
|
+
allowedCancelBeneficiary: intent.allowedCancelBeneficiary
|
|
30
|
+
? addressToHex(intentRealChainId, intent.allowedCancelBeneficiary)
|
|
31
|
+
: zeroAddress,
|
|
28
32
|
dstAuthorityAddress: convertAllowedAddresses(intent.dstAuthorityAddress),
|
|
29
|
-
intentAuthority: intent.intentAuthority,
|
|
33
|
+
intentAuthority: addressToHex(intentRealChainId, intent.intentAuthority),
|
|
30
34
|
};
|
|
31
35
|
}
|
|
32
36
|
// Encodes addresses as raw bytes — non-EVM strings can't be passed as-is.
|
|
@@ -46,32 +50,32 @@ function convertAllowedAddresses(details) {
|
|
|
46
50
|
return { allowedAddress, chains, isAnyChain };
|
|
47
51
|
});
|
|
48
52
|
}
|
|
49
|
-
function convertInputTokens(tokens) {
|
|
53
|
+
function convertInputTokens(intentRealChainId, tokens) {
|
|
50
54
|
if (!tokens)
|
|
51
55
|
return [];
|
|
52
56
|
return tokens.map(t => ({
|
|
53
|
-
token: t.address,
|
|
57
|
+
token: addressToHex(intentRealChainId, t.address),
|
|
54
58
|
minPartialAmount: parseIntegerString(t.minPartialAmount),
|
|
55
59
|
maxPartialAmount: parseIntegerString(t.maxPartialAmount),
|
|
56
60
|
budget: parseIntegerString(t.constraintBudget),
|
|
57
61
|
}));
|
|
58
62
|
}
|
|
59
|
-
function convertGiveTokens(tokens) {
|
|
63
|
+
function convertGiveTokens(intentRealChainId, tokens) {
|
|
60
64
|
if (!tokens)
|
|
61
65
|
return [];
|
|
62
66
|
return tokens.map(t => ({
|
|
63
|
-
inputToken: t.inputTokenAddress,
|
|
64
|
-
giveToken: t.giveTokenAddress,
|
|
67
|
+
inputToken: addressToHex(intentRealChainId, t.inputTokenAddress),
|
|
68
|
+
giveToken: addressToHex(intentRealChainId, t.giveTokenAddress),
|
|
65
69
|
numerator: parseIntegerString(t.numerator),
|
|
66
70
|
denominator: Number(t.denominator),
|
|
67
71
|
}));
|
|
68
72
|
}
|
|
69
73
|
// Encode addresses as raw bytes — non-EVM strings can't be passed as-is.
|
|
70
|
-
function convertTakeTokens(tokens) {
|
|
74
|
+
function convertTakeTokens(tokens, intentRealChainId) {
|
|
71
75
|
return tokens.map(t => {
|
|
72
76
|
const realChainId = resolveChainId(t.takeTokenChainId) ?? t.takeTokenChainId;
|
|
73
77
|
return {
|
|
74
|
-
giveToken: t.fromTokenAddress,
|
|
78
|
+
giveToken: addressToHex(intentRealChainId, t.fromTokenAddress),
|
|
75
79
|
takeTokenChain: t.takeTokenChainId,
|
|
76
80
|
takeToken: addressToHex(realChainId, t.takeTokenAddress),
|
|
77
81
|
numerator: parseIntegerString(t.numerator),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-intent-id.js","sourceRoot":"","sources":["../../../src/helpers/evm-intent-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAE7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,UAAU,eAAe,CAAC,MAAsB;IAClD,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,mBAAmB,CAAC,wBAAwB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAsB;IACjD,OAAO;QACH,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,WAAW,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"evm-intent-id.js","sourceRoot":"","sources":["../../../src/helpers/evm-intent-id.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,13 +37,14 @@ export function sumTradeAmounts(trades, tokenAddress, realChainId, responseTrade
|
|
|
37
37
|
try {
|
|
38
38
|
sum += parseIntegerString(responseAmount);
|
|
39
39
|
}
|
|
40
|
-
catch {
|
|
40
|
+
catch (error) {
|
|
41
41
|
return {
|
|
42
42
|
violations: [{
|
|
43
43
|
code: ViolationCode.TradeAmountInvalid,
|
|
44
44
|
message: "response.trades[].srcChainTokenIn.amount is not a valid number",
|
|
45
45
|
path: `response.trades[${i}].srcChainTokenIn.amount`,
|
|
46
46
|
actual: responseAmount,
|
|
47
|
+
details: error,
|
|
47
48
|
}],
|
|
48
49
|
};
|
|
49
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm-trade-amounts.js","sourceRoot":"","sources":["../../../src/helpers/evm-trade-amounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,aAAa,GAIhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAO/C,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,6EAA6E;AAC7E,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,qEAAqE;AACrE,6EAA6E;AAC7E,6EAA6E;AAC7E,+CAA+C;AAC/C,MAAM,UAAU,eAAe,CAC3B,MAAsB,EACtB,YAAoB,EACpB,WAAoB,EACpB,cAA6C;IAE7C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,6FAA6F;IAC7F,MAAM,aAAa,GAAG,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,YAAY,CAAC;IAC5F,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAEhE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC1F,MAAM,oBAAoB,GAAG,gBAAgB,CACzC,WAAW,EAAE,kBAAkB,IAAI,KAAK,CAAC,eAAe,CAC3D,CAAC;QACF,IAAI,oBAAoB,KAAK,UAAU,EAAE,CAAC;YACtC,SAAS;QACb,CAAC;QAED,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxC,qEAAqE;QACrE,uBAAuB;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC5D,IAAI,CAAC;YACD,GAAG,IAAI,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAC9C,CAAC;QAAC,
|
|
1
|
+
{"version":3,"file":"evm-trade-amounts.js","sourceRoot":"","sources":["../../../src/helpers/evm-trade-amounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,aAAa,GAIhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAO/C,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,6EAA6E;AAC7E,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,qEAAqE;AACrE,6EAA6E;AAC7E,6EAA6E;AAC7E,+CAA+C;AAC/C,MAAM,UAAU,eAAe,CAC3B,MAAsB,EACtB,YAAoB,EACpB,WAAoB,EACpB,cAA6C;IAE7C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,6FAA6F;IAC7F,MAAM,aAAa,GAAG,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,YAAY,CAAC;IAC5F,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAEhE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC1F,MAAM,oBAAoB,GAAG,gBAAgB,CACzC,WAAW,EAAE,kBAAkB,IAAI,KAAK,CAAC,eAAe,CAC3D,CAAC;QACF,IAAI,oBAAoB,KAAK,UAAU,EAAE,CAAC;YACtC,SAAS;QACb,CAAC;QAED,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxC,qEAAqE;QACrE,uBAAuB;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC5D,IAAI,CAAC;YACD,GAAG,IAAI,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,UAAU,EAAE,CAAC;wBACT,IAAI,EAAE,aAAa,CAAC,kBAAkB;wBACtC,OAAO,EACH,gEAAgE;wBACpE,IAAI,EAAE,mBAAmB,CAAC,0BAA0B;wBACpD,MAAM,EAAE,cAAc;wBACtB,OAAO,EAAE,KAAK;qBACjB,CAAC;aACL,CAAC;QACN,CAAC;IACL,CAAC;IAED,oDAAoD;IACpD,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;IAEpC,OAAO,EAAE,GAAG,EAAE,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function hasAllExecutionAddresses(trade) {
|
|
2
|
+
return trade.srcChainAuthorityAddress !== undefined
|
|
3
|
+
&& trade.dstChainTokenOutRecipient !== undefined
|
|
4
|
+
&& trade.dstChainAuthorityAddress !== undefined;
|
|
5
|
+
}
|
|
6
|
+
export function hasAnyExecutionAddress(trade) {
|
|
7
|
+
return trade.srcChainAuthorityAddress !== undefined
|
|
8
|
+
|| trade.dstChainTokenOutRecipient !== undefined
|
|
9
|
+
|| trade.dstChainAuthorityAddress !== undefined;
|
|
10
|
+
}
|
|
11
|
+
export function isQuoteModeRequest(trades) {
|
|
12
|
+
return !trades.every(hasAllExecutionAddresses);
|
|
13
|
+
}
|
|
14
|
+
export function hasUnverifiableQuoteGrouping(trades) {
|
|
15
|
+
return isQuoteModeRequest(trades) && trades.some(hasAnyExecutionAddress);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=quote-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quote-mode.js","sourceRoot":"","sources":["../../../src/helpers/quote-mode.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,wBAAwB,CAAC,KAAmB;IACxD,OAAO,KAAK,CAAC,wBAAwB,KAAK,SAAS;WAC5C,KAAK,CAAC,yBAAyB,KAAK,SAAS;WAC7C,KAAK,CAAC,wBAAwB,KAAK,SAAS,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAmB;IACtD,OAAO,KAAK,CAAC,wBAAwB,KAAK,SAAS;WAC5C,KAAK,CAAC,yBAAyB,KAAK,SAAS;WAC7C,KAAK,CAAC,wBAAwB,KAAK,SAAS,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA+B;IAC9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,MAA+B;IACxE,OAAO,kBAAkB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAC7E,CAAC"}
|
|
@@ -7,14 +7,15 @@ export const SYNTHETIC_NATIVE_WRAP_INTENT_ID = "wrap";
|
|
|
7
7
|
// In this path the response intent is only a container for the Wrap action; it
|
|
8
8
|
// is not a normal signed intent and intentionally has a minimal token shape.
|
|
9
9
|
export function isSyntheticNativeWrapBundle(request, response) {
|
|
10
|
-
if (!isSyntheticNativeWrapRequest(request))
|
|
11
|
-
return false;
|
|
12
10
|
if (response.trades.length !== 1 || response.intents.length !== 1)
|
|
13
11
|
return false;
|
|
14
|
-
|
|
12
|
+
const responseHasSyntheticWrapMarkers = (response.trades[0].relatedIntentId === SYNTHETIC_NATIVE_WRAP_INTENT_ID
|
|
15
13
|
&& response.intents[0].intent.intentId === SYNTHETIC_NATIVE_WRAP_INTENT_ID);
|
|
14
|
+
if (!responseHasSyntheticWrapMarkers)
|
|
15
|
+
return false;
|
|
16
|
+
return isSyntheticNativeWrapRequest(request, responseHasSyntheticWrapMarkers);
|
|
16
17
|
}
|
|
17
|
-
function isSyntheticNativeWrapRequest(request) {
|
|
18
|
+
function isSyntheticNativeWrapRequest(request, responseHasSyntheticWrapMarkers) {
|
|
18
19
|
if (request.enableAccountAbstraction)
|
|
19
20
|
return false;
|
|
20
21
|
if (request.trades.length !== 1)
|
|
@@ -34,19 +35,18 @@ function isSyntheticNativeWrapRequest(request) {
|
|
|
34
35
|
return false;
|
|
35
36
|
if (!addressEquals(realChainId, wrapped, trade.dstChainTokenOut))
|
|
36
37
|
return false;
|
|
37
|
-
return authorityMatchesRecipient(
|
|
38
|
+
return authorityMatchesRecipient(trade, realChainId, responseHasSyntheticWrapMarkers);
|
|
38
39
|
}
|
|
39
|
-
function authorityMatchesRecipient(
|
|
40
|
-
const trade = request.trades[0];
|
|
40
|
+
function authorityMatchesRecipient(trade, realChainId, responseHasSyntheticWrapMarkers) {
|
|
41
41
|
if (trade.srcChainAuthorityAddress === undefined && trade.dstChainTokenOutRecipient === undefined) {
|
|
42
42
|
return true;
|
|
43
43
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return false;
|
|
47
|
-
if (trade.srcChainAuthorityAddress === undefined || trade.dstChainTokenOutRecipient === undefined) {
|
|
48
|
-
return false;
|
|
44
|
+
if (trade.srcChainAuthorityAddress !== undefined && trade.dstChainTokenOutRecipient !== undefined) {
|
|
45
|
+
return addressEquals(realChainId, trade.srcChainAuthorityAddress, trade.dstChainTokenOutRecipient);
|
|
49
46
|
}
|
|
50
|
-
|
|
47
|
+
// Quote-mode requests may omit one execution-side address. A synthetic
|
|
48
|
+
// wrap-marked response proves the missing address was resolved to the same
|
|
49
|
+
// execution identity before the response was built.
|
|
50
|
+
return responseHasSyntheticWrapMarkers;
|
|
51
51
|
}
|
|
52
52
|
//# sourceMappingURL=synthetic-native-wrap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthetic-native-wrap.js","sourceRoot":"","sources":["../../../src/helpers/synthetic-native-wrap.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"synthetic-native-wrap.js","sourceRoot":"","sources":["../../../src/helpers/synthetic-native-wrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,WAAW,GAEd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAExE,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAEtD,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,UAAU,2BAA2B,CACvC,OAA8B,EAC9B,QAAgC;IAEhC,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEhF,MAAM,+BAA+B,GAAG,CACpC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,KAAK,+BAA+B;WACnE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,+BAA+B,CAC7E,CAAC;IACF,IAAI,CAAC,+BAA+B;QAAE,OAAO,KAAK,CAAC;IAEnD,OAAO,4BAA4B,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,4BAA4B,CACjC,OAA8B,EAC9B,+BAAwC;IAExC,IAAI,OAAO,CAAC,wBAAwB;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE9C,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAExD,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,cAAc,CAAC,WAAW,CAAC,KAAK,WAAW,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAClE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAErE,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC/E,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC;QAAE,OAAO,KAAK,CAAC;IAE/E,OAAO,yBAAyB,CAAC,KAAK,EAAE,WAAW,EAAE,+BAA+B,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,yBAAyB,CAC9B,KAAmB,EACnB,WAAoB,EACpB,+BAAwC;IAExC,IAAI,KAAK,CAAC,wBAAwB,KAAK,SAAS,IAAI,KAAK,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;QAChG,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,CAAC,wBAAwB,KAAK,SAAS,IAAI,KAAK,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;QAChG,OAAO,aAAa,CAChB,WAAW,EACX,KAAK,CAAC,wBAAwB,EAC9B,KAAK,CAAC,yBAAyB,CAClC,CAAC;IACN,CAAC;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,oDAAoD;IACpD,OAAO,+BAA+B,CAAC;AAC3C,CAAC"}
|
package/dist/esm/helpers/zod.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
1
2
|
export function formatPath(segments) {
|
|
2
3
|
return segments.reduce((result, segment) => {
|
|
3
4
|
if (typeof segment === "number")
|
|
@@ -6,4 +7,50 @@ export function formatPath(segments) {
|
|
|
6
7
|
return result ? `${result}.${key}` : key;
|
|
7
8
|
}, "");
|
|
8
9
|
}
|
|
10
|
+
export function nullAsUndefined(value) {
|
|
11
|
+
return value === null ? undefined : value;
|
|
12
|
+
}
|
|
13
|
+
export function nullableOptional(schema) {
|
|
14
|
+
return z.preprocess(nullAsUndefined, schema.optional());
|
|
15
|
+
}
|
|
16
|
+
export function apiBoolean(value) {
|
|
17
|
+
if (value === undefined)
|
|
18
|
+
return undefined;
|
|
19
|
+
if (value === null)
|
|
20
|
+
return null;
|
|
21
|
+
return Boolean(value);
|
|
22
|
+
}
|
|
23
|
+
export function apiBooleanSchema() {
|
|
24
|
+
return z.preprocess(apiBoolean, z.boolean());
|
|
25
|
+
}
|
|
26
|
+
export function optionalApiBooleanSchema() {
|
|
27
|
+
return z.preprocess(value => value === null ? undefined : apiBoolean(value), z.boolean().optional());
|
|
28
|
+
}
|
|
29
|
+
export function defaultedApiBooleanSchema(defaultValue) {
|
|
30
|
+
return z.preprocess(apiBoolean, z.boolean().optional()).default(defaultValue);
|
|
31
|
+
}
|
|
32
|
+
function apiScalarString(value) {
|
|
33
|
+
if (value === undefined || value === null)
|
|
34
|
+
return value;
|
|
35
|
+
if (typeof value === "string")
|
|
36
|
+
return value;
|
|
37
|
+
if (typeof value === "number" || typeof value === "boolean")
|
|
38
|
+
return String(value);
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
export function apiStringSchema() {
|
|
42
|
+
return z.preprocess(apiScalarString, z.string());
|
|
43
|
+
}
|
|
44
|
+
function apiNumber(value) {
|
|
45
|
+
if (value === undefined || value === null)
|
|
46
|
+
return value;
|
|
47
|
+
if (typeof value === "number")
|
|
48
|
+
return value;
|
|
49
|
+
if (typeof value === "string" || typeof value === "boolean")
|
|
50
|
+
return Number(value);
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
export function apiNumberSchema() {
|
|
54
|
+
return z.preprocess(apiNumber, z.number());
|
|
55
|
+
}
|
|
9
56
|
//# sourceMappingURL=zod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../../../src/helpers/zod.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,QAAuB;IAC9C,OAAO,QAAQ,CAAC,MAAM,CAAS,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;QAC/C,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,GAAG,MAAM,IAAI,OAAO,GAAG,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC"}
|
|
1
|
+
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../../../src/helpers/zod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,UAAU,CAAC,QAAuB;IAC9C,OAAO,QAAQ,CAAC,MAAM,CAAS,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;QAC/C,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,GAAG,MAAM,IAAI,OAAO,GAAG,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC1C,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAsB,MAAS;IAC3D,OAAO,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC5B,OAAO,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,wBAAwB;IACpC,OAAO,CAAC,CAAC,UAAU,CACf,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,EACvD,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CACzB,CAAC;AACN,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,YAAqB;IAC3D,OAAO,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACnC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAClF,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,OAAO,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC7B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAClF,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,OAAO,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { apiNumberSchema, apiBooleanSchema, apiStringSchema, defaultedApiBooleanSchema, nullableOptional, optionalApiBooleanSchema, } from "../helpers/zod.js";
|
|
2
3
|
import { TradingAlgorithm, ApproveAmountFlag, ApprovalMode, BundleHookType, PlaceholderType, } from "./enums.js";
|
|
3
4
|
export const RequestGasCompensationInfoSchema = z.object({
|
|
4
|
-
tokenAddress:
|
|
5
|
+
tokenAddress: apiStringSchema(),
|
|
5
6
|
chainId: z.number(),
|
|
6
|
-
sender:
|
|
7
|
+
sender: apiStringSchema(),
|
|
7
8
|
});
|
|
8
9
|
// tokenAddress and address are required only for eager placeholders.
|
|
9
10
|
// Deferred placeholders are filled at submit time, so trade-group fields are not needed.
|
|
10
11
|
export const RequestPlaceholderSchema = z.object({
|
|
11
|
-
nameVariable:
|
|
12
|
-
tokenAddress:
|
|
13
|
-
address:
|
|
14
|
-
additionalAmount:
|
|
15
|
-
type: z.enum(PlaceholderType)
|
|
12
|
+
nameVariable: apiStringSchema(),
|
|
13
|
+
tokenAddress: nullableOptional(apiStringSchema()),
|
|
14
|
+
address: nullableOptional(apiStringSchema()),
|
|
15
|
+
additionalAmount: nullableOptional(apiStringSchema()),
|
|
16
|
+
type: nullableOptional(z.enum(PlaceholderType)),
|
|
16
17
|
}).superRefine((placeholder, ctx) => {
|
|
17
18
|
const isEager = placeholder.type === undefined || placeholder.type === PlaceholderType.Eager;
|
|
18
19
|
if (!isEager)
|
|
@@ -34,37 +35,51 @@ export const RequestPlaceholderSchema = z.object({
|
|
|
34
35
|
});
|
|
35
36
|
export const RequestHookV2Schema = z.object({
|
|
36
37
|
chainId: z.number(),
|
|
37
|
-
from:
|
|
38
|
-
to:
|
|
39
|
-
data:
|
|
40
|
-
value:
|
|
41
|
-
isAtomic:
|
|
38
|
+
from: apiStringSchema(),
|
|
39
|
+
to: nullableOptional(apiStringSchema()),
|
|
40
|
+
data: apiStringSchema(),
|
|
41
|
+
value: nullableOptional(apiStringSchema()),
|
|
42
|
+
isAtomic: apiBooleanSchema(),
|
|
42
43
|
placeHolders: z.array(RequestPlaceholderSchema),
|
|
43
|
-
gasCompensationInfo: RequestGasCompensationInfoSchema
|
|
44
|
-
type: z.enum(BundleHookType)
|
|
45
|
-
gasLimit:
|
|
44
|
+
gasCompensationInfo: nullableOptional(RequestGasCompensationInfoSchema),
|
|
45
|
+
type: nullableOptional(z.enum(BundleHookType)),
|
|
46
|
+
gasLimit: nullableOptional(apiStringSchema()),
|
|
46
47
|
});
|
|
47
48
|
export const RequestHookV1Schema = z.object({
|
|
48
49
|
chainId: z.number(),
|
|
49
|
-
from:
|
|
50
|
-
to:
|
|
51
|
-
data:
|
|
52
|
-
value:
|
|
53
|
-
isAtomic:
|
|
54
|
-
tokenAddress:
|
|
55
|
-
preparePreRequiredActions:
|
|
56
|
-
additionalAmountForPlaceholder:
|
|
57
|
-
allowedSender:
|
|
58
|
-
version: z.string()
|
|
50
|
+
from: apiStringSchema(),
|
|
51
|
+
to: apiStringSchema(),
|
|
52
|
+
data: apiStringSchema(),
|
|
53
|
+
value: apiStringSchema(),
|
|
54
|
+
isAtomic: apiBooleanSchema(),
|
|
55
|
+
tokenAddress: apiStringSchema(),
|
|
56
|
+
preparePreRequiredActions: optionalApiBooleanSchema(),
|
|
57
|
+
additionalAmountForPlaceholder: nullableOptional(apiStringSchema()),
|
|
58
|
+
allowedSender: nullableOptional(apiStringSchema()),
|
|
59
|
+
version: nullableOptional(z.string()),
|
|
59
60
|
});
|
|
60
61
|
export const RequestHookSchema = z.union([RequestHookV2Schema, RequestHookV1Schema]);
|
|
61
62
|
export function isRequestHookV2(hook) {
|
|
62
63
|
return "placeHolders" in hook;
|
|
63
64
|
}
|
|
64
65
|
export const RequestCostTokenSchema = z.object({
|
|
65
|
-
chainId:
|
|
66
|
-
tokenAddress:
|
|
66
|
+
chainId: apiNumberSchema(),
|
|
67
|
+
tokenAddress: apiStringSchema(),
|
|
67
68
|
});
|
|
69
|
+
// The API applies field-specific string transforms for these two trade flags.
|
|
70
|
+
// Generic request booleans use API-compatible Boolean() coercion below; these
|
|
71
|
+
// fields keep their custom API semantics instead.
|
|
72
|
+
const RequestPrependOperatingExpensesSchema = z.preprocess(value => value === null ? undefined : typeof value === "string" ? value !== "false" : value, z.boolean().optional());
|
|
73
|
+
const RequestPtpSchema = z.preprocess(value => value === null ? undefined : typeof value === "string" ? value === "true" : value, z.boolean().optional());
|
|
74
|
+
// Explicit null has the same wire semantics as an omitted expirationTimestamp:
|
|
75
|
+
// the server chooses the effective bundle/on-chain expiration values.
|
|
76
|
+
const RequestExpirationTimestampSchema = nullableOptional(z.number());
|
|
77
|
+
// Some request fields are normalized by the API before validation. Mirror only
|
|
78
|
+
// those compatibility conversions at the schema boundary; semantic validators
|
|
79
|
+
// still check the normalized values below.
|
|
80
|
+
const RequestOptionalAmountStringSchema = nullableOptional(apiStringSchema());
|
|
81
|
+
const RequestTradeReferralCodeSchema = nullableOptional(z.union([z.number(), z.string()]));
|
|
82
|
+
const RequestHookListSchema = z.preprocess(value => value ? value : undefined, z.array(RequestHookSchema).optional());
|
|
68
83
|
// Free-form integrator metadata. Echoed back in the response unchanged;
|
|
69
84
|
// validated for round-trip equality.
|
|
70
85
|
export const RequestMetadataEntrySchema = z.object({
|
|
@@ -84,40 +99,40 @@ export const RequestTradeSchema = z.object({
|
|
|
84
99
|
srcChainTokenInAmount: z.string(),
|
|
85
100
|
dstChainId: z.number(),
|
|
86
101
|
dstChainTokenOut: z.string(),
|
|
87
|
-
dstChainTokenOutAmount:
|
|
88
|
-
srcChainAuthorityAddress: z.string()
|
|
89
|
-
dstChainTokenOutRecipient: z.string()
|
|
90
|
-
dstChainAuthorityAddress: z.string()
|
|
91
|
-
partnerFeeBps: z.number()
|
|
92
|
-
allowedTaker: z.string()
|
|
93
|
-
dlnHook: z.string()
|
|
94
|
-
prependOperatingExpenses:
|
|
95
|
-
ptp:
|
|
96
|
-
dlnMetadata: z.string()
|
|
97
|
-
referralCode:
|
|
98
|
-
srcAllowedCancelBeneficiary: z.string()
|
|
102
|
+
dstChainTokenOutAmount: RequestOptionalAmountStringSchema,
|
|
103
|
+
srcChainAuthorityAddress: nullableOptional(z.string()),
|
|
104
|
+
dstChainTokenOutRecipient: nullableOptional(z.string()),
|
|
105
|
+
dstChainAuthorityAddress: nullableOptional(z.string()),
|
|
106
|
+
partnerFeeBps: nullableOptional(z.number()),
|
|
107
|
+
allowedTaker: nullableOptional(z.string()),
|
|
108
|
+
dlnHook: nullableOptional(z.string()),
|
|
109
|
+
prependOperatingExpenses: RequestPrependOperatingExpensesSchema,
|
|
110
|
+
ptp: RequestPtpSchema,
|
|
111
|
+
dlnMetadata: nullableOptional(z.string()),
|
|
112
|
+
referralCode: RequestTradeReferralCodeSchema,
|
|
113
|
+
srcAllowedCancelBeneficiary: nullableOptional(z.string()),
|
|
99
114
|
// Field is intentionally absent from the public API schema but is accepted
|
|
100
115
|
// by the server and round-trips into the response intent. Security-critical
|
|
101
116
|
// for execution-mode validation.
|
|
102
|
-
srcAllowedSender: z.string()
|
|
117
|
+
srcAllowedSender: nullableOptional(z.string()),
|
|
103
118
|
});
|
|
104
119
|
export const BundleCreationRequestSchema = z.object({
|
|
105
120
|
requestId: z.string(),
|
|
106
|
-
expirationTimestamp:
|
|
107
|
-
enableAccountAbstraction:
|
|
108
|
-
isAtomic:
|
|
121
|
+
expirationTimestamp: RequestExpirationTimestampSchema,
|
|
122
|
+
enableAccountAbstraction: apiBooleanSchema(),
|
|
123
|
+
isAtomic: defaultedApiBooleanSchema(true),
|
|
109
124
|
tradingAlgorithm: z.enum(TradingAlgorithm).optional().default(TradingAlgorithm.Market),
|
|
110
|
-
approveAmountFlag: z.enum(ApproveAmountFlag)
|
|
111
|
-
approvalMode: z.enum(ApprovalMode)
|
|
112
|
-
useRefill:
|
|
113
|
-
userId: z.string()
|
|
114
|
-
referralCode: z.number()
|
|
125
|
+
approveAmountFlag: nullableOptional(z.enum(ApproveAmountFlag)),
|
|
126
|
+
approvalMode: nullableOptional(z.enum(ApprovalMode)),
|
|
127
|
+
useRefill: optionalApiBooleanSchema(),
|
|
128
|
+
userId: nullableOptional(z.string()),
|
|
129
|
+
referralCode: nullableOptional(z.number()),
|
|
115
130
|
trades: z.array(RequestTradeSchema),
|
|
116
|
-
preHooks:
|
|
117
|
-
postHooks:
|
|
118
|
-
costToken: RequestCostTokenSchema
|
|
119
|
-
clientMetadata: z.array(RequestMetadataEntrySchema)
|
|
120
|
-
totalDstAmount: z.string()
|
|
121
|
-
allowPartialFill:
|
|
131
|
+
preHooks: RequestHookListSchema,
|
|
132
|
+
postHooks: RequestHookListSchema,
|
|
133
|
+
costToken: nullableOptional(RequestCostTokenSchema),
|
|
134
|
+
clientMetadata: nullableOptional(z.array(RequestMetadataEntrySchema)),
|
|
135
|
+
totalDstAmount: nullableOptional(z.string()),
|
|
136
|
+
allowPartialFill: optionalApiBooleanSchema(),
|
|
122
137
|
});
|
|
123
138
|
//# sourceMappingURL=request.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/types/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,GAClB,MAAM,SAAS,CAAC;AAEjB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/types/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,yBAAyB,EACzB,gBAAgB,EAChB,wBAAwB,GAC3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,GAClB,MAAM,SAAS,CAAC;AAEjB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,YAAY,EAAE,eAAe,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,eAAe,EAAE;CAC5B,CAAC,CAAC;AAEH,qEAAqE;AACrE,yFAAyF;AACzF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,YAAY,EAAE,eAAe,EAAE;IAC/B,YAAY,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IACjD,OAAO,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IAC5C,gBAAgB,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IACrD,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;CAClD,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;IAChC,MAAM,OAAO,GACT,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,KAAK,eAAe,CAAC,KAAK,CAAC;IAEjF,IAAI,CAAC,OAAO;QAAE,OAAO;IAErB,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACzC,GAAG,CAAC,QAAQ,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,CAAC,cAAc,CAAC;SACzB,CAAC,CAAC;IACP,CAAC;IAED,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACpC,GAAG,CAAC,QAAQ,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,oCAAoC;YAC7C,IAAI,EAAE,CAAC,SAAS,CAAC;SACpB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,eAAe,EAAE;IACvB,EAAE,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IACvC,IAAI,EAAE,eAAe,EAAE;IACvB,KAAK,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IAC1C,QAAQ,EAAE,gBAAgB,EAAE;IAC5B,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC;IAC/C,mBAAmB,EAAE,gBAAgB,CAAC,gCAAgC,CAAC;IACvE,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9C,QAAQ,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;CAChD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,eAAe,EAAE;IACvB,EAAE,EAAE,eAAe,EAAE;IACrB,IAAI,EAAE,eAAe,EAAE;IACvB,KAAK,EAAE,eAAe,EAAE;IACxB,QAAQ,EAAE,gBAAgB,EAAE;IAC5B,YAAY,EAAE,eAAe,EAAE;IAC/B,yBAAyB,EAAE,wBAAwB,EAAE;IACrD,8BAA8B,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IACnE,aAAa,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;IAClD,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAErF,MAAM,UAAU,eAAe,CAAC,IAAiB;IAC7C,OAAO,cAAc,IAAI,IAAI,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,eAAe,EAAE;IAC1B,YAAY,EAAE,eAAe,EAAE;CAClC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,8EAA8E;AAC9E,kDAAkD;AAClD,MAAM,qCAAqC,GAAG,CAAC,CAAC,UAAU,CACtD,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,EAC3F,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CACzB,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,CACjC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,EAC1F,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CACzB,CAAC;AAEF,+EAA+E;AAC/E,sEAAsE;AACtE,MAAM,gCAAgC,GAAG,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAEtE,+EAA+E;AAC/E,8EAA8E;AAC9E,2CAA2C;AAC3C,MAAM,iCAAiC,GAAG,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAAC;AAC9E,MAAM,8BAA8B,GAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3F,MAAM,qBAAqB,GAAG,CAAC,CAAC,UAAU,CACtC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAClC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CACxC,CAAC;AAEF,wEAAwE;AACxE,qCAAqC;AACrC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,6EAA6E;AAC7E,2EAA2E;AAC3E,0EAA0E;AAC1E,6EAA6E;AAC7E,iFAAiF;AACjF,sDAAsD;AACtD,oCAAoC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,sBAAsB,EAAE,iCAAiC;IACzD,wBAAwB,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACtD,yBAAyB,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACvD,wBAAwB,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACtD,aAAa,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3C,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC1C,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACrC,wBAAwB,EAAE,qCAAqC;IAC/D,GAAG,EAAE,gBAAgB;IACrB,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzC,YAAY,EAAE,8BAA8B;IAC5C,2BAA2B,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzD,2EAA2E;IAC3E,4EAA4E;IAC5E,iCAAiC;IACjC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,mBAAmB,EAAE,gCAAgC;IACrD,wBAAwB,EAAE,gBAAgB,EAAE;IAC5C,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;IACzC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC;IACtF,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9D,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpD,SAAS,EAAE,wBAAwB,EAAE;IACrC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACnC,QAAQ,EAAE,qBAAqB;IAC/B,SAAS,EAAE,qBAAqB;IAChC,SAAS,EAAE,gBAAgB,CAAC,sBAAsB,CAAC;IACnD,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACrE,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC5C,gBAAgB,EAAE,wBAAwB,EAAE;CAC/C,CAAC,CAAC"}
|