coinley-pay 0.48.0 → 0.50.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.
@@ -5,7 +5,7 @@ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
5
5
  import { useState, useRef, useEffect, useCallback, useMemo } from "react";
6
6
  import { useConnect, useAccount, useSwitchChain, useSendTransaction, useWaitForTransactionReceipt, WagmiProvider, useDisconnect } from "wagmi";
7
7
  import { QueryClientProvider, QueryClient } from "@tanstack/react-query";
8
- import { s as sdkAnalytics, c as clarityAnalytics, d as dist, a as Buffer2, B as Buffer$1, g as getCurrencyInfo, p as prefetchRates, i as isSupportedCurrency, b as convertToUSD, f as formatCurrency } from "./index-eC0BU-6e.js";
8
+ import { s as sdkAnalytics, c as clarityAnalytics, d as dist, a as Buffer2, B as Buffer$1, g as getCurrencyInfo, p as prefetchRates, i as isSupportedCurrency, b as convertToUSD, f as formatCurrency } from "./index-DgL8JZEZ.js";
9
9
  import { createConfig, fallback, http, getAccount as getAccount$1, getWalletClient, simulateContract, writeContract, readContract, waitForTransactionReceipt, estimateFeesPerGas as estimateFeesPerGas$1 } from "@wagmi/core";
10
10
  import { injected, metaMask, coinbaseWallet, walletConnect } from "@wagmi/connectors";
11
11
  import { defineChain as defineChain$1, erc20Abi, http as http$1, createPublicClient, fallback as fallback$1 } from "viem";
