@mysten/dapp-kit 0.10.0 → 0.10.2

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/cjs/index.js CHANGED
@@ -84,6 +84,7 @@ __export(src_exports, {
84
84
  useSuiClientContext: () => useSuiClientContext,
85
85
  useSuiClientInfiniteQuery: () => useSuiClientInfiniteQuery,
86
86
  useSuiClientMutation: () => useSuiClientMutation,
87
+ useSuiClientQueries: () => useSuiClientQueries,
87
88
  useSuiClientQuery: () => useSuiClientQuery,
88
89
  useSwitchAccount: () => useSwitchAccount,
89
90
  useWallets: () => useWallets
@@ -916,23 +917,28 @@ function ConnectButton({
916
917
  }
917
918
 
918
919
  // src/components/WalletProvider.tsx
919
- var import_react14 = require("react");
920
+ var import_react15 = require("react");
920
921
 
921
922
  // src/hooks/wallet/useAutoConnectWallet.ts
922
923
  var import_react_query5 = require("@tanstack/react-query");
924
+ var import_react11 = require("react");
923
925
  function useAutoConnectWallet() {
924
926
  const { mutateAsync: connectWallet } = useConnectWallet();
925
927
  const autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);
926
928
  const lastConnectedWalletName = useWalletStore((state) => state.lastConnectedWalletName);
927
929
  const lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);
928
930
  const wallets = useWallets();
929
- const { isDisconnected } = useCurrentWallet();
931
+ const { isConnected } = useCurrentWallet();
932
+ const [clientOnly, setClientOnly] = (0, import_react11.useState)(false);
933
+ (0, import_react11.useLayoutEffect)(() => {
934
+ setClientOnly(true);
935
+ }, []);
930
936
  const { data, isError } = (0, import_react_query5.useQuery)({
931
937
  queryKey: [
932
938
  "@mysten/dapp-kit",
933
939
  "autoconnect",
934
940
  {
935
- isDisconnected,
941
+ isConnected,
936
942
  autoConnectEnabled,
937
943
  lastConnectedWalletName,
938
944
  lastConnectedAccountAddress,
@@ -943,7 +949,7 @@ function useAutoConnectWallet() {
943
949
  if (!autoConnectEnabled) {
944
950
  return "disabled";
945
951
  }
946
- if (!lastConnectedWalletName || !lastConnectedAccountAddress || !isDisconnected) {
952
+ if (!lastConnectedWalletName || !lastConnectedAccountAddress || isConnected) {
947
953
  return "attempted";
948
954
  }
949
955
  const wallet = wallets.find((wallet2) => wallet2.name === lastConnectedWalletName);
@@ -960,6 +966,7 @@ function useAutoConnectWallet() {
960
966
  persister: void 0,
961
967
  gcTime: 0,
962
968
  staleTime: 0,
969
+ networkMode: "always",
963
970
  retry: false,
964
971
  retryOnMount: false,
965
972
  refetchInterval: false,
@@ -971,6 +978,12 @@ function useAutoConnectWallet() {
971
978
  if (!autoConnectEnabled) {
972
979
  return "disabled";
973
980
  }
981
+ if (!clientOnly) {
982
+ return "idle";
983
+ }
984
+ if (isConnected) {
985
+ return "attempted";
986
+ }
974
987
  if (!lastConnectedWalletName) {
975
988
  return "attempted";
976
989
  }
@@ -980,11 +993,11 @@ function useAutoConnectWallet() {
980
993
  // src/hooks/wallet/useUnsafeBurnerWallet.ts
981
994
  var import_ed25519 = require("@mysten/sui.js/keypairs/ed25519");
982
995
  var import_wallet_standard = require("@mysten/wallet-standard");
983
- var import_react11 = require("react");
996
+ var import_react12 = require("react");
984
997
  var WALLET_NAME = "Unsafe Burner Wallet";
985
998
  function useUnsafeBurnerWallet(enabled) {
986
999
  const suiClient = useSuiClient();
987
- (0, import_react11.useEffect)(() => {
1000
+ (0, import_react12.useEffect)(() => {
988
1001
  if (!enabled) {
989
1002
  return;
990
1003
  }
@@ -1094,11 +1107,11 @@ function registerUnsafeBurnerWallet(suiClient) {
1094
1107
  }
1095
1108
 
1096
1109
  // src/hooks/wallet/useWalletPropertiesChanged.ts
1097
- var import_react12 = require("react");
1110
+ var import_react13 = require("react");
1098
1111
  function useWalletPropertiesChanged() {
1099
1112
  const { currentWallet } = useCurrentWallet();
1100
1113
  const updateWalletAccounts = useWalletStore((state) => state.updateWalletAccounts);
1101
- (0, import_react12.useEffect)(() => {
1114
+ (0, import_react13.useEffect)(() => {
1102
1115
  const unsubscribeFromEvents = currentWallet?.features["standard:events"].on(
1103
1116
  "change",
1104
1117
  ({ accounts }) => {
@@ -1113,7 +1126,7 @@ function useWalletPropertiesChanged() {
1113
1126
 
1114
1127
  // src/hooks/wallet/useWalletsChanged.ts
1115
1128
  var import_wallet_standard3 = require("@mysten/wallet-standard");
1116
- var import_react13 = require("react");
1129
+ var import_react14 = require("react");
1117
1130
 
1118
1131
  // src/utils/walletUtils.ts
1119
1132
  var import_wallet_standard2 = require("@mysten/wallet-standard");
@@ -1135,7 +1148,7 @@ function getRegisteredWallets(preferredWallets, requiredFeatures) {
1135
1148
  function useWalletsChanged(preferredWallets, requiredFeatures) {
1136
1149
  const setWalletRegistered = useWalletStore((state) => state.setWalletRegistered);
1137
1150
  const setWalletUnregistered = useWalletStore((state) => state.setWalletUnregistered);
1138
- (0, import_react13.useEffect)(() => {
1151
+ (0, import_react14.useEffect)(() => {
1139
1152
  const walletsApi = (0, import_wallet_standard3.getWallets)();
1140
1153
  const unsubscribeFromRegister = walletsApi.on("register", () => {
1141
1154
  setWalletRegistered(getRegisteredWallets(preferredWallets, requiredFeatures));
@@ -1285,7 +1298,7 @@ function createWalletStore({
1285
1298
  const currentAccount = get().currentAccount;
1286
1299
  set(() => ({
1287
1300
  accounts,
1288
- currentAccount: currentAccount ? accounts.find(({ address }) => address === currentAccount.address) : accounts[0]
1301
+ currentAccount: currentAccount && accounts.find(({ address }) => address === currentAccount.address) || accounts[0]
1289
1302
  }));
1290
1303
  }
1291
1304
  }),
@@ -1412,7 +1425,7 @@ function WalletProvider({
1412
1425
  theme = lightTheme,
1413
1426
  children
1414
1427
  }) {
1415
- const storeRef = (0, import_react14.useRef)(
1428
+ const storeRef = (0, import_react15.useRef)(
1416
1429
  createWalletStore({
1417
1430
  autoConnectEnabled: autoConnect,
1418
1431
  wallets: getRegisteredWallets(preferredWallets, requiredFeatures),
@@ -1504,8 +1517,30 @@ function useSuiClientMutation(method, options = {}) {
1504
1517
  });
1505
1518
  }
1506
1519
 
1507
- // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
1520
+ // src/hooks/useSuiClientQueries.ts
1508
1521
  var import_react_query8 = require("@tanstack/react-query");
1522
+ function useSuiClientQueries({
1523
+ queries,
1524
+ combine
1525
+ }) {
1526
+ const suiContext = useSuiClientContext();
1527
+ return (0, import_react_query8.useQueries)({
1528
+ combine,
1529
+ queries: queries.map((query) => {
1530
+ const { method, params, options: { queryKey = [], ...restOptions } = {} } = query;
1531
+ return {
1532
+ ...restOptions,
1533
+ queryKey: [suiContext.network, method, params, ...queryKey],
1534
+ queryFn: async () => {
1535
+ return await suiContext.client[method](params);
1536
+ }
1537
+ };
1538
+ })
1539
+ });
1540
+ }
1541
+
1542
+ // src/hooks/wallet/useSignAndExecuteTransactionBlock.ts
1543
+ var import_react_query9 = require("@tanstack/react-query");
1509
1544
  function useSignAndExecuteTransactionBlock({
1510
1545
  mutationKey,
1511
1546
  executeFromWallet,
@@ -1514,7 +1549,7 @@ function useSignAndExecuteTransactionBlock({
1514
1549
  const { currentWallet } = useCurrentWallet();
1515
1550
  const currentAccount = useCurrentAccount();
1516
1551
  const client = useSuiClient();
1517
- return (0, import_react_query8.useMutation)({
1552
+ return (0, import_react_query9.useMutation)({
1518
1553
  mutationKey: walletMutationKeys.signAndExecuteTransactionBlock(mutationKey),
1519
1554
  mutationFn: async ({ requestType, options, ...signTransactionBlockArgs }) => {
1520
1555
  if (!currentWallet) {
@@ -1564,14 +1599,14 @@ function useSignAndExecuteTransactionBlock({
1564
1599
  }
1565
1600
 
1566
1601
  // src/hooks/wallet/useSignPersonalMessage.ts
1567
- var import_react_query9 = require("@tanstack/react-query");
1602
+ var import_react_query10 = require("@tanstack/react-query");
1568
1603
  function useSignPersonalMessage({
1569
1604
  mutationKey,
1570
1605
  ...mutationOptions
1571
1606
  } = {}) {
1572
1607
  const { currentWallet } = useCurrentWallet();
1573
1608
  const currentAccount = useCurrentAccount();
1574
- return (0, import_react_query9.useMutation)({
1609
+ return (0, import_react_query10.useMutation)({
1575
1610
  mutationKey: walletMutationKeys.signPersonalMessage(mutationKey),
1576
1611
  mutationFn: async (signPersonalMessageArgs) => {
1577
1612
  if (!currentWallet) {
@@ -1610,14 +1645,14 @@ function useSignPersonalMessage({
1610
1645
  }
1611
1646
 
1612
1647
  // src/hooks/wallet/useSignTransactionBlock.ts
1613
- var import_react_query10 = require("@tanstack/react-query");
1648
+ var import_react_query11 = require("@tanstack/react-query");
1614
1649
  function useSignTransactionBlock({
1615
1650
  mutationKey,
1616
1651
  ...mutationOptions
1617
1652
  } = {}) {
1618
1653
  const { currentWallet } = useCurrentWallet();
1619
1654
  const currentAccount = useCurrentAccount();
1620
- return (0, import_react_query10.useMutation)({
1655
+ return (0, import_react_query11.useMutation)({
1621
1656
  mutationKey: walletMutationKeys.signTransactionBlock(mutationKey),
1622
1657
  mutationFn: async (signTransactionBlockArgs) => {
1623
1658
  if (!currentWallet) {