@chainlink/ccip-sdk 0.95.0 → 0.97.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/all-chains.d.ts +23 -0
- package/dist/all-chains.d.ts.map +1 -0
- package/dist/all-chains.js +24 -0
- package/dist/all-chains.js.map +1 -0
- package/dist/api/index.d.ts +31 -19
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +46 -25
- package/dist/api/index.js.map +1 -1
- package/dist/api/types.d.ts +24 -30
- package/dist/api/types.d.ts.map +1 -1
- package/dist/aptos/exec.d.ts +2 -2
- package/dist/aptos/exec.d.ts.map +1 -1
- package/dist/aptos/exec.js.map +1 -1
- package/dist/aptos/hasher.d.ts.map +1 -1
- package/dist/aptos/hasher.js +1 -1
- package/dist/aptos/hasher.js.map +1 -1
- package/dist/aptos/index.d.ts +43 -15
- package/dist/aptos/index.d.ts.map +1 -1
- package/dist/aptos/index.js +112 -105
- package/dist/aptos/index.js.map +1 -1
- package/dist/aptos/types.d.ts +2 -19
- package/dist/aptos/types.d.ts.map +1 -1
- package/dist/aptos/types.js +0 -11
- package/dist/aptos/types.js.map +1 -1
- package/dist/chain.d.ts +734 -174
- package/dist/chain.d.ts.map +1 -1
- package/dist/chain.js +216 -31
- package/dist/chain.js.map +1 -1
- package/dist/commits.d.ts +4 -6
- package/dist/commits.d.ts.map +1 -1
- package/dist/commits.js +4 -4
- package/dist/commits.js.map +1 -1
- package/dist/errors/CCIPError.d.ts +33 -4
- package/dist/errors/CCIPError.d.ts.map +1 -1
- package/dist/errors/CCIPError.js +33 -4
- package/dist/errors/CCIPError.js.map +1 -1
- package/dist/errors/codes.d.ts +5 -0
- package/dist/errors/codes.d.ts.map +1 -1
- package/dist/errors/codes.js +5 -1
- package/dist/errors/codes.js.map +1 -1
- package/dist/errors/index.d.ts +2 -2
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +2 -2
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/recovery.d.ts.map +1 -1
- package/dist/errors/recovery.js +6 -1
- package/dist/errors/recovery.js.map +1 -1
- package/dist/errors/specialized.d.ts +1702 -121
- package/dist/errors/specialized.d.ts.map +1 -1
- package/dist/errors/specialized.js +1729 -125
- package/dist/errors/specialized.js.map +1 -1
- package/dist/errors/utils.d.ts.map +1 -1
- package/dist/errors/utils.js +0 -1
- package/dist/errors/utils.js.map +1 -1
- package/dist/evm/abi/OffRamp_2_0.d.ts +764 -0
- package/dist/evm/abi/OffRamp_2_0.d.ts.map +1 -0
- package/dist/evm/abi/OffRamp_2_0.js +744 -0
- package/dist/evm/abi/OffRamp_2_0.js.map +1 -0
- package/dist/evm/abi/OnRamp_2_0.d.ts +925 -0
- package/dist/evm/abi/OnRamp_2_0.d.ts.map +1 -0
- package/dist/evm/abi/OnRamp_2_0.js +992 -0
- package/dist/evm/abi/OnRamp_2_0.js.map +1 -0
- package/dist/evm/const.d.ts +12 -2
- package/dist/evm/const.d.ts.map +1 -1
- package/dist/evm/const.js +8 -2
- package/dist/evm/const.js.map +1 -1
- package/dist/evm/errors.d.ts.map +1 -1
- package/dist/evm/errors.js +7 -2
- package/dist/evm/errors.js.map +1 -1
- package/dist/evm/extra-args.d.ts +25 -0
- package/dist/evm/extra-args.d.ts.map +1 -0
- package/dist/evm/extra-args.js +309 -0
- package/dist/evm/extra-args.js.map +1 -0
- package/dist/evm/gas.d.ts.map +1 -1
- package/dist/evm/gas.js +7 -12
- package/dist/evm/gas.js.map +1 -1
- package/dist/evm/hasher.d.ts.map +1 -1
- package/dist/evm/hasher.js +23 -13
- package/dist/evm/hasher.js.map +1 -1
- package/dist/evm/index.d.ts +140 -35
- package/dist/evm/index.d.ts.map +1 -1
- package/dist/evm/index.js +306 -226
- package/dist/evm/index.js.map +1 -1
- package/dist/evm/messages.d.ts +59 -5
- package/dist/evm/messages.d.ts.map +1 -1
- package/dist/evm/messages.js +210 -0
- package/dist/evm/messages.js.map +1 -1
- package/dist/evm/offchain.js.map +1 -1
- package/dist/evm/types.d.ts +7 -2
- package/dist/evm/types.d.ts.map +1 -1
- package/dist/evm/types.js +22 -1
- package/dist/evm/types.js.map +1 -1
- package/dist/execution.d.ts +62 -22
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +102 -51
- package/dist/execution.js.map +1 -1
- package/dist/extra-args.d.ts +113 -4
- package/dist/extra-args.d.ts.map +1 -1
- package/dist/extra-args.js +38 -3
- package/dist/extra-args.js.map +1 -1
- package/dist/gas.d.ts +31 -5
- package/dist/gas.d.ts.map +1 -1
- package/dist/gas.js +43 -9
- package/dist/gas.js.map +1 -1
- package/dist/index.d.ts +11 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -8
- package/dist/index.js.map +1 -1
- package/dist/requests.d.ts +101 -22
- package/dist/requests.d.ts.map +1 -1
- package/dist/requests.js +115 -24
- package/dist/requests.js.map +1 -1
- package/dist/selectors.d.ts.map +1 -1
- package/dist/selectors.js +24 -0
- package/dist/selectors.js.map +1 -1
- package/dist/shared/bcs-codecs.d.ts +61 -0
- package/dist/shared/bcs-codecs.d.ts.map +1 -0
- package/dist/shared/bcs-codecs.js +102 -0
- package/dist/shared/bcs-codecs.js.map +1 -0
- package/dist/shared/constants.d.ts +3 -0
- package/dist/shared/constants.d.ts.map +1 -0
- package/dist/shared/constants.js +3 -0
- package/dist/shared/constants.js.map +1 -0
- package/dist/solana/exec.d.ts +2 -2
- package/dist/solana/exec.d.ts.map +1 -1
- package/dist/solana/exec.js.map +1 -1
- package/dist/solana/index.d.ts +148 -30
- package/dist/solana/index.d.ts.map +1 -1
- package/dist/solana/index.js +137 -44
- package/dist/solana/index.js.map +1 -1
- package/dist/sui/hasher.d.ts.map +1 -1
- package/dist/sui/hasher.js +1 -1
- package/dist/sui/hasher.js.map +1 -1
- package/dist/sui/index.d.ts +49 -19
- package/dist/sui/index.d.ts.map +1 -1
- package/dist/sui/index.js +76 -43
- package/dist/sui/index.js.map +1 -1
- package/dist/sui/manuallyExec/encoder.d.ts +2 -2
- package/dist/sui/manuallyExec/encoder.d.ts.map +1 -1
- package/dist/sui/manuallyExec/encoder.js.map +1 -1
- package/dist/sui/manuallyExec/index.d.ts +2 -2
- package/dist/sui/manuallyExec/index.d.ts.map +1 -1
- package/dist/ton/exec.d.ts +2 -2
- package/dist/ton/exec.d.ts.map +1 -1
- package/dist/ton/exec.js.map +1 -1
- package/dist/ton/index.d.ts +66 -27
- package/dist/ton/index.d.ts.map +1 -1
- package/dist/ton/index.js +172 -47
- package/dist/ton/index.js.map +1 -1
- package/dist/ton/send.d.ts +52 -0
- package/dist/ton/send.d.ts.map +1 -0
- package/dist/ton/send.js +166 -0
- package/dist/ton/send.js.map +1 -0
- package/dist/ton/types.d.ts +2 -2
- package/dist/ton/types.d.ts.map +1 -1
- package/dist/ton/types.js.map +1 -1
- package/dist/types.d.ts +148 -12
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +79 -4
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +92 -7
- package/dist/utils.js.map +1 -1
- package/package.json +16 -11
- package/src/all-chains.ts +26 -0
- package/src/api/index.ts +58 -34
- package/src/api/types.ts +24 -31
- package/src/aptos/exec.ts +2 -2
- package/src/aptos/hasher.ts +1 -1
- package/src/aptos/index.ts +127 -129
- package/src/aptos/types.ts +2 -15
- package/src/chain.ts +837 -191
- package/src/commits.ts +9 -9
- package/src/errors/CCIPError.ts +33 -4
- package/src/errors/codes.ts +5 -1
- package/src/errors/index.ts +2 -1
- package/src/errors/recovery.ts +9 -1
- package/src/errors/specialized.ts +1745 -132
- package/src/errors/utils.ts +0 -1
- package/src/evm/abi/OffRamp_2_0.ts +743 -0
- package/src/evm/abi/OnRamp_2_0.ts +991 -0
- package/src/evm/const.ts +10 -3
- package/src/evm/errors.ts +6 -2
- package/src/evm/extra-args.ts +360 -0
- package/src/evm/gas.ts +14 -13
- package/src/evm/hasher.ts +30 -18
- package/src/evm/index.ts +376 -281
- package/src/evm/messages.ts +323 -11
- package/src/evm/offchain.ts +2 -2
- package/src/evm/types.ts +20 -2
- package/src/execution.ts +126 -71
- package/src/extra-args.ts +118 -4
- package/src/gas.ts +44 -11
- package/src/index.ts +14 -11
- package/src/requests.ts +128 -24
- package/src/selectors.ts +24 -0
- package/src/shared/bcs-codecs.ts +132 -0
- package/src/shared/constants.ts +2 -0
- package/src/solana/exec.ts +4 -4
- package/src/solana/index.ts +170 -82
- package/src/sui/hasher.ts +1 -1
- package/src/sui/index.ts +88 -56
- package/src/sui/manuallyExec/encoder.ts +2 -2
- package/src/sui/manuallyExec/index.ts +2 -2
- package/src/ton/exec.ts +2 -2
- package/src/ton/index.ts +220 -58
- package/src/ton/send.ts +222 -0
- package/src/ton/types.ts +2 -2
- package/src/types.ts +173 -30
- package/src/utils.ts +91 -7
- package/dist/aptos/utils.d.ts +0 -12
- package/dist/aptos/utils.d.ts.map +0 -1
- package/dist/aptos/utils.js +0 -15
- package/dist/aptos/utils.js.map +0 -1
- package/src/aptos/utils.ts +0 -24
package/dist/evm/gas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gas.js","sourceRoot":"","sources":["../../src/evm/gas.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,WAAW,EACX,uBAAuB,EACvB,OAAO,EACP,YAAY,GACb,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,OAAO,QAAQ,MAAM,8BAA8B,CAAA;AACnD,OAAO,SAAS,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE3D,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC;IACxC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,aAAa;IACnB,eAAe,EAAE,YAAY;IAC7B,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,CAAE,CAAC,MAAM,CAAC,KAAK,CAC7F,CAAC,EACD,CAAC,CACF;IACD,OAAO,EAAE,EAAE;CACZ,CAAC,CAAA;AAGF
|
|
1
|
+
{"version":3,"file":"gas.js","sourceRoot":"","sources":["../../src/evm/gas.ts"],"names":[],"mappings":"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"}
|
package/dist/evm/hasher.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hasher.d.ts","sourceRoot":"","sources":["../../src/evm/hasher.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAyB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,KAAK,EAAe,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAMvE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,MAAM,EAC3B,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,GACb,UAAU,CAAC,OAAO,WAAW,CAAC,IAAI,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC,CAgE/D;AAID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,MAAM,EAC3B,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,EAAE,MAAgB,EAAE,GAAE,UAAe,GACpC,UAAU,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"hasher.d.ts","sourceRoot":"","sources":["../../src/evm/hasher.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,UAAU,EAAyB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,KAAK,EAAe,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAMvE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,MAAM,EAC3B,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,GACb,UAAU,CAAC,OAAO,WAAW,CAAC,IAAI,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC,CAgE/D;AAID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,MAAM,EAC3B,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,EAAE,MAAgB,EAAE,GAAE,UAAe,GACpC,UAAU,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,CA2FrC"}
|
package/dist/evm/hasher.js
CHANGED
|
@@ -69,18 +69,31 @@ const ANY_2_EVM_MESSAGE_HASH = id('Any2EVMMessageHashV1');
|
|
|
69
69
|
* @returns Leaf hasher function.
|
|
70
70
|
*/
|
|
71
71
|
export function getV16LeafHasher(sourceChainSelector, destChainSelector, onRamp, { logger = console } = {}) {
|
|
72
|
+
const onRampBytes = getAddressBytes(onRamp);
|
|
73
|
+
// Addresses ≤32 bytes (EVM 20B, Aptos/Solana/Sui 32B) are zero-padded to 32 bytes;
|
|
74
|
+
// Addresses >32 bytes (e.g., TON 36B) are used as raw bytes without padding
|
|
75
|
+
const onRampForHash = onRampBytes.length <= 32 ? zeroPadValue(onRampBytes, 32) : onRampBytes;
|
|
72
76
|
const metadataInput = concat([
|
|
73
77
|
ANY_2_EVM_MESSAGE_HASH,
|
|
74
78
|
toBeHex(sourceChainSelector, 32),
|
|
75
79
|
toBeHex(destChainSelector, 32),
|
|
76
|
-
keccak256(
|
|
80
|
+
keccak256(onRampForHash),
|
|
77
81
|
]);
|
|
78
82
|
return (message) => {
|
|
79
83
|
logger.debug('Message', message);
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
// Non-EVM sources (e.g., TON) embed gasLimit on the message during parsing,
|
|
85
|
+
// since their extraArgs format differs. EVM sources decode from extraArgs.
|
|
86
|
+
let gasLimit;
|
|
87
|
+
if ('gasLimit' in message) {
|
|
88
|
+
gasLimit = message.gasLimit;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
const parsedArgs = decodeExtraArgs(message.extraArgs, networkInfo(message.sourceChainSelector).family);
|
|
92
|
+
if (!parsedArgs ||
|
|
93
|
+
(parsedArgs._tag !== 'EVMExtraArgsV1' && parsedArgs._tag !== 'EVMExtraArgsV2'))
|
|
94
|
+
throw new CCIPExtraArgsInvalidError('EVM', message.extraArgs);
|
|
95
|
+
gasLimit = parsedArgs.gasLimit;
|
|
96
|
+
}
|
|
84
97
|
const tokenAmounts = message.tokenAmounts.map((ta) => ({
|
|
85
98
|
...ta,
|
|
86
99
|
sourcePoolAddress: zeroPadValue(getAddressBytes(ta.sourcePoolAddress), 32),
|
|
@@ -95,14 +108,11 @@ export function getV16LeafHasher(sourceChainSelector, destChainSelector, onRamp,
|
|
|
95
108
|
'uint64 sequenceNumber',
|
|
96
109
|
'uint256 gasLimit',
|
|
97
110
|
'uint64 nonce',
|
|
98
|
-
], [
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
message.nonce,
|
|
104
|
-
]);
|
|
105
|
-
const sender = zeroPadValue(getAddressBytes(message.sender), 32);
|
|
111
|
+
], [message.messageId, message.receiver, message.sequenceNumber, gasLimit, message.nonce]);
|
|
112
|
+
const senderBytes = getAddressBytes(message.sender);
|
|
113
|
+
// Addresses ≤32 bytes (EVM 20B, Aptos/Solana/Sui 32B) are zero-padded to 32 bytes;
|
|
114
|
+
// Addresses >32 bytes (e.g., TON 36B) are used as raw bytes without padding
|
|
115
|
+
const sender = senderBytes.length <= 32 ? zeroPadValue(senderBytes, 32) : senderBytes;
|
|
106
116
|
const packedValues = defaultAbiCoder.encode([
|
|
107
117
|
'bytes32 leafDomainSeparator',
|
|
108
118
|
'bytes32 metadataHash',
|
package/dist/evm/hasher.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hasher.js","sourceRoot":"","sources":["../../src/evm/hasher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAGrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAmB,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAE5E,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,mBAAmB,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAA;AAEtD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,mBAA2B,EAC3B,iBAAyB,EACzB,MAAc;IAEd,MAAM,YAAY,GAAG,SAAS,CAC5B,MAAM,CAAC;QACL,mBAAmB;QACnB,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;QAChC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAC9B,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;KACzB,CAAC,CACH,CAAA;IAED,OAAO,CAAC,OAAuE,EAAU,EAAE;QACzF,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAC1C,CAAC,wCAAwC,CAAC,EAC1C,CAAC,OAAO,CAAC,YAAY,CAAC,CACvB,CAAA;QAED,MAAM,sBAAsB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAA;QAE7F,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAC5C;YACE,gBAAgB;YAChB,kBAAkB;YAClB,uBAAuB;YACvB,kBAAkB;YAClB,aAAa;YACb,cAAc;YACd,kBAAkB;YAClB,wBAAwB;SACzB,EACD;YACE,OAAO,CAAC,MAAM;YACd,OAAO,CAAC,QAAQ;YAChB,OAAO,CAAC,cAAc;YACtB,OAAO,CAAC,QAAQ;YAChB,OAAO,CAAC,MAAM;YACd,OAAO,CAAC,KAAK;YACb,OAAO,CAAC,QAAQ;YAChB,OAAO,CAAC,cAAc;SACvB,CACF,CAAA;QAED,MAAM,mBAAmB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAA;QAEtD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CACzC;YACE,4BAA4B;YAC5B,sBAAsB;YACtB,6BAA6B;YAC7B,kBAAkB;YAClB,0BAA0B;YAC1B,6BAA6B;SAC9B,EACD;YACE,qBAAqB;YACrB,YAAY;YACZ,mBAAmB;YACnB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;YACvB,SAAS,CAAC,aAAa,CAAC;YACxB,SAAS,CAAC,sBAAsB,CAAC;SAClC,CACF,CAAA;QAED,OAAO,SAAS,CAAC,YAAY,CAAC,CAAA;IAChC,CAAC,CAAA;AACH,CAAC;AAED,MAAM,sBAAsB,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,mBAA2B,EAC3B,iBAAyB,EACzB,MAAc,EACd,EAAE,MAAM,GAAG,OAAO,KAAiB,EAAE;IAErC,MAAM,
|
|
1
|
+
{"version":3,"file":"hasher.js","sourceRoot":"","sources":["../../src/evm/hasher.ts"],"names":[],"mappings":"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"}
|
package/dist/evm/index.d.ts
CHANGED
|
@@ -1,23 +1,49 @@
|
|
|
1
1
|
import { type BytesLike, type JsonRpcApiProvider, type Log, type TransactionReceipt } from 'ethers';
|
|
2
2
|
import type { PickDeep } from 'type-fest';
|
|
3
3
|
import { type ChainContext, type GetBalanceOpts, type LogFilter, type TokenPoolRemote, Chain } from '../chain.ts';
|
|
4
|
-
import
|
|
4
|
+
import type { ExtraArgs } from '../extra-args.ts';
|
|
5
5
|
import type { LeafHasher } from '../hasher/common.ts';
|
|
6
|
-
import { type CCIPExecution, type CCIPMessage, type CCIPRequest, type ChainTransaction, type CommitReport, type ExecutionReceipt, type Lane, type NetworkInfo, type OffchainTokenData, type WithLogger, ChainFamily } from '../types.ts';
|
|
7
|
-
import type
|
|
6
|
+
import { type CCIPExecution, type CCIPMessage, type CCIPRequest, type CCIPVerifications, type ChainTransaction, type CommitReport, type ExecutionReceipt, type Lane, type NetworkInfo, type OffchainTokenData, type WithLogger, ChainFamily } from '../types.ts';
|
|
7
|
+
import { type MessageV1, type TokenTransferV1, decodeMessageV1 } from './messages.ts';
|
|
8
|
+
export { decodeMessageV1 };
|
|
9
|
+
export type { MessageV1, TokenTransferV1 };
|
|
10
|
+
import { type UnsignedEVMTx } from './types.ts';
|
|
8
11
|
export type { UnsignedEVMTx };
|
|
9
|
-
declare const EVMExtraArgsV1 = "tuple(uint256 gasLimit)";
|
|
10
|
-
declare const EVMExtraArgsV2 = "tuple(uint256 gasLimit, bool allowOutOfOrderExecution)";
|
|
11
|
-
declare const SVMExtraArgsV1 = "tuple(uint32 computeUnits, uint64 accountIsWritableBitmap, bool allowOutOfOrderExecution, bytes32 tokenReceiver, bytes32[] accounts)";
|
|
12
|
-
declare const SuiExtraArgsV1 = "tuple(uint256 gasLimit, bool allowOutOfOrderExecution, bytes32 tokenReceiver, bytes32[] receiverObjectIds)";
|
|
13
12
|
/**
|
|
14
13
|
* EVM chain implementation supporting Ethereum-compatible networks.
|
|
14
|
+
*
|
|
15
|
+
* Provides methods for sending CCIP cross-chain messages, querying message
|
|
16
|
+
* status, fetching fee quotes, and manually executing pending messages on
|
|
17
|
+
* Ethereum Virtual Machine compatible chains.
|
|
18
|
+
*
|
|
19
|
+
* @example Create from RPC URL
|
|
20
|
+
* ```typescript
|
|
21
|
+
* import { EVMChain } from '@chainlink/ccip-sdk'
|
|
22
|
+
*
|
|
23
|
+
* const chain = await EVMChain.fromUrl('https://rpc.sepolia.org')
|
|
24
|
+
* console.log(`Connected to: ${chain.network.name}`)
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @example Query messages in a transaction
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const requests = await chain.getMessagesInTx('0xabc123...')
|
|
30
|
+
* for (const req of requests) {
|
|
31
|
+
* console.log(`Message ID: ${req.message.messageId}`)
|
|
32
|
+
* }
|
|
33
|
+
* ```
|
|
15
34
|
*/
|
|
16
35
|
export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
17
36
|
static readonly family: "EVM";
|
|
18
37
|
static readonly decimals = 18;
|
|
19
38
|
provider: JsonRpcApiProvider;
|
|
20
39
|
readonly destroy$: Promise<void>;
|
|
40
|
+
private noncesPromises;
|
|
41
|
+
/**
|
|
42
|
+
* Cache of current nonces per wallet address.
|
|
43
|
+
* Used internally by {@link sendMessage} and {@link execute} to manage transaction ordering.
|
|
44
|
+
* Can be inspected for debugging or manually adjusted if needed.
|
|
45
|
+
*/
|
|
46
|
+
nonces: Record<string, number>;
|
|
21
47
|
/**
|
|
22
48
|
* Creates a new EVMChain instance.
|
|
23
49
|
* @param provider - JSON-RPC provider for the EVM network.
|
|
@@ -28,6 +54,13 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
28
54
|
* Expose ethers provider's `listAccounts`, if provider supports it
|
|
29
55
|
*/
|
|
30
56
|
listAccounts(): Promise<string[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Get the next nonce for a wallet address and increment the internal counter.
|
|
59
|
+
* Fetches from the network on first call, then uses cached value.
|
|
60
|
+
* @param address - Wallet address to get nonce for
|
|
61
|
+
* @returns The next available nonce
|
|
62
|
+
*/
|
|
63
|
+
nextNonce(address: string): Promise<number>;
|
|
31
64
|
/**
|
|
32
65
|
* Creates a JSON-RPC provider from a URL.
|
|
33
66
|
* @param url - WebSocket (wss://) or HTTP (https://) endpoint URL.
|
|
@@ -43,9 +76,20 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
43
76
|
static fromProvider(provider: JsonRpcApiProvider, ctx?: ChainContext): Promise<EVMChain>;
|
|
44
77
|
/**
|
|
45
78
|
* Creates an EVMChain instance from an RPC URL.
|
|
79
|
+
*
|
|
46
80
|
* @param url - WebSocket (wss://) or HTTP (https://) endpoint URL.
|
|
47
|
-
* @param ctx - context containing logger.
|
|
48
|
-
* @returns A new EVMChain instance.
|
|
81
|
+
* @param ctx - Optional context containing logger and API client configuration.
|
|
82
|
+
* @returns A new EVMChain instance connected to the specified network.
|
|
83
|
+
* @throws {@link CCIPChainNotFoundError} if chain cannot be identified from chainId
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* // HTTP connection
|
|
88
|
+
* const chain = await EVMChain.fromUrl('https://rpc.sepolia.org')
|
|
89
|
+
*
|
|
90
|
+
* // With custom logger
|
|
91
|
+
* const chain = await EVMChain.fromUrl(url, { logger: customLogger })
|
|
92
|
+
* ```
|
|
49
93
|
*/
|
|
50
94
|
static fromUrl(url: string, ctx?: ChainContext): Promise<EVMChain>;
|
|
51
95
|
/** {@inheritDoc Chain.getBlockTimestamp} */
|
|
@@ -57,15 +101,15 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
57
101
|
onlyFallback?: boolean;
|
|
58
102
|
}): AsyncIterableIterator<Log>;
|
|
59
103
|
/** {@inheritDoc Chain.getMessagesInBatch} */
|
|
60
|
-
getMessagesInBatch<R extends PickDeep<CCIPRequest, 'lane' | `log.${'topics' | 'address' | 'blockNumber'}` | 'message.sequenceNumber'>>(request: R,
|
|
61
|
-
page?: number;
|
|
62
|
-
}): Promise<R['message'][]>;
|
|
104
|
+
getMessagesInBatch<R extends PickDeep<CCIPRequest, 'lane' | `log.${'topics' | 'address' | 'blockNumber'}` | 'message.sequenceNumber'>>(request: R, range: Pick<CommitReport, 'minSeqNr' | 'maxSeqNr'>, opts?: Pick<LogFilter, 'page'>): Promise<R['message'][]>;
|
|
63
105
|
/** {@inheritDoc Chain.typeAndVersion} */
|
|
64
106
|
typeAndVersion(address: string): Promise<[type: string, version: string, typeAndVersion: string, suffix?: string | undefined]>;
|
|
65
107
|
/**
|
|
66
108
|
* Decodes a CCIP message from a log event.
|
|
67
109
|
* @param log - Log event with topics and data.
|
|
68
110
|
* @returns Decoded CCIPMessage or undefined if not a valid CCIP message.
|
|
111
|
+
* @throws {@link CCIPLogDataInvalidError} if log data is not valid bytes
|
|
112
|
+
* @throws {@link CCIPMessageDecodeError} if message cannot be decoded
|
|
69
113
|
*/
|
|
70
114
|
static decodeMessage(log: {
|
|
71
115
|
topics?: readonly string[];
|
|
@@ -76,6 +120,8 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
76
120
|
* @param log - Log event with topics and data.
|
|
77
121
|
* @param lane - Lane info (required for CCIP v1.5 and earlier).
|
|
78
122
|
* @returns Array of CommitReport or undefined if not a valid commit event.
|
|
123
|
+
* @throws {@link CCIPLogDataInvalidError} if log data is not valid bytes
|
|
124
|
+
* @throws {@link CCIPVersionRequiresLaneError} if CCIP v1.5 event but no lane provided
|
|
79
125
|
*/
|
|
80
126
|
static decodeCommits(log: {
|
|
81
127
|
topics?: readonly string[];
|
|
@@ -85,6 +131,7 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
85
131
|
* Decodes an execution receipt from a log event.
|
|
86
132
|
* @param log - Log event with topics and data.
|
|
87
133
|
* @returns ExecutionReceipt or undefined if not a valid execution event.
|
|
134
|
+
* @throws {@link CCIPLogDataInvalidError} if log data is not valid bytes
|
|
88
135
|
*/
|
|
89
136
|
static decodeReceipt(log: {
|
|
90
137
|
topics?: readonly string[];
|
|
@@ -95,14 +142,23 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
95
142
|
* @param extraArgs - Encoded extra arguments bytes.
|
|
96
143
|
* @returns Decoded extra arguments with tag, or undefined if unknown format.
|
|
97
144
|
*/
|
|
98
|
-
static decodeExtraArgs(extraArgs: BytesLike): (EVMExtraArgsV1 & {
|
|
99
|
-
_tag:
|
|
100
|
-
}) | (
|
|
101
|
-
|
|
102
|
-
}
|
|
103
|
-
_tag:
|
|
104
|
-
}) | (
|
|
105
|
-
_tag:
|
|
145
|
+
static decodeExtraArgs(extraArgs: BytesLike): (import("../extra-args.ts").EVMExtraArgsV1 & {
|
|
146
|
+
_tag: "EVMExtraArgsV1";
|
|
147
|
+
}) | (import("../extra-args.ts").EVMExtraArgsV1 & {
|
|
148
|
+
allowOutOfOrderExecution: boolean;
|
|
149
|
+
} & {
|
|
150
|
+
_tag: "EVMExtraArgsV2";
|
|
151
|
+
}) | (import("../extra-args.ts").GenericExtraArgsV3 & {
|
|
152
|
+
_tag: "GenericExtraArgsV3";
|
|
153
|
+
}) | (import("../extra-args.ts").SVMExtraArgsV1 & {
|
|
154
|
+
_tag: "SVMExtraArgsV1";
|
|
155
|
+
}) | (import("../extra-args.ts").EVMExtraArgsV1 & {
|
|
156
|
+
allowOutOfOrderExecution: boolean;
|
|
157
|
+
} & {
|
|
158
|
+
tokenReceiver: string;
|
|
159
|
+
receiverObjectIds: string[];
|
|
160
|
+
} & {
|
|
161
|
+
_tag: "SuiExtraArgsV1";
|
|
106
162
|
}) | undefined;
|
|
107
163
|
/**
|
|
108
164
|
* Encodes extra arguments for a CCIP message.
|
|
@@ -114,6 +170,7 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
114
170
|
* Converts bytes to a checksummed EVM address.
|
|
115
171
|
* @param bytes - Bytes to convert (must be 20 bytes or 32 bytes with leading zeros).
|
|
116
172
|
* @returns Checksummed EVM address.
|
|
173
|
+
* @throws {@link CCIPAddressInvalidEvmError} if bytes cannot be converted to a valid EVM address
|
|
117
174
|
*/
|
|
118
175
|
static getAddress(bytes: BytesLike): string;
|
|
119
176
|
/**
|
|
@@ -124,11 +181,18 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
124
181
|
* Gets lane configuration from an OnRamp contract.
|
|
125
182
|
* @param onRamp - OnRamp contract address.
|
|
126
183
|
* @returns Lane configuration.
|
|
184
|
+
* @throws {@link CCIPContractTypeInvalidError} if contract doesn't have destChainSelector
|
|
127
185
|
*/
|
|
128
186
|
getLaneForOnRamp(onRamp: string): Promise<Lane>;
|
|
129
|
-
/**
|
|
187
|
+
/**
|
|
188
|
+
* {@inheritDoc Chain.getRouterForOnRamp}
|
|
189
|
+
* @throws {@link CCIPVersionUnsupportedError} if OnRamp version is not supported
|
|
190
|
+
*/
|
|
130
191
|
getRouterForOnRamp(onRamp: string, destChainSelector: bigint): Promise<string>;
|
|
131
|
-
/**
|
|
192
|
+
/**
|
|
193
|
+
* {@inheritDoc Chain.getRouterForOffRamp}
|
|
194
|
+
* @throws {@link CCIPVersionUnsupportedError} if OffRamp version is not supported
|
|
195
|
+
*/
|
|
132
196
|
getRouterForOffRamp(offRamp: string, sourceChainSelector: bigint): Promise<string>;
|
|
133
197
|
/** {@inheritDoc Chain.getNativeTokenForRouter} */
|
|
134
198
|
getNativeTokenForRouter(router: string): Promise<string>;
|
|
@@ -136,9 +200,26 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
136
200
|
getOffRampsForRouter(router: string, sourceChainSelector: bigint): Promise<string[]>;
|
|
137
201
|
/** {@inheritDoc Chain.getOnRampForRouter} */
|
|
138
202
|
getOnRampForRouter(router: string, destChainSelector: bigint): Promise<string>;
|
|
139
|
-
/**
|
|
140
|
-
|
|
141
|
-
|
|
203
|
+
/**
|
|
204
|
+
* {@inheritDoc Chain.getOnRampsForOffRamp}
|
|
205
|
+
* @throws {@link CCIPVersionUnsupportedError} if OffRamp version is not supported
|
|
206
|
+
*/
|
|
207
|
+
getOnRampsForOffRamp(offRamp: string, sourceChainSelector: bigint): Promise<string[]>;
|
|
208
|
+
/**
|
|
209
|
+
* Fetch the CommitStore set in OffRamp config (CCIP v1.5 and earlier).
|
|
210
|
+
* For CCIP v1.6 and later, it should return the offRamp address.
|
|
211
|
+
*
|
|
212
|
+
* @param offRamp - OffRamp contract address
|
|
213
|
+
* @returns Promise resolving to CommitStore address
|
|
214
|
+
*
|
|
215
|
+
* @example Get commit store
|
|
216
|
+
* ```typescript
|
|
217
|
+
* const commitStore = await dest.getCommitStoreForOffRamp(offRampAddress)
|
|
218
|
+
* // For v1.6+, commitStore === offRampAddress
|
|
219
|
+
* ```
|
|
220
|
+
* @throws {@link CCIPVersionUnsupportedError} if OffRamp version is not supported
|
|
221
|
+
* @internal
|
|
222
|
+
*/
|
|
142
223
|
getCommitStoreForOffRamp(offRamp: string): Promise<string>;
|
|
143
224
|
/** {@inheritDoc Chain.getTokenForTokenPool} */
|
|
144
225
|
getTokenForTokenPool(tokenPool: string): Promise<string>;
|
|
@@ -155,6 +236,8 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
155
236
|
* @param lane - Lane configuration.
|
|
156
237
|
* @param ctx - Context object containing logger.
|
|
157
238
|
* @returns Leaf hasher function.
|
|
239
|
+
* @throws {@link CCIPSourceChainUnsupportedError} if source chain is not EVM for v1.2/v1.5
|
|
240
|
+
* @throws {@link CCIPHasherVersionUnsupportedError} if lane version is not supported
|
|
158
241
|
*/
|
|
159
242
|
static getDestLeafHasher({ sourceChainSelector, destChainSelector, onRamp, version }: Lane, ctx?: WithLogger): LeafHasher;
|
|
160
243
|
/**
|
|
@@ -163,13 +246,18 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
163
246
|
* @returns OnRamp contract address.
|
|
164
247
|
*/
|
|
165
248
|
_getSomeOnRampFor(router: string): Promise<string>;
|
|
166
|
-
/**
|
|
249
|
+
/**
|
|
250
|
+
* {@inheritDoc Chain.getTokenAdminRegistryFor}
|
|
251
|
+
* @throws {@link CCIPContractNotRouterError} if address is not a Router, OnRamp, or OffRamp
|
|
252
|
+
*/
|
|
167
253
|
getTokenAdminRegistryFor(address: string): Promise<string>;
|
|
168
254
|
/**
|
|
169
255
|
* Gets the FeeQuoter contract address for a given Router or Ramp.
|
|
170
256
|
* @internal
|
|
171
257
|
* @param address - Router or Ramp contract address.
|
|
172
258
|
* @returns FeeQuoter contract address.
|
|
259
|
+
* @throws {@link CCIPContractNotRouterError} if address is not a Router, OnRamp, or OffRamp
|
|
260
|
+
* @throws {@link CCIPVersionFeatureUnavailableError} if contract version is below v1.6
|
|
173
261
|
*/
|
|
174
262
|
getFeeQuoterFor(address: string): Promise<string>;
|
|
175
263
|
/** {@inheritDoc Chain.getFee} */
|
|
@@ -180,17 +268,26 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
180
268
|
* generation), followed by a ccipSend TransactionRequest
|
|
181
269
|
*/
|
|
182
270
|
generateUnsignedSendMessage(opts: Parameters<Chain['generateUnsignedSendMessage']>[0]): Promise<UnsignedEVMTx>;
|
|
183
|
-
/**
|
|
271
|
+
/**
|
|
272
|
+
* {@inheritDoc Chain.sendMessage}
|
|
273
|
+
* @throws {@link CCIPWalletInvalidError} if wallet is not a valid Signer
|
|
274
|
+
*/
|
|
184
275
|
sendMessage(opts: Parameters<Chain['sendMessage']>[0]): Promise<CCIPRequest>;
|
|
185
276
|
/** {@inheritDoc Chain.getOffchainTokenData} */
|
|
186
277
|
getOffchainTokenData(request: CCIPRequest): Promise<OffchainTokenData[]>;
|
|
187
278
|
/**
|
|
188
|
-
* {@inheritDoc Chain.
|
|
279
|
+
* {@inheritDoc Chain.generateUnsignedExecute}
|
|
189
280
|
* @returns array containing one unsigned `manuallyExecute` TransactionRequest object
|
|
281
|
+
* @throws {@link CCIPVersionUnsupportedError} if OffRamp version is not supported
|
|
190
282
|
*/
|
|
191
|
-
|
|
192
|
-
/**
|
|
193
|
-
|
|
283
|
+
generateUnsignedExecute(opts: Parameters<Chain['generateUnsignedExecute']>[0]): Promise<UnsignedEVMTx>;
|
|
284
|
+
/**
|
|
285
|
+
* {@inheritDoc Chain.execute}
|
|
286
|
+
* @throws {@link CCIPWalletInvalidError} if wallet is not a valid Signer
|
|
287
|
+
* @throws {@link CCIPExecTxNotConfirmedError} if execution transaction fails to confirm
|
|
288
|
+
* @throws {@link CCIPExecTxRevertedError} if execution transaction reverts
|
|
289
|
+
*/
|
|
290
|
+
execute(opts: Parameters<Chain['execute']>[0]): Promise<CCIPExecution>;
|
|
194
291
|
/**
|
|
195
292
|
* Parses raw data into typed structures.
|
|
196
293
|
* @param data - Raw data to parse.
|
|
@@ -206,21 +303,27 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
206
303
|
getSupportedTokens(registry: string, opts?: {
|
|
207
304
|
page?: number;
|
|
208
305
|
}): Promise<string[]>;
|
|
209
|
-
/**
|
|
306
|
+
/**
|
|
307
|
+
* {@inheritDoc Chain.getRegistryTokenConfig}
|
|
308
|
+
* @throws {@link CCIPTokenNotConfiguredError} if token is not configured in registry
|
|
309
|
+
*/
|
|
210
310
|
getRegistryTokenConfig(registry: string, token: string): Promise<{
|
|
211
311
|
administrator: string;
|
|
212
312
|
pendingAdministrator?: string;
|
|
213
313
|
tokenPool?: string;
|
|
214
314
|
}>;
|
|
215
|
-
/** {@inheritDoc Chain.
|
|
216
|
-
|
|
315
|
+
/** {@inheritDoc Chain.getTokenPoolConfig} */
|
|
316
|
+
getTokenPoolConfig(tokenPool: string): Promise<{
|
|
217
317
|
token: string;
|
|
218
318
|
router: string;
|
|
219
319
|
typeAndVersion: string;
|
|
220
320
|
}>;
|
|
221
321
|
/** {@inheritDoc Chain.getTokenPoolRemotes} */
|
|
222
322
|
getTokenPoolRemotes(tokenPool: string, remoteChainSelector?: bigint): Promise<Record<string, TokenPoolRemote>>;
|
|
223
|
-
/**
|
|
323
|
+
/**
|
|
324
|
+
* {@inheritDoc Chain.getFeeTokens}
|
|
325
|
+
* @throws {@link CCIPVersionUnsupportedError} if OnRamp version is not supported
|
|
326
|
+
*/
|
|
224
327
|
getFeeTokens(router: string): Promise<{
|
|
225
328
|
[k: string]: {
|
|
226
329
|
decimals: number;
|
|
@@ -228,6 +331,8 @@ export declare class EVMChain extends Chain<typeof ChainFamily.EVM> {
|
|
|
228
331
|
name: string;
|
|
229
332
|
};
|
|
230
333
|
}>;
|
|
334
|
+
/** {@inheritDoc Chain.getVerifications} */
|
|
335
|
+
getVerifications(opts: Parameters<Chain['getVerifications']>[0]): Promise<CCIPVerifications>;
|
|
231
336
|
/** {@inheritDoc Chain.getExecutionReceipts} */
|
|
232
337
|
getExecutionReceipts(opts: Parameters<Chain['getExecutionReceipts']>[0]): AsyncIterableIterator<CCIPExecution>;
|
|
233
338
|
/** {@inheritDoc Chain.estimateReceiveExecution} */
|
package/dist/evm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evm/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,kBAAkB,EACvB,KAAK,GAAG,EAGR,KAAK,kBAAkB,EAcxB,MAAM,QAAQ,CAAA;AAGf,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,WAAW,CAAA;AAEtD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,EACN,MAAM,aAAa,CAAA;AAsBpB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAErD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EAEjB,KAAK,gBAAgB,EAErB,KAAK,IAAI,EAET,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAEf,WAAW,EAEZ,MAAM,aAAa,CAAA;AAuCpB,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,eAAe,EAChB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,CAAA;AAG1C,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,YAAY,CAAA;AAC/D,YAAY,EAAE,aAAa,EAAE,CAAA;AA8B7B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,QAAS,SAAQ,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,CAAC;IAIzD,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAkB;IACxC,MAAM,CAAC,QAAQ,CAAC,QAAQ,MAAK;IAE7B,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,OAAO,CAAC,cAAc,CAAkC;IACxD;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9B;;;;OAIG;gBACS,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,YAAY;IAsClF;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIvC;;;;;OAKG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUjD;;;;OAIG;WACU,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAsBnE;;;;;OAKG;WACU,YAAY,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;IAS9F;;;;;;;;;;;;;;;;OAgBG;WACU,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIxE,4CAA4C;IACtC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAMrE,yCAAyC;IACnC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAclF,kCAAkC;IAC3B,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,qBAAqB,CAAC,GAAG,CAAC;IAM1F,6CAA6C;IACpC,kBAAkB,CACzB,CAAC,SAAS,QAAQ,CAChB,WAAW,EACX,MAAM,GAAG,OAAO,QAAQ,GAAG,SAAS,GAAG,aAAa,EAAE,GAAG,wBAAwB,CAClF,EAED,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,UAAU,CAAC,EAClD,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;IAY1B,yCAAyC;IACnC,cAAc,CAAC,OAAO,EAAE,MAAM;IAWpC;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE;QACxB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;QAC1B,IAAI,EAAE,OAAO,CAAA;KACd,GAAG,WAAW,GAAG,SAAS;IA6B3B;;;;;;;OAOG;IACH,MAAM,CAAC,aAAa,CAClB,GAAG,EAAE;QAAE,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,EAClD,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,GACrC,YAAY,EAAE,GAAG,SAAS;IA+C7B;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE;QACxB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;QAC1B,IAAI,EAAE,OAAO,CAAA;KACd,GAAG,gBAAgB,GAAG,SAAS;IAsBhC;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS;;;;;;;;;;;;;;;;;;IAI3C;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM;IAI3D;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAc3C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE;IAI/C;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrD;;;OAGG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsCpF;;;OAGG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCxF,kDAAkD;IAC5C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS9D,+CAA+C;IACzC,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAY1F,6CAA6C;IACvC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASpF;;;OAGG;IACG,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA4C3F;;;;;;;;;;;;;;OAcG;IACG,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBhE,+CAA+C;IACzC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS9D,uCAAuC;IACjC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAc9F,qCAAqC;IAC/B,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAevD;;;;;;;OAOG;IACH,MAAM,CAAC,iBAAiB,CACtB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EACjE,GAAG,CAAC,EAAE,UAAU,GACf,UAAU;IAcb;;;;OAIG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAaxD;;;OAGG;IACG,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBhE;;;;;;;OAOG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBvD,iCAAiC;IAC3B,MAAM,CAAC,EACX,MAAM,EACN,iBAAiB,EACjB,OAAO,GACR,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBnD;;;;OAIG;IACG,2BAA2B,CAC/B,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAAC,GACxD,OAAO,CAAC,aAAa,CAAC;IAqEzB;;;OAGG;IACG,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IA2ClF,+CAA+C;IAC/C,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAIxE;;;;OAIG;IACG,uBAAuB,CAC3B,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,GACpD,OAAO,CAAC,aAAa,CAAC;IAsJzB;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAwBnD;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO;IAI1B;;;;;OAKG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAiBvF;;;OAGG;IACG,sBAAsB,CAC1B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QACT,aAAa,EAAE,MAAM,CAAA;QACrB,oBAAoB,CAAC,EAAE,MAAM,CAAA;QAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAC;IAqBF,6CAA6C;IACvC,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACnD,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;QACd,cAAc,EAAE,MAAM,CAAA;KACvB,CAAC;IAoBF,8CAA8C;IACxC,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IA2E3C;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM;;sBAloBsB,MAAM;oBAAU,MAAM;kBAAQ,MAAM;;;IAsrB3F,2CAA2C;IAC5B,gBAAgB,CAC7B,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,iBAAiB,CAAC;IAuD7B,+CAA+C;IAC/B,oBAAoB,CAClC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,GACjD,qBAAqB,CAAC,aAAa,CAAC;IAkCvC,mDAAmD;IACpC,wBAAwB,CACrC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAClE,OAAO,CAAC,MAAM,CAAC;CAOnB"}
|