@mysten/dapp-kit 0.5.0 → 0.7.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.
Files changed (151) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +4 -4
  3. package/dist/cjs/components/AccountDropdownMenu.js +34 -6
  4. package/dist/cjs/components/AccountDropdownMenu.js.map +2 -2
  5. package/dist/cjs/components/ConnectButton.js +56 -16
  6. package/dist/cjs/components/ConnectButton.js.map +3 -3
  7. package/dist/cjs/components/WalletProvider.js +91 -28
  8. package/dist/cjs/components/WalletProvider.js.map +3 -3
  9. package/dist/cjs/components/connect-modal/ConnectModal.js +16 -9
  10. package/dist/cjs/components/connect-modal/ConnectModal.js.map +2 -2
  11. package/dist/cjs/hooks/useResolveSuiNSNames.d.ts +2 -106
  12. package/dist/cjs/hooks/useResolveSuiNSNames.js +3 -3
  13. package/dist/cjs/hooks/useResolveSuiNSNames.js.map +2 -2
  14. package/dist/cjs/hooks/useSuiClientInfiniteQuery.d.ts +7 -8
  15. package/dist/cjs/hooks/useSuiClientInfiniteQuery.js +11 -7
  16. package/dist/cjs/hooks/useSuiClientInfiniteQuery.js.map +2 -2
  17. package/dist/cjs/hooks/useSuiClientMutation.d.ts +2 -2
  18. package/dist/cjs/hooks/useSuiClientMutation.js.map +2 -2
  19. package/dist/cjs/hooks/useSuiClientQuery.d.ts +4 -3
  20. package/dist/cjs/hooks/useSuiClientQuery.js.map +2 -2
  21. package/dist/cjs/hooks/wallet/useAccounts.d.ts +2 -1
  22. package/dist/cjs/hooks/wallet/useAccounts.js.map +2 -2
  23. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +65 -15
  24. package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +3 -3
  25. package/dist/cjs/hooks/wallet/useAutoConnectionStatus.d.ts +4 -0
  26. package/dist/cjs/hooks/wallet/useAutoConnectionStatus.js +50 -0
  27. package/dist/cjs/hooks/wallet/useAutoConnectionStatus.js.map +7 -0
  28. package/dist/cjs/hooks/wallet/useConnectWallet.d.ts +3 -5
  29. package/dist/cjs/hooks/wallet/useConnectWallet.js +15 -8
  30. package/dist/cjs/hooks/wallet/useConnectWallet.js.map +2 -2
  31. package/dist/cjs/hooks/wallet/useCurrentAccount.d.ts +2 -1
  32. package/dist/cjs/hooks/wallet/useCurrentAccount.js.map +2 -2
  33. package/dist/cjs/hooks/wallet/useCurrentWallet.d.ts +19 -1
  34. package/dist/cjs/hooks/wallet/useCurrentWallet.js +29 -1
  35. package/dist/cjs/hooks/wallet/useCurrentWallet.js.map +2 -2
  36. package/dist/cjs/hooks/wallet/useDisconnectWallet.d.ts +2 -2
  37. package/dist/cjs/hooks/wallet/useDisconnectWallet.js +30 -2
  38. package/dist/cjs/hooks/wallet/useDisconnectWallet.js.map +2 -2
  39. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +2 -2
  40. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js +30 -2
  41. package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +2 -2
  42. package/dist/cjs/hooks/wallet/useSignPersonalMessage.d.ts +2 -2
  43. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js +30 -2
  44. package/dist/cjs/hooks/wallet/useSignPersonalMessage.js.map +2 -2
  45. package/dist/cjs/hooks/wallet/useSignTransactionBlock.d.ts +2 -2
  46. package/dist/cjs/hooks/wallet/useSignTransactionBlock.js +30 -2
  47. package/dist/cjs/hooks/wallet/useSignTransactionBlock.js.map +2 -2
  48. package/dist/cjs/hooks/wallet/useSwitchAccount.d.ts +2 -2
  49. package/dist/cjs/hooks/wallet/useSwitchAccount.js +30 -2
  50. package/dist/cjs/hooks/wallet/useSwitchAccount.js.map +2 -2
  51. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js +30 -2
  52. package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
  53. package/dist/cjs/index.d.ts +1 -0
  54. package/dist/cjs/index.js +119 -39
  55. package/dist/cjs/index.js.map +4 -4
  56. package/dist/cjs/walletStore.d.ts +10 -2
  57. package/dist/cjs/walletStore.js +23 -4
  58. package/dist/cjs/walletStore.js.map +2 -2
  59. package/dist/esm/components/AccountDropdownMenu.d.ts +2 -2
  60. package/dist/esm/components/AccountDropdownMenu.js +34 -6
  61. package/dist/esm/components/AccountDropdownMenu.js.map +2 -2
  62. package/dist/esm/components/ConnectButton.d.ts +1 -1
  63. package/dist/esm/components/ConnectButton.js +56 -16
  64. package/dist/esm/components/ConnectButton.js.map +3 -3
  65. package/dist/esm/components/SuiClientProvider.d.ts +1 -1
  66. package/dist/esm/components/WalletProvider.d.ts +1 -1
  67. package/dist/esm/components/WalletProvider.js +91 -28
  68. package/dist/esm/components/WalletProvider.js.map +3 -3
  69. package/dist/esm/components/connect-modal/ConnectModal.d.ts +1 -1
  70. package/dist/esm/components/connect-modal/ConnectModal.js +16 -9
  71. package/dist/esm/components/connect-modal/ConnectModal.js.map +2 -2
  72. package/dist/esm/components/connect-modal/InfoSection.d.ts +1 -1
  73. package/dist/esm/components/connect-modal/views/ConnectionStatus.d.ts +1 -1
  74. package/dist/esm/components/connect-modal/views/GettingStarted.d.ts +1 -1
  75. package/dist/esm/components/connect-modal/views/WhatIsAWallet.d.ts +1 -1
  76. package/dist/esm/components/connect-modal/wallet-list/WalletList.d.ts +1 -1
  77. package/dist/esm/components/connect-modal/wallet-list/WalletListItem.d.ts +1 -1
  78. package/dist/esm/components/styling/InjectedThemeStyles.d.ts +1 -1
  79. package/dist/esm/contexts/walletContext.d.ts +2 -2
  80. package/dist/esm/hooks/useResolveSuiNSNames.d.ts +2 -106
  81. package/dist/esm/hooks/useResolveSuiNSNames.js +3 -3
  82. package/dist/esm/hooks/useResolveSuiNSNames.js.map +2 -2
  83. package/dist/esm/hooks/useSuiClientInfiniteQuery.d.ts +7 -8
  84. package/dist/esm/hooks/useSuiClientInfiniteQuery.js +11 -7
  85. package/dist/esm/hooks/useSuiClientInfiniteQuery.js.map +2 -2
  86. package/dist/esm/hooks/useSuiClientMutation.d.ts +2 -2
  87. package/dist/esm/hooks/useSuiClientMutation.js.map +2 -2
  88. package/dist/esm/hooks/useSuiClientQuery.d.ts +4 -3
  89. package/dist/esm/hooks/useSuiClientQuery.js.map +2 -2
  90. package/dist/esm/hooks/wallet/useAccounts.d.ts +2 -1
  91. package/dist/esm/hooks/wallet/useAccounts.js.map +2 -2
  92. package/dist/esm/hooks/wallet/useAutoConnectWallet.js +65 -15
  93. package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +3 -3
  94. package/dist/esm/hooks/wallet/useAutoConnectionStatus.d.ts +4 -0
  95. package/dist/esm/hooks/wallet/useAutoConnectionStatus.js +27 -0
  96. package/dist/esm/hooks/wallet/useAutoConnectionStatus.js.map +7 -0
  97. package/dist/esm/hooks/wallet/useConnectWallet.d.ts +3 -5
  98. package/dist/esm/hooks/wallet/useConnectWallet.js +15 -8
  99. package/dist/esm/hooks/wallet/useConnectWallet.js.map +2 -2
  100. package/dist/esm/hooks/wallet/useCurrentAccount.d.ts +2 -1
  101. package/dist/esm/hooks/wallet/useCurrentAccount.js.map +2 -2
  102. package/dist/esm/hooks/wallet/useCurrentWallet.d.ts +19 -1
  103. package/dist/esm/hooks/wallet/useCurrentWallet.js +29 -1
  104. package/dist/esm/hooks/wallet/useCurrentWallet.js.map +2 -2
  105. package/dist/esm/hooks/wallet/useDisconnectWallet.d.ts +2 -2
  106. package/dist/esm/hooks/wallet/useDisconnectWallet.js +30 -2
  107. package/dist/esm/hooks/wallet/useDisconnectWallet.js.map +2 -2
  108. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +2 -2
  109. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js +30 -2
  110. package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +2 -2
  111. package/dist/esm/hooks/wallet/useSignPersonalMessage.d.ts +2 -2
  112. package/dist/esm/hooks/wallet/useSignPersonalMessage.js +30 -2
  113. package/dist/esm/hooks/wallet/useSignPersonalMessage.js.map +2 -2
  114. package/dist/esm/hooks/wallet/useSignTransactionBlock.d.ts +2 -2
  115. package/dist/esm/hooks/wallet/useSignTransactionBlock.js +30 -2
  116. package/dist/esm/hooks/wallet/useSignTransactionBlock.js.map +2 -2
  117. package/dist/esm/hooks/wallet/useSwitchAccount.d.ts +2 -2
  118. package/dist/esm/hooks/wallet/useSwitchAccount.js +30 -2
  119. package/dist/esm/hooks/wallet/useSwitchAccount.js.map +2 -2
  120. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js +30 -2
  121. package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
  122. package/dist/esm/index.d.ts +1 -0
  123. package/dist/esm/index.js +119 -39
  124. package/dist/esm/index.js.map +4 -4
  125. package/dist/esm/walletStore.d.ts +10 -2
  126. package/dist/esm/walletStore.js +23 -4
  127. package/dist/esm/walletStore.js.map +2 -2
  128. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  129. package/dist/tsconfig.tsbuildinfo +1 -1
  130. package/package.json +5 -5
  131. package/src/components/ConnectButton.tsx +8 -1
  132. package/src/components/WalletProvider.tsx +1 -0
  133. package/src/components/connect-modal/ConnectModal.tsx +1 -3
  134. package/src/hooks/useResolveSuiNSNames.ts +7 -8
  135. package/src/hooks/useSuiClientInfiniteQuery.ts +43 -25
  136. package/src/hooks/useSuiClientMutation.ts +2 -2
  137. package/src/hooks/useSuiClientQuery.ts +13 -9
  138. package/src/hooks/wallet/useAccounts.ts +3 -1
  139. package/src/hooks/wallet/useAutoConnectWallet.ts +24 -7
  140. package/src/hooks/wallet/useAutoConnectionStatus.ts +12 -0
  141. package/src/hooks/wallet/useConnectWallet.ts +24 -10
  142. package/src/hooks/wallet/useCurrentAccount.ts +3 -1
  143. package/src/hooks/wallet/useCurrentWallet.ts +30 -1
  144. package/src/hooks/wallet/useDisconnectWallet.ts +7 -3
  145. package/src/hooks/wallet/useSignAndExecuteTransactionBlock.ts +7 -3
  146. package/src/hooks/wallet/useSignPersonalMessage.ts +7 -3
  147. package/src/hooks/wallet/useSignTransactionBlock.ts +7 -3
  148. package/src/hooks/wallet/useSwitchAccount.ts +7 -3
  149. package/src/hooks/wallet/useWalletPropertiesChanged.ts +1 -1
  150. package/src/index.ts +1 -0
  151. package/src/walletStore.ts +30 -2
