@eth-optimism/actions-sdk 0.0.4 → 0.1.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.
Files changed (201) hide show
  1. package/dist/actions.d.ts +19 -7
  2. package/dist/actions.d.ts.map +1 -1
  3. package/dist/actions.js +49 -19
  4. package/dist/actions.js.map +1 -1
  5. package/dist/actions.test.js +30 -80
  6. package/dist/actions.test.js.map +1 -1
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/lend/core/LendProvider.d.ts +3 -2
  11. package/dist/lend/core/LendProvider.d.ts.map +1 -1
  12. package/dist/lend/core/LendProvider.js.map +1 -1
  13. package/dist/lend/core/__tests__/LendProvider.test.js +18 -48
  14. package/dist/lend/core/__tests__/LendProvider.test.js.map +1 -1
  15. package/dist/lend/index.d.ts +1 -0
  16. package/dist/lend/index.d.ts.map +1 -1
  17. package/dist/lend/index.js +1 -0
  18. package/dist/lend/index.js.map +1 -1
  19. package/dist/lend/namespaces/ActionsLendNamespace.d.ts +35 -8
  20. package/dist/lend/namespaces/ActionsLendNamespace.d.ts.map +1 -1
  21. package/dist/lend/namespaces/ActionsLendNamespace.js +45 -8
  22. package/dist/lend/namespaces/ActionsLendNamespace.js.map +1 -1
  23. package/dist/lend/namespaces/WalletLendNamespace.d.ts +35 -8
  24. package/dist/lend/namespaces/WalletLendNamespace.d.ts.map +1 -1
  25. package/dist/lend/namespaces/WalletLendNamespace.js +59 -11
  26. package/dist/lend/namespaces/WalletLendNamespace.js.map +1 -1
  27. package/dist/lend/namespaces/__tests__/ActionsLendNamespace.spec.js +23 -15
  28. package/dist/lend/namespaces/__tests__/ActionsLendNamespace.spec.js.map +1 -1
  29. package/dist/lend/namespaces/__tests__/WalletLendNamespace.spec.js +29 -11
  30. package/dist/lend/namespaces/__tests__/WalletLendNamespace.spec.js.map +1 -1
  31. package/dist/lend/providers/aave/AaveLendProvider.d.ts +82 -0
  32. package/dist/lend/providers/aave/AaveLendProvider.d.ts.map +1 -0
  33. package/dist/lend/providers/aave/AaveLendProvider.js +346 -0
  34. package/dist/lend/providers/aave/AaveLendProvider.js.map +1 -0
  35. package/dist/lend/providers/aave/addresses.d.ts +57 -0
  36. package/dist/lend/providers/aave/addresses.d.ts.map +1 -0
  37. package/dist/lend/providers/aave/addresses.js +83 -0
  38. package/dist/lend/providers/aave/addresses.js.map +1 -0
  39. package/dist/lend/providers/aave/sdk.d.ts +57 -0
  40. package/dist/lend/providers/aave/sdk.d.ts.map +1 -0
  41. package/dist/lend/providers/aave/sdk.js +260 -0
  42. package/dist/lend/providers/aave/sdk.js.map +1 -0
  43. package/dist/lend/providers/morpho/MorphoLendProvider.d.ts +4 -3
  44. package/dist/lend/providers/morpho/MorphoLendProvider.d.ts.map +1 -1
  45. package/dist/lend/providers/morpho/MorphoLendProvider.js +2 -2
  46. package/dist/lend/providers/morpho/MorphoLendProvider.js.map +1 -1
  47. package/dist/lend/providers/morpho/__tests__/MorphoLendProvider.test.js +1 -33
  48. package/dist/lend/providers/morpho/__tests__/MorphoLendProvider.test.js.map +1 -1
  49. package/dist/lend/providers/morpho/__tests__/sdk.test.js +1 -0
  50. package/dist/lend/providers/morpho/__tests__/sdk.test.js.map +1 -1
  51. package/dist/lend/providers/morpho/sdk.d.ts +4 -3
  52. package/dist/lend/providers/morpho/sdk.d.ts.map +1 -1
  53. package/dist/supported/tokens.d.ts.map +1 -1
  54. package/dist/supported/tokens.js +18 -2
  55. package/dist/supported/tokens.js.map +1 -1
  56. package/dist/test/MockLendProvider.d.ts +5 -4
  57. package/dist/test/MockLendProvider.d.ts.map +1 -1
  58. package/dist/test/MockLendProvider.js +5 -5
  59. package/dist/test/MockLendProvider.js.map +1 -1
  60. package/dist/types/actions.d.ts +26 -2
  61. package/dist/types/actions.d.ts.map +1 -1
  62. package/dist/types/lend/base.d.ts +6 -19
  63. package/dist/types/lend/base.d.ts.map +1 -1
  64. package/dist/wallet/core/namespace/__tests__/WalletNamespace.spec.js +9 -9
  65. package/dist/wallet/core/namespace/__tests__/WalletNamespace.spec.js.map +1 -1
  66. package/dist/wallet/core/providers/__tests__/WalletProvider.spec.js +8 -8
  67. package/dist/wallet/core/providers/__tests__/WalletProvider.spec.js.map +1 -1
  68. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts +12 -3
  69. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.d.ts.map +1 -1
  70. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js +3 -2
  71. package/dist/wallet/core/providers/hosted/abstract/HostedWalletProvider.js.map +1 -1
  72. package/dist/wallet/core/providers/hosted/types/index.d.ts +8 -2
  73. package/dist/wallet/core/providers/hosted/types/index.d.ts.map +1 -1
  74. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts +14 -6
  75. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.d.ts.map +1 -1
  76. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js +10 -6
  77. package/dist/wallet/core/providers/smart/default/DefaultSmartWalletProvider.js.map +1 -1
  78. package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js +36 -13
  79. package/dist/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.js.map +1 -1
  80. package/dist/wallet/core/wallets/abstract/Wallet.d.ts +19 -7
  81. package/dist/wallet/core/wallets/abstract/Wallet.d.ts.map +1 -1
  82. package/dist/wallet/core/wallets/abstract/Wallet.js +9 -7
  83. package/dist/wallet/core/wallets/abstract/Wallet.js.map +1 -1
  84. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts +9 -3
  85. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.d.ts.map +1 -1
  86. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js +4 -4
  87. package/dist/wallet/core/wallets/smart/default/DefaultSmartWallet.js.map +1 -1
  88. package/dist/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.js +1 -1
  89. package/dist/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.js.map +1 -1
  90. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +10 -3
  91. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
  92. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js +5 -3
  93. package/dist/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
  94. package/dist/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js +4 -3
  95. package/dist/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js.map +1 -1
  96. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.d.ts.map +1 -1
  97. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js +5 -4
  98. package/dist/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.js.map +1 -1
  99. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +9 -2
  100. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
  101. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +6 -3
  102. package/dist/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
  103. package/dist/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js +4 -3
  104. package/dist/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js.map +1 -1
  105. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts +10 -3
  106. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
  107. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js +5 -4
  108. package/dist/wallet/node/wallets/hosted/privy/PrivyWallet.js.map +1 -1
  109. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts +8 -2
  110. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
  111. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
  112. package/dist/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
  113. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts +6 -2
  114. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.d.ts.map +1 -1
  115. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js +3 -3
  116. package/dist/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.js.map +1 -1
  117. package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js +19 -7
  118. package/dist/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.js.map +1 -1
  119. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts +6 -2
  120. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.d.ts.map +1 -1
  121. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js +3 -3
  122. package/dist/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.js.map +1 -1
  123. package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js +7 -3
  124. package/dist/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.js.map +1 -1
  125. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts +6 -2
  126. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.d.ts.map +1 -1
  127. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js +3 -3
  128. package/dist/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js.map +1 -1
  129. package/dist/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js +6 -3
  130. package/dist/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.js.map +1 -1
  131. package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js +6 -6
  132. package/dist/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.js.map +1 -1
  133. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts +6 -2
  134. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.d.ts.map +1 -1
  135. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js +3 -3
  136. package/dist/wallet/react/wallets/hosted/dynamic/DynamicWallet.js.map +1 -1
  137. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.d.ts +6 -0
  138. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.d.ts.map +1 -1
  139. package/dist/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.js.map +1 -1
  140. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts +6 -2
  141. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.d.ts.map +1 -1
  142. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js +3 -3
  143. package/dist/wallet/react/wallets/hosted/privy/PrivyWallet.js.map +1 -1
  144. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts +6 -2
  145. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.d.ts.map +1 -1
  146. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js +2 -2
  147. package/dist/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js.map +1 -1
  148. package/package.json +4 -1
  149. package/src/actions.test.ts +32 -93
  150. package/src/actions.ts +82 -26
  151. package/src/index.ts +1 -2
  152. package/src/lend/core/LendProvider.ts +6 -5
  153. package/src/lend/core/__tests__/LendProvider.test.ts +19 -61
  154. package/src/lend/index.ts +1 -0
  155. package/src/lend/namespaces/ActionsLendNamespace.ts +77 -13
  156. package/src/lend/namespaces/WalletLendNamespace.ts +98 -18
  157. package/src/lend/namespaces/__tests__/ActionsLendNamespace.spec.ts +24 -18
  158. package/src/lend/namespaces/__tests__/WalletLendNamespace.spec.ts +49 -11
  159. package/src/lend/providers/aave/AaveLendProvider.ts +463 -0
  160. package/src/lend/providers/aave/addresses.ts +95 -0
  161. package/src/lend/providers/aave/sdk.ts +369 -0
  162. package/src/lend/providers/morpho/MorphoLendProvider.ts +5 -5
  163. package/src/lend/providers/morpho/__tests__/MorphoLendProvider.test.ts +5 -53
  164. package/src/lend/providers/morpho/__tests__/sdk.test.ts +1 -0
  165. package/src/lend/providers/morpho/sdk.ts +3 -3
  166. package/src/supported/tokens.ts +24 -2
  167. package/src/test/MockLendProvider.ts +9 -9
  168. package/src/types/actions.ts +30 -2
  169. package/src/types/lend/base.ts +6 -22
  170. package/src/wallet/core/namespace/__tests__/WalletNamespace.spec.ts +9 -9
  171. package/src/wallet/core/providers/__tests__/WalletProvider.spec.ts +8 -8
  172. package/src/wallet/core/providers/hosted/abstract/HostedWalletProvider.ts +15 -4
  173. package/src/wallet/core/providers/hosted/types/index.ts +8 -2
  174. package/src/wallet/core/providers/smart/default/DefaultSmartWalletProvider.ts +24 -9
  175. package/src/wallet/core/providers/smart/default/__tests__/DefaultSmartWalletProvider.spec.ts +38 -46
  176. package/src/wallet/core/wallets/abstract/Wallet.ts +25 -17
  177. package/src/wallet/core/wallets/smart/default/DefaultSmartWallet.ts +17 -10
  178. package/src/wallet/core/wallets/smart/default/__tests__/DefaultSmartWallet.spec.ts +4 -7
  179. package/src/wallet/node/providers/hosted/privy/PrivyHostedWalletProvider.ts +13 -5
  180. package/src/wallet/node/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.ts +4 -4
  181. package/src/wallet/node/providers/hosted/registry/NodeHostedWalletProviderRegistry.ts +6 -4
  182. package/src/wallet/node/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +13 -4
  183. package/src/wallet/node/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.ts +4 -4
  184. package/src/wallet/node/wallets/hosted/privy/PrivyWallet.ts +18 -6
  185. package/src/wallet/node/wallets/hosted/turnkey/TurnkeyWallet.ts +16 -5
  186. package/src/wallet/react/providers/hosted/dynamic/DynamicHostedWalletProvider.ts +8 -4
  187. package/src/wallet/react/providers/hosted/dynamic/__tests__/DynamicHostedWalletProvider.spec.ts +25 -14
  188. package/src/wallet/react/providers/hosted/privy/PrivyHostedWalletProvider.ts +8 -4
  189. package/src/wallet/react/providers/hosted/privy/__tests__/PrivyHostedWalletProvider.spec.ts +7 -7
  190. package/src/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.ts +8 -4
  191. package/src/wallet/react/providers/hosted/turnkey/__tests__/TurnkeyHostedWalletProvider.spec.ts +6 -7
  192. package/src/wallet/react/providers/registry/ReactHostedWalletProviderRegistry.ts +6 -6
  193. package/src/wallet/react/wallets/hosted/dynamic/DynamicWallet.ts +12 -5
  194. package/src/wallet/react/wallets/hosted/dynamic/__mocks__/DynamicWalletMock.ts +6 -0
  195. package/src/wallet/react/wallets/hosted/privy/PrivyWallet.ts +12 -5
  196. package/src/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.ts +12 -5
  197. package/dist/constants/config.d.ts +0 -10
  198. package/dist/constants/config.d.ts.map +0 -1
  199. package/dist/constants/config.js +0 -10
  200. package/dist/constants/config.js.map +0 -1
  201. package/src/constants/config.ts +0 -9
