@decibeltrade/sdk 0.3.1 → 0.4.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/abi/json/netna.json +792 -289
- package/dist/abi/json/testnet.json +7 -6
- package/dist/admin.d.ts +36 -0
- package/dist/admin.d.ts.map +1 -1
- package/dist/admin.js +84 -0
- package/dist/base.d.ts +1 -6
- package/dist/base.d.ts.map +1 -1
- package/dist/base.js +13 -23
- package/dist/constants.d.ts +10 -4
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +21 -6
- package/dist/fee-pay.d.ts +3 -3
- package/dist/fee-pay.d.ts.map +1 -1
- package/dist/fee-pay.js +26 -49
- package/dist/gas/gas-price-manager.d.ts.map +1 -1
- package/dist/gas/gas-price-manager.js +3 -1
- package/dist/read/account-overview/account-overview.reader.d.ts +2 -0
- package/dist/read/account-overview/account-overview.reader.d.ts.map +1 -1
- package/dist/read/account-overview/account-overview.types.d.ts +4 -0
- package/dist/read/account-overview/account-overview.types.d.ts.map +1 -1
- package/dist/read/account-overview/account-overview.types.js +5 -0
- package/dist/read/action-utils.d.ts +12 -0
- package/dist/read/action-utils.d.ts.map +1 -0
- package/dist/read/action-utils.js +13 -0
- package/dist/read/base-reader.d.ts +1 -0
- package/dist/read/base-reader.d.ts.map +1 -1
- package/dist/read/base-reader.js +15 -0
- package/dist/read/base-reader.test.d.ts +2 -0
- package/dist/read/base-reader.test.d.ts.map +1 -0
- package/dist/read/base-reader.test.js +68 -0
- package/dist/read/global-points-stats/global-points-stats.reader.d.ts +9 -0
- package/dist/read/global-points-stats/global-points-stats.reader.d.ts.map +1 -0
- package/dist/read/global-points-stats/global-points-stats.reader.js +12 -0
- package/dist/read/global-points-stats/global-points-stats.types.d.ts +9 -0
- package/dist/read/global-points-stats/global-points-stats.types.d.ts.map +1 -0
- package/dist/read/global-points-stats/global-points-stats.types.js +5 -0
- package/dist/read/index.d.ts +13 -0
- package/dist/read/index.d.ts.map +1 -1
- package/dist/read/index.js +23 -2
- package/dist/read/market-depth/market-depth.reader.d.ts +1 -18
- package/dist/read/market-depth/market-depth.reader.d.ts.map +1 -1
- package/dist/read/market-depth/market-depth.reader.js +18 -20
- package/dist/read/market-depth/market-depth.types.d.ts +4 -2
- package/dist/read/market-depth/market-depth.types.d.ts.map +1 -1
- package/dist/read/market-depth/market-depth.types.js +3 -1
- package/dist/read/market-trades/market-trades.reader.d.ts +0 -1
- package/dist/read/market-trades/market-trades.reader.d.ts.map +1 -1
- package/dist/read/market-trades/market-trades.types.d.ts +0 -3
- package/dist/read/market-trades/market-trades.types.d.ts.map +1 -1
- package/dist/read/market-trades/market-trades.types.js +0 -1
- package/dist/read/points-leaderboard/points-leaderboard.reader.d.ts +21 -0
- package/dist/read/points-leaderboard/points-leaderboard.reader.d.ts.map +1 -0
- package/dist/read/points-leaderboard/points-leaderboard.reader.js +23 -0
- package/dist/read/points-leaderboard/points-leaderboard.types.d.ts +30 -0
- package/dist/read/points-leaderboard/points-leaderboard.types.d.ts.map +1 -0
- package/dist/read/points-leaderboard/points-leaderboard.types.js +11 -0
- package/dist/read/portfolio-chart/portfolio-chart.types.d.ts +1 -1
- package/dist/read/portfolio-chart/portfolio-chart.types.d.ts.map +1 -1
- package/dist/read/referrals/referrals.reader.d.ts +98 -0
- package/dist/read/referrals/referrals.reader.d.ts.map +1 -0
- package/dist/read/referrals/referrals.reader.js +92 -0
- package/dist/read/referrals/referrals.types.d.ts +136 -0
- package/dist/read/referrals/referrals.types.d.ts.map +1 -0
- package/dist/read/referrals/referrals.types.js +85 -0
- package/dist/read/streaks/streaks.reader.d.ts +19 -0
- package/dist/read/streaks/streaks.reader.d.ts.map +1 -0
- package/dist/read/streaks/streaks.reader.js +19 -0
- package/dist/read/streaks/streaks.types.d.ts +17 -0
- package/dist/read/streaks/streaks.types.d.ts.map +1 -0
- package/dist/read/streaks/streaks.types.js +10 -0
- package/dist/read/tier/tier.reader.d.ts +21 -0
- package/dist/read/tier/tier.reader.d.ts.map +1 -0
- package/dist/read/tier/tier.reader.js +19 -0
- package/dist/read/tier/tier.types.d.ts +25 -0
- package/dist/read/tier/tier.types.d.ts.map +1 -0
- package/dist/read/tier/tier.types.js +13 -0
- package/dist/read/trading-amps/trading-amps.reader.d.ts +18 -0
- package/dist/read/trading-amps/trading-amps.reader.d.ts.map +1 -0
- package/dist/read/trading-amps/trading-amps.reader.js +23 -0
- package/dist/read/trading-amps/trading-amps.types.d.ts +25 -0
- package/dist/read/trading-amps/trading-amps.types.d.ts.map +1 -0
- package/dist/read/trading-amps/trading-amps.types.js +10 -0
- package/dist/read/types.d.ts +6 -0
- package/dist/read/types.d.ts.map +1 -1
- package/dist/read/types.js +6 -0
- package/dist/read/user-funding-history/user-funding-history.reader.d.ts +1 -2
- package/dist/read/user-funding-history/user-funding-history.reader.d.ts.map +1 -1
- package/dist/read/user-funding-history/user-funding-history.types.d.ts +8 -4
- package/dist/read/user-funding-history/user-funding-history.types.d.ts.map +1 -1
- package/dist/read/user-funding-history/user-funding-history.types.js +1 -2
- package/dist/read/user-notifications/user-notifications.types.d.ts +0 -2
- package/dist/read/user-notifications/user-notifications.types.d.ts.map +1 -1
- package/dist/read/user-open-orders/user-open-orders.reader.d.ts +0 -2
- package/dist/read/user-open-orders/user-open-orders.reader.d.ts.map +1 -1
- package/dist/read/user-open-orders/user-open-orders.types.d.ts +0 -6
- package/dist/read/user-open-orders/user-open-orders.types.d.ts.map +1 -1
- package/dist/read/user-open-orders/user-open-orders.types.js +0 -2
- package/dist/read/user-order-history/user-order-history.reader.d.ts +0 -2
- package/dist/read/user-order-history/user-order-history.reader.d.ts.map +1 -1
- package/dist/read/user-order-history/user-order-history.types.d.ts +0 -6
- package/dist/read/user-order-history/user-order-history.types.d.ts.map +1 -1
- package/dist/read/user-order-history/user-order-history.types.js +0 -2
- package/dist/read/user-positions/user-positions.reader.d.ts +1 -0
- package/dist/read/user-positions/user-positions.reader.d.ts.map +1 -1
- package/dist/read/user-positions/user-positions.types.d.ts +220 -10
- package/dist/read/user-positions/user-positions.types.d.ts.map +1 -1
- package/dist/read/user-positions/user-positions.types.js +1 -0
- package/dist/read/user-trade-history/user-trade-history.reader.d.ts +5 -2
- package/dist/read/user-trade-history/user-trade-history.reader.d.ts.map +1 -1
- package/dist/read/user-trade-history/user-trade-history.types.d.ts +36 -9
- package/dist/read/user-trade-history/user-trade-history.types.d.ts.map +1 -1
- package/dist/read/user-trade-history/user-trade-history.types.js +4 -1
- package/dist/read/vaults/vaults.reader.d.ts +2 -0
- package/dist/read/vaults/vaults.reader.d.ts.map +1 -1
- package/dist/read/vaults/vaults.reader.js +4 -0
- package/dist/read/vaults/vaults.types.d.ts +18 -0
- package/dist/read/vaults/vaults.types.d.ts.map +1 -1
- package/dist/read/vaults/vaults.types.js +17 -0
- package/dist/read/ws-subscription.d.ts +1 -1
- package/dist/read/ws-subscription.d.ts.map +1 -1
- package/dist/read/ws-subscription.js +9 -1
- package/dist/release-config.d.ts +2 -0
- package/dist/release-config.d.ts.map +1 -1
- package/dist/release-config.js +6 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/write.d.ts +12 -0
- package/dist/write.d.ts.map +1 -1
- package/dist/write.js +11 -1
- package/package.json +1 -1
- package/readme.md +7 -48
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-reader.d.ts","sourceRoot":"","sources":["../../src/read/base-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,YAAY,EAEZ,cAAc,EAEd,gBAAgB,EAEhB,eAAe,EAChB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,qBAAa,UAAU;IACT,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB;gBAAvB,IAAI,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"base-reader.d.ts","sourceRoot":"","sources":["../../src/read/base-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,YAAY,EAEZ,cAAc,EAEd,gBAAgB,EAEhB,eAAe,EAChB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,qBAAa,UAAU;IACT,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB;gBAAvB,IAAI,EAAE,iBAAiB;IAEtD,OAAO,CAAC,YAAY;cAYJ,UAAU,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;;;;;cAQ7E,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;;;;;cAQ/E,YAAY,CAAC,aAAa,EACxC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;;;;;CAQxD"}
|
package/dist/read/base-reader.js
CHANGED
|
@@ -4,21 +4,36 @@ export class BaseReader {
|
|
|
4
4
|
constructor(deps) {
|
|
5
5
|
this.deps = deps;
|
|
6
6
|
}
|
|
7
|
+
mergeHeaders(options) {
|
|
8
|
+
const extra = this.deps.config.additionalHeaders;
|
|
9
|
+
if (!extra)
|
|
10
|
+
return options;
|
|
11
|
+
return {
|
|
12
|
+
...options,
|
|
13
|
+
headers: {
|
|
14
|
+
...extra,
|
|
15
|
+
...options?.headers,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
}
|
|
7
19
|
async getRequest(args) {
|
|
8
20
|
return baseGetRequest({
|
|
9
21
|
...args,
|
|
22
|
+
options: this.mergeHeaders(args.options),
|
|
10
23
|
apiKey: this.deps.apiKey,
|
|
11
24
|
});
|
|
12
25
|
}
|
|
13
26
|
async postRequest(args) {
|
|
14
27
|
return basePostRequest({
|
|
15
28
|
...args,
|
|
29
|
+
options: this.mergeHeaders(args.options),
|
|
16
30
|
apiKey: this.deps.apiKey,
|
|
17
31
|
});
|
|
18
32
|
}
|
|
19
33
|
async patchRequest(args) {
|
|
20
34
|
return basePatchRequest({
|
|
21
35
|
...args,
|
|
36
|
+
options: this.mergeHeaders(args.options),
|
|
22
37
|
apiKey: this.deps.apiKey,
|
|
23
38
|
});
|
|
24
39
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-reader.test.d.ts","sourceRoot":"","sources":["../../src/read/base-reader.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Network } from "@aptos-labs/ts-sdk";
|
|
2
|
+
import { describe, expect, it, vi } from "vitest";
|
|
3
|
+
import { z } from "zod/v4";
|
|
4
|
+
import { DEFAULT_COMPAT_VERSION } from "../release-config";
|
|
5
|
+
import { BaseReader } from "./base-reader";
|
|
6
|
+
// Expose protected methods for testing
|
|
7
|
+
class TestableReader extends BaseReader {
|
|
8
|
+
async doGet(url) {
|
|
9
|
+
return this.getRequest({ schema: z.unknown(), url });
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
function createMockDeps(additionalHeaders) {
|
|
13
|
+
const mockConfig = {
|
|
14
|
+
network: Network.TESTNET,
|
|
15
|
+
fullnodeUrl: "https://testnet.aptoslabs.com/v1",
|
|
16
|
+
tradingHttpUrl: "https://api.testnet.example.com",
|
|
17
|
+
tradingWsUrl: "wss://ws.testnet.example.com",
|
|
18
|
+
deployment: {
|
|
19
|
+
package: "0x0000000000000000000000000000000000000000000000000000000000000123",
|
|
20
|
+
usdc: "0x0000000000000000000000000000000000000000000000000000000000000456",
|
|
21
|
+
testc: "0x0000000000000000000000000000000000000000000000000000000000000789",
|
|
22
|
+
perpEngineGlobal: "0x0000000000000000000000000000000000000000000000000000000000000abc",
|
|
23
|
+
},
|
|
24
|
+
compatVersion: DEFAULT_COMPAT_VERSION,
|
|
25
|
+
additionalHeaders,
|
|
26
|
+
};
|
|
27
|
+
return {
|
|
28
|
+
aptos: {},
|
|
29
|
+
ws: {},
|
|
30
|
+
config: mockConfig,
|
|
31
|
+
apiKey: additionalHeaders ? undefined : "test-api-key",
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
describe("BaseReader - additionalHeaders", () => {
|
|
35
|
+
it("should not inject headers when additionalHeaders is undefined", async () => {
|
|
36
|
+
const deps = createMockDeps();
|
|
37
|
+
const reader = new TestableReader(deps);
|
|
38
|
+
const fetchSpy = vi
|
|
39
|
+
.spyOn(globalThis, "fetch")
|
|
40
|
+
.mockResolvedValue(new Response(JSON.stringify({ ok: true }), { status: 200 }));
|
|
41
|
+
await reader.doGet("https://api.example.com/test");
|
|
42
|
+
const calledInit = fetchSpy.mock.calls[0]?.[1];
|
|
43
|
+
const headers = calledInit?.headers;
|
|
44
|
+
expect(headers.get("Authorization")).toBe("Bearer test-api-key");
|
|
45
|
+
expect(headers.get("x-internal-organization-id")).toBeNull();
|
|
46
|
+
fetchSpy.mockRestore();
|
|
47
|
+
});
|
|
48
|
+
it("should inject additionalHeaders into requests", async () => {
|
|
49
|
+
const deps = createMockDeps({
|
|
50
|
+
"x-internal-organization-id": "org-1",
|
|
51
|
+
"x-internal-project-id": "proj-1",
|
|
52
|
+
"x-internal-application-id": "app-1",
|
|
53
|
+
});
|
|
54
|
+
const reader = new TestableReader(deps);
|
|
55
|
+
const fetchSpy = vi
|
|
56
|
+
.spyOn(globalThis, "fetch")
|
|
57
|
+
.mockResolvedValue(new Response(JSON.stringify({ ok: true }), { status: 200 }));
|
|
58
|
+
await reader.doGet("https://api.example.com/test");
|
|
59
|
+
const calledInit = fetchSpy.mock.calls[0]?.[1];
|
|
60
|
+
const headers = calledInit?.headers;
|
|
61
|
+
expect(headers.get("x-internal-organization-id")).toBe("org-1");
|
|
62
|
+
expect(headers.get("x-internal-project-id")).toBe("proj-1");
|
|
63
|
+
expect(headers.get("x-internal-application-id")).toBe("app-1");
|
|
64
|
+
// apiKey is undefined when additionalHeaders is set
|
|
65
|
+
expect(headers.get("Authorization")).toBeNull();
|
|
66
|
+
fetchSpy.mockRestore();
|
|
67
|
+
});
|
|
68
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BaseReader } from "../base-reader";
|
|
2
|
+
import { GlobalPointsStatsRequestArgs } from "./global-points-stats.types";
|
|
3
|
+
export declare class GlobalPointsStatsReader extends BaseReader {
|
|
4
|
+
get({ fetchOptions }?: GlobalPointsStatsRequestArgs): Promise<{
|
|
5
|
+
total_users: number;
|
|
6
|
+
total_amps_distributed: number;
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=global-points-stats.reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-points-stats.reader.d.ts","sourceRoot":"","sources":["../../../src/read/global-points-stats/global-points-stats.reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,4BAA4B,EAA2B,MAAM,6BAA6B,CAAC;AAEpG,qBAAa,uBAAwB,SAAQ,UAAU;IAC/C,GAAG,CAAC,EAAE,YAAY,EAAE,GAAE,4BAAiC;;;;CAS9D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseReader } from "../base-reader";
|
|
2
|
+
import { GlobalPointsStatsSchema } from "./global-points-stats.types";
|
|
3
|
+
export class GlobalPointsStatsReader extends BaseReader {
|
|
4
|
+
async get({ fetchOptions } = {}) {
|
|
5
|
+
const response = await this.getRequest({
|
|
6
|
+
schema: GlobalPointsStatsSchema,
|
|
7
|
+
url: `${this.deps.config.tradingHttpUrl}/api/v1/points/global`,
|
|
8
|
+
options: fetchOptions,
|
|
9
|
+
});
|
|
10
|
+
return response.data;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
import { BaseRequestArgs } from "../base-reader";
|
|
3
|
+
export type GlobalPointsStatsRequestArgs = BaseRequestArgs;
|
|
4
|
+
export declare const GlobalPointsStatsSchema: z.ZodObject<{
|
|
5
|
+
total_users: z.ZodNumber;
|
|
6
|
+
total_amps_distributed: z.ZodNumber;
|
|
7
|
+
}, z.core.$strip>;
|
|
8
|
+
export type GlobalPointsStats = z.infer<typeof GlobalPointsStatsSchema>;
|
|
9
|
+
//# sourceMappingURL=global-points-stats.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-points-stats.types.d.ts","sourceRoot":"","sources":["../../../src/read/global-points-stats/global-points-stats.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,4BAA4B,GAAG,eAAe,CAAC;AAE3D,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
package/dist/read/index.d.ts
CHANGED
|
@@ -4,13 +4,19 @@ import { DecibelConfig, DecibelReaderDeps } from "../constants";
|
|
|
4
4
|
import { AccountOverviewReader } from "./account-overview/account-overview.reader";
|
|
5
5
|
import { CandlesticksReader } from "./candlesticks/candlesticks.reader";
|
|
6
6
|
import { DelegationsReader } from "./delegations/delegations.reader";
|
|
7
|
+
import { GlobalPointsStatsReader } from "./global-points-stats/global-points-stats.reader";
|
|
7
8
|
import { LeaderboardReader } from "./leaderboard/leaderboard.reader";
|
|
8
9
|
import { MarketContextsReader } from "./market-contexts/market-contexts.reader";
|
|
9
10
|
import { MarketDepthReader } from "./market-depth/market-depth.reader";
|
|
10
11
|
import { MarketPricesReader } from "./market-prices/market-prices.reader";
|
|
11
12
|
import { MarketTradesReader } from "./market-trades/market-trades.reader";
|
|
12
13
|
import { MarketsReader } from "./markets/markets.reader";
|
|
14
|
+
import { PointsLeaderboardReader } from "./points-leaderboard/points-leaderboard.reader";
|
|
13
15
|
import { PortfolioChartReader } from "./portfolio-chart/portfolio-chart.reader";
|
|
16
|
+
import { ReferralsReader } from "./referrals/referrals.reader";
|
|
17
|
+
import { StreaksReader } from "./streaks/streaks.reader";
|
|
18
|
+
import { TierReader } from "./tier/tier.reader";
|
|
19
|
+
import { TradingAmpsReader } from "./trading-amps/trading-amps.reader";
|
|
14
20
|
import { TradingPointsReader } from "./trading-points/trading-points.reader";
|
|
15
21
|
import { UserActiveTwapsReader } from "./user-active-twaps/user-active-twaps.reader";
|
|
16
22
|
import { UserBulkOrdersReader } from "./user-bulk-orders/user-bulk-orders.reader";
|
|
@@ -24,6 +30,7 @@ import { UserSubaccountsReader } from "./user-subaccounts/user-subaccounts.reade
|
|
|
24
30
|
import { UserTradeHistoryReader } from "./user-trade-history/user-trade-history.reader";
|
|
25
31
|
import { UserTwapHistoryReader } from "./user-twap-history/user-twap-history.reader";
|
|
26
32
|
import { VaultsReader } from "./vaults/vaults.reader";
|
|
33
|
+
export * from "./action-utils";
|
|
27
34
|
export * from "./types";
|
|
28
35
|
interface Cache {
|
|
29
36
|
usdcDecimals?: number;
|
|
@@ -51,10 +58,16 @@ export declare class DecibelReadDex {
|
|
|
51
58
|
readonly userTwapHistory: UserTwapHistoryReader;
|
|
52
59
|
readonly portfolioChart: PortfolioChartReader;
|
|
53
60
|
readonly leaderboard: LeaderboardReader;
|
|
61
|
+
readonly pointsLeaderboard: PointsLeaderboardReader;
|
|
54
62
|
readonly vaults: VaultsReader;
|
|
55
63
|
readonly delegations: DelegationsReader;
|
|
56
64
|
readonly userNotifications: UserNotificationsReader;
|
|
57
65
|
readonly tradingPoints: TradingPointsReader;
|
|
66
|
+
readonly streaks: StreaksReader;
|
|
67
|
+
readonly tradingAmps: TradingAmpsReader;
|
|
68
|
+
readonly tier: TierReader;
|
|
69
|
+
readonly globalPointsStats: GlobalPointsStatsReader;
|
|
70
|
+
readonly referrals: ReferralsReader;
|
|
58
71
|
constructor(config: DecibelConfig, opts?: {
|
|
59
72
|
nodeApiKey?: string;
|
|
60
73
|
onWsError?: (error: ErrorEvent) => void;
|
package/dist/read/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA2C,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD,cAAc,SAAS,CAAC;AAExB,UAAU,KAAK;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,cAAc;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"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"}
|
package/dist/read/index.js
CHANGED
|
@@ -2,13 +2,19 @@ import { Aptos, AptosConfig, createObjectAddress } from "@aptos-labs/ts-sdk";
|
|
|
2
2
|
import { AccountOverviewReader } from "./account-overview/account-overview.reader";
|
|
3
3
|
import { CandlesticksReader } from "./candlesticks/candlesticks.reader";
|
|
4
4
|
import { DelegationsReader } from "./delegations/delegations.reader";
|
|
5
|
+
import { GlobalPointsStatsReader } from "./global-points-stats/global-points-stats.reader";
|
|
5
6
|
import { LeaderboardReader } from "./leaderboard/leaderboard.reader";
|
|
6
7
|
import { MarketContextsReader } from "./market-contexts/market-contexts.reader";
|
|
7
8
|
import { MarketDepthReader } from "./market-depth/market-depth.reader";
|
|
8
9
|
import { MarketPricesReader } from "./market-prices/market-prices.reader";
|
|
9
10
|
import { MarketTradesReader } from "./market-trades/market-trades.reader";
|
|
10
11
|
import { MarketsReader } from "./markets/markets.reader";
|
|
12
|
+
import { PointsLeaderboardReader } from "./points-leaderboard/points-leaderboard.reader";
|
|
11
13
|
import { PortfolioChartReader } from "./portfolio-chart/portfolio-chart.reader";
|
|
14
|
+
import { ReferralsReader } from "./referrals/referrals.reader";
|
|
15
|
+
import { StreaksReader } from "./streaks/streaks.reader";
|
|
16
|
+
import { TierReader } from "./tier/tier.reader";
|
|
17
|
+
import { TradingAmpsReader } from "./trading-amps/trading-amps.reader";
|
|
12
18
|
import { TradingPointsReader } from "./trading-points/trading-points.reader";
|
|
13
19
|
import { CrossedPosition } from "./types";
|
|
14
20
|
import { UserActiveTwapsReader } from "./user-active-twaps/user-active-twaps.reader";
|
|
@@ -24,6 +30,7 @@ import { UserTradeHistoryReader } from "./user-trade-history/user-trade-history.
|
|
|
24
30
|
import { UserTwapHistoryReader } from "./user-twap-history/user-twap-history.reader";
|
|
25
31
|
import { VaultsReader } from "./vaults/vaults.reader";
|
|
26
32
|
import { DecibelWsSubscription } from "./ws-subscription";
|
|
33
|
+
export * from "./action-utils";
|
|
27
34
|
export * from "./types";
|
|
28
35
|
export class DecibelReadDex {
|
|
29
36
|
config;
|
|
@@ -48,22 +55,30 @@ export class DecibelReadDex {
|
|
|
48
55
|
userTwapHistory;
|
|
49
56
|
portfolioChart;
|
|
50
57
|
leaderboard;
|
|
58
|
+
pointsLeaderboard;
|
|
51
59
|
vaults;
|
|
52
60
|
delegations;
|
|
53
61
|
userNotifications;
|
|
54
62
|
tradingPoints;
|
|
63
|
+
streaks;
|
|
64
|
+
tradingAmps;
|
|
65
|
+
tier;
|
|
66
|
+
globalPointsStats;
|
|
67
|
+
referrals;
|
|
55
68
|
constructor(config, opts) {
|
|
56
69
|
this.config = config;
|
|
57
70
|
const aptosConfig = new AptosConfig({
|
|
58
71
|
network: config.network,
|
|
59
72
|
fullnode: config.fullnodeUrl,
|
|
60
|
-
clientConfig:
|
|
73
|
+
clientConfig: config.additionalHeaders
|
|
74
|
+
? { HEADERS: config.additionalHeaders }
|
|
75
|
+
: { API_KEY: opts?.nodeApiKey },
|
|
61
76
|
});
|
|
62
77
|
this.deps = {
|
|
63
78
|
aptos: new Aptos(aptosConfig),
|
|
64
79
|
ws: new DecibelWsSubscription(config, opts?.nodeApiKey, opts?.onWsError),
|
|
65
80
|
config: this.config,
|
|
66
|
-
apiKey: opts?.nodeApiKey,
|
|
81
|
+
apiKey: config.additionalHeaders ? undefined : opts?.nodeApiKey,
|
|
67
82
|
};
|
|
68
83
|
this.cache = {};
|
|
69
84
|
this.accountOverview = new AccountOverviewReader(this.deps);
|
|
@@ -85,10 +100,16 @@ export class DecibelReadDex {
|
|
|
85
100
|
this.candlesticks = new CandlesticksReader(this.deps);
|
|
86
101
|
this.portfolioChart = new PortfolioChartReader(this.deps);
|
|
87
102
|
this.leaderboard = new LeaderboardReader(this.deps);
|
|
103
|
+
this.pointsLeaderboard = new PointsLeaderboardReader(this.deps);
|
|
88
104
|
this.vaults = new VaultsReader(this.deps);
|
|
89
105
|
this.delegations = new DelegationsReader(this.deps);
|
|
90
106
|
this.userNotifications = new UserNotificationsReader(this.deps);
|
|
91
107
|
this.tradingPoints = new TradingPointsReader(this.deps);
|
|
108
|
+
this.streaks = new StreaksReader(this.deps);
|
|
109
|
+
this.tradingAmps = new TradingAmpsReader(this.deps);
|
|
110
|
+
this.tier = new TierReader(this.deps);
|
|
111
|
+
this.globalPointsStats = new GlobalPointsStatsReader(this.deps);
|
|
112
|
+
this.referrals = new ReferralsReader(this.deps);
|
|
92
113
|
}
|
|
93
114
|
async globalPerpEngineState() {
|
|
94
115
|
try {
|
|
@@ -1,23 +1,6 @@
|
|
|
1
1
|
import { BaseReader } from "../base-reader";
|
|
2
|
-
import { MarketDepth, MarketDepthAggregationSize
|
|
2
|
+
import { MarketDepth, MarketDepthAggregationSize } from "./market-depth.types";
|
|
3
3
|
export declare class MarketDepthReader extends BaseReader {
|
|
4
|
-
/**
|
|
5
|
-
* Get the market depth data for a given market
|
|
6
|
-
* @param marketName The name of the market to get market depth for
|
|
7
|
-
* @returns The market depth data for the given market
|
|
8
|
-
*/
|
|
9
|
-
getByName({ marketName, limit, fetchOptions }: MarketDepthRequestArgs): Promise<{
|
|
10
|
-
market: string;
|
|
11
|
-
bids: {
|
|
12
|
-
price: number;
|
|
13
|
-
size: number;
|
|
14
|
-
}[];
|
|
15
|
-
asks: {
|
|
16
|
-
price: number;
|
|
17
|
-
size: number;
|
|
18
|
-
}[];
|
|
19
|
-
unix_ms: number;
|
|
20
|
-
}>;
|
|
21
4
|
/**
|
|
22
5
|
* Subscribe to market depth updates for a given market ID
|
|
23
6
|
* @param marketName The name of the market to subscribe to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-depth.reader.d.ts","sourceRoot":"","sources":["../../../src/read/market-depth/market-depth.reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"market-depth.reader.d.ts","sourceRoot":"","sources":["../../../src/read/market-depth/market-depth.reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAqB,MAAM,sBAAsB,CAAC;AAElG,qBAAa,iBAAkB,SAAQ,UAAU;IAmB/C;;;;;OAKG;IACH,eAAe,CACb,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,0BAA0B,EAC3C,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI;IAQrC,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,GAAE,0BAA8B;IAO3F,mBAAmB;CAGpB"}
|
|
@@ -1,26 +1,24 @@
|
|
|
1
1
|
import { getMarketAddr } from "../../utils";
|
|
2
2
|
import { BaseReader } from "../base-reader";
|
|
3
|
-
import { MarketDepthSchema
|
|
3
|
+
import { MarketDepthSchema } from "./market-depth.types";
|
|
4
4
|
export class MarketDepthReader extends BaseReader {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
return response.data;
|
|
23
|
-
}
|
|
5
|
+
// TODO: either reintroduce the /depth endpoint or fully delete this method
|
|
6
|
+
// async getByName({ marketName, limit, fetchOptions }: MarketDepthRequestArgs) {
|
|
7
|
+
// const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
|
|
8
|
+
// const queryParams = new URLSearchParams({ market: marketAddr.toString() });
|
|
9
|
+
// if (limit !== undefined) {
|
|
10
|
+
// queryParams.set("limit", limit.toString());
|
|
11
|
+
// }
|
|
12
|
+
//
|
|
13
|
+
// const response = await this.getRequest({
|
|
14
|
+
// schema: MarketDepthSchema,
|
|
15
|
+
// url: `${this.deps.config.tradingHttpUrl}/api/v1/depth`,
|
|
16
|
+
// queryParams,
|
|
17
|
+
// options: fetchOptions,
|
|
18
|
+
// });
|
|
19
|
+
//
|
|
20
|
+
// return response.data;
|
|
21
|
+
// }
|
|
24
22
|
/**
|
|
25
23
|
* Subscribe to market depth updates for a given market ID
|
|
26
24
|
* @param marketName The name of the market to subscribe to
|
|
@@ -10,14 +10,16 @@ export declare const MarketOrderSchema: z.ZodObject<{
|
|
|
10
10
|
}, z.core.$strip>;
|
|
11
11
|
export declare const MarketDepthSchema: z.ZodObject<{
|
|
12
12
|
market: z.ZodString;
|
|
13
|
-
|
|
13
|
+
asks: z.ZodArray<z.ZodObject<{
|
|
14
14
|
price: z.ZodNumber;
|
|
15
15
|
size: z.ZodNumber;
|
|
16
16
|
}, z.core.$strip>>;
|
|
17
|
-
|
|
17
|
+
bids: z.ZodArray<z.ZodObject<{
|
|
18
18
|
price: z.ZodNumber;
|
|
19
19
|
size: z.ZodNumber;
|
|
20
20
|
}, z.core.$strip>>;
|
|
21
|
+
best_ask: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
22
|
+
best_bid: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
21
23
|
unix_ms: z.ZodNumber;
|
|
22
24
|
}, z.core.$strip>;
|
|
23
25
|
export type MarketDepthAggregationSize = 1 | 2 | 5 | 10 | 100 | 1000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-depth.types.d.ts","sourceRoot":"","sources":["../../../src/read/market-depth/market-depth.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"market-depth.types.d.ts","sourceRoot":"","sources":["../../../src/read/market-depth/market-depth.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;iBAO5B,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -5,7 +5,9 @@ export const MarketOrderSchema = z.object({
|
|
|
5
5
|
});
|
|
6
6
|
export const MarketDepthSchema = z.object({
|
|
7
7
|
market: z.string(),
|
|
8
|
-
bids: z.array(MarketOrderSchema),
|
|
9
8
|
asks: z.array(MarketOrderSchema),
|
|
9
|
+
bids: z.array(MarketOrderSchema),
|
|
10
|
+
best_ask: z.number().nullable().optional(),
|
|
11
|
+
best_bid: z.number().nullable().optional(),
|
|
10
12
|
unix_ms: z.number(),
|
|
11
13
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-trades.reader.d.ts","sourceRoot":"","sources":["../../../src/read/market-trades/market-trades.reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAEL,uBAAuB,EACvB,oBAAoB,EAErB,MAAM,uBAAuB,CAAC;AAE/B,qBAAa,kBAAmB,SAAQ,UAAU;IAChD;;;;;OAKG;IACG,SAAS,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,uBAAuB
|
|
1
|
+
{"version":3,"file":"market-trades.reader.d.ts","sourceRoot":"","sources":["../../../src/read/market-trades/market-trades.reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAEL,uBAAuB,EACvB,oBAAoB,EAErB,MAAM,uBAAuB,CAAC;AAE/B,qBAAa,kBAAmB,SAAQ,UAAU;IAChD;;;;;OAKG;IACG,SAAS,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,uBAAuB;;;;;;;;;;;;;;IAiB5E;;;;;OAKG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI;CAMjF"}
|
|
@@ -12,7 +12,6 @@ export declare const MarketTradeSchema: z.ZodObject<{
|
|
|
12
12
|
price: z.ZodNumber;
|
|
13
13
|
is_profit: z.ZodBoolean;
|
|
14
14
|
realized_pnl_amount: z.ZodNumber;
|
|
15
|
-
is_funding_positive: z.ZodBoolean;
|
|
16
15
|
realized_funding_amount: z.ZodNumber;
|
|
17
16
|
is_rebate: z.ZodBoolean;
|
|
18
17
|
fee_amount: z.ZodNumber;
|
|
@@ -28,7 +27,6 @@ export declare const MarketTradesHistorySchema: z.ZodObject<{
|
|
|
28
27
|
price: z.ZodNumber;
|
|
29
28
|
is_profit: z.ZodBoolean;
|
|
30
29
|
realized_pnl_amount: z.ZodNumber;
|
|
31
|
-
is_funding_positive: z.ZodBoolean;
|
|
32
30
|
realized_funding_amount: z.ZodNumber;
|
|
33
31
|
is_rebate: z.ZodBoolean;
|
|
34
32
|
fee_amount: z.ZodNumber;
|
|
@@ -46,7 +44,6 @@ export declare const MarketTradeWsMessageSchema: z.ZodObject<{
|
|
|
46
44
|
price: z.ZodNumber;
|
|
47
45
|
is_profit: z.ZodBoolean;
|
|
48
46
|
realized_pnl_amount: z.ZodNumber;
|
|
49
|
-
is_funding_positive: z.ZodBoolean;
|
|
50
47
|
realized_funding_amount: z.ZodNumber;
|
|
51
48
|
is_rebate: z.ZodBoolean;
|
|
52
49
|
fee_amount: z.ZodNumber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-trades.types.d.ts","sourceRoot":"","sources":["../../../src/read/market-trades/market-trades.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"market-trades.types.d.ts","sourceRoot":"","sources":["../../../src/read/market-trades/market-trades.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;iBAa5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;iBAGpC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;iBAErC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseReader } from "../base-reader";
|
|
2
|
+
import { PointsLeaderboardRequestArgs } from "./points-leaderboard.types";
|
|
3
|
+
export declare class PointsLeaderboardReader extends BaseReader {
|
|
4
|
+
/**
|
|
5
|
+
* Get the points leaderboard (Hz/Amps rankings)
|
|
6
|
+
* @param queryParams The query parameters for the points leaderboard
|
|
7
|
+
* @returns The points leaderboard
|
|
8
|
+
*/
|
|
9
|
+
getPointsLeaderboard({ fetchOptions, tier, ...args }: PointsLeaderboardRequestArgs): Promise<{
|
|
10
|
+
items: {
|
|
11
|
+
rank: number;
|
|
12
|
+
owner: string;
|
|
13
|
+
total_amps: number;
|
|
14
|
+
realized_pnl: number;
|
|
15
|
+
referral_amps: number;
|
|
16
|
+
vault_amps: number;
|
|
17
|
+
}[];
|
|
18
|
+
total_count: number;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=points-leaderboard.reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"points-leaderboard.reader.d.ts","sourceRoot":"","sources":["../../../src/read/points-leaderboard/points-leaderboard.reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,4BAA4B,EAA2B,MAAM,4BAA4B,CAAC;AAEnG,qBAAa,uBAAwB,SAAQ,UAAU;IACrD;;;;OAIG;IACG,oBAAoB,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,4BAA4B;;;;;;;;;;;CAezF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { constructKnownQueryParams } from "../../utils";
|
|
2
|
+
import { BaseReader } from "../base-reader";
|
|
3
|
+
import { PointsLeaderboardSchema } from "./points-leaderboard.types";
|
|
4
|
+
export class PointsLeaderboardReader extends BaseReader {
|
|
5
|
+
/**
|
|
6
|
+
* Get the points leaderboard (Hz/Amps rankings)
|
|
7
|
+
* @param queryParams The query parameters for the points leaderboard
|
|
8
|
+
* @returns The points leaderboard
|
|
9
|
+
*/
|
|
10
|
+
async getPointsLeaderboard({ fetchOptions, tier, ...args }) {
|
|
11
|
+
const queryParams = constructKnownQueryParams(args);
|
|
12
|
+
if (tier) {
|
|
13
|
+
queryParams.set("tier", tier);
|
|
14
|
+
}
|
|
15
|
+
const response = await this.getRequest({
|
|
16
|
+
schema: PointsLeaderboardSchema,
|
|
17
|
+
url: `${this.deps.config.tradingHttpUrl}/api/v1/points_leaderboard`,
|
|
18
|
+
queryParams,
|
|
19
|
+
options: fetchOptions,
|
|
20
|
+
});
|
|
21
|
+
return response.data;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
import { BaseRequestArgs } from "../base-reader";
|
|
3
|
+
import { PageParams, SearchTermParams, SortParams } from "../types";
|
|
4
|
+
export type PointsLeaderboardSortKey = "total_amps" | "realized_pnl";
|
|
5
|
+
export type PointsLeaderboardTierFilter = "top20" | "diamond" | "doublePlatinum" | "gold";
|
|
6
|
+
export interface PointsLeaderboardRequestArgs extends BaseRequestArgs, PageParams, SearchTermParams, SortParams<PointsLeaderboardSortKey> {
|
|
7
|
+
tier?: PointsLeaderboardTierFilter;
|
|
8
|
+
}
|
|
9
|
+
export declare const PointsLeaderboardItemSchema: z.ZodObject<{
|
|
10
|
+
rank: z.ZodNumber;
|
|
11
|
+
owner: z.ZodString;
|
|
12
|
+
total_amps: z.ZodNumber;
|
|
13
|
+
realized_pnl: z.ZodNumber;
|
|
14
|
+
referral_amps: z.ZodNumber;
|
|
15
|
+
vault_amps: z.ZodNumber;
|
|
16
|
+
}, z.core.$strip>;
|
|
17
|
+
export declare const PointsLeaderboardSchema: z.ZodObject<{
|
|
18
|
+
items: z.ZodArray<z.ZodObject<{
|
|
19
|
+
rank: z.ZodNumber;
|
|
20
|
+
owner: z.ZodString;
|
|
21
|
+
total_amps: z.ZodNumber;
|
|
22
|
+
realized_pnl: z.ZodNumber;
|
|
23
|
+
referral_amps: z.ZodNumber;
|
|
24
|
+
vault_amps: z.ZodNumber;
|
|
25
|
+
}, z.core.$strip>>;
|
|
26
|
+
total_count: z.ZodNumber;
|
|
27
|
+
}, z.core.$strip>;
|
|
28
|
+
export type PointsLeaderboardItem = z.infer<typeof PointsLeaderboardItemSchema>;
|
|
29
|
+
export type PointsLeaderboard = z.infer<typeof PointsLeaderboardSchema>;
|
|
30
|
+
//# sourceMappingURL=points-leaderboard.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"points-leaderboard.types.d.ts","sourceRoot":"","sources":["../../../src/read/points-leaderboard/points-leaderboard.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAA2B,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE7F,MAAM,MAAM,wBAAwB,GAAG,YAAY,GAAG,cAAc,CAAC;AAErE,MAAM,MAAM,2BAA2B,GAAG,OAAO,GAAG,SAAS,GAAG,gBAAgB,GAAG,MAAM,CAAC;AAE1F,MAAM,WAAW,4BACf,SAAQ,eAAe,EACrB,UAAU,EACV,gBAAgB,EAChB,UAAU,CAAC,wBAAwB,CAAC;IACtC,IAAI,CAAC,EAAE,2BAA2B,CAAC;CACpC;AAED,eAAO,MAAM,2BAA2B;;;;;;;iBAOtC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;iBAAuD,CAAC;AAE5F,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
import { PaginatedResponseSchema } from "../types";
|
|
3
|
+
export const PointsLeaderboardItemSchema = z.object({
|
|
4
|
+
rank: z.number(),
|
|
5
|
+
owner: z.string(),
|
|
6
|
+
total_amps: z.number(),
|
|
7
|
+
realized_pnl: z.number(),
|
|
8
|
+
referral_amps: z.number(),
|
|
9
|
+
vault_amps: z.number(),
|
|
10
|
+
});
|
|
11
|
+
export const PointsLeaderboardSchema = PaginatedResponseSchema(PointsLeaderboardItemSchema);
|
|
@@ -14,7 +14,7 @@ export declare const PortfolioChartSchema: z.ZodArray<z.ZodObject<{
|
|
|
14
14
|
data_points: z.ZodNumber;
|
|
15
15
|
}, z.core.$strip>>;
|
|
16
16
|
export type PortfolioChartType = "pnl" | "account_value";
|
|
17
|
-
export type PortfolioChartTimeRange = "24h" | "7d" | "30d" | "90d";
|
|
17
|
+
export type PortfolioChartTimeRange = "24h" | "7d" | "30d" | "90d" | "all";
|
|
18
18
|
export type PortfolioChartItem = z.infer<typeof PortfolioChartPnlItemSchema>;
|
|
19
19
|
export type PortfolioChart = z.infer<typeof PortfolioChartSchema>;
|
|
20
20
|
//# sourceMappingURL=portfolio-chart.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio-chart.types.d.ts","sourceRoot":"","sources":["../../../src/read/portfolio-chart/portfolio-chart.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;kBAAuC,CAAC;AAEzE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,eAAe,CAAC;AACzD,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"portfolio-chart.types.d.ts","sourceRoot":"","sources":["../../../src/read/portfolio-chart/portfolio-chart.types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;kBAAuC,CAAC;AAEzE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,eAAe,CAAC;AACzD,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAC3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC7E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|