package/dist/esm/index.js CHANGED
@@ -103,16 +103,23 @@ function useConnectWallet({
103
103
  ...mutationOptions
104
104
  } = {}) {
105
105
  const setWalletConnected = useWalletStore((state) => state.setWalletConnected);
106
+ const setConnectionStatus = useWalletStore((state) => state.setConnectionStatus);
106
107
  return useMutation({
107
108
  mutationKey: walletMutationKeys.connectWallet(mutationKey),
108
- mutationFn: async ({ wallet, accountAddress, ...standardConnectInput }) => {
109
- const connectResult = await wallet.features["standard:connect"].connect(standardConnectInput);
110
- const connectedSuiAccounts = connectResult.accounts.filter(
111
- (account) => account.chains.some((chain) => chain.split(":")[0] === "sui")
112
- );
113
- const selectedAccount = getSelectedAccount(connectedSuiAccounts, accountAddress);
114
- setWalletConnected(wallet, connectedSuiAccounts, selectedAccount);
115
- return { accounts: connectedSuiAccounts };
109
+ mutationFn: async ({ wallet, accountAddress, ...connectArgs }) => {
110
+ try {
111
+ setConnectionStatus("connecting");
112
+ const connectResult = await wallet.features["standard:connect"].connect(connectArgs);
113
+ const connectedSuiAccounts = connectResult.accounts.filter(
114
+ (account) => account.chains.some((chain) => chain.split(":")[0] === "sui")
115
+ );
116
+ const selectedAccount = getSelectedAccount(connectedSuiAccounts, accountAddress);
117
+ setWalletConnected(wallet, connectedSuiAccounts, selectedAccount);
118
+ return { accounts: connectedSuiAccounts };
119
+ } catch (error) {
120
+ setConnectionStatus("disconnected");
121
+ throw error;
122
+ }
116
123
  },
117
124
  ...mutationOptions
118
125
  });
@@ -506,7 +513,7 @@ function ConnectModal({ trigger, open, defaultOpen, onOpenChange }) {
506
513
  modalContent = /* @__PURE__ */ jsx15(WhatIsAWallet, {});
507
514
  }
508
515
  return /* @__PURE__ */ jsxs7(Dialog.Root, { open: open ?? isModalOpen, onOpenChange: handleOpenChange, children: [
509
- /* @__PURE__ */ jsx15(StyleMarker, { children: /* @__PURE__ */ jsx15(Dialog.Trigger, { asChild: true, children: trigger }) }),
516
+ /* @__PURE__ */ jsx15(Dialog.Trigger, { asChild: true, children: trigger }),
510
517
  /* @__PURE__ */ jsx15(Dialog.Portal, { children: /* @__PURE__ */ jsx15(StyleMarker, { children: /* @__PURE__ */ jsx15(Dialog.Overlay, { className: overlay, children: /* @__PURE__ */ jsxs7(Dialog.Content, { className: content, "aria-describedby": void 0, children: [
511
518
  /* @__PURE__ */ jsxs7(
512
519
  "div",
@@ -650,20 +657,20 @@ function useSuiClientQuery(...args) {
650
657
 
651
658
  // src/hooks/useResolveSuiNSNames.ts
652
659
  function useResolveSuiNSName(address, options) {
653
- const { data, ...rest } = useSuiClientQuery(
660
+ return useSuiClientQuery(
654
661
  "resolveNameServiceNames",
655
662
  {
656
663
  address,
657
664
  limit: 1
658
665
  },
659
666
  {
667
+ ...options,
660
668
  refetchOnWindowFocus: false,
661
669
  retry: false,
662
- ...options,
670
+ select: (data) => data.data.length > 0 ? data.data[0] : null,
663
671
  enabled: !!address && options?.enabled !== false
664
672
  }
665
673
  );
666
- return { data: data?.data?.[0] ?? null, ...rest };
667
674
  }
668
675
 
669
676
  // src/hooks/wallet/useAccounts.ts
@@ -686,7 +693,35 @@ var WalletAccountNotFoundError = class extends Error {
686
693
 
687
694
  // src/hooks/wallet/useCurrentWallet.ts
688
695
  function useCurrentWallet() {
689
- return useWalletStore((state) => state.currentWallet);
696
+ const currentWallet = useWalletStore((state) => state.currentWallet);
697
+ const connectionStatus2 = useWalletStore((state) => state.connectionStatus);
698
+ switch (connectionStatus2) {
699
+ case "connecting":
700
+ return {
701
+ connectionStatus: connectionStatus2,
702
+ currentWallet: null,
703
+ isDisconnected: false,
704
+ isConnecting: true,
705
+ isConnected: false
706
+ };
707
+ case "disconnected":
708
+ return {
709
+ connectionStatus: connectionStatus2,
710
+ currentWallet: null,
711
+ isDisconnected: true,
712
+ isConnecting: false,
713
+ isConnected: false
714
+ };
715
+ case "connected": {
716
+ return {
717
+ connectionStatus: connectionStatus2,
718
+ currentWallet,
719
+ isDisconnected: false,
720
+ isConnecting: false,
721
+ isConnected: true
722
+ };
723
+ }
724
+ }
690
725
  }
691
726
 
692
727
  // src/hooks/wallet/useDisconnectWallet.ts
@@ -694,7 +729,7 @@ function useDisconnectWallet({
694
729
  mutationKey,
695
730
  ...mutationOptions
696
731
  } = {}) {
697
- const currentWallet = useCurrentWallet();
732
+ const { currentWallet } = useCurrentWallet();
698
733
  const setWalletDisconnected = useWalletStore((state) => state.setWalletDisconnected);
699
734
  return useMutation2({
700
735
  mutationKey: walletMutationKeys.disconnectWallet(mutationKey),
@@ -719,7 +754,7 @@ function useSwitchAccount({
719
754
  mutationKey,
720
755
  ...mutationOptions
721
756
  } = {}) {
722
- const currentWallet = useCurrentWallet();
757
+ const { currentWallet } = useCurrentWallet();
723
758
  const setAccountSwitched = useWalletStore((state) => state.setAccountSwitched);
724
759
  return useMutation3({
725
760
  mutationKey: walletMutationKeys.switchAccount(mutationKey),
@@ -835,7 +870,12 @@ function ConnectButton({
835
870
  ...buttonProps
836
871
  }) {
837
872
  const currentAccount = useCurrentAccount();
838
- return currentAccount ? /* @__PURE__ */ jsx20(AccountDropdownMenu, { currentAccount }) : /* @__PURE__ */ jsx20(ConnectModal, { trigger: /* @__PURE__ */ jsx20(Button, { ...buttonProps, children: connectText }) });
873
+ return currentAccount ? /* @__PURE__ */ jsx20(AccountDropdownMenu, { currentAccount }) : /* @__PURE__ */ jsx20(
874
+ ConnectModal,
875
+ {
876
+ trigger: /* @__PURE__ */ jsx20(StyleMarker, { children: /* @__PURE__ */ jsx20(Button, { ...buttonProps, children: connectText }) })
877
+ }
878
+ );
839
879
  }
840
880
 
841
881
  // src/components/WalletProvider.tsx
@@ -845,25 +885,35 @@ import { useRef } from "react";
845
885
  import { useEffect } from "react";
846
886
  function useAutoConnectWallet(autoConnectEnabled) {
847
887
  const { mutate: connectWallet } = useConnectWallet();
848
- const wallets = useWallets();
888
+ const setAutoConnectionStatus = useWalletStore((state) => state.setAutoConnectionStatus);
849
889
  const lastConnectedWalletName = useWalletStore((state) => state.lastConnectedWalletName);
850
890
  const lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);
891
+ const wallets = useWallets();
892
+ const { isDisconnected } = useCurrentWallet();
851
893
  useEffect(() => {
852
- if (!autoConnectEnabled || !lastConnectedWalletName)
894
+ if (!autoConnectEnabled || !lastConnectedWalletName || !lastConnectedAccountAddress || !isDisconnected) {
853
895
  return;
896
+ }
854
897
  const wallet = wallets.find((wallet2) => wallet2.name === lastConnectedWalletName);
855
898
  if (wallet) {
856
- connectWallet({
857
- wallet,
858
- accountAddress: lastConnectedAccountAddress || void 0,
859
- silent: true
860
- });
899
+ connectWallet(
900
+ {
901
+ wallet,
902
+ accountAddress: lastConnectedAccountAddress,
903
+ silent: true
904
+ },
905
+ {
906
+ onSettled: () => setAutoConnectionStatus("settled")
907
+ }
908
+ );
861
909
  }
862
910
  }, [
863
911
  autoConnectEnabled,
864
912
  connectWallet,
913
+ isDisconnected,
865
914
  lastConnectedAccountAddress,
866
915
  lastConnectedWalletName,
916
+ setAutoConnectionStatus,
867
917
  wallets
868
918
  ]);
869
919
  }
@@ -987,7 +1037,7 @@ function registerUnsafeBurnerWallet(suiClient) {
987
1037
  // src/hooks/wallet/useWalletPropertiesChanged.ts
988
1038
  import { useEffect as useEffect3 } from "react";
989
1039
  function useWalletPropertiesChanged() {
990
- const currentWallet = useCurrentWallet();
1040
+ const { currentWallet } = useCurrentWallet();
991
1041
  const updateWalletAccounts = useWalletStore((state) => state.updateWalletAccounts);
992
1042
  useEffect3(() => {
993
1043
  const unsubscribeFromEvents = currentWallet?.features["standard:events"].on(
@@ -1106,7 +1156,12 @@ var lightTheme = {
1106
1156
  // src/walletStore.ts
1107
1157
  import { createStore } from "zustand";
1108
1158
  import { createJSONStorage, persist } from "zustand/middleware";
1109
- function createWalletStore({ wallets, storage, storageKey }) {
1159
+ function createWalletStore({
1160
+ wallets,
1161
+ storage,
1162
+ storageKey,
1163
+ autoConnect
1164
+ }) {
1110
1165
  return createStore()(
1111
1166
  persist(
1112
1167
  (set, get) => ({
@@ -1117,13 +1172,25 @@ function createWalletStore({ wallets, storage, storageKey }) {
1117
1172
  lastConnectedAccountAddress: null,
1118
1173
  lastConnectedWalletName: null,
1119
1174
  connectionStatus: "disconnected",
1175
+ autoConnectionStatus: autoConnect ? "idle" : "disabled",
1176
+ setConnectionStatus(connectionStatus2) {
1177
+ set(() => ({
1178
+ connectionStatus: connectionStatus2
1179
+ }));
1180
+ },
1181
+ setAutoConnectionStatus(autoConnectionStatus) {
1182
+ set(() => ({
1183
+ autoConnectionStatus
1184
+ }));
1185
+ },
1120
1186
  setWalletConnected(wallet, connectedAccounts, selectedAccount) {
1121
1187
  set(() => ({
1122
1188
  accounts: connectedAccounts,
1123
1189
  currentWallet: wallet,
1124
1190
  currentAccount: selectedAccount,
1125
1191
  lastConnectedWalletName: wallet.name,
1126
- lastConnectedAccountAddress: selectedAccount?.address
1192
+ lastConnectedAccountAddress: selectedAccount?.address,
1193
+ connectionStatus: "connected"
1127
1194
  }));
1128
1195
  },
1129
1196
  setWalletDisconnected() {
@@ -1132,7 +1199,8 @@ function createWalletStore({ wallets, storage, storageKey }) {
1132
1199
  currentWallet: null,
1133
1200
  currentAccount: null,
1134
1201
  lastConnectedWalletName: null,
1135
- lastConnectedAccountAddress: null
1202
+ lastConnectedAccountAddress: null,
1203
+ connectionStatus: "disconnected"
1136
1204
  }));
1137
1205
  },
1138
1206
  setAccountSwitched(selectedAccount) {
@@ -1152,7 +1220,8 @@ function createWalletStore({ wallets, storage, storageKey }) {
1152
1220
  currentWallet: null,
1153
1221
  currentAccount: null,
1154
1222
  lastConnectedWalletName: null,
1155
- lastConnectedAccountAddress: null
1223
+ lastConnectedAccountAddress: null,
1224
+ connectionStatus: "disconnected"
1156
1225
  }));
1157
1226
  } else {
1158
1227
  set(() => ({ wallets: updatedWallets }));
@@ -1293,7 +1362,8 @@ function WalletProvider({
1293
1362
  createWalletStore({
1294
1363
  wallets: getRegisteredWallets(preferredWallets, requiredFeatures),
1295
1364
  storageKey,
1296
- storage
1365
+ storage,
1366
+ autoConnect
1297
1367
  })
1298
1368
  );
1299
1369
  return /* @__PURE__ */ jsx22(WalletContext.Provider, { value: storeRef.current, children: /* @__PURE__ */ jsxs9(
@@ -1351,18 +1421,22 @@ function createNetworkConfig(networkConfig) {
1351
1421
 
1352
1422
  // src/hooks/useSuiClientInfiniteQuery.ts
1353
1423
  import { useInfiniteQuery } from "@tanstack/react-query";
1354
- function useSuiClientInfiniteQuery(method, params, { queryKey = [], enabled = !!params, ...options } = {}) {
1424
+ function useSuiClientInfiniteQuery(method, params, {
1425
+ queryKey = [],
1426
+ enabled = !!params,
1427
+ ...options
1428
+ } = {}) {
1355
1429
  const suiContext = useSuiClientContext();
1356
1430
  return useInfiniteQuery({
1357
1431
  ...options,
1432
+ initialPageParam: null,
1358
1433
  queryKey: [suiContext.network, method, params, ...queryKey],
1359
1434
  enabled,
1360
- queryFn: async () => {
1361
- return await suiContext.client[method](params);
1362
- },
1363
- getNextPageParam: (lastPage) => {
1364
- return lastPage.nextCursor ?? null;
1365
- }
1435
+ queryFn: ({ pageParam }) => suiContext.client[method]({
1436
+ ...params ?? {},
1437
+ cursor: pageParam
1438
+ }),
1439
+ getNextPageParam: ({ nextCursor }) => nextCursor ?? null
1366
1440
  });
1367
1441
  }
1368
1442
 
@@ -1378,6 +1452,11 @@ function useSuiClientMutation(method, options = {}) {
1378
1452
  });
1379
1453
  }
1380
1454
 
1455
+ // src/hooks/wallet/useAutoConnectionStatus.ts
1456
+ function useAutoConnectionStatus() {
1457
+ return useWalletStore((state) => state.autoConnectionStatus);
1458
+ }
1459
+
1381
1460
  // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
1382
1461
  import { useMutation as useMutation5 } from "@tanstack/react-query";
1383
1462
  function useSignAndExecuteTransactionBlock({
@@ -1385,7 +1464,7 @@ function useSignAndExecuteTransactionBlock({
1385
1464
  executeFromWallet,
1386
1465
  ...mutationOptions
1387
1466
  } = {}) {
1388
- const currentWallet = useCurrentWallet();
1467
+ const { currentWallet } = useCurrentWallet();
1389
1468
  const currentAccount = useCurrentAccount();
1390
1469
  const client = useSuiClient();
1391
1470
  return useMutation5({
@@ -1443,7 +1522,7 @@ function useSignPersonalMessage({
1443
1522
  mutationKey,
1444
1523
  ...mutationOptions
1445
1524
  } = {}) {
1446
- const currentWallet = useCurrentWallet();
1525
+ const { currentWallet } = useCurrentWallet();
1447
1526
  const currentAccount = useCurrentAccount();
1448
1527
  return useMutation6({
1449
1528
  mutationKey: walletMutationKeys.signPersonalMessage(mutationKey),
@@ -1478,7 +1557,7 @@ function useSignTransactionBlock({
1478
1557
  mutationKey,
1479
1558
  ...mutationOptions
1480
1559
  } = {}) {
1481
- const currentWallet = useCurrentWallet();
1560
+ const { currentWallet } = useCurrentWallet();
1482
1561
  const currentAccount = useCurrentAccount();
1483
1562
  return useMutation7({
1484
1563
  mutationKey: walletMutationKeys.signTransactionBlock(mutationKey),
@@ -1516,6 +1595,7 @@ export {
1516
1595
  createNetworkConfig,
1517
1596
  lightTheme,
1518
1597
  useAccounts,
1598
+ useAutoConnectionStatus,
1519
1599
  useConnectWallet,
1520
1600
  useCurrentAccount,
1521
1601
  useCurrentWallet,