@wagmi/solid 0.0.12 → 0.0.14

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 (45) hide show
  1. package/dist/esm/exports/index.js +7 -0
  2. package/dist/esm/exports/index.js.map +1 -1
  3. package/dist/esm/primitives/useInfiniteReadContracts.js +27 -0
  4. package/dist/esm/primitives/useInfiniteReadContracts.js.map +1 -0
  5. package/dist/esm/primitives/useReadContract.js +16 -0
  6. package/dist/esm/primitives/useReadContract.js.map +1 -0
  7. package/dist/esm/primitives/useReadContracts.js +22 -0
  8. package/dist/esm/primitives/useReadContracts.js.map +1 -0
  9. package/dist/esm/primitives/useSimulateContract.js +20 -0
  10. package/dist/esm/primitives/useSimulateContract.js.map +1 -0
  11. package/dist/esm/primitives/useWatchContractEvent.js +23 -0
  12. package/dist/esm/primitives/useWatchContractEvent.js.map +1 -0
  13. package/dist/esm/primitives/useWriteContract.js +18 -0
  14. package/dist/esm/primitives/useWriteContract.js.map +1 -0
  15. package/dist/esm/primitives/useWriteContractSync.js +18 -0
  16. package/dist/esm/primitives/useWriteContractSync.js.map +1 -0
  17. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  18. package/dist/esm/version.js +1 -1
  19. package/dist/types/exports/index.d.ts +7 -0
  20. package/dist/types/exports/index.d.ts.map +1 -1
  21. package/dist/types/primitives/useInfiniteReadContracts.d.ts +19 -0
  22. package/dist/types/primitives/useInfiniteReadContracts.d.ts.map +1 -0
  23. package/dist/types/primitives/useReadContract.d.ts +14 -0
  24. package/dist/types/primitives/useReadContract.d.ts.map +1 -0
  25. package/dist/types/primitives/useReadContracts.d.ts +14 -0
  26. package/dist/types/primitives/useReadContracts.d.ts.map +1 -0
  27. package/dist/types/primitives/useSimulateContract.d.ts +14 -0
  28. package/dist/types/primitives/useSimulateContract.d.ts.map +1 -0
  29. package/dist/types/primitives/useWatchContractEvent.d.ts +12 -0
  30. package/dist/types/primitives/useWatchContractEvent.d.ts.map +1 -0
  31. package/dist/types/primitives/useWriteContract.d.ts +19 -0
  32. package/dist/types/primitives/useWriteContract.d.ts.map +1 -0
  33. package/dist/types/primitives/useWriteContractSync.d.ts +19 -0
  34. package/dist/types/primitives/useWriteContractSync.d.ts.map +1 -0
  35. package/dist/types/version.d.ts +1 -1
  36. package/package.json +2 -2
  37. package/src/exports/index.ts +14 -0
  38. package/src/primitives/useInfiniteReadContracts.ts +123 -0
  39. package/src/primitives/useReadContract.ts +93 -0
  40. package/src/primitives/useReadContracts.ts +82 -0
  41. package/src/primitives/useSimulateContract.ts +121 -0
  42. package/src/primitives/useWatchContractEvent.ts +82 -0
  43. package/src/primitives/useWriteContract.ts +78 -0
  44. package/src/primitives/useWriteContractSync.ts +80 -0
  45. package/src/version.ts +1 -1
@@ -1,2 +1,2 @@
1
- export const version = '0.0.12';
1
+ export const version = '0.0.14';
2
2
  //# sourceMappingURL=version.js.map
@@ -14,10 +14,17 @@ export { useConnections } from '../primitives/useConnections.js';
14
14
  export { useConnectorClient } from '../primitives/useConnectorClient.js';
15
15
  export { useConnectors } from '../primitives/useConnectors.js';
16
16
  export { useDisconnect } from '../primitives/useDisconnect.js';
17
+ export { useInfiniteReadContracts } from '../primitives/useInfiniteReadContracts.js';
18
+ export { useReadContract } from '../primitives/useReadContract.js';
19
+ export { useReadContracts } from '../primitives/useReadContracts.js';
17
20
  export { useReconnect } from '../primitives/useReconnect.js';
21
+ export { useSimulateContract } from '../primitives/useSimulateContract.js';
18
22
  export { useSwitchChain } from '../primitives/useSwitchChain.js';
19
23
  export { useSwitchConnection } from '../primitives/useSwitchConnection.js';
20
24
  export { useWatchBlockNumber } from '../primitives/useWatchBlockNumber.js';
25
+ export { useWatchContractEvent } from '../primitives/useWatchContractEvent.js';
26
+ export { useWriteContract } from '../primitives/useWriteContract.js';
27
+ export { useWriteContractSync } from '../primitives/useWriteContractSync.js';
21
28
  export { Hydrate, type HydrateProps, } from '../hydrate.js';
