@abstraxn/signer-react 1.0.8 → 1.0.9

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/CHANGELOG.md CHANGED
@@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.9] - 2026-02-11
9
+
10
+ ### Fixed
11
+
12
+ - **RPC URL when chain name is missing** – Building the default Ankr RPC URL now safely handles missing `viemChain.name` using optional chaining and nullish coalescing (`viemChain.name?.toLowerCase() ?? ""`) to avoid runtime errors.
13
+
14
+ - **“Connector not connected” / expired session** – When `signMessage`, `sendTransaction`, or `useWriteContract` hit a “Connector not connected” error (e.g. expired WalletConnect session), the SDK now attempts an internal reconnect via wagmi’s `useReconnect` and retries the operation once before asking the user to reconnect. This reduces unnecessary “Please reconnect your wallet” prompts when the session can be restored automatically.
15
+
16
+ - **useSwitchChain retry after user rejection** – If the user rejects the switch/add-chain dialog (e.g. cancels), the SDK no longer retries with the “add chain” flow. User rejection is detected via `UserRejectedRequestError`, error code 4001, or message containing “user rejected”/“cancelled”, and the error is rethrown immediately.
17
+
8
18
  ## [1.0.8] - 2026-02-09
9
19
 
10
20
  ### Added
@@ -50,10 +50,14 @@ export function AbstraxnProvider({ config, children }) {
50
50
  ? viemChain.rpcUrls.public.http[0]
51
51
  : viemChain.rpcUrls.public.http;
52
52
  }
53
+ if (!rpcUrl || rpcUrl.trim() === "") {
54
+ const chainLabel = viemChain.name ?? viemChain.id ?? "unknown";
55
+ throw new Error(`No RPC URL configured for chain "${chainLabel}". Please provide an RPC URL for this chain (e.g. via rpcUrls.default.http or rpcUrls.public.http).`);
56
+ }
53
57
  chains.push({
54
58
  id: viemChain.id,
55
59
  name: viemChain.name,
56
- rpcUrl: rpcUrl || `https://rpc.ankr.com/${viemChain.name.toLowerCase()}`,
60
+ rpcUrl: rpcUrl,
57
61
  nativeCurrency: viemChain.nativeCurrency,
58
62
  });
59
63
  });
@@ -1 +1 @@
1
- {"version":3,"file":"AbstraxnProvider.js","sourceRoot":"","sources":["../../../../src/components/AbstraxnProvider/AbstraxnProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstraxnProvider.js","sourceRoot":"","sources":["../../../../src/components/AbstraxnProvider/AbstraxnProvider.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { type ReactNode } from "react";
6
6
  import type { AbstraxnProviderConfig } from "../../types";
7
- import { useAccount, useConnect, useDisconnect, useSignMessage, useSendTransaction, useSwitchChain, useBalance } from "wagmi";
7
+ import { useAccount, useConnect, useDisconnect, useReconnect, useSignMessage, useSendTransaction, useSwitchChain, useBalance } from "wagmi";
8
8
  import { useAbstraxnProviderBase } from "./useAbstraxnProviderBase";
9
9
  interface AbstraxnProviderInnerProps {
10
10
  config: AbstraxnProviderConfig;
@@ -14,6 +14,7 @@ interface AbstraxnProviderInnerProps {
14
14
  wagmiAccount: ReturnType<typeof useAccount>;
15
15
  wagmiConnect: ReturnType<typeof useConnect>;
16
16
  wagmiDisconnect: ReturnType<typeof useDisconnect>;
17
+ wagmiReconnect: ReturnType<typeof useReconnect>;
17
18
  wagmiSignMessage: ReturnType<typeof useSignMessage>;
18
19
  wagmiSendTransaction: ReturnType<typeof useSendTransaction>;
19
20
  wagmiSwitchChain: ReturnType<typeof useSwitchChain>;
@@ -21,6 +21,7 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
21
21
  const wagmiAccount = wagmi?.wagmiAccount || null;
22
22
  const wagmiConnect = wagmi?.wagmiConnect || null;
23
23
  const wagmiDisconnect = wagmi?.wagmiDisconnect || null;
24
+ const wagmiReconnect = wagmi?.wagmiReconnect || null;
24
25
  const wagmiSignMessage = wagmi?.wagmiSignMessage || null;
25
26
  const wagmiSendTransaction = wagmi?.wagmiSendTransaction || null;
26
27
  const wagmiSwitchChain = wagmi?.wagmiSwitchChain || null;
@@ -1512,6 +1513,22 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
1512
1513
  const isConnectorNotConnected = err?.name === "ConnectorNotConnectedError" ||
1513
1514
  (typeof err?.message === "string" &&
1514
1515
  err.message.includes("Connector not connected"));
1516
+ if (isConnectorNotConnected && wagmiReconnect?.mutateAsync) {
1517
+ try {
1518
+ await wagmiReconnect.mutateAsync({
1519
+ connectors: wagmiAccount?.connector
1520
+ ? [wagmiAccount.connector]
1521
+ : undefined,
1522
+ });
1523
+ const signature = await wagmiSignMessage.signMessageAsync({
1524
+ message,
1525
+ });
1526
+ return signature;
1527
+ }
1528
+ catch (reconnectErr) {
1529
+ // Reconnect or retry failed, fall through to user-facing error
1530
+ }
1531
+ }
1515
1532
  const error = isConnectorNotConnected
1516
1533
  ? new Error("Your wallet session expired or was disconnected. Please reconnect your wallet.")
1517
1534
  : err instanceof Error
@@ -1534,7 +1551,13 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
1534
1551
  setError(err instanceof Error ? err : new Error("Failed to sign message"));
1535
1552
  throw err;
1536
1553
  }
1537
- }, [isExternalWalletConnected, externalWalletAddress, wagmiSignMessage]);
1554
+ }, [
1555
+ isExternalWalletConnected,
1556
+ externalWalletAddress,
1557
+ wagmiSignMessage,
1558
+ wagmiReconnect,
1559
+ wagmiAccount?.connector,
1560
+ ]);
1538
1561
  // Sign transaction
