@wagmi/vue 0.0.1 → 0.0.3

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 (97) hide show
  1. package/README.md +14 -0
  2. package/dist/esm/composables/useBalance.js +24 -0
  3. package/dist/esm/composables/useBalance.js.map +1 -0
  4. package/dist/esm/composables/useEnsAddress.js +24 -0
  5. package/dist/esm/composables/useEnsAddress.js.map +1 -0
  6. package/dist/esm/composables/useEnsAvatar.js +24 -0
  7. package/dist/esm/composables/useEnsAvatar.js.map +1 -0
  8. package/dist/esm/composables/useEnsName.js +24 -0
  9. package/dist/esm/composables/useEnsName.js.map +1 -0
  10. package/dist/esm/composables/useEstimateGas.js +29 -0
  11. package/dist/esm/composables/useEstimateGas.js.map +1 -0
  12. package/dist/esm/composables/useReadContract.js +28 -0
  13. package/dist/esm/composables/useReadContract.js.map +1 -0
  14. package/dist/esm/composables/useSendTransaction.js +19 -0
  15. package/dist/esm/composables/useSendTransaction.js.map +1 -0
  16. package/dist/esm/composables/useSignMessage.js +20 -0
  17. package/dist/esm/composables/useSignMessage.js.map +1 -0
  18. package/dist/esm/composables/useSignTypedData.js +19 -0
  19. package/dist/esm/composables/useSignTypedData.js.map +1 -0
  20. package/dist/esm/composables/useSimulateContract.js +34 -0
  21. package/dist/esm/composables/useSimulateContract.js.map +1 -0
  22. package/dist/esm/composables/useTransaction.js +29 -0
  23. package/dist/esm/composables/useTransaction.js.map +1 -0
  24. package/dist/esm/composables/useTransactionReceipt.js +31 -0
  25. package/dist/esm/composables/useTransactionReceipt.js.map +1 -0
  26. package/dist/esm/composables/useWaitForTransactionReceipt.js +28 -0
  27. package/dist/esm/composables/useWaitForTransactionReceipt.js.map +1 -0
  28. package/dist/esm/composables/useWriteContract.js +19 -0
  29. package/dist/esm/composables/useWriteContract.js.map +1 -0
  30. package/dist/esm/exports/index.js +14 -0
  31. package/dist/esm/exports/index.js.map +1 -1
  32. package/dist/esm/nuxt/module.js +41 -7
  33. package/dist/esm/nuxt/module.js.map +1 -1
  34. package/dist/esm/nuxt/runtime/composables.js +2 -0
  35. package/dist/esm/nuxt/runtime/composables.js.map +1 -0
  36. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  37. package/dist/esm/utils/query.js.map +1 -1
  38. package/dist/esm/version.js +1 -1
  39. package/dist/types/composables/useBalance.d.ts +12 -0
  40. package/dist/types/composables/useBalance.d.ts.map +1 -0
  41. package/dist/types/composables/useEnsAddress.d.ts +11 -0
  42. package/dist/types/composables/useEnsAddress.d.ts.map +1 -0
  43. package/dist/types/composables/useEnsAvatar.d.ts +11 -0
  44. package/dist/types/composables/useEnsAvatar.d.ts.map +1 -0
  45. package/dist/types/composables/useEnsName.d.ts +11 -0
  46. package/dist/types/composables/useEnsName.d.ts.map +1 -0
  47. package/dist/types/composables/useEstimateGas.d.ts +10 -0
  48. package/dist/types/composables/useEstimateGas.d.ts.map +1 -0
  49. package/dist/types/composables/useReadContract.d.ts +12 -0
  50. package/dist/types/composables/useReadContract.d.ts.map +1 -0
  51. package/dist/types/composables/useSendTransaction.d.ts +15 -0
  52. package/dist/types/composables/useSendTransaction.d.ts.map +1 -0
  53. package/dist/types/composables/useSignMessage.d.ts +15 -0
  54. package/dist/types/composables/useSignMessage.d.ts.map +1 -0
  55. package/dist/types/composables/useSignTypedData.d.ts +15 -0
  56. package/dist/types/composables/useSignTypedData.d.ts.map +1 -0
  57. package/dist/types/composables/useSimulateContract.d.ts +12 -0
  58. package/dist/types/composables/useSimulateContract.d.ts.map +1 -0
  59. package/dist/types/composables/useTransaction.d.ts +11 -0
  60. package/dist/types/composables/useTransaction.d.ts.map +1 -0
  61. package/dist/types/composables/useTransactionReceipt.d.ts +12 -0
  62. package/dist/types/composables/useTransactionReceipt.d.ts.map +1 -0
  63. package/dist/types/composables/useWaitForTransactionReceipt.d.ts +11 -0
  64. package/dist/types/composables/useWaitForTransactionReceipt.d.ts.map +1 -0
  65. package/dist/types/composables/useWriteContract.d.ts +15 -0
  66. package/dist/types/composables/useWriteContract.d.ts.map +1 -0
  67. package/dist/types/exports/index.d.ts +14 -0
  68. package/dist/types/exports/index.d.ts.map +1 -1
  69. package/dist/types/nuxt/module.d.ts.map +1 -1
  70. package/dist/types/nuxt/runtime/composables.d.ts +2 -0
  71. package/dist/types/nuxt/runtime/composables.d.ts.map +1 -0
  72. package/dist/types/types/ref.d.ts +2 -2
  73. package/dist/types/types/ref.d.ts.map +1 -1
  74. package/dist/types/utils/query.d.ts +3 -3
  75. package/dist/types/utils/query.d.ts.map +1 -1
  76. package/dist/types/version.d.ts +1 -1
  77. package/package.json +3 -3
  78. package/src/composables/useBalance.ts +69 -0
  79. package/src/composables/useEnsAddress.ts +65 -0
  80. package/src/composables/useEnsAvatar.ts +65 -0
  81. package/src/composables/useEnsName.ts +65 -0
  82. package/src/composables/useEstimateGas.ts +83 -0
  83. package/src/composables/useReadContract.ts +121 -0
  84. package/src/composables/useSendTransaction.ts +76 -0
  85. package/src/composables/useSignMessage.ts +63 -0
  86. package/src/composables/useSignTypedData.ts +64 -0
  87. package/src/composables/useSimulateContract.ts +148 -0
  88. package/src/composables/useTransaction.ts +88 -0
  89. package/src/composables/useTransactionReceipt.ts +85 -0
  90. package/src/composables/useWaitForTransactionReceipt.ts +81 -0
  91. package/src/composables/useWriteContract.ts +85 -0
  92. package/src/exports/index.ts +84 -0
  93. package/src/nuxt/module.ts +42 -8
  94. package/src/nuxt/runtime/composables.ts +1 -0
  95. package/src/types/ref.ts +3 -3
  96. package/src/utils/query.ts +5 -3
  97. package/src/version.ts +1 -1