22
29
  export { ChainNotConfiguredError, type ChainNotConfiguredErrorType, type Config, type Connection, type Connector, ConnectorAccountNotFoundError, type ConnectorAccountNotFoundErrorType, ConnectorAlreadyConnectedError, type ConnectorAlreadyConnectedErrorType, ConnectorChainMismatchError, type ConnectorChainMismatchErrorType, type ConnectorEventMap, ConnectorNotFoundError, type ConnectorNotFoundErrorType, ConnectorUnavailableReconnectingError, type ConnectorUnavailableReconnectingErrorType, type CreateConfigParameters, type CreateConnectorFn, type CreateStorageParameters, cookieStorage, cookieToInitialState, createConfig, createConnector, createStorage, custom, deepEqual, deserialize, fallback, http, injected, mock, noopStorage, type PartializedState, ProviderNotFoundError, type ProviderNotFoundErrorType, parseCookie, type Register, type ResolvedRegister, type State, type Storage, SwitchChainNotSupportedError, type SwitchChainNotSupportedErrorType, serialize, type Transport, unstable_connector, webSocket, } from '@wagmi/core';
23
30
  export { version } from '../version.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exports/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,KAAK,kBAAkB,GACxB,MAAM,eAAe,CAAA;AAMtB,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjE,OAAO,EACL,0BAA0B,EAC1B,KAAK,8BAA8B,GACpC,MAAM,sBAAsB,CAAA;AAM7B,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAE1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAM1E,OAAO,EACL,OAAO,EACP,KAAK,YAAY,GAClB,MAAM,eAAe,CAAA;AAMtB,OAAO,EACL,uBAAuB,EAEvB,KAAK,2BAA2B,EAChC,KAAK,MAAM,EAEX,KAAK,UAAU,EACf,KAAK,SAAS,EACd,6BAA6B,EAC7B,KAAK,iCAAiC,EACtC,8BAA8B,EAC9B,KAAK,kCAAkC,EACvC,2BAA2B,EAC3B,KAAK,+BAA+B,EAEpC,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,qCAAqC,EACrC,KAAK,yCAAyC,EAC9C,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EAEtB,KAAK,uBAAuB,EAE5B,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,aAAa,EAEb,MAAM,EACN,SAAS,EACT,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,KAAK,gBAAgB,EACrB,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,WAAW,EAEX,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,4BAA4B,EAC5B,KAAK,gCAAgC,EACrC,SAAS,EACT,KAAK,SAAS,EACd,kBAAkB,EAClB,SAAS,GACV,MAAM,aAAa,CAAA;AAMpB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exports/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { DefaultError, QueryKey } from '@tanstack/solid-query';
