@eth-optimism/actions-sdk 0.2.0 → 0.3.0
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.
- package/dist/__mocks__/MockAssets.d.ts.map +1 -1
- package/dist/__mocks__/MockAssets.js +2 -0
- package/dist/__mocks__/MockAssets.js.map +1 -1
- package/dist/__tests__/actions.test.js +0 -4
- package/dist/__tests__/actions.test.js.map +1 -1
- package/dist/actions.d.ts +20 -1
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +37 -13
- package/dist/actions.js.map +1 -1
- package/dist/constants/assets.d.ts +4 -0
- package/dist/constants/assets.d.ts.map +1 -1
- package/dist/constants/assets.js +15 -0
- package/dist/constants/assets.js.map +1 -1
- package/dist/constants/contracts.d.ts +4 -0
- package/dist/constants/contracts.d.ts.map +1 -0
- package/dist/constants/contracts.js +3 -0
- package/dist/constants/contracts.js.map +1 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/lend/core/LendProvider.d.ts +0 -6
- package/dist/lend/core/LendProvider.d.ts.map +1 -1
- package/dist/lend/core/LendProvider.js +6 -15
- package/dist/lend/core/LendProvider.js.map +1 -1
- package/dist/lend/core/__tests__/LendProvider.test.js +2 -4
- package/dist/lend/core/__tests__/LendProvider.test.js.map +1 -1
- package/dist/lend/providers/morpho/__tests__/sdk.test.js +3 -2
- package/dist/lend/providers/morpho/__tests__/sdk.test.js.map +1 -1
- package/dist/lend/providers/morpho/api.d.ts +4 -0
- package/dist/lend/providers/morpho/api.d.ts.map +1 -1
- package/dist/lend/providers/morpho/api.js.map +1 -1
- package/dist/lend/providers/morpho/sdk.d.ts.map +1 -1
- package/dist/lend/providers/morpho/sdk.js +10 -1
- package/dist/lend/providers/morpho/sdk.js.map +1 -1
- package/dist/supported/tokens.d.ts.map +1 -1
- package/dist/supported/tokens.js +9 -2
- package/dist/supported/tokens.js.map +1 -1
- package/dist/swap/__mocks__/MockSwapProvider.d.ts +38 -0
- package/dist/swap/__mocks__/MockSwapProvider.d.ts.map +1 -0
- package/dist/swap/__mocks__/MockSwapProvider.js +138 -0
- package/dist/swap/__mocks__/MockSwapProvider.js.map +1 -0
- package/dist/swap/core/SwapProvider.d.ts +56 -0
- package/dist/swap/core/SwapProvider.d.ts.map +1 -0
- package/dist/swap/core/SwapProvider.js +177 -0
- package/dist/swap/core/SwapProvider.js.map +1 -0
- package/dist/swap/core/__tests__/SwapProvider.test.d.ts +2 -0
- package/dist/swap/core/__tests__/SwapProvider.test.d.ts.map +1 -0
- package/dist/swap/core/__tests__/SwapProvider.test.js +329 -0
- package/dist/swap/core/__tests__/SwapProvider.test.js.map +1 -0
- package/dist/swap/index.d.ts +7 -0
- package/dist/swap/index.d.ts.map +1 -0
- package/dist/swap/index.js +8 -0
- package/dist/swap/index.js.map +1 -0
- package/dist/swap/namespaces/ActionsSwapNamespace.d.ts +8 -0
- package/dist/swap/namespaces/ActionsSwapNamespace.d.ts.map +1 -0
- package/dist/swap/namespaces/ActionsSwapNamespace.js +8 -0
- package/dist/swap/namespaces/ActionsSwapNamespace.js.map +1 -0
- package/dist/swap/namespaces/BaseSwapNamespace.d.ts +33 -0
- package/dist/swap/namespaces/BaseSwapNamespace.d.ts.map +1 -0
- package/dist/swap/namespaces/BaseSwapNamespace.js +58 -0
- package/dist/swap/namespaces/BaseSwapNamespace.js.map +1 -0
- package/dist/swap/namespaces/WalletSwapNamespace.d.ts +22 -0
- package/dist/swap/namespaces/WalletSwapNamespace.d.ts.map +1 -0
- package/dist/swap/namespaces/WalletSwapNamespace.js +60 -0
- package/dist/swap/namespaces/WalletSwapNamespace.js.map +1 -0
- package/dist/swap/namespaces/__tests__/BaseSwapNamespace.spec.d.ts +2 -0
- package/dist/swap/namespaces/__tests__/BaseSwapNamespace.spec.d.ts.map +1 -0
- package/dist/swap/namespaces/__tests__/BaseSwapNamespace.spec.js +106 -0
- package/dist/swap/namespaces/__tests__/BaseSwapNamespace.spec.js.map +1 -0
- package/dist/swap/namespaces/__tests__/WalletSwapNamespace.spec.d.ts +2 -0
- package/dist/swap/namespaces/__tests__/WalletSwapNamespace.spec.d.ts.map +1 -0
- package/dist/swap/namespaces/__tests__/WalletSwapNamespace.spec.js +132 -0
- package/dist/swap/namespaces/__tests__/WalletSwapNamespace.spec.js.map +1 -0
- package/dist/swap/providers/uniswap/UniswapSwapProvider.d.ts +68 -0
- package/dist/swap/providers/uniswap/UniswapSwapProvider.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/UniswapSwapProvider.js +206 -0
- package/dist/swap/providers/uniswap/UniswapSwapProvider.js.map +1 -0
- package/dist/swap/providers/uniswap/__tests__/UniswapSwapProvider.test.d.ts +2 -0
- package/dist/swap/providers/uniswap/__tests__/UniswapSwapProvider.test.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/__tests__/UniswapSwapProvider.test.js +257 -0
- package/dist/swap/providers/uniswap/__tests__/UniswapSwapProvider.test.js.map +1 -0
- package/dist/swap/providers/uniswap/__tests__/sdk.test.d.ts +2 -0
- package/dist/swap/providers/uniswap/__tests__/sdk.test.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/__tests__/sdk.test.js +312 -0
- package/dist/swap/providers/uniswap/__tests__/sdk.test.js.map +1 -0
- package/dist/swap/providers/uniswap/abis.d.ts +227 -0
- package/dist/swap/providers/uniswap/abis.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/abis.js +138 -0
- package/dist/swap/providers/uniswap/abis.js.map +1 -0
- package/dist/swap/providers/uniswap/addresses.d.ts +21 -0
- package/dist/swap/providers/uniswap/addresses.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/addresses.js +81 -0
- package/dist/swap/providers/uniswap/addresses.js.map +1 -0
- package/dist/swap/providers/uniswap/encoding.d.ts +77 -0
- package/dist/swap/providers/uniswap/encoding.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/encoding.js +233 -0
- package/dist/swap/providers/uniswap/encoding.js.map +1 -0
- package/dist/swap/providers/uniswap/types.d.ts +20 -0
- package/dist/swap/providers/uniswap/types.d.ts.map +1 -0
- package/dist/swap/providers/uniswap/types.js +2 -0
- package/dist/swap/providers/uniswap/types.js.map +1 -0
- package/dist/types/actions.d.ts +19 -5
- package/dist/types/actions.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/lend/base.d.ts +3 -13
- package/dist/types/lend/base.d.ts.map +1 -1
- package/dist/types/lend/base.js.map +1 -1
- package/dist/types/swap/base.d.ts +238 -0
- package/dist/types/swap/base.d.ts.map +1 -0
- package/dist/types/swap/base.js +4 -0
- package/dist/types/swap/base.js.map +1 -0
- package/dist/types/swap/index.d.ts +2 -0
- package/dist/types/swap/index.d.ts.map +1 -0
- package/dist/types/swap/index.js +2 -0
- package/dist/types/swap/index.js.map +1 -0
- package/dist/types/transaction.d.ts +14 -0
- package/dist/types/transaction.d.ts.map +1 -0
- package/dist/types/transaction.js +2 -0
- package/dist/types/transaction.js.map +1 -0
- package/dist/utils/assets.d.ts +4 -5
- package/dist/utils/assets.d.ts.map +1 -1
- package/dist/utils/assets.js +4 -11
- package/dist/utils/assets.js.map +1 -1
- package/dist/utils/assets.test.js +13 -1
- package/dist/utils/assets.test.js.map +1 -1
- package/dist/utils/permit2.d.ts +46 -0
- package/dist/utils/permit2.d.ts.map +1 -0
- package/dist/utils/permit2.js +100 -0
- package/dist/utils/permit2.js.map +1 -0
- package/dist/utils/permit2.test.d.ts +2 -0
- package/dist/utils/permit2.test.d.ts.map +1 -0
- package/dist/utils/permit2.test.js +110 -0
- package/dist/utils/permit2.test.js.map +1 -0
- package/dist/utils/validation.d.ts +12 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +44 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts +7 -1
- package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js +2 -1
- package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js.map +1 -1
- package/dist/wallet/core/providers/hosted/types/index.d.ts +5 -1
- package/dist/wallet/core/providers/hosted/types/index.d.ts.map +1 -1
- package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts +7 -1
- package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts.map +1 -1
- package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js +5 -1
- package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js.map +1 -1
- package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js +2 -2
- package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js.map +1 -1
- package/dist/wallet/core/wallets/abstract/Wallet.d.ts +13 -2
- package/dist/wallet/core/wallets/abstract/Wallet.d.ts.map +1 -1
- package/dist/wallet/core/wallets/abstract/Wallet.js +7 -1
- package/dist/wallet/core/wallets/abstract/Wallet.js.map +1 -1
- package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts +7 -2
- package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts.map +1 -1
- package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js +6 -5
- package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js.map +1 -1
- package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +6 -1
- package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js +3 -1
- package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
- package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.d.ts.map +1 -1
- package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js +4 -3
- package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js.map +1 -1
- package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +5 -1
- package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +4 -2
- package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
- package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts +6 -1
- package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
- package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js +4 -3
- package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js.map +1 -1
- package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts +5 -1
- package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
- package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
- package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
- package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts +7 -1
- package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js +6 -2
- package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js.map +1 -1
- package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js +1 -0
- package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js.map +1 -1
- package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +6 -1
- package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js +5 -2
- package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
- package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js +1 -0
- package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js.map +1 -1
- package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +6 -3
- package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
- package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +5 -4
- package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
- package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.d.ts.map +1 -1
- package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js +6 -6
- package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js.map +1 -1
- package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts +7 -1
- package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts.map +1 -1
- package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js +5 -3
- package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js.map +1 -1
- package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts +5 -1
- package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
- package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js +3 -3
- package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js.map +1 -1
- package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts +5 -1
- package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
- package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
- package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
- package/package.json +2 -2
- package/src/__mocks__/MockAssets.ts +2 -0
- package/src/__tests__/actions.test.ts +0 -4
- package/src/actions.ts +57 -19
- package/src/constants/assets.ts +16 -0
- package/src/constants/contracts.ts +5 -0
- package/src/index.ts +30 -2
- package/src/lend/core/LendProvider.ts +6 -18
- package/src/lend/core/__tests__/LendProvider.test.ts +2 -5
- package/src/lend/providers/morpho/__tests__/sdk.test.ts +3 -2
- package/src/lend/providers/morpho/api.ts +4 -0
- package/src/lend/providers/morpho/sdk.ts +10 -1
- package/src/supported/tokens.ts +16 -2
- package/src/swap/__mocks__/MockSwapProvider.ts +216 -0
- package/src/swap/core/SwapProvider.ts +319 -0
- package/src/swap/core/__tests__/SwapProvider.test.ts +478 -0
- package/src/swap/index.ts +14 -0
- package/src/swap/namespaces/ActionsSwapNamespace.ts +7 -0
- package/src/swap/namespaces/BaseSwapNamespace.ts +77 -0
- package/src/swap/namespaces/WalletSwapNamespace.ts +82 -0
- package/src/swap/namespaces/__tests__/BaseSwapNamespace.spec.ts +138 -0
- package/src/swap/namespaces/__tests__/WalletSwapNamespace.spec.ts +162 -0
- package/src/swap/providers/uniswap/UniswapSwapProvider.ts +304 -0
- package/src/swap/providers/uniswap/__tests__/UniswapSwapProvider.test.ts +299 -0
- package/src/swap/providers/uniswap/__tests__/sdk.test.ts +370 -0
- package/src/swap/providers/uniswap/abis.ts +144 -0
- package/src/swap/providers/uniswap/addresses.ts +108 -0
- package/src/swap/providers/uniswap/encoding.ts +406 -0
- package/src/swap/providers/uniswap/types.ts +24 -0
- package/src/types/actions.ts +22 -6
- package/src/types/index.ts +2 -0
- package/src/types/lend/base.ts +4 -14
- package/src/types/swap/base.ts +259 -0
- package/src/types/swap/index.ts +1 -0
- package/src/types/transaction.ts +14 -0
- package/src/utils/assets.test.ts +16 -1
- package/src/utils/assets.ts +13 -10
- package/src/utils/permit2.test.ts +142 -0
- package/src/utils/permit2.ts +144 -0
- package/src/utils/validation.ts +76 -0
- package/src/wallet/core/providers/hosted/abstract/HostedWalletProvider.ts +9 -1
- package/src/wallet/core/providers/hosted/types/index.ts +5 -1
- package/src/wallet/core/providers/smart/default/DefaultSmartWalletProvider.ts +13 -1
- package/src/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.ts +2 -0
- package/src/wallet/core/wallets/abstract/Wallet.ts +18 -2
- package/src/wallet/core/wallets/smart/default/DefaultSmartWallet.ts +14 -5
- package/src/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.ts +13 -2
- package/src/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.ts +10 -2
- package/src/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +8 -2
- package/src/wallet/node/wallets/hosted/privy/PrivyWallet.ts +11 -2
- package/src/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.ts +10 -2
- package/src/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.ts +10 -2
- package/src/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.ts +1 -0
- package/src/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.ts +9 -2
- package/src/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.ts +1 -0
- package/src/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +9 -4
- package/src/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.ts +18 -6
- package/src/wallet/react/wallets/hosted/dynamic/DynamicWallet.ts +12 -2
- package/src/wallet/react/wallets/hosted/privy/PrivyWallet.ts +10 -2
- package/src/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.ts +10 -2
|
@@ -5,7 +5,8 @@ import type { Address, LocalAccount } from 'viem'
|
|
|
5
5
|
|
|
6
6
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
7
7
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
8
|
-
import type {
|
|
8
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
9
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
9
10
|
import type { Asset } from '@/types/asset.js'
|
|
10
11
|
import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
|
|
11
12
|
import { createSigner } from '@/wallet/node/wallets/hosted/turnkey/utils/createSigner.js'
|
|
@@ -50,6 +51,9 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
50
51
|
morpho?: LendProvider<LendProviderConfig>
|
|
51
52
|
aave?: LendProvider<LendProviderConfig>
|
|
52
53
|
}
|
|
54
|
+
swapProviders?: {
|
|
55
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
56
|
+
}
|
|
53
57
|
supportedAssets?: Asset[]
|
|
54
58
|
}) {
|
|
55
59
|
const {
|
|
@@ -59,9 +63,10 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
59
63
|
signWith,
|
|
60
64
|
ethereumAddress,
|
|
61
65
|
lendProviders,
|
|
66
|
+
swapProviders,
|
|
62
67
|
supportedAssets,
|
|
63
68
|
} = params
|
|
64
|
-
super(chainManager, lendProviders, supportedAssets)
|
|
69
|
+
super(chainManager, lendProviders, swapProviders, supportedAssets)
|
|
65
70
|
this.client = client
|
|
66
71
|
this.organizationId = organizationId
|
|
67
72
|
this.signWith = signWith
|
|
@@ -78,6 +83,9 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
78
83
|
morpho?: LendProvider<LendProviderConfig>
|
|
79
84
|
aave?: LendProvider<LendProviderConfig>
|
|
80
85
|
}
|
|
86
|
+
swapProviders?: {
|
|
87
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
88
|
+
}
|
|
81
89
|
supportedAssets?: Asset[]
|
|
82
90
|
}): Promise<TurnkeyWallet> {
|
|
83
91
|
const wallet = new TurnkeyWallet(params)
|
|
@@ -2,7 +2,8 @@ import type { LocalAccount } from 'viem'
|
|
|
2
2
|
|
|
3
3
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
4
4
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
5
|
-
import type {
|
|
5
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
6
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
6
7
|
import { HostedWalletProvider } from '@/wallet/core/providers/hosted/abstract/HostedWalletProvider.js'
|
|
7
8
|
import type { Wallet } from '@/wallet/core/wallets/abstract/Wallet.js'
|
|
8
9
|
import type { ReactToActionsOptionsMap } from '@/wallet/react/providers/hosted/types/index.js'
|
|
@@ -19,6 +20,9 @@ export class DynamicHostedWalletProvider extends HostedWalletProvider<
|
|
|
19
20
|
> {
|
|
20
21
|
/**
|
|
21
22
|
* Create a new Dynamic wallet provider
|
|
23
|
+
* @param chainManager Chain manager for RPC, chain info, and transports
|
|
24
|
+
* @param lendProviders Optional lend providers for DeFi operations
|
|
25
|
+
* @param swapProviders Optional swap providers for trading operations
|
|
22
26
|
*/
|
|
23
27
|
constructor(
|
|
24
28
|
chainManager: ChainManager,
|
|
@@ -26,8 +30,11 @@ export class DynamicHostedWalletProvider extends HostedWalletProvider<
|
|
|
26
30
|
morpho?: LendProvider<LendProviderConfig>
|
|
27
31
|
aave?: LendProvider<LendProviderConfig>
|
|
28
32
|
},
|
|
33
|
+
swapProviders?: {
|
|
34
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
35
|
+
},
|
|
29
36
|
) {
|
|
30
|
-
super(chainManager, lendProviders)
|
|
37
|
+
super(chainManager, lendProviders, swapProviders)
|
|
31
38
|
}
|
|
32
39
|
|
|
33
40
|
async toActionsWallet(
|
|
@@ -37,6 +44,7 @@ export class DynamicHostedWalletProvider extends HostedWalletProvider<
|
|
|
37
44
|
dynamicWallet: params.wallet,
|
|
38
45
|
chainManager: this.chainManager,
|
|
39
46
|
lendProviders: this.lendProviders,
|
|
47
|
+
swapProviders: this.swapProviders,
|
|
40
48
|
})
|
|
41
49
|
}
|
|
42
50
|
|
|
@@ -2,7 +2,8 @@ import type { LocalAccount } from 'viem'
|
|
|
2
2
|
|
|
3
3
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
4
4
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
5
|
-
import type {
|
|
5
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
6
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
6
7
|
import { HostedWalletProvider } from '@/wallet/core/providers/hosted/abstract/HostedWalletProvider.js'
|
|
7
8
|
import type { Wallet } from '@/wallet/core/wallets/abstract/Wallet.js'
|
|
8
9
|
import type { ReactToActionsOptionsMap } from '@/wallet/react/providers/hosted/types/index.js'
|
|
@@ -19,6 +20,8 @@ export class PrivyHostedWalletProvider extends HostedWalletProvider<
|
|
|
19
20
|
/**
|
|
20
21
|
* Create a new Privy wallet provider
|
|
21
22
|
* @param chainManager Chain manager for RPC, chain info, and transports
|
|
23
|
+
* @param lendProviders Optional lend providers for DeFi operations
|
|
24
|
+
* @param swapProviders Optional swap providers for trading operations
|
|
22
25
|
*/
|
|
23
26
|
constructor(
|
|
24
27
|
chainManager: ChainManager,
|
|
@@ -26,8 +29,11 @@ export class PrivyHostedWalletProvider extends HostedWalletProvider<
|
|
|
26
29
|
morpho?: LendProvider<LendProviderConfig>
|
|
27
30
|
aave?: LendProvider<LendProviderConfig>
|
|
28
31
|
},
|
|
32
|
+
swapProviders?: {
|
|
33
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
34
|
+
},
|
|
29
35
|
) {
|
|
30
|
-
super(chainManager, lendProviders)
|
|
36
|
+
super(chainManager, lendProviders, swapProviders)
|
|
31
37
|
}
|
|
32
38
|
|
|
33
39
|
async toActionsWallet(
|
|
@@ -38,6 +44,7 @@ export class PrivyHostedWalletProvider extends HostedWalletProvider<
|
|
|
38
44
|
chainManager: this.chainManager,
|
|
39
45
|
connectedWallet,
|
|
40
46
|
lendProviders: this.lendProviders,
|
|
47
|
+
swapProviders: this.swapProviders,
|
|
41
48
|
})
|
|
42
49
|
return wallet
|
|
43
50
|
}
|
|
@@ -2,7 +2,8 @@ import type { LocalAccount } from 'viem'
|
|
|
2
2
|
|
|
3
3
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
4
4
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
5
|
-
import type {
|
|
5
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
6
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
6
7
|
import { HostedWalletProvider } from '@/wallet/core/providers/hosted/abstract/HostedWalletProvider.js'
|
|
7
8
|
import type { Wallet } from '@/wallet/core/wallets/abstract/Wallet.js'
|
|
8
9
|
import type { ReactToActionsOptionsMap } from '@/wallet/react/providers/hosted/types/index.js'
|
|
@@ -22,9 +23,9 @@ export class TurnkeyHostedWalletProvider extends HostedWalletProvider<
|
|
|
22
23
|
> {
|
|
23
24
|
/**
|
|
24
25
|
* Create a new Turnkey wallet provider
|
|
25
|
-
* @param client - Turnkey browser client instance
|
|
26
|
-
* @param organizationId - Turnkey organization ID that owns the signing key
|
|
27
26
|
* @param chainManager - Chain manager used to resolve chains and RPC transports
|
|
27
|
+
* @param lendProviders - Optional lend providers for DeFi operations
|
|
28
|
+
* @param swapProviders - Optional swap providers for trading operations
|
|
28
29
|
*/
|
|
29
30
|
constructor(
|
|
30
31
|
chainManager: ChainManager,
|
|
@@ -32,8 +33,11 @@ export class TurnkeyHostedWalletProvider extends HostedWalletProvider<
|
|
|
32
33
|
morpho?: LendProvider<LendProviderConfig>
|
|
33
34
|
aave?: LendProvider<LendProviderConfig>
|
|
34
35
|
},
|
|
36
|
+
swapProviders?: {
|
|
37
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
38
|
+
},
|
|
35
39
|
) {
|
|
36
|
-
super(chainManager, lendProviders)
|
|
40
|
+
super(chainManager, lendProviders, swapProviders)
|
|
37
41
|
}
|
|
38
42
|
|
|
39
43
|
/**
|
|
@@ -58,6 +62,7 @@ export class TurnkeyHostedWalletProvider extends HostedWalletProvider<
|
|
|
58
62
|
ethereumAddress,
|
|
59
63
|
chainManager: this.chainManager,
|
|
60
64
|
lendProviders: this.lendProviders,
|
|
65
|
+
swapProviders: this.swapProviders,
|
|
61
66
|
})
|
|
62
67
|
}
|
|
63
68
|
|
|
@@ -29,8 +29,12 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
|
|
|
29
29
|
validateOptions(_options): _options is ReactOptionsMap['dynamic'] {
|
|
30
30
|
return true
|
|
31
31
|
},
|
|
32
|
-
create({ chainManager, lendProviders }, _options) {
|
|
33
|
-
return new DynamicHostedWalletProvider(
|
|
32
|
+
create({ chainManager, lendProviders, swapProviders }, _options) {
|
|
33
|
+
return new DynamicHostedWalletProvider(
|
|
34
|
+
chainManager,
|
|
35
|
+
lendProviders,
|
|
36
|
+
swapProviders,
|
|
37
|
+
)
|
|
34
38
|
},
|
|
35
39
|
})
|
|
36
40
|
|
|
@@ -39,8 +43,12 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
|
|
|
39
43
|
validateOptions(_options): _options is ReactOptionsMap['privy'] {
|
|
40
44
|
return true
|
|
41
45
|
},
|
|
42
|
-
create({ chainManager, lendProviders }, _options) {
|
|
43
|
-
return new PrivyHostedWalletProvider(
|
|
46
|
+
create({ chainManager, lendProviders, swapProviders }, _options) {
|
|
47
|
+
return new PrivyHostedWalletProvider(
|
|
48
|
+
chainManager,
|
|
49
|
+
lendProviders,
|
|
50
|
+
swapProviders,
|
|
51
|
+
)
|
|
44
52
|
},
|
|
45
53
|
})
|
|
46
54
|
|
|
@@ -49,8 +57,12 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
|
|
|
49
57
|
validateOptions(_options): _options is ReactOptionsMap['turnkey'] {
|
|
50
58
|
return true
|
|
51
59
|
},
|
|
52
|
-
create({ chainManager, lendProviders }, _options) {
|
|
53
|
-
return new TurnkeyHostedWalletProvider(
|
|
60
|
+
create({ chainManager, lendProviders, swapProviders }, _options) {
|
|
61
|
+
return new TurnkeyHostedWalletProvider(
|
|
62
|
+
chainManager,
|
|
63
|
+
lendProviders,
|
|
64
|
+
swapProviders,
|
|
65
|
+
)
|
|
54
66
|
},
|
|
55
67
|
})
|
|
56
68
|
}
|
|
@@ -2,7 +2,8 @@ import { type Address, type LocalAccount } from 'viem'
|
|
|
2
2
|
|
|
3
3
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
4
4
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
5
|
-
import type {
|
|
5
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
6
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
6
7
|
import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
|
|
7
8
|
import type { DynamicHostedWalletToActionsWalletOptions } from '@/wallet/react/providers/hosted/types/index.js'
|
|
8
9
|
import { createSigner } from '@/wallet/react/wallets/hosted/dynamic/utils/createSigner.js'
|
|
@@ -20,6 +21,8 @@ export class DynamicWallet extends EOAWallet {
|
|
|
20
21
|
* Create a new Dynamic wallet
|
|
21
22
|
* @param chainManager - Chain manager for RPC, chain info, and transports
|
|
22
23
|
* @param dynamicWallet - Dynamic Labs wallet instance (EVM)
|
|
24
|
+
* @param lendProviders - Optional lend providers for DeFi operations
|
|
25
|
+
* @param swapProviders - Optional swap providers for trading operations
|
|
23
26
|
*/
|
|
24
27
|
private constructor(
|
|
25
28
|
chainManager: ChainManager,
|
|
@@ -28,8 +31,11 @@ export class DynamicWallet extends EOAWallet {
|
|
|
28
31
|
morpho?: LendProvider<LendProviderConfig>
|
|
29
32
|
aave?: LendProvider<LendProviderConfig>
|
|
30
33
|
},
|
|
34
|
+
swapProviders?: {
|
|
35
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
36
|
+
},
|
|
31
37
|
) {
|
|
32
|
-
super(chainManager, lendProviders)
|
|
38
|
+
super(chainManager, lendProviders, swapProviders)
|
|
33
39
|
this.dynamicWallet = dynamicWallet
|
|
34
40
|
}
|
|
35
41
|
|
|
@@ -40,11 +46,15 @@ export class DynamicWallet extends EOAWallet {
|
|
|
40
46
|
morpho?: LendProvider<LendProviderConfig>
|
|
41
47
|
aave?: LendProvider<LendProviderConfig>
|
|
42
48
|
}
|
|
49
|
+
swapProviders?: {
|
|
50
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
51
|
+
}
|
|
43
52
|
}): Promise<DynamicWallet> {
|
|
44
53
|
const wallet = new DynamicWallet(
|
|
45
54
|
params.chainManager,
|
|
46
55
|
params.dynamicWallet,
|
|
47
56
|
params.lendProviders,
|
|
57
|
+
params.swapProviders,
|
|
48
58
|
)
|
|
49
59
|
await wallet.initialize()
|
|
50
60
|
return wallet
|
|
@@ -3,7 +3,8 @@ import type { Address, LocalAccount } from 'viem'
|
|
|
3
3
|
|
|
4
4
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
5
5
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
6
|
-
import type {
|
|
6
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
7
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
7
8
|
import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
|
|
8
9
|
import { createSigner } from '@/wallet/react/wallets/hosted/privy/utils/createSigner.js'
|
|
9
10
|
|
|
@@ -24,8 +25,11 @@ export class PrivyWallet extends EOAWallet {
|
|
|
24
25
|
morpho?: LendProvider<LendProviderConfig>
|
|
25
26
|
aave?: LendProvider<LendProviderConfig>
|
|
26
27
|
},
|
|
28
|
+
swapProviders?: {
|
|
29
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
30
|
+
},
|
|
27
31
|
) {
|
|
28
|
-
super(chainManager, lendProviders)
|
|
32
|
+
super(chainManager, lendProviders, swapProviders)
|
|
29
33
|
this.connectedWallet = connectedWallet
|
|
30
34
|
}
|
|
31
35
|
|
|
@@ -36,11 +40,15 @@ export class PrivyWallet extends EOAWallet {
|
|
|
36
40
|
morpho?: LendProvider<LendProviderConfig>
|
|
37
41
|
aave?: LendProvider<LendProviderConfig>
|
|
38
42
|
}
|
|
43
|
+
swapProviders?: {
|
|
44
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
45
|
+
}
|
|
39
46
|
}): Promise<PrivyWallet> {
|
|
40
47
|
const wallet = new PrivyWallet(
|
|
41
48
|
params.chainManager,
|
|
42
49
|
params.connectedWallet,
|
|
43
50
|
params.lendProviders,
|
|
51
|
+
params.swapProviders,
|
|
44
52
|
)
|
|
45
53
|
await wallet.initialize()
|
|
46
54
|
return wallet
|
|
@@ -3,7 +3,8 @@ import type { Address, LocalAccount } from 'viem'
|
|
|
3
3
|
|
|
4
4
|
import type { LendProvider } from '@/lend/core/LendProvider.js'
|
|
5
5
|
import type { ChainManager } from '@/services/ChainManager.js'
|
|
6
|
-
import type {
|
|
6
|
+
import type { SwapProvider } from '@/swap/core/SwapProvider.js'
|
|
7
|
+
import type { LendProviderConfig, SwapProviderConfig } from '@/types/actions.js'
|
|
7
8
|
import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
|
|
8
9
|
import { createSigner } from '@/wallet/react/wallets/hosted/turnkey/utils/createSigner.js'
|
|
9
10
|
|
|
@@ -44,6 +45,9 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
44
45
|
morpho?: LendProvider<LendProviderConfig>
|
|
45
46
|
aave?: LendProvider<LendProviderConfig>
|
|
46
47
|
}
|
|
48
|
+
swapProviders?: {
|
|
49
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
50
|
+
}
|
|
47
51
|
}) {
|
|
48
52
|
const {
|
|
49
53
|
chainManager,
|
|
@@ -52,8 +56,9 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
52
56
|
signWith,
|
|
53
57
|
ethereumAddress,
|
|
54
58
|
lendProviders,
|
|
59
|
+
swapProviders,
|
|
55
60
|
} = params
|
|
56
|
-
super(chainManager, lendProviders)
|
|
61
|
+
super(chainManager, lendProviders, swapProviders)
|
|
57
62
|
this.client = client
|
|
58
63
|
this.organizationId = organizationId
|
|
59
64
|
this.signWith = signWith
|
|
@@ -70,6 +75,9 @@ export class TurnkeyWallet extends EOAWallet {
|
|
|
70
75
|
morpho?: LendProvider<LendProviderConfig>
|
|
71
76
|
aave?: LendProvider<LendProviderConfig>
|
|
72
77
|
}
|
|
78
|
+
swapProviders?: {
|
|
79
|
+
uniswap?: SwapProvider<SwapProviderConfig>
|
|
80
|
+
}
|
|
73
81
|
}): Promise<TurnkeyWallet> {
|
|
74
82
|
const wallet = new TurnkeyWallet(params)
|
|
75
83
|
await wallet.initialize()
|