1539
1562
  const signTransaction = useCallback(async (tx) => {
1540
1563
  setError(null); // Clear any previous errors
@@ -1555,33 +1578,33 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
1555
1578
  if (isExternalWalletConnected &&
1556
1579
  externalWalletAddress &&
1557
1580
  wagmiSendTransaction) {
1581
+ // Convert TransactionRequest to wagmi format (shared for initial call and retry after reconnect)
1582
+ const wagmiTx = {
1583
+ to: tx.to,
1584
+ };
1585
+ if (tx.value) {
1586
+ wagmiTx.value =
1587
+ typeof tx.value === "string"
1588
+ ? parseEther(tx.value)
1589
+ : BigInt(tx.value);
1590
+ }
1591
+ if (tx.data) {
1592
+ wagmiTx.data = tx.data;
1593
+ }
1594
+ if (tx.gasLimit) {
1595
+ wagmiTx.gas = tx.gasLimit;
1596
+ }
1597
+ if (tx.gasPrice) {
1598
+ wagmiTx.gasPrice = tx.gasPrice;
1599
+ }
1600
+ if (tx.maxFeePerGas) {
1601
+ wagmiTx.maxFeePerGas = tx.maxFeePerGas;
1602
+ }
1603
+ if (tx.maxPriorityFeePerGas) {
1604
+ wagmiTx.maxPriorityFeePerGas = tx.maxPriorityFeePerGas;
1605
+ }
1558
1606
  try {
1559
1607
  setLoading(true);
1560
- // Convert TransactionRequest to wagmi format
1561
- const wagmiTx = {
1562
- to: tx.to,
1563
- };
1564
- if (tx.value) {
1565
- wagmiTx.value =
1566
- typeof tx.value === "string"
1567
- ? parseEther(tx.value)
1568
- : BigInt(tx.value);
1569
- }
1570
- if (tx.data) {
1571
- wagmiTx.data = tx.data;
1572
- }
1573
- if (tx.gasLimit) {
1574
- wagmiTx.gas = tx.gasLimit;
1575
- }
1576
- if (tx.gasPrice) {
1577
- wagmiTx.gasPrice = tx.gasPrice;
1578
- }
1579
- if (tx.maxFeePerGas) {
1580
- wagmiTx.maxFeePerGas = tx.maxFeePerGas;
1581
- }
1582
- if (tx.maxPriorityFeePerGas) {
1583
- wagmiTx.maxPriorityFeePerGas = tx.maxPriorityFeePerGas;
1584
- }
1585
1608
  const hash = await wagmiSendTransaction.sendTransactionAsync(wagmiTx);
1586
1609
  return {
1587
1610
  hash: hash,
@@ -1591,6 +1614,20 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
1591
1614
  const isConnectorNotConnected = err?.name === "ConnectorNotConnectedError" ||
1592
1615
  (typeof err?.message === "string" &&
1593
1616
  err.message.includes("Connector not connected"));
1617
+ if (isConnectorNotConnected && wagmiReconnect?.mutateAsync) {
1618
+ try {
1619
+ await wagmiReconnect.mutateAsync({
1620
+ connectors: wagmiAccount?.connector
1621
+ ? [wagmiAccount.connector]
1622
+ : undefined,
1623
+ });
1624
+ const hash = await wagmiSendTransaction.sendTransactionAsync(wagmiTx);
1625
+ return { hash };
1626
+ }
1627
+ catch (reconnectErr) {
1628
+ // Reconnect or retry failed, fall through to user-facing error
1629
+ }
1630
+ }
1594
1631
  const error = isConnectorNotConnected
1595
1632
  ? new Error("Your wallet session expired or was disconnected. Please reconnect your wallet.")
1596
1633
  : err instanceof Error
@@ -1613,7 +1650,13 @@ export function AbstraxnProviderInner({ config, children, base, wagmi, }) {
1613
1650
  setError(err instanceof Error ? err : new Error("Failed to send transaction"));
1614
1651
  throw err;
1615
1652
  }
1616
- }, [isExternalWalletConnected, externalWalletAddress, wagmiSendTransaction]);
1653
+ }, [
1654
+ isExternalWalletConnected,
1655
+ externalWalletAddress,
1656
+ wagmiSendTransaction,
1657
+ wagmiReconnect,
1658
+ wagmiAccount?.connector,
1659
+ ]);
1617
1660
  // Sign transaction via API (returns signed transaction)
1618
1661
  const signTransactionViaAPI = useCallback(async (unsignedTransaction, fromAddress) => {
1619
1662
  if (!walletRef.current)