Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .changeset/quiet-lions-jump.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
'@wagmi/core': patch
'wagmi': patch
---

Fixed Tempo types so transaction override parameters are optional.
37 changes: 37 additions & 0 deletions packages/core/src/tempo/actions/amm.test-d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import { createConfig, http } from '@wagmi/core'
import { defineChain } from 'viem'
import { tempoLocalnet } from 'viem/chains'
import { test } from 'vitest'
import * as amm from './amm.js'

const tempo = defineChain({ ...tempoLocalnet, id: 1337 as number })
const tokenA = '0x20c0000000000000000000000000000000000001'
const tokenB = '0x20c0000000000000000000000000000000000002'
const to = '0xd2135CfB216b74109775236E36d4b433F1DF507B'

const config = createConfig({
chains: [tempo],
transports: { [tempo.id]: http() },
})

test('mintSync accepts optional transaction overrides', () => {
const chainId = tempo.id

amm.mintSync(config, {
chainId,
feePayer: true,
to,
userTokenAddress: tokenA,
validatorTokenAddress: tokenB,
validatorTokenAmount: 1_000_000n,
})

// @ts-expect-error required action parameters stay required
amm.mintSync(config, {
chainId,
feePayer: true,
to,
validatorTokenAddress: tokenB,
validatorTokenAmount: 1_000_000n,
})
})
34 changes: 25 additions & 9 deletions packages/core/src/tempo/actions/amm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,11 @@ import type {
ConnectorParameter,
} from '../../types/properties.js'
import type { UnionLooseOmit } from '../../types/utils.js'
import type { QueryOptions, QueryParameter } from './utils.js'
import type {
OptionalTransactionOverrides,
QueryOptions,
QueryParameter,
} from './utils.js'
import { filterQueryOptions } from './utils.js'

/**
Expand Down Expand Up @@ -257,7 +261,9 @@ export declare namespace rebalanceSwap {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.rebalanceSwap.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.amm.rebalanceSwap.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -314,9 +320,11 @@ export declare namespace rebalanceSwapSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.rebalanceSwapSync.Parameters<
config['chains'][number],
Account
OptionalTransactionOverrides<
Actions.amm.rebalanceSwapSync.Parameters<
config['chains'][number],
Account
>
>,
'chain'
>
Expand Down Expand Up @@ -374,7 +382,9 @@ export declare namespace mint {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.mint.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.amm.mint.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -431,7 +441,9 @@ export declare namespace mintSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.mintSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.amm.mintSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -488,7 +500,9 @@ export declare namespace burn {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.burn.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.amm.burn.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -545,7 +559,9 @@ export declare namespace burnSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.amm.burnSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.amm.burnSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down
36 changes: 36 additions & 0 deletions packages/core/src/tempo/actions/dex.test-d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { createConfig, http } from '@wagmi/core'
import { defineChain } from 'viem'
import { tempoLocalnet } from 'viem/chains'
import { test } from 'vitest'
import * as dex from './dex.js'

const tempo = defineChain({ ...tempoLocalnet, id: 1337 as number })
const tokenA = '0x20c0000000000000000000000000000000000001'
const tokenB = '0x20c0000000000000000000000000000000000002'

const config = createConfig({
chains: [tempo],
transports: { [tempo.id]: http() },
})

test('buySync accepts optional transaction overrides', () => {
const chainId = tempo.id

dex.buySync(config, {
amountOut: 1_000_000n,
chainId,
feePayer: true,
maxAmountIn: 1_000_000n,
tokenIn: tokenA,
tokenOut: tokenB,
})

// @ts-expect-error required action parameters stay required
dex.buySync(config, {
chainId,
feePayer: true,
maxAmountIn: 1_000_000n,
tokenIn: tokenA,
tokenOut: tokenB,
})
})
73 changes: 56 additions & 17 deletions packages/core/src/tempo/actions/dex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,11 @@ import type {
ConnectorParameter,
} from '../../types/properties.js'
import type { PartialBy, UnionLooseOmit } from '../../types/utils.js'
import type { QueryOptions, QueryParameter } from './utils.js'
import type {
OptionalTransactionOverrides,
QueryOptions,
QueryParameter,
} from './utils.js'

/**
* Buys a specific amount of tokens.
Expand Down Expand Up @@ -57,7 +61,9 @@ export declare namespace buy {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.buy.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.buy.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -117,7 +123,9 @@ export declare namespace buySync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.buySync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.buySync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -171,7 +179,9 @@ export declare namespace cancel {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.cancel.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.cancel.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -228,7 +238,9 @@ export declare namespace cancelSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.cancelSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.cancelSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -285,7 +297,9 @@ export declare namespace cancelStale {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.cancelStale.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.cancelStale.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -342,7 +356,12 @@ export declare namespace cancelStaleSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.cancelStaleSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.cancelStaleSync.Parameters<
config['chains'][number],
Account
>
>,
'chain'
>

Expand Down Expand Up @@ -396,7 +415,9 @@ export declare namespace createPair {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.createPair.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.createPair.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -453,7 +474,9 @@ export declare namespace createPairSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.createPairSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.createPairSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1086,7 +1109,9 @@ export declare namespace place {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.place.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.place.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1144,7 +1169,9 @@ export declare namespace placeFlip {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.placeFlip.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.placeFlip.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1205,7 +1232,9 @@ export declare namespace placeFlipSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.placeFlipSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.placeFlipSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1265,7 +1294,9 @@ export declare namespace placeSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.placeSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.placeSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1322,7 +1353,9 @@ export declare namespace sell {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.sell.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.sell.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1382,7 +1415,9 @@ export declare namespace sellSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.sellSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.sellSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1617,7 +1652,9 @@ export declare namespace withdraw {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.withdraw.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.withdraw.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down Expand Up @@ -1675,7 +1712,9 @@ export declare namespace withdrawSync {
export type Parameters<config extends Config> = ChainIdParameter<config> &
ConnectorParameter &
UnionLooseOmit<
Actions.dex.withdrawSync.Parameters<config['chains'][number], Account>,
OptionalTransactionOverrides<
Actions.dex.withdrawSync.Parameters<config['chains'][number], Account>
>,
'chain'
>

Expand Down
29 changes: 29 additions & 0 deletions packages/core/src/tempo/actions/fee.test-d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import { createConfig, http } from '@wagmi/core'
import { defineChain } from 'viem'
import { tempoLocalnet } from 'viem/chains'
import { test } from 'vitest'
import * as fee from './fee.js'

const tempo = defineChain({ ...tempoLocalnet, id: 1337 as number })
const token = '0x20c0000000000000000000000000000000000001'

const config = createConfig({
chains: [tempo],
transports: { [tempo.id]: http() },
})

test('setUserTokenSync accepts optional transaction overrides', () => {
const chainId = tempo.id

fee.setUserTokenSync(config, {
chainId,
feePayer: true,
token,
})

// @ts-expect-error required action parameters stay required
fee.setUserTokenSync(config, {
chainId,
feePayer: true,
})
})
Loading
Loading