@keplr-wallet/background 0.12.313 → 0.13.1

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.
Files changed (83) hide show
  1. package/build/index.d.ts +1 -0
  2. package/build/index.js +7 -1
  3. package/build/index.js.map +1 -1
  4. package/build/keyring-cosmos/service.d.ts +10 -0
  5. package/build/keyring-cosmos/service.js +100 -0
  6. package/build/keyring-cosmos/service.js.map +1 -1
  7. package/build/keyring-ethereum/service.d.ts +5 -0
  8. package/build/keyring-ethereum/service.js +66 -0
  9. package/build/keyring-ethereum/service.js.map +1 -1
  10. package/build/recent-send-history/api.d.ts +31 -0
  11. package/build/recent-send-history/api.js +97 -0
  12. package/build/recent-send-history/api.js.map +1 -0
  13. package/build/recent-send-history/handler.js +36 -0
  14. package/build/recent-send-history/handler.js.map +1 -1
  15. package/build/recent-send-history/init.js +5 -0
  16. package/build/recent-send-history/init.js.map +1 -1
  17. package/build/recent-send-history/messages.d.ts +76 -1
  18. package/build/recent-send-history/messages.js +121 -1
  19. package/build/recent-send-history/messages.js.map +1 -1
  20. package/build/recent-send-history/service.d.ts +262 -9
  21. package/build/recent-send-history/service.js +2103 -812
  22. package/build/recent-send-history/service.js.map +1 -1
  23. package/build/recent-send-history/types.d.ts +214 -22
  24. package/build/recent-send-history/types.js +21 -0
  25. package/build/recent-send-history/types.js.map +1 -1
  26. package/build/tx/service.d.ts +2 -0
  27. package/build/tx/service.js +35 -0
  28. package/build/tx/service.js.map +1 -1
  29. package/build/tx-ethereum/service.d.ts +2 -0
  30. package/build/tx-ethereum/service.js +42 -0
  31. package/build/tx-ethereum/service.js.map +1 -1
  32. package/build/tx-executor/constants.d.ts +1 -0
  33. package/build/tx-executor/constants.js +5 -0
  34. package/build/tx-executor/constants.js.map +1 -0
  35. package/build/tx-executor/handler.d.ts +3 -0
  36. package/build/tx-executor/handler.js +45 -0
  37. package/build/tx-executor/handler.js.map +1 -0
  38. package/build/tx-executor/index.d.ts +3 -0
  39. package/build/tx-executor/index.js +20 -0
  40. package/build/tx-executor/index.js.map +1 -0
  41. package/build/tx-executor/init.d.ts +3 -0
  42. package/build/tx-executor/init.js +14 -0
  43. package/build/tx-executor/init.js.map +1 -0
  44. package/build/tx-executor/internal.d.ts +4 -0
  45. package/build/tx-executor/internal.js +24 -0
  46. package/build/tx-executor/internal.js.map +1 -0
  47. package/build/tx-executor/messages.d.ts +53 -0
  48. package/build/tx-executor/messages.js +116 -0
  49. package/build/tx-executor/messages.js.map +1 -0
  50. package/build/tx-executor/service.d.ts +67 -0
  51. package/build/tx-executor/service.js +715 -0
  52. package/build/tx-executor/service.js.map +1 -0
  53. package/build/tx-executor/types.d.ts +105 -0
  54. package/build/tx-executor/types.js +33 -0
  55. package/build/tx-executor/types.js.map +1 -0
  56. package/build/tx-executor/utils/cosmos.d.ts +59 -0
  57. package/build/tx-executor/utils/cosmos.js +526 -0
  58. package/build/tx-executor/utils/cosmos.js.map +1 -0
  59. package/build/tx-executor/utils/evm.d.ts +4 -0
  60. package/build/tx-executor/utils/evm.js +236 -0
  61. package/build/tx-executor/utils/evm.js.map +1 -0
  62. package/package.json +13 -13
  63. package/src/index.ts +24 -1
  64. package/src/keyring-cosmos/service.ts +151 -0
  65. package/src/keyring-ethereum/service.ts +103 -6
  66. package/src/recent-send-history/api.ts +119 -0
  67. package/src/recent-send-history/handler.ts +84 -0
  68. package/src/recent-send-history/init.ts +10 -0
  69. package/src/recent-send-history/messages.ts +163 -1
  70. package/src/recent-send-history/service.ts +3042 -1153
  71. package/src/recent-send-history/types.ts +268 -31
  72. package/src/tx/service.ts +41 -0
  73. package/src/tx-ethereum/service.ts +57 -0
  74. package/src/tx-executor/constants.ts +1 -0
  75. package/src/tx-executor/handler.ts +71 -0
  76. package/src/tx-executor/index.ts +3 -0
  77. package/src/tx-executor/init.ts +20 -0
  78. package/src/tx-executor/internal.ts +9 -0
  79. package/src/tx-executor/messages.ts +157 -0
  80. package/src/tx-executor/service.ts +1025 -0
  81. package/src/tx-executor/types.ts +161 -0
  82. package/src/tx-executor/utils/cosmos.ts +771 -0
  83. package/src/tx-executor/utils/evm.ts +310 -0
