@decibeltrade/sdk 0.2.1 → 0.2.3
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.js +44 -9
- package/dist/abi/json/testnet.json +166 -165
- package/dist/abi/types.js +2 -1
- package/dist/admin.d.ts.map +1 -1
- package/dist/admin.js +15 -10
- package/dist/base.d.ts +1 -0
- package/dist/base.d.ts.map +1 -1
- package/dist/base.js +29 -19
- package/dist/constants.d.ts +5 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +47 -37
- package/dist/fee-pay.js +4 -1
- package/dist/gas/gas-price-manager.js +7 -3
- package/dist/index.js +26 -10
- package/dist/order-event.types.js +2 -1
- package/dist/order-status.js +23 -16
- package/dist/read/account-overview/account-overview.reader.js +9 -5
- package/dist/read/account-overview/account-overview.types.js +29 -23
- package/dist/read/base-reader.js +9 -5
- package/dist/read/candlesticks/candlesticks.reader.js +12 -8
- package/dist/read/candlesticks/candlesticks.types.js +20 -14
- package/dist/read/delegations/delegations.reader.js +8 -4
- package/dist/read/delegations/delegations.types.js +12 -6
- package/dist/read/index.js +68 -50
- package/dist/read/leaderboard/leaderboard.reader.js +10 -6
- package/dist/read/leaderboard/leaderboard.types.js +13 -10
- package/dist/read/market-contexts/market-contexts.reader.js +8 -4
- package/dist/read/market-contexts/market-contexts.types.js +17 -11
- package/dist/read/market-depth/market-depth.reader.js +13 -9
- package/dist/read/market-depth/market-depth.types.js +14 -8
- package/dist/read/market-prices/market-prices.reader.js +15 -11
- package/dist/read/market-prices/market-prices.types.js +25 -22
- package/dist/read/market-trades/market-trades.reader.js +12 -8
- package/dist/read/market-trades/market-trades.types.js +21 -18
- package/dist/read/markets/markets.reader.js +11 -7
- package/dist/read/markets/markets.types.js +35 -32
- package/dist/read/pagination.types.js +11 -4
- package/dist/read/portfolio-chart/portfolio-chart.reader.js +8 -4
- package/dist/read/portfolio-chart/portfolio-chart.types.js +11 -5
- package/dist/read/types.js +75 -58
- package/dist/read/user-active-twaps/user-active-twaps.reader.js +9 -5
- package/dist/read/user-active-twaps/user-active-twaps.types.js +24 -18
- package/dist/read/user-bulk-orders/user-bulk-orders.reader.js +9 -5
- package/dist/read/user-bulk-orders/user-bulk-orders.types.js +22 -16
- package/dist/read/user-funding-history/user-funding-history.reader.js +9 -5
- package/dist/read/user-funding-history/user-funding-history.types.js +19 -13
- package/dist/read/user-notifications/user-notifications.reader.js +8 -4
- package/dist/read/user-notifications/user-notifications.types.js +25 -19
- package/dist/read/user-open-orders/user-open-orders.reader.js +9 -5
- package/dist/read/user-open-orders/user-open-orders.types.js +33 -27
- package/dist/read/user-order-history/user-order-history.reader.js +9 -5
- package/dist/read/user-order-history/user-order-history.types.js +38 -32
- package/dist/read/user-positions/user-positions.reader.d.ts +0 -1
- package/dist/read/user-positions/user-positions.reader.d.ts.map +1 -1
- package/dist/read/user-positions/user-positions.reader.js +9 -5
- package/dist/read/user-positions/user-positions.types.d.ts +33 -243
- package/dist/read/user-positions/user-positions.types.d.ts.map +1 -1
- package/dist/read/user-positions/user-positions.types.js +27 -22
- package/dist/read/user-subaccounts/user-subaccounts.reader.js +8 -4
- package/dist/read/user-subaccounts/user-subaccounts.types.js +14 -8
- package/dist/read/user-trade-history/user-trade-history.reader.js +9 -5
- package/dist/read/user-trade-history/user-trade-history.types.js +24 -18
- package/dist/read/vaults/vaults.reader.d.ts +1 -1
- package/dist/read/vaults/vaults.reader.d.ts.map +1 -1
- package/dist/read/vaults/vaults.reader.js +14 -6
- package/dist/read/vaults/vaults.types.d.ts +12 -3
- package/dist/read/vaults/vaults.types.d.ts.map +1 -1
- package/dist/read/vaults/vaults.types.js +59 -52
- package/dist/read/ws-subscription.d.ts +1 -1
- package/dist/read/ws-subscription.js +19 -12
- package/dist/subaccount-types.js +10 -4
- package/dist/transaction-builder.js +16 -11
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils.d.ts +10 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +76 -29
- package/dist/write.d.ts.map +1 -1
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-positions.types.d.ts","sourceRoot":"","sources":["../../../src/read/user-positions/user-positions.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"user-positions.types.d.ts","sourceRoot":"","sources":["../../../src/read/user-positions/user-positions.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;iBAiB7B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;kBAA8B,CAAC;AAE/D,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA+B,CAAC;AAExE,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;iBAEvC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
|
|
@@ -1,25 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UserPositionsWsMessageSchema = exports.UserPositionWsMessageSchema = exports.UserPositionsSchema = exports.UserPositionSchema = void 0;
|
|
7
|
+
const v4_1 = __importDefault(require("zod/v4"));
|
|
8
|
+
exports.UserPositionSchema = v4_1.default.object({
|
|
9
|
+
market: v4_1.default.string(),
|
|
10
|
+
user: v4_1.default.string(),
|
|
11
|
+
size: v4_1.default.number(),
|
|
6
12
|
// margin: z.number(),
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
has_fixed_sized_tpsls: z.boolean(),
|
|
13
|
+
user_leverage: v4_1.default.number(),
|
|
14
|
+
entry_price: v4_1.default.number(),
|
|
15
|
+
is_isolated: v4_1.default.boolean(),
|
|
16
|
+
unrealized_funding: v4_1.default.number(),
|
|
17
|
+
estimated_liquidation_price: v4_1.default.number(),
|
|
18
|
+
tp_order_id: v4_1.default.string().nullable(),
|
|
19
|
+
tp_trigger_price: v4_1.default.number().nullable(),
|
|
20
|
+
tp_limit_price: v4_1.default.number().nullable(),
|
|
21
|
+
sl_order_id: v4_1.default.string().nullable(),
|
|
22
|
+
sl_trigger_price: v4_1.default.number().nullable(),
|
|
23
|
+
sl_limit_price: v4_1.default.number().nullable(),
|
|
24
|
+
has_fixed_sized_tpsls: v4_1.default.boolean(),
|
|
20
25
|
});
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
positions: UserPositionsSchema,
|
|
26
|
+
exports.UserPositionsSchema = v4_1.default.array(exports.UserPositionSchema);
|
|
27
|
+
exports.UserPositionWsMessageSchema = v4_1.default.object(exports.UserPositionSchema);
|
|
28
|
+
exports.UserPositionsWsMessageSchema = v4_1.default.object({
|
|
29
|
+
positions: exports.UserPositionsSchema,
|
|
25
30
|
});
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserSubaccountsReader = void 0;
|
|
4
|
+
const base_reader_1 = require("../base-reader");
|
|
5
|
+
const user_subaccounts_types_1 = require("./user-subaccounts.types");
|
|
6
|
+
class UserSubaccountsReader extends base_reader_1.BaseReader {
|
|
4
7
|
/**
|
|
5
8
|
* Get the subaccounts for a given user
|
|
6
9
|
* @param ownerAddr The address of the owner to get subaccounts for
|
|
@@ -15,7 +18,7 @@ export class UserSubaccountsReader extends BaseReader {
|
|
|
15
18
|
// limit: limit.toString(),
|
|
16
19
|
});
|
|
17
20
|
const response = await this.getRequest({
|
|
18
|
-
schema: UserSubaccountsSchema,
|
|
21
|
+
schema: user_subaccounts_types_1.UserSubaccountsSchema,
|
|
19
22
|
url: `${this.deps.config.tradingHttpUrl}/api/v1/subaccounts`, // TODO: update to /user_subaccounts?
|
|
20
23
|
queryParams,
|
|
21
24
|
options: fetchOptions,
|
|
@@ -23,3 +26,4 @@ export class UserSubaccountsReader extends BaseReader {
|
|
|
23
26
|
return response.data;
|
|
24
27
|
}
|
|
25
28
|
}
|
|
29
|
+
exports.UserSubaccountsReader = UserSubaccountsReader;
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UserSubaccountsSchema = exports.UserSubaccountSchema = void 0;
|
|
7
|
+
const v4_1 = __importDefault(require("zod/v4"));
|
|
8
|
+
exports.UserSubaccountSchema = v4_1.default.object({
|
|
9
|
+
subaccount_address: v4_1.default.string(),
|
|
10
|
+
primary_account_address: v4_1.default.string(),
|
|
11
|
+
is_primary: v4_1.default.boolean(),
|
|
12
|
+
is_active: v4_1.default.boolean().optional(),
|
|
13
|
+
custom_label: v4_1.default.string().nullable(),
|
|
8
14
|
});
|
|
9
|
-
|
|
15
|
+
exports.UserSubaccountsSchema = v4_1.default.array(exports.UserSubaccountSchema);
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserTradeHistoryReader = void 0;
|
|
4
|
+
const base_reader_1 = require("../base-reader");
|
|
5
|
+
const user_trade_history_types_1 = require("./user-trade-history.types");
|
|
6
|
+
class UserTradeHistoryReader extends base_reader_1.BaseReader {
|
|
4
7
|
/**
|
|
5
8
|
* Get the trade history for a given user
|
|
6
9
|
* @param subAddr The subaccount address of the user to get trade history for
|
|
@@ -9,7 +12,7 @@ export class UserTradeHistoryReader extends BaseReader {
|
|
|
9
12
|
*/
|
|
10
13
|
async getByAddr({ subAddr, limit = 10, fetchOptions }) {
|
|
11
14
|
const response = await this.getRequest({
|
|
12
|
-
schema: UserTradesSchema,
|
|
15
|
+
schema: user_trade_history_types_1.UserTradesSchema,
|
|
13
16
|
url: `${this.deps.config.tradingHttpUrl}/api/v1/trade_history`,
|
|
14
17
|
queryParams: { user: subAddr, limit: limit.toString() },
|
|
15
18
|
options: fetchOptions,
|
|
@@ -24,6 +27,7 @@ export class UserTradeHistoryReader extends BaseReader {
|
|
|
24
27
|
*/
|
|
25
28
|
subscribeByAddr(subAddr, onData) {
|
|
26
29
|
const topic = `user_trades:${subAddr}`;
|
|
27
|
-
return this.deps.ws.subscribe(topic, UserTradesWsMessageSchema, onData);
|
|
30
|
+
return this.deps.ws.subscribe(topic, user_trade_history_types_1.UserTradesWsMessageSchema, onData);
|
|
28
31
|
}
|
|
29
32
|
}
|
|
33
|
+
exports.UserTradeHistoryReader = UserTradeHistoryReader;
|
|
@@ -1,20 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UserTradesWsMessageSchema = exports.UserTradesSchema = exports.UserTradeSchema = void 0;
|
|
7
|
+
const v4_1 = __importDefault(require("zod/v4"));
|
|
8
|
+
exports.UserTradeSchema = v4_1.default.object({
|
|
9
|
+
account: v4_1.default.string(),
|
|
10
|
+
market: v4_1.default.string(),
|
|
11
|
+
action: v4_1.default.string(),
|
|
12
|
+
size: v4_1.default.number(),
|
|
13
|
+
price: v4_1.default.number(),
|
|
14
|
+
is_profit: v4_1.default.boolean(),
|
|
15
|
+
realized_pnl_amount: v4_1.default.number(),
|
|
16
|
+
is_funding_positive: v4_1.default.boolean(),
|
|
17
|
+
realized_funding_amount: v4_1.default.number(),
|
|
18
|
+
is_rebate: v4_1.default.boolean(),
|
|
19
|
+
fee_amount: v4_1.default.number(),
|
|
20
|
+
transaction_unix_ms: v4_1.default.number(),
|
|
21
|
+
transaction_version: v4_1.default.number(),
|
|
16
22
|
});
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
trades:
|
|
23
|
+
exports.UserTradesSchema = v4_1.default.array(exports.UserTradeSchema);
|
|
24
|
+
exports.UserTradesWsMessageSchema = v4_1.default.object({
|
|
25
|
+
trades: v4_1.default.array(exports.UserTradeSchema),
|
|
20
26
|
});
|
|
@@ -26,7 +26,7 @@ export declare class VaultsReader extends BaseReader {
|
|
|
26
26
|
average_leverage: number | null;
|
|
27
27
|
depositors: number | null;
|
|
28
28
|
perp_equity: number | null;
|
|
29
|
-
vault_type:
|
|
29
|
+
vault_type: "user" | "protocol";
|
|
30
30
|
pnl_history: string[] | null;
|
|
31
31
|
social_links: string[] | null;
|
|
32
32
|
}[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vaults.reader.d.ts","sourceRoot":"","sources":["../../../src/read/vaults/vaults.reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAE1B,mCAAmC,EAGpC,MAAM,gBAAgB,CAAC;AAExB,qBAAa,YAAa,SAAQ,UAAU;IAC1C;;;OAGG;IACG,SAAS,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAE,uBAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"vaults.reader.d.ts","sourceRoot":"","sources":["../../../src/read/vaults/vaults.reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAE1B,mCAAmC,EAGpC,MAAM,gBAAgB,CAAC;AAExB,qBAAa,YAAa,SAAQ,UAAU;IAC1C;;;OAGG;IACG,SAAS,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAE,uBAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBvE;;;;OAIG;IACG,kBAAkB,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,EAAE,0BAA0B;;;;;;;;;;;;;;;IAmB9E;;;;OAIG;IACG,2BAA2B,CAAC,EAChC,YAAY,EACZ,GAAG,IAAI,EACR,EAAE,mCAAmC;;;;;;;;;;;;CAcvC"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.VaultsReader = void 0;
|
|
4
|
+
const base_reader_1 = require("../base-reader");
|
|
5
|
+
const vaults_types_1 = require("./vaults.types");
|
|
6
|
+
class VaultsReader extends base_reader_1.BaseReader {
|
|
4
7
|
/**
|
|
5
8
|
* Get all vaults
|
|
6
9
|
* @returns All vaults
|
|
@@ -13,8 +16,12 @@ export class VaultsReader extends BaseReader {
|
|
|
13
16
|
queryParams.set("limit", args.limit.toString());
|
|
14
17
|
if (args.offset)
|
|
15
18
|
queryParams.set("offset", args.offset.toString());
|
|
19
|
+
if (args.address)
|
|
20
|
+
queryParams.set("vault_address", args.address);
|
|
21
|
+
if (args.search)
|
|
22
|
+
queryParams.set("search", args.search);
|
|
16
23
|
const response = await this.getRequest({
|
|
17
|
-
schema: VaultsResponseSchema,
|
|
24
|
+
schema: vaults_types_1.VaultsResponseSchema,
|
|
18
25
|
url: `${this.deps.config.tradingHttpUrl}/api/v1/vaults`,
|
|
19
26
|
queryParams,
|
|
20
27
|
options: fetchOptions,
|
|
@@ -35,7 +42,7 @@ export class VaultsReader extends BaseReader {
|
|
|
35
42
|
if (args.offset)
|
|
36
43
|
queryParams.set("offset", args.offset.toString());
|
|
37
44
|
const response = await this.getRequest({
|
|
38
|
-
schema: UserOwnedVaultsResponseSchema,
|
|
45
|
+
schema: vaults_types_1.UserOwnedVaultsResponseSchema,
|
|
39
46
|
url: `${this.deps.config.tradingHttpUrl}/api/v1/user_owned_vaults`,
|
|
40
47
|
queryParams,
|
|
41
48
|
options: fetchOptions,
|
|
@@ -52,7 +59,7 @@ export class VaultsReader extends BaseReader {
|
|
|
52
59
|
user_address: args.ownerAddr,
|
|
53
60
|
});
|
|
54
61
|
const response = await this.getRequest({
|
|
55
|
-
schema: UserPerformancesOnVaultsResponseSchema,
|
|
62
|
+
schema: vaults_types_1.UserPerformancesOnVaultsResponseSchema,
|
|
56
63
|
url: `${this.deps.config.tradingHttpUrl}/api/v1/user_vault_performance`,
|
|
57
64
|
queryParams,
|
|
58
65
|
options: fetchOptions,
|
|
@@ -60,3 +67,4 @@ export class VaultsReader extends BaseReader {
|
|
|
60
67
|
return response.data;
|
|
61
68
|
}
|
|
62
69
|
}
|
|
70
|
+
exports.VaultsReader = VaultsReader;
|
|
@@ -8,11 +8,14 @@ export interface UserOwnedVaultsRequestArgs extends BaseRequestArgs {
|
|
|
8
8
|
limit?: number;
|
|
9
9
|
offset?: number;
|
|
10
10
|
}
|
|
11
|
+
export declare const vaultTypeValues: readonly ["user", "protocol"];
|
|
12
|
+
export type VaultType = (typeof vaultTypeValues)[number];
|
|
11
13
|
export interface PublicVaultsRequestArgs extends BaseRequestArgs {
|
|
12
14
|
limit?: number;
|
|
13
15
|
offset?: number;
|
|
14
|
-
vaultType?:
|
|
16
|
+
vaultType?: VaultType;
|
|
15
17
|
address?: string;
|
|
18
|
+
search?: string;
|
|
16
19
|
}
|
|
17
20
|
/**
|
|
18
21
|
* Arguments for fetching user performance metrics for a specific subaccount
|
|
@@ -44,7 +47,10 @@ export declare const VaultSchema: z.ZodObject<{
|
|
|
44
47
|
average_leverage: z.ZodNullable<z.ZodNumber>;
|
|
45
48
|
depositors: z.ZodNullable<z.ZodNumber>;
|
|
46
49
|
perp_equity: z.ZodNullable<z.ZodNumber>;
|
|
47
|
-
vault_type: z.
|
|
50
|
+
vault_type: z.ZodEnum<{
|
|
51
|
+
user: "user";
|
|
52
|
+
protocol: "protocol";
|
|
53
|
+
}>;
|
|
48
54
|
pnl_history: z.ZodNullable<z.ZodArray<z.ZodString>>;
|
|
49
55
|
social_links: z.ZodNullable<z.ZodArray<z.ZodString>>;
|
|
50
56
|
}, z.core.$strip>;
|
|
@@ -69,7 +75,10 @@ export declare const VaultsResponseSchema: z.ZodObject<{
|
|
|
69
75
|
average_leverage: z.ZodNullable<z.ZodNumber>;
|
|
70
76
|
depositors: z.ZodNullable<z.ZodNumber>;
|
|
71
77
|
perp_equity: z.ZodNullable<z.ZodNumber>;
|
|
72
|
-
vault_type: z.
|
|
78
|
+
vault_type: z.ZodEnum<{
|
|
79
|
+
user: "user";
|
|
80
|
+
protocol: "protocol";
|
|
81
|
+
}>;
|
|
73
82
|
pnl_history: z.ZodNullable<z.ZodArray<z.ZodString>>;
|
|
74
83
|
social_links: z.ZodNullable<z.ZodArray<z.ZodString>>;
|
|
75
84
|
}, z.core.$strip>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vaults.types.d.ts","sourceRoot":"","sources":["../../../src/read/vaults/vaults.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,eAAe;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"vaults.types.d.ts","sourceRoot":"","sources":["../../../src/read/vaults/vaults.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,eAAe;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,eAAe,+BAAgC,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mCAAoC,SAAQ,eAAe;IAC1E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuBtB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAChD,MAAM,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;AAE7B;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;iBAW/B,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;iBAAgD,CAAC;AAC3F,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AACpF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,cAAc,EAAE,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;iBAWvC,CAAC;AACH,eAAO,MAAM,sCAAsC;;;;;;;;;;;kBAAwC,CAAC;AAC5F,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,wBAAwB,GAAG,sBAAsB,EAAE,CAAC"}
|
|
@@ -1,68 +1,75 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UserPerformancesOnVaultsResponseSchema = exports.UserPerformanceOnVaultSchema = exports.UserOwnedVaultsResponseSchema = exports.UserOwnedVaultSchema = exports.VaultsResponseSchema = exports.VaultSchema = exports.vaultTypeValues = void 0;
|
|
7
|
+
const v4_1 = __importDefault(require("zod/v4"));
|
|
8
|
+
const pagination_types_1 = require("../pagination.types");
|
|
9
|
+
exports.vaultTypeValues = ["user", "protocol"];
|
|
3
10
|
/**
|
|
4
11
|
* Schema for a vault in the protocol
|
|
5
12
|
* Represents both protocol-wide vaults and user-managed vaults
|
|
6
13
|
*/
|
|
7
|
-
|
|
8
|
-
address:
|
|
9
|
-
name:
|
|
10
|
-
description:
|
|
11
|
-
manager:
|
|
12
|
-
status:
|
|
13
|
-
created_at:
|
|
14
|
-
tvl:
|
|
15
|
-
volume:
|
|
16
|
-
all_time_return:
|
|
17
|
-
past_month_return:
|
|
18
|
-
sharpe_ratio:
|
|
19
|
-
max_drawdown:
|
|
20
|
-
weekly_win_rate_12w:
|
|
21
|
-
profit_share:
|
|
22
|
-
pnl_90d:
|
|
23
|
-
manager_avg_cash:
|
|
24
|
-
average_leverage:
|
|
25
|
-
depositors:
|
|
26
|
-
perp_equity:
|
|
27
|
-
vault_type:
|
|
28
|
-
pnl_history:
|
|
29
|
-
social_links:
|
|
14
|
+
exports.VaultSchema = v4_1.default.object({
|
|
15
|
+
address: v4_1.default.string(),
|
|
16
|
+
name: v4_1.default.string(),
|
|
17
|
+
description: v4_1.default.string().nullable(),
|
|
18
|
+
manager: v4_1.default.string(),
|
|
19
|
+
status: v4_1.default.string(),
|
|
20
|
+
created_at: v4_1.default.number(),
|
|
21
|
+
tvl: v4_1.default.number().nullable(),
|
|
22
|
+
volume: v4_1.default.number().nullable(),
|
|
23
|
+
all_time_return: v4_1.default.number().nullable(),
|
|
24
|
+
past_month_return: v4_1.default.number().nullable(),
|
|
25
|
+
sharpe_ratio: v4_1.default.number().nullable(),
|
|
26
|
+
max_drawdown: v4_1.default.number().nullable(),
|
|
27
|
+
weekly_win_rate_12w: v4_1.default.number().nullable(),
|
|
28
|
+
profit_share: v4_1.default.number().nullable(),
|
|
29
|
+
pnl_90d: v4_1.default.number().nullable(),
|
|
30
|
+
manager_avg_cash: v4_1.default.number().nullable(),
|
|
31
|
+
average_leverage: v4_1.default.number().nullable(),
|
|
32
|
+
depositors: v4_1.default.number().nullable(),
|
|
33
|
+
perp_equity: v4_1.default.number().nullable(),
|
|
34
|
+
vault_type: v4_1.default.enum(exports.vaultTypeValues),
|
|
35
|
+
pnl_history: v4_1.default.array(v4_1.default.string()).nullable(),
|
|
36
|
+
social_links: v4_1.default.array(v4_1.default.string()).nullable(),
|
|
30
37
|
});
|
|
31
|
-
|
|
32
|
-
total_value_locked:
|
|
33
|
-
total_volume:
|
|
38
|
+
exports.VaultsResponseSchema = (0, pagination_types_1.PaginatedResponseSchema)(exports.VaultSchema).extend({
|
|
39
|
+
total_value_locked: v4_1.default.number(),
|
|
40
|
+
total_volume: v4_1.default.number(),
|
|
34
41
|
});
|
|
35
42
|
/**
|
|
36
43
|
* Schema for vaults owned/managed by a specific user
|
|
37
44
|
* Contains summary information about vaults the user manages
|
|
38
45
|
*/
|
|
39
|
-
|
|
40
|
-
vault_address:
|
|
41
|
-
vault_name:
|
|
42
|
-
vault_share_symbol:
|
|
43
|
-
status:
|
|
44
|
-
age_days:
|
|
45
|
-
num_managers:
|
|
46
|
-
tvl:
|
|
47
|
-
apr:
|
|
48
|
-
manager_equity:
|
|
49
|
-
manager_stake:
|
|
46
|
+
exports.UserOwnedVaultSchema = v4_1.default.object({
|
|
47
|
+
vault_address: v4_1.default.string(),
|
|
48
|
+
vault_name: v4_1.default.string(),
|
|
49
|
+
vault_share_symbol: v4_1.default.string(),
|
|
50
|
+
status: v4_1.default.string(),
|
|
51
|
+
age_days: v4_1.default.number(),
|
|
52
|
+
num_managers: v4_1.default.number(),
|
|
53
|
+
tvl: v4_1.default.number().nullable(),
|
|
54
|
+
apr: v4_1.default.number().nullable(),
|
|
55
|
+
manager_equity: v4_1.default.number().nullable(),
|
|
56
|
+
manager_stake: v4_1.default.number().nullable(),
|
|
50
57
|
});
|
|
51
|
-
|
|
58
|
+
exports.UserOwnedVaultsResponseSchema = (0, pagination_types_1.PaginatedResponseSchema)(exports.UserOwnedVaultSchema);
|
|
52
59
|
/**
|
|
53
60
|
* Schema for user performance metrics within a vault
|
|
54
61
|
* Tracks a user's deposits, shares, returns, and PnL for a specific vault
|
|
55
62
|
*/
|
|
56
|
-
|
|
57
|
-
vault_address:
|
|
58
|
-
user_address:
|
|
59
|
-
net_deposits:
|
|
60
|
-
current_num_shares:
|
|
61
|
-
current_value_of_shares:
|
|
62
|
-
all_time_return:
|
|
63
|
-
unrealized_pnl:
|
|
64
|
-
share_price:
|
|
65
|
-
volume:
|
|
66
|
-
weekly_win_rate_12w:
|
|
63
|
+
exports.UserPerformanceOnVaultSchema = v4_1.default.object({
|
|
64
|
+
vault_address: v4_1.default.string(),
|
|
65
|
+
user_address: v4_1.default.string(),
|
|
66
|
+
net_deposits: v4_1.default.number().nullable(),
|
|
67
|
+
current_num_shares: v4_1.default.number().nullable(),
|
|
68
|
+
current_value_of_shares: v4_1.default.number().nullable(),
|
|
69
|
+
all_time_return: v4_1.default.number().nullable(),
|
|
70
|
+
unrealized_pnl: v4_1.default.number().nullable(),
|
|
71
|
+
share_price: v4_1.default.number(),
|
|
72
|
+
volume: v4_1.default.number(),
|
|
73
|
+
weekly_win_rate_12w: v4_1.default.number().nullable(),
|
|
67
74
|
});
|
|
68
|
-
|
|
75
|
+
exports.UserPerformancesOnVaultsResponseSchema = v4_1.default.array(exports.UserPerformanceOnVaultSchema);
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DecibelWsSubscription = void 0;
|
|
7
|
+
const isomorphic_ws_1 = __importDefault(require("isomorphic-ws"));
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
class DecibelWsSubscription {
|
|
4
10
|
config;
|
|
5
11
|
onError;
|
|
6
12
|
constructor(config, onError) {
|
|
@@ -21,7 +27,7 @@ export class DecibelWsSubscription {
|
|
|
21
27
|
return null;
|
|
22
28
|
}
|
|
23
29
|
try {
|
|
24
|
-
const jsonData = JSON.parse(data, bigIntReviver);
|
|
30
|
+
const jsonData = JSON.parse(data, utils_1.bigIntReviver);
|
|
25
31
|
if (jsonData &&
|
|
26
32
|
typeof jsonData === "object" &&
|
|
27
33
|
"topic" in jsonData &&
|
|
@@ -39,12 +45,12 @@ export class DecibelWsSubscription {
|
|
|
39
45
|
if (this.#ws) {
|
|
40
46
|
return;
|
|
41
47
|
}
|
|
42
|
-
const ws = new
|
|
48
|
+
const ws = new isomorphic_ws_1.default(this.config.tradingWsUrl);
|
|
43
49
|
ws.addEventListener("open", () => {
|
|
44
50
|
this.#reconnectAttempts = 0;
|
|
45
|
-
|
|
51
|
+
this.#subscriptions.keys().forEach((topic) => {
|
|
46
52
|
ws.send(this.#getSubscribeMessage(topic));
|
|
47
|
-
}
|
|
53
|
+
});
|
|
48
54
|
});
|
|
49
55
|
ws.addEventListener("message", (event) => {
|
|
50
56
|
if (typeof event.data === "string" &&
|
|
@@ -88,7 +94,7 @@ export class DecibelWsSubscription {
|
|
|
88
94
|
const listeners = this.#subscriptions.get(topic) ?? new Set();
|
|
89
95
|
// If subscription arent found, subscribe to topic first
|
|
90
96
|
if (listeners.size === 0) {
|
|
91
|
-
if (this.#ws?.readyState ===
|
|
97
|
+
if (this.#ws?.readyState === isomorphic_ws_1.default.OPEN) {
|
|
92
98
|
this.#ws.send(this.#getSubscribeMessage(topic));
|
|
93
99
|
}
|
|
94
100
|
}
|
|
@@ -98,7 +104,7 @@ export class DecibelWsSubscription {
|
|
|
98
104
|
void onData(parsedData);
|
|
99
105
|
}
|
|
100
106
|
catch (e) {
|
|
101
|
-
throw prettifyMaybeZodError(e);
|
|
107
|
+
throw (0, utils_1.prettifyMaybeZodError)(e);
|
|
102
108
|
}
|
|
103
109
|
};
|
|
104
110
|
listeners.add(listener);
|
|
@@ -113,7 +119,7 @@ export class DecibelWsSubscription {
|
|
|
113
119
|
if (!this.#subscriptions.has(topic))
|
|
114
120
|
return;
|
|
115
121
|
this.#subscriptions.delete(topic);
|
|
116
|
-
if (this.#ws?.readyState ===
|
|
122
|
+
if (this.#ws?.readyState === isomorphic_ws_1.default.OPEN) {
|
|
117
123
|
this.#ws.send(this.#getUnsubscribeMessage(topic));
|
|
118
124
|
}
|
|
119
125
|
// Close the WebSocket if the last subscription was removed.
|
|
@@ -153,7 +159,7 @@ export class DecibelWsSubscription {
|
|
|
153
159
|
if (!this.#subscriptions.has(topic)) {
|
|
154
160
|
return;
|
|
155
161
|
}
|
|
156
|
-
if (this.#ws?.readyState ===
|
|
162
|
+
if (this.#ws?.readyState === isomorphic_ws_1.default.OPEN) {
|
|
157
163
|
this.#ws.send(this.#getUnsubscribeMessage(topic));
|
|
158
164
|
this.#ws.send(this.#getSubscribeMessage(topic));
|
|
159
165
|
return;
|
|
@@ -164,6 +170,7 @@ export class DecibelWsSubscription {
|
|
|
164
170
|
this.#ws?.close();
|
|
165
171
|
}
|
|
166
172
|
readyState() {
|
|
167
|
-
return this.#ws?.readyState ??
|
|
173
|
+
return this.#ws?.readyState ?? isomorphic_ws_1.default.CLOSED;
|
|
168
174
|
}
|
|
169
175
|
}
|
|
176
|
+
exports.DecibelWsSubscription = DecibelWsSubscription;
|
package/dist/subaccount-types.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RenameSubaccountSchema = void 0;
|
|
7
|
+
const v4_1 = __importDefault(require("zod/v4"));
|
|
8
|
+
exports.RenameSubaccountSchema = v4_1.default.object({
|
|
9
|
+
subaccount_address: v4_1.default.string(),
|
|
10
|
+
new_name: v4_1.default.string(),
|
|
5
11
|
});
|
|
@@ -1,30 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateExpireTimestamp = void 0;
|
|
4
|
+
exports.buildSimpleTransactionSync = buildSimpleTransactionSync;
|
|
5
|
+
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
6
|
+
function buildSimpleTransactionSync(args) {
|
|
7
|
+
const txnPayload = (0, ts_sdk_1.generateTransactionPayloadWithABI)({
|
|
4
8
|
aptosConfig: args.aptosConfig,
|
|
5
9
|
function: args.data.function,
|
|
6
10
|
functionArguments: args.data.functionArguments,
|
|
7
11
|
typeArguments: args.data.typeArguments,
|
|
8
12
|
abi: parseMoveFnAbiToEntryFnABI(args.abi),
|
|
9
13
|
});
|
|
10
|
-
const expireTimestamp = generateExpireTimestamp(args.aptosConfig, args.timeDeltaMs);
|
|
11
|
-
const rawTxn = new RawTransaction(AccountAddress.from(args.sender),
|
|
14
|
+
const expireTimestamp = (0, exports.generateExpireTimestamp)(args.aptosConfig, args.timeDeltaMs);
|
|
15
|
+
const rawTxn = new ts_sdk_1.RawTransaction(ts_sdk_1.AccountAddress.from(args.sender),
|
|
12
16
|
// If replay nonce is provided, use it as the sequence number
|
|
13
17
|
// This is an unused value, so it's specifically to show that the sequence number is not used
|
|
14
|
-
BigInt("0xdeadbeef"), convertPayloadToInnerPayload(txnPayload, args.replayProtectionNonce),
|
|
18
|
+
BigInt("0xdeadbeef"), (0, ts_sdk_1.convertPayloadToInnerPayload)(txnPayload, args.replayProtectionNonce),
|
|
15
19
|
// @Todo: Use gasPriceManager to get the max gas amount [as defaultMaxGasAmount might be very high number]
|
|
16
|
-
BigInt(args.aptosConfig.getDefaultMaxGasAmount()), BigInt(args.gasUnitPrice), BigInt(expireTimestamp), new ChainId(args.chainId));
|
|
17
|
-
return new SimpleTransaction(rawTxn, args.withFeePayer ? AccountAddress.ZERO : undefined);
|
|
20
|
+
BigInt(args.aptosConfig.getDefaultMaxGasAmount()), BigInt(args.gasUnitPrice), BigInt(expireTimestamp), new ts_sdk_1.ChainId(args.chainId));
|
|
21
|
+
return new ts_sdk_1.SimpleTransaction(rawTxn, args.withFeePayer ? ts_sdk_1.AccountAddress.ZERO : undefined);
|
|
18
22
|
}
|
|
19
23
|
const parseMoveFnAbiToEntryFnABI = (functionAbi) => {
|
|
20
24
|
// Remove the signer arguments
|
|
21
|
-
const numSigners = findFirstNonSignerArg(functionAbi);
|
|
25
|
+
const numSigners = (0, ts_sdk_1.findFirstNonSignerArg)(functionAbi);
|
|
22
26
|
const params = [];
|
|
23
27
|
for (let i = numSigners; i < functionAbi.params.length; i += 1) {
|
|
24
28
|
const param = functionAbi.params[i];
|
|
25
29
|
if (!param)
|
|
26
30
|
continue;
|
|
27
|
-
params.push(parseTypeTag(param, { allowGenerics: true }));
|
|
31
|
+
params.push((0, ts_sdk_1.parseTypeTag)(param, { allowGenerics: true }));
|
|
28
32
|
}
|
|
29
33
|
return {
|
|
30
34
|
signers: numSigners,
|
|
@@ -32,4 +36,5 @@ const parseMoveFnAbiToEntryFnABI = (functionAbi) => {
|
|
|
32
36
|
parameters: params,
|
|
33
37
|
};
|
|
34
38
|
};
|
|
35
|
-
|
|
39
|
+
const generateExpireTimestamp = (aptosConfig, timeDeltaMs = 0) => Math.floor((Date.now() + timeDeltaMs) / 1000) + aptosConfig.getDefaultTxnExpirySecFromNow();
|
|
40
|
+
exports.generateExpireTimestamp = generateExpireTimestamp;
|