@wagmi/core
Version:
VanillaJS library for Ethereum
23 lines • 1.1 kB
JavaScript
import { prepareTransactionRequest, } from '../actions/prepareTransactionRequest.js';
import { filterQueryOptions } from './utils.js';
export function prepareTransactionRequestQueryOptions(config, options = {}) {
const hasCalls = Array.isArray(options.calls) && options.calls.length > 0;
return {
...options.query,
enabled: Boolean((options.to || hasCalls) && (options.query?.enabled ?? true)),
queryFn: async (context) => {
const [, { scopeKey: _, ...parameters }] = context.queryKey;
const hasCalls = Array.isArray(parameters.calls) && parameters.calls.length > 0;
if (!parameters.to && !hasCalls)
throw new Error('to or calls is required');
return prepareTransactionRequest(config, {
...parameters,
});
},
queryKey: prepareTransactionRequestQueryKey(options),
};
}
export function prepareTransactionRequestQueryKey(options = {}) {
return ['prepareTransactionRequest', filterQueryOptions(options)];
}
//# sourceMappingURL=prepareTransactionRequest.js.map