@kimafinance/kima-transaction-widget 1.0.9 → 1.1.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/dist/index.js CHANGED
@@ -1011,6 +1011,25 @@ var useEthereumProvider = function useEthereumProvider() {
1011
1011
  return React.useContext(EthereumProviderContext);
1012
1012
  };
1013
1013
 
1014
+ // A type of promise-like that resolves synchronously and supports only one observer
1015
+
1016
+ const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
1017
+
1018
+ const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
1019
+
1020
+ // Asynchronously call a function and send errors to recovery continuation
1021
+ function _catch(body, recover) {
1022
+ try {
1023
+ var result = body();
1024
+ } catch(e) {
1025
+ return recover(e);
1026
+ }
1027
+ if (result && result.then) {
1028
+ return result.then(void 0, recover);
1029
+ }
1030
+ return result;
1031
+ }
1032
+
1014
1033
  var Loading180Ring = function Loading180Ring(_ref) {
1015
1034
  var width = _ref.width,
1016
1035
  height = _ref.height,
@@ -1191,17 +1210,24 @@ function useNetworkOptions() {
1191
1210
  var nodeProviderQuery = reactRedux.useSelector(selectNodeProviderQuery);
1192
1211
  React.useEffect(function () {
1193
1212
  if (!nodeProviderQuery) return;
1194
- try {
1195
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/getChains")).then(function (networks) {
1196
- setOptions(networkOptions.filter(function (network) {
1197
- return networks.Chains.findIndex(function (id) {
1198
- return id === network.id;
1199
- }) >= 0;
1200
- }));
1201
- });
1202
- } catch (e) {
1203
- Promise.reject(e);
1204
- }
1213
+ (function () {
1214
+ try {
1215
+ var _temp2 = _catch(function () {
1216
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/getChains")).then(function (networks) {
1217
+ setOptions(networkOptions.filter(function (network) {
1218
+ return networks.Chains.findIndex(function (id) {
1219
+ return id === network.id;
1220
+ }) >= 0;
1221
+ }));
1222
+ });
1223
+ }, function (e) {
1224
+ console.log('rpc disconnected', e);
1225
+ });
1226
+ return _temp2 && _temp2.then ? _temp2.then(function () {}) : void 0;
1227
+ } catch (e) {
1228
+ Promise.reject(e);
1229
+ }
1230
+ })();
1205
1231
  }, [nodeProviderQuery]);
1206
1232
  return React.useMemo(function () {
1207
1233
  return {
@@ -1244,26 +1270,40 @@ var Network = function Network(_ref) {
1244
1270
  }, [networkOptions, isOriginChain, availableNetworks]);
1245
1271
  React.useEffect(function () {
1246
1272
  if (!nodeProviderQuery || mode !== exports.ModeOptions.bridge) return;
1247
- try {
1248
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + originNetwork)).then(function (networks) {
1249
- setAvailableNetworks(networks.Chains);
1250
- if (isOriginChain) {
1251
- dispatch(setTargetNetwork(networks.Chains[0]));
1252
- }
1253
- });
1254
- } catch (e) {
1255
- Promise.reject(e);
1256
- }
1273
+ (function () {
1274
+ try {
1275
+ var _temp2 = _catch(function () {
1276
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + originNetwork)).then(function (networks) {
1277
+ setAvailableNetworks(networks.Chains);
1278
+ if (isOriginChain) {
1279
+ dispatch(setTargetNetwork(networks.Chains[0]));
1280
+ }
1281
+ });
1282
+ }, function (e) {
1283
+ console.log('rpc disconnected', e);
1284
+ });
1285
+ return _temp2 && _temp2.then ? _temp2.then(function () {}) : void 0;
1286
+ } catch (e) {
1287
+ Promise.reject(e);
1288
+ }
1289
+ })();
1257
1290
  }, [nodeProviderQuery, originNetwork, mode, isOriginChain]);
