@mysten/dapp-kit 0.14.21 → 0.14.23

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useSuiClientQuery.ts", "../../../src/hooks/useSuiClient.ts", "../../../src/components/SuiClientProvider.tsx"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport type { UseQueryOptions, UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\n\nimport type { PartialBy } from '../types/utilityTypes.js';\nimport { useSuiClientContext } from './useSuiClient.js';\n\nexport type SuiRpcMethodName = {\n\t[K in keyof SuiClient]: SuiClient[K] extends ((input: any) => Promise<any>) | (() => Promise<any>)\n\t\t? K\n\t\t: never;\n}[keyof SuiClient];\n\nexport type SuiRpcMethods = {\n\t[K in SuiRpcMethodName]: SuiClient[K] extends (input: infer P) => Promise<infer R>\n\t\t? {\n\t\t\t\tname: K;\n\t\t\t\tresult: R;\n\t\t\t\tparams: P;\n\t\t\t}\n\t\t: SuiClient[K] extends () => Promise<infer R>\n\t\t\t? {\n\t\t\t\t\tname: K;\n\t\t\t\t\tresult: R;\n\t\t\t\t\tparams: undefined | object;\n\t\t\t\t}\n\t\t\t: never;\n};\n\nexport type UseSuiClientQueryOptions<T extends keyof SuiRpcMethods, TData> = PartialBy<\n\tOmit<UseQueryOptions<SuiRpcMethods[T]['result'], Error, TData, unknown[]>, 'queryFn'>,\n\t'queryKey'\n>;\n\nexport function useSuiClientQuery<\n\tT extends keyof SuiRpcMethods,\n\tTData = SuiRpcMethods[T]['result'],\n>(\n\t...args: undefined extends SuiRpcMethods[T]['params']\n\t\t? [method: T, params?: SuiRpcMethods[T]['params'], options?: UseSuiClientQueryOptions<T, TData>]\n\t\t: [method: T, params: SuiRpcMethods[T]['params'], options?: UseSuiClientQueryOptions<T, TData>]\n): UseQueryResult<TData, Error> {\n\tconst [method, params, { queryKey = [], ...options } = {}] = args as [\n\t\tmethod: T,\n\t\tparams?: SuiRpcMethods[T]['params'],\n\t\toptions?: UseSuiClientQueryOptions<T, TData>,\n\t];\n\n\tconst suiContext = useSuiClientContext();\n\n\treturn useQuery({\n\t\t...options,\n\t\tqueryKey: [suiContext.network, method, params, ...queryKey],\n\t\tqueryFn: async () => {\n\t\t\treturn await suiContext.client[method](params as never);\n\t\t},\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport { useContext } from 'react';\n\nimport { SuiClientContext } from '../components/SuiClientProvider.js';\n\nexport function useSuiClientContext() {\n\tconst suiClient = useContext(SuiClientContext);\n\n\tif (!suiClient) {\n\t\tthrow new Error(\n\t\t\t'Could not find SuiClientContext. Ensure that you have set up the SuiClientProvider',\n\t\t);\n\t}\n\n\treturn suiClient;\n}\n\nexport function useSuiClient(): SuiClient {\n\treturn useSuiClientContext().client;\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { getFullnodeUrl, isSuiClient, SuiClient } from '@mysten/sui/client';\nimport type { SuiClientOptions } from '@mysten/sui/client';\nimport { createContext, useMemo, useState } from 'react';\n\nimport type { NetworkConfig } from '../hooks/networkConfig.js';\n\ntype NetworkConfigs<T extends NetworkConfig | SuiClient = NetworkConfig | SuiClient> = Record<\n\tstring,\n\tT\n>;\n\nexport interface SuiClientProviderContext {\n\tclient: SuiClient;\n\tnetworks: NetworkConfigs;\n\tnetwork: string;\n\tconfig: NetworkConfig | null;\n\tselectNetwork: (network: string) => void;\n}\n\nexport const SuiClientContext = createContext<SuiClientProviderContext | null>(null);\n\nexport type SuiClientProviderProps<T extends NetworkConfigs> = {\n\tcreateClient?: (name: keyof T, config: T[keyof T]) => SuiClient;\n\tchildren: React.ReactNode;\n\tnetworks?: T;\n\tonNetworkChange?: (network: keyof T & string) => void;\n} & (\n\t| {\n\t\t\tdefaultNetwork?: keyof T & string;\n\t\t\tnetwork?: never;\n\t }\n\t| {\n\t\t\tdefaultNetwork?: never;\n\t\t\tnetwork?: keyof T & string;\n\t }\n);\n\nconst DEFAULT_NETWORKS = {\n\tlocalnet: { url: getFullnodeUrl('localnet') },\n};\n\nconst DEFAULT_CREATE_CLIENT = function createClient(\n\t_name: string,\n\tconfig: NetworkConfig | SuiClient,\n) {\n\tif (isSuiClient(config)) {\n\t\treturn config;\n\t}\n\n\treturn new SuiClient(config);\n};\n\nexport function SuiClientProvider<T extends NetworkConfigs>(props: SuiClientProviderProps<T>) {\n\tconst { onNetworkChange, network, children } = props;\n\tconst networks = (props.networks ?? DEFAULT_NETWORKS) as T;\n\tconst createClient =\n\t\t(props.createClient as typeof DEFAULT_CREATE_CLIENT) ?? DEFAULT_CREATE_CLIENT;\n\n\tconst [selectedNetwork, setSelectedNetwork] = useState<keyof T & string>(\n\t\tprops.network ?? props.defaultNetwork ?? (Object.keys(networks)[0] as keyof T & string),\n\t);\n\n\tconst currentNetwork = props.network ?? selectedNetwork;\n\n\tconst client = useMemo(() => {\n\t\treturn createClient(currentNetwork, networks[currentNetwork]);\n\t}, [createClient, currentNetwork, networks]);\n\n\tconst ctx = useMemo((): SuiClientProviderContext => {\n\t\treturn {\n\t\t\tclient,\n\t\t\tnetworks,\n\t\t\tnetwork: currentNetwork,\n\t\t\tconfig:\n\t\t\t\tnetworks[currentNetwork] instanceof SuiClient\n\t\t\t\t\t? null\n\t\t\t\t\t: (networks[currentNetwork] as SuiClientOptions),\n\t\t\tselectNetwork: (newNetwork) => {\n\t\t\t\tif (currentNetwork === newNetwork) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!network && newNetwork !== selectedNetwork) {\n\t\t\t\t\tsetSelectedNetwork(newNetwork);\n\t\t\t\t}\n\n\t\t\t\tonNetworkChange?.(newNetwork);\n\t\t\t},\n\t\t};\n\t}, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);\n\n\treturn <SuiClientContext.Provider value={ctx}>{children}</SuiClientContext.Provider>;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,yBAAyB;;;ACDzB,IAAAA,gBAA2B;;;ACD3B,oBAAuD;AAEvD,mBAAiD;AAyFzC;AAxED,IAAM,uBAAmB,4BAA+C,IAAI;AAkBnF,IAAM,mBAAmB;AAAA,EACxB,UAAU,EAAE,SAAK,8BAAe,UAAU,EAAE;AAC7C;;;ADlCO,SAAS,sBAAsB;AACrC,QAAM,gBAAY,0BAAW,gBAAgB;AAE7C,MAAI,CAAC,WAAW;AACf,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AACR;;;ADmBO,SAAS,qBAIZ,MAG4B;AAC/B,QAAM,CAAC,QAAQ,QAAQ,EAAE,WAAW,CAAC,GAAG,GAAG,QAAQ,IAAI,CAAC,CAAC,IAAI;AAM7D,QAAM,aAAa,oBAAoB;AAEvC,aAAO,6BAAS;AAAA,IACf,GAAG;AAAA,IACH,UAAU,CAAC,WAAW,SAAS,QAAQ,QAAQ,GAAG,QAAQ;AAAA,IAC1D,SAAS,YAAY;AACpB,aAAO,MAAM,WAAW,OAAO,MAAM,EAAE,MAAe;AAAA,IACvD;AAAA,EACD,CAAC;AACF;",
6
- "names": ["import_react"]
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport type {\n\tUndefinedInitialDataOptions,\n\tUseQueryOptions,\n\tUseQueryResult,\n} from '@tanstack/react-query';\nimport { queryOptions, useQuery, useSuspenseQuery } from '@tanstack/react-query';\nimport { useMemo } from 'react';\n\nimport type { PartialBy } from '../types/utilityTypes.js';\nimport { useSuiClientContext } from './useSuiClient.js';\n\nexport type SuiRpcMethodName = {\n\t[K in keyof SuiClient]: SuiClient[K] extends ((input: any) => Promise<any>) | (() => Promise<any>)\n\t\t? K\n\t\t: never;\n}[keyof SuiClient];\n\nexport type SuiRpcMethods = {\n\t[K in SuiRpcMethodName]: SuiClient[K] extends (input: infer P) => Promise<infer R>\n\t\t? {\n\t\t\t\tname: K;\n\t\t\t\tresult: R;\n\t\t\t\tparams: P;\n\t\t\t}\n\t\t: SuiClient[K] extends () => Promise<infer R>\n\t\t\t? {\n\t\t\t\t\tname: K;\n\t\t\t\t\tresult: R;\n\t\t\t\t\tparams: undefined | object;\n\t\t\t\t}\n\t\t\t: never;\n};\n\nexport type UseSuiClientQueryOptions<T extends keyof SuiRpcMethods, TData> = PartialBy<\n\tOmit<UseQueryOptions<SuiRpcMethods[T]['result'], Error, TData, unknown[]>, 'queryFn'>,\n\t'queryKey'\n>;\n\nexport type GetSuiClientQueryOptions<T extends keyof SuiRpcMethods> = {\n\tclient: SuiClient;\n\tnetwork: string;\n\tmethod: T;\n\toptions?: PartialBy<\n\t\tOmit<UndefinedInitialDataOptions<SuiRpcMethods[T]['result']>, 'queryFn'>,\n\t\t'queryKey'\n\t>;\n} & (undefined extends SuiRpcMethods[T]['params']\n\t? { params?: SuiRpcMethods[T]['params'] }\n\t: { params: SuiRpcMethods[T]['params'] });\n\nexport function getSuiClientQuery<T extends keyof SuiRpcMethods>({\n\tclient,\n\tnetwork,\n\tmethod,\n\tparams,\n\toptions,\n}: GetSuiClientQueryOptions<T>) {\n\treturn queryOptions<SuiRpcMethods[T]['result']>({\n\t\t...options,\n\t\tqueryKey: [network, method, params],\n\t\tqueryFn: async () => {\n\t\t\treturn await client[method](params as never);\n\t\t},\n\t});\n}\n\nexport function useSuiClientQuery<\n\tT extends keyof SuiRpcMethods,\n\tTData = SuiRpcMethods[T]['result'],\n>(\n\t...args: undefined extends SuiRpcMethods[T]['params']\n\t\t? [method: T, params?: SuiRpcMethods[T]['params'], options?: UseSuiClientQueryOptions<T, TData>]\n\t\t: [method: T, params: SuiRpcMethods[T]['params'], options?: UseSuiClientQueryOptions<T, TData>]\n): UseQueryResult<TData, Error> {\n\tconst [method, params, { queryKey = [], ...options } = {}] = args as [\n\t\tmethod: T,\n\t\tparams?: SuiRpcMethods[T]['params'],\n\t\toptions?: UseSuiClientQueryOptions<T, TData>,\n\t];\n\n\tconst suiContext = useSuiClientContext();\n\n\treturn useQuery({\n\t\t...options,\n\t\tqueryKey: [suiContext.network, method, params, ...queryKey],\n\t\tqueryFn: async () => {\n\t\t\treturn await suiContext.client[method](params as never);\n\t\t},\n\t});\n}\n\nexport function useSuiClientSuspenseQuery<\n\tT extends keyof SuiRpcMethods,\n\tTData = SuiRpcMethods[T]['result'],\n>(\n\t...args: undefined extends SuiRpcMethods[T]['params']\n\t\t? [method: T, params?: SuiRpcMethods[T]['params'], options?: UndefinedInitialDataOptions<TData>]\n\t\t: [method: T, params: SuiRpcMethods[T]['params'], options?: UndefinedInitialDataOptions<TData>]\n) {\n\tconst [method, params, options = {}] = args as [\n\t\tmethod: T,\n\t\tparams?: SuiRpcMethods[T]['params'],\n\t\toptions?: UndefinedInitialDataOptions<TData>,\n\t];\n\n\tconst suiContext = useSuiClientContext();\n\n\tconst query = useMemo(() => {\n\t\treturn getSuiClientQuery<T>({\n\t\t\tclient: suiContext.client,\n\t\t\tnetwork: suiContext.network,\n\t\t\tmethod,\n\t\t\tparams,\n\t\t\toptions,\n\t\t});\n\t}, [suiContext.client, suiContext.network, method, params, options]);\n\n\treturn useSuspenseQuery(query);\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport { useContext } from 'react';\n\nimport { SuiClientContext } from '../components/SuiClientProvider.js';\n\nexport function useSuiClientContext() {\n\tconst suiClient = useContext(SuiClientContext);\n\n\tif (!suiClient) {\n\t\tthrow new Error(\n\t\t\t'Could not find SuiClientContext. Ensure that you have set up the SuiClientProvider',\n\t\t);\n\t}\n\n\treturn suiClient;\n}\n\nexport function useSuiClient(): SuiClient {\n\treturn useSuiClientContext().client;\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { getFullnodeUrl, isSuiClient, SuiClient } from '@mysten/sui/client';\nimport type { SuiClientOptions } from '@mysten/sui/client';\nimport { createContext, useMemo, useState } from 'react';\n\nimport type { NetworkConfig } from '../hooks/networkConfig.js';\n\ntype NetworkConfigs<T extends NetworkConfig | SuiClient = NetworkConfig | SuiClient> = Record<\n\tstring,\n\tT\n>;\n\nexport interface SuiClientProviderContext {\n\tclient: SuiClient;\n\tnetworks: NetworkConfigs;\n\tnetwork: string;\n\tconfig: NetworkConfig | null;\n\tselectNetwork: (network: string) => void;\n}\n\nexport const SuiClientContext = createContext<SuiClientProviderContext | null>(null);\n\nexport type SuiClientProviderProps<T extends NetworkConfigs> = {\n\tcreateClient?: (name: keyof T, config: T[keyof T]) => SuiClient;\n\tchildren: React.ReactNode;\n\tnetworks?: T;\n\tonNetworkChange?: (network: keyof T & string) => void;\n} & (\n\t| {\n\t\t\tdefaultNetwork?: keyof T & string;\n\t\t\tnetwork?: never;\n\t }\n\t| {\n\t\t\tdefaultNetwork?: never;\n\t\t\tnetwork?: keyof T & string;\n\t }\n);\n\nconst DEFAULT_NETWORKS = {\n\tlocalnet: { url: getFullnodeUrl('localnet') },\n};\n\nconst DEFAULT_CREATE_CLIENT = function createClient(\n\t_name: string,\n\tconfig: NetworkConfig | SuiClient,\n) {\n\tif (isSuiClient(config)) {\n\t\treturn config;\n\t}\n\n\treturn new SuiClient(config);\n};\n\nexport function SuiClientProvider<T extends NetworkConfigs>(props: SuiClientProviderProps<T>) {\n\tconst { onNetworkChange, network, children } = props;\n\tconst networks = (props.networks ?? DEFAULT_NETWORKS) as T;\n\tconst createClient =\n\t\t(props.createClient as typeof DEFAULT_CREATE_CLIENT) ?? DEFAULT_CREATE_CLIENT;\n\n\tconst [selectedNetwork, setSelectedNetwork] = useState<keyof T & string>(\n\t\tprops.network ?? props.defaultNetwork ?? (Object.keys(networks)[0] as keyof T & string),\n\t);\n\n\tconst currentNetwork = props.network ?? selectedNetwork;\n\n\tconst client = useMemo(() => {\n\t\treturn createClient(currentNetwork, networks[currentNetwork]);\n\t}, [createClient, currentNetwork, networks]);\n\n\tconst ctx = useMemo((): SuiClientProviderContext => {\n\t\treturn {\n\t\t\tclient,\n\t\t\tnetworks,\n\t\t\tnetwork: currentNetwork,\n\t\t\tconfig:\n\t\t\t\tnetworks[currentNetwork] instanceof SuiClient\n\t\t\t\t\t? null\n\t\t\t\t\t: (networks[currentNetwork] as SuiClientOptions),\n\t\t\tselectNetwork: (newNetwork) => {\n\t\t\t\tif (currentNetwork === newNetwork) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!network && newNetwork !== selectedNetwork) {\n\t\t\t\t\tsetSelectedNetwork(newNetwork);\n\t\t\t\t}\n\n\t\t\t\tonNetworkChange?.(newNetwork);\n\t\t\t},\n\t\t};\n\t}, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);\n\n\treturn <SuiClientContext.Provider value={ctx}>{children}</SuiClientContext.Provider>;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,yBAAyD;AACzD,IAAAA,gBAAwB;;;ACNxB,IAAAC,gBAA2B;;;ACD3B,oBAAuD;AAEvD,mBAAiD;AAyFzC;AAxED,IAAM,uBAAmB,4BAA+C,IAAI;AAkBnF,IAAM,mBAAmB;AAAA,EACxB,UAAU,EAAE,SAAK,8BAAe,UAAU,EAAE;AAC7C;;;ADlCO,SAAS,sBAAsB;AACrC,QAAM,gBAAY,0BAAW,gBAAgB;AAE7C,MAAI,CAAC,WAAW;AACf,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AACR;;;ADoCO,SAAS,kBAAiD;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAgC;AAC/B,aAAO,iCAAyC;AAAA,IAC/C,GAAG;AAAA,IACH,UAAU,CAAC,SAAS,QAAQ,MAAM;AAAA,IAClC,SAAS,YAAY;AACpB,aAAO,MAAM,OAAO,MAAM,EAAE,MAAe;AAAA,IAC5C;AAAA,EACD,CAAC;AACF;AAEO,SAAS,qBAIZ,MAG4B;AAC/B,QAAM,CAAC,QAAQ,QAAQ,EAAE,WAAW,CAAC,GAAG,GAAG,QAAQ,IAAI,CAAC,CAAC,IAAI;AAM7D,QAAM,aAAa,oBAAoB;AAEvC,aAAO,6BAAS;AAAA,IACf,GAAG;AAAA,IACH,UAAU,CAAC,WAAW,SAAS,QAAQ,QAAQ,GAAG,QAAQ;AAAA,IAC1D,SAAS,YAAY;AACpB,aAAO,MAAM,WAAW,OAAO,MAAM,EAAE,MAAe;AAAA,IACvD;AAAA,EACD,CAAC;AACF;AAEO,SAAS,6BAIZ,MAGF;AACD,QAAM,CAAC,QAAQ,QAAQ,UAAU,CAAC,CAAC,IAAI;AAMvC,QAAM,aAAa,oBAAoB;AAEvC,QAAM,YAAQ,uBAAQ,MAAM;AAC3B,WAAO,kBAAqB;AAAA,MAC3B,QAAQ,WAAW;AAAA,MACnB,SAAS,WAAW;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,IACD,CAAC;AAAA,EACF,GAAG,CAAC,WAAW,QAAQ,WAAW,SAAS,QAAQ,QAAQ,OAAO,CAAC;AAEnE,aAAO,qCAAiB,KAAK;AAC9B;",
6
+ "names": ["import_react", "import_react"]
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -62,6 +62,7 @@ __export(src_exports, {
62
62
  SuiClientProvider: () => SuiClientProvider,
63
63
  WalletProvider: () => WalletProvider,
64
64
  createNetworkConfig: () => createNetworkConfig,
65
+ getSuiClientQuery: () => getSuiClientQuery,
65
66
  lightTheme: () => lightTheme,
66
67
  useAccounts: () => useAccounts,
67
68
  useAutoConnectWallet: () => useAutoConnectWallet,
@@ -80,6 +81,7 @@ __export(src_exports, {
80
81
  useSuiClientMutation: () => useSuiClientMutation,
81
82
  useSuiClientQueries: () => useSuiClientQueries,
82
83
  useSuiClientQuery: () => useSuiClientQuery,
84
+ useSuiClientSuspenseQuery: () => useSuiClientSuspenseQuery,
83
85
  useSwitchAccount: () => useSwitchAccount,
84
86
  useWallets: () => useWallets
85
87
  });
@@ -636,6 +638,7 @@ var import_clsx7 = __toESM(require("clsx"));
636
638
 
637
639
  // src/hooks/useSuiClientQuery.ts
638
640
  var import_react_query2 = require("@tanstack/react-query");
641
+ var import_react11 = require("react");
639
642
 
640
643
  // src/hooks/useSuiClient.ts
641
644
  var import_react10 = require("react");
@@ -700,6 +703,21 @@ function useSuiClient() {
700
703
  }
701
704
 
702
705
  // src/hooks/useSuiClientQuery.ts
706
+ function getSuiClientQuery({
707
+ client,
708
+ network,
709
+ method,
710
+ params,
711
+ options
712
+ }) {
713
+ return (0, import_react_query2.queryOptions)({
714
+ ...options,
715
+ queryKey: [network, method, params],
716
+ queryFn: async () => {
717
+ return await client[method](params);
718
+ }
719
+ });
720
+ }
703
721
  function useSuiClientQuery(...args) {
704
722
  const [method, params, { queryKey = [], ...options } = {}] = args;
705
723
  const suiContext = useSuiClientContext();
@@ -711,6 +729,20 @@ function useSuiClientQuery(...args) {
711
729
  }
712
730
  });
713
731
  }
732
+ function useSuiClientSuspenseQuery(...args) {
733
+ const [method, params, options = {}] = args;
734
+ const suiContext = useSuiClientContext();
735
+ const query = (0, import_react11.useMemo)(() => {
736
+ return getSuiClientQuery({
737
+ client: suiContext.client,
738
+ network: suiContext.network,
739
+ method,
740
+ params,
741
+ options
742
+ });
743
+ }, [suiContext.client, suiContext.network, method, params, options]);
744
+ return (0, import_react_query2.useSuspenseQuery)(query);
745
+ }
714
746
 
715
747
  // src/hooks/useResolveSuiNSNames.ts
716
748
  function useResolveSuiNSName(address, options) {
@@ -941,7 +973,7 @@ function ConnectButton({
941
973
  }
942
974
 
943
975
  // src/components/WalletProvider.tsx
944
- var import_react16 = require("react");
976
+ var import_react17 = require("react");
945
977
 
946
978
  // src/constants/walletDefaults.ts
947
979
  var import_zksend = require("@mysten/zksend");
@@ -975,7 +1007,7 @@ var DEFAULT_PREFERRED_WALLETS = [SUI_WALLET_NAME, import_zksend.STASHED_WALLET_N
975
1007
 
976
1008
  // src/hooks/wallet/useAutoConnectWallet.ts
977
1009
  var import_react_query5 = require("@tanstack/react-query");
978
- var import_react11 = require("react");
1010
+ var import_react12 = require("react");
979
1011
  function useAutoConnectWallet() {
980
1012
  const { mutateAsync: connectWallet } = useConnectWallet();
981
1013
  const autoConnectEnabled = useWalletStore((state) => state.autoConnectEnabled);
@@ -983,8 +1015,8 @@ function useAutoConnectWallet() {
983
1015
  const lastConnectedAccountAddress = useWalletStore((state) => state.lastConnectedAccountAddress);
984
1016
  const wallets = useWallets();
985
1017
  const { isConnected } = useCurrentWallet();
986
- const [clientOnly, setClientOnly] = (0, import_react11.useState)(false);
987
- (0, import_react11.useLayoutEffect)(() => {
1018
+ const [clientOnly, setClientOnly] = (0, import_react12.useState)(false);
1019
+ (0, import_react12.useLayoutEffect)(() => {
988
1020
  setClientOnly(true);
989
1021
  }, []);
990
1022
  const { data, isError } = (0, import_react_query5.useQuery)({
@@ -1048,18 +1080,18 @@ function useAutoConnectWallet() {
1048
1080
 
1049
1081
  // src/hooks/wallet/useStashedWallet.ts
1050
1082
  var import_zksend2 = require("@mysten/zksend");
1051
- var import_react12 = require("react");
1083
+ var import_react13 = require("react");
1052
1084
  function useStashedWallet(config) {
1053
1085
  const status = useAutoConnectWallet();
1054
- const [address, setAddress] = (0, import_react12.useState)(null);
1055
- const [wallet, setWallet] = (0, import_react12.useState)(null);
1086
+ const [address, setAddress] = (0, import_react13.useState)(null);
1087
+ const [wallet, setWallet] = (0, import_react13.useState)(null);
1056
1088
  const { mutate: connect } = useConnectWallet();
1057
- (0, import_react12.useEffect)(() => {
1089
+ (0, import_react13.useEffect)(() => {
1058
1090
  if (!address || !wallet || status !== "attempted") return;
1059
1091
  connect({ wallet, silent: true });
1060
1092
  setAddress(null);
1061
1093
  }, [address, status, connect, wallet]);
1062
- (0, import_react12.useLayoutEffect)(() => {
1094
+ (0, import_react13.useLayoutEffect)(() => {
1063
1095
  if (!config?.name) {
1064
1096
  return;
1065
1097
  }
@@ -1080,11 +1112,11 @@ var import_ed25519 = require("@mysten/sui/keypairs/ed25519");
1080
1112
  var import_transactions = require("@mysten/sui/transactions");
1081
1113
  var import_utils2 = require("@mysten/sui/utils");
1082
1114
  var import_wallet_standard2 = require("@mysten/wallet-standard");
1083
- var import_react13 = require("react");
1115
+ var import_react14 = require("react");
1084
1116
  var WALLET_NAME = "Unsafe Burner Wallet";
1085
1117
  function useUnsafeBurnerWallet(enabled) {
1086
1118
  const suiClient = useSuiClient();
1087
- (0, import_react13.useEffect)(() => {
1119
+ (0, import_react14.useEffect)(() => {
1088
1120
  if (!enabled) {
1089
1121
  return;
1090
1122
  }
@@ -1247,11 +1279,11 @@ function registerUnsafeBurnerWallet(suiClient) {
1247
1279
  }
1248
1280
 
1249
1281
  // src/hooks/wallet/useWalletPropertiesChanged.ts
1250
- var import_react14 = require("react");
1282
+ var import_react15 = require("react");
1251
1283
  function useWalletPropertiesChanged() {
1252
1284
  const { currentWallet } = useCurrentWallet();
1253
1285
  const updateWalletAccounts = useWalletStore((state) => state.updateWalletAccounts);
1254
- (0, import_react14.useEffect)(() => {
1286
+ (0, import_react15.useEffect)(() => {
1255
1287
  const unsubscribeFromEvents = currentWallet?.features["standard:events"].on(
1256
1288
  "change",
1257
1289
  ({ accounts }) => {
@@ -1266,11 +1298,11 @@ function useWalletPropertiesChanged() {
1266
1298
 
1267
1299
  // src/hooks/wallet/useWalletsChanged.ts
1268
1300
  var import_wallet_standard3 = require("@mysten/wallet-standard");
1269
- var import_react15 = require("react");
1301
+ var import_react16 = require("react");
1270
1302
  function useWalletsChanged(preferredWallets, walletFilter) {
1271
1303
  const setWalletRegistered = useWalletStore((state) => state.setWalletRegistered);
1272
1304
  const setWalletUnregistered = useWalletStore((state) => state.setWalletUnregistered);
1273
- (0, import_react15.useEffect)(() => {
1305
+ (0, import_react16.useEffect)(() => {
1274
1306
  const walletsApi = (0, import_wallet_standard3.getWallets)();
1275
1307
  setWalletRegistered(getRegisteredWallets(preferredWallets, walletFilter));
1276
1308
  const unsubscribeFromRegister = walletsApi.on("register", () => {
@@ -1550,7 +1582,7 @@ function WalletProvider({
1550
1582
  theme = lightTheme,
1551
1583
  children
1552
1584
  }) {
1553
- const storeRef = (0, import_react16.useRef)(
1585
+ const storeRef = (0, import_react17.useRef)(
1554
1586
  createWalletStore({
1555
1587
  autoConnectEnabled: autoConnect,
1556
1588
  wallets: getRegisteredWallets(preferredWallets, walletFilter),