2
+ import type { Config, ReadContractsErrorType, ResolvedRegister } from '@wagmi/core';
3
+ import type { ConfigParameter, Omit } from '@wagmi/core/internal';
4
+ import { type InfiniteReadContractsData, type InfiniteReadContractsOptions, type InfiniteReadContractsQueryFnData, type InfiniteReadContractsQueryKey } from '@wagmi/core/query';
5
+ import type { Accessor } from 'solid-js';
6
+ import type { ContractFunctionParameters } from 'viem';
7
+ import { type SolidInfiniteQueryParameters, type UseInfiniteQueryReturnType } from '../utils/query.js';
8
+ type InfiniteQueryParameter<queryFnData = unknown, error = DefaultError, data = queryFnData, queryData = queryFnData, queryKey extends QueryKey = QueryKey, pageParam = unknown> = {
9
+ query: Omit<SolidInfiniteQueryParameters<queryFnData, error, data, queryData, queryKey, pageParam>, 'queryFn' | 'queryHash' | 'queryKey' | 'queryKeyHashFn' | 'throwOnError'>;
10
+ };
11
+ /** https://wagmi.sh/solid/api/primitives/useInfiniteReadContracts */
12
+ export declare function useInfiniteReadContracts<const contracts extends readonly unknown[], allowFailure extends boolean = true, config extends Config = ResolvedRegister['config'], pageParam = unknown, selectData = InfiniteReadContractsData<contracts, allowFailure>>(parameters: useInfiniteReadContracts.Parameters<contracts, allowFailure, config, pageParam, selectData>): useInfiniteReadContracts.ReturnType<contracts, allowFailure, selectData>;
13
+ export declare namespace useInfiniteReadContracts {
14
+ type Parameters<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, config extends Config = Config, pageParam = unknown, selectData = InfiniteReadContractsData<contracts, allowFailure>> = Accessor<SolidParameters<contracts, allowFailure, config, pageParam, selectData>>;
15
+ type ReturnType<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, selectData = InfiniteReadContractsData<contracts, allowFailure>> = UseInfiniteQueryReturnType<selectData, ReadContractsErrorType>;
16
+ type SolidParameters<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, config extends Config = Config, pageParam = unknown, selectData = InfiniteReadContractsData<contracts, allowFailure>> = InfiniteReadContractsOptions<contracts, allowFailure, pageParam, config> & ConfigParameter<config> & InfiniteQueryParameter<InfiniteReadContractsQueryFnData<contracts, allowFailure>, ReadContractsErrorType, selectData, InfiniteReadContractsData<contracts, allowFailure>, InfiniteReadContractsQueryKey<contracts, allowFailure, pageParam, config>, pageParam>;
17
+ }
18
+ export {};
19
+ //# sourceMappingURL=useInfiniteReadContracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInfiniteReadContracts.d.ts","sourceRoot":"","sources":["../../../src/primitives/useInfiniteReadContracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Config, ReadContractErrorType, ResolvedRegister } from '@wagmi/core';
2
+ import type { ConfigParameter, UnionCompute } from '@wagmi/core/internal';
3
+ import { type ReadContractData, type ReadContractOptions } from '@wagmi/core/query';
4
+ import type { Accessor } from 'solid-js';
5
+ import type { Abi, ContractFunctionArgs, ContractFunctionName } from 'viem';
6
+ import { type UseQueryReturnType } from '../utils/query.js';
7
+ /** https://wagmi.sh/solid/api/primitives/useReadContract */
8
+ export declare function useReadContract<const abi extends Abi | readonly unknown[], functionName extends ContractFunctionName<abi, 'pure' | 'view'>, const args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>, config extends Config = ResolvedRegister['config'], selectData = ReadContractData<abi, functionName, args>>(parameters?: useReadContract.Parameters<abi, functionName, args, config, selectData>): useReadContract.ReturnType<abi, functionName, args, selectData>;
9
+ export declare namespace useReadContract {
10
+ type Parameters<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'pure' | 'view'> = ContractFunctionName<abi, 'pure' | 'view'>, args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName> = ContractFunctionArgs<abi, 'pure' | 'view', functionName>, config extends Config = Config, selectData = ReadContractData<abi, functionName, args>> = Accessor<SolidParameters<abi, functionName, args, config, selectData>>;
11
+ type ReturnType<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'pure' | 'view'> = ContractFunctionName<abi, 'pure' | 'view'>, args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName> = ContractFunctionArgs<abi, 'pure' | 'view', functionName>, selectData = ReadContractData<abi, functionName, args>> = UseQueryReturnType<selectData, ReadContractErrorType>;
12
+ type SolidParameters<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'pure' | 'view'> = ContractFunctionName<abi, 'pure' | 'view'>, args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName> = ContractFunctionArgs<abi, 'pure' | 'view', functionName>, config extends Config = Config, selectData = ReadContractData<abi, functionName, args>> = UnionCompute<ReadContractOptions<abi, functionName, args, config, selectData> & ConfigParameter<config>>;
13
+ }
14
+ //# sourceMappingURL=useReadContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReadContract.d.ts","sourceRoot":"","sources":["../../../src/primitives/useReadContract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Config, ReadContractsErrorType, ResolvedRegister } from '@wagmi/core';
2
+ import type { Compute, ConfigParameter } from '@wagmi/core/internal';
3
+ import { type ReadContractsData, type ReadContractsOptions } from '@wagmi/core/query';
4
+ import type { Accessor } from 'solid-js';
5
+ import type { ContractFunctionParameters } from 'viem';
6
+ import { type UseQueryReturnType } from '../utils/query.js';
7
+ /** https://wagmi.sh/solid/api/primitives/useReadContracts */
8
+ export declare function useReadContracts<const contracts extends readonly unknown[], allowFailure extends boolean = true, config extends Config = ResolvedRegister['config'], selectData = ReadContractsData<contracts, allowFailure>>(parameters?: useReadContracts.Parameters<contracts, allowFailure, config, selectData>): useReadContracts.ReturnType<contracts, allowFailure, selectData>;
9
+ export declare namespace useReadContracts {
10
+ type Parameters<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, config extends Config = Config, selectData = ReadContractsData<contracts, allowFailure>> = Accessor<SolidParameters<contracts, allowFailure, config, selectData>>;
11
+ type ReturnType<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, selectData = ReadContractsData<contracts, allowFailure>> = UseQueryReturnType<selectData, ReadContractsErrorType>;
12
+ type SolidParameters<contracts extends readonly unknown[] = readonly ContractFunctionParameters[], allowFailure extends boolean = true, config extends Config = Config, selectData = ReadContractsData<contracts, allowFailure>> = Compute<ReadContractsOptions<contracts, allowFailure, config, selectData> & ConfigParameter<config>>;
13
+ }
14
+ //# sourceMappingURL=useReadContracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReadContracts.d.ts","sourceRoot":"","sources":["../../../src/primitives/useReadContracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAE1B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,MAAM,CAAA;AACtD,OAAO,EAAE,KAAK,kBAAkB,EAAY,MAAM,mBAAmB,CAAA;AAIrE,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAC9B,KAAK,CAAC,SAAS,SAAS,SAAS,OAAO,EAAE,EAC1C,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,MAAM,SAAS,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAClD,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,EAEvD,UAAU,GAAE,gBAAgB,CAAC,UAAU,CACrC,SAAS,EACT,YAAY,EACZ,MAAM,EACN,UAAU,CACE,GACb,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAsBlE;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,CACpB,SAAS,SACP,SAAS,OAAO,EAAE,GAAG,SAAS,0BAA0B,EAAE,EAC5D,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,IACrD,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;IAE1E,KAAY,UAAU,CACpB,SAAS,SACP,SAAS,OAAO,EAAE,GAAG,SAAS,0BAA0B,EAAE,EAC5D,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,IACrD,kBAAkB,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAA;IAE1D,KAAY,eAAe,CACzB,SAAS,SACP,SAAS,OAAO,EAAE,GAAG,SAAS,0BAA0B,EAAE,EAC5D,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,YAAY,CAAC,IACrD,OAAO,CACT,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,GAC/D,eAAe,CAAC,MAAM,CAAC,CAC1B,CAAA;CACF"}
@@ -0,0 +1,14 @@
1
+ import type { Config, ResolvedRegister, SimulateContractErrorType } from '@wagmi/core';
2
+ import type { ConfigParameter } from '@wagmi/core/internal';
3
+ import { type SimulateContractData, type SimulateContractOptions } from '@wagmi/core/query';
4
+ import type { Accessor } from 'solid-js';
5
+ import type { Abi, ContractFunctionArgs, ContractFunctionName } from 'viem';
6
+ import { type UseQueryReturnType } from '../utils/query.js';
7
+ /** https://wagmi.sh/solid/api/primitives/useSimulateContract */
8
+ export declare function useSimulateContract<const abi extends Abi | readonly unknown[], functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'>, const args extends ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>, config extends Config = ResolvedRegister['config'], chainId extends config['chains'][number]['id'] | undefined = undefined, selectData = SimulateContractData<abi, functionName, args, config, chainId>>(parameters?: useSimulateContract.Parameters<abi, functionName, args, config, chainId, selectData>): useSimulateContract.ReturnType<abi, functionName, args, config, chainId, selectData>;
9
+ export declare namespace useSimulateContract {
10
+ type Parameters<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'> = ContractFunctionName<abi, 'nonpayable' | 'payable'>, args extends ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName> = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>, config extends Config = Config, chainId extends config['chains'][number]['id'] | undefined = undefined, selectData = SimulateContractData<abi, functionName, args, config, chainId>> = Accessor<SolidParameters<abi, functionName, args, config, chainId, selectData>>;
11
+ type ReturnType<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'> = ContractFunctionName<abi, 'nonpayable' | 'payable'>, args extends ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName> = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>, config extends Config = Config, chainId extends config['chains'][number]['id'] | undefined = undefined, selectData = SimulateContractData<abi, functionName, args, config, chainId>> = UseQueryReturnType<selectData, SimulateContractErrorType>;
12
+ type SolidParameters<abi extends Abi | readonly unknown[] = Abi, functionName extends ContractFunctionName<abi, 'nonpayable' | 'payable'> = ContractFunctionName<abi, 'nonpayable' | 'payable'>, args extends ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName> = ContractFunctionArgs<abi, 'nonpayable' | 'payable', functionName>, config extends Config = Config, chainId extends config['chains'][number]['id'] | undefined = undefined, selectData = SimulateContractData<abi, functionName, args, config, chainId>> = SimulateContractOptions<abi, functionName, args, config, chainId, selectData> & ConfigParameter<config>;
13
+ }
14
+ //# sourceMappingURL=useSimulateContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSimulateContract.d.ts","sourceRoot":"","sources":["../../../src/primitives/useSimulateContract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { type Config, type ResolvedRegister, type WatchContractEventParameters } from '@wagmi/core';
2
+ import type { ConfigParameter, EnabledParameter, UnionCompute, UnionExactPartial } from '@wagmi/core/internal';
3
+ import { type Accessor } from 'solid-js';
4
+ import type { Abi, ContractEventName } from 'viem';
5
+ /** https://wagmi.sh/solid/api/primitives/useWatchContractEvent */
6
+ export declare function useWatchContractEvent<const abi extends Abi | readonly unknown[], eventName extends ContractEventName<abi>, strict extends boolean | undefined = undefined, config extends Config = ResolvedRegister['config'], chainId extends config['chains'][number]['id'] = config['chains'][number]['id']>(parameters?: useWatchContractEvent.Parameters<abi, eventName, strict, config, chainId>): useWatchContractEvent.ReturnType;
7
+ export declare namespace useWatchContractEvent {
8
+ type Parameters<abi extends Abi | readonly unknown[] = Abi, eventName extends ContractEventName<abi> = ContractEventName<abi>, strict extends boolean | undefined = undefined, config extends Config = Config, chainId extends config['chains'][number]['id'] = config['chains'][number]['id']> = Accessor<SolidParameters<abi, eventName, strict, config, chainId>>;
9
+ type ReturnType = void;
10
+ type SolidParameters<abi extends Abi | readonly unknown[] = Abi, eventName extends ContractEventName<abi> = ContractEventName<abi>, strict extends boolean | undefined = undefined, config extends Config = Config, chainId extends config['chains'][number]['id'] = config['chains'][number]['id']> = UnionCompute<UnionExactPartial<WatchContractEventParameters<abi, eventName, strict, config, chainId>> & ConfigParameter<config> & EnabledParameter>;
11
+ }
12
+ //# sourceMappingURL=useWatchContractEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWatchContractEvent.d.ts","sourceRoot":"","sources":["../../../src/primitives/useWatchContractEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,4BAA4B,EAElC,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,KAAK,QAAQ,EAA2B,MAAM,UAAU,CAAA;AACjE,OAAO,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAA;AAIlD,kEAAkE;AAClE,wBAAgB,qBAAqB,CACnC,KAAK,CAAC,GAAG,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,EAC1C,SAAS,SAAS,iBAAiB,CAAC,GAAG,CAAC,EACxC,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,MAAM,SAAS,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAClD,OAAO,SACL,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAEjE,UAAU,GAAE,qBAAqB,CAAC,UAAU,CAC1C,GAAG,EACH,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,CACY,GACpB,qBAAqB,CAAC,UAAU,CAoBlC;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,CACpB,GAAG,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,EAC1C,SAAS,SAAS,iBAAiB,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,EACjE,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,SACL,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAC/D,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAEtE,KAAY,UAAU,GAAG,IAAI,CAAA;IAE7B,KAAY,eAAe,CACzB,GAAG,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,EAC1C,SAAS,SAAS,iBAAiB,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,EACjE,MAAM,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAC9C,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,SACL,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAC/D,YAAY,CACd,iBAAiB,CACf,4BAA4B,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CACtE,GACC,eAAe,CAAC,MAAM,CAAC,GACvB,gBAAgB,CACnB,CAAA;CACF"}
@@ -0,0 +1,19 @@
1
+ import type { Config, ResolvedRegister, WriteContractErrorType } from '@wagmi/core';
2
+ import type { Compute, ConfigParameter } from '@wagmi/core/internal';
3
+ import { type WriteContractData, type WriteContractMutate, type WriteContractMutateAsync, type WriteContractOptions, type WriteContractVariables } from '@wagmi/core/query';
4
+ import type { Accessor } from 'solid-js';
5
+ import type { Abi } from 'viem';
6
+ import { type UseMutationReturnType } from '../utils/query.js';
7
+ /** https://wagmi.sh/solid/api/primitives/useWriteContract */
8
+ export declare function useWriteContract<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useWriteContract.Parameters<config, context>): useWriteContract.ReturnType<config, context>;
9
+ export declare namespace useWriteContract {
10
+ type Parameters<config extends Config = Config, context = unknown> = Accessor<SolidParameters<config, context>>;
11
+ type ReturnType<config extends Config = Config, context = unknown> = Compute<UseMutationReturnType<WriteContractData, WriteContractErrorType, WriteContractVariables<Abi, string, readonly unknown[], config, config['chains'][number]['id']>, context, WriteContractMutate<config, context>, WriteContractMutateAsync<config, context>> & {
12
+ /** @deprecated use `mutate` instead */
13
+ writeContract: WriteContractMutate<config, context>;
14
+ /** @deprecated use `mutateAsync` instead */
15
+ writeContractAsync: WriteContractMutateAsync<config, context>;
16
+ }>;
17
+ type SolidParameters<config extends Config = Config, context = unknown> = Compute<ConfigParameter<config> & WriteContractOptions<config, context>>;
18
+ }
19
+ //# sourceMappingURL=useWriteContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWriteContract.d.ts","sourceRoot":"","sources":["../../../src/primitives/useWriteContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAE5B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAE,KAAK,qBAAqB,EAAe,MAAM,mBAAmB,CAAA;AAG3E,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAC9B,MAAM,SAAS,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAClD,OAAO,GAAG,OAAO,EAEjB,UAAU,GAAE,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAc,GACpE,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAc9C;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAE9C,KAAY,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,OAAO,CACT,qBAAqB,CACnB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,CACpB,GAAG,EACH,MAAM,EACN,SAAS,OAAO,EAAE,EAClB,MAAM,EACN,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAC/B,EACD,OAAO,EACP,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1C,GAAG;QACF,uCAAuC;QACvC,aAAa,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACnD,4CAA4C;QAC5C,kBAAkB,EAAE,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAC9D,CACF,CAAA;IAED,KAAY,eAAe,CACzB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAC7E"}
@@ -0,0 +1,19 @@
1
+ import type { Config, ResolvedRegister, WriteContractSyncErrorType } from '@wagmi/core';
2
+ import type { Compute, ConfigParameter } from '@wagmi/core/internal';
3
+ import { type WriteContractSyncData, type WriteContractSyncMutate, type WriteContractSyncMutateAsync, type WriteContractSyncOptions, type WriteContractSyncVariables } from '@wagmi/core/query';
4
+ import type { Accessor } from 'solid-js';
5
+ import type { Abi } from 'viem';
6
+ import { type UseMutationReturnType } from '../utils/query.js';
7
+ /** https://wagmi.sh/solid/api/primitives/useWriteContractSync */
8
+ export declare function useWriteContractSync<config extends Config = ResolvedRegister['config'], context = unknown>(parameters?: useWriteContractSync.Parameters<config, context>): useWriteContractSync.ReturnType<config, context>;
9
+ export declare namespace useWriteContractSync {
10
+ type Parameters<config extends Config = Config, context = unknown> = Accessor<SolidParameters<config, context>>;
11
+ type ReturnType<config extends Config = Config, context = unknown> = Compute<UseMutationReturnType<WriteContractSyncData, WriteContractSyncErrorType, WriteContractSyncVariables<Abi, string, readonly unknown[], config, config['chains'][number]['id']>, context, WriteContractSyncMutate<config, context>, WriteContractSyncMutateAsync<config, context>> & {
12
+ /** @deprecated use `mutate` instead */
13
+ writeContractSync: WriteContractSyncMutate<config, context>;
14
+ /** @deprecated use `mutateAsync` instead */
15
+ writeContractSyncAsync: WriteContractSyncMutateAsync<config, context>;
16
+ }>;
17
+ type SolidParameters<config extends Config = Config, context = unknown> = Compute<ConfigParameter<config> & WriteContractSyncOptions<config, context>>;
18
+ }
19
+ //# sourceMappingURL=useWriteContractSync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWriteContractSync.d.ts","sourceRoot":"","sources":["../../../src/primitives/useWriteContractSync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,0BAA0B,EAC3B,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAEhC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAE,KAAK,qBAAqB,EAAe,MAAM,mBAAmB,CAAA;AAG3E,iEAAiE;AACjE,wBAAgB,oBAAoB,CAClC,MAAM,SAAS,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAClD,OAAO,GAAG,OAAO,EAEjB,UAAU,GAAE,oBAAoB,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAc,GACxE,oBAAoB,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAclD;AAED,yBAAiB,oBAAoB,CAAC;IACpC,KAAY,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAE9C,KAAY,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,OAAO,CACT,qBAAqB,CACnB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,CACxB,GAAG,EACH,MAAM,EACN,SAAS,OAAO,EAAE,EAClB,MAAM,EACN,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAC/B,EACD,OAAO,EACP,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,4BAA4B,CAAC,MAAM,EAAE,OAAO,CAAC,CAC9C,GAAG;QACF,uCAAuC;QACvC,iBAAiB,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,4CAA4C;QAC5C,sBAAsB,EAAE,4BAA4B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KACtE,CACF,CAAA;IAED,KAAY,eAAe,CACzB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,GAAG,OAAO,IACf,OAAO,CACT,eAAe,CAAC,MAAM,CAAC,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CACpE,CAAA;CACF"}
@@ -1,2 +1,2 @@
1
- export declare const version = "0.0.12";
1
+ export declare const version = "0.0.14";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wagmi/solid",
3
3
  "description": "Solid Primitives for Ethereum",
