@lasersell/lasersell-sdk 0.2.2 → 0.3.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/README.md +20 -0
- package/dist/exitApi.d.ts +9 -1
- package/dist/exitApi.js +9 -0
- package/dist/exitApi.js.map +1 -1
- package/dist/stream/proto.d.ts +13 -1
- package/dist/stream/proto.js +21 -0
- package/dist/stream/proto.js.map +1 -1
- package/dist/stream/session.d.ts +9 -1
- package/dist/stream/session.js +22 -0
- package/dist/stream/session.js.map +1 -1
- package/package.json +1 -1
- package/src/exitApi.ts +19 -1
- package/src/stream/proto.ts +38 -0
- package/src/stream/session.ts +36 -1
package/README.md
CHANGED
|
@@ -139,6 +139,26 @@ await session.sender().updateWallets(["WALLET_1_PUBKEY", "WALLET_2_PUBKEY"]);
|
|
|
139
139
|
|
|
140
140
|
The server diffs the new list against the current set and registers/unregisters accordingly.
|
|
141
141
|
|
|
142
|
+
### Liquidity snapshots (Tier 1+)
|
|
143
|
+
|
|
144
|
+
Professional and Advanced tier subscribers receive real time [liquidity snapshots](https://docs.lasersell.io/api/stream/server-events#liquidity_snapshot) alongside PnL updates. Each snapshot contains slippage bands and a liquidity trend indicator. See the [full announcement](https://www.lasersell.io/blog/liquidity-snapshots-and-sdk-0-3). `StreamSession` caches the latest snapshot per position:
|
|
145
|
+
|
|
146
|
+
```ts
|
|
147
|
+
const bands = session.getSlippageBands(positionId);
|
|
148
|
+
const maxTokens = session.getMaxSellAtSlippage(positionId, 500); // 5% slippage
|
|
149
|
+
const trend = session.getLiquidityTrend(positionId); // "growing" | "stable" | "draining"
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Partial sell
|
|
153
|
+
|
|
154
|
+
Build a sell transaction for a subset of a position's tokens using the `PositionHandle` from any `StreamEvent`:
|
|
155
|
+
|
|
156
|
+
```ts
|
|
157
|
+
const response = await client.buildPartialSellTx(handle, amountTokens, 500, "SOL");
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Combine with slippage bands to sell the maximum amount within your desired price impact.
|
|
161
|
+
|
|
142
162
|
## RPC endpoint
|
|
143
163
|
|
|
144
164
|
The SDK ships with the Solana public mainnet-beta RPC as a default so you can get started immediately:
|
package/dist/exitApi.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type RetryPolicy } from "./retry.js";
|
|
2
2
|
import type { MarketContextMsg } from "./stream/proto.js";
|
|
3
|
+
import type { PositionHandle } from "./stream/session.js";
|
|
3
4
|
export declare const EXIT_API_BASE_URL = "https://api.lasersell.io";
|
|
4
5
|
export declare const LOCAL_EXIT_API_BASE_URL = "http://localhost:8080";
|
|
5
6
|
export declare const EXIT_API_DEFAULTS: {
|
|
@@ -36,7 +37,10 @@ export interface BuildSellTxRequest {
|
|
|
36
37
|
export interface BuildBuyTxRequest {
|
|
37
38
|
mint: string;
|
|
38
39
|
user_pubkey: string;
|
|
39
|
-
|
|
40
|
+
/** Buy amount in input-asset atomic units. Mutually exclusive with `amount`. */
|
|
41
|
+
amount_in_total?: number;
|
|
42
|
+
/** Human-readable buy amount (e.g. `0.1` for 0.1 SOL). Mutually exclusive with `amount_in_total`. */
|
|
43
|
+
amount?: number;
|
|
40
44
|
slippage_bps: number;
|
|
41
45
|
/** Input asset. Defaults to `"SOL"` when omitted. */
|
|
42
46
|
input?: BuyInput;
|
|
@@ -90,6 +94,10 @@ export declare class ExitApiClient {
|
|
|
90
94
|
withLocalMode(local: boolean): this;
|
|
91
95
|
withBaseUrl(baseUrl: string): this;
|
|
92
96
|
buildSellTx(request: BuildSellTxRequest): Promise<BuildTxResponse>;
|
|
97
|
+
buildPartialSellTx(handle: PositionHandle, amountTokens: number, opts: {
|
|
98
|
+
slippageBps: number;
|
|
99
|
+
output?: SellOutput;
|
|
100
|
+
}): Promise<BuildTxResponse>;
|
|
93
101
|
buildSellTxB64(request: BuildSellTxRequest): Promise<string>;
|
|
94
102
|
/**
|
|
95
103
|
* Builds an unsigned buy transaction.
|
package/dist/exitApi.js
CHANGED
|
@@ -93,6 +93,15 @@ export class ExitApiClient {
|
|
|
93
93
|
async buildSellTx(request) {
|
|
94
94
|
return await this.buildTx("/v1/sell", request);
|
|
95
95
|
}
|
|
96
|
+
async buildPartialSellTx(handle, amountTokens, opts) {
|
|
97
|
+
return await this.buildSellTx({
|
|
98
|
+
mint: handle.mint,
|
|
99
|
+
user_pubkey: handle.wallet_pubkey,
|
|
100
|
+
amount_tokens: amountTokens,
|
|
101
|
+
output: opts.output ?? "SOL",
|
|
102
|
+
slippage_bps: opts.slippageBps,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
96
105
|
async buildSellTxB64(request) {
|
|
97
106
|
const response = await this.buildSellTx(request);
|
|
98
107
|
return response.tx;
|
package/dist/exitApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exitApi.js","sourceRoot":"","sources":["../src/exitApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,UAAU,GAEX,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"exitApi.js","sourceRoot":"","sources":["../src/exitApi.ts"],"names":[],"mappings":"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"}
|
package/dist/stream/proto.d.ts
CHANGED
|
@@ -100,6 +100,18 @@ export interface PnlUpdateServerMessage {
|
|
|
100
100
|
proceeds_units: number;
|
|
101
101
|
server_time_ms: number;
|
|
102
102
|
}
|
|
103
|
+
export interface SlippageBandMsg {
|
|
104
|
+
slippage_bps: number;
|
|
105
|
+
max_tokens: number;
|
|
106
|
+
coverage_pct: number;
|
|
107
|
+
}
|
|
108
|
+
export interface LiquiditySnapshotServerMessage {
|
|
109
|
+
type: "liquidity_snapshot";
|
|
110
|
+
position_id: number;
|
|
111
|
+
bands: SlippageBandMsg[];
|
|
112
|
+
liquidity_trend: string;
|
|
113
|
+
server_time_ms: number;
|
|
114
|
+
}
|
|
103
115
|
export interface BalanceUpdateServerMessage {
|
|
104
116
|
type: "balance_update";
|
|
105
117
|
wallet_pubkey: string;
|
|
@@ -145,7 +157,7 @@ export interface ExitSignalWithTxServerMessage {
|
|
|
145
157
|
market_context?: MarketContextMsg;
|
|
146
158
|
unsigned_tx_b64: string;
|
|
147
159
|
}
|
|
148
|
-
export type ServerMessage = HelloOkServerMessage | PongServerMessage | ErrorServerMessage | PnlUpdateServerMessage | BalanceUpdateServerMessage | PositionOpenedServerMessage | PositionClosedServerMessage | ExitSignalWithTxServerMessage;
|
|
160
|
+
export type ServerMessage = HelloOkServerMessage | PongServerMessage | ErrorServerMessage | PnlUpdateServerMessage | LiquiditySnapshotServerMessage | BalanceUpdateServerMessage | PositionOpenedServerMessage | PositionClosedServerMessage | ExitSignalWithTxServerMessage;
|
|
149
161
|
export declare function clientMessageFromText(text: string): ClientMessage;
|
|
150
162
|
export declare function clientMessageFromUnknown(value: unknown): ClientMessage;
|
|
151
163
|
export declare function clientMessageToText(message: ClientMessage): string;
|
package/dist/stream/proto.js
CHANGED
|
@@ -106,6 +106,27 @@ export function serverMessageFromUnknown(value) {
|
|
|
106
106
|
server_time_ms: asNumber(obj.server_time_ms, "pnl_update.server_time_ms"),
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
|
+
case "liquidity_snapshot": {
|
|
110
|
+
const rawBands = obj.bands;
|
|
111
|
+
if (!Array.isArray(rawBands)) {
|
|
112
|
+
throw new Error("liquidity_snapshot.bands must be an array");
|
|
113
|
+
}
|
|
114
|
+
const bands = rawBands.map((item, idx) => {
|
|
115
|
+
const band = asRecord(item, `liquidity_snapshot.bands[${idx}]`);
|
|
116
|
+
return {
|
|
117
|
+
slippage_bps: asNumber(band.slippage_bps, `liquidity_snapshot.bands[${idx}].slippage_bps`),
|
|
118
|
+
max_tokens: asNumber(band.max_tokens, `liquidity_snapshot.bands[${idx}].max_tokens`),
|
|
119
|
+
coverage_pct: asNumber(band.coverage_pct, `liquidity_snapshot.bands[${idx}].coverage_pct`),
|
|
120
|
+
};
|
|
121
|
+
});
|
|
122
|
+
return {
|
|
123
|
+
type: "liquidity_snapshot",
|
|
124
|
+
position_id: asNumber(obj.position_id, "liquidity_snapshot.position_id"),
|
|
125
|
+
bands,
|
|
126
|
+
liquidity_trend: asString(obj.liquidity_trend, "liquidity_snapshot.liquidity_trend"),
|
|
127
|
+
server_time_ms: asNumber(obj.server_time_ms, "liquidity_snapshot.server_time_ms"),
|
|
128
|
+
};
|
|
129
|
+
}
|
|
109
130
|
case "balance_update": {
|
|
110
131
|
return {
|
|
111
132
|
type: "balance_update",
|
package/dist/stream/proto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proto.js","sourceRoot":"","sources":["../../src/stream/proto.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"proto.js","sourceRoot":"","sources":["../../src/stream/proto.ts"],"names":[],"mappings":"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"}
|
package/dist/stream/session.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type OptionalStrategyConfig, StreamClient, type StreamConfigure, type StreamConnection, type StreamSender } from "./client.js";
|
|
2
|
-
import type { ServerMessage, StrategyConfigMsg } from "./proto.js";
|
|
2
|
+
import type { ServerMessage, SlippageBandMsg, StrategyConfigMsg } from "./proto.js";
|
|
3
3
|
export interface PositionHandle {
|
|
4
4
|
position_id: number;
|
|
5
5
|
token_account: string;
|
|
@@ -28,6 +28,10 @@ export type StreamEvent = {
|
|
|
28
28
|
type: "pnl_update";
|
|
29
29
|
handle?: PositionHandle;
|
|
30
30
|
message: ServerMessage;
|
|
31
|
+
} | {
|
|
32
|
+
type: "liquidity_snapshot";
|
|
33
|
+
handle?: PositionHandle;
|
|
34
|
+
message: ServerMessage;
|
|
31
35
|
};
|
|
32
36
|
export declare class StreamSession {
|
|
33
37
|
private readonly connection;
|
|
@@ -36,6 +40,7 @@ export declare class StreamSession {
|
|
|
36
40
|
private deadlineTimeoutSec;
|
|
37
41
|
private readonly deadlineTimers;
|
|
38
42
|
private readonly openedAtMs;
|
|
43
|
+
private readonly liquidityCache;
|
|
39
44
|
private constructor();
|
|
40
45
|
static connect(client: StreamClient, configure: StreamConfigure): Promise<StreamSession>;
|
|
41
46
|
static fromConnection(connection: StreamConnection, strategy?: StrategyConfigMsg, deadlineTimeoutSec?: number): StreamSession;
|
|
@@ -47,6 +52,9 @@ export declare class StreamSession {
|
|
|
47
52
|
requestExitSignal(handle: PositionHandle, slippage_bps?: number): void;
|
|
48
53
|
updateStrategy(strategy: StrategyConfigMsg, deadlineTimeoutSec?: number): void;
|
|
49
54
|
updateStrategyOptional(strategy?: OptionalStrategyConfig, deadlineTimeoutSec?: number): void;
|
|
55
|
+
getSlippageBands(positionId: number): SlippageBandMsg[] | undefined;
|
|
56
|
+
getMaxSellAtSlippage(positionId: number, slippageBps: number): number | undefined;
|
|
57
|
+
getLiquidityTrend(positionId: number): string | undefined;
|
|
50
58
|
recv(): Promise<StreamEvent | null>;
|
|
51
59
|
private applyMessage;
|
|
52
60
|
private findPosition;
|
package/dist/stream/session.js
CHANGED
|
@@ -6,6 +6,7 @@ export class StreamSession {
|
|
|
6
6
|
deadlineTimeoutSec;
|
|
7
7
|
deadlineTimers = new Map();
|
|
8
8
|
openedAtMs = new Map();
|
|
9
|
+
liquidityCache = new Map();
|
|
9
10
|
constructor(connection, strategy, deadlineTimeoutSec) {
|
|
10
11
|
this.connection = connection;
|
|
11
12
|
this.strategy = { ...strategy };
|
|
@@ -50,6 +51,18 @@ export class StreamSession {
|
|
|
50
51
|
updateStrategyOptional(strategy = {}, deadlineTimeoutSec = this.deadlineTimeoutSec) {
|
|
51
52
|
this.updateStrategy(strategyConfigFromOptional(strategy), deadlineTimeoutSec);
|
|
52
53
|
}
|
|
54
|
+
getSlippageBands(positionId) {
|
|
55
|
+
return this.liquidityCache.get(positionId)?.bands;
|
|
56
|
+
}
|
|
57
|
+
getMaxSellAtSlippage(positionId, slippageBps) {
|
|
58
|
+
const bands = this.getSlippageBands(positionId);
|
|
59
|
+
if (bands === undefined)
|
|
60
|
+
return undefined;
|
|
61
|
+
return bands.find((b) => b.slippage_bps === slippageBps)?.max_tokens;
|
|
62
|
+
}
|
|
63
|
+
getLiquidityTrend(positionId) {
|
|
64
|
+
return this.liquidityCache.get(positionId)?.liquidity_trend;
|
|
65
|
+
}
|
|
53
66
|
async recv() {
|
|
54
67
|
const message = await this.connection.recv();
|
|
55
68
|
if (message === null) {
|
|
@@ -105,6 +118,15 @@ export class StreamSession {
|
|
|
105
118
|
message,
|
|
106
119
|
};
|
|
107
120
|
}
|
|
121
|
+
case "liquidity_snapshot": {
|
|
122
|
+
this.liquidityCache.set(message.position_id, message);
|
|
123
|
+
const handle = this.findPosition(message.position_id);
|
|
124
|
+
return {
|
|
125
|
+
type: "liquidity_snapshot",
|
|
126
|
+
handle: handle === undefined ? undefined : { ...handle },
|
|
127
|
+
message,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
108
130
|
default: {
|
|
109
131
|
return {
|
|
110
132
|
type: "message",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/stream/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/stream/session.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/exitApi.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
type RetryPolicy,
|
|
5
5
|
} from "./retry.js";
|
|
6
6
|
import type { MarketContextMsg } from "./stream/proto.js";
|
|
7
|
+
import type { PositionHandle } from "./stream/session.js";
|
|
7
8
|
|
|
8
9
|
const ERROR_BODY_SNIPPET_LEN = 220;
|
|
9
10
|
|
|
@@ -49,7 +50,10 @@ export interface BuildSellTxRequest {
|
|
|
49
50
|
export interface BuildBuyTxRequest {
|
|
50
51
|
mint: string;
|
|
51
52
|
user_pubkey: string;
|
|
52
|
-
|
|
53
|
+
/** Buy amount in input-asset atomic units. Mutually exclusive with `amount`. */
|
|
54
|
+
amount_in_total?: number;
|
|
55
|
+
/** Human-readable buy amount (e.g. `0.1` for 0.1 SOL). Mutually exclusive with `amount_in_total`. */
|
|
56
|
+
amount?: number;
|
|
53
57
|
slippage_bps: number;
|
|
54
58
|
/** Input asset. Defaults to `"SOL"` when omitted. */
|
|
55
59
|
input?: BuyInput;
|
|
@@ -215,6 +219,20 @@ export class ExitApiClient {
|
|
|
215
219
|
return await this.buildTx("/v1/sell", request);
|
|
216
220
|
}
|
|
217
221
|
|
|
222
|
+
async buildPartialSellTx(
|
|
223
|
+
handle: PositionHandle,
|
|
224
|
+
amountTokens: number,
|
|
225
|
+
opts: { slippageBps: number; output?: SellOutput },
|
|
226
|
+
): Promise<BuildTxResponse> {
|
|
227
|
+
return await this.buildSellTx({
|
|
228
|
+
mint: handle.mint,
|
|
229
|
+
user_pubkey: handle.wallet_pubkey,
|
|
230
|
+
amount_tokens: amountTokens,
|
|
231
|
+
output: opts.output ?? "SOL",
|
|
232
|
+
slippage_bps: opts.slippageBps,
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
|
|
218
236
|
async buildSellTxB64(request: BuildSellTxRequest): Promise<string> {
|
|
219
237
|
const response = await this.buildSellTx(request);
|
|
220
238
|
return response.tx;
|
package/src/stream/proto.ts
CHANGED
|
@@ -132,6 +132,20 @@ export interface PnlUpdateServerMessage {
|
|
|
132
132
|
server_time_ms: number;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
+
export interface SlippageBandMsg {
|
|
136
|
+
slippage_bps: number;
|
|
137
|
+
max_tokens: number;
|
|
138
|
+
coverage_pct: number;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export interface LiquiditySnapshotServerMessage {
|
|
142
|
+
type: "liquidity_snapshot";
|
|
143
|
+
position_id: number;
|
|
144
|
+
bands: SlippageBandMsg[];
|
|
145
|
+
liquidity_trend: string;
|
|
146
|
+
server_time_ms: number;
|
|
147
|
+
}
|
|
148
|
+
|
|
135
149
|
export interface BalanceUpdateServerMessage {
|
|
136
150
|
type: "balance_update";
|
|
137
151
|
wallet_pubkey: string;
|
|
@@ -186,6 +200,7 @@ export type ServerMessage =
|
|
|
186
200
|
| PongServerMessage
|
|
187
201
|
| ErrorServerMessage
|
|
188
202
|
| PnlUpdateServerMessage
|
|
203
|
+
| LiquiditySnapshotServerMessage
|
|
189
204
|
| BalanceUpdateServerMessage
|
|
190
205
|
| PositionOpenedServerMessage
|
|
191
206
|
| PositionClosedServerMessage
|
|
@@ -315,6 +330,29 @@ export function serverMessageFromUnknown(value: unknown): ServerMessage {
|
|
|
315
330
|
server_time_ms: asNumber(obj.server_time_ms, "pnl_update.server_time_ms"),
|
|
316
331
|
};
|
|
317
332
|
}
|
|
333
|
+
case "liquidity_snapshot": {
|
|
334
|
+
const rawBands = obj.bands;
|
|
335
|
+
if (!Array.isArray(rawBands)) {
|
|
336
|
+
throw new Error("liquidity_snapshot.bands must be an array");
|
|
337
|
+
}
|
|
338
|
+
const bands: SlippageBandMsg[] = rawBands.map(
|
|
339
|
+
(item: unknown, idx: number) => {
|
|
340
|
+
const band = asRecord(item, `liquidity_snapshot.bands[${idx}]`);
|
|
341
|
+
return {
|
|
342
|
+
slippage_bps: asNumber(band.slippage_bps, `liquidity_snapshot.bands[${idx}].slippage_bps`),
|
|
343
|
+
max_tokens: asNumber(band.max_tokens, `liquidity_snapshot.bands[${idx}].max_tokens`),
|
|
344
|
+
coverage_pct: asNumber(band.coverage_pct, `liquidity_snapshot.bands[${idx}].coverage_pct`),
|
|
345
|
+
};
|
|
346
|
+
},
|
|
347
|
+
);
|
|
348
|
+
return {
|
|
349
|
+
type: "liquidity_snapshot",
|
|
350
|
+
position_id: asNumber(obj.position_id, "liquidity_snapshot.position_id"),
|
|
351
|
+
bands,
|
|
352
|
+
liquidity_trend: asString(obj.liquidity_trend, "liquidity_snapshot.liquidity_trend"),
|
|
353
|
+
server_time_ms: asNumber(obj.server_time_ms, "liquidity_snapshot.server_time_ms"),
|
|
354
|
+
};
|
|
355
|
+
}
|
|
318
356
|
case "balance_update": {
|
|
319
357
|
return {
|
|
320
358
|
type: "balance_update",
|
package/src/stream/session.ts
CHANGED
|
@@ -8,7 +8,12 @@ import {
|
|
|
8
8
|
strategyConfigFromOptional,
|
|
9
9
|
validateStrategyAndDeadline,
|
|
10
10
|
} from "./client.js";
|
|
11
|
-
import type {
|
|
11
|
+
import type {
|
|
12
|
+
LiquiditySnapshotServerMessage,
|
|
13
|
+
ServerMessage,
|
|
14
|
+
SlippageBandMsg,
|
|
15
|
+
StrategyConfigMsg,
|
|
16
|
+
} from "./proto.js";
|
|
12
17
|
|
|
13
18
|
export interface PositionHandle {
|
|
14
19
|
position_id: number;
|
|
@@ -44,6 +49,11 @@ export type StreamEvent =
|
|
|
44
49
|
type: "pnl_update";
|
|
45
50
|
handle?: PositionHandle;
|
|
46
51
|
message: ServerMessage;
|
|
52
|
+
}
|
|
53
|
+
| {
|
|
54
|
+
type: "liquidity_snapshot";
|
|
55
|
+
handle?: PositionHandle;
|
|
56
|
+
message: ServerMessage;
|
|
47
57
|
};
|
|
48
58
|
|
|
49
59
|
export class StreamSession {
|
|
@@ -53,6 +63,7 @@ export class StreamSession {
|
|
|
53
63
|
private deadlineTimeoutSec: number;
|
|
54
64
|
private readonly deadlineTimers = new Map<string, ReturnType<typeof setTimeout>>();
|
|
55
65
|
private readonly openedAtMs = new Map<string, number>();
|
|
66
|
+
private readonly liquidityCache = new Map<number, LiquiditySnapshotServerMessage>();
|
|
56
67
|
|
|
57
68
|
private constructor(
|
|
58
69
|
connection: StreamConnection,
|
|
@@ -137,6 +148,20 @@ export class StreamSession {
|
|
|
137
148
|
);
|
|
138
149
|
}
|
|
139
150
|
|
|
151
|
+
getSlippageBands(positionId: number): SlippageBandMsg[] | undefined {
|
|
152
|
+
return this.liquidityCache.get(positionId)?.bands;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
getMaxSellAtSlippage(positionId: number, slippageBps: number): number | undefined {
|
|
156
|
+
const bands = this.getSlippageBands(positionId);
|
|
157
|
+
if (bands === undefined) return undefined;
|
|
158
|
+
return bands.find((b) => b.slippage_bps === slippageBps)?.max_tokens;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
getLiquidityTrend(positionId: number): string | undefined {
|
|
162
|
+
return this.liquidityCache.get(positionId)?.liquidity_trend;
|
|
163
|
+
}
|
|
164
|
+
|
|
140
165
|
async recv(): Promise<StreamEvent | null> {
|
|
141
166
|
const message = await this.connection.recv();
|
|
142
167
|
if (message === null) {
|
|
@@ -202,6 +227,16 @@ export class StreamSession {
|
|
|
202
227
|
message,
|
|
203
228
|
};
|
|
204
229
|
}
|
|
230
|
+
case "liquidity_snapshot": {
|
|
231
|
+
this.liquidityCache.set(message.position_id, message);
|
|
232
|
+
const handle = this.findPosition(message.position_id);
|
|
233
|
+
|
|
234
|
+
return {
|
|
235
|
+
type: "liquidity_snapshot",
|
|
236
|
+
handle: handle === undefined ? undefined : { ...handle },
|
|
237
|
+
message,
|
|
238
|
+
};
|
|
239
|
+
}
|
|
205
240
|
default: {
|
|
206
241
|
return {
|
|
207
242
|
type: "message",
|