@@ -0,0 +1,65 @@
1
+ import type {
2
+ Config,
3
+ GetEnsAddressErrorType,
4
+ ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import { type Evaluate } from '@wagmi/core/internal'
7
+ import {
8
+ type GetEnsAddressData,
9
+ type GetEnsAddressOptions,
10
+ type GetEnsAddressQueryFnData,
11
+ type GetEnsAddressQueryKey,
12
+ getEnsAddressQueryOptions,
13
+ } from '@wagmi/core/query'
14
+ import { computed } from 'vue'
15
+
16
+ import type { ConfigParameter, QueryParameter } from '../types/properties.js'
17
+ import type { DeepMaybeRef } from '../types/ref.js'
18
+ import { deepUnref } from '../utils/cloneDeep.js'
19
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
20
+ import { useChainId } from './useChainId.js'
21
+ import { useConfig } from './useConfig.js'
22
+
23
+ export type UseEnsAddressParameters<
24
+ config extends Config = Config,
25
+ selectData = GetEnsAddressData,
26
+ > = Evaluate<
27
+ DeepMaybeRef<
28
+ GetEnsAddressOptions<config> &
29
+ ConfigParameter<config> &
30
+ QueryParameter<
31
+ GetEnsAddressQueryFnData,
32
+ GetEnsAddressErrorType,
33
+ selectData,
34
+ GetEnsAddressQueryKey<config>
35
+ >
36
+ >
37
+ >
38
+
39
+ export type UseEnsAddressReturnType<selectData = GetEnsAddressData> =
40
+ UseQueryReturnType<selectData, GetEnsAddressErrorType>
41
+
42
+ /** https://wagmi.sh/vue/api/composables/useEnsAddress */
43
+ export function useEnsAddress<
44
+ config extends Config = ResolvedRegister['config'],
45
+ selectData = GetEnsAddressData,
46
+ >(
47
+ parameters_: UseEnsAddressParameters<config, selectData> = {},
48
+ ): UseEnsAddressReturnType<selectData> {
49
+ const parameters = computed(() => deepUnref(parameters_))
50
+
51
+ const config = useConfig(parameters)
52
+ const configChainId = useChainId({ config })
53
+
54
+ const queryOptions = computed(() => {
55
+ const { chainId = configChainId.value, name, query = {} } = parameters.value
56
+ const options = getEnsAddressQueryOptions(config, {
57
+ ...parameters.value,
58
+ chainId,
59
+ })
60
+ const enabled = Boolean(name && (query.enabled ?? true))
61
+ return { ...query, ...options, enabled }
62
+ })
63
+
64
+ return useQuery(queryOptions as any) as UseEnsAddressReturnType<selectData>
65
+ }
@@ -0,0 +1,65 @@
1
+ import type {
2
+ Config,
3
+ GetEnsAvatarErrorType,
4
+ ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import { type Evaluate } from '@wagmi/core/internal'
7
+ import {
8
+ type GetEnsAvatarData,
9
+ type GetEnsAvatarOptions,
10
+ type GetEnsAvatarQueryFnData,
11
+ type GetEnsAvatarQueryKey,
12
+ getEnsAvatarQueryOptions,
13
+ } from '@wagmi/core/query'
14
+ import { computed } from 'vue'
15
+
16
+ import type { ConfigParameter, QueryParameter } from '../types/properties.js'
17
+ import type { DeepMaybeRef } from '../types/ref.js'
18
+ import { deepUnref } from '../utils/cloneDeep.js'
19
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
20
+ import { useChainId } from './useChainId.js'
21
+ import { useConfig } from './useConfig.js'
22
+
23
+ export type UseEnsAvatarParameters<
24
+ config extends Config = Config,
25
+ selectData = GetEnsAvatarData,
26
+ > = Evaluate<
27
+ DeepMaybeRef<
28
+ GetEnsAvatarOptions<config> &
29
+ ConfigParameter<config> &
30
+ QueryParameter<
31
+ GetEnsAvatarQueryFnData,
32
+ GetEnsAvatarErrorType,
33
+ selectData,
34
+ GetEnsAvatarQueryKey<config>
35
+ >
36
+ >
37
+ >
38
+
39
+ export type UseEnsAvatarReturnType<selectData = GetEnsAvatarData> =
40
+ UseQueryReturnType<selectData, GetEnsAvatarErrorType>
41
+
42
+ /** https://wagmi.sh/vue/api/composables/useEnsAvatar */
43
+ export function useEnsAvatar<
44
+ config extends Config = ResolvedRegister['config'],
45
+ selectData = GetEnsAvatarData,
46
+ >(
47
+ parameters_: UseEnsAvatarParameters<config, selectData> = {},
48
+ ): UseEnsAvatarReturnType<selectData> {
49
+ const parameters = computed(() => deepUnref(parameters_))
50
+
51
+ const config = useConfig(parameters)
52
+ const configChainId = useChainId({ config })
53
+
54
+ const queryOptions = computed(() => {
55
+ const { chainId = configChainId.value, name, query = {} } = parameters.value
56
+ const options = getEnsAvatarQueryOptions(config, {
57
+ ...parameters.value,
58
+ chainId,
59
+ })
60
+ const enabled = Boolean(name && (query.enabled ?? true))
61
+ return { ...query, ...options, enabled }
62
+ })
63
+
64
+ return useQuery(queryOptions as any) as UseEnsAvatarReturnType<selectData>
65
+ }
@@ -0,0 +1,65 @@
1
+ import type { Config, GetEnsNameErrorType, ResolvedRegister } from '@wagmi/core'
2
+ import { type Evaluate } from '@wagmi/core/internal'
3
+ import {
4
+ type GetEnsNameData,
5
+ type GetEnsNameOptions,
6
+ type GetEnsNameQueryFnData,
7
+ type GetEnsNameQueryKey,
8
+ getEnsNameQueryOptions,
9
+ } from '@wagmi/core/query'
10
+
11
+ import { computed } from 'vue'
12
+ import type { ConfigParameter, QueryParameter } from '../types/properties.js'
13
+ import type { DeepMaybeRef } from '../types/ref.js'
14
+ import { deepUnref } from '../utils/cloneDeep.js'
15
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
16
+ import { useChainId } from './useChainId.js'
17
+ import { useConfig } from './useConfig.js'
18
+
19
+ export type UseEnsNameParameters<
20
+ config extends Config = Config,
21
+ selectData = GetEnsNameData,
22
+ > = Evaluate<
23
+ DeepMaybeRef<
24
+ GetEnsNameOptions<config> &
25
+ ConfigParameter<config> &
26
+ QueryParameter<
27
+ GetEnsNameQueryFnData,
28
+ GetEnsNameErrorType,
29
+ selectData,
30
+ GetEnsNameQueryKey<config>
31
+ >
32
+ >
33
+ >
34
+
35
+ export type UseEnsNameReturnType<selectData = GetEnsNameData> =
36
+ UseQueryReturnType<selectData, GetEnsNameErrorType>
37
+
38
+ /** https://wagmi.sh/vue/api/composables/useEnsName */
39
+ export function useEnsName<
40
+ config extends Config = ResolvedRegister['config'],
41
+ selectData = GetEnsNameData,
42
+ >(
43
+ parameters_: UseEnsNameParameters<config, selectData> = {},
44
+ ): UseEnsNameReturnType<selectData> {
45
+ const parameters = computed(() => deepUnref(parameters_))
46
+
47
+ const config = useConfig(parameters)
48
+ const configChainId = useChainId({ config })
49
+
50
+ const queryOptions = computed(() => {
51
+ const {
52
+ address,
53
+ chainId = configChainId.value,
54
+ query = {},
55
+ } = parameters.value
56
+ const options = getEnsNameQueryOptions(config, {
57
+ ...parameters.value,
58
+ chainId,
59
+ })
60
+ const enabled = Boolean(address && (query.enabled ?? true))
61
+ return { ...query, ...options, enabled }
62
+ })
63
+
64
+ return useQuery(queryOptions as any) as UseEnsNameReturnType<selectData>
65
+ }
@@ -0,0 +1,83 @@
1
+ import type {
2
+ Config,
3
+ EstimateGasErrorType,
4
+ ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import {
7
+ type EstimateGasData,
8
+ type EstimateGasOptions,
9
+ type EstimateGasQueryFnData,
10
+ type EstimateGasQueryKey,
11
+ estimateGasQueryOptions,
12
+ } from '@wagmi/core/query'
13
+ import { computed } from 'vue'
14
+
15
+ import type { ConfigParameter, QueryParameter } from '../types/properties.js'
16
+ import type { DeepMaybeRef } from '../types/ref.js'
17
+ import { deepUnref } from '../utils/cloneDeep.js'
18
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
19
+ import { useChainId } from './useChainId.js'
20
+ import { useConfig } from './useConfig.js'
21
+ import { useConnectorClient } from './useConnectorClient.js'
22
+
23
+ export type UseEstimateGasParameters<
24
+ config extends Config = Config,
25
+ chainId extends config['chains'][number]['id'] | undefined = undefined,
26
+ selectData = EstimateGasData,
27
+ > = DeepMaybeRef<
28
+ EstimateGasOptions<config, chainId> &
29
+ ConfigParameter<config> &
30
+ QueryParameter<
31
+ EstimateGasQueryFnData,
32
+ EstimateGasErrorType,
33
+ selectData,
34
+ EstimateGasQueryKey<config, chainId>
35
+ >
36
+ >
37
+
38
+ export type UseEstimateGasReturnType<selectData = EstimateGasData> =
39
+ UseQueryReturnType<selectData, EstimateGasErrorType>
40
+
41
+ /** https://wagmi.sh/react/api/hooks/useEstimateGas */
42
+ export function useEstimateGas<
43
+ config extends Config = ResolvedRegister['config'],
44
+ chainId extends config['chains'][number]['id'] | undefined = undefined,
45
+ selectData = EstimateGasData,
46
+ >(
47
+ parameters?: UseEstimateGasParameters<config, chainId, selectData>,
48
+ ): UseEstimateGasReturnType<selectData>
49
+
50
+ export function useEstimateGas(
51
+ parameters_: UseEstimateGasParameters = {},
52
+ ): UseEstimateGasReturnType {
53
+ const parameters = computed(() => deepUnref(parameters_))
54
+
55
+ const config = useConfig(parameters)
56
+ const { data: connectorClient } = useConnectorClient(
57
+ computed(() => ({
58
+ connector: parameters.value.connector,
59
+ query: { enabled: parameters.value.account === undefined },
60
+ })),
61
+ )
62
+
63
+ const configChainId = useChainId({ config })
64
+
65
+ const queryOptions = computed(() => {
66
+ const {
67
+ account = connectorClient?.value?.account,
68
+ chainId = configChainId.value,
69
+ connector,
70
+ query = {},
71
+ } = parameters.value
72
+ const options = estimateGasQueryOptions(config, {
73
+ ...parameters.value,
74
+ account,
75
+ chainId,
76
+ connector,
77
+ })
78
+ const enabled = Boolean((account || connector) && (query.enabled ?? true))
79
+ return { ...query, ...options, enabled }
80
+ })
81
+
82
+ return useQuery(queryOptions)
83
+ }
@@ -0,0 +1,121 @@
1
+ import {
2
+ type Config,
3
+ type ReadContractErrorType,
4
+ type ResolvedRegister,
5
+ } from '@wagmi/core'
6
+ import { type UnionEvaluate } from '@wagmi/core/internal'
7
+ import {
8
+ type ReadContractData,
9
+ type ReadContractOptions,
10
+ type ReadContractQueryFnData,
11
+ type ReadContractQueryKey,
12
+ readContractQueryOptions,
13
+ structuralSharing,
14
+ } from '@wagmi/core/query'
15
+ import {
16
+ type Abi,
17
+ type ContractFunctionArgs,
18
+ type ContractFunctionName,
19
+ } from 'viem'
20
+
21
+ import { computed } from 'vue'
22
+ import type { ConfigParameter, QueryParameter } from '../types/properties.js'
23
+ import type { DeepMaybeRef } from '../types/ref.js'
24
+ import { deepUnref } from '../utils/cloneDeep.js'
25
+ import { type UseQueryReturnType, useQuery } from '../utils/query.js'
26
+ import { useChainId } from './useChainId.js'
27
+ import { useConfig } from './useConfig.js'
28
+
29
+ export type UseReadContractParameters<
30
+ abi extends Abi | readonly unknown[] = Abi,
31
+ functionName extends ContractFunctionName<
32
+ abi,
33
+ 'pure' | 'view'
34
+ > = ContractFunctionName<abi, 'pure' | 'view'>,
35
+ args extends ContractFunctionArgs<
36
+ abi,
37
+ 'pure' | 'view',
38
+ functionName
39
+ > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
40
+ config extends Config = Config,
41
+ selectData = ReadContractData<abi, functionName, args>,
42
+ > = UnionEvaluate<
43
+ DeepMaybeRef<
44
+ ReadContractOptions<abi, functionName, args, config> &
45
+ ConfigParameter<config> &
46
+ QueryParameter<
47
+ ReadContractQueryFnData<abi, functionName, args>,
48
+ ReadContractErrorType,
49
+ selectData,
50
+ ReadContractQueryKey<abi, functionName, args, config>
51
+ >
52
+ >
53
+ >
54
+
55
+ export type UseReadContractReturnType<
56
+ abi extends Abi | readonly unknown[] = Abi,
57
+ functionName extends ContractFunctionName<
58
+ abi,
59
+ 'pure' | 'view'
60
+ > = ContractFunctionName<abi, 'pure' | 'view'>,
61
+ args extends ContractFunctionArgs<
62
+ abi,
63
+ 'pure' | 'view',
64
+ functionName
65
+ > = ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
66
+ selectData = ReadContractData<abi, functionName, args>,
67
+ > = UseQueryReturnType<selectData, ReadContractErrorType>
68
+
69
+ /** https://wagmi.sh/vue/api/hooks/useReadContract */
70
+ export function useReadContract<
71
+ const abi extends Abi | readonly unknown[],
72
+ functionName extends ContractFunctionName<abi, 'pure' | 'view'>,
73
+ args extends ContractFunctionArgs<abi, 'pure' | 'view', functionName>,
74
+ config extends Config = ResolvedRegister['config'],
75
+ selectData = ReadContractData<abi, functionName, args>,
76
+ >(
77
+ parameters_: UseReadContractParameters<
78
+ abi,
79
+ functionName,
80
+ args,
81
+ config,
82
+ selectData
83
+ > = {} as any,
84
+ ): UseReadContractReturnType<abi, functionName, args, selectData> {
85
+ const parameters = computed(() =>
86
+ deepUnref(parameters_),
87
+ ) as UseReadContractParameters
88
+
89
+ const config = useConfig(parameters)
90
+ const configChainId = useChainId({ config })
91
+
92
+ const queryOptions = computed(() => {
93
+ const {
94
+ abi,
95
+ address,
96
+ chainId = configChainId.value,
97
+ functionName,
98
+ query = {},
99
+ } = parameters.value as any
100
+ const options = readContractQueryOptions<config, abi, functionName, args>(
101
+ config as config,
102
+ { ...(parameters.value as any), chainId },
103
+ )
104
+ const enabled = Boolean(
105
+ address && abi && functionName && (query.enabled ?? true),
106
+ )
107
+ return {
108
+ ...query,
109
+ ...options,
110
+ enabled,
111
+ structuralSharing: query.structuralSharing ?? structuralSharing,
112
+ }
113
+ })
114
+
115
+ return useQuery(queryOptions) as UseReadContractReturnType<
116
+ abi,
117
+ functionName,
118
+ args,
119
+ selectData
120
+ >
121
+ }
@@ -0,0 +1,76 @@
1
+ import { useMutation } from '@tanstack/vue-query'
2
+ import type {
3
+ Config,
4
+ ResolvedRegister,
5
+ SendTransactionErrorType,
6
+ } from '@wagmi/core'
7
+ import type { Evaluate } from '@wagmi/core/internal'
8
+ import {
9
+ type SendTransactionData,
10
+ type SendTransactionMutate,
11
+ type SendTransactionMutateAsync,
12
+ type SendTransactionVariables,
13
+ sendTransactionMutationOptions,
14
+ } from '@wagmi/core/query'
15
+
16
+ import type { ConfigParameter } from '../types/properties.js'
17
+ import type {
18
+ UseMutationParameters,
19
+ UseMutationReturnType,
20
+ } from '../utils/query.js'
21
+ import { useConfig } from './useConfig.js'
22
+
23
+ export type UseSendTransactionParameters<
24
+ config extends Config = Config,
25
+ context = unknown,
26
+ > = Evaluate<
27
+ ConfigParameter<config> & {
28
+ mutation?:
29
+ | UseMutationParameters<
30
+ SendTransactionData,
31
+ SendTransactionErrorType,
32
+ SendTransactionVariables<config, config['chains'][number]['id']>,
33
+ context
34
+ >
35
+ | undefined
36
+ }
37
+ >
38
+
39
+ export type UseSendTransactionReturnType<
40
+ config extends Config = Config,
41
+ context = unknown,
42
+ > = Evaluate<
43
+ UseMutationReturnType<
44
+ SendTransactionData,
45
+ SendTransactionErrorType,
46
+ SendTransactionVariables<config, config['chains'][number]['id']>,
47
+ context
48
+ > & {
49
+ sendTransaction: SendTransactionMutate<config, context>
50
+ sendTransactionAsync: SendTransactionMutateAsync<config, context>
51
+ }
52
+ >
53
+
54
+ /** https://wagmi.sh/vue/api/composables/useSendTransaction */
55
+ export function useSendTransaction<
56
+ config extends Config = ResolvedRegister['config'],
57
+ context = unknown,
58
+ >(
59
+ parameters: UseSendTransactionParameters<config, context> = {},
60
+ ): UseSendTransactionReturnType<config, context> {
61
+ const { mutation } = parameters
62
+
63
+ const config = useConfig(parameters)
64
+
65
+ const mutationOptions = sendTransactionMutationOptions(config)
66
+ const { mutate, mutateAsync, ...result } = useMutation({
67
+ ...mutation,
68
+ ...mutationOptions,
69
+ })
70
+
71
+ return {
72
+ ...result,
73
+ sendTransaction: mutate,
74
+ sendTransactionAsync: mutateAsync,
75
+ } as UseSendTransactionReturnType<config, context>
76
+ }
@@ -0,0 +1,63 @@
1
+ import { type SignMessageErrorType } from '@wagmi/core'
2
+ import type { Evaluate } from '@wagmi/core/internal'
3
+ import {
4
+ type SignMessageData,
5
+ type SignMessageMutate,
6
+ type SignMessageMutateAsync,
7
+ type SignMessageVariables,
8
+ signMessageMutationOptions,
9
+ } from '@wagmi/core/query'
10
+
11
+ import type { ConfigParameter } from '../types/properties.js'
12
+ import {
13
+ type UseMutationParameters,
14
+ type UseMutationReturnType,
15
+ useMutation,
16
+ } from '../utils/query.js'
17
+ import { useConfig } from './useConfig.js'
18
+
19
+ export type UseSignMessageParameters<context = unknown> = Evaluate<
20
+ ConfigParameter & {
21
+ mutation?:
22
+ | UseMutationParameters<
23
+ SignMessageData,
24
+ SignMessageErrorType,
25
+ SignMessageVariables,
26
+ context
27
+ >
28
+ | undefined
29
+ }
30
+ >
31
+
32
+ export type UseSignMessageReturnType<context = unknown> = Evaluate<
33
+ UseMutationReturnType<
34
+ SignMessageData,
35
+ SignMessageErrorType,
36
+ SignMessageVariables,
37
+ context
38
+ > & {
39
+ signMessage: SignMessageMutate<context>
40
+ signMessageAsync: SignMessageMutateAsync<context>
41
+ }
42
+ >
43
+
44
+ /** https://wagmi.sh/vue/api/composables/useSignMessage */
45
+ export function useSignMessage<context = unknown>(
46
+ parameters: UseSignMessageParameters<context> = {},
47
+ ): UseSignMessageReturnType<context> {
48
+ const { mutation } = parameters
49
+
50
+ const config = useConfig(parameters)
51
+
52
+ const mutationOptions = signMessageMutationOptions(config)
53
+ const { mutate, mutateAsync, ...result } = useMutation({
54
+ ...mutation,
55
+ ...mutationOptions,
56
+ })
57
+
58
+ return {
59
+ ...result,
60
+ signMessage: mutate,
61
+ signMessageAsync: mutateAsync,
62
+ }
63
+ }
@@ -0,0 +1,64 @@
1
+ import type { SignTypedDataErrorType } from '@wagmi/core'
2
+ import type { Evaluate } from '@wagmi/core/internal'
3
+ import {
4
+ type SignTypedDataData,
5
+ type SignTypedDataMutate,
6
+ type SignTypedDataMutateAsync,
7
+ type SignTypedDataVariables,
8
+ signTypedDataMutationOptions,
9
+ } from '@wagmi/core/query'
10
+
11
+ import type { ConfigParameter } from '../types/properties.js'
12
+ import {
13
+ type UseMutationParameters,
14
+ type UseMutationReturnType,
15
+ useMutation,
16
+ } from '../utils/query.js'
17
+ import { useConfig } from './useConfig.js'
18
+
19
+ export type UseSignTypedDataParameters<context = unknown> = Evaluate<
20
+ ConfigParameter & {
21
+ mutation?:
22
+ | UseMutationParameters<
23
+ SignTypedDataData,
24
+ SignTypedDataErrorType,
25
+ SignTypedDataVariables,
26
+ context
27
+ >
28
+ | undefined
29
+ }
30
+ >
31
+
32
+ export type UseSignTypedDataReturnType<context = unknown> = Evaluate<
33
+ UseMutationReturnType<
34
+ SignTypedDataData,
35
+ SignTypedDataErrorType,
36
+ SignTypedDataVariables,
37
+ context
38
+ > & {
39
+ signTypedData: SignTypedDataMutate<context>
40
+ signTypedDataAsync: SignTypedDataMutateAsync<context>
41
+ }
42
+ >
43
+
44
+ /** https://wagmi.sh/vue/api/composables/useSignTypedData */
45
+ export function useSignTypedData<context = unknown>(
46
+ parameters: UseSignTypedDataParameters<context> = {},
47
+ ): UseSignTypedDataReturnType<context> {
48
+ const { mutation } = parameters
49
+
50
+ const config = useConfig(parameters)
51
+
52
+ const mutationOptions = signTypedDataMutationOptions(config)
53
+ const { mutate, mutateAsync, ...result } = useMutation({
54
+ ...mutation,
55
+ ...mutationOptions,
56
+ })
57
+
58
+ type Return = UseSignTypedDataReturnType<context>
59
+ return {
60
+ ...result,
61
+ signTypedData: mutate as Return['signTypedData'],
62
+ signTypedDataAsync: mutateAsync as Return['signTypedDataAsync'],
63
+ }
64
+ }