@morpho-org/blue-sdk 1.0.1 → 1.0.2
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/package.json +10 -6
- package/src/addresses.ts +261 -0
- package/src/chain/chain.constants.ts +235 -0
- package/src/chain/chain.test.ts +51 -0
- package/src/chain/chain.types.ts +42 -0
- package/src/chain/chain.utils.ts +44 -0
- package/src/constants.ts +18 -0
- package/src/errors.ts +75 -0
- package/src/ethers/ethers.test.ts +17 -0
- package/src/ethers/safeGetAddress.ts +4 -0
- package/src/ethers/safeParseUnits.ts +29 -0
- package/src/evm.ts +172 -0
- package/src/helpers/format/format.test.ts +340 -0
- package/src/helpers/format/format.ts +416 -0
- package/src/helpers/getChecksumedAddress.ts +15 -0
- package/{lib/helpers/isZeroAddressOrUnset.d.ts → src/helpers/isZeroAddressOrUnset.ts} +7 -1
- package/src/helpers/locale.ts +108 -0
- package/src/holding/Holding.ts +109 -0
- package/src/market/Market.ts +479 -0
- package/src/market/MarketConfig.ts +108 -0
- package/src/market/MarketUtils.test.ts +25 -0
- package/src/market/MarketUtils.ts +467 -0
- package/src/maths/AdaptiveCurveIrmLib.ts +143 -0
- package/src/maths/MathLib.ts +208 -0
- package/src/maths/MathUtils.ts +31 -0
- package/src/maths/SharesMath.ts +40 -0
- package/src/notifications.ts +167 -0
- package/src/position/Position.ts +251 -0
- package/src/signatures/index.ts +18 -0
- package/src/signatures/manager.ts +50 -0
- package/src/signatures/permit.ts +126 -0
- package/src/signatures/permit2.ts +120 -0
- package/src/signatures/types.ts +18 -0
- package/src/signatures/utils.ts +83 -0
- package/src/tests/mocks/markets.ts +110 -0
- package/src/token/ERC20Metadata.ts +124 -0
- package/src/token/Token.ts +83 -0
- package/src/token/TokenNamespace.ts +76 -0
- package/src/token/WrappedToken.ts +142 -0
- package/src/types.ts +37 -0
- package/src/user/User.ts +32 -0
- package/src/user/user.types.ts +23 -0
- package/src/vault/Vault.ts +370 -0
- package/src/vault/VaultAllocation.ts +58 -0
- package/src/vault/VaultConfig.ts +55 -0
- package/src/vault/VaultUtils.ts +47 -0
- package/lib/addresses.d.ts +0 -168
- package/lib/addresses.js +0 -169
- package/lib/chain/chain.constants.d.ts +0 -3
- package/lib/chain/chain.constants.js +0 -232
- package/lib/chain/chain.types.d.ts +0 -20
- package/lib/chain/chain.types.js +0 -30
- package/lib/chain/chain.utils.d.ts +0 -14
- package/lib/chain/chain.utils.js +0 -30
- package/lib/chain/index.js +0 -18
- package/lib/constants.d.ts +0 -8
- package/lib/constants.js +0 -13
- package/lib/errors.d.ts +0 -37
- package/lib/errors.js +0 -71
- package/lib/ethers/index.js +0 -18
- package/lib/ethers/safeGetAddress.d.ts +0 -1
- package/lib/ethers/safeGetAddress.js +0 -6
- package/lib/ethers/safeParseUnits.d.ts +0 -2
- package/lib/ethers/safeParseUnits.js +0 -25
- package/lib/evm.d.ts +0 -36
- package/lib/evm.js +0 -113
- package/lib/helpers/format/format.d.ts +0 -98
- package/lib/helpers/format/format.js +0 -301
- package/lib/helpers/format/index.js +0 -17
- package/lib/helpers/getChecksumedAddress.d.ts +0 -7
- package/lib/helpers/getChecksumedAddress.js +0 -17
- package/lib/helpers/index.js +0 -20
- package/lib/helpers/isZeroAddressOrUnset.js +0 -14
- package/lib/helpers/locale.d.ts +0 -36
- package/lib/helpers/locale.js +0 -86
- package/lib/holding/Holding.d.ts +0 -60
- package/lib/holding/Holding.js +0 -31
- package/lib/holding/index.js +0 -17
- package/lib/index.d.ts +0 -33
- package/lib/index.js +0 -62
- package/lib/market/Market.d.ts +0 -159
- package/lib/market/Market.js +0 -240
- package/lib/market/MarketConfig.d.ts +0 -44
- package/lib/market/MarketConfig.js +0 -56
- package/lib/market/MarketUtils.d.ts +0 -165
- package/lib/market/MarketUtils.js +0 -182
- package/lib/market/index.js +0 -19
- package/lib/maths/AdaptiveCurveIrmLib.d.ts +0 -37
- package/lib/maths/AdaptiveCurveIrmLib.js +0 -116
- package/lib/maths/MathLib.d.ts +0 -94
- package/lib/maths/MathLib.js +0 -153
- package/lib/maths/MathUtils.d.ts +0 -15
- package/lib/maths/MathUtils.js +0 -33
- package/lib/maths/SharesMath.d.ts +0 -12
- package/lib/maths/SharesMath.js +0 -22
- package/lib/maths/index.js +0 -20
- package/lib/notifications.d.ts +0 -98
- package/lib/notifications.js +0 -52
- package/lib/position/Position.d.ts +0 -118
- package/lib/position/Position.js +0 -145
- package/lib/position/index.js +0 -17
- package/lib/signatures/index.d.ts +0 -12
- package/lib/signatures/index.js +0 -39
- package/lib/signatures/manager.d.ts +0 -10
- package/lib/signatures/manager.js +0 -37
- package/lib/signatures/permit.d.ts +0 -21
- package/lib/signatures/permit.js +0 -101
- package/lib/signatures/permit2.d.ts +0 -20
- package/lib/signatures/permit2.js +0 -91
- package/lib/signatures/types.d.ts +0 -13
- package/lib/signatures/types.js +0 -2
- package/lib/signatures/utils.d.ts +0 -6
- package/lib/signatures/utils.js +0 -44
- package/lib/tests/mocks/markets.d.ts +0 -17
- package/lib/tests/mocks/markets.js +0 -108
- package/lib/token/ERC20Metadata.d.ts +0 -249
- package/lib/token/ERC20Metadata.js +0 -81
- package/lib/token/Token.d.ts +0 -45
- package/lib/token/Token.js +0 -39
- package/lib/token/TokenNamespace.d.ts +0 -18
- package/lib/token/TokenNamespace.js +0 -55
- package/lib/token/WrappedToken.d.ts +0 -42
- package/lib/token/WrappedToken.js +0 -87
- package/lib/token/index.js +0 -18
- package/lib/types.d.ts +0 -29
- package/lib/types.js +0 -23
- package/lib/user/User.d.ts +0 -20
- package/lib/user/User.js +0 -11
- package/lib/user/index.js +0 -18
- package/lib/user/user.types.d.ts +0 -18
- package/lib/user/user.types.js +0 -2
- package/lib/vault/Vault.d.ts +0 -167
- package/lib/vault/Vault.js +0 -156
- package/lib/vault/VaultAllocation.d.ts +0 -38
- package/lib/vault/VaultAllocation.js +0 -18
- package/lib/vault/VaultConfig.d.ts +0 -23
- package/lib/vault/VaultConfig.js +0 -26
- package/lib/vault/VaultUtils.d.ts +0 -17
- package/lib/vault/VaultUtils.js +0 -17
- package/lib/vault/index.js +0 -20
- /package/{lib/chain/index.d.ts → src/chain/index.ts} +0 -0
- /package/{lib/ethers/index.d.ts → src/ethers/index.ts} +0 -0
- /package/{lib/helpers/format/index.d.ts → src/helpers/format/index.ts} +0 -0
- /package/{lib/helpers/index.d.ts → src/helpers/index.ts} +0 -0
- /package/{lib/holding/index.d.ts → src/holding/index.ts} +0 -0
- /package/{lib/market/index.d.ts → src/market/index.ts} +0 -0
- /package/{lib/maths/index.d.ts → src/maths/index.ts} +0 -0
- /package/{lib/position/index.d.ts → src/position/index.ts} +0 -0
- /package/{lib/token/index.d.ts → src/token/index.ts} +0 -0
- /package/{lib/user/index.d.ts → src/user/index.ts} +0 -0
- /package/{lib/vault/index.d.ts → src/vault/index.ts} +0 -0
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { ChainId } from "../chain";
|
|
2
|
-
import { Address } from "../types";
|
|
3
|
-
interface InputVaultConfig {
|
|
4
|
-
address: Address;
|
|
5
|
-
decimals: number;
|
|
6
|
-
decimalsOffset: bigint;
|
|
7
|
-
symbol: string;
|
|
8
|
-
name: string;
|
|
9
|
-
asset: Address;
|
|
10
|
-
}
|
|
11
|
-
export declare class VaultConfig implements InputVaultConfig {
|
|
12
|
-
readonly chainId?: number | undefined;
|
|
13
|
-
protected static readonly _CACHE: Record<number, Record<Address, VaultConfig>>;
|
|
14
|
-
static get(address: Address, chainId: ChainId): VaultConfig;
|
|
15
|
-
readonly address: Address;
|
|
16
|
-
readonly decimals: number;
|
|
17
|
-
readonly decimalsOffset: bigint;
|
|
18
|
-
readonly symbol: string;
|
|
19
|
-
readonly name: string;
|
|
20
|
-
readonly asset: Address;
|
|
21
|
-
constructor({ address, decimals, decimalsOffset, symbol, name, asset, }: InputVaultConfig, chainId?: number | undefined);
|
|
22
|
-
}
|
|
23
|
-
export {};
|
package/lib/vault/VaultConfig.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.VaultConfig = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
5
|
-
class VaultConfig {
|
|
6
|
-
static get(address, chainId) {
|
|
7
|
-
const config = VaultConfig._CACHE[chainId]?.[address];
|
|
8
|
-
if (!config)
|
|
9
|
-
throw new errors_1.UnknownVaultConfigError(address);
|
|
10
|
-
return config;
|
|
11
|
-
}
|
|
12
|
-
constructor({ address, decimals, decimalsOffset, symbol, name, asset, }, chainId) {
|
|
13
|
-
var _a;
|
|
14
|
-
this.chainId = chainId;
|
|
15
|
-
this.address = address;
|
|
16
|
-
this.decimals = decimals;
|
|
17
|
-
this.decimalsOffset = decimalsOffset;
|
|
18
|
-
this.symbol = symbol;
|
|
19
|
-
this.name = name;
|
|
20
|
-
this.asset = asset;
|
|
21
|
-
if (chainId != null)
|
|
22
|
-
((_a = VaultConfig._CACHE)[chainId] ?? (_a[chainId] = {}))[address] = this;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.VaultConfig = VaultConfig;
|
|
26
|
-
VaultConfig._CACHE = {};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { BigNumberish } from "ethers";
|
|
2
|
-
import { RoundingDirection } from "../maths";
|
|
3
|
-
export declare namespace VaultUtils {
|
|
4
|
-
const VIRTUAL_ASSETS = 1n;
|
|
5
|
-
function toAssets(shares: BigNumberish, { totalAssets, totalSupply, }: {
|
|
6
|
-
totalAssets: BigNumberish;
|
|
7
|
-
totalSupply: BigNumberish;
|
|
8
|
-
}, { decimalsOffset }: {
|
|
9
|
-
decimalsOffset: BigNumberish;
|
|
10
|
-
}, rounding?: RoundingDirection): bigint;
|
|
11
|
-
function toShares(assets: BigNumberish, { totalAssets, totalSupply, }: {
|
|
12
|
-
totalAssets: BigNumberish;
|
|
13
|
-
totalSupply: BigNumberish;
|
|
14
|
-
}, { decimalsOffset }: {
|
|
15
|
-
decimalsOffset: BigNumberish;
|
|
16
|
-
}, rounding?: RoundingDirection): bigint;
|
|
17
|
-
}
|
package/lib/vault/VaultUtils.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.VaultUtils = void 0;
|
|
4
|
-
const ethers_1 = require("ethers");
|
|
5
|
-
const maths_1 = require("../maths");
|
|
6
|
-
var VaultUtils;
|
|
7
|
-
(function (VaultUtils) {
|
|
8
|
-
VaultUtils.VIRTUAL_ASSETS = 1n;
|
|
9
|
-
function toAssets(shares, { totalAssets, totalSupply, }, { decimalsOffset }, rounding = "Down") {
|
|
10
|
-
return maths_1.MathLib.mulDiv(shares, (0, ethers_1.toBigInt)(totalAssets) + VaultUtils.VIRTUAL_ASSETS, (0, ethers_1.toBigInt)(totalSupply) + 10n ** (0, ethers_1.toBigInt)(decimalsOffset), rounding);
|
|
11
|
-
}
|
|
12
|
-
VaultUtils.toAssets = toAssets;
|
|
13
|
-
function toShares(assets, { totalAssets, totalSupply, }, { decimalsOffset }, rounding = "Up") {
|
|
14
|
-
return maths_1.MathLib.mulDiv(assets, (0, ethers_1.toBigInt)(totalSupply) + 10n ** (0, ethers_1.toBigInt)(decimalsOffset), (0, ethers_1.toBigInt)(totalAssets) + VaultUtils.VIRTUAL_ASSETS, rounding);
|
|
15
|
-
}
|
|
16
|
-
VaultUtils.toShares = toShares;
|
|
17
|
-
})(VaultUtils || (exports.VaultUtils = VaultUtils = {}));
|
package/lib/vault/index.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./VaultUtils"), exports);
|
|
18
|
-
__exportStar(require("./VaultConfig"), exports);
|
|
19
|
-
__exportStar(require("./VaultAllocation"), exports);
|
|
20
|
-
__exportStar(require("./Vault"), exports);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|