@kimafinance/kima-transaction-widget 1.3.12 → 1.3.13

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.cjs CHANGED
@@ -4770,7 +4770,13 @@ var StepBox = ({ step, errorStep, loadingStep, data }) => {
4770
4770
  },
4771
4771
  getShortenedAddress(data?.tssPullHash || "")
4772
4772
  ), /* @__PURE__ */ import_react115.default.createElement(CopyButton_default, { text: data?.tssPullHash || "" }))
4773
- ) : null, index === 3 && data?.tssReleaseHash ? /* @__PURE__ */ import_react115.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react115.default.createElement(ChainIcon, { symbol: data.targetChain }), /* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, targetChain?.name, " TX ID:"), /* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
4773
+ ) : null, index === 3 && data?.tssRefundHash ? /* @__PURE__ */ import_react115.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react115.default.createElement(ChainIcon, { symbol: data.sourceChain }), /* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, sourceChain?.name, " TX ID:"), /* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
4774
+ ExternalLink_default,
4775
+ {
4776
+ to: `${sourceChain?.blockExplorers?.default.url}/${data?.sourceChain === "TRX" /* TRON */ ? "transaction" : "tx"}/${data?.tssRefundHash}${data?.sourceChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
4777
+ },
4778
+ getShortenedAddress(data?.tssRefundHash || "")
4779
+ ), /* @__PURE__ */ import_react115.default.createElement(CopyButton_default, { text: data?.tssRefundHash || "" }))) : null, index === 3 && data?.tssReleaseHash ? /* @__PURE__ */ import_react115.default.createElement("div", { className: `info-item ${theme.colorMode} target-chain` }, /* @__PURE__ */ import_react115.default.createElement(ChainIcon, { symbol: data.targetChain }), /* @__PURE__ */ import_react115.default.createElement("p", { className: "chain-name" }, targetChain?.name, " TX ID:"), /* @__PURE__ */ import_react115.default.createElement("p", null, /* @__PURE__ */ import_react115.default.createElement(
4774
4780
  ExternalLink_default,
4775
4781
  {
4776
4782
  to: `${targetChain?.blockExplorers?.default.url}/${data?.targetChain === "TRX" /* TRON */ ? "transaction" : "tx"}/${data?.tssReleaseHash}${data?.targetChain === "SOL" /* SOLANA */ && networkOption === "testnet" /* testnet */ ? "?cluster=devnet" : ""}`
@@ -4856,6 +4862,7 @@ var emptyStatus = {
4856
4862
  targetChain: "",
4857
4863
  tssPullHash: "",
4858
4864
  tssReleaseHash: "",
4865
+ tssRefundHash: "",
4859
4866
  sourceSymbol: "",
4860
4867
  targetSymbol: "",
4861
4868
  amount: "",
@@ -4864,7 +4871,7 @@ var emptyStatus = {
4864
4871
  };
4865
4872
  var selectStatus = (response) => {
4866
4873
  if ("liquidity_transaction_data" in response.data) {
4867
- const data2 = response.data.liquidity_transaction_data[0];
4874
+ const data2 = response.data.liquidity_transaction_data;
4868
4875
  if (!data2) return emptyStatus;
4869
4876
  return {
4870
4877
  status: data2.txstatus,
@@ -4872,6 +4879,7 @@ var selectStatus = (response) => {
4872
4879
  targetChain: data2.chain,
4873
4880
  tssPullHash: data2.releasehash,
4874
4881
  tssReleaseHash: data2.releasehash,
4882
+ tssRefundHash: data2.refundhash,
4875
4883
  failReason: data2.failreason,
4876
4884
  amount: data2.amount,
4877
4885
  sourceSymbol: data2.symbol,
@@ -4879,7 +4887,7 @@ var selectStatus = (response) => {
4879
4887
  kimaTxHash: data2.kimahash
4880
4888
  };
4881
4889
  }
4882
- const data = response.data.transaction_data[0];
4890
+ const data = response.data.transaction_data;
4883
4891
  if (!data) return emptyStatus;
4884
4892
  return {
4885
4893
  status: data.txstatus,
@@ -4887,6 +4895,7 @@ var selectStatus = (response) => {
4887
4895
  targetChain: data.targetchain,
4888
4896
  tssPullHash: data.pullhash,
4889
4897
  tssReleaseHash: data.releasehash,
4898
+ tssRefundHash: data.refundhash,
4890
4899
  failReason: data.failreason,
4891
4900
  amount: data.amount,
4892
4901
  sourceSymbol: data.originsymbol,
@@ -4900,7 +4909,9 @@ var isFinished = (data) => {
4900
4909
  "Completed" /* COMPLETED */,
4901
4910
  "FailedToPull" /* FAILEDTOPULL */,
4902
4911
  "FailedToPay" /* FAILEDTOPAY */,
4903
- "UnAvailable" /* UNAVAILABLE */
4912
+ "UnAvailable" /* UNAVAILABLE */,
4913
+ "RefundFailed" /* REFUNDFAILED */,
4914
+ "RefundCompleted" /* REFUNDCOMPLETED */
4904
4915
  ].includes(data.status);
4905
4916
  };
4906
4917
  var getTxData = async ({
@@ -4933,6 +4944,7 @@ var POLLING_INTERVAL_MS = 1e3 * 10;
4933
4944
  var useGetTxData = (txId, dAppOption, backendUrl) => {
4934
4945
  const refPollForUpdates = (0, import_react118.useRef)(false);
4935
4946
  const isLP = dAppOption === "LPAdd" /* LPAdd */ || dAppOption === "LPDrain" /* LPDrain */;
4947
+ const validTxId = typeof txId === "number" ? txId > 0 : txId.toString().length > 0;
4936
4948
  const result = (0, import_react_query12.useQuery)({
4937
4949
  queryKey: ["txData", txId, dAppOption],
4938
4950
  queryFn: async () => await getTxData({ txId, isLP, backendUrl, refPollForUpdates }),
@@ -4940,7 +4952,7 @@ var useGetTxData = (txId, dAppOption, backendUrl) => {
4940
4952
  refetchInterval: refPollForUpdates.current ? POLLING_INTERVAL_MS : false,
4941
4953
  // 10 sec
4942
4954
  staleTime: POLLING_INTERVAL_MS,
4943
- enabled: (Number(txId) > 0 || txId.toString().length > 0) && !!dAppOption && !!backendUrl
4955
+ enabled: validTxId && !!dAppOption && !!backendUrl
4944
4956
  });
4945
4957
  return result;
4946
4958
  };
@@ -5086,12 +5098,37 @@ var TransactionWidget = ({ theme }) => {
5086
5098
  console.log(data.failReason);
5087
5099
  import_react_hot_toast3.toast.error("Unavailable", { icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null) });
5088
5100
  setErrorMessage("Unavailable");
5089
- } else if (status === "KeySigned" /* KEYSIGNED */) {
5101
+ } else if (status === "Paid" /* PAID */) {
5090
5102
  setStep(3);
5091
5103
  setLoadingStep(3);
5092
- } else if (status === "Paid" /* PAID */) {
5104
+ } else if (status === "RefundStart" /* REFUNDSTART */) {
5093
5105
  setStep(3);
5094
5106
  setLoadingStep(3);
5107
+ import_react_hot_toast3.toast.error(
5108
+ "Failed to release tokens to target! Starting refund process.",
5109
+ {
5110
+ icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null)
5111
+ }
5112
+ );
5113
+ setErrorMessage(
5114
+ "Failed to release tokens to target! Starting refund process."
5115
+ );
5116
+ } else if (status === "RefundFailed" /* REFUNDFAILED */) {
5117
+ setStep(3);
5118
+ setErrorStep(3);
5119
+ setLoadingStep(-1);
5120
+ import_react_hot_toast3.toast.error("Failed to refund tokens to source!", {
5121
+ icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null)
5122
+ });
5123
+ setErrorMessage("Failed to refund tokens to source!");
5124
+ } else if (status === "RefundCompleted" /* REFUNDCOMPLETED */) {
5125
+ setStep(4);
5126
+ setErrorStep(3);
5127
+ setLoadingStep(-1);
5128
+ import_react_hot_toast3.toast.success("Refund completed!", {
5129
+ icon: /* @__PURE__ */ import_react121.default.createElement(Error_default, null)
5130
+ });
5131
+ setErrorMessage("Refund completed!");
5095
5132
  } else if (status === "FailedToPay" /* FAILEDTOPAY */) {
5096
5133
  setStep(3);
5097
5134
  setErrorStep(3);