@keplr-wallet/background 0.13.13 → 0.13.15-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/chains/convert.d.ts +7 -0
- package/build/chains/convert.js +109 -0
- package/build/chains/convert.js.map +1 -0
- package/build/chains/handler.js +1 -1
- package/build/chains/handler.js.map +1 -1
- package/build/chains/index.d.ts +1 -0
- package/build/chains/index.js +1 -0
- package/build/chains/index.js.map +1 -1
- package/build/chains/messages.d.ts +1 -1
- package/build/chains/service.d.ts +3 -9
- package/build/chains/service.js +45 -79
- package/build/chains/service.js.map +1 -1
- package/build/chains-ui/service.d.ts +2 -2
- package/build/chains-ui/service.js +5 -6
- package/build/chains-ui/service.js.map +1 -1
- package/build/chains-update/service.js +2 -2
- package/build/chains-update/service.js.map +1 -1
- package/build/keyring/handler.js +21 -15
- package/build/keyring/handler.js.map +1 -1
- package/build/keyring/service.d.ts +0 -1
- package/build/keyring/service.js +103 -78
- package/build/keyring/service.js.map +1 -1
- package/build/keyring-bitcoin/service.js +2 -2
- package/build/keyring-bitcoin/service.js.map +1 -1
- package/build/keyring-cosmos/service.js +31 -18
- package/build/keyring-cosmos/service.js.map +1 -1
- package/build/keyring-ethereum/service.js +19 -19
- package/build/keyring-ethereum/service.js.map +1 -1
- package/build/keyring-ledger/service.js +8 -7
- package/build/keyring-ledger/service.js.map +1 -1
- package/build/keyring-starknet/service.js +7 -7
- package/build/keyring-starknet/service.js.map +1 -1
- package/build/manage-view-asset-token/service.d.ts +1 -2
- package/build/manage-view-asset-token/service.js +2 -2
- package/build/manage-view-asset-token/service.js.map +1 -1
- package/build/permission/service.d.ts +1 -2
- package/build/permission/service.js +2 -2
- package/build/permission/service.js.map +1 -1
- package/build/recent-send-history/service.d.ts +4 -4
- package/build/recent-send-history/service.js +101 -73
- package/build/recent-send-history/service.js.map +1 -1
- package/build/secret-wasm/service.d.ts +3 -3
- package/build/secret-wasm/service.js +29 -29
- package/build/secret-wasm/service.js.map +1 -1
- package/build/token-cw20/service.d.ts +6 -6
- package/build/token-cw20/service.js +28 -21
- package/build/token-cw20/service.js.map +1 -1
- package/build/token-erc20/service.d.ts +2 -3
- package/build/token-erc20/service.js +10 -15
- package/build/token-erc20/service.js.map +1 -1
- package/build/token-scan/service.js +27 -23
- package/build/token-scan/service.js.map +1 -1
- package/build/tx/service.d.ts +1 -0
- package/build/tx/service.js +41 -10
- package/build/tx/service.js.map +1 -1
- package/build/tx-ethereum/service.js +5 -9
- package/build/tx-ethereum/service.js.map +1 -1
- package/build/tx-executor/service.js +2 -7
- package/build/tx-executor/service.js.map +1 -1
- package/build/tx-executor/types.d.ts +7 -1
- package/build/tx-executor/types.js.map +1 -1
- package/build/tx-executor/utils/evm.d.ts +2 -2
- package/build/tx-executor/utils/evm.js +75 -26
- package/build/tx-executor/utils/evm.js.map +1 -1
- package/package.json +13 -13
- package/src/chains/convert.ts +126 -0
- package/src/chains/handler.ts +1 -1
- package/src/chains/index.ts +1 -0
- package/src/chains/messages.ts +1 -1
- package/src/chains/service.ts +64 -97
- package/src/chains-ui/service.ts +8 -7
- package/src/chains-update/service.ts +2 -2
- package/src/keyring/handler.ts +34 -19
- package/src/keyring/service.ts +137 -96
- package/src/keyring-bitcoin/service.ts +2 -2
- package/src/keyring-cosmos/service.ts +46 -18
- package/src/keyring-ethereum/service.ts +24 -17
- package/src/keyring-ledger/service.ts +10 -10
- package/src/keyring-starknet/service.ts +7 -7
- package/src/manage-view-asset-token/service.ts +2 -3
- package/src/permission/service.ts +3 -7
- package/src/recent-send-history/service.ts +141 -95
- package/src/secret-wasm/service.ts +39 -45
- package/src/token-cw20/service.ts +36 -30
- package/src/token-erc20/service.ts +15 -18
- package/src/token-scan/service.ts +34 -21
- package/src/tx/service.ts +60 -12
- package/src/tx-ethereum/service.ts +8 -8
- package/src/tx-executor/service.ts +4 -6
- package/src/tx-executor/types.ts +9 -1
- package/src/tx-executor/utils/evm.ts +92 -32
- package/tsconfig.check.json +2 -0
package/build/tx/service.js
CHANGED
|
@@ -27,7 +27,12 @@ class BackgroundTxService {
|
|
|
27
27
|
}
|
|
28
28
|
sendTx(chainId, tx, mode, options) {
|
|
29
29
|
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
-
const
|
|
30
|
+
const modularChainInfo = this.chainsService.getModularChainInfoOrThrow(chainId);
|
|
31
|
+
if (modularChainInfo.type !== "cosmos" &&
|
|
32
|
+
modularChainInfo.type !== "ethermint") {
|
|
33
|
+
throw new Error(`Not a cosmos chain: ${chainId}`);
|
|
34
|
+
}
|
|
35
|
+
const cosmosInfo = modularChainInfo.cosmos;
|
|
31
36
|
if (!options.silent) {
|
|
32
37
|
this.notification.create({
|
|
33
38
|
iconRelativeUrl: "assets/logo-256.png",
|
|
@@ -57,7 +62,7 @@ class BackgroundTxService {
|
|
|
57
62
|
mode: mode,
|
|
58
63
|
};
|
|
59
64
|
try {
|
|
60
|
-
const result = yield (0, simple_fetch_1.simpleFetch)(
|
|
65
|
+
const result = yield (0, simple_fetch_1.simpleFetch)(cosmosInfo.rest, isProtoTx ? "/cosmos/tx/v1beta1/txs" : "/txs", {
|
|
61
66
|
method: "POST",
|
|
62
67
|
headers: {
|
|
63
68
|
"content-type": "application/json",
|
|
@@ -75,7 +80,7 @@ class BackgroundTxService {
|
|
|
75
80
|
const waitFulfillment = () => {
|
|
76
81
|
return (0, common_1.retry)(() => {
|
|
77
82
|
return new Promise((resolve, reject) => {
|
|
78
|
-
const txTracer = new cosmos_1.TendermintTxTracer(
|
|
83
|
+
const txTracer = new cosmos_1.TendermintTxTracer(cosmosInfo.rpc, "/websocket");
|
|
79
84
|
txTracer.addEventListener("close", () => {
|
|
80
85
|
// reject if ws closed before fulfilled
|
|
81
86
|
// 하지만 로직상 fulfill 되기 전에 ws가 닫히는게 되기 때문에
|
|
@@ -130,11 +135,15 @@ class BackgroundTxService {
|
|
|
130
135
|
}
|
|
131
136
|
traceTx(chainId, txHash) {
|
|
132
137
|
return __awaiter(this, void 0, void 0, function* () {
|
|
133
|
-
const
|
|
138
|
+
const modularChainInfo = this.chainsService.getModularChainInfoOrThrow(chainId);
|
|
139
|
+
if (modularChainInfo.type !== "cosmos" &&
|
|
140
|
+
modularChainInfo.type !== "ethermint") {
|
|
141
|
+
throw new Error(`Not a cosmos chain: ${chainId}`);
|
|
142
|
+
}
|
|
134
143
|
const txHashBuffer = buffer_1.Buffer.from(txHash, "hex");
|
|
135
144
|
return yield (0, common_1.retry)(() => {
|
|
136
145
|
return new Promise((resolve, reject) => {
|
|
137
|
-
const txTracer = new cosmos_1.TendermintTxTracer(
|
|
146
|
+
const txTracer = new cosmos_1.TendermintTxTracer(modularChainInfo.cosmos.rpc, "/websocket");
|
|
138
147
|
txTracer.addEventListener("close", () => {
|
|
139
148
|
// reject if ws closed before fulfilled
|
|
140
149
|
// 하지만 로직상 fulfill 되기 전에 ws가 닫히는게 되기 때문에
|
|
@@ -194,10 +203,10 @@ class BackgroundTxService {
|
|
|
194
203
|
console.log(e);
|
|
195
204
|
let message = e.message;
|
|
196
205
|
// Tendermint rpc error.
|
|
197
|
-
const
|
|
198
|
-
if (
|
|
206
|
+
const tendermintRpcErrorMessage = BackgroundTxService.parseTendermintRpcErrorMessage(e.message);
|
|
207
|
+
if (tendermintRpcErrorMessage) {
|
|
199
208
|
// If error is from tendermint
|
|
200
|
-
message =
|
|
209
|
+
message = tendermintRpcErrorMessage;
|
|
201
210
|
}
|
|
202
211
|
try {
|
|
203
212
|
// Cosmos-sdk error in ante handler
|
|
@@ -233,13 +242,35 @@ class BackgroundTxService {
|
|
|
233
242
|
message,
|
|
234
243
|
});
|
|
235
244
|
}
|
|
245
|
+
// Keep the Tendermint RPC parsing best-effort only and avoid regex backtracking
|
|
246
|
+
// on raw error strings from external nodes/libraries.
|
|
247
|
+
static parseTendermintRpcErrorMessage(message) {
|
|
248
|
+
if (!message.startsWith("code:")) {
|
|
249
|
+
return undefined;
|
|
250
|
+
}
|
|
251
|
+
const messageIndex = message.indexOf("message:");
|
|
252
|
+
const dataIndex = message.indexOf("data:");
|
|
253
|
+
if (messageIndex < 0 || dataIndex < 0 || messageIndex > dataIndex) {
|
|
254
|
+
return undefined;
|
|
255
|
+
}
|
|
256
|
+
const messageBody = message.slice(messageIndex + "message:".length);
|
|
257
|
+
const dataDelimiter = messageBody.indexOf(", data:") >= 0 ? ", data:" : ",data:";
|
|
258
|
+
const dataDelimiterIndex = messageBody.indexOf(dataDelimiter);
|
|
259
|
+
if (dataDelimiterIndex < 0) {
|
|
260
|
+
return undefined;
|
|
261
|
+
}
|
|
262
|
+
const dataMessage = messageBody
|
|
263
|
+
.slice(dataDelimiterIndex + dataDelimiter.length)
|
|
264
|
+
.trim();
|
|
265
|
+
return dataMessage.length > 0 ? dataMessage : undefined;
|
|
266
|
+
}
|
|
236
267
|
waitStarknetTransaction(chainId, txHash) {
|
|
237
268
|
return __awaiter(this, void 0, void 0, function* () {
|
|
238
269
|
const modularChainInfo = this.chainsService.getModularChainInfo(chainId);
|
|
239
270
|
if (!modularChainInfo) {
|
|
240
271
|
throw new Error("Invalid chain id");
|
|
241
272
|
}
|
|
242
|
-
if (
|
|
273
|
+
if (modularChainInfo.type !== "starknet") {
|
|
243
274
|
throw new Error("Chain is not for starknet");
|
|
244
275
|
}
|
|
245
276
|
const starknet = modularChainInfo.starknet;
|
|
@@ -279,7 +310,7 @@ class BackgroundTxService {
|
|
|
279
310
|
if (!modularChainInfo) {
|
|
280
311
|
throw new Error("Invalid chain id");
|
|
281
312
|
}
|
|
282
|
-
if (
|
|
313
|
+
if (modularChainInfo.type !== "bitcoin") {
|
|
283
314
|
throw new Error("Chain is not for bitcoin");
|
|
284
315
|
}
|
|
285
316
|
const indexerUrl = modularChainInfo.bitcoin.rest;
|
package/build/tx/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx/service.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iDAA0D;AAE1D,6DAAyD;AACzD,oCAAiC;AACjC,iDAA6C;AAC7C,uCAAsE;AAetE,MAAa,mBAAmB;IAC9B,YACqB,aAA4B,EAC5B,YAA0B;QAD1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAc;IAC5C,CAAC;IAEE,IAAI;;YACR,OAAO;QACT,CAAC;KAAA;IAEK,MAAM,CACV,OAAe,EACf,EAAW,EACX,IAAgC,EAChC,OAKC;;YAED,MAAM,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.BackgroundTxEthereumService = void 0;
|
|
13
|
-
const chains_1 = require("../chains");
|
|
14
13
|
const simple_fetch_1 = require("@keplr-wallet/simple-fetch");
|
|
15
14
|
const common_1 = require("@keplr-wallet/common");
|
|
16
15
|
class BackgroundTxEthereumService {
|
|
@@ -34,11 +33,7 @@ class BackgroundTxEthereumService {
|
|
|
34
33
|
});
|
|
35
34
|
}
|
|
36
35
|
try {
|
|
37
|
-
const
|
|
38
|
-
const evmInfo = chains_1.ChainsService.getEVMInfo(chainInfo);
|
|
39
|
-
if (!evmInfo) {
|
|
40
|
-
throw new Error("No EVM info provided");
|
|
41
|
-
}
|
|
36
|
+
const evmInfo = this.chainsService.getEVMInfoOrThrow(chainId);
|
|
42
37
|
const sendRawTransactionResponse = yield (0, simple_fetch_1.simpleFetch)(evmInfo.rpc, "", {
|
|
43
38
|
method: "POST",
|
|
44
39
|
headers: {
|
|
@@ -105,11 +100,12 @@ class BackgroundTxEthereumService {
|
|
|
105
100
|
}
|
|
106
101
|
getEthereumTxReceipt(origin, chainId, txHash) {
|
|
107
102
|
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
103
|
+
const modularChainInfo = this.chainsService.getModularChainInfoOrThrow(chainId);
|
|
104
|
+
if (modularChainInfo.type !== "evm" &&
|
|
105
|
+
modularChainInfo.type !== "ethermint") {
|
|
111
106
|
return null;
|
|
112
107
|
}
|
|
108
|
+
const evmInfo = modularChainInfo.evm;
|
|
113
109
|
return yield (0, common_1.retry)(() => {
|
|
114
110
|
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
115
111
|
const txReceiptResponse = yield (0, simple_fetch_1.simpleFetch)(evmInfo.rpc, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-ethereum/service.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-ethereum/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.BackgroundTxExecutorService = void 0;
|
|
19
|
-
const chains_1 = require("../chains");
|
|
20
19
|
const router_1 = require("@keplr-wallet/router");
|
|
21
20
|
const types_1 = require("./types");
|
|
22
21
|
const mobx_1 = require("mobx");
|
|
@@ -413,12 +412,8 @@ class BackgroundTxExecutorService {
|
|
|
413
412
|
const origin = typeof browser !== "undefined"
|
|
414
413
|
? new URL(browser.runtime.getURL("/")).origin
|
|
415
414
|
: "extension";
|
|
416
|
-
const
|
|
417
|
-
const
|
|
418
|
-
if (!evmInfo) {
|
|
419
|
-
throw new router_1.KeplrError("direct-tx-executor", 142, "Not EVM chain");
|
|
420
|
-
}
|
|
421
|
-
const unsignedTx = yield (0, evm_1.fillUnsignedEVMTx)(origin, evmInfo, signer, tx.txData, (_a = tx.feeType) !== null && _a !== void 0 ? _a : "average");
|
|
415
|
+
const evmInfo = this.chainsService.getEVMInfoOrThrow(tx.chainId);
|
|
416
|
+
const unsignedTx = yield (0, evm_1.fillUnsignedEVMTx)(origin, evmInfo, signer, tx.txData, (_a = tx.feeType) !== null && _a !== void 0 ? _a : "average", tx.customPriorityFee, tx.customGasPrice);
|
|
422
417
|
const result = yield this.keyRingEthereumService.signEthereumPreAuthorized(vaultId, tx.chainId, signer, Buffer.from(JSON.stringify(unsignedTx)), types_2.EthSignType.TRANSACTION);
|
|
423
418
|
const signedTxData = JSON.parse(Buffer.from(result.signingData).toString());
|
|
424
419
|
const isEIP1559 = !!signedTxData.maxFeePerGas || !!signedTxData.maxPriorityFeePerGas;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-executor/service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,sCAA0C;AAO1C,iDAAuD;AACvD,mCAaiB;AACjB,+BAOc;AACd,+CAI6B;AAC7B,8DAA0E;AAC1E,iDAAmD;AAEnD,uEAAuE;AAEvE,2CAOwB;AACxB,qCAAgD;AAIhD,MAAa,2BAA2B;IAOtC,YACqB,OAAgB,EAChB,aAA4B,EAC5B,oBAA0C,EAC1C,sBAA8C,EAC9C,mBAAwC,EACxC,2BAAwD,EACxD,gBAAkC,EAClC,wBAAkD,EAClD,UAAgD;QARhD,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAe;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,gCAA2B,GAA3B,2BAA2B,CAA6B;QACxD,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,eAAU,GAAV,UAAU,CAAsC;QAd3D,yBAAoB,GAAW,CAAC,CAAC;QAC3C,2DAA2D;QAExC,yBAAoB,GAA6B,IAAI,GAAG,EAAE,CAAC;QAa5E,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAEK,IAAI;;YACR,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACtD,sBAAsB,CACvB,CAAC;YACF,IAAI,yBAAyB,EAAE;gBAC7B,IAAA,kBAAW,EAAC,GAAG,EAAE;oBACf,IAAI,CAAC,oBAAoB,GAAG,yBAAyB,CAAC;gBACxD,CAAC,CAAC,CAAC;aACJ;YACD,IAAA,cAAO,EAAC,GAAG,EAAE;gBACX,MAAM,EAAE,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAS,sBAAsB,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAEtD,gCAAgC,CAAC,CAAC;YACpC,IAAI,yBAAyB,EAAE;gBAC7B,IAAA,kBAAW,EAAC,GAAG,EAAE;oBACf,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;oBAC1D,MAAM,MAAM,GAAG,OAAO;yBACnB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;yBAC/C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAE3D,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,EAAE;wBACrC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;qBAC/C;oBAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC9B,CAAC,CAAC,CAAC;aACJ;YACD,IAAA,cAAO,EAAC,GAAG,EAAE;gBACX,MAAM,EAAE,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAC3C,MAAM,UAAU,GAA2B,EAAE,CAAC;gBAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE;oBAC7B,2CAA2C;oBAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,yBAAiB,CAAC,OAAO,EAAE;wBAC9C,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;qBACzC;iBACF;gBAED,IAAI,CAAC,OAAO;qBACT,GAAG,CACF,gCAAgC,EAChC,UAAU,CACX;qBACA,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3E,CAAC;KAAA;IAGS,sBAAsB,CAAC,KAAuB;QACtD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC3B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC1C,OAAO;SACR;QAED,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC;QAElD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QAED,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,MAAM,CACrD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC7D,CAAC;QAEF,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE;YACtC,OAAO;SACR;QAED,kCAAkC;QAClC,SAAS,CAAC,kBAAkB,GAAG,KAAK,CAAC,IAAI,CACvC,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,kBAAkB,EAAE,GAAG,qBAAqB,CAAC,CAAC,CACrE,CAAC;QAEF,iFAAiF;QACjF,IACE,SAAS,CAAC,IAAI,KAAK,uBAAe,CAAC,OAAO;YAC1C,SAAS,CAAC,SAAS,IAAI,IAAI,EAC3B;YACA,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CACxC,CAAC,EAAE,EAAE,EAAE,CACL,CAAC,EAAE,CAAC,MAAM,KAAK,0BAAkB,CAAC,OAAO;gBACvC,EAAE,CAAC,MAAM,KAAK,0BAAkB,CAAC,OAAO,CAAC;gBAC3C,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CACpD,CAAC;YACF,IAAI,eAAe,EAAE;gBACnB,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;aACtE;SACF;IACH,CAAC;IAEK,mBAAmB,CACvB,GAAQ,EACR,OAAe,EACf,IAAO,EACP,GAEI,EACJ,kBAA4B,EAC5B,WAEiC,EACjC,cAAuB;;YAEvB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;gBACtB,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,sBAAsB,CAAC,CAAC;aACzE;YAED,MAAM,OAAO,GACX,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/D,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;aACvE;YAED,+EAA+E;YAC/E,yBAAyB;YACzB,MAAM,eAAe,GACnB,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,KAAK,QAAQ;gBACzB,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC;YAE9B;;;;;;eAMG;YACH,IAAI,eAAe,EAAE;gBACnB,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACtC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CACxC,CAAC;gBAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;iBACtE;gBAED,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE;oBACpD,MAAM,IAAI,mBAAU,CAClB,oBAAoB,EACpB,GAAG,EACH,0CAA0C,CAC3C,CAAC;iBACH;aACF;YAED,MAAM,EAAE,GAAG,IAAA,kBAAW,EAAC,GAAG,EAAE;gBAC1B,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,gBAChB,EAAE,EACF,MAAM,EAAE,yBAAiB,CAAC,OAAO,EACjC,OAAO,EAAE,OAAO,EAChB,GAAG,EACH,OAAO,EAAE,CAAC,CAAC,EACX,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EACrB,IAAI;gBACJ,eAAe;gBACf,cAAc,IACX,CAAC,IAAI,KAAK,uBAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAChD,CAAC;YAEjB,IAAA,kBAAW,EAAC,GAAG,EAAE;gBACf,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;KAAA;IAED;;OAEG;IACG,QAAQ,CACZ,GAAQ,EACR,EAAU,EACV,OAAe,EACf,QAAgB,EAChB,WAAwC;;YAExC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;gBACtB,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,sBAAsB,CAAC,CAAC;aACzE;YAED,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;gBAC/B,OAAO;gBACP,QAAQ;gBACR,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;KAAA;IAEe,UAAU,CACxB,EAAU,EACV,OAIC;;;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;aACxE;YAED,IAAI,SAAS,CAAC,MAAM,KAAK,yBAAiB,CAAC,UAAU,EAAE;gBACrD,MAAM,IAAI,mBAAU,CAClB,oBAAoB,EACpB,GAAG,EACH,iCAAiC,CAClC,CAAC;aACH;YAED,qDAAqD;YACrD,MAAM,WAAW,GACf,SAAS,CAAC,MAAM,KAAK,yBAAiB,CAAC,OAAO;gBAC9C,SAAS,CAAC,MAAM,KAAK,yBAAiB,CAAC,OAAO,CAAC;YACjD,IAAI,CAAC,WAAW,EAAE;gBAChB,OAAO;oBACL,MAAM,EAAE,SAAS,CAAC,MAAM;iBACzB,CAAC;aACH;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,UAAU,CACjE,SAAS,CAAC,OAAO,CAClB,CAAC;YACF,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;aACvE;YAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAClC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,EACnE,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CACzB,CAAC;YAEF,IAAA,kBAAW,EAAC,GAAG,EAAE;gBACf,SAAS,CAAC,MAAM,GAAG,yBAAiB,CAAC,UAAU,CAAC;YAClD,CAAC,CAAC,CAAC;YAEH,KAAK,IAAI,CAAC,GAAG,mBAAmB,EAAE,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/D,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAEnC,MAAM,gBAAgB,GACpB,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,KAAI,IAAI,IAAI,CAAC,KAAK,OAAO,CAAC,OAAO;oBAC/C,CAAC,CAAC,OAAO,CAAC,QAAQ;oBAClB,CAAC,CAAC,SAAS,CAAC;gBAEhB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CACxC,SAAS,CAAC,OAAO,EACjB,SAAS,EACT,SAAS,CAAC,kBAAkB,EAC5B,MAAA,SAAS,CAAC,eAAe,mCAAI,KAAK,EAClC,gBAAgB,CACjB,CAAC;gBAEF,0CAA0C;gBAC1C,IAAA,kBAAW,EAAC,GAAG,EAAE;oBACf,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;oBACtB,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBACjC,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;wBACzB,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;qBAClC;oBACD,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE;wBACxB,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;qBAChC;oBACD,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC;gBACjC,CAAC,CAAC,CAAC;gBAEH,QAAQ,MAAM,CAAC,MAAM,EAAE;oBACrB,KAAK,0BAAkB,CAAC,SAAS,CAAC,CAAC;wBACjC,IAAI,gBAAgB,EAAE;4BACpB,iDAAiD;4BACjD,EAAE;4BACF,gEAAgE;4BAChE,0BAA0B;4BAC1B,EAAE;4BACF,OAAO;4BACP,2CAA2C;4BAC3C,iCAAiC;4BACjC,4DAA4D;4BAC5D,oEAAoE;4BACpE,EAAE;4BACF,iBAAiB;4BACjB,wDAAwD;4BACxD,kDAAkD;4BAClD,mDAAmD;4BACnD,EAAE;4BACF,gBAAgB;4BAChB,6EAA6E;4BAC7E,qFAAqF;4BACrF,IACE,SAAS,CAAC,IAAI,KAAK,uBAAe,CAAC,OAAO;gCAC1C,SAAS,CAAC,SAAS,IAAI,IAAI,EAC3B;gCACA,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gCACnC,QAAQ,SAAS,CAAC,IAAI,EAAE;oCACtB,KAAK,wBAAgB,CAAC,GAAG,CAAC,CAAC;wCACzB,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;4CACzB,IAAI,CAAC,wBAAwB,CAAC,+BAA+B,CAC3D,SAAS,CAAC,SAAS,EACnB;gDACE,IAAI,EAAE,KAAK;gDACX,OAAO,EAAE,SAAS,CAAC,OAAO;gDAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;6CACtB,CACF,CAAC;yCACH;wCACD,MAAM;qCACP;oCACD,KAAK,wBAAgB,CAAC,MAAM,CAAC,CAAC;wCAC5B,MAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAC;wCACzC,IAAI,WAAW,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;4CAChD,IAAI,CAAC,wBAAwB,CAAC,+BAA+B,CAC3D,SAAS,CAAC,SAAS,EACnB,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC3D,CAAC;yCACH;wCACD,MAAM;qCACP;oCACD,OAAO,CAAC,CAAC;wCACP,OAAO;wCACP,MAAM;qCACP;iCACF;6BACF;yBACF;wBACD,SAAS;qBACV;oBACD,KAAK,0BAAkB,CAAC,MAAM,CAAC,CAAC;wBAC9B,IAAI,CAAC,gCAAgC,CACnC,SAAS,EACT,MAAA,MAAM,CAAC,KAAK,mCAAI,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAChD,CAAC;wBACF,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;wBAE3B,OAAO;4BACL,MAAM,EAAE,yBAAiB,CAAC,MAAM;4BAChC,KAAK,EAAE,MAAM,CAAC,KAAK;yBACpB,CAAC;qBACH;oBACD,KAAK,0BAAkB,CAAC,OAAO,CAAC,CAAC;wBAC/B;;;;;;;2BAOG;wBACH,IAAA,kBAAW,EAAC,GAAG,EAAE;4BACf,SAAS,CAAC,MAAM,GAAG,yBAAiB,CAAC,OAAO,CAAC;4BAC7C,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;4BAEtC,2CAA2C;4BAC3C,OAAO,SAAS,CAAC,WAAW,CAAC;wBAC/B,CAAC,CAAC,CAAC;wBAEH,OAAO;4BACL,MAAM,EAAE,yBAAiB,CAAC,OAAO;yBAClC,CAAC;qBACH;oBACD,OAAO,CAAC,CAAC;wBACP,MAAM,IAAI,mBAAU,CAClB,oBAAoB,EACpB,GAAG,EACH,wBAAwB,GAAG,MAAM,CAAC,MAAM,CACzC,CAAC;qBACH;iBACF;aACF;YAED,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,CAAC,+CAA+C,CAAC,SAAS,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAE3B,OAAO;gBACL,MAAM,EAAE,yBAAiB,CAAC,SAAS;aACpC,CAAC;;KACH;IAED;;;;OAIG;IACa,gBAAgB,CAC9B,OAAe,EACf,EAAgB,EAChB,kBAA4B,EAC5B,eAAwB,EACxB,gBAAyB;;;YAEzB,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;YACzB,IAAI,QAAQ,GAAG,MAAA,EAAE,CAAC,QAAQ,mCAAI,gBAAgB,CAAC;YAC/C,IAAI,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;YACvB,IAAI,KAAyB,CAAC;YAE9B,yBAAyB;YACzB,IACE,MAAM,KAAK,0BAAkB,CAAC,SAAS;gBACvC,MAAM,KAAK,0BAAkB,CAAC,MAAM,EACpC;gBACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;aAClC;YAED,mBAAmB;YACnB,MAAM,SAAS,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAI,SAAS,EAAE;gBACb,OAAO,EAAE,MAAM,EAAE,0BAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;aAC9D;YAED,2CAA2C;YAC3C,IAAI,eAAe,IAAI,QAAQ,IAAI,IAAI,EAAE;gBACvC,OAAO,EAAE,MAAM,EAAE,0BAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;aAC9D;YAED,6BAA6B;YAC7B,IAAI,QAAQ,IAAI,IAAI,EAAE;gBACpB,IAAI;oBACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAClD,QAAQ,GAAG,UAAU,CAAC;iBACvB;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC,CAAC;oBACpD,OAAO;wBACL,MAAM,EAAE,0BAAkB,CAAC,MAAM;wBACjC,MAAM;wBACN,KAAK,EAAE,MAAA,CAAC,CAAC,OAAO,mCAAI,4BAA4B;qBACjD,CAAC;iBACH;aACF;YAED,0CAA0C;YAC1C,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,IAAI;oBACF,MAAM,cAAc,mCAAQ,EAAE,KAAE,QAAQ,GAAE,CAAC;oBAC3C,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;oBAC/D,MAAM,GAAG,eAAe,CAAC;iBAC1B;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,CAAC,CAAC,CAAC;oBAEtD,OAAO;wBACL,MAAM,EAAE,0BAAkB,CAAC,MAAM;wBACjC,MAAM;wBACN,KAAK,EAAE,MAAA,CAAC,CAAC,OAAO,mCAAI,iCAAiC;qBACtD,CAAC;iBACH;aACF;YAED,eAAe;YACf,IAAI;gBACF,MAAM,UAAU,mCAAQ,EAAE,KAAE,MAAM,GAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAEjD,IAAI,SAAS,EAAE;oBACb,OAAO,EAAE,MAAM,EAAE,0BAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;iBACzD;gBAED,OAAO;oBACL,MAAM,EAAE,0BAAkB,CAAC,MAAM;oBACjC,MAAM;oBACN,KAAK,EAAE,iCAAiC;iBACzC,CAAC;aACH;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;gBAClD,OAAO;oBACL,MAAM,EAAE,0BAAkB,CAAC,MAAM;oBACjC,MAAM;oBACN,KAAK,EAAE,MAAA,CAAC,CAAC,OAAO,mCAAI,iCAAiC;iBACtD,CAAC;aACH;;KACF;IAEe,MAAM,CAAC,OAAe,EAAE,EAAgB;;YACtD,QAAQ,EAAE,CAAC,IAAI,EAAE;gBACf,KAAK,wBAAgB,CAAC,GAAG,CAAC,CAAC;oBACzB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;iBACpC;gBACD,KAAK,wBAAgB,CAAC,MAAM,CAAC,CAAC;oBAC5B,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;iBACvC;gBACD,OAAO,CAAC,CAAC;oBACP,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;iBACpE;aACF;QACH,CAAC;KAAA;IAEa,SAAS,CACrB,OAAe,EACf,EAAmB;;;YAEnB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;YAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAE1C,+GAA+G;YAC/G,IAAI,UAAU,EAAE;gBACd,MAAM,IAAI,mBAAU,CAClB,oBAAoB,EACpB,GAAG,EACH,mEAAmE,CACpE,CAAC;aACH;YAED,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW;gBAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;gBAC7C,CAAC,CAAC,WAAW,CAAC;YAClB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,sBAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;aAClE;YAED,MAAM,UAAU,GAAG,MAAM,IAAA,uBAAiB,EACxC,MAAM,EACN,OAAO,EACP,MAAM,EACN,EAAE,CAAC,MAAM,EACT,MAAA,EAAE,CAAC,OAAO,mCAAI,SAAS,CACxB,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,yBAAyB,CACxE,OAAO,EACP,EAAE,CAAC,OAAO,EACV,MAAM,EACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EACvC,mBAAW,CAAC,WAAW,CACxB,CAAC;YAEF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC5E,MAAM,SAAS,GACb,CAAC,CAAC,YAAY,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,oBAAoB,CAAC;YACrE,IAAI,SAAS,EAAE;gBACb,YAAY,CAAC,IAAI,GAAG,+BAAgB,CAAC,OAAO,CAAC;aAC9C;YAED,OAAO,YAAY,CAAC,IAAI,CAAC;YAEzB,OAAO,IAAA,wBAAS,EAAC,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;;KAClD;IAEa,YAAY,CACxB,OAAe,EACf,EAAsB;;;YAEtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;YAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YAErC,+GAA+G;YAC/G,IAAI,UAAU,EAAE;gBACd,MAAM,IAAI,mBAAU,CAClB,oBAAoB,EACpB,GAAG,EACH,mEAAmE,CACpE,CAAC;aACH;YAED,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW;gBAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;gBAC7C,CAAC,CAAC,WAAW,CAAC;YAClB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAErE,MAAM,SAAS,GAAU,MAAA,EAAE,CAAC,MAAM,CAAC,SAAS,mCAAI,EAAE,CAAC;YACnD,MAAM,SAAS,GAAU,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;YAC7C,MAAM,SAAS,GAAG;gBAChB,MAAM,EAAE;oBACN;wBACE,KAAK,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB;wBAC/C,MAAM,EAAE,GAAG;qBACZ;iBACF;gBACD,GAAG,EAAE,QAAQ;aACd,CAAC;YACF,MAAM,IAAI,GAAG,MAAA,EAAE,CAAC,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC;YAElC,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;YAE5C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;aAC5C;YAED,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE;gBAC1D,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aACxE;YAED,MAAM,OAAO,GAAG,MAAM,oBAAW,CAAC,aAAa,CAC7C,SAAS,CAAC,IAAI,EACd,MAAM,EACN,IAAI,CACL,CAAC;YAEF,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,6BAA6B;YACtD,IAAI,GAAG,IAAI,IAAI,EAAE;gBACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,yBAAgB,EACxC,MAAM,EACN,SAAS,EACT,SAAS,EACT,SAAS,EACT,IAAI,CACL,CAAC;gBAEF,MAAM,WAAW,GACf,MAAA,SAAS,CAAC,aAAa,CAAC,IAAI,CAC1B,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,KAAK,EAAE,CAAC,gBAAgB,CAChE,mCAAI,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAE/B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,0BAAiB,EAC1C,SAAS,EACT,MAAA,EAAE,CAAC,OAAO,mCAAI,SAAS,EACvB,WAAW,CACZ,CAAC;gBACF,GAAG,GAAG,IAAA,8BAAqB,EACzB,WAAW,EACX,OAAO,EACP,QAAQ,EACR,SAAS,CAAC,QAAQ,CACnB,CAAC;aACH;YAED,IAAI,YAAY,EAAE;gBAChB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,GACzC,IAAA,uCAA8B,EAAC;oBAC7B,SAAS;oBACT,aAAa,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE;oBACpD,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;oBAC1C,SAAS;oBACT,GAAG;oBACH,IAAI;oBACJ,MAAM,EAAE,OAAO,CAAC,MAAM;iBACvB,CAAC,CAAC;gBAEL,MAAM,EAAE,SAAS,EAAE,GACjB,MAAM,IAAI,CAAC,oBAAoB,CAAC,uBAAuB,CACrD,MAAM,EACN,OAAO,EACP,EAAE,CAAC,OAAO,EACV,MAAM,EACN,OAAO,CACR,CAAC;gBAEJ,MAAM,QAAQ,GAAG,UAAK,CAAC,MAAM,CAAC;oBAC5B,SAAS;oBACT,aAAa;oBACb,UAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;iBACzD,CAAC,CAAC,MAAM,EAAE,CAAC;gBAEZ,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aACjD;iBAAM;gBACL,MAAM,OAAO,GAAG,IAAA,sCAA6B,EAAC;oBAC5C,SAAS;oBACT,aAAa,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE;oBACpD,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;oBAC1C,SAAS,EAAE,MAAA,EAAE,CAAC,MAAM,CAAC,SAAS,mCAAI,EAAE;oBACpC,GAAG;oBACH,IAAI;oBACJ,aAAa,EAAE,KAAK;oBACpB,MAAM;iBACP,CAAC,CAAC;gBAEH,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,oBAAoB,CAAC,sBAAsB,CACpD,MAAM,EACN,OAAO,EACP,EAAE,CAAC,OAAO,EACV,MAAM,EACN,OAAO,CACR,CAAC;gBAEJ,MAAM,QAAQ,GAAG,IAAA,2CAAkC,EAAC;oBAClD,SAAS;oBACT,YAAY;oBACZ,SAAS;oBACT,aAAa,EAAE,KAAK;iBACrB,CAAC,CAAC;gBAEH,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aACpD;;KACF;IAEe,WAAW,CAAC,EAAgB;;YAC1C,QAAQ,EAAE,CAAC,IAAI,EAAE;gBACf,KAAK,wBAAgB,CAAC,GAAG,CAAC,CAAC;oBACzB,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;iBAChC;gBACD,KAAK,wBAAgB,CAAC,MAAM,CAAC,CAAC;oBAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;iBACnC;gBACD,OAAO,CAAC,CAAC;oBACP,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;iBACpE;aACF;QACH,CAAC;KAAA;IAEa,cAAc,CAAC,EAAmB;;YAC9C,0CAA0C;YAC1C,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;gBAChB,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;aACxE;YAED,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW;gBAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;gBAC7C,CAAC,CAAC,WAAW,CAAC;YAElB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAExE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAClE,MAAM,EACN,EAAE,CAAC,OAAO,EACV,aAAa,EACb;gBACE,MAAM,EAAE,IAAI;gBACZ,mBAAmB,EAAE,IAAI;aAC1B,CACF,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEa,iBAAiB,CAAC,EAAsB;;YACpD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;gBAChB,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;aACxE;YAED,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAEzD,mBAAmB;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAClD,EAAE,CAAC,OAAO,EACV,aAAa,EACb,MAAM,EACN;gBACE,MAAM,EAAE,IAAI;gBACZ,mBAAmB,EAAE,IAAI;aAC1B,CACF,CAAC;YAEF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEe,OAAO,CAAC,EAAgB;;YACtC,QAAQ,EAAE,CAAC,IAAI,EAAE;gBACf,KAAK,wBAAgB,CAAC,GAAG,CAAC,CAAC;oBACzB,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;iBAC5B;gBACD,KAAK,wBAAgB,CAAC,MAAM,CAAC,CAAC;oBAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;iBAC/B;gBACD,OAAO,CAAC,CAAC;oBACP,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;iBACpE;aACF;QACH,CAAC;KAAA;IAEa,UAAU,CAAC,EAAmB;;YAC1C,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE;gBACd,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;aACtE;YAED,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW;gBAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;gBAC7C,CAAC,CAAC,WAAW,CAAC;YAElB,MAAM,SAAS,GACb,MAAM,IAAI,CAAC,2BAA2B,CAAC,oBAAoB,CACzD,MAAM,EACN,EAAE,CAAC,OAAO,EACV,EAAE,CAAC,MAAM,CACV,CAAC;YACJ,IAAI,CAAC,SAAS,EAAE;gBACd,OAAO,KAAK,CAAC;aACd;YAED,OAAO,SAAS,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC;QAClD,CAAC;KAAA;IAEa,aAAa,CAAC,EAAsB;;YAChD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE;gBACd,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;aACtE;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CACrD,EAAE,CAAC,OAAO,EACV,EAAE,CAAC,MAAM,CACV,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,KAAK,CAAC;aACd;YAED,0EAA0E;YAC1E,kDAAkD;YAClD,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE;gBAChD,OAAO,KAAK,CAAC;aACd;YAED,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;;OAGG;IACK,kBAAkB,CAAC,SAAsB;QAC/C,IAAI,SAAS,CAAC,cAAc,IAAI,IAAI,EAAE;YACpC,OAAO,SAAS,CAAC,cAAc,CAAC;SACjC;QACD,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,IACE,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC;gBACjD,EAAE,CAAC,MAAM,KAAK,0BAAkB,CAAC,SAAS,EAC1C;gBACA,OAAO,CAAC,CAAC;aACV;SACF;QACD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAGS,qBAAqB,CAAC,SAAsB;QACpD,QAAQ,SAAS,CAAC,IAAI,EAAE;YACtB,KAAK,uBAAe,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,WAAW,IAAI,IAAI,EAAE;oBAChE,OAAO;iBACR;gBAED,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;gBAC1D,IAAI,cAAc,GAAG,CAAC,EAAE;oBACtB,OAAO;iBACR;gBAED,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACzC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,IAAI,IAAI,EAAE;oBAC5B,OAAO;iBACR;gBAED,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;gBAE1C,MAAM,qBAAqB,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAC9C,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,0BAAkB,CAAC,OAAO,CACjD;oBACC,CAAC,CAAC,SAAS,CAAC,EAAE;oBACd,CAAC,CAAC,SAAS,CAAC;gBAEd,MAAM,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CACzD,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,QAAQ,EACpB,WAAW,CAAC,gBAAgB,EAC5B,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,gBAAgB,EAC5B,WAAW,CAAC,oBAAoB,EAChC,EAAE,CAAC,MAAM,EACT,WAAW,CAAC,eAAe,EAC3B,WAAW,CAAC,YAAY,EACxB,qBAAqB,CACtB,CAAC;gBAEF,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;gBACzB,MAAM;aACP;YACD,OAAO,CAAC,CAAC;gBACP,OAAO;aACR;SACF;IACH,CAAC;IAED,qBAAqB;QACnB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,cAAc,CAAC,EAAU;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAGS,iBAAiB,CAAC,EAAU;QACpC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAGS,oBAAoB;QAC5B,MAAM,iBAAiB,GAAG;YACxB,yBAAiB,CAAC,SAAS;YAC3B,yBAAiB,CAAC,MAAM;SACzB,CAAC;QAEF,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,oBAAoB,EAAE;YACvD,oCAAoC;YACpC,kCAAkC;YAClC,IAAI,SAAS,CAAC,MAAM,KAAK,yBAAiB,CAAC,UAAU,EAAE;gBACrD,SAAS,CAAC,MAAM,GAAG,yBAAiB,CAAC,MAAM,CAAC;aAC7C;YAED,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBAChD,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACtB;SACF;QAED,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;YAC5B,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACtC;IACH,CAAC;IAEO,gCAAgC,CACtC,SAAsB,EACtB,KAAa;QAEb,IACE,SAAS,CAAC,IAAI,KAAK,uBAAe,CAAC,OAAO;YAC1C,SAAS,CAAC,SAAS,IAAI,IAAI,EAC3B;YACA,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,CACjD,SAAS,CAAC,SAAS,EACnB,KAAK,CACN,CAAC;SACH;IACH,CAAC;IAEO,+CAA+C,CACrD,SAAsB;QAEtB,IACE,SAAS,CAAC,IAAI,KAAK,uBAAe,CAAC,OAAO;YAC1C,SAAS,CAAC,SAAS,IAAI,IAAI,EAC3B;YACA,IAAI,CAAC,wBAAwB,CAAC,uCAAuC,CACnE,SAAS,CAAC,SAAS,CACpB,CAAC;SACH;IACH,CAAC;CACF;AA18BW;IADT,iBAAU;yEACgC;AAGxB;IADlB,iBAAU;yEACmE;AAuEpE;IADT,aAAM;yEA0CN;AA6tBS;IADT,aAAM;wEAkDN;AAgBS;IADT,aAAM;oEAGN;AAGS;IADT,aAAM;uEAwBN;AA/6BH,kEA48BC"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-executor/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,9 +23,15 @@ interface BackgroundTxBase {
|
|
|
23
23
|
txHash?: string;
|
|
24
24
|
error?: string;
|
|
25
25
|
}
|
|
26
|
-
export
|
|
26
|
+
export type EVMBackgroundTxFeeType = BackgroundTxFeeType | "custom";
|
|
27
|
+
interface EVMBackgroundTxBase extends Omit<BackgroundTxBase, "feeType"> {
|
|
28
|
+
feeType?: EVMBackgroundTxFeeType;
|
|
29
|
+
}
|
|
30
|
+
export interface EVMBackgroundTx extends EVMBackgroundTxBase {
|
|
27
31
|
readonly type: BackgroundTxType.EVM;
|
|
28
32
|
txData: UnsignedTransaction;
|
|
33
|
+
customPriorityFee?: string;
|
|
34
|
+
customGasPrice?: string;
|
|
29
35
|
}
|
|
30
36
|
export interface CosmosBackgroundTx extends BackgroundTxBase {
|
|
31
37
|
readonly type: BackgroundTxType.COSMOS;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tx-executor/types.ts"],"names":[],"mappings":";;;AAMA,8DAIgC;AAH9B,mHAAA,YAAY,OAAA;AAKd,qBAAqB;AACrB,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,6CAAuB,CAAA;IACvB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACrB,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,mBAAmB;AACnB,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;AACnB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tx-executor/types.ts"],"names":[],"mappings":";;;AAMA,8DAIgC;AAH9B,mHAAA,YAAY,OAAA;AAKd,qBAAqB;AACrB,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,6CAAuB,CAAA;IACvB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACrB,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,mBAAmB;AACnB,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;AACnB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B;AAyDD,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,8CAAyB,CAAA;IACzB,wCAAmB,CAAA;IACnB,4CAAuB,CAAA;IACvB,sCAAiB,CAAA;AACnB,CAAC,EANW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAM5B;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,0CAAuB,CAAA;IACvB,sCAAmB,CAAA;AACrB,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { EVMInfo } from "@keplr-wallet/types";
|
|
2
2
|
import { UnsignedTransaction } from "@ethersproject/transactions";
|
|
3
|
-
import {
|
|
4
|
-
export declare function fillUnsignedEVMTx(origin: string, evmInfo: EVMInfo, signer: string, tx: UnsignedTransaction, feeType?:
|
|
3
|
+
import { EVMBackgroundTxFeeType } from "../types";
|
|
4
|
+
export declare function fillUnsignedEVMTx(origin: string, evmInfo: EVMInfo, signer: string, tx: UnsignedTransaction, feeType?: EVMBackgroundTxFeeType, customPriorityFee?: string, customGasPrice?: string): Promise<UnsignedTransaction>;
|
|
@@ -8,11 +8,22 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
11
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
23
|
exports.fillUnsignedEVMTx = void 0;
|
|
13
24
|
const simple_fetch_1 = require("@keplr-wallet/simple-fetch");
|
|
14
25
|
const unit_1 = require("@keplr-wallet/unit");
|
|
15
|
-
const ETH_FEE_HISTORY_REWARD_PERCENTILES = [
|
|
26
|
+
const ETH_FEE_HISTORY_REWARD_PERCENTILES = [20, 40, 60];
|
|
16
27
|
const ETH_FEE_SETTINGS_BY_FEE_TYPE = {
|
|
17
28
|
low: {
|
|
18
29
|
percentile: ETH_FEE_HISTORY_REWARD_PERCENTILES[0],
|
|
@@ -36,6 +47,7 @@ const LATEST_BLOCK_ID = 2;
|
|
|
36
47
|
const FEE_HISTORY_ID = 3;
|
|
37
48
|
const ESTIMATE_GAS_ID = 4;
|
|
38
49
|
const MAX_PRIORITY_FEE_ID = 5;
|
|
50
|
+
const GAS_PRICE_ID = 6;
|
|
39
51
|
const toBigIntFromTxField = (value) => {
|
|
40
52
|
if (typeof value === "string" ||
|
|
41
53
|
typeof value === "number" ||
|
|
@@ -47,11 +59,12 @@ const toBigIntFromTxField = (value) => {
|
|
|
47
59
|
}
|
|
48
60
|
throw new Error("Unsupported numeric value in unsigned transaction");
|
|
49
61
|
};
|
|
50
|
-
function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
62
|
+
function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average", customPriorityFee, customGasPrice) {
|
|
51
63
|
var _a;
|
|
52
64
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
65
|
const hasProvidedPriorityFee = tx.maxPriorityFeePerGas != null;
|
|
54
66
|
const hasProvidedGasLimit = tx.gasLimit != null;
|
|
67
|
+
const innerFeeType = feeType === "custom" ? "average" : feeType;
|
|
55
68
|
const getTransactionCountRequest = {
|
|
56
69
|
jsonrpc: "2.0",
|
|
57
70
|
method: "eth_getTransactionCount",
|
|
@@ -95,6 +108,12 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
95
108
|
params: [],
|
|
96
109
|
id: MAX_PRIORITY_FEE_ID,
|
|
97
110
|
};
|
|
111
|
+
const getGasPriceRequest = {
|
|
112
|
+
jsonrpc: "2.0",
|
|
113
|
+
method: "eth_gasPrice",
|
|
114
|
+
params: [],
|
|
115
|
+
id: GAS_PRICE_ID,
|
|
116
|
+
};
|
|
98
117
|
// rpc request in batch (as 2.0 jsonrpc supports batch requests)
|
|
99
118
|
const batchRequest = [
|
|
100
119
|
getTransactionCountRequest,
|
|
@@ -102,6 +121,7 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
102
121
|
...(getFeeHistoryRequest ? [getFeeHistoryRequest] : []),
|
|
103
122
|
...(estimateGasRequest ? [estimateGasRequest] : []),
|
|
104
123
|
...(getMaxPriorityFeePerGasRequest ? [getMaxPriorityFeePerGasRequest] : []),
|
|
124
|
+
getGasPriceRequest,
|
|
105
125
|
];
|
|
106
126
|
const { data: rpcResponses } = yield (0, simple_fetch_1.simpleFetch)(evmInfo.rpc, {
|
|
107
127
|
method: "POST",
|
|
@@ -124,6 +144,9 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
124
144
|
throw new Error(`No response for id=${id}`);
|
|
125
145
|
}
|
|
126
146
|
if (res.error) {
|
|
147
|
+
if (optional) {
|
|
148
|
+
return undefined;
|
|
149
|
+
}
|
|
127
150
|
throw new Error(`RPC error (id=${id}): ${res.error.code} ${res.error.message}`);
|
|
128
151
|
}
|
|
129
152
|
return res.result;
|
|
@@ -137,12 +160,54 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
137
160
|
if (!latestBlock) {
|
|
138
161
|
throw new Error("Failed to get latest block to fill unsigned transaction");
|
|
139
162
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
163
|
+
// Compute nonce and gas limit first (shared by legacy and EIP-1559 paths)
|
|
164
|
+
const finalNonce = tx.nonce != null
|
|
165
|
+
? Math.max(Number(tx.nonce), parseInt(nonceHex, 16))
|
|
166
|
+
: parseInt(nonceHex, 16);
|
|
143
167
|
const gasLimitHex = hasProvidedGasLimit
|
|
144
168
|
? undefined
|
|
145
169
|
: getResult(ESTIMATE_GAS_ID, true);
|
|
170
|
+
let finalGasLimit;
|
|
171
|
+
if (tx.gasLimit != null) {
|
|
172
|
+
finalGasLimit = tx.gasLimit;
|
|
173
|
+
}
|
|
174
|
+
else if (gasLimitHex) {
|
|
175
|
+
const estimatedGas = toBigIntFromTxField(gasLimitHex);
|
|
176
|
+
const adjustedGas = (estimatedGas * GAS_ADJUSTMENT_NUM + (GAS_ADJUSTMENT_DEN - BigInt(1))) /
|
|
177
|
+
GAS_ADJUSTMENT_DEN;
|
|
178
|
+
finalGasLimit = `0x${adjustedGas.toString(16)}`;
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
throw new Error("Failed to estimate gas to fill unsigned transaction");
|
|
182
|
+
}
|
|
183
|
+
// Legacy chain detection: baseFeePerGas missing or zero
|
|
184
|
+
const isLegacy = !latestBlock.baseFeePerGas || parseInt(latestBlock.baseFeePerGas, 16) === 0;
|
|
185
|
+
if (isLegacy) {
|
|
186
|
+
let gasPriceDec;
|
|
187
|
+
if (feeType === "custom" && customGasPrice != null) {
|
|
188
|
+
gasPriceDec = new unit_1.Dec(customGasPrice);
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
const gasPriceHex = getResult(GAS_PRICE_ID, true);
|
|
192
|
+
if (gasPriceHex) {
|
|
193
|
+
const multiplier = new unit_1.Dec(FEE_MULTIPLIERS[innerFeeType]);
|
|
194
|
+
gasPriceDec = new unit_1.Dec(BigInt(gasPriceHex)).mul(multiplier);
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
throw new Error("Failed to get gas price for legacy chain to fill unsigned transaction");
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
const gasPriceHexResult = `0x${gasPriceDec
|
|
201
|
+
.truncate()
|
|
202
|
+
.toBigNumber()
|
|
203
|
+
.toString(16)}`;
|
|
204
|
+
const { maxFeePerGas: _maxFeePerGas, maxPriorityFeePerGas: _maxPriorityFeePerGas } = tx, legacyTx = __rest(tx, ["maxFeePerGas", "maxPriorityFeePerGas"]);
|
|
205
|
+
return Object.assign(Object.assign({}, legacyTx), { nonce: finalNonce, gasPrice: gasPriceHexResult, gasLimit: finalGasLimit, type: 0 });
|
|
206
|
+
}
|
|
207
|
+
// EIP-1559 path
|
|
208
|
+
const feeHistory = hasProvidedPriorityFee
|
|
209
|
+
? undefined
|
|
210
|
+
: getResult(FEE_HISTORY_ID, true);
|
|
146
211
|
const networkMaxPriorityFeePerGasHex = hasProvidedPriorityFee
|
|
147
212
|
? undefined
|
|
148
213
|
: getResult(MAX_PRIORITY_FEE_ID, true);
|
|
@@ -153,8 +218,11 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
153
218
|
}
|
|
154
219
|
maxPriorityFeePerGasDec = new unit_1.Dec(toBigIntFromTxField(tx.maxPriorityFeePerGas));
|
|
155
220
|
}
|
|
221
|
+
else if (feeType === "custom" && customPriorityFee != null) {
|
|
222
|
+
maxPriorityFeePerGasDec = new unit_1.Dec(customPriorityFee);
|
|
223
|
+
}
|
|
156
224
|
else if ((feeHistory === null || feeHistory === void 0 ? void 0 : feeHistory.reward) && feeHistory.reward.length > 0) {
|
|
157
|
-
const percentile = (_a = ETH_FEE_SETTINGS_BY_FEE_TYPE[
|
|
225
|
+
const percentile = (_a = ETH_FEE_SETTINGS_BY_FEE_TYPE[innerFeeType].percentile) !== null && _a !== void 0 ? _a : ETH_FEE_HISTORY_REWARD_PERCENTILES[1];
|
|
158
226
|
const percentileIndex = ETH_FEE_HISTORY_REWARD_PERCENTILES.indexOf(percentile);
|
|
159
227
|
if (percentileIndex >= 0) {
|
|
160
228
|
const rewards = feeHistory.reward
|
|
@@ -189,10 +257,7 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
189
257
|
if (!maxPriorityFeePerGasDec) {
|
|
190
258
|
throw new Error("Failed to calculate maxPriorityFeePerGas to fill unsigned transaction");
|
|
191
259
|
}
|
|
192
|
-
|
|
193
|
-
throw new Error("Failed to get baseFeePerGas to fill unsigned transaction");
|
|
194
|
-
}
|
|
195
|
-
const multiplier = new unit_1.Dec(FEE_MULTIPLIERS[feeType]);
|
|
260
|
+
const multiplier = new unit_1.Dec(FEE_MULTIPLIERS[innerFeeType]);
|
|
196
261
|
// Calculate maxFeePerGas = baseFeePerGas + maxPriorityFeePerGas
|
|
197
262
|
const baseFeePerGasDec = new unit_1.Dec(BigInt(latestBlock.baseFeePerGas));
|
|
198
263
|
const suggestedFeeFromBase = baseFeePerGasDec.mul(multiplier);
|
|
@@ -212,22 +277,6 @@ function fillUnsignedEVMTx(origin, evmInfo, signer, tx, feeType = "average") {
|
|
|
212
277
|
.truncate()
|
|
213
278
|
.toBigNumber()
|
|
214
279
|
.toString(16)}`;
|
|
215
|
-
const finalNonce = tx.nonce != null
|
|
216
|
-
? Math.max(Number(tx.nonce), parseInt(nonceHex, 16))
|
|
217
|
-
: parseInt(nonceHex, 16);
|
|
218
|
-
let finalGasLimit;
|
|
219
|
-
if (tx.gasLimit != null) {
|
|
220
|
-
finalGasLimit = tx.gasLimit;
|
|
221
|
-
}
|
|
222
|
-
else if (gasLimitHex) {
|
|
223
|
-
const estimatedGas = toBigIntFromTxField(gasLimitHex);
|
|
224
|
-
const adjustedGas = (estimatedGas * GAS_ADJUSTMENT_NUM + (GAS_ADJUSTMENT_DEN - BigInt(1))) /
|
|
225
|
-
GAS_ADJUSTMENT_DEN;
|
|
226
|
-
finalGasLimit = `0x${adjustedGas.toString(16)}`;
|
|
227
|
-
}
|
|
228
|
-
else {
|
|
229
|
-
throw new Error("Failed to estimate gas to fill unsigned transaction");
|
|
230
|
-
}
|
|
231
280
|
const newUnsignedTx = Object.assign(Object.assign({}, tx), { nonce: finalNonce, maxFeePerGas: maxFeePerGasHex, maxPriorityFeePerGas: maxPriorityFeePerGasHex, gasLimit: finalGasLimit });
|
|
232
281
|
return newUnsignedTx;
|
|
233
282
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../src/tx-executor/utils/evm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../src/tx-executor/utils/evm.ts"],"names":[],"mappings":"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"}
|