@@ -5,7 +5,7 @@ import { describe, expect, it, vi } from 'vitest'
5
5
 
6
6
  import type { ChainManager } from '@/services/ChainManager.js'
7
7
  import { MockChainManager } from '@/test/MockChainManager.js'
8
- import type { LendConfig, LendProvider } from '@/types/lend/index.js'
8
+ import { createMockLendProvider } from '@/test/MockLendProvider.js'
9
9
  import { TurnkeyHostedWalletProvider } from '@/wallet/react/providers/hosted/turnkey/TurnkeyHostedWalletProvider.js'
10
10
  import { TurnkeyWallet } from '@/wallet/react/wallets/hosted/turnkey/TurnkeyWallet.js'
11
11
  import * as createSignerUtil from '@/wallet/react/wallets/hosted/turnkey/utils/createSigner.js'
@@ -88,11 +88,10 @@ describe('TurnkeyHostedWalletProvider', () => {
88
88
 
89
89
  it('forwards lendProvider when provided to constructor', async () => {
90
90
  const turnkeyClient = {} as unknown as TurnkeySDKClientBase
91
- const mockLendProvider = {} as unknown as LendProvider<LendConfig>
92
- const provider = new TurnkeyHostedWalletProvider(
93
- mockChainManager,
94
- mockLendProvider,
95
- )
91
+ const mockLendProvider = createMockLendProvider()
92
+ const provider = new TurnkeyHostedWalletProvider(mockChainManager, {
93
+ morpho: mockLendProvider,
94
+ })
96
95
  const spyTurnkeyWalletCreate = vi
97
96
  .spyOn(TurnkeyWallet, 'create')
98
97
  .mockResolvedValueOnce({
@@ -107,7 +106,7 @@ describe('TurnkeyHostedWalletProvider', () => {
107
106
 
108
107
  expect(spyTurnkeyWalletCreate).toHaveBeenCalledWith(
109
108
  expect.objectContaining({
110
- lendProvider: mockLendProvider,
109
+ lendProviders: { morpho: mockLendProvider },
111
110
  }),
112
111
  )
113
112
  })
@@ -29,8 +29,8 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
29
29
  validateOptions(_options): _options is ReactOptionsMap['dynamic'] {
30
30
  return true
31
31
  },
32
- create({ chainManager, lendProvider }, _options) {
33
- return new DynamicHostedWalletProvider(chainManager, lendProvider)
32
+ create({ chainManager, lendProviders }, _options) {
33
+ return new DynamicHostedWalletProvider(chainManager, lendProviders)
34
34
  },
35
35
  })
36
36
 
@@ -39,8 +39,8 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
39
39
  validateOptions(_options): _options is ReactOptionsMap['privy'] {
40
40
  return true
41
41
  },
42
- create({ chainManager, lendProvider }, _options) {
43
- return new PrivyHostedWalletProvider(chainManager, lendProvider)
42
+ create({ chainManager, lendProviders }, _options) {
43
+ return new PrivyHostedWalletProvider(chainManager, lendProviders)
44
44
  },
45
45
  })
46
46
 
@@ -49,8 +49,8 @@ export class ReactHostedWalletProviderRegistry extends HostedWalletProviderRegis
49
49
  validateOptions(_options): _options is ReactOptionsMap['turnkey'] {
50
50
  return true
51
51
  },
52
- create({ chainManager, lendProvider }, _options) {
53
- return new TurnkeyHostedWalletProvider(chainManager, lendProvider)
52
+ create({ chainManager, lendProviders }, _options) {
53
+ return new TurnkeyHostedWalletProvider(chainManager, lendProviders)
54
54
  },
55
55
  })
56
56
  }
@@ -1,7 +1,8 @@
1
1
  import { type Address, type LocalAccount } from 'viem'
2
2
 
3
+ import type { LendProvider } from '@/lend/core/LendProvider.js'
3
4
  import type { ChainManager } from '@/services/ChainManager.js'
4
- import type { LendConfig, LendProvider } from '@/types/lend/index.js'
5
+ import type { LendProviderConfig } from '@/types/actions.js'
5
6
  import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
6
7
  import type { DynamicHostedWalletToActionsWalletOptions } from '@/wallet/react/providers/hosted/types/index.js'
7
8
  import { createSigner } from '@/wallet/react/wallets/hosted/dynamic/utils/createSigner.js'
@@ -23,21 +24,27 @@ export class DynamicWallet extends EOAWallet {
23
24
  private constructor(
24
25
  chainManager: ChainManager,
25
26
  dynamicWallet: DynamicHostedWalletToActionsWalletOptions['wallet'],
26
- lendProvider?: LendProvider<LendConfig>,
27
+ lendProviders?: {
28
+ morpho?: LendProvider<LendProviderConfig>
29
+ aave?: LendProvider<LendProviderConfig>
30
+ },
27
31
  ) {
28
- super(chainManager, lendProvider)
32
+ super(chainManager, lendProviders)
29
33
  this.dynamicWallet = dynamicWallet
30
34
  }
31
35
 
32
36
  static async create(params: {
33
37
  dynamicWallet: DynamicHostedWalletToActionsWalletOptions['wallet']
34
38
  chainManager: ChainManager
35
- lendProvider?: LendProvider<LendConfig>
39
+ lendProviders?: {
40
+ morpho?: LendProvider<LendProviderConfig>
41
+ aave?: LendProvider<LendProviderConfig>
42
+ }
36
43
  }): Promise<DynamicWallet> {
37
44
  const wallet = new DynamicWallet(
38
45
  params.chainManager,
39
46
  params.dynamicWallet,
40
- params.lendProvider,
47
+ params.lendProviders,
41
48
  )
42
49
  await wallet.initialize()
43
50
  return wallet
@@ -1,6 +1,8 @@
1
1
  import { vi } from 'vitest'
2
2
 
3
+ import type { LendProvider } from '@/lend/core/LendProvider.js'
3
4
  import type { ChainManager } from '@/services/ChainManager.js'
5
+ import type { LendProviderConfig } from '@/types/actions.js'
4
6
  import type { Wallet } from '@/wallet/core/wallets/abstract/Wallet.js'
5
7
  import type { DynamicHostedWalletToActionsWalletOptions } from '@/wallet/react/providers/hosted/types/index.js'
6
8
 
@@ -15,6 +17,10 @@ export class DynamicWalletMock {
15
17
  async (_params: {
16
18
  chainManager: ChainManager
17
19
  dynamicWallet: DynamicHostedWalletToActionsWalletOptions['wallet']
20
+ lendProviders?: {
21
+ morpho?: LendProvider<LendProviderConfig>
22
+ aave?: LendProvider<LendProviderConfig>
23
+ }
18
24
  }): Promise<Wallet> => {
19
25
  return {} as unknown as Wallet
20
26
  },
@@ -1,8 +1,9 @@
1
1
  import type { ConnectedWallet } from '@privy-io/react-auth'
2
2
  import type { Address, LocalAccount } from 'viem'
3
3
 
4
+ import type { LendProvider } from '@/lend/core/LendProvider.js'
4
5
  import type { ChainManager } from '@/services/ChainManager.js'
5
- import type { LendConfig, LendProvider } from '@/types/lend/index.js'
6
+ import type { LendProviderConfig } from '@/types/actions.js'
6
7
  import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
7
8
  import { createSigner } from '@/wallet/react/wallets/hosted/privy/utils/createSigner.js'
8
9
 
@@ -19,21 +20,27 @@ export class PrivyWallet extends EOAWallet {
19
20
  private constructor(
20
21
  chainManager: ChainManager,
21
22
  connectedWallet: ConnectedWallet,
22
- lendProvider?: LendProvider<LendConfig>,
23
+ lendProviders?: {
24
+ morpho?: LendProvider<LendProviderConfig>
25
+ aave?: LendProvider<LendProviderConfig>
26
+ },
23
27
  ) {
24
- super(chainManager, lendProvider)
28
+ super(chainManager, lendProviders)
25
29
  this.connectedWallet = connectedWallet
26
30
  }
27
31
 
28
32
  static async create(params: {
29
33
  chainManager: ChainManager
30
34
  connectedWallet: ConnectedWallet
31
- lendProvider?: LendProvider<LendConfig>
35
+ lendProviders?: {
36
+ morpho?: LendProvider<LendProviderConfig>
37
+ aave?: LendProvider<LendProviderConfig>
38
+ }
32
39
  }): Promise<PrivyWallet> {
33
40
  const wallet = new PrivyWallet(
34
41
  params.chainManager,
35
42
  params.connectedWallet,
36
- params.lendProvider,
43
+ params.lendProviders,
37
44
  )
38
45
  await wallet.initialize()
39
46
  return wallet
@@ -1,8 +1,9 @@
1
1
  import type { TurnkeySDKClientBase } from '@turnkey/react-wallet-kit'
2
2
  import type { Address, LocalAccount } from 'viem'
3
3
 
4
+ import type { LendProvider } from '@/lend/core/LendProvider.js'
4
5
  import type { ChainManager } from '@/services/ChainManager.js'
5
- import type { LendConfig, LendProvider } from '@/types/lend/index.js'
6
+ import type { LendProviderConfig } from '@/types/actions.js'
6
7
  import { EOAWallet } from '@/wallet/core/wallets/eoa/EOAWallet.js'
7
8
  import { createSigner } from '@/wallet/react/wallets/hosted/turnkey/utils/createSigner.js'
8
9
 
@@ -39,7 +40,10 @@ export class TurnkeyWallet extends EOAWallet {
39
40
  organizationId: string
40
41
  signWith: string
41
42
  ethereumAddress?: string
42
- lendProvider?: LendProvider<LendConfig>
43
+ lendProviders?: {
44
+ morpho?: LendProvider<LendProviderConfig>
45
+ aave?: LendProvider<LendProviderConfig>
46
+ }
43
47
  }) {
44
48
  const {
45
49
  chainManager,
@@ -47,9 +51,9 @@ export class TurnkeyWallet extends EOAWallet {
47
51
  organizationId,
48
52
  signWith,
49
53
  ethereumAddress,
50
- lendProvider,
54
+ lendProviders,
51
55
  } = params
52
- super(chainManager, lendProvider)
56
+ super(chainManager, lendProviders)
53
57
  this.client = client
54
58
  this.organizationId = organizationId
55
59
  this.signWith = signWith
@@ -62,7 +66,10 @@ export class TurnkeyWallet extends EOAWallet {
62
66
  organizationId: string
63
67
  signWith: string
64
68
  ethereumAddress?: string
65
- lendProvider?: LendProvider<LendConfig>
69
+ lendProviders?: {
70
+ morpho?: LendProvider<LendProviderConfig>
71
+ aave?: LendProvider<LendProviderConfig>
72
+ }
66
73
  }): Promise<TurnkeyWallet> {
67
74
  const wallet = new TurnkeyWallet(params)
68
75
  await wallet.initialize()
@@ -1,10 +0,0 @@
1
- /**
2
- * Default SDK configuration values
3
- */
4
- export declare const DEFAULT_ACTIONS_CONFIG: {
5
- readonly lend: {
6
- /** Default slippage tolerance for lending operations (in basis points: 50 = 0.5%) */
7
- readonly defaultSlippage: 50;
8
- };
9
- };
10
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/constants/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,sBAAsB;;QAE/B,qFAAqF;;;CAG/E,CAAA"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Default SDK configuration values
3
- */
4
- export const DEFAULT_ACTIONS_CONFIG = {
5
- lend: {
6
- /** Default slippage tolerance for lending operations (in basis points: 50 = 0.5%) */
7
- defaultSlippage: 50,
8
- },
9
- };
10
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/constants/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE;QACJ,qFAAqF;QACrF,eAAe,EAAE,EAAE;KACpB;CACO,CAAA"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Default SDK configuration values
3
- */
4
- export const DEFAULT_ACTIONS_CONFIG = {
5
- lend: {
6
- /** Default slippage tolerance for lending operations (in basis points: 50 = 0.5%) */
7
- defaultSlippage: 50,
8
- },
9
- } as const