4
- "version": "0.0.12",
4
+ "version": "0.0.14",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -75,7 +75,7 @@
75
75
  }
76
76
  },
77
77
  "dependencies": {
78
- "@wagmi/connectors": "8.0.7",
78
+ "@wagmi/connectors": "8.0.8",
79
79
  "@wagmi/core": "3.4.7"
80
80
  },
81
81
  "contributors": [
@@ -50,14 +50,28 @@ export { useConnectors } from '../primitives/useConnectors.js'
50
50
 
51
51
  export { useDisconnect } from '../primitives/useDisconnect.js'
52
52
 
53
+ export { useInfiniteReadContracts } from '../primitives/useInfiniteReadContracts.js'
54
+
55
+ export { useReadContract } from '../primitives/useReadContract.js'
56
+
57
+ export { useReadContracts } from '../primitives/useReadContracts.js'
58
+
53
59
  export { useReconnect } from '../primitives/useReconnect.js'
54
60
 
61
+ export { useSimulateContract } from '../primitives/useSimulateContract.js'
62
+
55
63
  export { useSwitchChain } from '../primitives/useSwitchChain.js'
56
64
 
57
65
  export { useSwitchConnection } from '../primitives/useSwitchConnection.js'
58
66
 
59
67
  export { useWatchBlockNumber } from '../primitives/useWatchBlockNumber.js'
60
68
 
69
+ export { useWatchContractEvent } from '../primitives/useWatchContractEvent.js'
70
+
71
+ export { useWriteContract } from '../primitives/useWriteContract.js'
72
+
73
+ export { useWriteContractSync } from '../primitives/useWriteContractSync.js'
74
+
61
75
  ////////////////////////////////////////////////////////////////////////////////
62
76
  // Hydrate
63
77
  ////////////////////////////////////////////////////////////////////////////////
@@ -0,0 +1,123 @@
1
+ import type { DefaultError, QueryKey } from '@tanstack/solid-query'
2
+ import type {
3
+ Config,
4
+ ReadContractsErrorType,
5
+ ResolvedRegister,
6
+ } from '@wagmi/core'
7
+ import type { ConfigParameter, Omit } from '@wagmi/core/internal'
8
+ import {
9
+ type InfiniteReadContractsData,
10
+ type InfiniteReadContractsOptions,
11
+ type InfiniteReadContractsQueryFnData,
12
+ type InfiniteReadContractsQueryKey,
13
+ infiniteReadContractsQueryOptions,
14
+ structuralSharing,
15
+ } from '@wagmi/core/query'
16
+ import type { Accessor } from 'solid-js'
17
+ import { createMemo } from 'solid-js'
18
+ import type { ContractFunctionParameters } from 'viem'
19
+ import {
20
+ type SolidInfiniteQueryParameters,
21
+ type UseInfiniteQueryReturnType,
22
+ useInfiniteQuery,
23
+ } from '../utils/query.js'
24
+ import { useChainId } from './useChainId.js'
25
+ import { useConfig } from './useConfig.js'
26
+
27
+ type InfiniteQueryParameter<
28
+ queryFnData = unknown,
29
+ error = DefaultError,
30
+ data = queryFnData,
31
+ queryData = queryFnData,
32
+ queryKey extends QueryKey = QueryKey,
33
+ pageParam = unknown,
34
+ > = {
35
+ query: Omit<
36
+ SolidInfiniteQueryParameters<
37
+ queryFnData,
38
+ error,
39
+ data,
40
+ queryData,
41
+ queryKey,
42
+ pageParam
43
+ >,
44
+ 'queryFn' | 'queryHash' | 'queryKey' | 'queryKeyHashFn' | 'throwOnError'
45
+ >
46
+ }
47
+
48
+ /** https://wagmi.sh/solid/api/primitives/useInfiniteReadContracts */
49
+ export function useInfiniteReadContracts<
50
+ const contracts extends readonly unknown[],
51
+ allowFailure extends boolean = true,
52
+ config extends Config = ResolvedRegister['config'],
53
+ pageParam = unknown,
54
+ selectData = InfiniteReadContractsData<contracts, allowFailure>,
55
+ >(
56
+ parameters: useInfiniteReadContracts.Parameters<
57
+ contracts,
58
+ allowFailure,
59
+ config,
60
+ pageParam,
61
+ selectData
62
+ >,
63
+ ): useInfiniteReadContracts.ReturnType<contracts, allowFailure, selectData> {
64
+ const config = useConfig(parameters)
65
+ const chainId = useChainId(() => ({ config: config() }))
66
+
67
+ const options = createMemo(() => {
68
+ const { contracts = [], query } = parameters()
69
+ const options = infiniteReadContractsQueryOptions(config(), {
70
+ ...parameters(),
71
+ chainId: chainId(),
72
+ contracts:
73
+ contracts as useInfiniteReadContracts.SolidParameters['contracts'],
74
+ query: query as unknown as SolidInfiniteQueryParameters,
75
+ })
76
+ return {
77
+ ...(query as any),
78
+ ...options,
79
+ initialPageParam: options.initialPageParam,
80
+ structuralSharing: (query as any).structuralSharing ?? structuralSharing,
81
+ }
82
+ })
83
+
84
+ return useInfiniteQuery(options as any) as any
85
+ }
86
+
87
+ export namespace useInfiniteReadContracts {
88
+ export type Parameters<
89
+ contracts extends
90
+ readonly unknown[] = readonly ContractFunctionParameters[],
91
+ allowFailure extends boolean = true,
92
+ config extends Config = Config,
93
+ pageParam = unknown,
94
+ selectData = InfiniteReadContractsData<contracts, allowFailure>,
95
+ > = Accessor<
96
+ SolidParameters<contracts, allowFailure, config, pageParam, selectData>
97
+ >
98
+
99
+ export type ReturnType<
100
+ contracts extends
101
+ readonly unknown[] = readonly ContractFunctionParameters[],
102
+ allowFailure extends boolean = true,
103
+ selectData = InfiniteReadContractsData<contracts, allowFailure>,
104
+ > = UseInfiniteQueryReturnType<selectData, ReadContractsErrorType>
105
+
106
+ export type SolidParameters<
107
+ contracts extends
108
+ readonly unknown[] = readonly ContractFunctionParameters[],
109
+ allowFailure extends boolean = true,
110
+ config extends Config = Config,
111
+ pageParam = unknown,
112
+ selectData = InfiniteReadContractsData<contracts, allowFailure>,
113
+ > = InfiniteReadContractsOptions<contracts, allowFailure, pageParam, config> &
114
+ ConfigParameter<config> &
115
+ InfiniteQueryParameter<
116
+ InfiniteReadContractsQueryFnData<contracts, allowFailure>,
117
+ ReadContractsErrorType,
118
+ selectData,
119
+ InfiniteReadContractsData<contracts, allowFailure>,
120
+ InfiniteReadContractsQueryKey<contracts, allowFailure, pageParam, config>,
121
+ pageParam
122
+ >
123
+ }
@@ -0,0 +1,93 @@
1
+ import type {
2
+ Config,
3
+ ReadContractErrorType,
4
+ ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import type { ConfigParameter, UnionCompute } from '@wagmi/core/internal'
7
+ import {
8
+ type ReadContractData,
9
+ type ReadContractOptions,
10
+ readContractQueryOptions,
11
+ } from '@wagmi/core/query'
12
+ import type { Accessor } from 'solid-js'
13
+ import { createMemo } from 'solid-js'
14
+ import type { Abi, ContractFunctionArgs, ContractFunctionName } from 'viem'
15
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
16
+ import { useChainId } from './useChainId.js'
17
+ import { useConfig } from './useConfig.js'
18
+
19
+ /** https://wagmi.sh/solid/api/primitives/useReadContract */
20
+ export function useReadContract<
21
+ const abi extends Abi | readonly unknown[],
22
+ functionName extends ContractFunctionName<abi, 'pure' | 'view'>,
23
+ const args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
24
+ config extends Config = ResolvedRegister['config'],
25
+ selectData = ReadContractData<abi, functionName, args>,
26
+ >(
27
+ parameters: useReadContract.Parameters<
28
+ abi,
29
+ functionName,
30
+ args,
31
+ config,
32
+ selectData
33
+ > = () => ({}) as any,
34
+ ): useReadContract.ReturnType<abi, functionName, args, selectData> {
35
+ const config = useConfig(parameters)
36
+ const chainId = useChainId(() => ({ config: config() }))
37
+ const options = createMemo(() =>
38
+ readContractQueryOptions(config(), {
39
+ ...(parameters() as any),
40
+ chainId: parameters().chainId ?? chainId(),
41
+ }),
42
+ )
43
+ return useQuery(options) as any
44
+ }
45
+
46
+ export namespace useReadContract {
47
+ export type Parameters<
48
+ abi extends Abi | readonly unknown[] = Abi,
49
+ functionName extends ContractFunctionName<
50
+ abi,
51
+ 'pure' | 'view'
52
+ > = ContractFunctionName<abi, 'pure' | 'view'>,
53
+ args extends ContractFunctionArgs<
54
+ abi,
55
+ 'pure' | 'view',
56
+ functionName
57
+ > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
58
+ config extends Config = Config,
59
+ selectData = ReadContractData<abi, functionName, args>,
60
+ > = Accessor<SolidParameters<abi, functionName, args, config, selectData>>
61
+
62
+ export type ReturnType<
63
+ abi extends Abi | readonly unknown[] = Abi,
64
+ functionName extends ContractFunctionName<
65
+ abi,
66
+ 'pure' | 'view'
67
+ > = ContractFunctionName<abi, 'pure' | 'view'>,
68
+ args extends ContractFunctionArgs<
69
+ abi,
70
+ 'pure' | 'view',
71
+ functionName
72
+ > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
73
+ selectData = ReadContractData<abi, functionName, args>,
74
+ > = UseQueryReturnType<selectData, ReadContractErrorType>
75
+
76
+ export type SolidParameters<
77
+ abi extends Abi | readonly unknown[] = Abi,
78
+ functionName extends ContractFunctionName<
79
+ abi,
80
+ 'pure' | 'view'
81
+ > = ContractFunctionName<abi, 'pure' | 'view'>,
82
+ args extends ContractFunctionArgs<
83
+ abi,
84
+ 'pure' | 'view',
85
+ functionName
86
+ > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
87
+ config extends Config = Config,
88
+ selectData = ReadContractData<abi, functionName, args>,
89
+ > = UnionCompute<
90
+ ReadContractOptions<abi, functionName, args, config, selectData> &
91
+ ConfigParameter<config>
92
+ >
93
+ }
@@ -0,0 +1,82 @@
1
+ import type {
2
+ Config,
3
+ ReadContractsErrorType,
4
+ ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import type { Compute, ConfigParameter } from '@wagmi/core/internal'
7
+ import {
8
+ type ReadContractsData,
9
+ type ReadContractsOptions,
10
+ readContractsQueryOptions,
11
+ } from '@wagmi/core/query'
12
+ import type { Accessor } from 'solid-js'
13
+ import { createMemo } from 'solid-js'
14
+ import type { ContractFunctionParameters } from 'viem'
15
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
16
+ import { useChainId } from './useChainId.js'
17
+ import { useConfig } from './useConfig.js'
18
+
19
+ /** https://wagmi.sh/solid/api/primitives/useReadContracts */
20
+ export function useReadContracts<
21
+ const contracts extends readonly unknown[],
22
+ allowFailure extends boolean = true,
23
+ config extends Config = ResolvedRegister['config'],
24
+ selectData = ReadContractsData<contracts, allowFailure>,
25
+ >(
26
+ parameters: useReadContracts.Parameters<
27
+ contracts,
28
+ allowFailure,
29
+ config,
30
+ selectData
31
+ > = () => ({}),
32
+ ): useReadContracts.ReturnType<contracts, allowFailure, selectData> {
33
+ const config = useConfig(parameters)
34
+ const chainId = useChainId(() => ({ config: config() }))
35
+ const contractsChainId = createMemo(() => {
36
+ const firstChainId = (
37
+ parameters().contracts?.[0] as { chainId?: number } | undefined
38
+ )?.chainId
39
+ if (
40
+ ((parameters().contracts ?? []) as { chainId?: number }[]).every(
41
+ (contract) => contract.chainId === firstChainId,
42
+ )
43
+ )
44
+ return firstChainId
45
+ return undefined
46
+ })
47
+ const options = createMemo(() =>
48
+ readContractsQueryOptions(config(), {
49
+ ...parameters(),
50
+ chainId: contractsChainId() ?? chainId(),
51
+ }),
52
+ )
53
+ return useQuery(options) as any
54
+ }
55
+
56
+ export namespace useReadContracts {
57
+ export type Parameters<
58
+ contracts extends
59
+ readonly unknown[] = readonly ContractFunctionParameters[],
60
+ allowFailure extends boolean = true,
61
+ config extends Config = Config,
62
+ selectData = ReadContractsData<contracts, allowFailure>,
63
+ > = Accessor<SolidParameters<contracts, allowFailure, config, selectData>>
64
+
65
+ export type ReturnType<
66
+ contracts extends
67
+ readonly unknown[] = readonly ContractFunctionParameters[],
68
+ allowFailure extends boolean = true,
69
+ selectData = ReadContractsData<contracts, allowFailure>,
70
+ > = UseQueryReturnType<selectData, ReadContractsErrorType>
71
+
72
+ export type SolidParameters<
73
+ contracts extends
74
+ readonly unknown[] = readonly ContractFunctionParameters[],
75
+ allowFailure extends boolean = true,
76
+ config extends Config = Config,
77
+ selectData = ReadContractsData<contracts, allowFailure>,
78
+ > = Compute<
79
+ ReadContractsOptions<contracts, allowFailure, config, selectData> &
80
+ ConfigParameter<config>
81
+ >
82
+ }