@mysten/dapp-kit 0.9.1 → 0.10.1
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 +12 -0
- package/dist/cjs/components/WalletProvider.js +25 -16
- package/dist/cjs/components/WalletProvider.js.map +3 -3
- package/dist/cjs/hooks/useSuiClientQueries.d.ts +27 -0
- package/dist/cjs/hooks/useSuiClientQueries.js +71 -0
- package/dist/cjs/hooks/useSuiClientQueries.js.map +7 -0
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js +12 -3
- package/dist/cjs/hooks/wallet/useAutoConnectWallet.js.map +3 -3
- package/dist/cjs/index.js +21 -12
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/walletStore.js +1 -1
- package/dist/cjs/walletStore.js.map +2 -2
- package/dist/esm/components/WalletProvider.js +14 -5
- package/dist/esm/components/WalletProvider.js.map +3 -3
- package/dist/esm/hooks/useSuiClientQueries.d.ts +27 -0
- package/dist/esm/hooks/useSuiClientQueries.js +50 -0
- package/dist/esm/hooks/useSuiClientQueries.js.map +7 -0
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js +12 -3
- package/dist/esm/hooks/wallet/useAutoConnectWallet.js.map +2 -2
- package/dist/esm/index.js +13 -4
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/walletStore.js +1 -1
- package/dist/esm/walletStore.js.map +2 -2
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/src/hooks/useSuiClientQueries.ts +66 -0
- package/src/hooks/wallet/useAutoConnectWallet.ts +15 -3
- package/src/walletStore.ts +4 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/hooks/wallet/useAutoConnectWallet.ts", "../../../../src/hooks/wallet/useConnectWallet.ts", "../../../../src/constants/walletMutationKeys.ts", "../../../../src/hooks/wallet/useWalletStore.ts", "../../../../src/contexts/walletContext.ts", "../../../../src/hooks/wallet/useCurrentWallet.ts", "../../../../src/hooks/wallet/useWallets.ts"],
|
|
4
|
-
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useQuery } from '@tanstack/react-query';\n\nimport { useConnectWallet } from './useConnectWallet.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\nimport { useWallets } from './useWallets.js';\nimport { useWalletStore } from './useWalletStore.js';\n\nexport function useAutoConnectWallet(): 'disabled' | 'idle' | 'attempted' {\n\tconst { mutateAsync: connectWallet } = useConnectWallet();\n\tconst autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);\n\tconst lastConnectedWalletName = useWalletStore((state) => state.lastConnectedWalletName);\n\tconst lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);\n\tconst wallets = useWallets();\n\tconst {
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,IAAAA,sBAAyB;;;
|
|
6
|
-
"names": ["import_react_query", "import_react", "wallet"]
|
|
4
|
+
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useQuery } from '@tanstack/react-query';\nimport { useLayoutEffect, useState } from 'react';\n\nimport { useConnectWallet } from './useConnectWallet.js';\nimport { useCurrentWallet } from './useCurrentWallet.js';\nimport { useWallets } from './useWallets.js';\nimport { useWalletStore } from './useWalletStore.js';\n\nexport function useAutoConnectWallet(): 'disabled' | 'idle' | 'attempted' {\n\tconst { mutateAsync: connectWallet } = useConnectWallet();\n\tconst autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);\n\tconst lastConnectedWalletName = useWalletStore((state) => state.lastConnectedWalletName);\n\tconst lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);\n\tconst wallets = useWallets();\n\tconst { isConnected } = useCurrentWallet();\n\n\tconst [clientOnly, setClientOnly] = useState(false);\n\tuseLayoutEffect(() => {\n\t\tsetClientOnly(true);\n\t}, []);\n\n\tconst { data, isError } = useQuery({\n\t\tqueryKey: [\n\t\t\t'@mysten/dapp-kit',\n\t\t\t'autoconnect',\n\t\t\t{\n\t\t\t\tisConnected,\n\t\t\t\tautoConnectEnabled,\n\t\t\t\tlastConnectedWalletName,\n\t\t\t\tlastConnectedAccountAddress,\n\t\t\t\twalletCount: wallets.length,\n\t\t\t},\n\t\t],\n\t\tqueryFn: async () => {\n\t\t\tif (!autoConnectEnabled) {\n\t\t\t\treturn 'disabled';\n\t\t\t}\n\n\t\t\tif (!lastConnectedWalletName || !lastConnectedAccountAddress || isConnected) {\n\t\t\t\treturn 'attempted';\n\t\t\t}\n\n\t\t\tconst wallet = wallets.find((wallet) => wallet.name === lastConnectedWalletName);\n\t\t\tif (wallet) {\n\t\t\t\tawait connectWallet({\n\t\t\t\t\twallet,\n\t\t\t\t\taccountAddress: lastConnectedAccountAddress,\n\t\t\t\t\tsilent: true,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn 'attempted';\n\t\t},\n\t\tenabled: autoConnectEnabled,\n\t\tpersister: undefined,\n\t\tgcTime: 0,\n\t\tstaleTime: 0,\n\t\tnetworkMode: 'always',\n\t\tretry: false,\n\t\tretryOnMount: false,\n\t\trefetchInterval: false,\n\t\trefetchIntervalInBackground: false,\n\t\trefetchOnMount: false,\n\t\trefetchOnReconnect: false,\n\t\trefetchOnWindowFocus: false,\n\t});\n\n\tif (!autoConnectEnabled) {\n\t\treturn 'disabled';\n\t}\n\n\t// We always initialize with \"idle\" so that in SSR environments, we guarantee that the initial render states always agree:\n\tif (!clientOnly) {\n\t\treturn 'idle';\n\t}\n\n\tif (!lastConnectedWalletName) {\n\t\treturn 'attempted';\n\t}\n\n\treturn isError ? 'attempted' : data ?? 'idle';\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type {\n\tStandardConnectInput,\n\tStandardConnectOutput,\n\tWalletAccount,\n\tWalletWithRequiredFeatures,\n} from '@mysten/wallet-standard';\nimport type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';\nimport { useMutation } from '@tanstack/react-query';\n\nimport { walletMutationKeys } from '../../constants/walletMutationKeys.js';\nimport { useWalletStore } from './useWalletStore.js';\n\ntype ConnectWalletArgs = {\n\t/** The wallet to connect to. */\n\twallet: WalletWithRequiredFeatures;\n\n\t/** An optional account address to connect to. Defaults to the first authorized account. */\n\taccountAddress?: string;\n} & StandardConnectInput;\n\ntype ConnectWalletResult = StandardConnectOutput;\n\ntype UseConnectWalletMutationOptions = Omit<\n\tUseMutationOptions<ConnectWalletResult, Error, ConnectWalletArgs, unknown>,\n\t'mutationFn'\n>;\n\n/**\n * Mutation hook for establishing a connection to a specific wallet.\n */\nexport function useConnectWallet({\n\tmutationKey,\n\t...mutationOptions\n}: UseConnectWalletMutationOptions = {}): UseMutationResult<\n\tConnectWalletResult,\n\tError,\n\tConnectWalletArgs,\n\tunknown\n> {\n\tconst setWalletConnected = useWalletStore((state) => state.setWalletConnected);\n\tconst setConnectionStatus = useWalletStore((state) => state.setConnectionStatus);\n\n\treturn useMutation({\n\t\tmutationKey: walletMutationKeys.connectWallet(mutationKey),\n\t\tmutationFn: async ({ wallet, accountAddress, ...connectArgs }) => {\n\t\t\ttry {\n\t\t\t\tsetConnectionStatus('connecting');\n\n\t\t\t\tconst connectResult = await wallet.features['standard:connect'].connect(connectArgs);\n\t\t\t\tconst connectedSuiAccounts = connectResult.accounts.filter((account) =>\n\t\t\t\t\taccount.chains.some((chain) => chain.split(':')[0] === 'sui'),\n\t\t\t\t);\n\t\t\t\tconst selectedAccount = getSelectedAccount(connectedSuiAccounts, accountAddress);\n\n\t\t\t\tsetWalletConnected(wallet, connectedSuiAccounts, selectedAccount);\n\n\t\t\t\treturn { accounts: connectedSuiAccounts };\n\t\t\t} catch (error) {\n\t\t\t\tsetConnectionStatus('disconnected');\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\nfunction getSelectedAccount(connectedAccounts: readonly WalletAccount[], accountAddress?: string) {\n\tif (connectedAccounts.length === 0) {\n\t\treturn null;\n\t}\n\n\tif (accountAddress) {\n\t\tconst selectedAccount = connectedAccounts.find((account) => account.address === accountAddress);\n\t\treturn selectedAccount ?? connectedAccounts[0];\n\t}\n\n\treturn connectedAccounts[0];\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { MutationKey } from '@tanstack/react-query';\n\nexport const walletMutationKeys = {\n\tall: { baseScope: 'wallet' },\n\tconnectWallet: formMutationKeyFn('connect-wallet'),\n\tautoconnectWallet: formMutationKeyFn('autoconnect-wallet'),\n\tdisconnectWallet: formMutationKeyFn('disconnect-wallet'),\n\tsignPersonalMessage: formMutationKeyFn('sign-personal-message'),\n\tsignTransactionBlock: formMutationKeyFn('sign-transaction-block'),\n\tsignAndExecuteTransactionBlock: formMutationKeyFn('sign-and-execute-transaction-block'),\n\tswitchAccount: formMutationKeyFn('switch-account'),\n};\n\nfunction formMutationKeyFn(baseEntity: string) {\n\treturn function mutationKeyFn(additionalKeys: MutationKey = []) {\n\t\treturn [{ ...walletMutationKeys.all, baseEntity }, ...additionalKeys];\n\t};\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useContext } from 'react';\nimport { useStore } from 'zustand';\n\nimport { WalletContext } from '../../contexts/walletContext.js';\nimport type { StoreState } from '../../walletStore.js';\n\nexport function useWalletStore<T>(selector: (state: StoreState) => T): T {\n\tconst store = useContext(WalletContext);\n\tif (!store) {\n\t\tthrow new Error(\n\t\t\t'Could not find WalletContext. Ensure that you have set up the WalletProvider.',\n\t\t);\n\t}\n\treturn useStore(store, selector);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { createContext } from 'react';\n\nimport type { WalletStore } from '../walletStore.js';\n\nexport const WalletContext = createContext<WalletStore | null>(null);\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves the wallet that is currently connected to the dApp, if one exists.\n */\nexport function useCurrentWallet() {\n\tconst currentWallet = useWalletStore((state) => state.currentWallet);\n\tconst connectionStatus = useWalletStore((state) => state.connectionStatus);\n\n\tswitch (connectionStatus) {\n\t\tcase 'connecting':\n\t\t\treturn {\n\t\t\t\tconnectionStatus,\n\t\t\t\tcurrentWallet: null,\n\t\t\t\tisDisconnected: false,\n\t\t\t\tisConnecting: true,\n\t\t\t\tisConnected: false,\n\t\t\t} as const;\n\t\tcase 'disconnected':\n\t\t\treturn {\n\t\t\t\tconnectionStatus,\n\t\t\t\tcurrentWallet: null,\n\t\t\t\tisDisconnected: true,\n\t\t\t\tisConnecting: false,\n\t\t\t\tisConnected: false,\n\t\t\t} as const;\n\t\tcase 'connected': {\n\t\t\treturn {\n\t\t\t\tconnectionStatus,\n\t\t\t\tcurrentWallet: currentWallet!,\n\t\t\t\tisDisconnected: false,\n\t\t\t\tisConnecting: false,\n\t\t\t\tisConnected: true,\n\t\t\t} as const;\n\t\t}\n\t}\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useWalletStore } from './useWalletStore.js';\n\n/**\n * Retrieves a list of registered wallets available to the dApp sorted by preference.\n */\nexport function useWallets() {\n\treturn useWalletStore((state) => state.wallets);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react_query", "import_react", "import_react", "wallet"]
|
|
7
7
|
}
|
package/dist/cjs/index.js
CHANGED
|
@@ -916,23 +916,28 @@ function ConnectButton({
|
|
|
916
916
|
}
|
|
917
917
|
|
|
918
918
|
// src/components/WalletProvider.tsx
|
|
919
|
-
var
|
|
919
|
+
var import_react15 = require("react");
|
|
920
920
|
|
|
921
921
|
// src/hooks/wallet/useAutoConnectWallet.ts
|
|
922
922
|
var import_react_query5 = require("@tanstack/react-query");
|
|
923
|
+
var import_react11 = require("react");
|
|
923
924
|
function useAutoConnectWallet() {
|
|
924
925
|
const { mutateAsync: connectWallet } = useConnectWallet();
|
|
925
926
|
const autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);
|
|
926
927
|
const lastConnectedWalletName = useWalletStore((state) => state.lastConnectedWalletName);
|
|
927
928
|
const lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);
|
|
928
929
|
const wallets = useWallets();
|
|
929
|
-
const {
|
|
930
|
+
const { isConnected } = useCurrentWallet();
|
|
931
|
+
const [clientOnly, setClientOnly] = (0, import_react11.useState)(false);
|
|
932
|
+
(0, import_react11.useLayoutEffect)(() => {
|
|
933
|
+
setClientOnly(true);
|
|
934
|
+
}, []);
|
|
930
935
|
const { data, isError } = (0, import_react_query5.useQuery)({
|
|
931
936
|
queryKey: [
|
|
932
937
|
"@mysten/dapp-kit",
|
|
933
938
|
"autoconnect",
|
|
934
939
|
{
|
|
935
|
-
|
|
940
|
+
isConnected,
|
|
936
941
|
autoConnectEnabled,
|
|
937
942
|
lastConnectedWalletName,
|
|
938
943
|
lastConnectedAccountAddress,
|
|
@@ -943,7 +948,7 @@ function useAutoConnectWallet() {
|
|
|
943
948
|
if (!autoConnectEnabled) {
|
|
944
949
|
return "disabled";
|
|
945
950
|
}
|
|
946
|
-
if (!lastConnectedWalletName || !lastConnectedAccountAddress ||
|
|
951
|
+
if (!lastConnectedWalletName || !lastConnectedAccountAddress || isConnected) {
|
|
947
952
|
return "attempted";
|
|
948
953
|
}
|
|
949
954
|
const wallet = wallets.find((wallet2) => wallet2.name === lastConnectedWalletName);
|
|
@@ -960,6 +965,7 @@ function useAutoConnectWallet() {
|
|
|
960
965
|
persister: void 0,
|
|
961
966
|
gcTime: 0,
|
|
962
967
|
staleTime: 0,
|
|
968
|
+
networkMode: "always",
|
|
963
969
|
retry: false,
|
|
964
970
|
retryOnMount: false,
|
|
965
971
|
refetchInterval: false,
|
|
@@ -971,6 +977,9 @@ function useAutoConnectWallet() {
|
|
|
971
977
|
if (!autoConnectEnabled) {
|
|
972
978
|
return "disabled";
|
|
973
979
|
}
|
|
980
|
+
if (!clientOnly) {
|
|
981
|
+
return "idle";
|
|
982
|
+
}
|
|
974
983
|
if (!lastConnectedWalletName) {
|
|
975
984
|
return "attempted";
|
|
976
985
|
}
|
|
@@ -980,11 +989,11 @@ function useAutoConnectWallet() {
|
|
|
980
989
|
// src/hooks/wallet/useUnsafeBurnerWallet.ts
|
|
981
990
|
var import_ed25519 = require("@mysten/sui.js/keypairs/ed25519");
|
|
982
991
|
var import_wallet_standard = require("@mysten/wallet-standard");
|
|
983
|
-
var
|
|
992
|
+
var import_react12 = require("react");
|
|
984
993
|
var WALLET_NAME = "Unsafe Burner Wallet";
|
|
985
994
|
function useUnsafeBurnerWallet(enabled) {
|
|
986
995
|
const suiClient = useSuiClient();
|
|
987
|
-
(0,
|
|
996
|
+
(0, import_react12.useEffect)(() => {
|
|
988
997
|
if (!enabled) {
|
|
989
998
|
return;
|
|
990
999
|
}
|
|
@@ -1094,11 +1103,11 @@ function registerUnsafeBurnerWallet(suiClient) {
|
|
|
1094
1103
|
}
|
|
1095
1104
|
|
|
1096
1105
|
// src/hooks/wallet/useWalletPropertiesChanged.ts
|
|
1097
|
-
var
|
|
1106
|
+
var import_react13 = require("react");
|
|
1098
1107
|
function useWalletPropertiesChanged() {
|
|
1099
1108
|
const { currentWallet } = useCurrentWallet();
|
|
1100
1109
|
const updateWalletAccounts = useWalletStore((state) => state.updateWalletAccounts);
|
|
1101
|
-
(0,
|
|
1110
|
+
(0, import_react13.useEffect)(() => {
|
|
1102
1111
|
const unsubscribeFromEvents = currentWallet?.features["standard:events"].on(
|
|
1103
1112
|
"change",
|
|
1104
1113
|
({ accounts }) => {
|
|
@@ -1113,7 +1122,7 @@ function useWalletPropertiesChanged() {
|
|
|
1113
1122
|
|
|
1114
1123
|
// src/hooks/wallet/useWalletsChanged.ts
|
|
1115
1124
|
var import_wallet_standard3 = require("@mysten/wallet-standard");
|
|
1116
|
-
var
|
|
1125
|
+
var import_react14 = require("react");
|
|
1117
1126
|
|
|
1118
1127
|
// src/utils/walletUtils.ts
|
|
1119
1128
|
var import_wallet_standard2 = require("@mysten/wallet-standard");
|
|
@@ -1135,7 +1144,7 @@ function getRegisteredWallets(preferredWallets, requiredFeatures) {
|
|
|
1135
1144
|
function useWalletsChanged(preferredWallets, requiredFeatures) {
|
|
1136
1145
|
const setWalletRegistered = useWalletStore((state) => state.setWalletRegistered);
|
|
1137
1146
|
const setWalletUnregistered = useWalletStore((state) => state.setWalletUnregistered);
|
|
1138
|
-
(0,
|
|
1147
|
+
(0, import_react14.useEffect)(() => {
|
|
1139
1148
|
const walletsApi = (0, import_wallet_standard3.getWallets)();
|
|
1140
1149
|
const unsubscribeFromRegister = walletsApi.on("register", () => {
|
|
1141
1150
|
setWalletRegistered(getRegisteredWallets(preferredWallets, requiredFeatures));
|
|
@@ -1285,7 +1294,7 @@ function createWalletStore({
|
|
|
1285
1294
|
const currentAccount = get().currentAccount;
|
|
1286
1295
|
set(() => ({
|
|
1287
1296
|
accounts,
|
|
1288
|
-
currentAccount: currentAccount
|
|
1297
|
+
currentAccount: currentAccount && accounts.find(({ address }) => address === currentAccount.address) || accounts[0]
|
|
1289
1298
|
}));
|
|
1290
1299
|
}
|
|
1291
1300
|
}),
|
|
@@ -1412,7 +1421,7 @@ function WalletProvider({
|
|
|
1412
1421
|
theme = lightTheme,
|
|
1413
1422
|
children
|
|
1414
1423
|
}) {
|
|
1415
|
-
const storeRef = (0,
|
|
1424
|
+
const storeRef = (0, import_react15.useRef)(
|
|
1416
1425
|
createWalletStore({
|
|
1417
1426
|
autoConnectEnabled: autoConnect,
|
|
1418
1427
|
wallets: getRegisteredWallets(preferredWallets, requiredFeatures),
|