@1stdex/first-sdk 1.0.90-beta.2 → 1.0.90
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/dist/cjs/calls/batch/index.js +1 -3
- package/dist/cjs/calls/batch/index.js.map +1 -1
- package/dist/cjs/calls/batch/prepare-claim-real-tokens.js +2 -190
- package/dist/cjs/calls/batch/prepare-claim-real-tokens.js.map +1 -1
- package/dist/cjs/calls/index.js +1 -3
- package/dist/cjs/calls/index.js.map +1 -1
- package/dist/cjs/constants/chain-configs/addresses.js +1 -1
- package/dist/esm/calls/batch/index.js +1 -1
- package/dist/esm/calls/batch/index.js.map +1 -1
- package/dist/esm/calls/batch/prepare-claim-real-tokens.js +1 -261
- package/dist/esm/calls/batch/prepare-claim-real-tokens.js.map +1 -1
- package/dist/esm/calls/index.js +1 -1
- package/dist/esm/calls/index.js.map +1 -1
- package/dist/esm/constants/chain-configs/addresses.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/calls/batch/index.d.ts +1 -1
- package/dist/types/calls/batch/index.d.ts.map +1 -1
- package/dist/types/calls/batch/prepare-claim-real-tokens.d.ts +0 -73
- package/dist/types/calls/batch/prepare-claim-real-tokens.d.ts.map +1 -1
- package/dist/types/calls/index.d.ts +1 -1
- package/dist/types/calls/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NotEnoughClaimableError = exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.
|
|
3
|
+
exports.NotEnoughClaimableError = exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.NotEnoughFundsError = exports.prepareWithdraw = exports.prepareMarketOrderWithSetup = exports.prepareLimitOrderWithSetup = void 0;
|
|
4
4
|
var prepare_limit_order_with_setup_1 = require("./prepare-limit-order-with-setup");
|
|
5
5
|
Object.defineProperty(exports, "prepareLimitOrderWithSetup", { enumerable: true, get: function () { return prepare_limit_order_with_setup_1.prepareLimitOrderWithSetup; } });
|
|
6
6
|
var prepare_market_order_with_setup_1 = require("./prepare-market-order-with-setup");
|
|
@@ -9,8 +9,6 @@ var prepare_withdraw_1 = require("./prepare-withdraw");
|
|
|
9
9
|
Object.defineProperty(exports, "prepareWithdraw", { enumerable: true, get: function () { return prepare_withdraw_1.prepareWithdraw; } });
|
|
10
10
|
Object.defineProperty(exports, "NotEnoughFundsError", { enumerable: true, get: function () { return prepare_withdraw_1.NotEnoughFundsError; } });
|
|
11
11
|
var prepare_claim_real_tokens_1 = require("./prepare-claim-real-tokens");
|
|
12
|
-
Object.defineProperty(exports, "prepareClaimRealTokensSameChain", { enumerable: true, get: function () { return prepare_claim_real_tokens_1.prepareClaimRealTokensSameChain; } });
|
|
13
|
-
Object.defineProperty(exports, "prepareClaimRealTokensCrossChainLZ", { enumerable: true, get: function () { return prepare_claim_real_tokens_1.prepareClaimRealTokensCrossChainLZ; } });
|
|
14
12
|
Object.defineProperty(exports, "prepareClaimRealTokensCrossChainBridgeLZ", { enumerable: true, get: function () { return prepare_claim_real_tokens_1.prepareClaimRealTokensCrossChainBridgeLZ; } });
|
|
15
13
|
Object.defineProperty(exports, "NotEnoughClaimableError", { enumerable: true, get: function () { return prepare_claim_real_tokens_1.NotEnoughClaimableError; } });
|
|
16
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/calls/batch/index.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAArE,4IAAA,0BAA0B,OAAA;AACnC,qFAAgF;AAAvE,8IAAA,2BAA2B,OAAA;AACpC,uDAA0E;AAAjE,mHAAA,eAAe,OAAA;AAAE,uHAAA,mBAAmB,OAAA;AAC7C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/calls/batch/index.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAArE,4IAAA,0BAA0B,OAAA;AACnC,qFAAgF;AAAvE,8IAAA,2BAA2B,OAAA;AACpC,uDAA0E;AAAjE,mHAAA,eAAe,OAAA;AAAE,uHAAA,mBAAmB,OAAA;AAC7C,yEAGqC;AAFnC,qJAAA,wCAAwC,OAAA;AACxC,oIAAA,uBAAuB,OAAA"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.
|
|
3
|
+
exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.NotEnoughClaimableError = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const chain_1 = require("../../constants/chain-configs/chain");
|
|
6
6
|
const eids_1 = require("../../constants/chain-configs/eids");
|
|
7
7
|
const claimable_dex_vault_abi_1 = require("../../constants/abis/core/claimable-dex-vault-abi");
|
|
8
8
|
const mirror_token_abi_1 = require("../../constants/abis/core/mirror-token-abi");
|
|
9
|
-
const first_oft_1 = require("../../constants/abis/core/first_oft");
|
|
10
9
|
const layer_zero_sponsor_1 = require("../../constants/abis/core/layer-zero-sponsor");
|
|
11
10
|
const addresses_1 = require("../../constants/chain-configs/addresses");
|
|
12
|
-
const vault_1 = require("../../views/vault");
|
|
13
11
|
const erc20_1 = require("../../constants/abis/core/erc20");
|
|
12
|
+
const vault_1 = require("../../views/vault");
|
|
14
13
|
class NotEnoughClaimableError extends Error {
|
|
15
14
|
constructor(message, required, available) {
|
|
16
15
|
super(message);
|
|
@@ -31,193 +30,6 @@ class NotEnoughClaimableError extends Error {
|
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
32
|
exports.NotEnoughClaimableError = NotEnoughClaimableError;
|
|
34
|
-
const prepareClaimRealTokensSameChain = async ({ chainId, userAddress, mirrorTokenAddress, receivingAddress, options, }) => {
|
|
35
|
-
const publicClient = (0, viem_1.createPublicClient)({
|
|
36
|
-
chain: chain_1.CHAIN_MAP[chainId],
|
|
37
|
-
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
38
|
-
});
|
|
39
|
-
const vault = await (0, vault_1.getVault)({
|
|
40
|
-
chainId,
|
|
41
|
-
tokenAddress: mirrorTokenAddress,
|
|
42
|
-
...(options?.rpcUrl && { options: { rpcUrl: options.rpcUrl } }),
|
|
43
|
-
});
|
|
44
|
-
const contracts = [
|
|
45
|
-
{
|
|
46
|
-
address: vault.address,
|
|
47
|
-
abi: claimable_dex_vault_abi_1.CLAIMABLE_DEX_VAULT_ABI,
|
|
48
|
-
functionName: 'getClaimableAssets',
|
|
49
|
-
args: [userAddress],
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
address: mirrorTokenAddress,
|
|
53
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
54
|
-
functionName: 'getClaimableAmount',
|
|
55
|
-
args: [userAddress],
|
|
56
|
-
},
|
|
57
|
-
];
|
|
58
|
-
const results = await publicClient.multicall({
|
|
59
|
-
contracts,
|
|
60
|
-
});
|
|
61
|
-
const vaultClaimableAmount = results[0].result || 0n;
|
|
62
|
-
const mirrorTokenClaimableAmount = results[1].result || 0n;
|
|
63
|
-
const calls = [];
|
|
64
|
-
if (vaultClaimableAmount > 0n) {
|
|
65
|
-
calls.push({
|
|
66
|
-
to: vault.address,
|
|
67
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
68
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
69
|
-
functionName: 'claim',
|
|
70
|
-
args: [userAddress, vaultClaimableAmount],
|
|
71
|
-
}),
|
|
72
|
-
value: 0n,
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
const totalClaimableAmount = vaultClaimableAmount + mirrorTokenClaimableAmount;
|
|
76
|
-
if (totalClaimableAmount > 0n) {
|
|
77
|
-
calls.push({
|
|
78
|
-
to: mirrorTokenAddress,
|
|
79
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
80
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
81
|
-
functionName: 'claim',
|
|
82
|
-
args: [receivingAddress, totalClaimableAmount],
|
|
83
|
-
}),
|
|
84
|
-
value: 0n,
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
return calls;
|
|
88
|
-
};
|
|
89
|
-
exports.prepareClaimRealTokensSameChain = prepareClaimRealTokensSameChain;
|
|
90
|
-
const prepareClaimRealTokensCrossChainLZ = async ({ chainId, destinationChainId, userAddress, mirrorTokenAddress, receivingAddress, amount, options, }) => {
|
|
91
|
-
const publicClient = (0, viem_1.createPublicClient)({
|
|
92
|
-
chain: chain_1.CHAIN_MAP[chainId],
|
|
93
|
-
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
94
|
-
});
|
|
95
|
-
const vault = await (0, vault_1.getVault)({
|
|
96
|
-
chainId,
|
|
97
|
-
tokenAddress: mirrorTokenAddress,
|
|
98
|
-
...(options?.rpcUrl && { options: { rpcUrl: options.rpcUrl } }),
|
|
99
|
-
});
|
|
100
|
-
const ERC20_ABI = [
|
|
101
|
-
{
|
|
102
|
-
inputs: [{ internalType: 'address', name: 'account', type: 'address' }],
|
|
103
|
-
name: 'balanceOf',
|
|
104
|
-
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
105
|
-
stateMutability: 'view',
|
|
106
|
-
type: 'function',
|
|
107
|
-
},
|
|
108
|
-
];
|
|
109
|
-
const initialContracts = [
|
|
110
|
-
{
|
|
111
|
-
address: vault.address,
|
|
112
|
-
abi: claimable_dex_vault_abi_1.CLAIMABLE_DEX_VAULT_ABI,
|
|
113
|
-
functionName: 'getClaimableAssets',
|
|
114
|
-
args: [userAddress],
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
address: mirrorTokenAddress,
|
|
118
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
119
|
-
functionName: 'getClaimableAmount',
|
|
120
|
-
args: [userAddress],
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
address: mirrorTokenAddress,
|
|
124
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
125
|
-
functionName: 'realToken',
|
|
126
|
-
},
|
|
127
|
-
];
|
|
128
|
-
const initialResults = await publicClient.multicall({
|
|
129
|
-
contracts: initialContracts,
|
|
130
|
-
});
|
|
131
|
-
const vaultClaimableAmount = initialResults[0].result || 0n;
|
|
132
|
-
const mirrorTokenClaimableAmount = initialResults[1].result || 0n;
|
|
133
|
-
const realTokenAddress = initialResults[2].result;
|
|
134
|
-
const totalClaimableAmount = vaultClaimableAmount + mirrorTokenClaimableAmount;
|
|
135
|
-
const balanceContracts = [
|
|
136
|
-
{
|
|
137
|
-
address: realTokenAddress,
|
|
138
|
-
abi: ERC20_ABI,
|
|
139
|
-
functionName: 'balanceOf',
|
|
140
|
-
args: [userAddress],
|
|
141
|
-
},
|
|
142
|
-
];
|
|
143
|
-
const balanceResults = await publicClient.multicall({
|
|
144
|
-
contracts: balanceContracts,
|
|
145
|
-
});
|
|
146
|
-
const realTokenBalance = balanceResults[0].result || 0n;
|
|
147
|
-
const amountNeededToClaim = amount > realTokenBalance ? amount - realTokenBalance : 0n;
|
|
148
|
-
if (amountNeededToClaim > totalClaimableAmount) {
|
|
149
|
-
throw new NotEnoughClaimableError(`Insufficient funds: need ${amount} total, have ${realTokenBalance} in wallet, need to claim ${amountNeededToClaim}, but only ${totalClaimableAmount} claimable (mirror token: ${mirrorTokenClaimableAmount}, vault: ${vaultClaimableAmount})`, amountNeededToClaim, totalClaimableAmount);
|
|
150
|
-
}
|
|
151
|
-
const calls = [];
|
|
152
|
-
if (amountNeededToClaim > 0n) {
|
|
153
|
-
if (mirrorTokenClaimableAmount >= amountNeededToClaim) {
|
|
154
|
-
calls.push({
|
|
155
|
-
to: mirrorTokenAddress,
|
|
156
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
157
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
158
|
-
functionName: 'claim',
|
|
159
|
-
args: [userAddress, amountNeededToClaim],
|
|
160
|
-
}),
|
|
161
|
-
value: 0n,
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
else {
|
|
165
|
-
const amountFromVault = amountNeededToClaim - mirrorTokenClaimableAmount;
|
|
166
|
-
calls.push({
|
|
167
|
-
to: vault.address,
|
|
168
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
169
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
170
|
-
functionName: 'claim',
|
|
171
|
-
args: [userAddress, amountFromVault],
|
|
172
|
-
}),
|
|
173
|
-
value: 0n,
|
|
174
|
-
});
|
|
175
|
-
if (mirrorTokenClaimableAmount > 0n) {
|
|
176
|
-
calls.push({
|
|
177
|
-
to: mirrorTokenAddress,
|
|
178
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
179
|
-
abi: mirror_token_abi_1.MIRROR_TOKEN_ABI,
|
|
180
|
-
functionName: 'claim',
|
|
181
|
-
args: [userAddress, mirrorTokenClaimableAmount],
|
|
182
|
-
}),
|
|
183
|
-
value: 0n,
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
const receivingAddressBytes32 = `0x000000000000000000000000${receivingAddress.slice(2)}`;
|
|
189
|
-
const destinationEid = eids_1.CHAIN_EIDS[destinationChainId];
|
|
190
|
-
const sendParam = {
|
|
191
|
-
dstEid: destinationEid,
|
|
192
|
-
to: receivingAddressBytes32,
|
|
193
|
-
amountLD: amount,
|
|
194
|
-
minAmountLD: amount,
|
|
195
|
-
extraOptions: '0x',
|
|
196
|
-
composeMsg: '0x',
|
|
197
|
-
oftCmd: '0x',
|
|
198
|
-
};
|
|
199
|
-
const quoteFee = await publicClient.readContract({
|
|
200
|
-
address: realTokenAddress,
|
|
201
|
-
abi: first_oft_1.FIRST_OFT_ABI,
|
|
202
|
-
functionName: 'quoteSend',
|
|
203
|
-
args: [sendParam, false],
|
|
204
|
-
});
|
|
205
|
-
calls.push({
|
|
206
|
-
to: realTokenAddress,
|
|
207
|
-
data: (0, viem_1.encodeFunctionData)({
|
|
208
|
-
abi: first_oft_1.FIRST_OFT_ABI,
|
|
209
|
-
functionName: 'send',
|
|
210
|
-
args: [
|
|
211
|
-
sendParam,
|
|
212
|
-
{ nativeFee: quoteFee.nativeFee, lzTokenFee: 0n },
|
|
213
|
-
userAddress,
|
|
214
|
-
],
|
|
215
|
-
}),
|
|
216
|
-
value: quoteFee.nativeFee,
|
|
217
|
-
});
|
|
218
|
-
return calls;
|
|
219
|
-
};
|
|
220
|
-
exports.prepareClaimRealTokensCrossChainLZ = prepareClaimRealTokensCrossChainLZ;
|
|
221
33
|
const prepareClaimRealTokensCrossChainBridgeLZ = async ({ chainId, destinationChainId, userAddress, mirrorTokenAddress, receivingAddress, amount, options, }) => {
|
|
222
34
|
const publicClient = (0, viem_1.createPublicClient)({
|
|
223
35
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-claim-real-tokens.js","sourceRoot":"","sources":["../../../../src/calls/batch/prepare-claim-real-tokens.ts"],"names":[],"mappings":";;;AAAA,+BAAoE;AAEpE,+DAA2E;AAC3E,6DAAgE;AAChE,+FAA4F;AAC5F,iFAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"prepare-claim-real-tokens.js","sourceRoot":"","sources":["../../../../src/calls/batch/prepare-claim-real-tokens.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/calls/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NotEnoughClaimableError = exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.
|
|
3
|
+
exports.NotEnoughClaimableError = exports.prepareClaimRealTokensCrossChainBridgeLZ = exports.NotEnoughFundsError = exports.prepareWithdraw = exports.prepareMarketOrderWithSetup = exports.prepareLimitOrderWithSetup = exports.withdrawFromVault = exports.depositToVault = exports.removeVault = exports.setVault = exports.approveAllForMarket = exports.setTokenAllowances = exports.setApprovalOfOpenOrdersForAll = exports.cancelOrders = exports.cancelOrder = exports.claimOrders = exports.claimOrder = exports.ZeroTakenAmountError = exports.InsufficientLiquidityError = exports.marketOrder = exports.limitOrder = exports.placeMarketMakingQuotes = exports.openMarket = void 0;
|
|
4
4
|
var open_1 = require("./market/open");
|
|
5
5
|
Object.defineProperty(exports, "openMarket", { enumerable: true, get: function () { return open_1.openMarket; } });
|
|
6
6
|
var make_1 = require("./market/make");
|
|
@@ -33,8 +33,6 @@ Object.defineProperty(exports, "prepareLimitOrderWithSetup", { enumerable: true,
|
|
|
33
33
|
Object.defineProperty(exports, "prepareMarketOrderWithSetup", { enumerable: true, get: function () { return batch_1.prepareMarketOrderWithSetup; } });
|
|
34
34
|
Object.defineProperty(exports, "prepareWithdraw", { enumerable: true, get: function () { return batch_1.prepareWithdraw; } });
|
|
35
35
|
Object.defineProperty(exports, "NotEnoughFundsError", { enumerable: true, get: function () { return batch_1.NotEnoughFundsError; } });
|
|
36
|
-
Object.defineProperty(exports, "prepareClaimRealTokensSameChain", { enumerable: true, get: function () { return batch_1.prepareClaimRealTokensSameChain; } });
|
|
37
|
-
Object.defineProperty(exports, "prepareClaimRealTokensCrossChainLZ", { enumerable: true, get: function () { return batch_1.prepareClaimRealTokensCrossChainLZ; } });
|
|
38
36
|
Object.defineProperty(exports, "prepareClaimRealTokensCrossChainBridgeLZ", { enumerable: true, get: function () { return batch_1.prepareClaimRealTokensCrossChainBridgeLZ; } });
|
|
39
37
|
Object.defineProperty(exports, "NotEnoughClaimableError", { enumerable: true, get: function () { return batch_1.NotEnoughClaimableError; } });
|
|
40
38
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":";;;AAAA,sCAA2C;AAAlC,kGAAA,UAAU,OAAA;AACnB,sCAAwD;AAA/C,+GAAA,uBAAuB,OAAA;AAChC,wCAA4C;AAAnC,mGAAA,UAAU,OAAA;AACnB,0CAIyB;AAHvB,qGAAA,WAAW,OAAA;AACX,oHAAA,0BAA0B,OAAA;AAC1B,8GAAA,oBAAoB,OAAA;AAEtB,wCAAyD;AAAhD,mGAAA,UAAU,OAAA;AAAE,oGAAA,WAAW,OAAA;AAChC,0CAA4D;AAAnD,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAElC,oDAAsE;AAA7D,2HAAA,6BAA6B,OAAA;AACtC,0CAAsD;AAA7C,2GAAA,kBAAkB,OAAA;AAC3B,4CAAwD;AAA/C,6GAAA,mBAAmB,OAAA;AAE5B,iCAKiB;AAJf,iGAAA,QAAQ,OAAA;AACR,oGAAA,WAAW,OAAA;AACX,uGAAA,cAAc,OAAA;AACd,0GAAA,iBAAiB,OAAA;AAGnB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":";;;AAAA,sCAA2C;AAAlC,kGAAA,UAAU,OAAA;AACnB,sCAAwD;AAA/C,+GAAA,uBAAuB,OAAA;AAChC,wCAA4C;AAAnC,mGAAA,UAAU,OAAA;AACnB,0CAIyB;AAHvB,qGAAA,WAAW,OAAA;AACX,oHAAA,0BAA0B,OAAA;AAC1B,8GAAA,oBAAoB,OAAA;AAEtB,wCAAyD;AAAhD,mGAAA,UAAU,OAAA;AAAE,oGAAA,WAAW,OAAA;AAChC,0CAA4D;AAAnD,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAElC,oDAAsE;AAA7D,2HAAA,6BAA6B,OAAA;AACtC,0CAAsD;AAA7C,2GAAA,kBAAkB,OAAA;AAC3B,4CAAwD;AAA/C,6GAAA,mBAAmB,OAAA;AAE5B,iCAKiB;AAJf,iGAAA,QAAQ,OAAA;AACR,oGAAA,WAAW,OAAA;AACX,uGAAA,cAAc,OAAA;AACd,0GAAA,iBAAiB,OAAA;AAGnB,iCAOiB;AANf,mHAAA,0BAA0B,OAAA;AAC1B,oHAAA,2BAA2B,OAAA;AAC3B,wGAAA,eAAe,OAAA;AACf,4GAAA,mBAAmB,OAAA;AACnB,iIAAA,wCAAwC,OAAA;AACxC,gHAAA,uBAAuB,OAAA"}
|
|
@@ -8,7 +8,7 @@ exports.CONTRACT_ADDRESSES = {
|
|
|
8
8
|
Controller: (0, viem_1.getAddress)('0x318fb295c3617a5123826af0d3f4528decde57be'),
|
|
9
9
|
BookManager: (0, viem_1.getAddress)('0x1b408015a7142ffe187b55870f00fd38556c4749'),
|
|
10
10
|
BookViewer: (0, viem_1.getAddress)('0xadab496614ec3839a7fe1af622f6d70a5e442773'),
|
|
11
|
-
LayerZeroSponsor: (0, viem_1.getAddress)('
|
|
11
|
+
LayerZeroSponsor: (0, viem_1.getAddress)('0xbf7d9940df134182f3118adc49f3a64470a02997'),
|
|
12
12
|
},
|
|
13
13
|
[chain_1.CHAIN_IDS.BASE]: {
|
|
14
14
|
Controller: (0, viem_1.getAddress)('0x318fb295c3617a5123826af0d3f4528decde57be'),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { prepareLimitOrderWithSetup } from './prepare-limit-order-with-setup';
|
|
2
2
|
export { prepareMarketOrderWithSetup } from './prepare-market-order-with-setup';
|
|
3
3
|
export { prepareWithdraw, NotEnoughFundsError } from './prepare-withdraw';
|
|
4
|
-
export {
|
|
4
|
+
export { prepareClaimRealTokensCrossChainBridgeLZ, NotEnoughClaimableError, } from './prepare-claim-real-tokens';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/calls/batch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/calls/batch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,wCAAwC,EACxC,uBAAuB,GACxB,MAAM,6BAA6B,CAAC"}
|
|
@@ -3,11 +3,10 @@ import { CHAIN_MAP } from '../../constants/chain-configs/chain';
|
|
|
3
3
|
import { CHAIN_EIDS } from '../../constants/chain-configs/eids';
|
|
4
4
|
import { CLAIMABLE_DEX_VAULT_ABI } from '../../constants/abis/core/claimable-dex-vault-abi';
|
|
5
5
|
import { MIRROR_TOKEN_ABI } from '../../constants/abis/core/mirror-token-abi';
|
|
6
|
-
import { FIRST_OFT_ABI } from '../../constants/abis/core/first_oft';
|
|
7
6
|
import { LAYER_ZERO_SPONSOR_ABI } from '../../constants/abis/core/layer-zero-sponsor';
|
|
8
7
|
import { CONTRACT_ADDRESSES } from '../../constants/chain-configs/addresses';
|
|
9
|
-
import { getVault } from '../../views/vault';
|
|
10
8
|
import { ERC20_ABI } from '../../constants/abis/core/erc20';
|
|
9
|
+
import { getVault } from '../../views/vault';
|
|
11
10
|
/**
|
|
12
11
|
* Error thrown when there are insufficient claimable funds in vault and mirror token combined.
|
|
13
12
|
*/
|
|
@@ -30,265 +29,6 @@ export class NotEnoughClaimableError extends Error {
|
|
|
30
29
|
Object.setPrototypeOf(this, NotEnoughClaimableError.prototype);
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
|
-
/**
|
|
34
|
-
* Prepares transactions to claim real tokens from a mirror token system.
|
|
35
|
-
* Checks vault claimable assets and mirror token claimable assets, then creates
|
|
36
|
-
* claim calls to transfer all available real tokens to the receiving address.
|
|
37
|
-
*
|
|
38
|
-
* @param chainId The chain ID.
|
|
39
|
-
* @param userAddress The user address.
|
|
40
|
-
* @param mirrorTokenAddress The mirror token address.
|
|
41
|
-
* @param receivingAddress The address to receive the claimed real tokens.
|
|
42
|
-
* @param options Optional parameters.
|
|
43
|
-
* @returns Promise resolving to array of batch calls.
|
|
44
|
-
* @example
|
|
45
|
-
* import { prepareClaimRealTokensSameChain } from '@1stdex/first-sdk'
|
|
46
|
-
* import { useSmartWallets } from '@privy-io/react-auth/smart-wallets'
|
|
47
|
-
*
|
|
48
|
-
* const calls = await prepareClaimRealTokensSameChain({
|
|
49
|
-
* chainId: 421614,
|
|
50
|
-
* userAddress: '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69',
|
|
51
|
-
* mirrorTokenAddress: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
52
|
-
* receivingAddress: '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb'
|
|
53
|
-
* })
|
|
54
|
-
*
|
|
55
|
-
* // Send all calls in one batched transaction
|
|
56
|
-
* const { client } = useSmartWallets()
|
|
57
|
-
* const txHash = await client.sendUserOperation({ calls })
|
|
58
|
-
*/
|
|
59
|
-
export const prepareClaimRealTokensSameChain = async ({ chainId, userAddress, mirrorTokenAddress, receivingAddress, options, }) => {
|
|
60
|
-
const publicClient = createPublicClient({
|
|
61
|
-
chain: CHAIN_MAP[chainId],
|
|
62
|
-
transport: options?.rpcUrl ? http(options.rpcUrl) : http(),
|
|
63
|
-
});
|
|
64
|
-
const vault = await getVault({
|
|
65
|
-
chainId,
|
|
66
|
-
tokenAddress: mirrorTokenAddress,
|
|
67
|
-
...(options?.rpcUrl && { options: { rpcUrl: options.rpcUrl } }),
|
|
68
|
-
});
|
|
69
|
-
const contracts = [
|
|
70
|
-
{
|
|
71
|
-
address: vault.address,
|
|
72
|
-
abi: CLAIMABLE_DEX_VAULT_ABI,
|
|
73
|
-
functionName: 'getClaimableAssets',
|
|
74
|
-
args: [userAddress],
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
address: mirrorTokenAddress,
|
|
78
|
-
abi: MIRROR_TOKEN_ABI,
|
|
79
|
-
functionName: 'getClaimableAmount',
|
|
80
|
-
args: [userAddress],
|
|
81
|
-
},
|
|
82
|
-
];
|
|
83
|
-
const results = await publicClient.multicall({
|
|
84
|
-
contracts,
|
|
85
|
-
});
|
|
86
|
-
const vaultClaimableAmount = results[0].result || 0n;
|
|
87
|
-
const mirrorTokenClaimableAmount = results[1].result || 0n;
|
|
88
|
-
const calls = [];
|
|
89
|
-
// If vault has claimable assets, claim them first
|
|
90
|
-
if (vaultClaimableAmount > 0n) {
|
|
91
|
-
calls.push({
|
|
92
|
-
to: vault.address,
|
|
93
|
-
data: encodeFunctionData({
|
|
94
|
-
abi: MIRROR_TOKEN_ABI,
|
|
95
|
-
functionName: 'claim',
|
|
96
|
-
args: [userAddress, vaultClaimableAmount],
|
|
97
|
-
}),
|
|
98
|
-
value: 0n,
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
// Claim total available amount from mirror token to receiving address
|
|
102
|
-
const totalClaimableAmount = vaultClaimableAmount + mirrorTokenClaimableAmount;
|
|
103
|
-
if (totalClaimableAmount > 0n) {
|
|
104
|
-
calls.push({
|
|
105
|
-
to: mirrorTokenAddress,
|
|
106
|
-
data: encodeFunctionData({
|
|
107
|
-
abi: MIRROR_TOKEN_ABI,
|
|
108
|
-
functionName: 'claim',
|
|
109
|
-
args: [receivingAddress, totalClaimableAmount],
|
|
110
|
-
}),
|
|
111
|
-
value: 0n,
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
return calls;
|
|
115
|
-
};
|
|
116
|
-
/**
|
|
117
|
-
* Prepares transactions to claim real tokens and bridge them cross-chain via LayerZero.
|
|
118
|
-
* Claims the specified amount optimally (from mirror token and/or vault) to the user address,
|
|
119
|
-
* then bridges them to a receiving address on the destination chain using LayerZero's OFT protocol.
|
|
120
|
-
* Throws NotEnoughClaimableError if combined claimable amount is insufficient.
|
|
121
|
-
*
|
|
122
|
-
* @param chainId The source chain ID.
|
|
123
|
-
* @param destinationChainId The destination chain ID.
|
|
124
|
-
* @param userAddress The user address.
|
|
125
|
-
* @param mirrorTokenAddress The mirror token address (OFT contract).
|
|
126
|
-
* @param receivingAddress The address to receive the tokens on destination chain.
|
|
127
|
-
* @param amount The amount to claim and send (in token base units, e.g., wei).
|
|
128
|
-
* @param options Optional parameters.
|
|
129
|
-
* @returns Promise resolving to array of batch calls.
|
|
130
|
-
* @example
|
|
131
|
-
* import { prepareClaimRealTokensCrossChainLZ } from '@1stdex/first-sdk'
|
|
132
|
-
* import { useSmartWallets } from '@privy-io/react-auth/smart-wallets'
|
|
133
|
-
*
|
|
134
|
-
* const calls = await prepareClaimRealTokensCrossChainLZ({
|
|
135
|
-
* chainId: 84532,
|
|
136
|
-
* destinationChainId: 8453,
|
|
137
|
-
* userAddress: '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69',
|
|
138
|
-
* mirrorTokenAddress: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
139
|
-
* receivingAddress: '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb',
|
|
140
|
-
* amount: 1000000000000000000n // 1 token (18 decimals)
|
|
141
|
-
* })
|
|
142
|
-
*
|
|
143
|
-
* // Send all calls in one batched transaction
|
|
144
|
-
* const { client } = useSmartWallets()
|
|
145
|
-
* const txHash = await client.sendUserOperation({ calls })
|
|
146
|
-
*/
|
|
147
|
-
export const prepareClaimRealTokensCrossChainLZ = async ({ chainId, destinationChainId, userAddress, mirrorTokenAddress, receivingAddress, amount, options, }) => {
|
|
148
|
-
const publicClient = createPublicClient({
|
|
149
|
-
chain: CHAIN_MAP[chainId],
|
|
150
|
-
transport: options?.rpcUrl ? http(options.rpcUrl) : http(),
|
|
151
|
-
});
|
|
152
|
-
const vault = await getVault({
|
|
153
|
-
chainId,
|
|
154
|
-
tokenAddress: mirrorTokenAddress,
|
|
155
|
-
...(options?.rpcUrl && { options: { rpcUrl: options.rpcUrl } }),
|
|
156
|
-
});
|
|
157
|
-
const ERC20_ABI = [
|
|
158
|
-
{
|
|
159
|
-
inputs: [{ internalType: 'address', name: 'account', type: 'address' }],
|
|
160
|
-
name: 'balanceOf',
|
|
161
|
-
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
162
|
-
stateMutability: 'view',
|
|
163
|
-
type: 'function',
|
|
164
|
-
},
|
|
165
|
-
];
|
|
166
|
-
// First multicall to get vault, mirror token claimable, and real token address
|
|
167
|
-
const initialContracts = [
|
|
168
|
-
{
|
|
169
|
-
address: vault.address,
|
|
170
|
-
abi: CLAIMABLE_DEX_VAULT_ABI,
|
|
171
|
-
functionName: 'getClaimableAssets',
|
|
172
|
-
args: [userAddress],
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
address: mirrorTokenAddress,
|
|
176
|
-
abi: MIRROR_TOKEN_ABI,
|
|
177
|
-
functionName: 'getClaimableAmount',
|
|
178
|
-
args: [userAddress],
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
address: mirrorTokenAddress,
|
|
182
|
-
abi: MIRROR_TOKEN_ABI,
|
|
183
|
-
functionName: 'realToken',
|
|
184
|
-
},
|
|
185
|
-
];
|
|
186
|
-
const initialResults = await publicClient.multicall({
|
|
187
|
-
contracts: initialContracts,
|
|
188
|
-
});
|
|
189
|
-
const vaultClaimableAmount = initialResults[0].result || 0n;
|
|
190
|
-
const mirrorTokenClaimableAmount = initialResults[1].result || 0n;
|
|
191
|
-
const realTokenAddress = initialResults[2].result;
|
|
192
|
-
const totalClaimableAmount = vaultClaimableAmount + mirrorTokenClaimableAmount;
|
|
193
|
-
// Check balance for the real token
|
|
194
|
-
const balanceContracts = [
|
|
195
|
-
{
|
|
196
|
-
address: realTokenAddress,
|
|
197
|
-
abi: ERC20_ABI,
|
|
198
|
-
functionName: 'balanceOf',
|
|
199
|
-
args: [userAddress],
|
|
200
|
-
},
|
|
201
|
-
];
|
|
202
|
-
const balanceResults = await publicClient.multicall({
|
|
203
|
-
contracts: balanceContracts,
|
|
204
|
-
});
|
|
205
|
-
const realTokenBalance = balanceResults[0].result || 0n;
|
|
206
|
-
// Calculate how much we need to claim (accounting for existing balance)
|
|
207
|
-
const amountNeededToClaim = amount > realTokenBalance ? amount - realTokenBalance : 0n;
|
|
208
|
-
// Check if there's enough claimable to cover what we need
|
|
209
|
-
if (amountNeededToClaim > totalClaimableAmount) {
|
|
210
|
-
throw new NotEnoughClaimableError(`Insufficient funds: need ${amount} total, have ${realTokenBalance} in wallet, need to claim ${amountNeededToClaim}, but only ${totalClaimableAmount} claimable (mirror token: ${mirrorTokenClaimableAmount}, vault: ${vaultClaimableAmount})`, amountNeededToClaim, totalClaimableAmount);
|
|
211
|
-
}
|
|
212
|
-
const calls = [];
|
|
213
|
-
// Only claim if we need more tokens
|
|
214
|
-
if (amountNeededToClaim > 0n) {
|
|
215
|
-
// If mirror token has enough claimable to cover what we need, claim only from mirror token
|
|
216
|
-
if (mirrorTokenClaimableAmount >= amountNeededToClaim) {
|
|
217
|
-
calls.push({
|
|
218
|
-
to: mirrorTokenAddress,
|
|
219
|
-
data: encodeFunctionData({
|
|
220
|
-
abi: MIRROR_TOKEN_ABI,
|
|
221
|
-
functionName: 'claim',
|
|
222
|
-
args: [userAddress, amountNeededToClaim],
|
|
223
|
-
}),
|
|
224
|
-
value: 0n,
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
else {
|
|
228
|
-
// Need to claim from both vault and mirror token
|
|
229
|
-
// Calculate amount needed from vault
|
|
230
|
-
const amountFromVault = amountNeededToClaim - mirrorTokenClaimableAmount;
|
|
231
|
-
// Claim from vault to user address
|
|
232
|
-
calls.push({
|
|
233
|
-
to: vault.address,
|
|
234
|
-
data: encodeFunctionData({
|
|
235
|
-
abi: MIRROR_TOKEN_ABI,
|
|
236
|
-
functionName: 'claim',
|
|
237
|
-
args: [userAddress, amountFromVault],
|
|
238
|
-
}),
|
|
239
|
-
value: 0n,
|
|
240
|
-
});
|
|
241
|
-
// Claim all available from mirror token to user address
|
|
242
|
-
if (mirrorTokenClaimableAmount > 0n) {
|
|
243
|
-
calls.push({
|
|
244
|
-
to: mirrorTokenAddress,
|
|
245
|
-
data: encodeFunctionData({
|
|
246
|
-
abi: MIRROR_TOKEN_ABI,
|
|
247
|
-
functionName: 'claim',
|
|
248
|
-
args: [userAddress, mirrorTokenClaimableAmount],
|
|
249
|
-
}),
|
|
250
|
-
value: 0n,
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
// Convert receivingAddress to bytes32 for LayerZero
|
|
256
|
-
const receivingAddressBytes32 = `0x000000000000000000000000${receivingAddress.slice(2)}`;
|
|
257
|
-
// Get destination EID
|
|
258
|
-
const destinationEid = CHAIN_EIDS[destinationChainId];
|
|
259
|
-
// Prepare SendParam for quoteSend
|
|
260
|
-
const sendParam = {
|
|
261
|
-
dstEid: destinationEid,
|
|
262
|
-
to: receivingAddressBytes32,
|
|
263
|
-
amountLD: amount,
|
|
264
|
-
minAmountLD: amount,
|
|
265
|
-
extraOptions: '0x',
|
|
266
|
-
composeMsg: '0x',
|
|
267
|
-
oftCmd: '0x',
|
|
268
|
-
};
|
|
269
|
-
// Quote the send to get gas fee (using real token, not mirror token)
|
|
270
|
-
const quoteFee = await publicClient.readContract({
|
|
271
|
-
address: realTokenAddress,
|
|
272
|
-
abi: FIRST_OFT_ABI,
|
|
273
|
-
functionName: 'quoteSend',
|
|
274
|
-
args: [sendParam, false], // false = pay in native token
|
|
275
|
-
});
|
|
276
|
-
// Call send() to bridge tokens cross-chain (using real token, not mirror token)
|
|
277
|
-
calls.push({
|
|
278
|
-
to: realTokenAddress,
|
|
279
|
-
data: encodeFunctionData({
|
|
280
|
-
abi: FIRST_OFT_ABI,
|
|
281
|
-
functionName: 'send',
|
|
282
|
-
args: [
|
|
283
|
-
sendParam,
|
|
284
|
-
{ nativeFee: quoteFee.nativeFee, lzTokenFee: 0n },
|
|
285
|
-
userAddress, // refund address
|
|
286
|
-
],
|
|
287
|
-
}),
|
|
288
|
-
value: quoteFee.nativeFee,
|
|
289
|
-
});
|
|
290
|
-
return calls;
|
|
291
|
-
};
|
|
292
32
|
/**
|
|
293
33
|
* Prepares transactions to claim real tokens and bridge them cross-chain via LayerZero using the sponsor contract.
|
|
294
34
|
* Claims the specified amount optimally (from mirror token and/or vault) to the user address,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-claim-real-tokens.js","sourceRoot":"","sources":["../../../../src/calls/batch/prepare-claim-real-tokens.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prepare-claim-real-tokens.js","sourceRoot":"","sources":["../../../../src/calls/batch/prepare-claim-real-tokens.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/calls/index.js
CHANGED
|
@@ -8,5 +8,5 @@ export { setApprovalOfOpenOrdersForAll } from './approval/open-order';
|
|
|
8
8
|
export { setTokenAllowances } from './approval/token';
|
|
9
9
|
export { approveAllForMarket } from './approval/market';
|
|
10
10
|
export { setVault, removeVault, depositToVault, withdrawFromVault, } from './vault';
|
|
11
|
-
export { prepareLimitOrderWithSetup, prepareMarketOrderWithSetup, prepareWithdraw, NotEnoughFundsError,
|
|
11
|
+
export { prepareLimitOrderWithSetup, prepareMarketOrderWithSetup, prepareWithdraw, NotEnoughFundsError, prepareClaimRealTokensCrossChainBridgeLZ, NotEnoughClaimableError, } from './batch';
|
|
12
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,EACf,mBAAmB,EACnB
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,EACf,mBAAmB,EACnB,wCAAwC,EACxC,uBAAuB,GACxB,MAAM,SAAS,CAAC"}
|