@reown/appkit-core-react-native 2.0.0-alpha.0 → 2.0.0-alpha.2
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/lib/commonjs/controllers/ApiController.js +16 -5
- package/lib/commonjs/controllers/ApiController.js.map +1 -1
- package/lib/commonjs/controllers/AssetController.js.map +1 -1
- package/lib/commonjs/controllers/BlockchainApiController.js +103 -111
- package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionController.js +1 -10
- package/lib/commonjs/controllers/ConnectionController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionsController.js +313 -52
- package/lib/commonjs/controllers/ConnectionsController.js.map +1 -1
- package/lib/commonjs/controllers/EnsController.js +4 -4
- package/lib/commonjs/controllers/EnsController.js.map +1 -1
- package/lib/commonjs/controllers/EventsController.js +4 -4
- package/lib/commonjs/controllers/EventsController.js.map +1 -1
- package/lib/commonjs/controllers/ModalController.js +6 -7
- package/lib/commonjs/controllers/ModalController.js.map +1 -1
- package/lib/commonjs/controllers/OnRampController.js +117 -53
- package/lib/commonjs/controllers/OnRampController.js.map +1 -1
- package/lib/commonjs/controllers/OptionsController.js +14 -0
- package/lib/commonjs/controllers/OptionsController.js.map +1 -1
- package/lib/commonjs/controllers/PublicStateController.js.map +1 -1
- package/lib/commonjs/controllers/RouterController.js +1 -22
- package/lib/commonjs/controllers/RouterController.js.map +1 -1
- package/lib/commonjs/controllers/SendController.js +101 -101
- package/lib/commonjs/controllers/SendController.js.map +1 -1
- package/lib/commonjs/controllers/SnackController.js +29 -5
- package/lib/commonjs/controllers/SnackController.js.map +1 -1
- package/lib/commonjs/controllers/SwapController.js +140 -147
- package/lib/commonjs/controllers/SwapController.js.map +1 -1
- package/lib/commonjs/controllers/ThemeController.js.map +1 -1
- package/lib/commonjs/controllers/TransactionsController.js +23 -19
- package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
- package/lib/commonjs/index.js +0 -35
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/utils/ApiUtil.js.map +1 -1
- package/lib/commonjs/utils/AssetUtil.js +3 -14
- package/lib/commonjs/utils/AssetUtil.js.map +1 -1
- package/lib/commonjs/utils/ConstantsUtil.js +122 -426
- package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
- package/lib/commonjs/utils/CoreHelperUtil.js +13 -8
- package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
- package/lib/commonjs/utils/EventUtil.js.map +1 -1
- package/lib/commonjs/utils/FetchUtil.js +34 -10
- package/lib/commonjs/utils/FetchUtil.js.map +1 -1
- package/lib/commonjs/utils/RouterUtil.js.map +1 -1
- package/lib/commonjs/utils/StorageUtil.js +86 -92
- package/lib/commonjs/utils/StorageUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapApiUtil.js +11 -22
- package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/commonjs/utils/TypeUtil.js +25 -0
- package/lib/commonjs/utils/TypeUtil.js.map +1 -1
- package/lib/module/controllers/ApiController.js +18 -6
- package/lib/module/controllers/ApiController.js.map +1 -1
- package/lib/module/controllers/AssetController.js +2 -0
- package/lib/module/controllers/AssetController.js.map +1 -1
- package/lib/module/controllers/BlockchainApiController.js +104 -110
- package/lib/module/controllers/BlockchainApiController.js.map +1 -1
- package/lib/module/controllers/ConnectionController.js +3 -10
- package/lib/module/controllers/ConnectionController.js.map +1 -1
- package/lib/module/controllers/ConnectionsController.js +314 -51
- package/lib/module/controllers/ConnectionsController.js.map +1 -1
- package/lib/module/controllers/EnsController.js +4 -2
- package/lib/module/controllers/EnsController.js.map +1 -1
- package/lib/module/controllers/EventsController.js +3 -1
- package/lib/module/controllers/EventsController.js.map +1 -1
- package/lib/module/controllers/ModalController.js +8 -7
- package/lib/module/controllers/ModalController.js.map +1 -1
- package/lib/module/controllers/OnRampController.js +118 -52
- package/lib/module/controllers/OnRampController.js.map +1 -1
- package/lib/module/controllers/OptionsController.js +16 -0
- package/lib/module/controllers/OptionsController.js.map +1 -1
- package/lib/module/controllers/PublicStateController.js +2 -0
- package/lib/module/controllers/PublicStateController.js.map +1 -1
- package/lib/module/controllers/RouterController.js +3 -22
- package/lib/module/controllers/RouterController.js.map +1 -1
- package/lib/module/controllers/SendController.js +100 -98
- package/lib/module/controllers/SendController.js.map +1 -1
- package/lib/module/controllers/SnackController.js +31 -5
- package/lib/module/controllers/SnackController.js.map +1 -1
- package/lib/module/controllers/SwapController.js +142 -147
- package/lib/module/controllers/SwapController.js.map +1 -1
- package/lib/module/controllers/ThemeController.js +2 -0
- package/lib/module/controllers/ThemeController.js.map +1 -1
- package/lib/module/controllers/TransactionsController.js +23 -17
- package/lib/module/controllers/TransactionsController.js.map +1 -1
- package/lib/module/index.js +2 -5
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/ApiUtil.js +2 -0
- package/lib/module/utils/ApiUtil.js.map +1 -1
- package/lib/module/utils/AssetUtil.js +5 -14
- package/lib/module/utils/AssetUtil.js.map +1 -1
- package/lib/module/utils/ConstantsUtil.js +124 -426
- package/lib/module/utils/ConstantsUtil.js.map +1 -1
- package/lib/module/utils/CoreHelperUtil.js +14 -6
- package/lib/module/utils/CoreHelperUtil.js.map +1 -1
- package/lib/module/utils/EventUtil.js +2 -0
- package/lib/module/utils/EventUtil.js.map +1 -1
- package/lib/module/utils/FetchUtil.js +36 -10
- package/lib/module/utils/FetchUtil.js.map +1 -1
- package/lib/module/utils/RouterUtil.js +2 -0
- package/lib/module/utils/RouterUtil.js.map +1 -1
- package/lib/module/utils/StorageUtil.js +89 -91
- package/lib/module/utils/StorageUtil.js.map +1 -1
- package/lib/module/utils/SwapApiUtil.js +13 -22
- package/lib/module/utils/SwapApiUtil.js.map +1 -1
- package/lib/module/utils/SwapCalculationUtil.js +2 -0
- package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/module/utils/TypeUtil.js +25 -1
- package/lib/module/utils/TypeUtil.js.map +1 -1
- package/lib/typescript/controllers/ApiController.d.ts +2 -1
- package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/BlockchainApiController.d.ts +20 -13
- package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/ConnectionController.d.ts +3 -16
- package/lib/typescript/controllers/ConnectionController.d.ts.map +1 -1
- package/lib/typescript/controllers/ConnectionsController.d.ts +26 -22
- package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/ModalController.d.ts +1 -1
- package/lib/typescript/controllers/ModalController.d.ts.map +1 -1
- package/lib/typescript/controllers/OnRampController.d.ts +3 -2
- package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
- package/lib/typescript/controllers/OptionsController.d.ts +7 -2
- package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/RouterController.d.ts +4 -17
- package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
- package/lib/typescript/controllers/SendController.d.ts +5 -7
- package/lib/typescript/controllers/SendController.d.ts.map +1 -1
- package/lib/typescript/controllers/SnackController.d.ts +3 -3
- package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
- package/lib/typescript/controllers/SwapController.d.ts +12 -11
- package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
- package/lib/typescript/controllers/TransactionsController.d.ts +3 -3
- package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +0 -5
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/utils/AssetUtil.d.ts +2 -3
- package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
- package/lib/typescript/utils/ConstantsUtil.d.ts +7 -414
- package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
- package/lib/typescript/utils/CoreHelperUtil.d.ts +5 -4
- package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
- package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
- package/lib/typescript/utils/StorageUtil.d.ts +11 -15
- package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapApiUtil.d.ts +3 -3
- package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
- package/lib/typescript/utils/TypeUtil.d.ts +54 -177
- package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
- package/package.json +9 -23
- package/src/controllers/ApiController.ts +17 -4
- package/src/controllers/BlockchainApiController.ts +74 -119
- package/src/controllers/ConnectionController.ts +5 -28
- package/src/controllers/ConnectionsController.ts +399 -92
- package/src/controllers/EnsController.ts +2 -2
- package/src/controllers/EventsController.ts +1 -1
- package/src/controllers/ModalController.ts +7 -9
- package/src/controllers/OnRampController.ts +178 -81
- package/src/controllers/OptionsController.ts +22 -9
- package/src/controllers/RouterController.ts +4 -54
- package/src/controllers/SendController.ts +124 -113
- package/src/controllers/SnackController.ts +31 -5
- package/src/controllers/SwapController.ts +165 -181
- package/src/controllers/TransactionsController.ts +24 -18
- package/src/index.ts +0 -15
- package/src/utils/AssetUtil.ts +4 -18
- package/src/utils/ConstantsUtil.ts +125 -428
- package/src/utils/CoreHelperUtil.ts +30 -8
- package/src/utils/FetchUtil.ts +37 -10
- package/src/utils/StorageUtil.ts +165 -106
- package/src/utils/SwapApiUtil.ts +25 -42
- package/src/utils/TypeUtil.ts +64 -171
- package/lib/commonjs/controllers/AccountController.js +0 -93
- package/lib/commonjs/controllers/AccountController.js.map +0 -1
- package/lib/commonjs/controllers/ConnectorController.js +0 -50
- package/lib/commonjs/controllers/ConnectorController.js.map +0 -1
- package/lib/commonjs/controllers/NetworkController.js +0 -90
- package/lib/commonjs/controllers/NetworkController.js.map +0 -1
- package/lib/commonjs/controllers/WebviewController.js +0 -52
- package/lib/commonjs/controllers/WebviewController.js.map +0 -1
- package/lib/commonjs/utils/NetworkUtil.js +0 -46
- package/lib/commonjs/utils/NetworkUtil.js.map +0 -1
- package/lib/module/controllers/AccountController.js +0 -88
- package/lib/module/controllers/AccountController.js.map +0 -1
- package/lib/module/controllers/ConnectorController.js +0 -45
- package/lib/module/controllers/ConnectorController.js.map +0 -1
- package/lib/module/controllers/NetworkController.js +0 -85
- package/lib/module/controllers/NetworkController.js.map +0 -1
- package/lib/module/controllers/WebviewController.js +0 -47
- package/lib/module/controllers/WebviewController.js.map +0 -1
- package/lib/module/utils/NetworkUtil.js +0 -40
- package/lib/module/utils/NetworkUtil.js.map +0 -1
- package/lib/typescript/controllers/AccountController.d.ts +0 -33
- package/lib/typescript/controllers/AccountController.d.ts.map +0 -1
- package/lib/typescript/controllers/ConnectorController.d.ts +0 -18
- package/lib/typescript/controllers/ConnectorController.d.ts.map +0 -1
- package/lib/typescript/controllers/NetworkController.d.ts +0 -34
- package/lib/typescript/controllers/NetworkController.d.ts.map +0 -1
- package/lib/typescript/controllers/WebviewController.d.ts +0 -21
- package/lib/typescript/controllers/WebviewController.d.ts.map +0 -1
- package/lib/typescript/utils/NetworkUtil.d.ts +0 -8
- package/lib/typescript/utils/NetworkUtil.d.ts.map +0 -1
- package/src/controllers/AccountController.ts +0 -128
- package/src/controllers/ConnectorController.ts +0 -64
- package/src/controllers/NetworkController.ts +0 -120
- package/src/controllers/WebviewController.ts +0 -63
- package/src/utils/NetworkUtil.ts +0 -33
|
@@ -1,18 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
1
3
|
import { subscribeKey as subKey } from 'valtio/utils';
|
|
2
4
|
import { proxy, subscribe as sub } from 'valtio';
|
|
3
5
|
import { NumberUtil } from '@reown/appkit-common-react-native';
|
|
4
6
|
import { ConstantsUtil } from '../utils/ConstantsUtil';
|
|
5
7
|
import { SwapApiUtil } from '../utils/SwapApiUtil';
|
|
6
|
-
import { NetworkController } from './NetworkController';
|
|
7
8
|
import { BlockchainApiController } from './BlockchainApiController';
|
|
8
9
|
import { OptionsController } from './OptionsController';
|
|
9
10
|
import { SwapCalculationUtil } from '../utils/SwapCalculationUtil';
|
|
10
11
|
import { SnackController } from './SnackController';
|
|
11
12
|
import { RouterController } from './RouterController';
|
|
12
|
-
import { ConnectorController } from './ConnectorController';
|
|
13
|
-
import { AccountController } from './AccountController';
|
|
14
13
|
import { CoreHelperUtil } from '../utils/CoreHelperUtil';
|
|
15
|
-
import { ConnectionController } from './ConnectionController';
|
|
16
14
|
import { TransactionsController } from './TransactionsController';
|
|
17
15
|
import { EventsController } from './EventsController';
|
|
18
16
|
import { ConnectionsController } from './ConnectionsController';
|
|
@@ -33,8 +31,7 @@ class TransactionError extends Error {
|
|
|
33
31
|
// -- State --------------------------------------------- //
|
|
34
32
|
const initialState = {
|
|
35
33
|
// Loading states
|
|
36
|
-
|
|
37
|
-
initialized: false,
|
|
34
|
+
loadingTokens: false,
|
|
38
35
|
loadingPrices: false,
|
|
39
36
|
loadingQuote: false,
|
|
40
37
|
loadingApprovalTransaction: false,
|
|
@@ -54,7 +51,6 @@ const initialState = {
|
|
|
54
51
|
toTokenAmount: '',
|
|
55
52
|
toTokenPriceInUSD: 0,
|
|
56
53
|
networkPrice: '0',
|
|
57
|
-
networkBalanceInUSD: '0',
|
|
58
54
|
networkTokenSymbol: '',
|
|
59
55
|
inputError: undefined,
|
|
60
56
|
// Request values
|
|
@@ -88,14 +84,14 @@ export const SwapController = {
|
|
|
88
84
|
const {
|
|
89
85
|
activeAddress,
|
|
90
86
|
activeNamespace,
|
|
91
|
-
activeNetwork
|
|
87
|
+
activeNetwork,
|
|
88
|
+
connection
|
|
92
89
|
} = ConnectionsController.state;
|
|
93
90
|
const address = CoreHelperUtil.getPlainAddress(activeAddress);
|
|
94
91
|
if (!activeNamespace || !activeNetwork) {
|
|
95
92
|
throw new Error('No active namespace or network found to swap the tokens from.');
|
|
96
93
|
}
|
|
97
|
-
const networkAddress = `${activeNetwork.caipNetworkId
|
|
98
|
-
const type = ConnectorController.state.connectedConnector;
|
|
94
|
+
const networkAddress = `${activeNetwork.caipNetworkId}:${ConstantsUtil.NATIVE_TOKEN_ADDRESS[activeNamespace]}`;
|
|
99
95
|
if (!address) {
|
|
100
96
|
throw new Error('No address found to swap the tokens from.');
|
|
101
97
|
}
|
|
@@ -104,6 +100,7 @@ export const SwapController = {
|
|
|
104
100
|
const invalidSourceTokenAmount = !state.sourceTokenAmount;
|
|
105
101
|
return {
|
|
106
102
|
networkAddress,
|
|
103
|
+
network: activeNetwork,
|
|
107
104
|
fromAddress: address,
|
|
108
105
|
fromCaipAddress: activeAddress,
|
|
109
106
|
sourceTokenAddress: state.sourceToken?.address,
|
|
@@ -116,11 +113,11 @@ export const SwapController = {
|
|
|
116
113
|
invalidSourceToken,
|
|
117
114
|
invalidSourceTokenAmount,
|
|
118
115
|
availableToSwap: activeAddress && !invalidToToken && !invalidSourceToken && !invalidSourceTokenAmount,
|
|
119
|
-
isAuthConnector:
|
|
116
|
+
isAuthConnector: !!connection?.properties?.provider
|
|
120
117
|
};
|
|
121
118
|
},
|
|
122
119
|
switchTokens() {
|
|
123
|
-
if (state.
|
|
120
|
+
if (state.loadingTokens) {
|
|
124
121
|
return;
|
|
125
122
|
}
|
|
126
123
|
let newSourceToken = state.toToken ? {
|
|
@@ -140,35 +137,32 @@ export const SwapController = {
|
|
|
140
137
|
this.setToTokenAmount('');
|
|
141
138
|
this.swapTokens();
|
|
142
139
|
},
|
|
143
|
-
resetState() {
|
|
144
|
-
state.myTokensWithBalance = initialState.myTokensWithBalance;
|
|
145
|
-
state.tokensPriceMap = initialState.tokensPriceMap;
|
|
146
|
-
state.initialized = initialState.initialized;
|
|
147
|
-
state.sourceToken = initialState.sourceToken;
|
|
148
|
-
state.sourceTokenAmount = initialState.sourceTokenAmount;
|
|
149
|
-
state.sourceTokenPriceInUSD = initialState.sourceTokenPriceInUSD;
|
|
150
|
-
state.toToken = initialState.toToken;
|
|
151
|
-
state.toTokenAmount = initialState.toTokenAmount;
|
|
152
|
-
state.toTokenPriceInUSD = initialState.toTokenPriceInUSD;
|
|
153
|
-
state.networkPrice = initialState.networkPrice;
|
|
154
|
-
state.networkTokenSymbol = initialState.networkTokenSymbol;
|
|
155
|
-
state.networkBalanceInUSD = initialState.networkBalanceInUSD;
|
|
156
|
-
state.inputError = initialState.inputError;
|
|
157
|
-
},
|
|
158
140
|
async fetchTokens() {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
state.
|
|
141
|
+
try {
|
|
142
|
+
const {
|
|
143
|
+
networkAddress
|
|
144
|
+
} = this.getParams();
|
|
145
|
+
state.loadingTokens = true;
|
|
146
|
+
await this.getTokenList();
|
|
147
|
+
await this.getNetworkTokenPrice();
|
|
148
|
+
await this.getMyTokensWithBalance();
|
|
149
|
+
const networkToken = state.tokens?.find(token => token.address === networkAddress);
|
|
150
|
+
if (networkToken) {
|
|
151
|
+
state.networkTokenSymbol = networkToken.symbol;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Set default source token if not set
|
|
155
|
+
if (!state.sourceToken && state.myTokensWithBalance?.length) {
|
|
156
|
+
const sourceToken = state.myTokensWithBalance?.find(token => token.address.startsWith(networkAddress)) || state.myTokensWithBalance?.[0];
|
|
157
|
+
this.setSourceToken(sourceToken);
|
|
158
|
+
this.setSourceTokenAmount('1');
|
|
159
|
+
}
|
|
160
|
+
} catch (error) {
|
|
161
|
+
SnackController.showError('Failed to initialize swap');
|
|
162
|
+
RouterController.goBack();
|
|
163
|
+
} finally {
|
|
164
|
+
state.loadingTokens = false;
|
|
168
165
|
}
|
|
169
|
-
const sourceToken = state.myTokensWithBalance?.find(token => token.address.startsWith(networkAddress)) || state.myTokensWithBalance?.[0];
|
|
170
|
-
this.setSourceToken(sourceToken);
|
|
171
|
-
this.setSourceTokenAmount('1');
|
|
172
166
|
},
|
|
173
167
|
async getTokenList() {
|
|
174
168
|
const tokens = await SwapApiUtil.getTokenList();
|
|
@@ -190,15 +184,19 @@ export const SwapController = {
|
|
|
190
184
|
}, {});
|
|
191
185
|
},
|
|
192
186
|
async getMyTokensWithBalance(forceUpdate) {
|
|
193
|
-
|
|
194
|
-
|
|
187
|
+
await ConnectionsController.fetchBalance(forceUpdate);
|
|
188
|
+
const swapBalances = SwapApiUtil.mapBalancesToSwapTokens(ConnectionsController.state.balances);
|
|
189
|
+
if (!swapBalances) {
|
|
195
190
|
return;
|
|
196
191
|
}
|
|
197
192
|
await this.getInitialGasPrice();
|
|
198
|
-
this.setBalances(
|
|
193
|
+
this.setBalances(swapBalances);
|
|
199
194
|
},
|
|
200
|
-
getFilteredPopularTokens() {
|
|
201
|
-
|
|
195
|
+
getFilteredPopularTokens(balances) {
|
|
196
|
+
if (!balances) {
|
|
197
|
+
return state.popularTokens;
|
|
198
|
+
}
|
|
199
|
+
return state.popularTokens?.filter(token => !balances.some(t => t.address === token.address));
|
|
202
200
|
},
|
|
203
201
|
setSourceToken(sourceToken) {
|
|
204
202
|
if (!sourceToken) {
|
|
@@ -216,31 +214,17 @@ export const SwapController = {
|
|
|
216
214
|
state.toTokenAmount = '';
|
|
217
215
|
}
|
|
218
216
|
},
|
|
219
|
-
async initializeState() {
|
|
220
|
-
if (state.initializing) {
|
|
221
|
-
return;
|
|
222
|
-
}
|
|
223
|
-
state.initializing = true;
|
|
224
|
-
if (!state.initialized) {
|
|
225
|
-
try {
|
|
226
|
-
await this.fetchTokens();
|
|
227
|
-
state.initialized = true;
|
|
228
|
-
} catch (error) {
|
|
229
|
-
state.initialized = false;
|
|
230
|
-
SnackController.showError('Failed to initialize swap');
|
|
231
|
-
RouterController.goBack();
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
state.initializing = false;
|
|
235
|
-
},
|
|
236
217
|
async getAddressPrice(address) {
|
|
218
|
+
const [namespace, chain] = address.split(':');
|
|
219
|
+
const networkId = `${namespace}:${chain}`;
|
|
237
220
|
const existPrice = state.tokensPriceMap[address];
|
|
238
221
|
if (existPrice) {
|
|
239
222
|
return existPrice;
|
|
240
223
|
}
|
|
241
224
|
const response = await BlockchainApiController.fetchTokenPrice({
|
|
242
225
|
projectId: OptionsController.state.projectId,
|
|
243
|
-
addresses: [address]
|
|
226
|
+
addresses: [address],
|
|
227
|
+
caipNetworkId: networkId
|
|
244
228
|
});
|
|
245
229
|
const fungibles = response?.fungibles || [];
|
|
246
230
|
const allTokens = [...(state.tokens || []), ...(state.myTokensWithBalance || [])];
|
|
@@ -254,9 +238,12 @@ export const SwapController = {
|
|
|
254
238
|
const {
|
|
255
239
|
networkAddress
|
|
256
240
|
} = this.getParams();
|
|
241
|
+
const [namespace, chain] = networkAddress.split(':');
|
|
242
|
+
const networkId = `${namespace}:${chain}`;
|
|
257
243
|
const response = await BlockchainApiController.fetchTokenPrice({
|
|
258
244
|
projectId: OptionsController.state.projectId,
|
|
259
|
-
addresses: [networkAddress]
|
|
245
|
+
addresses: [networkAddress],
|
|
246
|
+
caipNetworkId: networkId
|
|
260
247
|
});
|
|
261
248
|
const token = response?.fungibles?.[0];
|
|
262
249
|
const price = token?.price.toString() || '0';
|
|
@@ -287,19 +274,10 @@ export const SwapController = {
|
|
|
287
274
|
return SwapCalculationUtil.getProviderFeePrice(state.sourceTokenAmount, state.sourceTokenPriceInUSD);
|
|
288
275
|
},
|
|
289
276
|
setBalances(balances) {
|
|
290
|
-
|
|
291
|
-
networkAddress
|
|
292
|
-
} = this.getParams();
|
|
293
|
-
const caipNetwork = NetworkController.state.caipNetwork;
|
|
294
|
-
if (!caipNetwork) {
|
|
295
|
-
return;
|
|
296
|
-
}
|
|
297
|
-
const networkToken = balances.find(token => token.address === networkAddress);
|
|
277
|
+
state.myTokensWithBalance = balances;
|
|
298
278
|
balances.forEach(token => {
|
|
299
279
|
state.tokensPriceMap[token.address] = token.price || 0;
|
|
300
280
|
});
|
|
301
|
-
state.myTokensWithBalance = balances.filter(token => token.address?.startsWith(caipNetwork.id));
|
|
302
|
-
state.networkBalanceInUSD = networkToken ? NumberUtil.multiply(networkToken.quantity.numeric, networkToken.price).toString() : '0';
|
|
303
281
|
},
|
|
304
282
|
setToToken(toToken) {
|
|
305
283
|
if (!toToken) {
|
|
@@ -334,36 +312,42 @@ export const SwapController = {
|
|
|
334
312
|
},
|
|
335
313
|
// -- Swap ---------------------------------------------- //
|
|
336
314
|
async swapTokens() {
|
|
337
|
-
const address =
|
|
315
|
+
const address = ConnectionsController.state.activeAddress;
|
|
338
316
|
const sourceToken = state.sourceToken;
|
|
339
317
|
const toToken = state.toToken;
|
|
340
318
|
const haveSourceTokenAmount = NumberUtil.bigNumber(state.sourceTokenAmount).isGreaterThan(0);
|
|
341
|
-
if (!toToken || !sourceToken || state.loadingPrices || !haveSourceTokenAmount) {
|
|
319
|
+
if (!toToken || !sourceToken || state.loadingPrices || !haveSourceTokenAmount || !address) {
|
|
342
320
|
return;
|
|
343
321
|
}
|
|
344
322
|
state.loadingQuote = true;
|
|
345
323
|
const amountDecimal = NumberUtil.bigNumber(state.sourceTokenAmount).multipliedBy(10 ** sourceToken.decimals).integerValue();
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
324
|
+
try {
|
|
325
|
+
const quoteResponse = await BlockchainApiController.fetchSwapQuote({
|
|
326
|
+
userAddress: address,
|
|
327
|
+
projectId: OptionsController.state.projectId,
|
|
328
|
+
from: sourceToken.address,
|
|
329
|
+
to: toToken.address,
|
|
330
|
+
gasPrice: state.gasFee,
|
|
331
|
+
amount: amountDecimal.toString()
|
|
332
|
+
});
|
|
333
|
+
const quoteToAmount = quoteResponse?.quotes?.[0]?.toAmount;
|
|
334
|
+
if (!quoteToAmount) {
|
|
335
|
+
state.loadingQuote = false;
|
|
336
|
+
return;
|
|
337
|
+
}
|
|
338
|
+
const toTokenAmount = NumberUtil.bigNumber(quoteToAmount).dividedBy(10 ** toToken.decimals).toString();
|
|
339
|
+
this.setToTokenAmount(toTokenAmount);
|
|
340
|
+
const isInsufficientToken = this.hasInsufficientToken(state.sourceTokenAmount, sourceToken.address);
|
|
341
|
+
if (isInsufficientToken) {
|
|
342
|
+
state.inputError = 'Insufficient balance';
|
|
343
|
+
} else {
|
|
344
|
+
state.inputError = undefined;
|
|
345
|
+
this.setTransactionDetails();
|
|
346
|
+
}
|
|
347
|
+
} catch (error) {
|
|
348
|
+
SnackController.showError('Failed to get swap quote');
|
|
349
|
+
} finally {
|
|
350
|
+
state.loadingQuote = false;
|
|
367
351
|
}
|
|
368
352
|
},
|
|
369
353
|
// -- Create Transactions -------------------------------------- //
|
|
@@ -427,7 +411,7 @@ export const SwapController = {
|
|
|
427
411
|
if (!response) {
|
|
428
412
|
throw new Error('createAllowanceTransaction - No response from generateApproveCalldata');
|
|
429
413
|
}
|
|
430
|
-
const gasLimit = await
|
|
414
|
+
const gasLimit = await ConnectionsController.estimateGas({
|
|
431
415
|
address: fromAddress,
|
|
432
416
|
to: CoreHelperUtil.getPlainAddress(response.tx.to),
|
|
433
417
|
data: response.tx.data
|
|
@@ -477,7 +461,7 @@ export const SwapController = {
|
|
|
477
461
|
if (!fromCaipAddress || !sourceTokenAmount || !sourceToken || !toToken) {
|
|
478
462
|
return undefined;
|
|
479
463
|
}
|
|
480
|
-
const amount =
|
|
464
|
+
const amount = ConnectionsController.parseUnits(sourceTokenAmount, sourceToken.decimals)?.toString();
|
|
481
465
|
try {
|
|
482
466
|
const response = await BlockchainApiController.generateSwapCalldata({
|
|
483
467
|
projectId: OptionsController.state.projectId,
|
|
@@ -516,39 +500,29 @@ export const SwapController = {
|
|
|
516
500
|
async sendTransactionForApproval(data) {
|
|
517
501
|
const {
|
|
518
502
|
fromAddress,
|
|
519
|
-
|
|
503
|
+
network
|
|
520
504
|
} = this.getParams();
|
|
521
505
|
state.loadingApprovalTransaction = true;
|
|
522
|
-
|
|
523
|
-
if (isAuthConnector) {
|
|
524
|
-
RouterController.pushTransactionStack({
|
|
525
|
-
view: null,
|
|
526
|
-
goBack: true,
|
|
527
|
-
onSuccess() {
|
|
528
|
-
SnackController.showLoading(approveLimitMessage);
|
|
529
|
-
}
|
|
530
|
-
});
|
|
531
|
-
} else {
|
|
532
|
-
SnackController.showLoading(approveLimitMessage);
|
|
533
|
-
}
|
|
506
|
+
SnackController.showLoading('Approve limit increase in your wallet');
|
|
534
507
|
try {
|
|
535
|
-
await
|
|
508
|
+
await ConnectionsController.sendTransaction({
|
|
536
509
|
address: fromAddress,
|
|
537
510
|
to: data.to,
|
|
538
511
|
data: data.data,
|
|
539
512
|
value: BigInt(data.value),
|
|
540
513
|
gasPrice: BigInt(data.gasPrice),
|
|
541
|
-
chainNamespace:
|
|
514
|
+
chainNamespace: ConnectionsController.state.activeNamespace,
|
|
515
|
+
network
|
|
542
516
|
});
|
|
543
517
|
await this.swapTokens();
|
|
544
518
|
await this.getTransaction();
|
|
545
519
|
state.approvalTransaction = undefined;
|
|
546
|
-
state.loadingApprovalTransaction = false;
|
|
547
520
|
} catch (err) {
|
|
548
521
|
const error = err;
|
|
549
522
|
state.transactionError = error?.shortMessage;
|
|
550
|
-
state.loadingApprovalTransaction = false;
|
|
551
523
|
SnackController.showError(error?.shortMessage ?? 'Transaction error');
|
|
524
|
+
} finally {
|
|
525
|
+
state.loadingApprovalTransaction = false;
|
|
552
526
|
}
|
|
553
527
|
},
|
|
554
528
|
async sendTransactionForSwap(data) {
|
|
@@ -557,57 +531,45 @@ export const SwapController = {
|
|
|
557
531
|
}
|
|
558
532
|
const {
|
|
559
533
|
fromAddress,
|
|
560
|
-
|
|
561
|
-
|
|
534
|
+
isAuthConnector,
|
|
535
|
+
network
|
|
562
536
|
} = this.getParams();
|
|
563
537
|
state.loadingTransaction = true;
|
|
564
|
-
const
|
|
565
|
-
|
|
566
|
-
if (isAuthConnector) {
|
|
567
|
-
RouterController.pushTransactionStack({
|
|
568
|
-
view: 'Account',
|
|
569
|
-
goBack: false,
|
|
570
|
-
onSuccess() {
|
|
571
|
-
SnackController.showLoading(snackbarPendingMessage);
|
|
572
|
-
SwapController.resetState();
|
|
573
|
-
}
|
|
574
|
-
});
|
|
575
|
-
} else {
|
|
576
|
-
SnackController.showLoading('Confirm transaction in your wallet');
|
|
577
|
-
}
|
|
538
|
+
const snackbarSuccessMessage = `Swapped ${state.sourceToken?.symbol} to ${state.toToken?.symbol}`;
|
|
539
|
+
SnackController.showLoading('Confirm transaction in your wallet');
|
|
578
540
|
try {
|
|
579
|
-
const forceUpdateAddresses = [state.sourceToken?.address, state.toToken?.address].
|
|
580
|
-
const transactionHash = await
|
|
541
|
+
const forceUpdateAddresses = [state.sourceToken?.address, state.toToken?.address].filter(Boolean);
|
|
542
|
+
const transactionHash = await ConnectionsController.sendTransaction({
|
|
581
543
|
address: fromAddress,
|
|
582
544
|
to: data.to,
|
|
583
545
|
data: data.data,
|
|
584
546
|
gas: data.gas,
|
|
585
547
|
gasPrice: BigInt(data.gasPrice),
|
|
586
548
|
value: data.value,
|
|
587
|
-
chainNamespace:
|
|
549
|
+
chainNamespace: ConnectionsController.state.activeNamespace,
|
|
550
|
+
network
|
|
588
551
|
});
|
|
589
552
|
state.loadingTransaction = false;
|
|
590
|
-
SnackController.showSuccess(snackbarSuccessMessage);
|
|
553
|
+
SnackController.showSuccess(snackbarSuccessMessage, true);
|
|
591
554
|
EventsController.sendEvent({
|
|
592
555
|
type: 'track',
|
|
593
556
|
event: 'SWAP_SUCCESS',
|
|
594
557
|
properties: {
|
|
595
|
-
network:
|
|
558
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
596
559
|
swapFromToken: this.state.sourceToken?.symbol || '',
|
|
597
560
|
swapToToken: this.state.toToken?.symbol || '',
|
|
598
561
|
swapFromAmount: this.state.sourceTokenAmount || '',
|
|
599
562
|
swapToAmount: this.state.toTokenAmount || '',
|
|
600
|
-
isSmartAccount:
|
|
563
|
+
isSmartAccount: ConnectionsController.state.accountType === 'smartAccount'
|
|
601
564
|
}
|
|
602
565
|
});
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
RouterController.replace('AccountDefault');
|
|
606
|
-
}
|
|
566
|
+
RouterController.replace(isAuthConnector ? 'Account' : 'AccountDefault');
|
|
567
|
+
SwapController.clearTokens();
|
|
607
568
|
SwapController.getMyTokensWithBalance(forceUpdateAddresses);
|
|
608
|
-
AccountController.fetchTokenBalance();
|
|
609
569
|
setTimeout(() => {
|
|
610
|
-
|
|
570
|
+
if (ConnectionsController.state.activeAddress) {
|
|
571
|
+
TransactionsController.fetchTransactions(ConnectionsController.state.activeAddress, true);
|
|
572
|
+
}
|
|
611
573
|
}, 5000);
|
|
612
574
|
return transactionHash;
|
|
613
575
|
} catch (err) {
|
|
@@ -620,26 +582,59 @@ export const SwapController = {
|
|
|
620
582
|
event: 'SWAP_ERROR',
|
|
621
583
|
properties: {
|
|
622
584
|
message: error?.shortMessage ?? error?.message ?? 'Unknown',
|
|
623
|
-
network:
|
|
585
|
+
network: ConnectionsController.state.activeNetwork?.caipNetworkId || '',
|
|
624
586
|
swapFromToken: this.state.sourceToken?.symbol || '',
|
|
625
587
|
swapToToken: this.state.toToken?.symbol || '',
|
|
626
588
|
swapFromAmount: this.state.sourceTokenAmount || '',
|
|
627
589
|
swapToAmount: this.state.toTokenAmount || '',
|
|
628
|
-
isSmartAccount:
|
|
590
|
+
isSmartAccount: ConnectionsController.state.accountType === 'smartAccount'
|
|
629
591
|
}
|
|
630
592
|
});
|
|
631
593
|
return undefined;
|
|
632
594
|
}
|
|
633
595
|
},
|
|
596
|
+
clearTransactionLoaders() {
|
|
597
|
+
state.loadingApprovalTransaction = false;
|
|
598
|
+
state.loadingBuildTransaction = false;
|
|
599
|
+
state.loadingTransaction = false;
|
|
600
|
+
},
|
|
601
|
+
clearTokens() {
|
|
602
|
+
state.sourceToken = initialState.sourceToken;
|
|
603
|
+
state.sourceTokenAmount = initialState.sourceTokenAmount;
|
|
604
|
+
state.sourceTokenPriceInUSD = initialState.sourceTokenPriceInUSD;
|
|
605
|
+
state.toToken = initialState.toToken;
|
|
606
|
+
state.toTokenAmount = initialState.toTokenAmount;
|
|
607
|
+
state.toTokenPriceInUSD = initialState.toTokenPriceInUSD;
|
|
608
|
+
state.inputError = initialState.inputError;
|
|
609
|
+
state.loadingApprovalTransaction = initialState.loadingApprovalTransaction;
|
|
610
|
+
state.loadingBuildTransaction = initialState.loadingBuildTransaction;
|
|
611
|
+
state.loadingTransaction = initialState.loadingTransaction;
|
|
612
|
+
state.fetchError = initialState.fetchError;
|
|
613
|
+
state.transactionError = initialState.transactionError;
|
|
614
|
+
state.swapTransaction = initialState.swapTransaction;
|
|
615
|
+
state.approvalTransaction = initialState.approvalTransaction;
|
|
616
|
+
},
|
|
617
|
+
resetState() {
|
|
618
|
+
this.clearTokens();
|
|
619
|
+
state.myTokensWithBalance = initialState.myTokensWithBalance;
|
|
620
|
+
state.tokensPriceMap = initialState.tokensPriceMap;
|
|
621
|
+
state.networkPrice = initialState.networkPrice;
|
|
622
|
+
state.networkTokenSymbol = initialState.networkTokenSymbol;
|
|
623
|
+
},
|
|
634
624
|
// -- Checks -------------------------------------------- //
|
|
635
625
|
hasInsufficientToken(sourceTokenAmount, sourceTokenAddress) {
|
|
626
|
+
const {
|
|
627
|
+
balances
|
|
628
|
+
} = ConnectionsController.state;
|
|
629
|
+
const networkToken = balances?.find(t => t.address === undefined);
|
|
630
|
+
const networkBalanceInUSD = networkToken ? NumberUtil.multiply(networkToken.quantity?.numeric ?? '0', networkToken.price).toString() : '0';
|
|
636
631
|
const isInsufficientSourceTokenForSwap = SwapCalculationUtil.isInsufficientSourceTokenForSwap(sourceTokenAmount, sourceTokenAddress, state.myTokensWithBalance);
|
|
637
632
|
let insufficientNetworkTokenForGas = true;
|
|
638
|
-
if (
|
|
633
|
+
if (ConnectionsController.state.accountType === 'smartAccount') {
|
|
639
634
|
// Smart Accounts may pay gas in any ERC20 token
|
|
640
635
|
insufficientNetworkTokenForGas = false;
|
|
641
636
|
} else {
|
|
642
|
-
insufficientNetworkTokenForGas = SwapCalculationUtil.isInsufficientNetworkTokenForGas(
|
|
637
|
+
insufficientNetworkTokenForGas = SwapCalculationUtil.isInsufficientNetworkTokenForGas(networkBalanceInUSD, state.gasPriceInUSD);
|
|
643
638
|
}
|
|
644
639
|
return insufficientNetworkTokenForGas || isInsufficientSourceTokenForSwap;
|
|
645
640
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["subscribeKey","subKey","proxy","subscribe","sub","NumberUtil","ConstantsUtil","SwapApiUtil","NetworkController","BlockchainApiController","OptionsController","SwapCalculationUtil","SnackController","RouterController","ConnectorController","AccountController","CoreHelperUtil","ConnectionController","TransactionsController","EventsController","ConnectionsController","INITIAL_GAS_LIMIT","TO_AMOUNT_DECIMALS","TransactionError","Error","constructor","message","shortMessage","name","initialState","initializing","initialized","loadingPrices","loadingQuote","loadingApprovalTransaction","loadingBuildTransaction","loadingTransaction","fetchError","approvalTransaction","undefined","swapTransaction","transactionError","sourceToken","sourceTokenAmount","sourceTokenPriceInUSD","toToken","toTokenAmount","toTokenPriceInUSD","networkPrice","networkBalanceInUSD","networkTokenSymbol","inputError","slippage","CONVERT_SLIPPAGE_TOLERANCE","tokens","popularTokens","suggestedTokens","foundTokens","myTokensWithBalance","tokensPriceMap","gasFee","gasPriceInUSD","priceImpact","maxSlippage","providerFee","state","SwapController","callback","key","getParams","activeAddress","activeNamespace","activeNetwork","address","getPlainAddress","networkAddress","caipNetworkId","NATIVE_TOKEN_ADDRESS","type","connectedConnector","invalidToToken","decimals","invalidSourceToken","bigNumber","isGreaterThan","invalidSourceTokenAmount","fromAddress","fromCaipAddress","sourceTokenAddress","toTokenAddress","toTokenDecimals","sourceTokenDecimals","availableToSwap","isAuthConnector","switchTokens","newSourceToken","sourceTokenWithBalance","find","token","newToToken","newSourceTokenAmount","setSourceToken","setToToken","setSourceTokenAmount","setToTokenAmount","swapTokens","resetState","fetchTokens","getTokenList","getNetworkTokenPrice","getMyTokensWithBalance","networkToken","symbol","startsWith","sort","aTokenInfo","bTokenInfo","filter","SWAP_SUGGESTED_TOKENS","includes","forceUpdate","balances","getInitialGasPrice","setBalances","getFilteredPopularTokens","some","t","setTokenPrice","amount","initializeState","error","showError","goBack","getAddressPrice","existPrice","response","fetchTokenPrice","projectId","addresses","fungibles","allTokens","price","p","toLowerCase","priceAsFloat","parseFloat","toString","res","fetchGasPrice","gasPrice","gasPriceInUsd","value","standard","BigInt","gasLimit","getGasPriceInUSD","getProviderFeePrice","caipNetwork","forEach","id","multiply","quantity","numeric","formatNumberToLocalString","target","haveSourceTokenAmount","amountDecimal","multipliedBy","integerValue","quoteResponse","fetchSwapQuote","userAddress","from","to","quoteToAmount","quotes","toAmount","dividedBy","isInsufficientToken","hasInsufficientToken","setTransactionDetails","getTransaction","hasAllowance","fetchSwapAllowance","tokenAddress","transaction","createSwapTransaction","createAllowanceTransaction","generateApproveCalldata","estimateGas","tx","data","gas","eip155","parseUnits","generateSwapCalldata","isSourceNetworkToken","sendTransactionForApproval","approveLimitMessage","pushTransactionStack","view","onSuccess","showLoading","sendTransaction","chainNamespace","err","sendTransactionForSwap","snackbarPendingMessage","snackbarSuccessMessage","forceUpdateAddresses","join","transactionHash","showSuccess","sendEvent","event","properties","network","swapFromToken","swapToToken","swapFromAmount","swapToAmount","isSmartAccount","preferredAccountType","replace","fetchTokenBalance","setTimeout","fetchTransactions","isInsufficientSourceTokenForSwap","insufficientNetworkTokenForGas","isInsufficientNetworkTokenForGas","getPriceImpact","getMaxSlippage","getProviderFee"],"sourceRoot":"../../../src","sources":["controllers/SwapController.ts"],"mappings":"AAAA,SAASA,YAAY,IAAIC,MAAM,QAAQ,cAAc;AACrD,SAASC,KAAK,EAAEC,SAAS,IAAIC,GAAG,QAAQ,QAAQ;AAChD,SAASC,UAAU,QAAQ,mCAAmC;AAE9D,SAASC,aAAa,QAAQ,wBAAwB;AACtD,SAASC,WAAW,QAAQ,sBAAsB;AAClD,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,mBAAmB,QAAQ,8BAA8B;AAClE,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,qBAAqB,QAAQ,yBAAyB;;AAE/D;AACA,OAAO,MAAMC,iBAAiB,GAAG,MAAM;AACvC,OAAO,MAAMC,kBAAkB,GAAG,CAAC;;AAEnC;;AAUA,MAAMC,gBAAgB,SAASC,KAAK,CAAC;EAGnCC,WAAWA,CAACC,OAAgB,EAAEC,YAAqB,EAAE;IACnD,KAAK,CAACD,OAAO,CAAC;IACd,IAAI,CAACE,IAAI,GAAG,kBAAkB;IAC9B,IAAI,CAACD,YAAY,GAAGA,YAAY;EAClC;AACF;AAqDA;AACA,MAAME,YAAiC,GAAG;EACxC;EACAC,YAAY,EAAE,KAAK;EACnBC,WAAW,EAAE,KAAK;EAClBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,KAAK;EACnBC,0BAA0B,EAAE,KAAK;EACjCC,uBAAuB,EAAE,KAAK;EAC9BC,kBAAkB,EAAE,KAAK;EAEzB;EACAC,UAAU,EAAE,KAAK;EAEjB;EACAC,mBAAmB,EAAEC,SAAS;EAC9BC,eAAe,EAAED,SAAS;EAC1BE,gBAAgB,EAAEF,SAAS;EAE3B;EACAG,WAAW,EAAEH,SAAS;EACtBI,iBAAiB,EAAE,EAAE;EACrBC,qBAAqB,EAAE,CAAC;EACxBC,OAAO,EAAEN,SAAS;EAClBO,aAAa,EAAE,EAAE;EACjBC,iBAAiB,EAAE,CAAC;EACpBC,YAAY,EAAE,GAAG;EACjBC,mBAAmB,EAAE,GAAG;EACxBC,kBAAkB,EAAE,EAAE;EACtBC,UAAU,EAAEZ,SAAS;EAErB;EACAa,QAAQ,EAAE9C,aAAa,CAAC+C,0BAA0B;EAElD;EACAC,MAAM,EAAEf,SAAS;EACjBgB,aAAa,EAAEhB,SAAS;EACxBiB,eAAe,EAAEjB,SAAS;EAC1BkB,WAAW,EAAElB,SAAS;EACtBmB,mBAAmB,EAAEnB,SAAS;EAC9BoB,cAAc,EAAE,CAAC,CAAC;EAElB;EACAC,MAAM,EAAE,GAAG;EACXC,aAAa,EAAE,CAAC;EAChBC,WAAW,EAAEvB,SAAS;EACtBwB,WAAW,EAAExB,SAAS;EACtByB,WAAW,EAAEzB;AACf,CAAC;AAED,MAAM0B,KAAK,GAAG/D,KAAK,CAAsB2B,YAAY,CAAC;;AAEtD;AACA,OAAO,MAAMqC,cAAc,GAAG;EAC5BD,KAAK;EAEL9D,SAASA,CAACgE,QAAiD,EAAE;IAC3D,OAAO/D,GAAG,CAAC6D,KAAK,EAAE,MAAME,QAAQ,CAACF,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDjE,YAAYA,CAAqBoE,GAAM,EAAED,QAAiD,EAAE;IAC1F,OAAOlE,MAAM,CAACgE,KAAK,EAAEG,GAAG,EAAED,QAAQ,CAAC;EACrC,CAAC;EAEDE,SAASA,CAAA,EAAG;IACV,MAAM;MAAEC,aAAa;MAAEC,eAAe;MAAEC;IAAc,CAAC,GAAGpD,qBAAqB,CAAC6C,KAAK;IACrF,MAAMQ,OAAO,GAAGzD,cAAc,CAAC0D,eAAe,CAACJ,aAAa,CAAC;IAE7D,IAAI,CAACC,eAAe,IAAI,CAACC,aAAa,EAAE;MACtC,MAAM,IAAIhD,KAAK,CAAC,+DAA+D,CAAC;IAClF;IAEA,MAAMmD,cAAc,GAAI,GAAEH,aAAa,CAACI,aAAa,IAAI,UAAW,IAClEtE,aAAa,CAACuE,oBAAoB,CAACN,eAAe,CACnD,EAAC;IAEF,MAAMO,IAAI,GAAGhE,mBAAmB,CAACmD,KAAK,CAACc,kBAAkB;IAEzD,IAAI,CAACN,OAAO,EAAE;MACZ,MAAM,IAAIjD,KAAK,CAAC,2CAA2C,CAAC;IAC9D;IAEA,MAAMwD,cAAc,GAAG,CAACf,KAAK,CAACpB,OAAO,EAAE4B,OAAO,IAAI,CAACR,KAAK,CAACpB,OAAO,EAAEoC,QAAQ;IAC1E,MAAMC,kBAAkB,GACtB,CAACjB,KAAK,CAACvB,WAAW,EAAE+B,OAAO,IAC3B,CAACR,KAAK,CAACvB,WAAW,EAAEuC,QAAQ,IAC5BhB,KAAK,CAACvB,WAAW,CAAC+B,OAAO,KAAKR,KAAK,CAACpB,OAAO,EAAE4B,OAAO,IACpD,CAACpE,UAAU,CAAC8E,SAAS,CAAClB,KAAK,CAACtB,iBAAiB,CAAC,CAACyC,aAAa,CAAC,CAAC,CAAC;IACjE,MAAMC,wBAAwB,GAAG,CAACpB,KAAK,CAACtB,iBAAiB;IAEzD,OAAO;MACLgC,cAAc;MACdW,WAAW,EAAEb,OAAO;MACpBc,eAAe,EAAEjB,aAAa;MAC9BkB,kBAAkB,EAAEvB,KAAK,CAACvB,WAAW,EAAE+B,OAAO;MAC9CgB,cAAc,EAAExB,KAAK,CAACpB,OAAO,EAAE4B,OAAO;MACtC3B,aAAa,EAAEmB,KAAK,CAACnB,aAAa;MAClC4C,eAAe,EAAEzB,KAAK,CAACpB,OAAO,EAAEoC,QAAQ;MACxCtC,iBAAiB,EAAEsB,KAAK,CAACtB,iBAAiB;MAC1CgD,mBAAmB,EAAE1B,KAAK,CAACvB,WAAW,EAAEuC,QAAQ;MAChDD,cAAc;MACdE,kBAAkB;MAClBG,wBAAwB;MACxBO,eAAe,EACbtB,aAAa,IAAI,CAACU,cAAc,IAAI,CAACE,kBAAkB,IAAI,CAACG,wBAAwB;MACtFQ,eAAe,EAAEf,IAAI,KAAK;IAC5B,CAAC;EACH,CAAC;EAEDgB,YAAYA,CAAA,EAAG;IACb,IAAI7B,KAAK,CAACnC,YAAY,IAAI,CAACmC,KAAK,CAAClC,WAAW,EAAE;MAC5C;IACF;IAEA,IAAIgE,cAAc,GAAG9B,KAAK,CAACpB,OAAO,GAAG;MAAE,GAAGoB,KAAK,CAACpB;IAAQ,CAAC,GAAGN,SAAS;IACrE,MAAMyD,sBAAsB,GAAG/B,KAAK,CAACP,mBAAmB,EAAEuC,IAAI,CAC5DC,KAAK,IAAIA,KAAK,CAACzB,OAAO,KAAKsB,cAAc,EAAEtB,OAC7C,CAAC;IAED,IAAIuB,sBAAsB,EAAE;MAC1BD,cAAc,GAAGC,sBAAsB;IACzC;IAEA,MAAMG,UAAU,GAAGlC,KAAK,CAACvB,WAAW,GAAG;MAAE,GAAGuB,KAAK,CAACvB;IAAY,CAAC,GAAGH,SAAS;IAC3E,MAAM6D,oBAAoB,GACxBL,cAAc,IAAI9B,KAAK,CAACnB,aAAa,KAAK,EAAE,GAAG,GAAG,GAAGmB,KAAK,CAACnB,aAAa;IAE1E,IAAI,CAACuD,cAAc,CAACN,cAAc,CAAC;IACnC,IAAI,CAACO,UAAU,CAACH,UAAU,CAAC;IAE3B,IAAI,CAACI,oBAAoB,CAACH,oBAAoB,CAAC;IAC/C,IAAI,CAACI,gBAAgB,CAAC,EAAE,CAAC;IACzB,IAAI,CAACC,UAAU,CAAC,CAAC;EACnB,CAAC;EAEDC,UAAUA,CAAA,EAAG;IACXzC,KAAK,CAACP,mBAAmB,GAAG7B,YAAY,CAAC6B,mBAAmB;IAC5DO,KAAK,CAACN,cAAc,GAAG9B,YAAY,CAAC8B,cAAc;IAClDM,KAAK,CAAClC,WAAW,GAAGF,YAAY,CAACE,WAAW;IAC5CkC,KAAK,CAACvB,WAAW,GAAGb,YAAY,CAACa,WAAW;IAC5CuB,KAAK,CAACtB,iBAAiB,GAAGd,YAAY,CAACc,iBAAiB;IACxDsB,KAAK,CAACrB,qBAAqB,GAAGf,YAAY,CAACe,qBAAqB;IAChEqB,KAAK,CAACpB,OAAO,GAAGhB,YAAY,CAACgB,OAAO;IACpCoB,KAAK,CAACnB,aAAa,GAAGjB,YAAY,CAACiB,aAAa;IAChDmB,KAAK,CAAClB,iBAAiB,GAAGlB,YAAY,CAACkB,iBAAiB;IACxDkB,KAAK,CAACjB,YAAY,GAAGnB,YAAY,CAACmB,YAAY;IAC9CiB,KAAK,CAACf,kBAAkB,GAAGrB,YAAY,CAACqB,kBAAkB;IAC1De,KAAK,CAAChB,mBAAmB,GAAGpB,YAAY,CAACoB,mBAAmB;IAC5DgB,KAAK,CAACd,UAAU,GAAGtB,YAAY,CAACsB,UAAU;EAC5C,CAAC;EAED,MAAMwD,WAAWA,CAAA,EAAG;IAClB,MAAM;MAAEhC;IAAe,CAAC,GAAG,IAAI,CAACN,SAAS,CAAC,CAAC;IAE3C,MAAM,IAAI,CAACuC,YAAY,CAAC,CAAC;IACzB,MAAM,IAAI,CAACC,oBAAoB,CAAC,CAAC;IACjC,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAEnC,MAAMC,YAAY,GAAG9C,KAAK,CAACX,MAAM,EAAE2C,IAAI,CAACC,KAAK,IAAIA,KAAK,CAACzB,OAAO,KAAKE,cAAc,CAAC;IAElF,IAAIoC,YAAY,EAAE;MAChB9C,KAAK,CAACf,kBAAkB,GAAG6D,YAAY,CAACC,MAAM;IAChD;IAEA,MAAMtE,WAAW,GACfuB,KAAK,CAACP,mBAAmB,EAAEuC,IAAI,CAACC,KAAK,IAAIA,KAAK,CAACzB,OAAO,CAACwC,UAAU,CAACtC,cAAc,CAAC,CAAC,IAClFV,KAAK,CAACP,mBAAmB,GAAG,CAAC,CAAC;IAEhC,IAAI,CAAC2C,cAAc,CAAC3D,WAAW,CAAC;IAChC,IAAI,CAAC6D,oBAAoB,CAAC,GAAG,CAAC;EAChC,CAAC;EAED,MAAMK,YAAYA,CAAA,EAAG;IACnB,MAAMtD,MAAM,GAAG,MAAM/C,WAAW,CAACqG,YAAY,CAAC,CAAC;IAE/C3C,KAAK,CAACX,MAAM,GAAGA,MAAM;IACrBW,KAAK,CAACV,aAAa,GAAGD,MAAM,CAAC4D,IAAI,CAAC,CAACC,UAAU,EAAEC,UAAU,KAAK;MAC5D,IAAID,UAAU,CAACH,MAAM,GAAGI,UAAU,CAACJ,MAAM,EAAE;QACzC,OAAO,CAAC,CAAC;MACX;MACA,IAAIG,UAAU,CAACH,MAAM,GAAGI,UAAU,CAACJ,MAAM,EAAE;QACzC,OAAO,CAAC;MACV;MAEA,OAAO,CAAC;IACV,CAAC,CAAC;IACF/C,KAAK,CAACT,eAAe,GAAGF,MAAM,CAAC+D,MAAM,CAACnB,KAAK,IAAI;MAC7C,IAAI5F,aAAa,CAACgH,qBAAqB,CAACC,QAAQ,CAACrB,KAAK,CAACc,MAAM,CAAC,EAAE;QAC9D,OAAO,IAAI;MACb;MAEA,OAAO,KAAK;IACd,CAAC,EAAE,CAAC,CAAC,CAAC;EACR,CAAC;EAED,MAAMF,sBAAsBA,CAACU,WAAoB,EAAE;IACjD,MAAMC,QAAQ,GAAG,MAAMlH,WAAW,CAACuG,sBAAsB,CAACU,WAAW,CAAC;IAEtE,IAAI,CAACC,QAAQ,EAAE;MACb;IACF;IAEA,MAAM,IAAI,CAACC,kBAAkB,CAAC,CAAC;IAC/B,IAAI,CAACC,WAAW,CAACF,QAAQ,CAAC;EAC5B,CAAC;EAEDG,wBAAwBA,CAAA,EAAG;IACzB,OAAO3D,KAAK,CAACV,aAAa,EAAE8D,MAAM,CAChCnB,KAAK,IAAI,CAACjC,KAAK,CAACP,mBAAmB,EAAEmE,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACrD,OAAO,KAAKyB,KAAK,CAACzB,OAAO,CAC5E,CAAC;EACH,CAAC;EAED4B,cAAcA,CAAC3D,WAA6C,EAAE;IAC5D,IAAI,CAACA,WAAW,EAAE;MAChBuB,KAAK,CAACvB,WAAW,GAAGA,WAAW;MAC/BuB,KAAK,CAACtB,iBAAiB,GAAG,EAAE;MAC5BsB,KAAK,CAACrB,qBAAqB,GAAG,CAAC;MAE/B;IACF;IAEAqB,KAAK,CAACvB,WAAW,GAAGA,WAAW;IAC/B,IAAI,CAACqF,aAAa,CAACrF,WAAW,CAAC+B,OAAO,EAAE,aAAa,CAAC;EACxD,CAAC;EAED8B,oBAAoBA,CAACyB,MAAc,EAAE;IACnC/D,KAAK,CAACtB,iBAAiB,GAAGqF,MAAM;IAEhC,IAAIA,MAAM,KAAK,EAAE,EAAE;MACjB/D,KAAK,CAACnB,aAAa,GAAG,EAAE;IAC1B;EACF,CAAC;EAED,MAAMmF,eAAeA,CAAA,EAAG;IACtB,IAAIhE,KAAK,CAACnC,YAAY,EAAE;MACtB;IACF;IAEAmC,KAAK,CAACnC,YAAY,GAAG,IAAI;IACzB,IAAI,CAACmC,KAAK,CAAClC,WAAW,EAAE;MACtB,IAAI;QACF,MAAM,IAAI,CAAC4E,WAAW,CAAC,CAAC;QACxB1C,KAAK,CAAClC,WAAW,GAAG,IAAI;MAC1B,CAAC,CAAC,OAAOmG,KAAK,EAAE;QACdjE,KAAK,CAAClC,WAAW,GAAG,KAAK;QACzBnB,eAAe,CAACuH,SAAS,CAAC,2BAA2B,CAAC;QACtDtH,gBAAgB,CAACuH,MAAM,CAAC,CAAC;MAC3B;IACF;IACAnE,KAAK,CAACnC,YAAY,GAAG,KAAK;EAC5B,CAAC;EAED,MAAMuG,eAAeA,CAAC5D,OAAe,EAAE;IACrC,MAAM6D,UAAU,GAAGrE,KAAK,CAACN,cAAc,CAACc,OAAO,CAAC;IAEhD,IAAI6D,UAAU,EAAE;MACd,OAAOA,UAAU;IACnB;IAEA,MAAMC,QAAQ,GAAG,MAAM9H,uBAAuB,CAAC+H,eAAe,CAAC;MAC7DC,SAAS,EAAE/H,iBAAiB,CAACuD,KAAK,CAACwE,SAAS;MAC5CC,SAAS,EAAE,CAACjE,OAAO;IACrB,CAAC,CAAC;IACF,MAAMkE,SAAS,GAAGJ,QAAQ,EAAEI,SAAS,IAAI,EAAE;IAC3C,MAAMC,SAAS,GAAG,CAAC,IAAI3E,KAAK,CAACX,MAAM,IAAI,EAAE,CAAC,EAAE,IAAIW,KAAK,CAACP,mBAAmB,IAAI,EAAE,CAAC,CAAC;IACjF,MAAMsD,MAAM,GAAG4B,SAAS,EAAE3C,IAAI,CAACC,KAAK,IAAIA,KAAK,CAACzB,OAAO,KAAKA,OAAO,CAAC,EAAEuC,MAAM;IAC1E,MAAM6B,KAAK,GAAGF,SAAS,CAAC1C,IAAI,CAAC6C,CAAC,IAAIA,CAAC,CAAC9B,MAAM,CAAC+B,WAAW,CAAC,CAAC,KAAK/B,MAAM,EAAE+B,WAAW,CAAC,CAAC,CAAC,EAAEF,KAAK,IAAI,CAAC;IAC/F,MAAMG,YAAY,GAAGC,UAAU,CAACJ,KAAK,CAACK,QAAQ,CAAC,CAAC,CAAC;IAEjDjF,KAAK,CAACN,cAAc,CAACc,OAAO,CAAC,GAAGuE,YAAY;IAE5C,OAAOA,YAAY;EACrB,CAAC;EAED,MAAMnC,oBAAoBA,CAAA,EAAG;IAC3B,MAAM;MAAElC;IAAe,CAAC,GAAG,IAAI,CAACN,SAAS,CAAC,CAAC;IAE3C,MAAMkE,QAAQ,GAAG,MAAM9H,uBAAuB,CAAC+H,eAAe,CAAC;MAC7DC,SAAS,EAAE/H,iBAAiB,CAACuD,KAAK,CAACwE,SAAS;MAC5CC,SAAS,EAAE,CAAC/D,cAAc;IAC5B,CAAC,CAAC;IAEF,MAAMuB,KAAK,GAAGqC,QAAQ,EAAEI,SAAS,GAAG,CAAC,CAAC;IACtC,MAAME,KAAK,GAAG3C,KAAK,EAAE2C,KAAK,CAACK,QAAQ,CAAC,CAAC,IAAI,GAAG;IAC5CjF,KAAK,CAACN,cAAc,CAACgB,cAAc,CAAC,GAAGsE,UAAU,CAACJ,KAAK,CAAC;IACxD5E,KAAK,CAACf,kBAAkB,GAAGgD,KAAK,EAAEc,MAAM,IAAI,EAAE;IAC9C/C,KAAK,CAACjB,YAAY,GAAG6F,KAAK;EAC5B,CAAC;EAED,MAAMnB,kBAAkBA,CAAA,EAAG;IACzB,MAAMyB,GAAG,GAAG,MAAM5I,WAAW,CAAC6I,aAAa,CAAC,CAAC;IAE7C,IAAI,CAACD,GAAG,EAAE;MACR,OAAO;QAAEE,QAAQ,EAAE,IAAI;QAAEC,aAAa,EAAE;MAAK,CAAC;IAChD;IAEA,MAAMC,KAAK,GAAGJ,GAAG,CAACK,QAAQ;IAC1B,MAAM5F,MAAM,GAAG6F,MAAM,CAACF,KAAK,CAAC;IAC5B,MAAMG,QAAQ,GAAGD,MAAM,CAACpI,iBAAiB,CAAC;IAC1C,MAAMgI,QAAQ,GAAG1I,mBAAmB,CAACgJ,gBAAgB,CAAC1F,KAAK,CAACjB,YAAY,EAAE0G,QAAQ,EAAE9F,MAAM,CAAC;IAE3FK,KAAK,CAACL,MAAM,GAAG2F,KAAK;IACpBtF,KAAK,CAACJ,aAAa,GAAGwF,QAAQ;IAE9B,OAAO;MAAEA,QAAQ,EAAEzF,MAAM;MAAEC,aAAa,EAAEI,KAAK,CAACJ;IAAc,CAAC;EACjE,CAAC;EAED+F,mBAAmBA,CAAA,EAAG;IACpB,OAAOjJ,mBAAmB,CAACiJ,mBAAmB,CAC5C3F,KAAK,CAACtB,iBAAiB,EACvBsB,KAAK,CAACrB,qBACR,CAAC;EACH,CAAC;EAED+E,WAAWA,CAACF,QAAgC,EAAE;IAC5C,MAAM;MAAE9C;IAAe,CAAC,GAAG,IAAI,CAACN,SAAS,CAAC,CAAC;IAC3C,MAAMwF,WAAW,GAAGrJ,iBAAiB,CAACyD,KAAK,CAAC4F,WAAW;IAEvD,IAAI,CAACA,WAAW,EAAE;MAChB;IACF;IAEA,MAAM9C,YAAY,GAAGU,QAAQ,CAACxB,IAAI,CAACC,KAAK,IAAIA,KAAK,CAACzB,OAAO,KAAKE,cAAc,CAAC;IAE7E8C,QAAQ,CAACqC,OAAO,CAAC5D,KAAK,IAAI;MACxBjC,KAAK,CAACN,cAAc,CAACuC,KAAK,CAACzB,OAAO,CAAC,GAAGyB,KAAK,CAAC2C,KAAK,IAAI,CAAC;IACxD,CAAC,CAAC;IAEF5E,KAAK,CAACP,mBAAmB,GAAG+D,QAAQ,CAACJ,MAAM,CAACnB,KAAK,IAAIA,KAAK,CAACzB,OAAO,EAAEwC,UAAU,CAAC4C,WAAW,CAACE,EAAE,CAAC,CAAC;IAE/F9F,KAAK,CAAChB,mBAAmB,GAAG8D,YAAY,GACpC1G,UAAU,CAAC2J,QAAQ,CAACjD,YAAY,CAACkD,QAAQ,CAACC,OAAO,EAAEnD,YAAY,CAAC8B,KAAK,CAAC,CAACK,QAAQ,CAAC,CAAC,GACjF,GAAG;EACT,CAAC;EAED5C,UAAUA,CAACzD,OAAyC,EAAE;IACpD,IAAI,CAACA,OAAO,EAAE;MACZoB,KAAK,CAACpB,OAAO,GAAGA,OAAO;MACvBoB,KAAK,CAACnB,aAAa,GAAG,EAAE;MACxBmB,KAAK,CAAClB,iBAAiB,GAAG,CAAC;MAE3B;IACF;IAEAkB,KAAK,CAACpB,OAAO,GAAGA,OAAO;IACvB,IAAI,CAACkF,aAAa,CAAClF,OAAO,CAAC4B,OAAO,EAAE,SAAS,CAAC;EAChD,CAAC;EAED+B,gBAAgBA,CAACwB,MAAc,EAAE;IAC/B/D,KAAK,CAACnB,aAAa,GAAGkF,MAAM,GACxB3H,UAAU,CAAC8J,yBAAyB,CAACnC,MAAM,EAAE1G,kBAAkB,CAAC,GAChE,EAAE;EACR,CAAC;EAED,MAAMyG,aAAaA,CAACtD,OAAe,EAAE2F,MAAuB,EAAE;IAC5D,IAAIvB,KAAK,GAAG5E,KAAK,CAACN,cAAc,CAACc,OAAO,CAAC,IAAI,CAAC;IAE9C,IAAI,CAACoE,KAAK,EAAE;MACV5E,KAAK,CAACjC,aAAa,GAAG,IAAI;MAC1B6G,KAAK,GAAG,MAAM,IAAI,CAACR,eAAe,CAAC5D,OAAO,CAAC;IAC7C;IAEA,IAAI2F,MAAM,KAAK,aAAa,EAAE;MAC5BnG,KAAK,CAACrB,qBAAqB,GAAGiG,KAAK;IACrC,CAAC,MAAM,IAAIuB,MAAM,KAAK,SAAS,EAAE;MAC/BnG,KAAK,CAAClB,iBAAiB,GAAG8F,KAAK;IACjC;IAEA,IAAI5E,KAAK,CAACjC,aAAa,EAAE;MACvBiC,KAAK,CAACjC,aAAa,GAAG,KAAK;IAC7B;IAEA,IAAI,IAAI,CAACqC,SAAS,CAAC,CAAC,CAACuB,eAAe,EAAE;MACpC,IAAI,CAACa,UAAU,CAAC,CAAC;IACnB;EACF,CAAC;EAED;EACA,MAAMA,UAAUA,CAAA,EAAG;IACjB,MAAMhC,OAAO,GAAG1D,iBAAiB,CAACkD,KAAK,CAACQ,OAA0C;IAClF,MAAM/B,WAAW,GAAGuB,KAAK,CAACvB,WAAW;IACrC,MAAMG,OAAO,GAAGoB,KAAK,CAACpB,OAAO;IAC7B,MAAMwH,qBAAqB,GAAGhK,UAAU,CAAC8E,SAAS,CAAClB,KAAK,CAACtB,iBAAiB,CAAC,CAACyC,aAAa,CAAC,CAAC,CAAC;IAE5F,IAAI,CAACvC,OAAO,IAAI,CAACH,WAAW,IAAIuB,KAAK,CAACjC,aAAa,IAAI,CAACqI,qBAAqB,EAAE;MAC7E;IACF;IAEApG,KAAK,CAAChC,YAAY,GAAG,IAAI;IAEzB,MAAMqI,aAAa,GAAGjK,UAAU,CAAC8E,SAAS,CAAClB,KAAK,CAACtB,iBAAiB,CAAC,CAChE4H,YAAY,CAAC,EAAE,IAAI7H,WAAW,CAACuC,QAAQ,CAAC,CACxCuF,YAAY,CAAC,CAAC;IAEjB,MAAMC,aAAa,GAAG,MAAMhK,uBAAuB,CAACiK,cAAc,CAAC;MACjEC,WAAW,EAAElG,OAAO;MACpBgE,SAAS,EAAE/H,iBAAiB,CAACuD,KAAK,CAACwE,SAAS;MAC5CmC,IAAI,EAAElI,WAAW,CAAC+B,OAAO;MACzBoG,EAAE,EAAEhI,OAAO,CAAC4B,OAAO;MACnB4E,QAAQ,EAAEpF,KAAK,CAACL,MAAM;MACtBoE,MAAM,EAAEsC,aAAa,CAACpB,QAAQ,CAAC;IACjC,CAAC,CAAC;IAEFjF,KAAK,CAAChC,YAAY,GAAG,KAAK;IAE1B,MAAM6I,aAAa,GAAGL,aAAa,EAAEM,MAAM,GAAG,CAAC,CAAC,EAAEC,QAAQ;IAE1D,IAAI,CAACF,aAAa,EAAE;MAClB;IACF;IAEA,MAAMhI,aAAa,GAAGzC,UAAU,CAAC8E,SAAS,CAAC2F,aAAa,CAAC,CACtDG,SAAS,CAAC,EAAE,IAAIpI,OAAO,CAACoC,QAAQ,CAAC,CACjCiE,QAAQ,CAAC,CAAC;IAEb,IAAI,CAAC1C,gBAAgB,CAAC1D,aAAa,CAAC;IAEpC,MAAMoI,mBAAmB,GAAG,IAAI,CAACC,oBAAoB,CACnDlH,KAAK,CAACtB,iBAAiB,EACvBD,WAAW,CAAC+B,OACd,CAAC;IAED,IAAIyG,mBAAmB,EAAE;MACvBjH,KAAK,CAACd,UAAU,GAAG,sBAAsB;IAC3C,CAAC,MAAM;MACLc,KAAK,CAACd,UAAU,GAAGZ,SAAS;MAC5B,IAAI,CAAC6I,qBAAqB,CAAC,CAAC;IAC9B;EACF,CAAC;EAED;EACA,MAAMC,cAAcA,CAAA,EAAG;IACrB,MAAM;MAAE9F,eAAe;MAAEK;IAAgB,CAAC,GAAG,IAAI,CAACvB,SAAS,CAAC,CAAC;IAC7D,MAAM3B,WAAW,GAAGuB,KAAK,CAACvB,WAAW;IACrC,MAAMG,OAAO,GAAGoB,KAAK,CAACpB,OAAO;IAE7B,IAAI,CAAC0C,eAAe,IAAI,CAACK,eAAe,IAAI,CAAClD,WAAW,IAAI,CAACG,OAAO,IAAIoB,KAAK,CAAChC,YAAY,EAAE;MAC1F,OAAOM,SAAS;IAClB;IAEA,IAAI;MACF0B,KAAK,CAAC9B,uBAAuB,GAAG,IAAI;MACpC,MAAMmJ,YAAY,GAAG,MAAM/K,WAAW,CAACgL,kBAAkB,CAAC;QACxDZ,WAAW,EAAEpF,eAAe;QAC5BiG,YAAY,EAAE9I,WAAW,CAAC+B,OAAO;QACjC9B,iBAAiB,EAAEsB,KAAK,CAACtB,iBAAiB;QAC1CgD,mBAAmB,EAAEjD,WAAW,CAACuC;MACnC,CAAC,CAAC;MAEF,IAAIwG,WAA0C;MAE9C,IAAIH,YAAY,EAAE;QAChBG,WAAW,GAAG,MAAM,IAAI,CAACC,qBAAqB,CAAC,CAAC;MAClD,CAAC,MAAM;QACLD,WAAW,GAAG,MAAM,IAAI,CAACE,0BAA0B,CAAC,CAAC;MACvD;MAEA1H,KAAK,CAAC9B,uBAAuB,GAAG,KAAK;MACrC8B,KAAK,CAAC5B,UAAU,GAAG,KAAK;MAExB,OAAOoJ,WAAW;IACpB,CAAC,CAAC,OAAOvD,KAAK,EAAE;MACdrH,gBAAgB,CAACuH,MAAM,CAAC,CAAC;MACzBxH,eAAe,CAACuH,SAAS,CAAC,2BAA2B,CAAC;MACtDlE,KAAK,CAAC9B,uBAAuB,GAAG,KAAK;MACrC8B,KAAK,CAAC3B,mBAAmB,GAAGC,SAAS;MACrC0B,KAAK,CAACzB,eAAe,GAAGD,SAAS;MACjC0B,KAAK,CAAC5B,UAAU,GAAG,IAAI;MAEvB,OAAOE,SAAS;IAClB;EACF,CAAC;EAED,MAAMoJ,0BAA0BA,CAAA,EAAG;IACjC,MAAM;MAAEpG,eAAe;MAAED,WAAW;MAAEE,kBAAkB;MAAEC;IAAe,CAAC,GAAG,IAAI,CAACpB,SAAS,CAAC,CAAC;IAE7F,IAAI,CAACkB,eAAe,IAAI,CAACE,cAAc,EAAE;MACvC,OAAOlD,SAAS;IAClB;IAEA,IAAI,CAACiD,kBAAkB,EAAE;MACvB,MAAM,IAAIhE,KAAK,CAAC,6DAA6D,CAAC;IAChF;IAEA,IAAI;MACF,MAAM+G,QAAQ,GAAG,MAAM9H,uBAAuB,CAACmL,uBAAuB,CAAC;QACrEnD,SAAS,EAAE/H,iBAAiB,CAACuD,KAAK,CAACwE,SAAS;QAC5CmC,IAAI,EAAEpF,kBAAkB;QACxBqF,EAAE,EAAEpF,cAAc;QAClBkF,WAAW,EAAEpF;MACf,CAAC,CAAC;MAEF,IAAI,CAACgD,QAAQ,EAAE;QACb,MAAM,IAAI/G,KAAK,CAAC,uEAAuE,CAAC;MAC1F;MACA,MAAMkI,QAAQ,GAAG,MAAMzI,oBAAoB,CAAC4K,WAAW,CAAC;QACtDpH,OAAO,EAAEa,WAA4B;QACrCuF,EAAE,EAAE7J,cAAc,CAAC0D,eAAe,CAAC6D,QAAQ,CAACuD,EAAE,CAACjB,EAAE,CAAkB;QACnEkB,IAAI,EAAExD,QAAQ,CAACuD,EAAE,CAACC;MACpB,CAAC,CAAC;MAEF,MAAMN,WAAW,GAAG;QAClBM,IAAI,EAAExD,QAAQ,CAACuD,EAAE,CAACC,IAAI;QACtBlB,EAAE,EAAE7J,cAAc,CAAC0D,eAAe,CAAC6D,QAAQ,CAACuD,EAAE,CAAClB,IAAI,CAAkB;QACrEoB,GAAG,EAAEtC,QAAQ;QACbL,QAAQ,EAAEI,MAAM,CAAClB,QAAQ,CAACuD,EAAE,CAACG,MAAM,CAAC5C,QAAQ,CAAC;QAC7CE,KAAK,EAAEE,MAAM,CAAClB,QAAQ,CAACuD,EAAE,CAACvC,KAAK,CAAC;QAChCyB,QAAQ,EAAE/G,KAAK,CAACnB;MAClB,CAAC;MAEDmB,KAAK,CAACzB,eAAe,GAAGD,SAAS;MACjC0B,KAAK,CAAC3B,mBAAmB,GAAG;QAC1ByJ,IAAI,EAAEN,WAAW,CAACM,IAAI;QACtBlB,EAAE,EAAEY,WAAW,CAACZ,EAAE;QAClBmB,GAAG,EAAEP,WAAW,CAACO,GAAG,IAAIvC,MAAM,CAAC,CAAC,CAAC;QACjCJ,QAAQ,EAAEoC,WAAW,CAACpC,QAAQ;QAC9BE,KAAK,EAAEkC,WAAW,CAAClC,KAAK;QACxByB,QAAQ,EAAES,WAAW,CAACT;MACxB,CAAC;MAED,OAAO;QACLe,IAAI,EAAEN,WAAW,CAACM,IAAI;QACtBlB,EAAE,EAAEY,WAAW,CAACZ,EAAE;QAClBmB,GAAG,EAAEP,WAAW,CAACO,GAAG,IAAIvC,MAAM,CAAC,CAAC,CAAC;QACjCJ,QAAQ,EAAEoC,WAAW,CAACpC,QAAQ;QAC9BE,KAAK,EAAEkC,WAAW,CAAClC,KAAK;QACxByB,QAAQ,EAAES,WAAW,CAACT;MACxB,CAAC;IACH,CAAC,CAAC,OAAO9C,KAAK,EAAE;MACdrH,gBAAgB,CAACuH,MAAM,CAAC,CAAC;MACzBxH,eAAe,CAACuH,SAAS,CAAC,uCAAuC,CAAC;MAClElE,KAAK,CAAC3B,mBAAmB,GAAGC,SAAS;MACrC0B,KAAK,CAACzB,eAAe,GAAGD,SAAS;MACjC0B,KAAK,CAAC5B,UAAU,GAAG,IAAI;MAEvB,OAAOE,SAAS;IAClB;EACF,CAAC;EAED,MAAMmJ,qBAAqBA,CAAA,EAAG;IAC5B,MAAM;MAAE/G,cAAc;MAAEY,eAAe;MAAE5C;IAAkB,CAAC,GAAG,IAAI,CAAC0B,SAAS,CAAC,CAAC;IAC/E,MAAM3B,WAAW,GAAGuB,KAAK,CAACvB,WAAW;IACrC,MAAMG,OAAO,GAAGoB,KAAK,CAACpB,OAAO;IAE7B,IAAI,CAAC0C,eAAe,IAAI,CAAC5C,iBAAiB,IAAI,CAACD,WAAW,IAAI,CAACG,OAAO,EAAE;MACtE,OAAON,SAAS;IAClB;IAEA,MAAMyF,MAAM,GAAG/G,oBAAoB,CAACiL,UAAU,CAC5CvJ,iBAAiB,EACjBD,WAAW,CAACuC,QACd,CAAC,EAAEiE,QAAQ,CAAC,CAAC;IAEb,IAAI;MACF,MAAMX,QAAQ,GAAG,MAAM9H,uBAAuB,CAAC0L,oBAAoB,CAAC;QAClE1D,SAAS,EAAE/H,iBAAiB,CAACuD,KAAK,CAACwE,SAAS;QAC5CkC,WAAW,EAAEpF,eAAe;QAC5BqF,IAAI,EAAElI,WAAW,CAAC+B,OAAO;QACzBoG,EAAE,EAAEhI,OAAO,CAAC4B,OAAO;QACnBuD,MAAM,EAAEA;MACV,CAAC,CAAC;MAEF,IAAI,CAACO,QAAQ,EAAE;QACb,MAAM,IAAI/G,KAAK,CAAC,+DAA+D,CAAC;MAClF;MAEA,MAAM4K,oBAAoB,GAAG1J,WAAW,CAAC+B,OAAO,KAAKE,cAAc;MAEnE,MAAMqH,GAAG,GAAGvC,MAAM,CAAClB,QAAQ,CAACuD,EAAE,CAACG,MAAM,CAACD,GAAG,CAAC;MAC1C,MAAM3C,QAAQ,GAAGI,MAAM,CAAClB,QAAQ,CAACuD,EAAE,CAACG,MAAM,CAAC5C,QAAQ,CAAC;MAEpD,MAAMoC,WAAW,GAAG;QAClBM,IAAI,EAAExD,QAAQ,CAACuD,EAAE,CAACC,IAAI;QACtBlB,EAAE,EAAE7J,cAAc,CAAC0D,eAAe,CAAC6D,QAAQ,CAACuD,EAAE,CAACjB,EAAE,CAAkB;QACnEmB,GAAG;QACH3C,QAAQ;QACRE,KAAK,EAAE6C,oBAAoB,GAAG3C,MAAM,CAACzB,MAAM,IAAI,GAAG,CAAC,GAAGyB,MAAM,CAAC,GAAG,CAAC;QACjEuB,QAAQ,EAAE/G,KAAK,CAACnB;MAClB,CAAC;MAEDmB,KAAK,CAACJ,aAAa,GAAGlD,mBAAmB,CAACgJ,gBAAgB,CAAC1F,KAAK,CAACjB,YAAY,EAAEgJ,GAAG,EAAE3C,QAAQ,CAAC;MAE7FpF,KAAK,CAAC3B,mBAAmB,GAAGC,SAAS;MACrC0B,KAAK,CAACzB,eAAe,GAAGiJ,WAAW;MAEnC,OAAOA,WAAW;IACpB,CAAC,CAAC,OAAOvD,KAAK,EAAE;MACdrH,gBAAgB,CAACuH,MAAM,CAAC,CAAC;MACzBxH,eAAe,CAACuH,SAAS,CAAC,8BAA8B,CAAC;MACzDlE,KAAK,CAAC3B,mBAAmB,GAAGC,SAAS;MACrC0B,KAAK,CAACzB,eAAe,GAAGD,SAAS;MACjC0B,KAAK,CAAC5B,UAAU,GAAG,IAAI;MAEvB,OAAOE,SAAS;IAClB;EACF,CAAC;EAED,MAAM8J,0BAA0BA,CAACN,IAAuB,EAAE;IACxD,MAAM;MAAEzG,WAAW;MAAEO;IAAgB,CAAC,GAAG,IAAI,CAACxB,SAAS,CAAC,CAAC;IAEzDJ,KAAK,CAAC/B,0BAA0B,GAAG,IAAI;IACvC,MAAMoK,mBAAmB,GAAI,uCAAsC;IAEnE,IAAIzG,eAAe,EAAE;MACnBhF,gBAAgB,CAAC0L,oBAAoB,CAAC;QACpCC,IAAI,EAAE,IAAI;QACVpE,MAAM,EAAE,IAAI;QACZqE,SAASA,CAAA,EAAG;UACV7L,eAAe,CAAC8L,WAAW,CAACJ,mBAAmB,CAAC;QAClD;MACF,CAAC,CAAC;IACJ,CAAC,MAAM;MACL1L,eAAe,CAAC8L,WAAW,CAACJ,mBAAmB,CAAC;IAClD;IAEA,IAAI;MACF,MAAMrL,oBAAoB,CAAC0L,eAAe,CAAC;QACzClI,OAAO,EAAEa,WAA4B;QACrCuF,EAAE,EAAEkB,IAAI,CAAClB,EAAmB;QAC5BkB,IAAI,EAAEA,IAAI,CAACA,IAAqB;QAChCxC,KAAK,EAAEE,MAAM,CAACsC,IAAI,CAACxC,KAAK,CAAC;QACzBF,QAAQ,EAAEI,MAAM,CAACsC,IAAI,CAAC1C,QAAQ,CAAC;QAC/BuD,cAAc,EAAE;MAClB,CAAC,CAAC;MAEF,MAAM,IAAI,CAACnG,UAAU,CAAC,CAAC;MACvB,MAAM,IAAI,CAAC4E,cAAc,CAAC,CAAC;MAC3BpH,KAAK,CAAC3B,mBAAmB,GAAGC,SAAS;MACrC0B,KAAK,CAAC/B,0BAA0B,GAAG,KAAK;IAC1C,CAAC,CAAC,OAAO2K,GAAG,EAAE;MACZ,MAAM3E,KAAK,GAAG2E,GAAuB;MACrC5I,KAAK,CAACxB,gBAAgB,GAAGyF,KAAK,EAAEvG,YAAiC;MACjEsC,KAAK,CAAC/B,0BAA0B,GAAG,KAAK;MACxCtB,eAAe,CAACuH,SAAS,CAACD,KAAK,EAAEvG,YAAY,IAAI,mBAAmB,CAAC;IACvE;EACF,CAAC;EAED,MAAMmL,sBAAsBA,CAACf,IAAmC,EAAE;IAChE,IAAI,CAACA,IAAI,EAAE;MACT,OAAOxJ,SAAS;IAClB;IAEA,MAAM;MAAE+C,WAAW;MAAExC,aAAa;MAAE+C;IAAgB,CAAC,GAAG,IAAI,CAACxB,SAAS,CAAC,CAAC;IAExEJ,KAAK,CAAC7B,kBAAkB,GAAG,IAAI;IAE/B,MAAM2K,sBAAsB,GAAI,YAAW9I,KAAK,CAACvB,WAAW,EACxDsE,MAAO,OAAM3G,UAAU,CAAC8J,yBAAyB,CAACrH,aAAa,EAAE,CAAC,CAAE,IAAGmB,KAAK,CAACpB,OAAO,EACpFmE,MAAO,EAAC;IACZ,MAAMgG,sBAAsB,GAAI,WAAU/I,KAAK,CAACvB,WAAW,EACvDsE,MAAO,OAAM3G,UAAU,CAAC8J,yBAAyB,CAACrH,aAAa,EAAE,CAAC,CAAE,IAAGmB,KAAK,CAACpB,OAAO,EACpFmE,MAAO,EAAC;IAEZ,IAAInB,eAAe,EAAE;MACnBhF,gBAAgB,CAAC0L,oBAAoB,CAAC;QACpCC,IAAI,EAAE,SAAS;QACfpE,MAAM,EAAE,KAAK;QACbqE,SAASA,CAAA,EAAG;UACV7L,eAAe,CAAC8L,WAAW,CAACK,sBAAsB,CAAC;UACnD7I,cAAc,CAACwC,UAAU,CAAC,CAAC;QAC7B;MACF,CAAC,CAAC;IACJ,CAAC,MAAM;MACL9F,eAAe,CAAC8L,WAAW,CAAC,oCAAoC,CAAC;IACnE;IAEA,IAAI;MACF,MAAMO,oBAAoB,GAAG,CAAChJ,KAAK,CAACvB,WAAW,EAAE+B,OAAO,EAAER,KAAK,CAACpB,OAAO,EAAE4B,OAAO,CAAC,CAACyI,IAAI,CAAC,GAAG,CAAC;MAC3F,MAAMC,eAAe,GAAG,MAAMlM,oBAAoB,CAAC0L,eAAe,CAAC;QACjElI,OAAO,EAAEa,WAA4B;QACrCuF,EAAE,EAAEkB,IAAI,CAAClB,EAAmB;QAC5BkB,IAAI,EAAEA,IAAI,CAACA,IAAqB;QAChCC,GAAG,EAAED,IAAI,CAACC,GAAG;QACb3C,QAAQ,EAAEI,MAAM,CAACsC,IAAI,CAAC1C,QAAQ,CAAC;QAC/BE,KAAK,EAAEwC,IAAI,CAACxC,KAAK;QACjBqD,cAAc,EAAE;MAClB,CAAC,CAAC;MAEF3I,KAAK,CAAC7B,kBAAkB,GAAG,KAAK;MAChCxB,eAAe,CAACwM,WAAW,CAACJ,sBAAsB,CAAC;MACnD7L,gBAAgB,CAACkM,SAAS,CAAC;QACzBvI,IAAI,EAAE,OAAO;QACbwI,KAAK,EAAE,cAAc;QACrBC,UAAU,EAAE;UACVC,OAAO,EAAEhN,iBAAiB,CAACyD,KAAK,CAAC4F,WAAW,EAAEE,EAAE,IAAI,EAAE;UACtD0D,aAAa,EAAE,IAAI,CAACxJ,KAAK,CAACvB,WAAW,EAAEsE,MAAM,IAAI,EAAE;UACnD0G,WAAW,EAAE,IAAI,CAACzJ,KAAK,CAACpB,OAAO,EAAEmE,MAAM,IAAI,EAAE;UAC7C2G,cAAc,EAAE,IAAI,CAAC1J,KAAK,CAACtB,iBAAiB,IAAI,EAAE;UAClDiL,YAAY,EAAE,IAAI,CAAC3J,KAAK,CAACnB,aAAa,IAAI,EAAE;UAC5C+K,cAAc,EAAE9M,iBAAiB,CAACkD,KAAK,CAAC6J,oBAAoB,KAAK;QACnE;MACF,CAAC,CAAC;MACF5J,cAAc,CAACwC,UAAU,CAAC,CAAC;MAE3B,IAAI,CAACb,eAAe,EAAE;QACpBhF,gBAAgB,CAACkN,OAAO,CAAC,gBAAgB,CAAC;MAC5C;MAEA7J,cAAc,CAAC4C,sBAAsB,CAACmG,oBAAoB,CAAC;MAC3DlM,iBAAiB,CAACiN,iBAAiB,CAAC,CAAC;MAErCC,UAAU,CAAC,MAAM;QACf/M,sBAAsB,CAACgN,iBAAiB,CAACnN,iBAAiB,CAACkD,KAAK,CAACQ,OAAO,EAAE,IAAI,CAAC;MACjF,CAAC,EAAE,IAAI,CAAC;MAER,OAAO0I,eAAe;IACxB,CAAC,CAAC,OAAON,GAAG,EAAE;MACZ,MAAM3E,KAAK,GAAG2E,GAAuB;MACrC5I,KAAK,CAACxB,gBAAgB,GAAGyF,KAAK,EAAEvG,YAAY;MAC5CsC,KAAK,CAAC7B,kBAAkB,GAAG,KAAK;MAChCxB,eAAe,CAACuH,SAAS,CAACD,KAAK,EAAEvG,YAAY,IAAI,mBAAmB,CAAC;MACrER,gBAAgB,CAACkM,SAAS,CAAC;QACzBvI,IAAI,EAAE,OAAO;QACbwI,KAAK,EAAE,YAAY;QACnBC,UAAU,EAAE;UACV7L,OAAO,EAAEwG,KAAK,EAAEvG,YAAY,IAAIuG,KAAK,EAAExG,OAAO,IAAI,SAAS;UAC3D8L,OAAO,EAAEhN,iBAAiB,CAACyD,KAAK,CAAC4F,WAAW,EAAEE,EAAE,IAAI,EAAE;UACtD0D,aAAa,EAAE,IAAI,CAACxJ,KAAK,CAACvB,WAAW,EAAEsE,MAAM,IAAI,EAAE;UACnD0G,WAAW,EAAE,IAAI,CAACzJ,KAAK,CAACpB,OAAO,EAAEmE,MAAM,IAAI,EAAE;UAC7C2G,cAAc,EAAE,IAAI,CAAC1J,KAAK,CAACtB,iBAAiB,IAAI,EAAE;UAClDiL,YAAY,EAAE,IAAI,CAAC3J,KAAK,CAACnB,aAAa,IAAI,EAAE;UAC5C+K,cAAc,EAAE9M,iBAAiB,CAACkD,KAAK,CAAC6J,oBAAoB,KAAK;QACnE;MACF,CAAC,CAAC;MAEF,OAAOvL,SAAS;IAClB;EACF,CAAC;EAED;EACA4I,oBAAoBA,CAACxI,iBAAyB,EAAE6C,kBAA0B,EAAE;IAC1E,MAAM2I,gCAAgC,GAAGxN,mBAAmB,CAACwN,gCAAgC,CAC3FxL,iBAAiB,EACjB6C,kBAAkB,EAClBvB,KAAK,CAACP,mBACR,CAAC;IAED,IAAI0K,8BAA8B,GAAG,IAAI;IACzC,IAAIrN,iBAAiB,CAACkD,KAAK,CAAC6J,oBAAoB,KAAK,cAAc,EAAE;MACnE;MACAM,8BAA8B,GAAG,KAAK;IACxC,CAAC,MAAM;MACLA,8BAA8B,GAAGzN,mBAAmB,CAAC0N,gCAAgC,CACnFpK,KAAK,CAAChB,mBAAmB,EACzBgB,KAAK,CAACJ,aACR,CAAC;IACH;IAEA,OAAOuK,8BAA8B,IAAID,gCAAgC;EAC3E,CAAC;EAED;EACA/C,qBAAqBA,CAAA,EAAG;IACtB,MAAM;MAAE3F,cAAc;MAAEC;IAAgB,CAAC,GAAG,IAAI,CAACrB,SAAS,CAAC,CAAC;IAE5D,IAAI,CAACoB,cAAc,IAAI,CAACC,eAAe,EAAE;MACvC;IACF;IAEAzB,KAAK,CAACJ,aAAa,GAAGlD,mBAAmB,CAACgJ,gBAAgB,CACxD1F,KAAK,CAACjB,YAAY,EAClByG,MAAM,CAACxF,KAAK,CAACL,MAAM,CAAC,EACpB6F,MAAM,CAACpI,iBAAiB,CAC1B,CAAC;IACD4C,KAAK,CAACH,WAAW,GAAGnD,mBAAmB,CAAC2N,cAAc,CAAC;MACrD3L,iBAAiB,EAAEsB,KAAK,CAACtB,iBAAiB;MAC1CC,qBAAqB,EAAEqB,KAAK,CAACrB,qBAAqB;MAClDG,iBAAiB,EAAEkB,KAAK,CAAClB,iBAAiB;MAC1CD,aAAa,EAAEmB,KAAK,CAACnB;IACvB,CAAC,CAAC;IACFmB,KAAK,CAACF,WAAW,GAAGpD,mBAAmB,CAAC4N,cAAc,CAACtK,KAAK,CAACb,QAAQ,EAAEa,KAAK,CAACnB,aAAa,CAAC;IAC3FmB,KAAK,CAACD,WAAW,GAAGrD,mBAAmB,CAAC6N,cAAc,CAACvK,KAAK,CAACtB,iBAAiB,CAAC;EACjF;AACF,CAAC"}
|
|
1
|
+
{"version":3,"names":["subscribeKey","subKey","proxy","subscribe","sub","NumberUtil","ConstantsUtil","SwapApiUtil","BlockchainApiController","OptionsController","SwapCalculationUtil","SnackController","RouterController","CoreHelperUtil","TransactionsController","EventsController","ConnectionsController","INITIAL_GAS_LIMIT","TO_AMOUNT_DECIMALS","TransactionError","Error","constructor","message","shortMessage","name","initialState","loadingTokens","loadingPrices","loadingQuote","loadingApprovalTransaction","loadingBuildTransaction","loadingTransaction","fetchError","approvalTransaction","undefined","swapTransaction","transactionError","sourceToken","sourceTokenAmount","sourceTokenPriceInUSD","toToken","toTokenAmount","toTokenPriceInUSD","networkPrice","networkTokenSymbol","inputError","slippage","CONVERT_SLIPPAGE_TOLERANCE","tokens","popularTokens","suggestedTokens","foundTokens","myTokensWithBalance","tokensPriceMap","gasFee","gasPriceInUSD","priceImpact","maxSlippage","providerFee","state","SwapController","callback","key","getParams","activeAddress","activeNamespace","activeNetwork","connection","address","getPlainAddress","networkAddress","caipNetworkId","NATIVE_TOKEN_ADDRESS","invalidToToken","decimals","invalidSourceToken","bigNumber","isGreaterThan","invalidSourceTokenAmount","network","fromAddress","fromCaipAddress","sourceTokenAddress","toTokenAddress","toTokenDecimals","sourceTokenDecimals","availableToSwap","isAuthConnector","properties","provider","switchTokens","newSourceToken","sourceTokenWithBalance","find","token","newToToken","newSourceTokenAmount","setSourceToken","setToToken","setSourceTokenAmount","setToTokenAmount","swapTokens","fetchTokens","getTokenList","getNetworkTokenPrice","getMyTokensWithBalance","networkToken","symbol","length","startsWith","error","showError","goBack","sort","aTokenInfo","bTokenInfo","filter","SWAP_SUGGESTED_TOKENS","includes","forceUpdate","fetchBalance","swapBalances","mapBalancesToSwapTokens","balances","getInitialGasPrice","setBalances","getFilteredPopularTokens","some","t","setTokenPrice","amount","getAddressPrice","namespace","chain","split","networkId","existPrice","response","fetchTokenPrice","projectId","addresses","fungibles","allTokens","price","p","toLowerCase","priceAsFloat","parseFloat","toString","res","fetchGasPrice","gasPrice","gasPriceInUsd","value","standard","BigInt","gasLimit","getGasPriceInUSD","getProviderFeePrice","forEach","formatNumberToLocalString","target","haveSourceTokenAmount","amountDecimal","multipliedBy","integerValue","quoteResponse","fetchSwapQuote","userAddress","from","to","quoteToAmount","quotes","toAmount","dividedBy","isInsufficientToken","hasInsufficientToken","setTransactionDetails","getTransaction","hasAllowance","fetchSwapAllowance","tokenAddress","transaction","createSwapTransaction","createAllowanceTransaction","generateApproveCalldata","estimateGas","tx","data","gas","eip155","parseUnits","generateSwapCalldata","isSourceNetworkToken","sendTransactionForApproval","showLoading","sendTransaction","chainNamespace","err","sendTransactionForSwap","snackbarSuccessMessage","forceUpdateAddresses","Boolean","transactionHash","showSuccess","sendEvent","type","event","swapFromToken","swapToToken","swapFromAmount","swapToAmount","isSmartAccount","accountType","replace","clearTokens","setTimeout","fetchTransactions","clearTransactionLoaders","resetState","networkBalanceInUSD","multiply","quantity","numeric","isInsufficientSourceTokenForSwap","insufficientNetworkTokenForGas","isInsufficientNetworkTokenForGas","getPriceImpact","getMaxSlippage","getProviderFee"],"sourceRoot":"../../../src","sources":["controllers/SwapController.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Appearance","proxy","subscribe","sub","state","themeMode","undefined","themeVariables","ThemeController","callback","setThemeMode","getColorScheme","setThemeVariables"],"sourceRoot":"../../../src","sources":["controllers/ThemeController.ts"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,KAAK,EAAEC,SAAS,IAAIC,GAAG,QAAQ,QAAQ;;AAGhD;;AAMA;AACA,MAAMC,KAAK,GAAGH,KAAK,CAAuB;EACxCI,SAAS,EAAEC,SAAS;EACpBC,cAAc,EAAE,CAAC;AACnB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,eAAe,GAAG;EAC7BJ,KAAK;EAELF,SAASA,CAACO,QAAkD,EAAE;IAC5D,OAAON,GAAG,CAACC,KAAK,EAAE,MAAMK,QAAQ,CAACL,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDM,YAAYA,CAACL,SAA4C,EAAE;IACzD,IAAI,CAACA,SAAS,EAAE;MACdD,KAAK,CAACC,SAAS,GAAGL,UAAU,CAACW,cAAc,CAAC,CAAc;IAC5D,CAAC,MAAM;MACLP,KAAK,CAACC,SAAS,GAAGA,SAAS;IAC7B;EACF,CAAC;EAEDO,iBAAiBA,CAACL,cAAsD,EAAE;IACxE,IAAI,CAACA,cAAc,EAAE;MACnBH,KAAK,CAACG,cAAc,GAAG,CAAC,CAAC;IAC3B;IAEAH,KAAK,CAACG,cAAc,GAAG;MAAE,GAAGH,KAAK,CAACG,cAAc;MAAE,GAAGA;IAAe,CAAC;EACvE;AACF,CAAC"}
|
|
1
|
+
{"version":3,"names":["Appearance","proxy","subscribe","sub","state","themeMode","undefined","themeVariables","ThemeController","callback","setThemeMode","getColorScheme","setThemeVariables"],"sourceRoot":"../../../src","sources":["controllers/ThemeController.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,KAAK,EAAEC,SAAS,IAAIC,GAAG,QAAQ,QAAQ;;AAGhD;;AAMA;AACA,MAAMC,KAAK,GAAGH,KAAK,CAAuB;EACxCI,SAAS,EAAEC,SAAS;EACpBC,cAAc,EAAE,CAAC;AACnB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,eAAe,GAAG;EAC7BJ,KAAK;EAELF,SAASA,CAACO,QAAkD,EAAE;IAC5D,OAAON,GAAG,CAACC,KAAK,EAAE,MAAMK,QAAQ,CAACL,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDM,YAAYA,CAACL,SAA4C,EAAE;IACzD,IAAI,CAACA,SAAS,EAAE;MACdD,KAAK,CAACC,SAAS,GAAGL,UAAU,CAACW,cAAc,CAAC,CAAc;IAC5D,CAAC,MAAM;MACLP,KAAK,CAACC,SAAS,GAAGA,SAAS;IAC7B;EACF,CAAC;EAEDO,iBAAiBA,CAACL,cAAsD,EAAE;IACxE,IAAI,CAACA,cAAc,EAAE;MACnBH,KAAK,CAACG,cAAc,GAAG,CAAC,CAAC;IAC3B;IAEAH,KAAK,CAACG,cAAc,GAAG;MAAE,GAAGH,KAAK,CAACG,cAAc;MAAE,GAAGA;IAAe,CAAC;EACvE;AACF,CAAC","ignoreList":[]}
|