1258
1291
  React.useEffect(function () {
1259
1292
  if (!nodeProviderQuery || mode !== exports.ModeOptions.payment) return;
1260
- try {
1261
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + targetNetwork)).then(function (networks) {
1262
- setAvailableNetworks(networks.Chains);
1263
- });
1264
- } catch (e) {
1265
- Promise.reject(e);
1266
- }
1293
+ (function () {
1294
+ try {
1295
+ var _temp4 = _catch(function () {
1296
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + targetNetwork)).then(function (networks) {
1297
+ setAvailableNetworks(networks.Chains);
1298
+ });
1299
+ }, function (e) {
1300
+ console.log('rpc disconnected', e);
1301
+ });
1302
+ return _temp4 && _temp4.then ? _temp4.then(function () {}) : void 0;
1303
+ } catch (e) {
1304
+ Promise.reject(e);
1305
+ }
1306
+ })();
1267
1307
  }, [nodeProviderQuery, mode]);
1268
1308
  React.useEffect(function () {
1269
1309
  var _sliderRef$current, _sliderRef$current5, _sliderRef$current6, _sliderRef$current7;
@@ -2073,26 +2113,40 @@ var NetworkDropdown = function NetworkDropdown(_ref) {
2073
2113
  var dispatch = reactRedux.useDispatch();
2074
2114
  React.useEffect(function () {
2075
2115
  if (!nodeProviderQuery || mode !== exports.ModeOptions.bridge) return;
2076
- try {
2077
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + originNetwork)).then(function (networks) {
2078
- setAvailableNetworks(networks.Chains);
2079
- if (isOriginChain) {
2080
- dispatch(setTargetNetwork(networks.Chains[0]));
2081
- }
2082
- });
2083
- } catch (e) {
2084
- Promise.reject(e);
2085
- }
2116
+ (function () {
2117
+ try {
2118
+ var _temp2 = _catch(function () {
2119
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + originNetwork)).then(function (networks) {
2120
+ setAvailableNetworks(networks.Chains);
2121
+ if (isOriginChain) {
2122
+ dispatch(setTargetNetwork(networks.Chains[0]));
2123
+ }
2124
+ });
2125
+ }, function (e) {
2126
+ console.log('rpc disconnected', e);
2127
+ });
2128
+ return _temp2 && _temp2.then ? _temp2.then(function () {}) : void 0;
2129
+ } catch (e) {
2130
+ Promise.reject(e);
2131
+ }
2132
+ })();
2086
2133
  }, [nodeProviderQuery, originNetwork, mode, isOriginChain]);
2087
2134
  React.useEffect(function () {
2088
2135
  if (!nodeProviderQuery || mode !== exports.ModeOptions.payment) return;
2089
- try {
2090
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + targetNetwork)).then(function (networks) {
2091
- setAvailableNetworks(networks.Chains);
2092
- });
2093
- } catch (e) {
2094
- Promise.reject(e);
2095
- }
2136
+ (function () {
2137
+ try {
2138
+ var _temp4 = _catch(function () {
2139
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + targetNetwork)).then(function (networks) {
2140
+ setAvailableNetworks(networks.Chains);
2141
+ });
2142
+ }, function (e) {
2143
+ console.log('rpc disconnected', e);
2144
+ });
2145
+ return _temp4 && _temp4.then ? _temp4.then(function () {}) : void 0;
2146
+ } catch (e) {
2147
+ Promise.reject(e);
2148
+ }
2149
+ })();
2096
2150
  }, [nodeProviderQuery, mode]);
