@decibeltrade/sdk 0.2.0 → 0.2.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/.env +2 -0
- package/.turbo/turbo-build.log +4 -5
- package/dist/abi/generate-abis.d.ts +1 -0
- package/dist/abi/generate-abis.d.ts.map +1 -0
- package/dist/abi/generate-abis.js +44 -9
- package/dist/abi/json/testnet.json +166 -165
- package/dist/abi/types.d.ts +1 -0
- package/dist/abi/types.d.ts.map +1 -0
- package/dist/abi/types.js +2 -1
- package/dist/admin.d.ts +1 -0
- package/dist/admin.d.ts.map +1 -0
- package/dist/admin.js +15 -10
- package/dist/base.d.ts +1 -0
- package/dist/base.d.ts.map +1 -0
- package/dist/base.js +26 -19
- package/dist/constants.d.ts +5 -2
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +46 -37
- package/dist/fee-pay.d.ts +1 -0
- package/dist/fee-pay.d.ts.map +1 -0
- package/dist/fee-pay.js +4 -1
- package/dist/gas/gas-price-manager.d.ts +1 -0
- package/dist/gas/gas-price-manager.d.ts.map +1 -0
- package/dist/gas/gas-price-manager.js +7 -3
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -10
- package/dist/order-event.types.d.ts +1 -0
- package/dist/order-event.types.d.ts.map +1 -0
- package/dist/order-event.types.js +2 -1
- package/dist/order-status.d.ts +1 -0
- package/dist/order-status.d.ts.map +1 -0
- package/dist/order-status.js +23 -16
- package/dist/read/account-overview/account-overview.reader.d.ts +1 -0
- package/dist/read/account-overview/account-overview.reader.d.ts.map +1 -0
- package/dist/read/account-overview/account-overview.reader.js +9 -5
- package/dist/read/account-overview/account-overview.types.d.ts +1 -0
- package/dist/read/account-overview/account-overview.types.d.ts.map +1 -0
- package/dist/read/account-overview/account-overview.types.js +29 -23
- package/dist/read/base-reader.d.ts +1 -0
- package/dist/read/base-reader.d.ts.map +1 -0
- package/dist/read/base-reader.js +9 -5
- package/dist/read/candlesticks/candlesticks.reader.d.ts +1 -0
- package/dist/read/candlesticks/candlesticks.reader.d.ts.map +1 -0
- package/dist/read/candlesticks/candlesticks.reader.js +12 -8
- package/dist/read/candlesticks/candlesticks.types.d.ts +1 -0
- package/dist/read/candlesticks/candlesticks.types.d.ts.map +1 -0
- package/dist/read/candlesticks/candlesticks.types.js +20 -14
- package/dist/read/delegations/delegations.reader.d.ts +1 -0
- package/dist/read/delegations/delegations.reader.d.ts.map +1 -0
- package/dist/read/delegations/delegations.reader.js +8 -4
- package/dist/read/delegations/delegations.types.d.ts +1 -0
- package/dist/read/delegations/delegations.types.d.ts.map +1 -0
- package/dist/read/delegations/delegations.types.js +12 -6
- package/dist/read/index.d.ts +1 -0
- package/dist/read/index.d.ts.map +1 -0
- package/dist/read/index.js +68 -50
- package/dist/read/leaderboard/leaderboard.reader.d.ts +1 -0
- package/dist/read/leaderboard/leaderboard.reader.d.ts.map +1 -0
- package/dist/read/leaderboard/leaderboard.reader.js +10 -6
- package/dist/read/leaderboard/leaderboard.types.d.ts +1 -0
- package/dist/read/leaderboard/leaderboard.types.d.ts.map +1 -0
- package/dist/read/leaderboard/leaderboard.types.js +13 -10
- package/dist/read/market-contexts/market-contexts.reader.d.ts +1 -1
- package/dist/read/market-contexts/market-contexts.reader.d.ts.map +1 -0
- package/dist/read/market-contexts/market-contexts.reader.js +8 -4
- package/dist/read/market-contexts/market-contexts.types.d.ts +1 -2
- package/dist/read/market-contexts/market-contexts.types.d.ts.map +1 -0
- package/dist/read/market-contexts/market-contexts.types.js +17 -12
- package/dist/read/market-depth/market-depth.reader.d.ts +1 -0
- package/dist/read/market-depth/market-depth.reader.d.ts.map +1 -0
- package/dist/read/market-depth/market-depth.reader.js +13 -9
- package/dist/read/market-depth/market-depth.types.d.ts +1 -0
- package/dist/read/market-depth/market-depth.types.d.ts.map +1 -0
- package/dist/read/market-depth/market-depth.types.js +14 -8
- package/dist/read/market-prices/market-prices.reader.d.ts +8 -1
- package/dist/read/market-prices/market-prices.reader.d.ts.map +1 -0
- package/dist/read/market-prices/market-prices.reader.js +23 -10
- package/dist/read/market-prices/market-prices.types.d.ts +14 -0
- package/dist/read/market-prices/market-prices.types.d.ts.map +1 -0
- package/dist/read/market-prices/market-prices.types.js +25 -21
- package/dist/read/market-trades/market-trades.reader.d.ts +1 -0
- package/dist/read/market-trades/market-trades.reader.d.ts.map +1 -0
- package/dist/read/market-trades/market-trades.reader.js +12 -8
- package/dist/read/market-trades/market-trades.types.d.ts +1 -0
- package/dist/read/market-trades/market-trades.types.d.ts.map +1 -0
- package/dist/read/market-trades/market-trades.types.js +21 -18
- package/dist/read/markets/markets.reader.d.ts +1 -0
- package/dist/read/markets/markets.reader.d.ts.map +1 -0
- package/dist/read/markets/markets.reader.js +11 -7
- package/dist/read/markets/markets.types.d.ts +1 -0
- package/dist/read/markets/markets.types.d.ts.map +1 -0
- package/dist/read/markets/markets.types.js +35 -32
- package/dist/read/pagination.types.d.ts +1 -0
- package/dist/read/pagination.types.d.ts.map +1 -0
- package/dist/read/pagination.types.js +11 -4
- package/dist/read/portfolio-chart/portfolio-chart.reader.d.ts +1 -0
- package/dist/read/portfolio-chart/portfolio-chart.reader.d.ts.map +1 -0
- package/dist/read/portfolio-chart/portfolio-chart.reader.js +8 -4
- package/dist/read/portfolio-chart/portfolio-chart.types.d.ts +1 -0
- package/dist/read/portfolio-chart/portfolio-chart.types.d.ts.map +1 -0
- package/dist/read/portfolio-chart/portfolio-chart.types.js +11 -5
- package/dist/read/types.d.ts +1 -0
- package/dist/read/types.d.ts.map +1 -0
- package/dist/read/types.js +75 -58
- package/dist/read/user-active-twaps/user-active-twaps.reader.d.ts +1 -0
- package/dist/read/user-active-twaps/user-active-twaps.reader.d.ts.map +1 -0
- package/dist/read/user-active-twaps/user-active-twaps.reader.js +9 -5
- package/dist/read/user-active-twaps/user-active-twaps.types.d.ts +1 -0
- package/dist/read/user-active-twaps/user-active-twaps.types.d.ts.map +1 -0
- package/dist/read/user-active-twaps/user-active-twaps.types.js +24 -18
- package/dist/read/user-bulk-orders/user-bulk-orders.reader.d.ts +1 -0
- package/dist/read/user-bulk-orders/user-bulk-orders.reader.d.ts.map +1 -0
- package/dist/read/user-bulk-orders/user-bulk-orders.reader.js +9 -5
- package/dist/read/user-bulk-orders/user-bulk-orders.types.d.ts +1 -0
- package/dist/read/user-bulk-orders/user-bulk-orders.types.d.ts.map +1 -0
- package/dist/read/user-bulk-orders/user-bulk-orders.types.js +22 -16
- package/dist/read/user-funding-history/user-funding-history.reader.d.ts +1 -0
- package/dist/read/user-funding-history/user-funding-history.reader.d.ts.map +1 -0
- package/dist/read/user-funding-history/user-funding-history.reader.js +9 -5
- package/dist/read/user-funding-history/user-funding-history.types.d.ts +1 -0
- package/dist/read/user-funding-history/user-funding-history.types.d.ts.map +1 -0
- package/dist/read/user-funding-history/user-funding-history.types.js +19 -13
- package/dist/read/user-notifications/user-notifications.reader.d.ts +1 -0
- package/dist/read/user-notifications/user-notifications.reader.d.ts.map +1 -0
- package/dist/read/user-notifications/user-notifications.reader.js +8 -4
- package/dist/read/user-notifications/user-notifications.types.d.ts +1 -0
- package/dist/read/user-notifications/user-notifications.types.d.ts.map +1 -0
- package/dist/read/user-notifications/user-notifications.types.js +25 -19
- package/dist/read/user-open-orders/user-open-orders.reader.d.ts +1 -0
- package/dist/read/user-open-orders/user-open-orders.reader.d.ts.map +1 -0
- package/dist/read/user-open-orders/user-open-orders.reader.js +9 -5
- package/dist/read/user-open-orders/user-open-orders.types.d.ts +1 -0
- package/dist/read/user-open-orders/user-open-orders.types.d.ts.map +1 -0
- package/dist/read/user-open-orders/user-open-orders.types.js +33 -27
- package/dist/read/user-order-history/user-order-history.reader.d.ts +4 -3
- package/dist/read/user-order-history/user-order-history.reader.d.ts.map +1 -0
- package/dist/read/user-order-history/user-order-history.reader.js +13 -9
- package/dist/read/user-order-history/user-order-history.types.d.ts +29 -24
- package/dist/read/user-order-history/user-order-history.types.d.ts.map +1 -0
- package/dist/read/user-order-history/user-order-history.types.js +39 -29
- package/dist/read/user-positions/user-positions.reader.d.ts +1 -1
- package/dist/read/user-positions/user-positions.reader.d.ts.map +1 -0
- package/dist/read/user-positions/user-positions.reader.js +9 -5
- package/dist/read/user-positions/user-positions.types.d.ts +34 -243
- package/dist/read/user-positions/user-positions.types.d.ts.map +1 -0
- package/dist/read/user-positions/user-positions.types.js +27 -22
- package/dist/read/user-subaccounts/user-subaccounts.reader.d.ts +1 -0
- package/dist/read/user-subaccounts/user-subaccounts.reader.d.ts.map +1 -0
- package/dist/read/user-subaccounts/user-subaccounts.reader.js +8 -4
- package/dist/read/user-subaccounts/user-subaccounts.types.d.ts +1 -0
- package/dist/read/user-subaccounts/user-subaccounts.types.d.ts.map +1 -0
- package/dist/read/user-subaccounts/user-subaccounts.types.js +14 -8
- package/dist/read/user-trade-history/user-trade-history.reader.d.ts +4 -3
- package/dist/read/user-trade-history/user-trade-history.reader.d.ts.map +1 -0
- package/dist/read/user-trade-history/user-trade-history.reader.js +13 -9
- package/dist/read/user-trade-history/user-trade-history.types.d.ts +1 -0
- package/dist/read/user-trade-history/user-trade-history.types.d.ts.map +1 -0
- package/dist/read/user-trade-history/user-trade-history.types.js +24 -18
- package/dist/read/vaults/vaults.reader.d.ts +2 -1
- package/dist/read/vaults/vaults.reader.d.ts.map +1 -0
- package/dist/read/vaults/vaults.reader.js +14 -6
- package/dist/read/vaults/vaults.types.d.ts +13 -3
- package/dist/read/vaults/vaults.types.d.ts.map +1 -0
- package/dist/read/vaults/vaults.types.js +59 -52
- package/dist/read/ws-subscription.d.ts +1 -0
- package/dist/read/ws-subscription.d.ts.map +1 -0
- package/dist/read/ws-subscription.js +17 -10
- package/dist/subaccount-types.d.ts +1 -0
- package/dist/subaccount-types.d.ts.map +1 -0
- package/dist/subaccount-types.js +10 -4
- package/dist/transaction-builder.d.ts +1 -0
- package/dist/transaction-builder.d.ts.map +1 -0
- package/dist/transaction-builder.js +16 -11
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils.d.ts +8 -1
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +63 -29
- package/dist/write.d.ts +1 -0
- package/dist/write.d.ts.map +1 -0
- package/dist/write.js +26 -20
- package/package.json +1 -2
- package/readme.md +2 -2
- package/src/abi/json/testnet.json +166 -165
- package/src/admin.ts +1 -0
- package/src/base.ts +5 -1
- package/src/constants.ts +8 -5
- package/src/read/user-positions/user-positions.types.ts +0 -1
- package/src/read/vaults/vaults.reader.ts +2 -0
- package/src/read/vaults/vaults.types.ts +5 -2
- package/src/read/ws-subscription.ts +2 -2
- package/src/utils.ts +49 -3
- package/src/write.ts +4 -2
package/dist/utils.js
CHANGED
|
@@ -1,11 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extractVaultAddressFromCreateTx = exports.PARAM_MAP = void 0;
|
|
4
|
+
exports.getMarketAddr = getMarketAddr;
|
|
5
|
+
exports.postRequest = postRequest;
|
|
6
|
+
exports.patchRequest = patchRequest;
|
|
7
|
+
exports.getRequest = getRequest;
|
|
8
|
+
exports.prettifyMaybeZodError = prettifyMaybeZodError;
|
|
9
|
+
exports.bigIntReviver = bigIntReviver;
|
|
10
|
+
exports.getPrimarySubaccountAddr = getPrimarySubaccountAddr;
|
|
11
|
+
exports.getTradingCompetitionSubaccountAddr = getTradingCompetitionSubaccountAddr;
|
|
12
|
+
exports.getVaultShareAddress = getVaultShareAddress;
|
|
13
|
+
exports.constructKnownQueryParams = constructKnownQueryParams;
|
|
14
|
+
exports.generateRandomReplayProtectionNonce = generateRandomReplayProtectionNonce;
|
|
15
|
+
exports.roundToTickSize = roundToTickSize;
|
|
16
|
+
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
17
|
+
const v4_1 = require("zod/v4");
|
|
18
|
+
const constants_1 = require("./constants");
|
|
19
|
+
function getMarketAddr(name, perpEngineGlobalAddr) {
|
|
20
|
+
const marketNameBytes = new ts_sdk_1.MoveString(name).bcsToBytes();
|
|
21
|
+
return (0, ts_sdk_1.createObjectAddress)(ts_sdk_1.AccountAddress.fromString(perpEngineGlobalAddr), marketNameBytes);
|
|
7
22
|
}
|
|
8
|
-
|
|
23
|
+
async function postRequest({ schema, url, body, options = {}, apiKey, }) {
|
|
9
24
|
return baseRequest({
|
|
10
25
|
schema,
|
|
11
26
|
url,
|
|
@@ -16,7 +31,7 @@ export async function postRequest({ schema, url, body, options = {}, apiKey, })
|
|
|
16
31
|
apiKey,
|
|
17
32
|
});
|
|
18
33
|
}
|
|
19
|
-
|
|
34
|
+
async function patchRequest({ schema, url, body, options = {}, apiKey, }) {
|
|
20
35
|
return baseRequest({
|
|
21
36
|
schema,
|
|
22
37
|
url,
|
|
@@ -27,7 +42,7 @@ export async function patchRequest({ schema, url, body, options = {}, apiKey, })
|
|
|
27
42
|
apiKey,
|
|
28
43
|
});
|
|
29
44
|
}
|
|
30
|
-
|
|
45
|
+
async function getRequest({ schema, url, queryParams, options = {}, apiKey, }) {
|
|
31
46
|
return baseRequest({
|
|
32
47
|
schema,
|
|
33
48
|
url,
|
|
@@ -72,13 +87,13 @@ async function baseRequest({ schema, url, method, options = {}, body, queryParam
|
|
|
72
87
|
throw prettifyMaybeZodError(e);
|
|
73
88
|
}
|
|
74
89
|
}
|
|
75
|
-
|
|
76
|
-
if (e instanceof ZodError) {
|
|
77
|
-
return new Error(z.prettifyError(e), { cause: e });
|
|
90
|
+
function prettifyMaybeZodError(e) {
|
|
91
|
+
if (e instanceof v4_1.ZodError) {
|
|
92
|
+
return new Error(v4_1.z.prettifyError(e), { cause: e });
|
|
78
93
|
}
|
|
79
94
|
return e;
|
|
80
95
|
}
|
|
81
|
-
|
|
96
|
+
function bigIntReviver(key, value) {
|
|
82
97
|
if (value &&
|
|
83
98
|
typeof value === "object" &&
|
|
84
99
|
"$bigint" in value &&
|
|
@@ -87,40 +102,45 @@ export function bigIntReviver(key, value) {
|
|
|
87
102
|
}
|
|
88
103
|
return value;
|
|
89
104
|
}
|
|
90
|
-
|
|
91
|
-
const account = typeof addr === "string" ? AccountAddress.fromString(addr) : addr;
|
|
92
|
-
const seed = new TextEncoder().encode("decibel_dex_primary");
|
|
93
|
-
return createObjectAddress(account, seed).toString();
|
|
105
|
+
function getPrimarySubaccountAddr(addr, variant = "v2") {
|
|
106
|
+
const account = typeof addr === "string" ? ts_sdk_1.AccountAddress.fromString(addr) : addr;
|
|
107
|
+
const seed = new TextEncoder().encode(variant === "v1" ? "decibel_dex_primary" : "decibel_dex_primary_v2");
|
|
108
|
+
return (0, ts_sdk_1.createObjectAddress)(account, seed).toString();
|
|
94
109
|
}
|
|
95
|
-
|
|
110
|
+
function getTradingCompetitionSubaccountAddr(addr) {
|
|
111
|
+
const account = typeof addr === "string" ? ts_sdk_1.AccountAddress.fromString(addr) : addr;
|
|
112
|
+
const seed = new TextEncoder().encode("trading_competition");
|
|
113
|
+
return (0, ts_sdk_1.createObjectAddress)(account, seed).toString();
|
|
114
|
+
}
|
|
115
|
+
function getVaultShareAddress(vaultAddress) {
|
|
96
116
|
const seed = new TextEncoder().encode("vault_share_asset");
|
|
97
|
-
return createObjectAddress(AccountAddress.fromString(vaultAddress), seed).toString();
|
|
117
|
+
return (0, ts_sdk_1.createObjectAddress)(ts_sdk_1.AccountAddress.fromString(vaultAddress), seed).toString();
|
|
98
118
|
}
|
|
99
|
-
|
|
100
|
-
limit: QUERY_PARAM_KEYS.limit,
|
|
101
|
-
offset: QUERY_PARAM_KEYS.offset,
|
|
102
|
-
sortKey: QUERY_PARAM_KEYS.sortKey,
|
|
103
|
-
sortDir: QUERY_PARAM_KEYS.sortDir,
|
|
104
|
-
searchTerm: QUERY_PARAM_KEYS.searchTerm,
|
|
119
|
+
exports.PARAM_MAP = {
|
|
120
|
+
limit: constants_1.QUERY_PARAM_KEYS.limit,
|
|
121
|
+
offset: constants_1.QUERY_PARAM_KEYS.offset,
|
|
122
|
+
sortKey: constants_1.QUERY_PARAM_KEYS.sortKey,
|
|
123
|
+
sortDir: constants_1.QUERY_PARAM_KEYS.sortDir,
|
|
124
|
+
searchTerm: constants_1.QUERY_PARAM_KEYS.searchTerm,
|
|
105
125
|
};
|
|
106
126
|
/**
|
|
107
127
|
* Construct query params from an args object, supporting optional PageParams, SearchTermParams, and generic SortParams.
|
|
108
128
|
* @param args - The argument object, which may include page, search, and sort params.
|
|
109
129
|
* @returns URLSearchParams instance with the constructed query parameters.
|
|
110
130
|
*/
|
|
111
|
-
|
|
131
|
+
function constructKnownQueryParams(args) {
|
|
112
132
|
const queryParams = new URLSearchParams();
|
|
113
133
|
Object.keys(args).forEach((_argKey) => {
|
|
114
134
|
const argKey = _argKey;
|
|
115
135
|
const value = args[argKey];
|
|
116
|
-
const paramKey = PARAM_MAP[argKey];
|
|
136
|
+
const paramKey = exports.PARAM_MAP[argKey];
|
|
117
137
|
if (paramKey && value !== undefined && !(typeof value === "string" && value.trim() === "")) {
|
|
118
138
|
queryParams.set(paramKey, String(value));
|
|
119
139
|
}
|
|
120
140
|
});
|
|
121
141
|
return queryParams;
|
|
122
142
|
}
|
|
123
|
-
|
|
143
|
+
function generateRandomReplayProtectionNonce() {
|
|
124
144
|
const buf = new Uint32Array(2);
|
|
125
145
|
crypto.getRandomValues(buf);
|
|
126
146
|
const valueAtIndex0 = buf[0];
|
|
@@ -130,7 +150,20 @@ export function generateRandomReplayProtectionNonce() {
|
|
|
130
150
|
// combine two 32-bit parts into a single 64-bit bigint
|
|
131
151
|
return (BigInt(valueAtIndex0) << BigInt(32)) | BigInt(valueAtIndex1);
|
|
132
152
|
}
|
|
133
|
-
|
|
153
|
+
/**
|
|
154
|
+
* Round price to valid tick size.
|
|
155
|
+
* Prices must be multiples of tickSize in chain units.
|
|
156
|
+
*/
|
|
157
|
+
function roundToTickSize(price, tickSize, pxDecimals, roundUp) {
|
|
158
|
+
if (price === 0)
|
|
159
|
+
return 0;
|
|
160
|
+
const denormalized = price * 10 ** pxDecimals;
|
|
161
|
+
const rounded = roundUp
|
|
162
|
+
? Math.ceil(denormalized / tickSize) * tickSize
|
|
163
|
+
: Math.floor(denormalized / tickSize) * tickSize;
|
|
164
|
+
return Number((rounded / 10 ** pxDecimals).toFixed(pxDecimals));
|
|
165
|
+
}
|
|
166
|
+
const extractVaultAddressFromCreateTx = (createVaultTx) => {
|
|
134
167
|
// Extract vault address from transaction events
|
|
135
168
|
let vaultAddress = null;
|
|
136
169
|
if ("events" in createVaultTx && Array.isArray(createVaultTx.events)) {
|
|
@@ -148,3 +181,4 @@ export const extractVaultAddressFromCreateTx = (createVaultTx) => {
|
|
|
148
181
|
typeof vaultAddress === "object" && "inner" in vaultAddress ? vaultAddress.inner : vaultAddress;
|
|
149
182
|
return vaultAddress;
|
|
150
183
|
};
|
|
184
|
+
exports.extractVaultAddressFromCreateTx = extractVaultAddressFromCreateTx;
|
package/dist/write.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../src/write.ts"],"names":[],"mappings":"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"}
|
package/dist/write.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DecibelWriteDex = exports.TimeInForce = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
const order_status_1 = require("./order-status");
|
|
7
|
+
const subaccount_types_1 = require("./subaccount-types");
|
|
8
|
+
const utils_1 = require("./utils");
|
|
9
|
+
exports.TimeInForce = {
|
|
7
10
|
GoodTillCanceled: 0,
|
|
8
11
|
PostOnly: 1,
|
|
9
12
|
ImmediateOrCancel: 2,
|
|
@@ -19,13 +22,13 @@ function roundToTickSize(price, tickSize) {
|
|
|
19
22
|
return 0;
|
|
20
23
|
return Math.round(price / tickSize) * tickSize;
|
|
21
24
|
}
|
|
22
|
-
|
|
25
|
+
class DecibelWriteDex extends base_1.BaseSDK {
|
|
23
26
|
cache;
|
|
24
27
|
orderStatusClient;
|
|
25
28
|
constructor(config, account, opts) {
|
|
26
29
|
super(config, account, opts);
|
|
27
30
|
this.cache = {};
|
|
28
|
-
this.orderStatusClient = new OrderStatusClient(config);
|
|
31
|
+
this.orderStatusClient = new order_status_1.OrderStatusClient(config);
|
|
29
32
|
}
|
|
30
33
|
/**
|
|
31
34
|
* Extract order_id from OrderEvent in transaction response
|
|
@@ -61,8 +64,8 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
61
64
|
}
|
|
62
65
|
}
|
|
63
66
|
async renameSubaccount({ subaccountAddress, newName }) {
|
|
64
|
-
return await postRequest({
|
|
65
|
-
schema: RenameSubaccountSchema,
|
|
67
|
+
return await (0, utils_1.postRequest)({
|
|
68
|
+
schema: subaccount_types_1.RenameSubaccountSchema,
|
|
66
69
|
url: `${this.config.tradingHttpUrl}/api/v1/subaccounts/${subaccountAddress}`,
|
|
67
70
|
body: { name: newName },
|
|
68
71
|
});
|
|
@@ -76,13 +79,13 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
76
79
|
}
|
|
77
80
|
async sendSubaccountTx(sendTx, subaccountAddr) {
|
|
78
81
|
if (!subaccountAddr) {
|
|
79
|
-
subaccountAddr = getPrimarySubaccountAddr(this.account.accountAddress);
|
|
82
|
+
subaccountAddr = (0, utils_1.getPrimarySubaccountAddr)(this.account.accountAddress);
|
|
80
83
|
}
|
|
81
84
|
return await sendTx(subaccountAddr);
|
|
82
85
|
}
|
|
83
86
|
async withSubaccount(fn, subaccountAddr) {
|
|
84
87
|
if (!subaccountAddr) {
|
|
85
|
-
subaccountAddr = getPrimarySubaccountAddr(this.account.accountAddress);
|
|
88
|
+
subaccountAddr = (0, utils_1.getPrimarySubaccountAddr)(this.account.accountAddress);
|
|
86
89
|
}
|
|
87
90
|
return await fn(subaccountAddr);
|
|
88
91
|
}
|
|
@@ -124,7 +127,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
124
127
|
}
|
|
125
128
|
async placeOrder({ marketName, price, size, isBuy, timeInForce, isReduceOnly, clientOrderId, stopPrice, tpTriggerPrice, tpLimitPrice, slTriggerPrice, slLimitPrice, builderAddr, builderFee, subaccountAddr, accountOverride, tickSize, }) {
|
|
126
129
|
try {
|
|
127
|
-
const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
|
|
130
|
+
const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
|
|
128
131
|
// Apply tick size rounding if tickSize is provided
|
|
129
132
|
const roundedPrice = tickSize ? roundToTickSize(price, tickSize) : price;
|
|
130
133
|
const roundedStopPrice = stopPrice !== undefined && tickSize ? roundToTickSize(stopPrice, tickSize) : stopPrice;
|
|
@@ -191,7 +194,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
191
194
|
async placeTwapOrder({ marketName, size, isBuy, isReduceOnly,
|
|
192
195
|
// clientOrderId,
|
|
193
196
|
twapFrequencySeconds, twapDurationSeconds, builderAddress, builderFees, subaccountAddr, accountOverride, }) {
|
|
194
|
-
const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
|
|
197
|
+
const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
|
|
195
198
|
const txResponse = await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
|
|
196
199
|
// TODO: update to place_twap_order_to_subaccount_v2 once available
|
|
197
200
|
function: `${this.config.deployment.package}::dex_accounts::place_twap_order_to_subaccount`,
|
|
@@ -226,7 +229,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
226
229
|
async cancelOrder({ orderId, subaccountAddr, accountOverride, ...args }) {
|
|
227
230
|
// Either marketName or marketAddr must be provided
|
|
228
231
|
const marketAddr = "marketName" in args
|
|
229
|
-
? getMarketAddr(args.marketName, this.config.deployment.perpEngineGlobal)
|
|
232
|
+
? (0, utils_1.getMarketAddr)(args.marketName, this.config.deployment.perpEngineGlobal)
|
|
230
233
|
: args.marketAddr;
|
|
231
234
|
return await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
|
|
232
235
|
function: `${this.config.deployment.package}::dex_accounts::cancel_order_to_subaccount`,
|
|
@@ -235,7 +238,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
235
238
|
}, accountOverride), subaccountAddr);
|
|
236
239
|
}
|
|
237
240
|
async cancelClientOrder({ clientOrderId, marketName, subaccountAddr, accountOverride, }) {
|
|
238
|
-
const marketAddr = getMarketAddr(marketName, this.config.deployment.perpEngineGlobal);
|
|
241
|
+
const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.config.deployment.perpEngineGlobal);
|
|
239
242
|
return await this.sendSubaccountTx((subaccountAddr) => this.sendTx({
|
|
240
243
|
function: `${this.config.deployment.package}::dex_accounts::cancel_client_order_to_subaccount`,
|
|
241
244
|
typeArguments: [],
|
|
@@ -354,11 +357,12 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
354
357
|
* Create a new vault with optional initial funding
|
|
355
358
|
*/
|
|
356
359
|
async buildCreateVaultTx({ contributionAssetType, vaultName, vaultShareSymbol, vaultShareIconUri = "", vaultShareProjectUri = "", feeBps, feeIntervalS, contributionLockupDurationS, initialFunding = 0, acceptsContributions = false, delegateToCreator = false, signerAddress, vaultDescription, vaultSocialLinks, }) {
|
|
357
|
-
const vaultApiModule = getVaultApiModule(this.config.compatVersion);
|
|
360
|
+
const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
|
|
358
361
|
const transaction = await this.buildTx({
|
|
359
362
|
function: `${this.config.deployment.package}::${vaultApiModule}::create_and_fund_vault`,
|
|
360
363
|
typeArguments: [],
|
|
361
364
|
functionArguments: [
|
|
365
|
+
null,
|
|
362
366
|
contributionAssetType,
|
|
363
367
|
vaultName,
|
|
364
368
|
vaultDescription,
|
|
@@ -377,11 +381,12 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
377
381
|
return transaction;
|
|
378
382
|
}
|
|
379
383
|
async createVault(args) {
|
|
380
|
-
const vaultApiModule = getVaultApiModule(this.config.compatVersion);
|
|
384
|
+
const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
|
|
381
385
|
const txResponse = await this.sendSubaccountTx(() => this.sendTx({
|
|
382
386
|
function: `${this.config.deployment.package}::${vaultApiModule}::create_and_fund_vault`,
|
|
383
387
|
typeArguments: [],
|
|
384
388
|
functionArguments: [
|
|
389
|
+
null,
|
|
385
390
|
args.contributionAssetType,
|
|
386
391
|
args.vaultName,
|
|
387
392
|
args.vaultDescription,
|
|
@@ -403,7 +408,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
403
408
|
* Activate a vault to accept contributions
|
|
404
409
|
*/
|
|
405
410
|
async buildActivateVaultTx({ vaultAddress, additionalFunding = 0, signerAddress, }) {
|
|
406
|
-
const vaultApiModule = getVaultApiModule(this.config.compatVersion);
|
|
411
|
+
const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
|
|
407
412
|
return await this.buildTx({
|
|
408
413
|
function: `${this.config.deployment.package}::${vaultApiModule}::activate_vault`,
|
|
409
414
|
typeArguments: [],
|
|
@@ -414,7 +419,7 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
414
419
|
* Contribute funds to a vault in exchange for shares
|
|
415
420
|
*/
|
|
416
421
|
async buildDepositToVaultTx({ vaultAddress, amount, signerAddress, }) {
|
|
417
|
-
const vaultApiModule = getVaultApiModule(this.config.compatVersion);
|
|
422
|
+
const vaultApiModule = (0, constants_1.getVaultApiModule)(this.config.compatVersion);
|
|
418
423
|
return await this.buildTx({
|
|
419
424
|
function: `${this.config.deployment.package}::${vaultApiModule}::contribute`,
|
|
420
425
|
typeArguments: [],
|
|
@@ -488,3 +493,4 @@ export class DecibelWriteDex extends BaseSDK {
|
|
|
488
493
|
}), subaccountAddr);
|
|
489
494
|
}
|
|
490
495
|
}
|
|
496
|
+
exports.DecibelWriteDex = DecibelWriteDex;
|
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -730,7 +730,7 @@ export enum CandlestickInterval {
|
|
|
730
730
|
import { getPrimarySubaccountAddr, getMarketAddr } from "@decibeltrade/sdk";
|
|
731
731
|
|
|
732
732
|
// Get primary subaccount address for an account
|
|
733
|
-
const subaccountAddr = getPrimarySubaccountAddr("account_address");
|
|
733
|
+
const subaccountAddr = getPrimarySubaccountAddr("account_address", sdkConfig);
|
|
734
734
|
|
|
735
735
|
// Get market address from name
|
|
736
736
|
const marketAddr = getMarketAddr("BTC-USD", "perp_engine_global_address");
|
|
@@ -1041,7 +1041,7 @@ function getMarketAddress(marketName: string, perpEngineGlobalAddr: string): Acc
|
|
|
1041
1041
|
* Get primary subaccount address for a user account
|
|
1042
1042
|
*/
|
|
1043
1043
|
function getPrimarySubaccountAddress(userAddress: AccountAddress): string {
|
|
1044
|
-
const seed = new TextEncoder().encode("
|
|
1044
|
+
const seed = new TextEncoder().encode("decibel_dex_primary_v2");
|
|
1045
1045
|
return createObjectAddress(userAddress, seed).toString();
|
|
1046
1046
|
}
|
|
1047
1047
|
|