@@ -21122,7 +21122,7 @@ const WalletSelector = ({
21122
21122
  try {
21123
21123
  setAppKitError(null);
21124
21124
  setWalletConnectAddress(solanaAccountState.address);
21125
- const { createWalletConnectAdapter } = await import("./appKitSolana-B5HXXS9C.js");
21125
+ const { createWalletConnectAdapter } = await import("./appKitSolana-Bmo8nV6E.js");
21126
21126
  const adapter = createWalletConnectAdapter(solanaAccountState.address);
21127
21127
  await solanaWallet.connectWalletConnect(adapter, solanaAccountState.address);
21128
21128
  console.log("✅ WalletConnect synced with SDK");
@@ -21227,7 +21227,7 @@ const WalletSelector = ({
21227
21227
  setAppKitLoading(true);
21228
21228
  setAppKitError(null);
21229
21229
  try {
21230
- const { initializeAppKitEVM, openAppKitModal } = await import("./appKitEVM-dIzcrIb3.js");
21230
+ const { initializeAppKitEVM, openAppKitModal } = await import("./appKitEVM-DjCR_sZH.js");
21231
21231
  await initializeAppKitEVM(wagmiConfig);
21232
21232
  await openAppKitModal();
21233
21233
  } catch (error) {
@@ -21247,7 +21247,7 @@ const WalletSelector = ({
21247
21247
  setAppKitError(null);
21248
21248
  try {
21249
21249
  console.log("📦 Loading AppKit Solana module...");
21250
- const { initializeAppKitSolana } = await import("./appKitSolana-B5HXXS9C.js");
21250
+ const { initializeAppKitSolana } = await import("./appKitSolana-Bmo8nV6E.js");
21251
21251
  console.log("✅ Module loaded, initializing...");
21252
21252
  const modal = await initializeAppKitSolana(solanaWallet);
21253
21253
  console.log("✅ AppKit Solana initialized successfully");
@@ -25178,17 +25178,21 @@ const CoinleyPaymentInternal = ({
25178
25178
  clarityAnalytics.trackTokenSelected(token == null ? void 0 : token.symbol, selectedNetwork == null ? void 0 : selectedNetwork.name, config == null ? void 0 : config.merchantName);
25179
25179
  };
25180
25180
  useEffect(() => {
25181
- if (activeTab !== PAYMENT_TABS.TRANSFER || ccSources.length) return;
25181
+ if (ccSources.length) return;
25182
25182
  let cancelled = false;
25183
25183
  paymentFlow.api.getCrossChainSources().then((s) => {
25184
- if (!cancelled) setCcSources(Array.isArray(s) ? s : []);
25184
+ if (cancelled) return;
25185
+ setCcSources(Array.isArray(s) ? s : []);
25186
+ setCcError(null);
25185
25187
  }).catch((e) => {
25186
- if (!cancelled) setCcError(e.message || "Failed to load chains");
25188
+ if (cancelled) return;
25189
+ console.warn("[CrossChainSources] Failed to load source networks:", (e == null ? void 0 : e.message) || e);
25190
+ setCcError(null);
25187
25191
  });
25188
25192
  return () => {
25189
25193
  cancelled = true;
25190
25194
  };
25191
- }, [activeTab, ccSources.length, paymentFlow.api]);
25195
+ }, [ccSources.length, paymentFlow.api]);
25192
25196
  const ccOriginTokens = useMemo(() => {
25193
25197
  const c = ccSources.find((s) => Number(s.chainId) === Number(ccOriginChainId));
25194
25198
  return c ? c.tokens : [];
@@ -25293,7 +25297,16 @@ const CoinleyPaymentInternal = ({
25293
25297
  try {
25294
25298
  const status = await paymentFlow.api.getCrossChainStatus(ccResult.id);
25295
25299
  setCcPhase(status.phase);
25296
- if (activateUnderpaymentFromCrossChainStatus(status)) {
25300
+ if (status.refundStatus === "refunded") {
25301
+ finishRecoveryLoading(() => {
25302
+ ccSucceeded.current = true;
25303
+ setRefundRequestStatus("refunded");
25304
+ setRefundRequestMessage("");
25305
+ captureRefundSuccessDetails(status, status.refundTxHash, status.refundRecipient || refundAddress.trim());
25306
+ clearUnderpaymentRecovery(status.paymentId || ccResult.id);
25307
+ setCurrentStep(PAYMENT_STEPS.SUCCESS);
25308
+ });
25309
+ } else if (activateUnderpaymentFromCrossChainStatus(status)) {
25297
25310
  if (isOffsetRecovery) {
25298
25311
  setCcManualCheckStatus("not_found");
25299
25312
  holdRecoveryLoading("offset", getOffsetWaitingStatus());
@@ -25343,13 +25356,21 @@ const CoinleyPaymentInternal = ({
25343
25356
  if (!(ccResult == null ? void 0 : ccResult.id)) return;
25344
25357
  let cancelled = false;
25345
25358
  const tick = async () => {
25359
+ if (ccSucceeded.current) return;
25346
25360
  if (ccStatusPollInFlight.current) return;
25347
25361
  ccStatusPollInFlight.current = true;
25348
25362
  try {
25349
25363
  const s = await paymentFlow.api.getCrossChainStatus(ccResult.id);
25350
25364
  if (cancelled) return;
25351
25365
  setCcPhase(s.phase);
25352
- if (activateUnderpaymentFromCrossChainStatus(s)) {
25366
+ if (s.refundStatus === "refunded") {
25367
+ ccSucceeded.current = true;
25368
+ setRefundRequestStatus("refunded");
25369
+ setRefundRequestMessage("");
25370
+ captureRefundSuccessDetails(s, s.refundTxHash, s.refundRecipient || refundAddress.trim());
25371
+ clearUnderpaymentRecovery(s.paymentId || ccResult.id);
25372
+ setCurrentStep(PAYMENT_STEPS.SUCCESS);
25373
+ } else if (activateUnderpaymentFromCrossChainStatus(s)) {
25353
25374
  setCcManualCheckStatus(null);
25354
25375
  } else if (s.phase === "bridging") {
25355
25376
  clearUnderpaymentUiState(s.paymentId || ccResult.id);
@@ -25368,7 +25389,7 @@ const CoinleyPaymentInternal = ({
25368
25389
  cancelled = true;
25369
25390
  clearInterval(t);
25370
25391
  };
25371
- }, [activateUnderpaymentFromCrossChainStatus, ccResult == null ? void 0 : ccResult.id, clearUnderpaymentUiState, onSuccess, paymentFlow.api]);
25392
+ }, [activateUnderpaymentFromCrossChainStatus, captureRefundSuccessDetails, ccResult == null ? void 0 : ccResult.id, clearUnderpaymentRecovery, clearUnderpaymentUiState, onSuccess, paymentFlow.api, refundAddress]);
25372
25393
  const handleGenerateTransferAddress = async () => {
25373
25394
  if (isConverting) {
25374
25395
  setError("Please wait for currency conversion to complete");
@@ -28025,4 +28046,4 @@ export {
28025
28046
  chainTransports as c,
28026
28047
  isFeatureEnabled as i
28027
28048
  };
28028
- //# sourceMappingURL=CoinleyPayment-DjJnJ_yp.js.map
28049
+ //# sourceMappingURL=CoinleyPayment-BGguZgUq.js.map
@@ -1,4 +1,4 @@
1
- import { i as isFeatureEnabled, F as FEATURES, c as chainTransports, W as WALLETCONNECT_PROJECT_ID } from "./CoinleyPayment-DjJnJ_yp.js";
1
+ import { i as isFeatureEnabled, F as FEATURES, c as chainTransports, W as WALLETCONNECT_PROJECT_ID } from "./CoinleyPayment-BGguZgUq.js";
2
2
  const logo = "https://coinley.io/logo.png";
3
3
  let appKitInstance = null;
4
4
  let isInitializing = false;
@@ -113,4 +113,4 @@ export {
113
113
  initializeAppKitEVM,
114
114
  openAppKitModal
115
115
  };
116
- //# sourceMappingURL=appKitEVM-dIzcrIb3.js.map
116
+ //# sourceMappingURL=appKitEVM-DjCR_sZH.js.map
@@ -1,4 +1,4 @@
1
- import { F as FEATURES, W as WALLETCONNECT_PROJECT_ID } from "./CoinleyPayment-DjJnJ_yp.js";
1
+ import { F as FEATURES, W as WALLETCONNECT_PROJECT_ID } from "./CoinleyPayment-BGguZgUq.js";
2
2
  const logo = "https://coinley.io/logo.png";
3
3
  let appKitInstance = null;
4
4
  let isInitializing = false;
@@ -243,4 +243,4 @@ export {
243
243
  disconnectWalletConnect,
244
244
  initializeAppKitSolana
245
245
  };
246
- //# sourceMappingURL=appKitSolana-B5HXXS9C.js.map
246
+ //# sourceMappingURL=appKitSolana-Bmo8nV6E.js.map