2097
2151
  return React__default.createElement("div", {
2098
2152
  className: "network-dropdown " + theme + " " + (collapsed ? 'collapsed' : ''),
@@ -2430,59 +2484,63 @@ var TransactionWidget = function TransactionWidget(_ref) {
2430
2484
  if (!nodeProviderQuery || txId < 0) return;
2431
2485
  var timerId = setInterval(function () {
2432
2486
  try {
2433
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/transaction_data/" + txId)).then(function (result) {
2434
- var data = result === null || result === void 0 ? void 0 : result.transactionData;
2435
- if (!data) return;
2436
- var status = data.status;
2437
- console.log(status);
2438
- setData({
2439
- sourceChain: data.originChain,
2440
- targetChain: data.targetChain,
2441
- tssPullHash: data.tssPullHash,
2442
- tssReleaseHash: data.tssReleaseHash,
2443
- amount: +data.amount,
2444
- symbol: data.symbol,
2445
- kimaTxHash: data.kimaTxHash
2487
+ return Promise.resolve(_catch(function () {
2488
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/transaction_data/" + txId)).then(function (result) {
2489
+ var data = result === null || result === void 0 ? void 0 : result.transactionData;
2490
+ if (!data) return;
2491
+ var status = data.status;
2492
+ console.log(status);
2493
+ setData({
2494
+ sourceChain: data.originChain,
2495
+ targetChain: data.targetChain,
2496
+ tssPullHash: data.tssPullHash,
2497
+ tssReleaseHash: data.tssReleaseHash,
2498
+ amount: +data.amount,
2499
+ symbol: data.symbol,
2500
+ kimaTxHash: data.kimaTxHash
2501
+ });
2502
+ setErrorStep(-1);
2503
+ if (status === TransactionStatus.AVAILABLE) {
2504
+ setStep(1);
2505
+ setPercent(25);
2506
+ setLoadingStep(1);
2507
+ } else if (status === TransactionStatus.CONFIRMED) {
2508
+ setStep(2);
2509
+ setPercent(50);
2510
+ setLoadingStep(2);
2511
+ } else if (status.startsWith(TransactionStatus.UNAVAILABLE)) {
2512
+ setStep(1);
2513
+ setPercent(25);
2514
+ setErrorStep(1);
2515
+ setLoadingStep(-1);
2516
+ } else if (status === TransactionStatus.KEYSIGNED) {
2517
+ setStep(3);
2518
+ setPercent(75);
2519
+ setLoadingStep(3);
2520
+ } else if (status === TransactionStatus.PAID) {
2521
+ setStep(3);
2522
+ setPercent(90);
2523
+ setLoadingStep(3);
2524
+ } else if (status === TransactionStatus.FAILED) {
2525
+ setStep(3);
2526
+ setPercent(90);
2527
+ setErrorStep(3);
2528
+ setLoadingStep(-1);
2529
+ } else if (status === TransactionStatus.COMPLETED) {
2530
+ setStep(4);
2531
+ setPercent(100);
2532
+ clearInterval(timerId);
2533
+ setLoadingStep(-1);
2534
+ setTimeout(function () {
2535
+ successHandler({
2536
+ txId: txId
2537
+ });
2538
+ }, 3000);
2539
+ }
2446
2540
  });
2447
- setErrorStep(-1);
2448
- if (status === TransactionStatus.AVAILABLE) {
2449
- setStep(1);
2450
- setPercent(25);
2451
- setLoadingStep(1);
2452
- } else if (status === TransactionStatus.CONFIRMED) {
2453
- setStep(2);
2454
- setPercent(50);
2455
- setLoadingStep(2);
2456
- } else if (status.startsWith(TransactionStatus.UNAVAILABLE)) {
2457
- setStep(1);
2458
- setPercent(25);
2459
- setErrorStep(1);
2460
- setLoadingStep(-1);
2461
- } else if (status === TransactionStatus.KEYSIGNED) {
2462
- setStep(3);
2463
- setPercent(75);
2464
- setLoadingStep(3);
2465
- } else if (status === TransactionStatus.PAID) {
2466
- setStep(3);
2467
- setPercent(90);
2468
- setLoadingStep(3);
2469
- } else if (status === TransactionStatus.FAILED) {
2470
- setStep(3);
2471
- setPercent(90);
2472
- setErrorStep(3);
2473
- setLoadingStep(-1);
2474
- } else if (status === TransactionStatus.COMPLETED) {
2475
- setStep(4);
2476
- setPercent(100);
2477
- clearInterval(timerId);
2478
- setLoadingStep(-1);
2479
- setTimeout(function () {
2480
- successHandler({
2481
- txId: txId
2482
- });
2483
- }, 3000);
2484
- }
2485
- });
2541
+ }, function (e) {
2542
+ console.log('rpc disconnected', e);
2543
+ }));
2486
2544
  } catch (e) {
2487
2545
  return Promise.reject(e);
2488
2546
  }
@@ -2558,25 +2616,6 @@ var TransactionWidget = function TransactionWidget(_ref) {
2558
2616
  })));