@@ -1,6 +1,9 @@
1
- import { AppCurrency } from "@keplr-wallet/types";
1
+ import { AppCurrency, SwapProvider } from "@keplr-wallet/types";
2
+ export { SwapProvider };
3
+ /**
4
+ * Stored recent send history record.
5
+ */
2
6
  export interface RecentSendHistory {
3
- timestamp: number;
4
7
  sender: string;
5
8
  recipient: string;
6
9
  amount: {
@@ -13,7 +16,105 @@ export interface RecentSendHistory {
13
16
  channelId: string;
14
17
  counterpartyChainId: string;
15
18
  }[] | undefined;
19
+ timestamp: number;
20
+ }
21
+ /**
22
+ * Data required to record an IBC transfer history.
23
+ * Used by tx-executor when creating history entries.
24
+ */
25
+ export interface IBCTransferHistoryData {
26
+ readonly historyType: string;
27
+ readonly sourceChainId: string;
28
+ readonly destinationChainId: string;
29
+ readonly channels: {
30
+ portId: string;
31
+ channelId: string;
32
+ counterpartyChainId: string;
33
+ }[];
34
+ readonly sender: string;
35
+ readonly recipient: string;
36
+ readonly amount: {
37
+ readonly amount: string;
38
+ readonly denom: string;
39
+ }[];
40
+ readonly memo: string;
41
+ readonly notificationInfo: {
42
+ readonly currencies: AppCurrency[];
43
+ };
44
+ }
45
+ /**
46
+ * Data required to record an IBC swap history.
47
+ * Used by tx-executor when creating history entries.
48
+ */
49
+ export interface IBCSwapHistoryData {
50
+ readonly swapType: "amount-in" | "amount-out";
51
+ readonly chainId: string;
52
+ readonly destinationChainId: string;
53
+ readonly sender: string;
54
+ readonly amount: {
55
+ amount: string;
56
+ denom: string;
57
+ }[];
58
+ readonly memo: string;
59
+ readonly ibcChannels: {
60
+ portId: string;
61
+ channelId: string;
62
+ counterpartyChainId: string;
63
+ }[];
64
+ readonly destinationAsset: {
65
+ chainId: string;
66
+ denom: string;
67
+ };
68
+ readonly swapChannelIndex: number;
69
+ readonly swapReceiver: string[];
70
+ readonly notificationInfo: {
71
+ currencies: AppCurrency[];
72
+ };
73
+ }
74
+ export type IBCSwapMinimalTrackingData = Pick<IBCSwapHistoryData, "chainId" | "swapReceiver" | "ibcChannels" | "swapChannelIndex">;
75
+ /**
76
+ * Stored IBC transfer history record (subset of IBCHistory).
77
+ */
78
+ export interface IBCTransferHistory {
79
+ recipient: string;
80
+ }
81
+ /**
82
+ * Stored IBC swap history record (subset of IBCHistory).
83
+ */
84
+ export interface IBCSwapHistory {
85
+ swapType: "amount-in" | "amount-out";
86
+ swapChannelIndex: number;
87
+ swapReceiver: string[];
88
+ destinationAsset: {
89
+ chainId: string;
90
+ denom: string;
91
+ };
92
+ resAmount: {
93
+ amount: string;
94
+ denom: string;
95
+ }[][];
96
+ swapRefundInfo?: {
97
+ chainId: string;
98
+ amount: {
99
+ amount: string;
100
+ denom: string;
101
+ }[];
102
+ };
16
103
  }
104
+ export type IbcHop = {
105
+ portId: string;
106
+ channelId: string;
107
+ counterpartyChainId: string;
108
+ sequence?: string;
109
+ dstChannelId?: string;
110
+ completed: boolean;
111
+ error?: string;
112
+ rewound?: boolean;
113
+ rewoundButNextRewindingBlocked?: boolean;
114
+ };
115
+ /**
116
+ * Stored IBC history record (union of IBCTransferHistory and IBCSwapHistory).
117
+ */
17
118
  export type IBCHistory = {
18
119
  id: string;
19
120
  chainId: string;
@@ -29,44 +130,135 @@ export type IBCHistory = {
29
130
  txFulfilled?: boolean;
30
131
  txError?: string;
31
132
  packetTimeout?: boolean;
32
- ibcHistory: {
33
- portId: string;
34
- channelId: string;
35
- counterpartyChainId: string;
36
- sequence?: string;
37
- dstChannelId?: string;
38
- completed: boolean;
39
- error?: string;
40
- rewound?: boolean;
41
- rewoundButNextRewindingBlocked?: boolean;
42
- }[];
133
+ ibcHistory: IbcHop[];
43
134
  notified?: boolean;
44
135
  notificationInfo?: {
45
136
  currencies: AppCurrency[];
46
137
  };
47
138
  } & (IBCTransferHistory | IBCSwapHistory);
48
- export interface IBCTransferHistory {
49
- recipient: string;
139
+ export declare enum SwapV2RouteStepStatus {
140
+ IN_PROGRESS = "in_progress",
141
+ SUCCESS = "success",
142
+ FAILED = "failed",
143
+ UNKNOWN = "unknown"
50
144
  }
51
- export interface IBCSwapHistory {
52
- swapType: "amount-in" | "amount-out";
53
- swapChannelIndex: number;
54
- swapReceiver: string[];
145
+ export declare enum SwapV2TxStatus {
146
+ IN_PROGRESS = "in_progress",
147
+ SUCCESS = "success",
148
+ PARTIAL_SUCCESS = "partial_success",
149
+ FAILED = "failed",
150
+ UNKNOWN = "unknown"
151
+ }
152
+ export interface SwapV2TxStatusStep {
153
+ chain_id: string;
154
+ status: SwapV2RouteStepStatus;
155
+ tx_hash?: string;
156
+ explorer_url?: string;
157
+ }
158
+ export interface SwapV2AssetLocation {
159
+ chain_id: string;
160
+ denom: string;
161
+ amount: string;
162
+ }
163
+ export interface SwapV2TxStatusRequest {
164
+ provider: SwapProvider;
165
+ from_chain: string;
166
+ to_chain?: string;
167
+ tx_hash: string;
168
+ }
169
+ export interface SwapV2TxStatusResponse {
170
+ provider: SwapProvider;
171
+ status: SwapV2TxStatus;
172
+ steps: SwapV2TxStatusStep[];
173
+ asset_location?: SwapV2AssetLocation | null;
174
+ }
175
+ /**
176
+ * Base interface for SwapV2History data.
177
+ * Contains common fields between SwapV2HistoryData and SwapV2History.
178
+ */
179
+ export interface SwapV2HistoryBase {
180
+ fromChainId: string;
181
+ toChainId: string;
182
+ provider: SwapProvider;
183
+ sender: string;
184
+ recipient: string;
185
+ amount: {
186
+ amount: string;
187
+ denom: string;
188
+ }[];
189
+ simpleRoute: {
190
+ isOnlyEvm: boolean;
191
+ chainId: string;
192
+ receiver: string;
193
+ }[];
55
194
  destinationAsset: {
56
195
  chainId: string;
57
196
  denom: string;
197
+ expectedAmount: string;
58
198
  };
199
+ routeDurationSeconds: number;
200
+ notificationInfo: {
201
+ currencies: AppCurrency[];
202
+ };
203
+ isOnlyUseBridge?: boolean;
204
+ }
205
+ /**
206
+ * Data required to record a SwapV2 history.
207
+ * Used by tx-executor when creating history entries.
208
+ */
209
+ export type SwapV2HistoryData = SwapV2HistoryBase;
210
+ /**
211
+ * Stored SwapV2 history record.
212
+ */
213
+ export interface SwapV2History extends SwapV2HistoryBase {
214
+ id: string;
215
+ timestamp: number;
216
+ txHash: string;
217
+ status: SwapV2TxStatus;
218
+ routeIndex: number;
59
219
  resAmount: {
60
220
  amount: string;
61
221
  denom: string;
62
222
  }[][];
63
- swapRefundInfo?: {
223
+ assetLocationInfo?: {
64
224
  chainId: string;
65
225
  amount: {
66
226
  amount: string;
67
227
  denom: string;
68
228
  }[];
229
+ /**
230
+ * "refund": 실패/오류로 인해 자산이 중간에서 릴리즈된 경우
231
+ * "intermediate": TX는 성공했지만 자산이 최종 목적지가 아닌 중간 단계에 도달한 경우
232
+ * (예: base USDC -> osmosis OSMO 스왑 시, noble USDC가 먼저 도착)
233
+ * 이 경우 추가 TX를 실행하여 최종 목적지로 자산을 보내거나,
234
+ * 현재 받은 자산을 그대로 둘 수 있음
235
+ */
236
+ type: "refund" | "intermediate";
69
237
  };
238
+ backgroundExecutionId?: string;
239
+ additionalTrackingData?: {
240
+ type: "evm";
241
+ chainId: string;
242
+ txHash: string;
243
+ } | {
244
+ type: "cosmos-ibc";
245
+ chainId: string;
246
+ swapReceiver: string[];
247
+ swapChannelIndex: number;
248
+ txHash: string;
249
+ txFulfilled?: boolean;
250
+ packetTimeout?: boolean;
251
+ dynamicHopDetected?: boolean;
252
+ ibcHistory: IbcHop[];
253
+ };
254
+ additionalTrackDone?: boolean;
255
+ additionalTrackError?: string;
256
+ trackDone?: boolean;
257
+ trackError?: string;
258
+ finalizationRetryCount?: number;
259
+ unknownStatusFirstSeenAt?: number;
260
+ notified?: boolean;
261
+ hidden?: boolean;
70
262
  }
71
263
  export type SkipHistory = {
72
264
  id: string;
@@ -114,9 +306,9 @@ export type SkipHistory = {
114
306
  isOnlyUseBridge?: boolean;
115
307
  };
116
308
  /**
117
- * This file is a temporary file to store types that are required for tracking the status of a transaction related to the skip-go.
118
- * Reference: https://github.com/skip-mev/skip-go/blob/staging/packages/client/src/types/lifecycle.ts
309
+ * Union type of all history data types.
119
310
  */
311
+ export type HistoryData = IBCTransferHistoryData | IBCSwapHistoryData | SwapV2HistoryData;
120
312
  export type StatusState = "STATE_UNKNOWN" | "STATE_SUBMITTED" | "STATE_PENDING" | "STATE_RECEIVED" | "STATE_COMPLETED" | "STATE_ABANDONED" | "STATE_COMPLETED_SUCCESS" | "STATE_COMPLETED_ERROR" | "STATE_PENDING_ERROR";
121
313
  export type NextBlockingTransfer = {
122
314
  transfer_sequence_index: number;
@@ -1,3 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SwapV2TxStatus = exports.SwapV2RouteStepStatus = exports.SwapProvider = void 0;
4
+ const types_1 = require("@keplr-wallet/types");
5
+ Object.defineProperty(exports, "SwapProvider", { enumerable: true, get: function () { return types_1.SwapProvider; } });
6
+ // ============================================================================
7
+ // SwapV2 History Types
8
+ // ============================================================================
9
+ var SwapV2RouteStepStatus;
10
+ (function (SwapV2RouteStepStatus) {
11
+ SwapV2RouteStepStatus["IN_PROGRESS"] = "in_progress";
12
+ SwapV2RouteStepStatus["SUCCESS"] = "success";
13
+ SwapV2RouteStepStatus["FAILED"] = "failed";
14
+ SwapV2RouteStepStatus["UNKNOWN"] = "unknown";
15
+ })(SwapV2RouteStepStatus = exports.SwapV2RouteStepStatus || (exports.SwapV2RouteStepStatus = {}));
16
+ var SwapV2TxStatus;
17
+ (function (SwapV2TxStatus) {
18
+ SwapV2TxStatus["IN_PROGRESS"] = "in_progress";
19
+ SwapV2TxStatus["SUCCESS"] = "success";
20
+ SwapV2TxStatus["PARTIAL_SUCCESS"] = "partial_success";
21
+ SwapV2TxStatus["FAILED"] = "failed";
22
+ SwapV2TxStatus["UNKNOWN"] = "unknown";
23
+ })(SwapV2TxStatus = exports.SwapV2TxStatus || (exports.SwapV2TxStatus = {}));
3
24
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/recent-send-history/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/recent-send-history/types.ts"],"names":[],"mappings":";;;AAAA,+CAAgE;AAEvD,6FAFa,oBAAY,OAEb;AAyKrB,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,oDAA2B,CAAA;IAC3B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;AACrB,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC;AAED,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,6CAA2B,CAAA;IAC3B,qCAAmB,CAAA;IACnB,qDAAmC,CAAA;IACnC,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;AACrB,CAAC,EANW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAMzB"}
@@ -8,8 +8,10 @@ export declare class BackgroundTxService {
8
8
  init(): Promise<void>;
9
9
  sendTx(chainId: string, tx: unknown, mode: "async" | "sync" | "block", options: {
10
10
  silent?: boolean;
11
+ skipTracingTxResult?: boolean;
11
12
  onFulfill?: (tx: any) => void;
12
13
  }): Promise<Uint8Array>;
14
+ traceTx(chainId: string, txHash: string): Promise<any>;
13
15
  private static processTxResultNotification;
14
16
  private static processTxErrorNotification;
15
17
  waitStarknetTransaction(chainId: string, txHash: string): Promise<GetTransactionReceiptResponse>;
@@ -69,6 +69,9 @@ class BackgroundTxService {
69
69
  throw new Error(txResponse["raw_log"]);
70
70
  }
71
71
  const txHash = buffer_1.Buffer.from(txResponse.txhash, "hex");
72
+ if (options.skipTracingTxResult) {
73
+ return txHash;
74
+ }
72
75
  // 이 기능은 tx commit일때 notification을 띄울 뿐이다.
73
76
  // 실제 로직 처리와는 관계가 없어야하기 때문에 여기서 await을 하면 안된다!!
74
77
  (0, common_1.retry)(() => {
@@ -117,6 +120,38 @@ class BackgroundTxService {
117
120
  }
118
121
  });
119
122
  }
123
+ traceTx(chainId, txHash) {
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ const chainInfo = this.chainsService.getChainInfoOrThrow(chainId);
126
+ const txHashBuffer = buffer_1.Buffer.from(txHash, "hex");
127
+ return yield (0, common_1.retry)(() => {
128
+ return new Promise((resolve, reject) => {
129
+ const txTracer = new cosmos_1.TendermintTxTracer(chainInfo.rpc, "/websocket");
130
+ txTracer.addEventListener("close", () => {
131
+ // reject if ws closed before fulfilled
132
+ // 하지만 로직상 fulfill 되기 전에 ws가 닫히는게 되기 때문에
133
+ // delay를 좀 준다.
134
+ // trace 이후 로직은 동기적인 로직밖에 없기 때문에 문제될 게 없다.
135
+ // 문제될게 없다.
136
+ setTimeout(() => {
137
+ reject();
138
+ }, 500);
139
+ });
140
+ txTracer.addEventListener("error", () => {
141
+ reject();
142
+ });
143
+ txTracer.traceTx(txHashBuffer).then((tx) => {
144
+ txTracer.close();
145
+ resolve(tx);
146
+ });
147
+ });
148
+ }, {
149
+ maxRetries: 10,
150
+ waitMsAfterError: 10 * 1000,
151
+ maxWaitMsAfterError: 5 * 60 * 1000, // 5min
152
+ });
153
+ });
154
+ }
120
155
  static processTxResultNotification(notification, result) {
121
156
  var _a;
122
157
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx/service.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,10 @@ export declare class BackgroundTxEthereumService {
8
8
  init(): Promise<void>;
9
9
  sendEthereumTx(origin: string, chainId: string, tx: Uint8Array, options: {
10
10
  silent?: boolean;
11
+ skipTracingTxResult?: boolean;
11
12
  onFulfill?: (txReceipt: EthTxReceipt) => void;
12
13
  }): Promise<string>;
14
+ getEthereumTxReceipt(origin: string, chainId: string, txHash: string): Promise<EthTxReceipt | null>;
13
15
  private static processTxResultNotification;
14
16
  private static processTxErrorNotification;
15
17
  }
@@ -56,6 +56,9 @@ class BackgroundTxEthereumService {
56
56
  if (sendRawTransactionResponse.data.error || !txHash) {
57
57
  throw ((_a = sendRawTransactionResponse.data.error) !== null && _a !== void 0 ? _a : new Error("No tx hash responded"));
58
58
  }
59
+ if (options.skipTracingTxResult) {
60
+ return txHash;
61
+ }
59
62
  (0, common_1.retry)(() => {
60
63
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
61
64
  var _a;
@@ -100,6 +103,45 @@ class BackgroundTxEthereumService {
100
103
  }
101
104
  });
102
105
  }
106
+ getEthereumTxReceipt(origin, chainId, txHash) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ const chainInfo = this.chainsService.getChainInfoOrThrow(chainId);
109
+ const evmInfo = chains_1.ChainsService.getEVMInfo(chainInfo);
110
+ if (!evmInfo) {
111
+ return null;
112
+ }
113
+ return yield (0, common_1.retry)(() => {
114
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
115
+ const txReceiptResponse = yield (0, simple_fetch_1.simpleFetch)(evmInfo.rpc, {
116
+ method: "POST",
117
+ headers: {
118
+ "content-type": "application/json",
119
+ "request-source": origin,
120
+ },
121
+ body: JSON.stringify({
122
+ jsonrpc: "2.0",
123
+ method: "eth_getTransactionReceipt",
124
+ params: [txHash],
125
+ id: 1,
126
+ }),
127
+ });
128
+ if (txReceiptResponse.data.error) {
129
+ console.error(txReceiptResponse.data.error);
130
+ resolve(null);
131
+ }
132
+ const txReceipt = txReceiptResponse.data.result;
133
+ if (txReceipt) {
134
+ resolve(txReceipt);
135
+ }
136
+ reject(new Error("No tx receipt responded"));
137
+ }));
138
+ }, {
139
+ maxRetries: 50,
140
+ waitMsAfterError: 500,
141
+ maxWaitMsAfterError: 15000,
142
+ });
143
+ });
144
+ }
103
145
  static processTxResultNotification(notification) {
104
146
  try {
105
147
  notification.create({
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-ethereum/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/tx-ethereum/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const ROUTE = "background-tx-executor";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ROUTE = void 0;
4
+ exports.ROUTE = "background-tx-executor";
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/tx-executor/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,KAAK,GAAG,wBAAwB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Handler } from "@keplr-wallet/router";
2
+ import { BackgroundTxExecutorService } from "./service";
3
+ export declare const getHandler: (service: BackgroundTxExecutorService) => Handler;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getHandler = void 0;
13
+ const router_1 = require("@keplr-wallet/router");
14
+ const messages_1 = require("./messages");
15
+ const getHandler = (service) => {
16
+ return (env, msg) => {
17
+ switch (msg.constructor) {
18
+ case messages_1.RecordAndExecuteTxsMsg:
19
+ return handleRecordAndExecuteTxsMsg(service)(env, msg);
20
+ case messages_1.GetTxExecutionMsg:
21
+ return handleGetTxExecutionMsg(service)(env, msg);
22
+ case messages_1.ResumeTxMsg:
23
+ return handleResumeTxMsg(service)(env, msg);
24
+ default:
25
+ throw new router_1.KeplrError("direct-tx-executor", 100, "Unknown msg type");
26
+ }
27
+ };
28
+ };
29
+ exports.getHandler = getHandler;
30
+ const handleRecordAndExecuteTxsMsg = (service) => {
31
+ return (env, msg) => {
32
+ return service.recordAndExecuteTxs(env, msg.vaultId, msg.executionType, msg.txs, msg.executableChainIds, msg.historyData, msg.historyTxIndex);
33
+ };
34
+ };
35
+ const handleResumeTxMsg = (service) => {
36
+ return (env, msg) => __awaiter(void 0, void 0, void 0, function* () {
37
+ return yield service.resumeTx(env, msg.id, msg.txIndex, msg.signedTx, msg.ibcSwapData);
38
+ });
39
+ };
40
+ const handleGetTxExecutionMsg = (service) => {
41
+ return (_env, msg) => {
42
+ return service.getTxExecution(msg.id);
43
+ };
44
+ };
45
+ //# sourceMappingURL=handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/tx-executor/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAM8B;AAE9B,yCAIoB;AAEb,MAAM,UAAU,GAAsD,CAC3E,OAAoC,EACpC,EAAE;IACF,OAAO,CAAC,GAAQ,EAAE,GAAqB,EAAE,EAAE;QACzC,QAAQ,GAAG,CAAC,WAAW,EAAE;YACvB,KAAK,iCAAsB;gBACzB,OAAO,4BAA4B,CAAC,OAAO,CAAC,CAC1C,GAAG,EACH,GAA6B,CAC9B,CAAC;YACJ,KAAK,4BAAiB;gBACpB,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAwB,CAAC,CAAC;YACzE,KAAK,sBAAW;gBACd,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAkB,CAAC,CAAC;YAC7D;gBACE,MAAM,IAAI,mBAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;SACvE;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,UAAU,cAkBrB;AAEF,MAAM,4BAA4B,GAEa,CAAC,OAAO,EAAE,EAAE;IACzD,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,OAAO,OAAO,CAAC,mBAAmB,CAChC,GAAG,EACH,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,WAAW,EACf,GAAG,CAAC,cAAc,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAEa,CAAC,OAAO,EAAE,EAAE;IAC9C,OAAO,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;QACxB,OAAO,MAAM,OAAO,CAAC,QAAQ,CAC3B,GAAG,EACH,GAAG,CAAC,EAAE,EACN,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,WAAW,CAChB,CAAC;IACJ,CAAC,CAAA,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAEa,CAAC,OAAO,EAAE,EAAE;IACpD,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACnB,OAAO,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./service";
2
+ export * from "./messages";
3
+ export * from "./types";
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./service"), exports);
18
+ __exportStar(require("./messages"), exports);
19
+ __exportStar(require("./types"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tx-executor/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B;AAC3B,0CAAwB"}
@@ -0,0 +1,3 @@
1
+ import { Router } from "@keplr-wallet/router";
2
+ import { BackgroundTxExecutorService } from "./service";
3
+ export declare function init(router: Router, service: BackgroundTxExecutorService): void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.init = void 0;
4
+ const constants_1 = require("./constants");
5
+ const handler_1 = require("./handler");
6
+ const messages_1 = require("./messages");
7
+ function init(router, service) {
8
+ router.registerMessage(messages_1.RecordAndExecuteTxsMsg);
9
+ router.registerMessage(messages_1.ResumeTxMsg);
10
+ router.registerMessage(messages_1.GetTxExecutionMsg);
11
+ router.addHandler(constants_1.ROUTE, (0, handler_1.getHandler)(service));
12
+ }
13
+ exports.init = init;
14
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/tx-executor/init.ts"],"names":[],"mappings":";;;AACA,2CAAoC;AACpC,uCAAuC;AAEvC,yCAIoB;AAEpB,SAAgB,IAAI,CAClB,MAAc,EACd,OAAoC;IAEpC,MAAM,CAAC,eAAe,CAAC,iCAAsB,CAAC,CAAC;IAC/C,MAAM,CAAC,eAAe,CAAC,sBAAW,CAAC,CAAC;IACpC,MAAM,CAAC,eAAe,CAAC,4BAAiB,CAAC,CAAC;IAE1C,MAAM,CAAC,UAAU,CAAC,iBAAK,EAAE,IAAA,oBAAU,EAAC,OAAO,CAAC,CAAC,CAAC;AAChD,CAAC;AATD,oBASC"}
@@ -0,0 +1,4 @@
1
+ export * from "./service";
2
+ export * from "./init";
3
+ export type { TxExecutionEvent } from "./types";
4
+ export { createSingleChannelEventBus, EventBusPublisher, EventBusSubscriber, EventBusCore, } from "@keplr-wallet/common";
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.EventBusSubscriber = exports.EventBusPublisher = exports.createSingleChannelEventBus = void 0;
18
+ __exportStar(require("./service"), exports);
19
+ __exportStar(require("./init"), exports);
20
+ var common_1 = require("@keplr-wallet/common");
21
+ Object.defineProperty(exports, "createSingleChannelEventBus", { enumerable: true, get: function () { return common_1.createSingleChannelEventBus; } });
22
+ Object.defineProperty(exports, "EventBusPublisher", { enumerable: true, get: function () { return common_1.EventBusPublisher; } });
23
+ Object.defineProperty(exports, "EventBusSubscriber", { enumerable: true, get: function () { return common_1.EventBusSubscriber; } });
24
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/tx-executor/internal.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,yCAAuB;AAEvB,+CAK8B;AAJ5B,qHAAA,2BAA2B,OAAA;AAC3B,2GAAA,iBAAiB,OAAA;AACjB,4GAAA,kBAAkB,OAAA"}