@morpho-org/consumer-sdk 0.3.0 → 0.4.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 (41) hide show
  1. package/README.md +178 -44
  2. package/lib/actions/index.d.ts +1 -0
  3. package/lib/actions/index.js +1 -0
  4. package/lib/actions/requirements/getRequirements.js +3 -0
  5. package/lib/actions/requirements/getRequirementsAction.d.ts +2 -2
  6. package/lib/actions/requirements/getRequirementsAction.js +7 -7
  7. package/lib/actions/vaultV1/deposit.d.ts +41 -0
  8. package/lib/actions/vaultV1/deposit.js +116 -0
  9. package/lib/actions/vaultV1/index.d.ts +3 -0
  10. package/lib/actions/vaultV1/index.js +19 -0
  11. package/lib/actions/vaultV1/redeem.d.ts +29 -0
  12. package/lib/actions/vaultV1/redeem.js +48 -0
  13. package/lib/actions/vaultV1/withdraw.d.ts +29 -0
  14. package/lib/actions/vaultV1/withdraw.js +48 -0
  15. package/lib/actions/vaultV2/deposit.d.ts +20 -25
  16. package/lib/actions/vaultV2/deposit.js +78 -40
  17. package/lib/actions/vaultV2/forceRedeem.js +2 -2
  18. package/lib/actions/vaultV2/forceWithdraw.d.ts +2 -2
  19. package/lib/actions/vaultV2/forceWithdraw.js +8 -8
  20. package/lib/actions/vaultV2/redeem.js +2 -2
  21. package/lib/actions/vaultV2/withdraw.d.ts +3 -3
  22. package/lib/actions/vaultV2/withdraw.js +6 -6
  23. package/lib/client/morphoClient.d.ts +2 -1
  24. package/lib/client/morphoClient.js +3 -0
  25. package/lib/client/morphoViemExtension.d.ts +12 -9
  26. package/lib/client/morphoViemExtension.js +12 -9
  27. package/lib/entities/index.d.ts +1 -0
  28. package/lib/entities/index.js +1 -0
  29. package/lib/entities/vaultV1/index.d.ts +1 -0
  30. package/lib/entities/vaultV1/index.js +17 -0
  31. package/lib/entities/vaultV1/vaultV1.d.ts +95 -0
  32. package/lib/entities/vaultV1/vaultV1.js +125 -0
  33. package/lib/entities/vaultV2/vaultV2.d.ts +24 -21
  34. package/lib/entities/vaultV2/vaultV2.js +39 -16
  35. package/lib/helpers/encodeDeallocation.js +3 -3
  36. package/lib/types/action.d.ts +39 -4
  37. package/lib/types/client.d.ts +2 -1
  38. package/lib/types/deallocation.d.ts +1 -1
  39. package/lib/types/error.d.ts +22 -4
  40. package/lib/types/error.js +48 -12
  41. package/package.json +1 -1