2559
2617
  };
2560
2618
 
2561
- // A type of promise-like that resolves synchronously and supports only one observer
2562
-
2563
- const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.iterator || (Symbol.iterator = Symbol("Symbol.iterator"))) : "@@iterator";
2564
-
2565
- const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== "undefined" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol("Symbol.asyncIterator"))) : "@@asyncIterator";
2566
-
2567
- // Asynchronously call a function and send errors to recovery continuation
2568
- function _catch(body, recover) {
2569
- try {
2570
- var result = body();
2571
- } catch(e) {
2572
- return recover(e);
2573
- }
2574
- if (result && result.then) {
2575
- return result.then(void 0, recover);
2576
- }
2577
- return result;
2578
- }
2579
-
2580
2619
  var SingleForm = function SingleForm() {
2581
2620
  var dispatch = reactRedux.useDispatch();
2582
2621
  var mode = reactRedux.useSelector(selectMode);
@@ -6550,19 +6589,29 @@ function useAllowance() {
6550
6589
  targetAddress = _useState3[0],
6551
6590
  setTargetAddress = _useState3[1];
6552
6591
  var isApproved = React.useMemo(function () {
6553
- if (!isEVMChain(sourceChain)) return splAllowance >= amount + serviceFee;
6592
+ if (!isEVMChain(sourceChain)) {
6593
+ return allowance >= amount + serviceFee;
6594
+ }
6554
6595
  if (allowance && amount && allowance.gte(units.parseUnits((amount + serviceFee).toString(), decimals))) return true;
6555
6596
  return false;
6556
6597
  }, [decimals, sourceChain, allowance, amount, splAllowance, serviceFee]);
6557
6598
  var updatePoolAddress = function updatePoolAddress() {
6558
6599
  try {
6559
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/tss_pubkey")).then(function (result) {
6560
- var _result$tssPubkey;
6561
- if ((result === null || result === void 0 ? void 0 : (_result$tssPubkey = result.tssPubkey) === null || _result$tssPubkey === void 0 ? void 0 : _result$tssPubkey.length) < 1) {
6600
+ return Promise.resolve(_catch(function () {
6601
+ if (sourceChain === exports.SupportNetworks.SOLANA) {
6602
+ setTargetAddress('8ymXJ6RH9k8qSf1xsvxSWgzPB9RYgUuHPDgonkFzUEhT');
6562
6603
  return;
6563
6604
  }
6564
- setTargetAddress(sourceChain === exports.SupportNetworks.SOLANA ? result.tssPubkey[0].ebdsa : result.tssPubkey[0].ecdsa);
6565
- });
6605
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/tss_pubkey")).then(function (result) {
6606
+ var _result$tssPubkey;
6607
+ if ((result === null || result === void 0 ? void 0 : (_result$tssPubkey = result.tssPubkey) === null || _result$tssPubkey === void 0 ? void 0 : _result$tssPubkey.length) < 1) {
6608
+ return;
6609
+ }
6610
+ setTargetAddress(sourceChain === exports.SupportNetworks.SOLANA ? result.tssPubkey[0].ebdsa : result.tssPubkey[0].ecdsa);
6611
+ });
6612
+ }, function (e) {
6613
+ console.log('rpc disconnected', e);
6614
+ }));
6566
6615
  } catch (e) {
6567
6616
  return Promise.reject(e);
6568
6617
  }
