@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.
- package/CHANGELOG.md +35 -0
- package/README.md +4 -4
- package/dist/cjs/components/AccountDropdownMenu.js +34 -6
- package/dist/cjs/components/AccountDropdownMenu.js.map +2 -2
- package/dist/cjs/components/ConnectButton.js +56 -16
- package/dist/cjs/components/ConnectButton.js.map +3 -3
- package/dist/cjs/components/WalletProvider.js +91 -28
- package/dist/cjs/components/WalletProvider.js.map +3 -3
- package/dist/cjs/components/connect-modal/ConnectModal.js +16 -9
- package/dist/cjs/components/connect-modal/ConnectModal.js.map +2 -2
- package/dist/cjs/hooks/useResolveSuiNSNames.d.ts +2 -106
- package/dist/cjs/hooks/useResolveSuiNSNames.js +3 -3
- package/dist/cjs/hooks/useResolveSuiNSNames.js.map +2 -2
- package/dist/cjs/hooks/useSuiClientInfiniteQuery.d.ts +7 -8
- package/dist/cjs/hooks/useSuiClientInfiniteQuery.js +11 -7
- package/dist/cjs/hooks/useSuiClientInfiniteQuery.js.map +2 -2
- package/dist/cjs/hooks/useSuiClientMutation.d.ts +2 -2
- package/dist/cjs/hooks/useSuiClientMutation.js.map +2 -2
- package/dist/cjs/hooks/useSuiClientQuery.d.ts +4 -3
- package/dist/cjs/hooks/useSuiClientQuery.js.map +2 -2
- package/dist/cjs/hooks/wallet/useAccounts.d.ts +2 -1
- package/dist/cjs/hooks/wallet/useAccounts.js.map +2 -2
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +65 -15
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +3 -3
- package/dist/cjs/hooks/wallet/useAutoConnectionStatus.d.ts +4 -0
- package/dist/cjs/hooks/wallet/useAutoConnectionStatus.js +50 -0
- package/dist/cjs/hooks/wallet/useAutoConnectionStatus.js.map +7 -0
- package/dist/cjs/hooks/wallet/useConnectWallet.d.ts +3 -5
- package/dist/cjs/hooks/wallet/useConnectWallet.js +15 -8
- package/dist/cjs/hooks/wallet/useConnectWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useCurrentAccount.d.ts +2 -1
- package/dist/cjs/hooks/wallet/useCurrentAccount.js.map +2 -2
- package/dist/cjs/hooks/wallet/useCurrentWallet.d.ts +19 -1
- package/dist/cjs/hooks/wallet/useCurrentWallet.js +29 -1
- package/dist/cjs/hooks/wallet/useCurrentWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useDisconnectWallet.d.ts +2 -2
- package/dist/cjs/hooks/wallet/useDisconnectWallet.js +30 -2
- package/dist/cjs/hooks/wallet/useDisconnectWallet.js.map +2 -2
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +2 -2
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js +30 -2
- package/dist/cjs/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +2 -2
- package/dist/cjs/hooks/wallet/useSignPersonalMessage.d.ts +2 -2
- package/dist/cjs/hooks/wallet/useSignPersonalMessage.js +30 -2
- package/dist/cjs/hooks/wallet/useSignPersonalMessage.js.map +2 -2
- package/dist/cjs/hooks/wallet/useSignTransactionBlock.d.ts +2 -2
- package/dist/cjs/hooks/wallet/useSignTransactionBlock.js +30 -2
- package/dist/cjs/hooks/wallet/useSignTransactionBlock.js.map +2 -2
- package/dist/cjs/hooks/wallet/useSwitchAccount.d.ts +2 -2
- package/dist/cjs/hooks/wallet/useSwitchAccount.js +30 -2
- package/dist/cjs/hooks/wallet/useSwitchAccount.js.map +2 -2
- package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js +30 -2
- package/dist/cjs/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +119 -39
- package/dist/cjs/index.js.map +4 -4
- package/dist/cjs/walletStore.d.ts +10 -2
- package/dist/cjs/walletStore.js +23 -4
- package/dist/cjs/walletStore.js.map +2 -2
- package/dist/esm/components/AccountDropdownMenu.d.ts +2 -2
- package/dist/esm/components/AccountDropdownMenu.js +34 -6
- package/dist/esm/components/AccountDropdownMenu.js.map +2 -2
- package/dist/esm/components/ConnectButton.d.ts +1 -1
- package/dist/esm/components/ConnectButton.js +56 -16
- package/dist/esm/components/ConnectButton.js.map +3 -3
- package/dist/esm/components/SuiClientProvider.d.ts +1 -1
- package/dist/esm/components/WalletProvider.d.ts +1 -1
- package/dist/esm/components/WalletProvider.js +91 -28
- package/dist/esm/components/WalletProvider.js.map +3 -3
- package/dist/esm/components/connect-modal/ConnectModal.d.ts +1 -1
- package/dist/esm/components/connect-modal/ConnectModal.js +16 -9
- package/dist/esm/components/connect-modal/ConnectModal.js.map +2 -2
- package/dist/esm/components/connect-modal/InfoSection.d.ts +1 -1
- package/dist/esm/components/connect-modal/views/ConnectionStatus.d.ts +1 -1
- package/dist/esm/components/connect-modal/views/GettingStarted.d.ts +1 -1
- package/dist/esm/components/connect-modal/views/WhatIsAWallet.d.ts +1 -1
- package/dist/esm/components/connect-modal/wallet-list/WalletList.d.ts +1 -1
- package/dist/esm/components/connect-modal/wallet-list/WalletListItem.d.ts +1 -1
- package/dist/esm/components/styling/InjectedThemeStyles.d.ts +1 -1
- package/dist/esm/contexts/walletContext.d.ts +2 -2
- package/dist/esm/hooks/useResolveSuiNSNames.d.ts +2 -106
- package/dist/esm/hooks/useResolveSuiNSNames.js +3 -3
- package/dist/esm/hooks/useResolveSuiNSNames.js.map +2 -2
- package/dist/esm/hooks/useSuiClientInfiniteQuery.d.ts +7 -8
- package/dist/esm/hooks/useSuiClientInfiniteQuery.js +11 -7
- package/dist/esm/hooks/useSuiClientInfiniteQuery.js.map +2 -2
- package/dist/esm/hooks/useSuiClientMutation.d.ts +2 -2
- package/dist/esm/hooks/useSuiClientMutation.js.map +2 -2
- package/dist/esm/hooks/useSuiClientQuery.d.ts +4 -3
- package/dist/esm/hooks/useSuiClientQuery.js.map +2 -2
- package/dist/esm/hooks/wallet/useAccounts.d.ts +2 -1
- package/dist/esm/hooks/wallet/useAccounts.js.map +2 -2
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js +65 -15
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +3 -3
- package/dist/esm/hooks/wallet/useAutoConnectionStatus.d.ts +4 -0
- package/dist/esm/hooks/wallet/useAutoConnectionStatus.js +27 -0
- package/dist/esm/hooks/wallet/useAutoConnectionStatus.js.map +7 -0
- package/dist/esm/hooks/wallet/useConnectWallet.d.ts +3 -5
- package/dist/esm/hooks/wallet/useConnectWallet.js +15 -8
- package/dist/esm/hooks/wallet/useConnectWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useCurrentAccount.d.ts +2 -1
- package/dist/esm/hooks/wallet/useCurrentAccount.js.map +2 -2
- package/dist/esm/hooks/wallet/useCurrentWallet.d.ts +19 -1
- package/dist/esm/hooks/wallet/useCurrentWallet.js +29 -1
- package/dist/esm/hooks/wallet/useCurrentWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useDisconnectWallet.d.ts +2 -2
- package/dist/esm/hooks/wallet/useDisconnectWallet.js +30 -2
- package/dist/esm/hooks/wallet/useDisconnectWallet.js.map +2 -2
- package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.d.ts +2 -2
- package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js +30 -2
- package/dist/esm/hooks/wallet/useSignAndExecuteTransactionBlock.js.map +2 -2
- package/dist/esm/hooks/wallet/useSignPersonalMessage.d.ts +2 -2
- package/dist/esm/hooks/wallet/useSignPersonalMessage.js +30 -2
- package/dist/esm/hooks/wallet/useSignPersonalMessage.js.map +2 -2
- package/dist/esm/hooks/wallet/useSignTransactionBlock.d.ts +2 -2
- package/dist/esm/hooks/wallet/useSignTransactionBlock.js +30 -2
- package/dist/esm/hooks/wallet/useSignTransactionBlock.js.map +2 -2
- package/dist/esm/hooks/wallet/useSwitchAccount.d.ts +2 -2
- package/dist/esm/hooks/wallet/useSwitchAccount.js +30 -2
- package/dist/esm/hooks/wallet/useSwitchAccount.js.map +2 -2
- package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js +30 -2
- package/dist/esm/hooks/wallet/useWalletPropertiesChanged.js.map +2 -2
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +119 -39
- package/dist/esm/index.js.map +4 -4
- package/dist/esm/walletStore.d.ts +10 -2
- package/dist/esm/walletStore.js +23 -4
- package/dist/esm/walletStore.js.map +2 -2
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/src/components/ConnectButton.tsx +8 -1
- package/src/components/WalletProvider.tsx +1 -0
- package/src/components/connect-modal/ConnectModal.tsx +1 -3
- package/src/hooks/useResolveSuiNSNames.ts +7 -8
- package/src/hooks/useSuiClientInfiniteQuery.ts +43 -25
- package/src/hooks/useSuiClientMutation.ts +2 -2
- package/src/hooks/useSuiClientQuery.ts +13 -9
- package/src/hooks/wallet/useAccounts.ts +3 -1
- package/src/hooks/wallet/useAutoConnectWallet.ts +24 -7
- package/src/hooks/wallet/useAutoConnectionStatus.ts +12 -0
- package/src/hooks/wallet/useConnectWallet.ts +24 -10
- package/src/hooks/wallet/useCurrentAccount.ts +3 -1
- package/src/hooks/wallet/useCurrentWallet.ts +30 -1
- package/src/hooks/wallet/useDisconnectWallet.ts +7 -3
- package/src/hooks/wallet/useSignAndExecuteTransactionBlock.ts +7 -3
- package/src/hooks/wallet/useSignPersonalMessage.ts +7 -3
- package/src/hooks/wallet/useSignTransactionBlock.ts +7 -3
- package/src/hooks/wallet/useSwitchAccount.ts +7 -3
- package/src/hooks/wallet/useWalletPropertiesChanged.ts +1 -1
- package/src/index.ts +1 -0
- 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, ...
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
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(
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
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
|
|
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
|
-
|
|
858
|
-
|
|
859
|
-
|
|
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({
|
|
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, {
|
|
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:
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
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,
|