@pendle/sdk-boros 0.1.46 → 0.2.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/contracts/viemAbis.d.ts +546 -666
- package/dist/contracts/viemAbis.js +260 -345
- package/dist/contracts/viemAbis.js.map +1 -1
- package/dist/entities/agent/agent.js +2 -1
- package/dist/entities/agent/agent.js.map +1 -1
- package/dist/entities/exchange/exchange.d.ts +424 -328
- package/dist/entities/exchange/utils.d.ts +118 -94
- package/dist/errors/PendleContractError/type.d.ts +6 -2
- package/dist/types/common.d.ts +2 -1
- package/dist/types/encoders.d.ts +38 -41
- package/dist/types/encoders.js +4 -32
- package/dist/types/encoders.js.map +1 -1
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.js +0 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/signing/sensitive.js +2 -1
- package/dist/utils/signing/sensitive.js.map +1 -1
- package/package.json +2 -2
- package/dist/utils/tickLib.d.ts +0 -6
- package/dist/utils/tickLib.js +0 -53
- package/dist/utils/tickLib.js.map +0 -1
package/dist/types/encoders.js
CHANGED
|
@@ -25,27 +25,13 @@ exports.functionEncoder = {
|
|
|
25
25
|
args: [req],
|
|
26
26
|
});
|
|
27
27
|
},
|
|
28
|
-
|
|
28
|
+
placeSingleOrder(req) {
|
|
29
29
|
return (0, viem_1.encodeFunctionData)({
|
|
30
30
|
abi: viemAbis_1.iRouterAbi,
|
|
31
|
-
functionName: '
|
|
31
|
+
functionName: 'placeSingleOrder',
|
|
32
32
|
args: [req],
|
|
33
33
|
});
|
|
34
34
|
},
|
|
35
|
-
closeIsolatedPosition(order) {
|
|
36
|
-
return (0, viem_1.encodeFunctionData)({
|
|
37
|
-
abi: viemAbis_1.iRouterAbi,
|
|
38
|
-
functionName: 'closeIsolatedPosition',
|
|
39
|
-
args: [order],
|
|
40
|
-
});
|
|
41
|
-
},
|
|
42
|
-
placeOrder(order) {
|
|
43
|
-
return (0, viem_1.encodeFunctionData)({
|
|
44
|
-
abi: viemAbis_1.iRouterAbi,
|
|
45
|
-
functionName: 'placeOrder',
|
|
46
|
-
args: [order],
|
|
47
|
-
});
|
|
48
|
-
},
|
|
49
35
|
bulkOrders(req) {
|
|
50
36
|
return (0, viem_1.encodeFunctionData)({
|
|
51
37
|
abi: viemAbis_1.iRouterAbi,
|
|
@@ -60,24 +46,10 @@ exports.functionEncoder = {
|
|
|
60
46
|
args: [req],
|
|
61
47
|
});
|
|
62
48
|
},
|
|
63
|
-
|
|
64
|
-
return (0, viem_1.encodeFunctionData)({
|
|
65
|
-
abi: viemAbis_1.iRouterAbi,
|
|
66
|
-
functionName: 'modifyOrder',
|
|
67
|
-
args: [req],
|
|
68
|
-
});
|
|
69
|
-
},
|
|
70
|
-
enterMarkets(req) {
|
|
71
|
-
return (0, viem_1.encodeFunctionData)({
|
|
72
|
-
abi: viemAbis_1.iRouterAbi,
|
|
73
|
-
functionName: 'enterMarkets',
|
|
74
|
-
args: [req],
|
|
75
|
-
});
|
|
76
|
-
},
|
|
77
|
-
exitMarkets(req) {
|
|
49
|
+
enterExitMarkets(req) {
|
|
78
50
|
return (0, viem_1.encodeFunctionData)({
|
|
79
51
|
abi: viemAbis_1.iRouterAbi,
|
|
80
|
-
functionName: '
|
|
52
|
+
functionName: 'enterExitMarkets',
|
|
81
53
|
args: [req],
|
|
82
54
|
});
|
|
83
55
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoders.js","sourceRoot":"","sources":["../../src/types/encoders.ts"],"names":[],"mappings":";;;AAAA,+BAAwD;AACxD,oDAAiE;
|
|
1
|
+
{"version":3,"file":"encoders.js","sourceRoot":"","sources":["../../src/types/encoders.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export * from './signing';
|
|
2
2
|
export * from './accountLib';
|
|
3
3
|
export * from './orderLib';
|
|
4
|
-
export * from './tickLib';
|
|
5
4
|
import { Address, Hex, WalletClient } from 'viem';
|
|
6
5
|
import { MarketAcc } from '../types';
|
|
7
6
|
export declare function sendTx(walletClient: WalletClient, calldata: Hex): Promise<`0x${string}`>;
|
package/dist/utils/index.js
CHANGED
|
@@ -20,7 +20,6 @@ exports.getEnteredMarkets = getEnteredMarkets;
|
|
|
20
20
|
__exportStar(require("./signing"), exports);
|
|
21
21
|
__exportStar(require("./accountLib"), exports);
|
|
22
22
|
__exportStar(require("./orderLib"), exports);
|
|
23
|
-
__exportStar(require("./tickLib"), exports);
|
|
24
23
|
const addresses_1 = require("../addresses");
|
|
25
24
|
const marketHub_1 = require("../entities/marketHub");
|
|
26
25
|
async function sendTx(walletClient, calldata) {
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,wBAYC;AAED,wEAMC;AAED,8CAEC;AAjCD,4CAA0B;AAC1B,+CAA6B;AAC7B,6CAA2B;AAG3B,4CAA8C;AAC9C,qDAAkD;AAG3C,KAAK,UAAU,MAAM,CAAC,YAA0B,EAAE,QAAa;IACpE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QAChD,OAAO;QACP,EAAE,EAAE,0BAAc;QAClB,IAAI,EAAE,QAAQ;QAEd,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,YAAY,CAAC,KAAK;KAC1B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,8BAA8B,CAAC,gBAA8B;IACjF,IAAI,WAAW,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;IACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,CAAC,WAAW,CAAC,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,SAAoB;IAC1D,OAAO,qBAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -29,7 +29,8 @@ async function signApproveAgentMessage(wallet, message) {
|
|
|
29
29
|
types: {
|
|
30
30
|
EIP712Domain: common_1.EIP712_DOMAIN_TYPES,
|
|
31
31
|
ApproveAgentMessage: [
|
|
32
|
-
{ name: '
|
|
32
|
+
{ name: 'root', type: 'address' },
|
|
33
|
+
{ name: 'accountId', type: 'uint8' },
|
|
33
34
|
{ name: 'agent', type: 'address' },
|
|
34
35
|
{ name: 'expiry', type: 'uint64' },
|
|
35
36
|
{ name: 'nonce', type: 'uint64' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sensitive.js","sourceRoot":"","sources":["../../../src/utils/signing/sensitive.ts"],"names":[],"mappings":";;AAKA,4DAgBC;AAED,
|
|
1
|
+
{"version":3,"file":"sensitive.js","sourceRoot":"","sources":["../../../src/utils/signing/sensitive.ts"],"names":[],"mappings":";;AAKA,4DAgBC;AAED,0DAkBC;AAxCD,0BAAoD;AAEpD,qCAA2E;AAEpE,KAAK,UAAU,wBAAwB,CAAC,MAAoB,EAAE,OAA4B;IAC/F,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;IAC9C,OAAO,MAAM,CAAC,aAAa,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO;QAClC,MAAM,EAAE,mCAA0B;QAClC,KAAK,EAAE;YACL,YAAY,EAAE,4BAAmB;YACjC,mBAAmB,EAAE;gBACnB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;gBACpC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;gBACvC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;aAClC;SACF;QACD,WAAW,EAAE,qBAAqB;QAClC,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAAC,MAAoB,EAAE,OAA4B;IAC9F,MAAM,OAAO,GAAG,MAAM,IAAA,kCAA8B,EAAC,MAAM,CAAC,CAAC;IAC7D,OAAO,MAAM,CAAC,aAAa,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO;QAClC,MAAM,EAAE,mCAA0B;QAClC,KAAK,EAAE;YACL,YAAY,EAAE,4BAAmB;YACjC,mBAAmB,EAAE;gBACnB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;gBACjC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE;gBACpC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;gBAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;aAClC;SACF;QACD,WAAW,EAAE,qBAAqB;QAClC,OAAO;KACR,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@pendle/sdk-boros",
|
|
3
3
|
"description": "Pendle SDK for Boros",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.2.0",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"files": [
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@pendle/boros-offchain-math": "^1.0.1",
|
|
39
|
-
"@pendle/core-v3": "0.
|
|
39
|
+
"@pendle/core-v3": "0.4.1",
|
|
40
40
|
"axios": "^1.8.4",
|
|
41
41
|
"viem": "^2.22.5"
|
|
42
42
|
},
|
package/dist/utils/tickLib.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { FixedX18 } from '@pendle/boros-offchain-math';
|
|
2
|
-
import { Side } from '../types';
|
|
3
|
-
export declare function getRateAtTick(tickIndex: bigint, step: bigint, opts?: {
|
|
4
|
-
precision?: number;
|
|
5
|
-
}): FixedX18;
|
|
6
|
-
export declare function getTickAtRate(rate: FixedX18, step: number, side: Side): number;
|
package/dist/utils/tickLib.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getRateAtTick = getRateAtTick;
|
|
4
|
-
exports.getTickAtRate = getTickAtRate;
|
|
5
|
-
const boros_offchain_math_1 = require("@pendle/boros-offchain-math");
|
|
6
|
-
const constants_1 = require("../constants");
|
|
7
|
-
const types_1 = require("../types");
|
|
8
|
-
const PRECISION = 10n ** 100n;
|
|
9
|
-
const BASE = (100005n * PRECISION) / 100000n;
|
|
10
|
-
function getRateAtTick(tickIndex, step, opts) {
|
|
11
|
-
const { precision } = opts ?? {};
|
|
12
|
-
if (tickIndex < 0) {
|
|
13
|
-
return getRateAtTick(-tickIndex, step).neg();
|
|
14
|
-
}
|
|
15
|
-
tickIndex *= step;
|
|
16
|
-
let base = BASE;
|
|
17
|
-
let rawAns = PRECISION;
|
|
18
|
-
for (; tickIndex > 0n; tickIndex >>= 1n, base = (base * base) / PRECISION) {
|
|
19
|
-
if (tickIndex & 1n) {
|
|
20
|
-
rawAns = (rawAns * base) / PRECISION;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
rawAns -= PRECISION;
|
|
24
|
-
const PRECISION_SHIFT = PRECISION / boros_offchain_math_1.FixedX18.RAW_ONE;
|
|
25
|
-
const result = boros_offchain_math_1.FixedX18.fromRawValue((rawAns + PRECISION_SHIFT / 2n) / PRECISION_SHIFT);
|
|
26
|
-
return precision ? result.round(precision) : result;
|
|
27
|
-
}
|
|
28
|
-
function getTickAtRate(rate, step, side) {
|
|
29
|
-
let low = constants_1.TICK_MIN_VALUE;
|
|
30
|
-
let high = constants_1.TICK_MAX_VALUE;
|
|
31
|
-
while (low < high) {
|
|
32
|
-
const mid = Math.floor((low + high + 0.5) / 2);
|
|
33
|
-
const midRate = getRateAtTick(BigInt(mid), BigInt(step));
|
|
34
|
-
if (midRate.exactEq(rate)) {
|
|
35
|
-
return mid;
|
|
36
|
-
}
|
|
37
|
-
if (midRate.lt(rate)) {
|
|
38
|
-
low = mid + 1;
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
high = mid;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
const currentRate = getRateAtTick(BigInt(low), BigInt(step));
|
|
45
|
-
if (side === types_1.Side.LONG && currentRate.gt(rate)) {
|
|
46
|
-
return low - 1;
|
|
47
|
-
}
|
|
48
|
-
if (side === types_1.Side.SHORT && currentRate.lt(rate)) {
|
|
49
|
-
return low + 1;
|
|
50
|
-
}
|
|
51
|
-
return low;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=tickLib.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tickLib.js","sourceRoot":"","sources":["../../src/utils/tickLib.ts"],"names":[],"mappings":";;AAWA,sCAwBC;AAED,sCAwBC;AA7DD,qEAAuD;AACvD,4CAA8D;AAC9D,oCAAgC;AAEhC,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,CAAC;AAE9B,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;AAK7C,SAAgB,aAAa,CAAC,SAAiB,EAAE,IAAY,EAAE,IAA6B;IAC1F,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;IAEjC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,IAAI,IAAI,CAAC;IAElB,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,OAAO,SAAS,GAAG,EAAE,EAAE,SAAS,KAAK,EAAE,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC;QAC1E,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;YACnB,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;QACvC,CAAC;IACH,CAAC;IAED,MAAM,IAAI,SAAS,CAAC;IAEpB,MAAM,eAAe,GAAG,SAAS,GAAG,8BAAQ,CAAC,OAAO,CAAC;IAErD,MAAM,MAAM,GAAG,8BAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,eAAe,GAAG,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC;IAExF,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACtD,CAAC;AAED,SAAgB,aAAa,CAAC,IAAc,EAAE,IAAY,EAAE,IAAU;IAEpE,IAAI,GAAG,GAAG,0BAAc,CAAC;IACzB,IAAI,IAAI,GAAG,0BAAc,CAAC;IAC1B,OAAO,GAAG,GAAG,IAAI,EAAE,CAAC;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC;QACb,CAAC;QACD,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,IAAI,IAAI,KAAK,YAAI,CAAC,IAAI,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,GAAG,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,IAAI,KAAK,YAAI,CAAC,KAAK,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,OAAO,GAAG,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|