@@ -1,24 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeallocationsExceedWithdrawError = exports.DepositAssetMismatchError = exports.DepositAmountMismatchError = exports.EmptyDeallocationsError = exports.ExcessiveSlippageToleranceError = exports.ApprovalAmountLessThanSpendAmountError = exports.MissingClientPropertyError = exports.ChainIdMismatchError = exports.AddressMismatchError = exports.ZeroMaxSharePriceError = exports.ZeroSharesAmountError = exports.ZeroAssetAmountError = void 0;
4
- class ZeroAssetAmountError extends Error {
3
+ exports.VaultAddressMismatchError = exports.ZeroDepositAmountError = exports.NegativeNativeAmountError = exports.ChainWNativeMissingError = exports.NativeAmountOnNonWNativeVaultError = exports.DeallocationsExceedWithdrawError = exports.DepositAssetMismatchError = exports.DepositAmountMismatchError = exports.EmptyDeallocationsError = exports.ExcessiveSlippageToleranceError = exports.NegativeSlippageToleranceError = exports.ApprovalAmountLessThanSpendAmountError = exports.MissingClientPropertyError = exports.ChainIdMismatchError = exports.AddressMismatchError = exports.NonPositiveMaxSharePriceError = exports.NonPositiveSharesAmountError = exports.NonPositiveAssetAmountError = void 0;
4
+ class NonPositiveAssetAmountError extends Error {
5
5
  constructor(origin) {
6
- super(`Asset amount cannot be zero for address ${origin}`);
6
+ super(`Asset amount must be positive for address ${origin}`);
7
7
  }
8
8
  }
9
- exports.ZeroAssetAmountError = ZeroAssetAmountError;
10
- class ZeroSharesAmountError extends Error {
9
+ exports.NonPositiveAssetAmountError = NonPositiveAssetAmountError;
10
+ class NonPositiveSharesAmountError extends Error {
11
11
  constructor(vault) {
12
- super(`Shares amount cannot be zero for address: ${vault}`);
12
+ super(`Shares amount must be positive for address: ${vault}`);
13
13
  }
14
14
  }
15
- exports.ZeroSharesAmountError = ZeroSharesAmountError;
16
- class ZeroMaxSharePriceError extends Error {
15
+ exports.NonPositiveSharesAmountError = NonPositiveSharesAmountError;
16
+ class NonPositiveMaxSharePriceError extends Error {
17
17
  constructor(vault) {
18
- super(`Max share price cannot be zero for vault: ${vault}`);
18
+ super(`Max share price must be positive for vault: ${vault}`);
19
19
  }
20
20
  }
21
- exports.ZeroMaxSharePriceError = ZeroMaxSharePriceError;
21
+ exports.NonPositiveMaxSharePriceError = NonPositiveMaxSharePriceError;
22
22
  class AddressMismatchError extends Error {
23
23
  constructor(clientAddress, argsAddress) {
24
24
  super(`Address mismatch between client: ${clientAddress} and args: ${argsAddress}`);
@@ -43,6 +43,12 @@ class ApprovalAmountLessThanSpendAmountError extends Error {
43
43
  }
44
44
  }
45
45
  exports.ApprovalAmountLessThanSpendAmountError = ApprovalAmountLessThanSpendAmountError;
46
+ class NegativeSlippageToleranceError extends Error {
47
+ constructor(slippageTolerance) {
48
+ super(`Slippage tolerance ${slippageTolerance} must not be negative`);
49
+ }
50
+ }
51
+ exports.NegativeSlippageToleranceError = NegativeSlippageToleranceError;
46
52
  class ExcessiveSlippageToleranceError extends Error {
47
53
  constructor(slippageTolerance) {
48
54
  super(`Slippage tolerance ${slippageTolerance} exceeds maximum allowed (10%)`);
@@ -68,8 +74,38 @@ class DepositAssetMismatchError extends Error {
68
74
  }
69
75
  exports.DepositAssetMismatchError = DepositAssetMismatchError;
70
76
  class DeallocationsExceedWithdrawError extends Error {
71
- constructor(vault, withdrawAssets, totalDeallocated) {
72
- super(`Total deallocated assets (${totalDeallocated}) exceed withdraw amount (${withdrawAssets}) for vault: ${vault}`);
77
+ constructor(vault, withdrawAmount, totalDeallocated) {
78
+ super(`Total deallocated amount (${totalDeallocated}) exceed withdraw amount (${withdrawAmount}) for vault: ${vault}`);
73
79
  }
74
80
  }
75
81
  exports.DeallocationsExceedWithdrawError = DeallocationsExceedWithdrawError;
82
+ class NativeAmountOnNonWNativeVaultError extends Error {
83
+ constructor(vaultAsset, wNative) {
84
+ super(`Cannot use nativeAmount: vault asset ${vaultAsset} is not the wrapped native token ${wNative}`);
85
+ }
86
+ }
87
+ exports.NativeAmountOnNonWNativeVaultError = NativeAmountOnNonWNativeVaultError;
88
+ class ChainWNativeMissingError extends Error {
89
+ constructor(chainId) {
90
+ super(`Chain ${chainId} does not have a configured wrapped native token (wNative)`);
91
+ }
92
+ }
93
+ exports.ChainWNativeMissingError = ChainWNativeMissingError;
94
+ class NegativeNativeAmountError extends Error {
95
+ constructor(nativeAmount) {
96
+ super(`Native amount must not be negative, got ${nativeAmount}`);
97
+ }
98
+ }
99
+ exports.NegativeNativeAmountError = NegativeNativeAmountError;
100
+ class ZeroDepositAmountError extends Error {
101
+ constructor(vault) {
102
+ super(`Total deposit amount must be positive for vault: ${vault}. Both amount and nativeAmount are zero.`);
103
+ }
104
+ }
105
+ exports.ZeroDepositAmountError = ZeroDepositAmountError;
106
+ class VaultAddressMismatchError extends Error {
107
+ constructor(vaultAddress, argsVaultAddress) {
108
+ super(`Vault address mismatch between vault: ${vaultAddress} and args: ${argsVaultAddress}`);
109
+ }
110
+ }
111
+ exports.VaultAddressMismatchError = VaultAddressMismatchError;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@morpho-org/consumer-sdk",
3
3
  "description": "Abstraction layer for Morpho's complexity.",
4
- "version": "0.3.0",
4
+ "version": "0.4.0",
5
5
  "author": "Morpho Association <contact@morpho.org>",
6
6
  "contributors": [
7
7
  "Foulks-Plb <https://x.com/FoulkPlb>"