@pendle/sdk-boros 0.3.2 → 0.3.4
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/backend/secrettune/BorosBackendSDK.d.ts +129 -14
- package/dist/backend/secrettune/BorosBackendSDK.js +70 -1
- package/dist/backend/secrettune/BorosBackendSDK.js.map +1 -1
- package/dist/backend/secrettune/module.js +1 -1
- package/dist/backend/secrettune/module.js.map +1 -1
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.js +3 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/multiTokenMerkleDistributorAbi.d.ts +50 -0
- package/dist/contracts/multiTokenMerkleDistributorAbi.js +413 -0
- package/dist/contracts/multiTokenMerkleDistributorAbi.js.map +1 -0
- package/dist/entities/Distributor/distributor.d.ts +36 -0
- package/dist/entities/Distributor/distributor.js +21 -0
- package/dist/entities/Distributor/distributor.js.map +1 -1
- package/dist/entities/exchange/exchange.d.ts +3 -2
- package/dist/entities/exchange/exchange.js +7 -3
- package/dist/entities/exchange/exchange.js.map +1 -1
- package/dist/entities/index.d.ts +1 -0
- package/dist/entities/index.js +1 -0
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/market/market.d.ts +2 -2
- package/dist/entities/market/market.js +10 -7
- package/dist/entities/market/market.js.map +1 -1
- package/dist/entities/multiTokenMerkleDistributor/constants.d.ts +1 -0
- package/dist/entities/multiTokenMerkleDistributor/constants.js +5 -0
- package/dist/entities/multiTokenMerkleDistributor/constants.js.map +1 -0
- package/dist/entities/multiTokenMerkleDistributor/index.d.ts +3 -0
- package/dist/entities/multiTokenMerkleDistributor/index.js +20 -0
- package/dist/entities/multiTokenMerkleDistributor/index.js.map +1 -0
- package/dist/entities/multiTokenMerkleDistributor/multiTokenMerkleDistributor.d.ts +12 -0
- package/dist/entities/multiTokenMerkleDistributor/multiTokenMerkleDistributor.js +44 -0
- package/dist/entities/multiTokenMerkleDistributor/multiTokenMerkleDistributor.js.map +1 -0
- package/dist/entities/multiTokenMerkleDistributor/referralRewardsDistributor.d.ts +1 -0
- package/dist/entities/multiTokenMerkleDistributor/referralRewardsDistributor.js +3 -0
- package/dist/entities/multiTokenMerkleDistributor/referralRewardsDistributor.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,13 +19,13 @@ class Market {
|
|
|
19
19
|
return initialMargin.value;
|
|
20
20
|
}
|
|
21
21
|
static getIMSuf(data) {
|
|
22
|
-
const { orderRate, leverage, marginFactor, markRate, minMarginIndexRate,
|
|
23
|
-
|
|
24
|
-
const absMarkRate = markRate.abs();
|
|
25
|
-
const timeToMaturity_y = (marketExpiry_s - Math.floor(Date.now() / 1000)) / SECONDS_PER_YEARS;
|
|
26
|
-
if (timeToMaturity_y <= 0) {
|
|
22
|
+
const { orderRate, leverage, marginFactor, markRate, minMarginIndexRate, timeToMaturity, minMarginIndexDuration_s, isMarketOrder, } = data;
|
|
23
|
+
if (timeToMaturity <= 0) {
|
|
27
24
|
return boros_offchain_math_1.FixedX18.ZERO;
|
|
28
25
|
}
|
|
26
|
+
const absOrderRate = orderRate.abs();
|
|
27
|
+
const absMarkRate = markRate.abs();
|
|
28
|
+
const timeToMaturity_y = timeToMaturity / SECONDS_PER_YEARS;
|
|
29
29
|
const minTime_y = minMarginIndexDuration_s / SECONDS_PER_YEARS;
|
|
30
30
|
const time = boros_offchain_math_1.FixedX18.fromNumber(Math.max(timeToMaturity_y, minTime_y));
|
|
31
31
|
const offchainRate = absOrderRate.gt(minMarginIndexRate) ? absOrderRate : minMarginIndexRate;
|
|
@@ -39,8 +39,11 @@ class Market {
|
|
|
39
39
|
return contractSuf.gt(offchainSuf) ? contractSuf : offchainSuf;
|
|
40
40
|
}
|
|
41
41
|
static getOrderValue(params) {
|
|
42
|
-
const { orderSize, orderRate,
|
|
43
|
-
|
|
42
|
+
const { orderSize, orderRate, timeToMaturity } = params;
|
|
43
|
+
if (timeToMaturity <= 0) {
|
|
44
|
+
return BigInt(0);
|
|
45
|
+
}
|
|
46
|
+
const timeToMaturity_y = boros_offchain_math_1.FixedX18.divDown(BigInt(timeToMaturity), BigInt(SECONDS_PER_YEARS));
|
|
44
47
|
const orderValue = boros_offchain_math_1.FixedX18.fromRawValue(orderSize).mulDown(orderRate).mulDown(timeToMaturity_y).value;
|
|
45
48
|
return orderValue;
|
|
46
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market.js","sourceRoot":"","sources":["../../../src/entities/market/market.ts"],"names":[],"mappings":";;;AAAA,qEAAuD;AAEvD,MAAM,iDAAiD,GAAG,8BAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACrF,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC;AAsC1C,MAAa,MAAM;IACjB,MAAM,CAAC,gCAAgC,CACrC,MAA8C,EAC9C,YAAqB,KAAK;QAE1B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAGtC,MAAM,SAAS,GAAG,8BAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE7E,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC,OAAO,CAAC,8BAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC,KAAK,CAAC;QACtG,CAAC;QAED,OAAO,SAAS,CAAC,KAAK,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,2BAA2B,CAAC,MAAyC,EAAE,YAAqB,IAAI;QACrG,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,aAAa,GAAG,8BAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7E,OAAO,aAAa,CAAC,KAAK,CAAC;IAC7B,CAAC;IAEO,MAAM,CAAC,QAAQ,CAAC,IAA+C;QACrE,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,aAAa,GACd,GAAG,IAAI,CAAC;QAET,
|
|
1
|
+
{"version":3,"file":"market.js","sourceRoot":"","sources":["../../../src/entities/market/market.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const MULTI_TOKEN_MERKLE_DISTRIBUTOR_ADDRESS = "0x580bd289c25e7f254634e6ad8a95d631393c7172";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MULTI_TOKEN_MERKLE_DISTRIBUTOR_ADDRESS = void 0;
|
|
4
|
+
exports.MULTI_TOKEN_MERKLE_DISTRIBUTOR_ADDRESS = '0x580bd289c25e7f254634e6ad8a95d631393c7172';
|
|
5
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/entities/multiTokenMerkleDistributor/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,sCAAsC,GAAG,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
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("./constants"), exports);
|
|
18
|
+
__exportStar(require("./referralRewardsDistributor"), exports);
|
|
19
|
+
__exportStar(require("./multiTokenMerkleDistributor"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entities/multiTokenMerkleDistributor/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,+DAA6C;AAC7C,gEAA8C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Address } from "viem";
|
|
2
|
+
export declare class MultiTokenMerkleDistributor {
|
|
3
|
+
private distributorContract;
|
|
4
|
+
constructor();
|
|
5
|
+
claim(receiver: Address, tokens: Address[], totalAccrueds: bigint[], proofs: string[][]): Promise<{
|
|
6
|
+
from: `0x${string}`;
|
|
7
|
+
to: string;
|
|
8
|
+
data: `0x${string}`;
|
|
9
|
+
gas: bigint;
|
|
10
|
+
}>;
|
|
11
|
+
getMerkleRoot(): Promise<unknown>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MultiTokenMerkleDistributor = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
const chains_1 = require("viem/chains");
|
|
7
|
+
const common_1 = require("../../common");
|
|
8
|
+
const multiTokenMerkleDistributorAbi_1 = require("../../contracts/multiTokenMerkleDistributorAbi");
|
|
9
|
+
class MultiTokenMerkleDistributor {
|
|
10
|
+
distributorContract;
|
|
11
|
+
constructor() {
|
|
12
|
+
this.distributorContract = (0, viem_1.getContract)({
|
|
13
|
+
address: constants_1.MULTI_TOKEN_MERKLE_DISTRIBUTOR_ADDRESS,
|
|
14
|
+
abi: multiTokenMerkleDistributorAbi_1.multiTokenMerkleDistributorAbi,
|
|
15
|
+
client: (0, viem_1.createPublicClient)({
|
|
16
|
+
chain: chains_1.arbitrum,
|
|
17
|
+
transport: (0, viem_1.http)(common_1.RPC_URL),
|
|
18
|
+
}),
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async claim(receiver, tokens, totalAccrueds, proofs) {
|
|
22
|
+
const args = [receiver, tokens, totalAccrueds, proofs];
|
|
23
|
+
const data = (0, viem_1.encodeFunctionData)({
|
|
24
|
+
abi: multiTokenMerkleDistributorAbi_1.multiTokenMerkleDistributorAbi,
|
|
25
|
+
functionName: 'claim',
|
|
26
|
+
args: args
|
|
27
|
+
});
|
|
28
|
+
const gas = await this.distributorContract.estimateGas.claim(args, {
|
|
29
|
+
account: receiver,
|
|
30
|
+
});
|
|
31
|
+
return {
|
|
32
|
+
from: receiver,
|
|
33
|
+
to: constants_1.MULTI_TOKEN_MERKLE_DISTRIBUTOR_ADDRESS,
|
|
34
|
+
data,
|
|
35
|
+
gas
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
async getMerkleRoot() {
|
|
39
|
+
const merkleRoot = await this.distributorContract.read.merkleRoot();
|
|
40
|
+
return merkleRoot;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.MultiTokenMerkleDistributor = MultiTokenMerkleDistributor;
|
|
44
|
+
//# sourceMappingURL=multiTokenMerkleDistributor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiTokenMerkleDistributor.js","sourceRoot":"","sources":["../../../src/entities/multiTokenMerkleDistributor/multiTokenMerkleDistributor.ts"],"names":[],"mappings":";;;AAAA,+BAAqG;AACrG,2CAAqE;AACrE,wCAAuC;AACvC,yCAAuC;AACvC,mGAAgG;AAEhG,MAAa,2BAA2B;IAC5B,mBAAmB,CAAC;IAC5B;QACI,IAAI,CAAC,mBAAmB,GAAG,IAAA,kBAAW,EAAC;YACnC,OAAO,EAAE,kDAAsC;YAC/C,GAAG,EAAE,+DAA8B;YACnC,MAAM,EAAE,IAAA,yBAAkB,EAAC;gBACvB,KAAK,EAAE,iBAAQ;gBACf,SAAS,EAAE,IAAA,WAAI,EAAC,gBAAO,CAAC;aAC3B,CAAC;SACL,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,KAAK,CACP,QAAiB,EACjB,MAAiB,EACjB,aAAuB,EACvB,MAAkB;QAElB,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,+DAA8B;YACnC,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,IAAI;SACb,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;YAC/D,OAAO,EAAE,QAAQ;SACpB,CAAC,CAAA;QAEF,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,kDAAsC;YAC1C,IAAI;YACJ,GAAG;SACN,CAAA;IACL,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACpE,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AA1CD,kEA0CC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"referralRewardsDistributor.js","sourceRoot":"","sources":["../../../src/entities/multiTokenMerkleDistributor/referralRewardsDistributor.ts"],"names":[],"mappings":""}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -20,4 +20,5 @@ __exportStar(require("./entities"), exports);
|
|
|
20
20
|
__exportStar(require("./constants"), exports);
|
|
21
21
|
__exportStar(require("./addresses"), exports);
|
|
22
22
|
__exportStar(require("./errors"), exports);
|
|
23
|
+
__exportStar(require("./backend"), exports);
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,8CAA4B;AAC5B,8CAA4B;AAC5B,2CAAyB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,8CAA4B;AAC5B,8CAA4B;AAC5B,2CAAyB;AACzB,4CAA0B"}
|