@@ -6574,15 +6623,37 @@ function useAllowance() {
6574
6623
  React.useEffect(function () {
6575
6624
  (function () {
6576
6625
  try {
6626
+ var _exit2 = false;
6577
6627
  return _catch(function () {
6578
- if (!isEVMChain(sourceChain) || !tokenAddress || !targetAddress || !signer || !signerAddress) return;
6579
- var erc20Contract = new contracts.Contract(tokenAddress, ERC20ABI.abi, signer);
6580
- return Promise.resolve(erc20Contract.decimals()).then(function (decimals) {
6581
- return Promise.resolve(erc20Contract.allowance(signerAddress, targetAddress)).then(function (userAllowance) {
6582
- setDecimals(+decimals);
6583
- setAllowance(userAllowance);
6628
+ function _temp2(_result2) {
6629
+ if (_exit2) return _result2;
6630
+ if (!tokenAddress || !targetAddress || !signer || !signerAddress) return;
6631
+ var erc20Contract = new contracts.Contract(tokenAddress, ERC20ABI.abi, signer);
6632
+ return Promise.resolve(erc20Contract.decimals()).then(function (decimals) {
6633
+ return Promise.resolve(erc20Contract.allowance(signerAddress, targetAddress)).then(function (userAllowance) {
6634
+ setDecimals(+decimals);
6635
+ setAllowance(userAllowance);
6636
+ });
6584
6637
  });
6585
- });
6638
+ }
6639
+ var _temp = function () {
6640
+ if (!isEVMChain(sourceChain) && publicKey && tokenAddress && connection) {
6641
+ var mint = new web3_js.PublicKey(tokenAddress);
6642
+ console.log(mint, publicKey, tokenAddress);
6643
+ return Promise.resolve(getOrCreateAssociatedTokenAccount(connection, publicKey, mint, publicKey, signTransaction)).then(function (fromTokenAccount) {
6644
+ console.log(fromTokenAccount);
6645
+ return Promise.resolve(connection.getParsedAccountInfo(fromTokenAccount.address)).then(function (accountInfo) {
6646
+ var _accountInfo$value, _parsedAccountInfo$pa, _parsedAccountInfo$pa2, _parsedAccountInfo$pa3, _parsedAccountInfo$pa4, _parsedAccountInfo$pa5;
6647
+ console.log(accountInfo);
6648
+ setDecimals(COIN_LIST['USDK'].decimals);
6649
+ var parsedAccountInfo = accountInfo === null || accountInfo === void 0 ? void 0 : (_accountInfo$value = accountInfo.value) === null || _accountInfo$value === void 0 ? void 0 : _accountInfo$value.data;
6650
+ setAllowance(((_parsedAccountInfo$pa = parsedAccountInfo.parsed) === null || _parsedAccountInfo$pa === void 0 ? void 0 : (_parsedAccountInfo$pa2 = _parsedAccountInfo$pa.info) === null || _parsedAccountInfo$pa2 === void 0 ? void 0 : _parsedAccountInfo$pa2.delegate) === targetAddress ? (_parsedAccountInfo$pa3 = parsedAccountInfo.parsed) === null || _parsedAccountInfo$pa3 === void 0 ? void 0 : (_parsedAccountInfo$pa4 = _parsedAccountInfo$pa3.info) === null || _parsedAccountInfo$pa4 === void 0 ? void 0 : (_parsedAccountInfo$pa5 = _parsedAccountInfo$pa4.delegatedAmount) === null || _parsedAccountInfo$pa5 === void 0 ? void 0 : _parsedAccountInfo$pa5.uiAmount : 0);
6651
+ _exit2 = true;
6652
+ });
6653
+ });
6654
+ }
6655
+ }();
6656
+ return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
6586
6657
  }, function (error) {
6587
6658
  errorHandler(error);
6588
6659
  });
@@ -6590,13 +6661,13 @@ function useAllowance() {
6590
6661
  Promise.reject(e);
6591
6662
  }
6592
6663
  })();
6593
- }, [signerAddress, tokenAddress, targetAddress, isApproving, sourceChain]);
6664
+ }, [signerAddress, tokenAddress, targetAddress, isApproving, sourceChain, publicKey]);
6594
6665
  var approve = React.useCallback(function () {
6595
6666
  try {
6596
- var _temp6 = function _temp6(_result2) {
6597
- if (_exit2) return _result2;
6667
+ var _temp8 = function _temp8(_result4) {
6668
+ if (_exit4) return _result4;
6598
6669
  if (!signTransaction) return;
6599
- var _temp3 = _catch(function () {
6670
+ var _temp5 = _catch(function () {
6600
6671
  dispatch(setApproving(true));
6601
6672
  var mint = new web3_js.PublicKey(tokenAddress);
6602
6673
  var toPublicKey = new web3_js.PublicKey(targetAddress);
@@ -6619,19 +6690,19 @@ function useAllowance() {
6619
6690
  errorHandler(e);
6620
6691
  dispatch(setApproving(false));
6621
6692
  });
6622
- if (_temp3 && _temp3.then) return _temp3.then(function () {});
6693
+ if (_temp5 && _temp5.then) return _temp5.then(function () {});
6623
6694
  };
6624
- var _exit2 = false;
6625
- var _temp7 = function () {
6695
+ var _exit4 = false;
6696
+ var _temp9 = function () {
6626
6697
  if (isEVMChain(sourceChain)) {
6627
- var _temp8 = function _temp8() {
6628
- _exit2 = true;
6698
+ var _temp10 = function _temp10() {
6699
+ _exit4 = true;
6629
6700
  };
6630
6701
  if (!decimals || !tokenAddress || !signer || !targetAddress) {
6631
- _exit2 = true;
6702
+ _exit4 = true;
6632
6703
  return;
6633
6704
  }
6634
- var _temp9 = _catch(function () {
6705
+ var _temp11 = _catch(function () {
6635
6706
  var erc20Contract = new contracts.Contract(tokenAddress, ERC20ABI.abi, signer);
6636
6707
  dispatch(setApproving(true));
6637
6708
  return Promise.resolve(erc20Contract.approve(targetAddress, units.parseUnits((amount + serviceFee).toString(), decimals))).then(function (approve) {
@@ -6643,10 +6714,10 @@ function useAllowance() {
6643
6714
  errorHandler(error);
6644
6715
  dispatch(setApproving(false));
6645
6716
  });
6646
- return _temp9 && _temp9.then ? _temp9.then(_temp8) : _temp8(_temp9);
6717
+ return _temp11 && _temp11.then ? _temp11.then(_temp10) : _temp10(_temp11);
6647
6718
  }
6648
6719
  }();
6649
- return Promise.resolve(_temp7 && _temp7.then ? _temp7.then(_temp6) : _temp6(_temp7));
6720
+ return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(_temp8) : _temp8(_temp9));
6650
6721
  } catch (e) {
6651
6722
  return Promise.reject(e);
6652
6723
  }
@@ -6672,7 +6743,7 @@ var getFeeInUSD = function getFeeInUSD(sourceChain, targetChain, gasFee) {
6672
6743
  if (targetChain === exports.SupportNetworks.SOLANA) {
6673
6744
  targetFee = +gasFee[targetChain] * +targetTokenPrice;
6674
6745
  } else targetFee = gasFee[targetChain] ? +gasFee[targetChain] * max_gas * +targetTokenPrice / 1e9 : 0;
6675
- return [sourceFee, targetFee];
6746
+ return [isNaN(sourceFee) ? 0 : sourceFee, isNaN(targetFee) ? 0 : targetFee];
6676
6747
  });
6677
6748
  } catch (e) {
6678
6749
  return Promise.reject(e);
@@ -6744,7 +6815,7 @@ function useServiceFee() {
6744
6815
  });
6745
6816
  });
6746
6817
  }, function (e) {
6747
- console.log(e);
6818
+ console.log('rpc disconnected', e);
6748
6819
  });
6749
6820
  return Promise.resolve(_temp7 && _temp7.then ? _temp7.then(function () {}) : void 0);
6750
6821
  } catch (e) {
@@ -6756,7 +6827,7 @@ function useServiceFee() {
6756
6827
  getServiceFee();
6757
6828
  var timerId = setInterval(function () {
6758
6829
  getServiceFee();
6759
- }, 5 * 1000);
6830
+ }, 20 * 1000);
6760
6831
  return function () {
6761
6832
  clearInterval(timerId);
6762
6833
  };
@@ -6786,14 +6857,21 @@ function useCurrencyOptions() {
6786
6857
  var targetNetwork = reactRedux.useSelector(selectTargetNetwork);
6787
6858
  React.useEffect(function () {
6788
6859
  if (!nodeProviderQuery || !originNetwork || !targetNetwork) return;
6789
- try {
6790
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/getCurrencies/" + originNetwork + "/" + targetNetwork)).then(function (coins) {
6791
- var _coins$Currencies;
6792
- setOptions(COIN_LIST[(_coins$Currencies = coins.Currencies) !== null && _coins$Currencies !== void 0 && _coins$Currencies.length ? coins.Currencies[0] : 'USDK']);
6793
- });
6794
- } catch (e) {
6795
- Promise.reject(e);
6796
- }
6860
+ (function () {
6861
+ try {
6862
+ var _temp2 = _catch(function () {
6863
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima/kima/getCurrencies/" + originNetwork + "/" + targetNetwork)).then(function (coins) {
6864
+ var _coins$Currencies;
6865
+ setOptions(COIN_LIST[(_coins$Currencies = coins.Currencies) !== null && _coins$Currencies !== void 0 && _coins$Currencies.length ? coins.Currencies[0] : 'USDK']);
6866
+ });
6867
+ }, function (e) {
6868
+ console.log('rpc disconnected', e);
6869
+ });
6870
+ return _temp2 && _temp2.then ? _temp2.then(function () {}) : void 0;
6871
+ } catch (e) {
6872
+ Promise.reject(e);
6873
+ }
6874
+ })();
6797
6875
  }, [nodeProviderQuery, originNetwork, targetNetwork]);
6798
6876
  return React.useMemo(function () {
6799
6877
  return {
@@ -6898,6 +6976,7 @@ var TransferWidget = function TransferWidget(_ref) {
6898
6976
  }, function (e) {
6899
6977
  errorHandler(e);
6900
6978
  dispatch(setSubmitting(false));
6979
+ console.log('rpc disconnected', e);
6901
6980
  }));
6902
6981
  } catch (e) {
6903
6982
  return Promise.reject(e);
@@ -7053,13 +7132,20 @@ var KimaTransactionWidget = function KimaTransactionWidget(_ref) {
7053
7132
  dispatch(setMode(mode));
7054
7133
  if (mode === exports.ModeOptions.payment) {
7055
7134
  dispatch(setTargetNetwork((transactionOption === null || transactionOption === void 0 ? void 0 : transactionOption.targetChain) || exports.SupportNetworks.ETHEREUM));
7056
- try {
7057
- return Promise.resolve(fetchWrapper.get(kimaNodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + ((transactionOption === null || transactionOption === void 0 ? void 0 : transactionOption.targetChain) || exports.SupportNetworks.ETHEREUM))).then(function (networks) {
7058
- dispatch(setOriginNetwork(networks.Chains[0]));
7059
- });
7060
- } catch (e) {
7061
- Promise.reject(e);
7062
- }
7135
+ (function () {
7136
+ try {
7137
+ var _temp2 = _catch(function () {
7138
+ return Promise.resolve(fetchWrapper.get(kimaNodeProviderQuery + "/kima-finance/kima/kima/get_available_chains/" + ((transactionOption === null || transactionOption === void 0 ? void 0 : transactionOption.targetChain) || exports.SupportNetworks.ETHEREUM))).then(function (networks) {
7139
+ dispatch(setOriginNetwork(networks.Chains[0]));
7140
+ });
7141
+ }, function (e) {
7142
+ console.log('rpc disconnected', e);
7143
+ });
7144
+ return _temp2 && _temp2.then ? _temp2.then(function () {}) : void 0;
7145
+ } catch (e) {
7146
+ Promise.reject(e);
7147
+ }
7148
+ })();
7063
7149
  dispatch(setTargetAddress((transactionOption === null || transactionOption === void 0 ? void 0 : transactionOption.targetAddress) || ''));
7064
7150
  dispatch(setAmount((transactionOption === null || transactionOption === void 0 ? void 0 : transactionOption.amount) || 0));
7065
7151
  } else if (mode === exports.ModeOptions.status) {