@kimafinance/kima-transaction-widget 1.2.25-beta.1 → 1.2.27-beta.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.
package/dist/index.js CHANGED
@@ -1509,9 +1509,6 @@ var selectHelpPopup = function selectHelpPopup(state) {
1509
1509
  var selectHashPopup = function selectHashPopup(state) {
1510
1510
  return state.option.hashPopup;
1511
1511
  };
1512
- var selectPendingTxPopup = function selectPendingTxPopup(state) {
1513
- return state.option.pendingTxPopup;
1514
- };
1515
1512
  var selectBankPopup = function selectBankPopup(state) {
1516
1513
  return state.option.bankPopup;
1517
1514
  };
@@ -1602,9 +1599,6 @@ var selectExpireTime = function selectExpireTime(state) {
1602
1599
  var selectPendingTxs = function selectPendingTxs(state) {
1603
1600
  return state.option.pendingTxs;
1604
1601
  };
1605
- var selectPendingTxData = function selectPendingTxData(state) {
1606
- return state.option.pendingTxData;
1607
- };
1608
1602
 
1609
1603
  var Loading180Ring = function Loading180Ring(_ref) {
1610
1604
  var _ref$width = _ref.width,
@@ -8185,82 +8179,6 @@ function htlcP2WSHAddress(htlcScript, network) {
8185
8179
  return p2wsh.address;
8186
8180
  }
8187
8181
 
8188
- var PendingTxPopup = function PendingTxPopup(_ref) {
8189
- var txData = _ref.txData,
8190
- handleHtlcContinue = _ref.handleHtlcContinue;
8191
- var dispatch = reactRedux.useDispatch();
8192
- var theme = reactRedux.useSelector(selectTheme);
8193
- var pendingTxPopup = reactRedux.useSelector(selectPendingTxPopup);
8194
- return React__default.createElement("div", {
8195
- className: "kima-modal pending-tx-popup " + theme.colorMode + " " + (pendingTxPopup ? 'open' : '')
8196
- }, React__default.createElement("div", {
8197
- className: 'modal-overlay',
8198
- onClick: function onClick() {
8199
- dispatch(setPendingTxPopup(false));
8200
- }
8201
- }), React__default.createElement("div", {
8202
- className: 'modal-content-container'
8203
- }, React__default.createElement("div", {
8204
- className: 'kima-card-header'
8205
- }, React__default.createElement("div", {
8206
- className: 'topbar'
8207
- }, React__default.createElement("div", {
8208
- className: 'title'
8209
- }, React__default.createElement("h3", null, "Bitcoin Transaction List")), React__default.createElement("div", {
8210
- className: 'control-buttons'
8211
- }, React__default.createElement("button", {
8212
- className: 'icon-button',
8213
- onClick: function onClick() {
8214
- return dispatch(setPendingTxPopup(false));
8215
- }
8216
- }, React__default.createElement(Cross, {
8217
- fill: theme.colorMode === 'light' ? 'black' : 'white'
8218
- }))))), React__default.createElement("div", {
8219
- className: 'modal-content'
8220
- }, React__default.createElement("div", {
8221
- className: 'scroll-area custom-scrollbar'
8222
- }, React__default.createElement("div", {
8223
- className: 'header-container'
8224
- }, React__default.createElement("span", null, "Amount"), React__default.createElement("span", null, "Expire Time"), React__default.createElement("span", null, "Status"), React__default.createElement("span", null, "Hash"), React__default.createElement("span", null, "Action")), React__default.createElement("div", {
8225
- className: 'tx-container'
8226
- }, txData.map(function (tx, index) {
8227
- var date = new Date(+tx.expireTime * 1000);
8228
- var year = date.getFullYear();
8229
- var month = date.getMonth() + 1;
8230
- var day = date.getDate();
8231
- var hours = date.getHours();
8232
- var minutes = date.getMinutes();
8233
- var seconds = date.getSeconds();
8234
- var formattedDate = year + "-" + month.toString().padStart(2, '0') + "-" + day.toString().padStart(2, '0') + " " + hours.toString().padStart(2, '0') + ":" + minutes.toString().padStart(2, '0') + ":" + seconds.toString().padStart(2, '0');
8235
- return React__default.createElement("div", {
8236
- className: 'tx-item',
8237
- key: index
8238
- }, React__default.createElement("div", {
8239
- className: 'label'
8240
- }, React__default.createElement("div", {
8241
- className: 'icon-wrapper'
8242
- }, (+tx.amount).toFixed(8), React__default.createElement(BTC, null))), React__default.createElement("span", {
8243
- className: 'label'
8244
- }, "" + formattedDate), React__default.createElement("span", {
8245
- className: 'label'
8246
- }, tx.status), React__default.createElement("div", {
8247
- className: 'label'
8248
- }, React__default.createElement(ExternalLink, {
8249
- to: "https://" + CHAIN_NAMES_TO_EXPLORER[exports.SupportNetworks.BTC] + "/tx/" + tx.hash
8250
- }, getShortenedAddress(tx.hash))), React__default.createElement("div", {
8251
- className: "action-button-container " + (tx.status === 'Pending' || tx.status === 'Failed' ? '' : 'disabled')
8252
- }, React__default.createElement("div", {
8253
- className: 'action-button'
8254
- }, "Reclaim"), React__default.createElement("div", {
8255
- className: 'action-button',
8256
- onClick: function onClick() {
8257
- handleHtlcContinue(tx.expireTime, tx.hash, tx.amount);
8258
- dispatch(setPendingTxPopup(false));
8259
- }
8260
- }, "Continue")));
8261
- }))))));
8262
- };
8263
-
8264
8182
  var TransferWidget = function TransferWidget(_ref) {
8265
8183
  var _theme$backgroundColo;
8266
8184
  var theme = _ref.theme,
@@ -8332,7 +8250,6 @@ var TransferWidget = function TransferWidget(_ref) {
8332
8250
  var _useIsWalletReady = useIsWalletReady(),
8333
8251
  isReady = _useIsWalletReady.isReady,
8334
8252
  walletAddress = _useIsWalletReady.walletAddress;
8335
- var pendingTxData = reactRedux.useSelector(selectPendingTxData);
8336
8253
  var pendingTxs = reactRedux.useSelector(selectPendingTxs);
8337
8254
  var _useAllowance = useAllowance({
8338
8255
  setApproving: setApproving
@@ -8503,19 +8420,6 @@ var TransferWidget = function TransferWidget(_ref) {
8503
8420
  return Promise.reject(e);
8504
8421
  }
8505
8422
  };
8506
- var handleHtlcContinue = function handleHtlcContinue(expireTime, hash, amount) {
8507
- try {
8508
- setBTCTimestamp(expireTime);
8509
- setBTCSigning(false);
8510
- setBTCSigned(true);
8511
- setBTCHash(hash);
8512
- dispatch(setFeeDeduct(true));
8513
- dispatch(setAmount(amount));
8514
- return Promise.resolve();
8515
- } catch (e) {
8516
- return Promise.reject(e);
8517
- }
8518
- };
8519
8423
  var handleSubmit = function handleSubmit() {
8520
8424
  try {
8521
8425
  var _temp8 = function _temp8(_result) {
@@ -8803,62 +8707,54 @@ var TransferWidget = function TransferWidget(_ref) {
8803
8707
  React.useEffect(function () {
8804
8708
  dispatch(setTheme(theme));
8805
8709
  }, [theme]);
8806
- var updatePendingTxs = React.useCallback(function () {
8807
- try {
8808
- var _temp9 = _catch(function () {
8809
- return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima-blockchain/transaction/get_htlc_transaction/" + walletAddress)).then(function (result) {
8810
- var data = result === null || result === void 0 ? void 0 : result.htlcLockingTransaction;
8811
- var txData = [];
8812
- if (data.length > 0) {
8813
- for (var _iterator5 = _createForOfIteratorHelperLoose(data), _step5; !(_step5 = _iterator5()).done;) {
8814
- var tx = _step5.value;
8815
- var status = '';
8816
- if (tx.status !== 'Completed') {
8817
- status = 'Confirming';
8818
- } else if (tx.pull_status === 'htlc_pull_available') {
8819
- status = 'Pending';
8820
- } else if (tx.pull_status === 'htlc_pull_in_progress') {
8821
- status = 'In Progress';
8822
- } else if (tx.pull_status === 'htlc_pull_succeed') {
8823
- status = 'Completed';
8824
- } else if (tx.pull_status === 'htlc_pull_failed') {
8825
- status = 'Failed';
8710
+ React.useEffect(function () {
8711
+ if (!nodeProviderQuery || !walletAddress || sourceChain !== exports.SupportNetworks.BTC) return;
8712
+ var updatePendingTxData = function updatePendingTxData() {
8713
+ try {
8714
+ var _temp9 = _catch(function () {
8715
+ return Promise.resolve(fetchWrapper.get(nodeProviderQuery + "/kima-finance/kima-blockchain/transaction/get_htlc_transaction/" + walletAddress)).then(function (result) {
8716
+ var data = result === null || result === void 0 ? void 0 : result.htlcLockingTransaction;
8717
+ var txData = [];
8718
+ if (data.length > 0) {
8719
+ for (var _iterator5 = _createForOfIteratorHelperLoose(data), _step5; !(_step5 = _iterator5()).done;) {
8720
+ var tx = _step5.value;
8721
+ var status = '';
8722
+ if (tx.status !== 'Completed') {
8723
+ status = 'Confirming';
8724
+ } else if (tx.pull_status === 'htlc_pull_available') {
8725
+ status = 'Pending';
8726
+ } else if (tx.pull_status === 'htlc_pull_in_progress') {
8727
+ status = 'In Progress';
8728
+ } else if (tx.pull_status === 'htlc_pull_succeed') {
8729
+ status = 'Completed';
8730
+ } else if (tx.pull_status === 'htlc_pull_failed') {
8731
+ status = 'Failed';
8732
+ }
8733
+ txData.push({
8734
+ hash: tx.txHash,
8735
+ amount: tx.amount,
8736
+ expireTime: tx.htlcTimestamp,
8737
+ status: status
8738
+ });
8826
8739
  }
8827
- txData.push({
8828
- hash: tx.txHash,
8829
- amount: tx.amount,
8830
- expireTime: tx.htlcTimestamp,
8831
- status: status
8832
- });
8740
+ dispatch(setPendingTxData(txData));
8741
+ dispatch(setPendingTxs(txData.filter(function (tx) {
8742
+ return tx.status === 'Pending' || tx.status === 'Confirming';
8743
+ }).length));
8744
+ console.log(txData.filter(function (tx) {
8745
+ return tx.status === 'Pending' || tx.status === 'Confirming';
8746
+ }).length, txData);
8833
8747
  }
8834
- dispatch(setPendingTxData([].concat(txData)));
8835
- dispatch(setPendingTxs(txData.filter(function (tx) {
8836
- return tx.status === 'Pending' || tx.status === 'Confirming';
8837
- }).length));
8838
- console.log(txData.filter(function (tx) {
8839
- return tx.status === 'Pending' || tx.status === 'Confirming';
8840
- }).length, txData);
8841
- }
8748
+ });
8749
+ }, function (e) {
8750
+ console.log(e);
8842
8751
  });
8843
- }, function (e) {
8844
- console.log(e);
8845
- });
8846
- return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(function () {}) : void 0);
8847
- } catch (e) {
8848
- return Promise.reject(e);
8849
- }
8850
- }, [nodeProviderQuery, walletAddress]);
8851
- React.useEffect(function () {
8852
- if (!nodeProviderQuery || sourceChain !== exports.SupportNetworks.BTC || !walletAddress) return;
8853
- updatePendingTxs();
8854
- var timerId = setInterval(function () {
8855
- updatePendingTxs();
8856
- }, 10000);
8857
- console.log(timerId);
8858
- return function () {
8859
- console.log('clearInterval', timerId);
8860
- clearInterval(timerId);
8752
+ return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(function () {}) : void 0);
8753
+ } catch (e) {
8754
+ return Promise.reject(e);
8755
+ }
8861
8756
  };
8757
+ updatePendingTxData();
8862
8758
  }, [sourceChain, nodeProviderQuery, walletAddress]);
8863
8759
  return React__default.createElement("div", {
8864
8760
  className: "kima-card " + theme.colorMode + " font-" + theme.fontSize,
@@ -8961,9 +8857,6 @@ var TransferWidget = function TransferWidget(_ref) {
8961
8857
  background: theme.colorMode === exports.ColorModeOptions.light ? 'white' : (_theme$backgroundColo = theme.backgroundColorDark) != null ? _theme$backgroundColo : '#1b1e25'
8962
8858
  }
8963
8859
  }
8964
- }), React__default.createElement(PendingTxPopup, {
8965
- txData: pendingTxData,
8966
- handleHtlcContinue: handleHtlcContinue
8967
8860
  }), React__default.createElement(reactTooltip.Tooltip, {
8968
8861
  id: 'popup-tooltip',
8969
8862
  className: "popup-tooltip " + theme.colorMode,