@lifi/perps-sdk-provider-ondo 21.0.0 → 22.0.1

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.
Files changed (55) hide show
  1. package/README.md +16 -1
  2. package/dist/cjs/OndoProvider.d.ts.map +1 -1
  3. package/dist/cjs/OndoProvider.js +31 -7
  4. package/dist/cjs/OndoProvider.js.map +1 -1
  5. package/dist/cjs/utils/mapFill.d.ts.map +1 -1
  6. package/dist/cjs/utils/mapFill.js +4 -5
  7. package/dist/cjs/utils/mapFill.js.map +1 -1
  8. package/dist/cjs/utils/mapOrder.d.ts.map +1 -1
  9. package/dist/cjs/utils/mapOrder.js +8 -10
  10. package/dist/cjs/utils/mapOrder.js.map +1 -1
  11. package/dist/cjs/utils/mapPosition.d.ts.map +1 -1
  12. package/dist/cjs/utils/mapPosition.js +2 -5
  13. package/dist/cjs/utils/mapPosition.js.map +1 -1
  14. package/dist/cjs/utils/withdrawableBalances.d.ts.map +1 -1
  15. package/dist/cjs/utils/withdrawableBalances.js +1 -0
  16. package/dist/cjs/utils/withdrawableBalances.js.map +1 -1
  17. package/dist/cjs/websocket/OndoWsProvider.d.ts +6 -0
  18. package/dist/cjs/websocket/OndoWsProvider.d.ts.map +1 -1
  19. package/dist/cjs/websocket/OndoWsProvider.js +125 -33
  20. package/dist/cjs/websocket/OndoWsProvider.js.map +1 -1
  21. package/dist/esm/OndoProvider.d.ts.map +1 -1
  22. package/dist/esm/OndoProvider.js +31 -9
  23. package/dist/esm/OndoProvider.js.map +1 -1
  24. package/dist/esm/utils/mapFill.d.ts.map +1 -1
  25. package/dist/esm/utils/mapFill.js +4 -2
  26. package/dist/esm/utils/mapFill.js.map +1 -1
  27. package/dist/esm/utils/mapOrder.d.ts.map +1 -1
  28. package/dist/esm/utils/mapOrder.js +8 -7
  29. package/dist/esm/utils/mapOrder.js.map +1 -1
  30. package/dist/esm/utils/mapPosition.d.ts.map +1 -1
  31. package/dist/esm/utils/mapPosition.js +2 -2
  32. package/dist/esm/utils/mapPosition.js.map +1 -1
  33. package/dist/esm/utils/withdrawableBalances.d.ts +3 -2
  34. package/dist/esm/utils/withdrawableBalances.d.ts.map +1 -1
  35. package/dist/esm/utils/withdrawableBalances.js +4 -2
  36. package/dist/esm/utils/withdrawableBalances.js.map +1 -1
  37. package/dist/esm/websocket/OndoWsProvider.d.ts +8 -7
  38. package/dist/esm/websocket/OndoWsProvider.d.ts.map +1 -1
  39. package/dist/esm/websocket/OndoWsProvider.js +128 -45
  40. package/dist/esm/websocket/OndoWsProvider.js.map +1 -1
  41. package/dist/types/OndoProvider.d.ts.map +1 -1
  42. package/dist/types/utils/mapFill.d.ts.map +1 -1
  43. package/dist/types/utils/mapOrder.d.ts.map +1 -1
  44. package/dist/types/utils/mapPosition.d.ts.map +1 -1
  45. package/dist/types/utils/withdrawableBalances.d.ts +3 -2
  46. package/dist/types/utils/withdrawableBalances.d.ts.map +1 -1
  47. package/dist/types/websocket/OndoWsProvider.d.ts +8 -7
  48. package/dist/types/websocket/OndoWsProvider.d.ts.map +1 -1
  49. package/package.json +3 -3
  50. package/src/OndoProvider.ts +68 -14
  51. package/src/utils/mapFill.ts +4 -2
  52. package/src/utils/mapOrder.ts +8 -7
  53. package/src/utils/mapPosition.ts +2 -2
  54. package/src/utils/withdrawableBalances.ts +4 -2
  55. package/src/websocket/OndoWsProvider.ts +157 -47
@@ -1,6 +1,6 @@
1
1
  import { ACTIVE_ORDER_STATUSES, PerpsError, triggerConditionFor, } from '@lifi/perps-sdk';
2
2
  import { OrderSide, OrderStatus, OrderType, PerpsErrorCode, TimeInForce, } from '@lifi/perps-types';
3
- import Big from 'big.js';
3
+ import { toWireBig } from './decimal.js';
4
4
  /** Map supported Ondo lifecycle states; unsupported states fail explicitly. */
5
5
  export const mapOrderStatus = (status) => {
6
6
  switch (status) {
@@ -42,7 +42,10 @@ const mapTimeInForce = (tif) => {
42
42
  /** Map Ondo regular, trigger and TWAP rows to the shared order union. */
43
43
  export const mapOrder = (order, market, parentOrderId) => {
44
44
  const twap = 'twapId' in order;
45
- const filled = new Big(order.filledSize);
45
+ const filled = toWireBig(order.filledSize, 'filledSize');
46
+ const totalSize = twap
47
+ ? toWireBig(order.totalSize, 'totalSize')
48
+ : toWireBig(order.size, 'size');
46
49
  const status = twap
47
50
  ? twapStatus(order.orderStatus)
48
51
  : mapOrderStatus(order.status);
@@ -54,10 +57,8 @@ export const mapOrder = (order, market, parentOrderId) => {
54
57
  status: status === OrderStatus.OPEN && filled.gt(0)
55
58
  ? OrderStatus.PARTIALLY_FILLED
56
59
  : status,
57
- originalSize: new Big(twap ? order.totalSize : order.size).toFixed(),
58
- remainingSize: new Big(twap ? order.totalSize : order.size)
59
- .minus(filled)
60
- .toFixed(),
60
+ originalSize: totalSize.toFixed(),
61
+ remainingSize: totalSize.minus(filled).toFixed(),
61
62
  filledSize: order.filledSize,
62
63
  reduceOnly: order.reduceOnly ?? false,
63
64
  createdAt,
@@ -68,7 +69,7 @@ export const mapOrder = (order, market, parentOrderId) => {
68
69
  ? {
69
70
  averagePrice: twap
70
71
  ? order.avgFilledPrice
71
- : new Big(order.filledCost).div(filled).toFixed(),
72
+ : toWireBig(order.filledCost, 'filledCost').div(filled).toFixed(),
72
73
  }
73
74
  : {}),
74
75
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mapOrder.js","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapOrder.js","sourceRoot":"","sources":["../../../src/utils/mapOrder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mapPosition.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAGrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,YAAY,EACjB,QAAQ,kBAAkB,KACzB,QAaD,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,WAAW,YAAY,EAAE,EACzB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,kBAAkB,KACpD,QAAQ,EAK6C,CAAA"}
1
+ {"version":3,"file":"mapPosition.d.ts","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAGpD;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,YAAY,EACjB,QAAQ,kBAAkB,KACzB,QAaD,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,WAAW,YAAY,EAAE,EACzB,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,kBAAkB,KACpD,QAAQ,EAK6C,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { MarginMode, PositionSide } from '@lifi/perps-types';
2
- import Big from 'big.js';
2
+ import { toWireBig } from './decimal.js';
3
3
  /**
4
4
  * Map a raw Ondo position to the generic Position type. Ondo margin accounts
5
5
  * are cross-margined only.
@@ -10,7 +10,7 @@ import Big from 'big.js';
10
10
  export const mapPosition = (pos, market) => ({
11
11
  market,
12
12
  side: pos.direction === 'short' ? PositionSide.SHORT : PositionSide.LONG,
13
- size: new Big(pos.netQuantity).abs().toFixed(),
13
+ size: toWireBig(pos.netQuantity, 'netQuantity').abs().toFixed(),
14
14
  entryPrice: pos.averageEntryPrice,
15
15
  markPrice: pos.markPrice,
16
16
  liquidationPrice: pos.liquidationPrice,
@@ -1 +1 @@
1
- {"version":3,"file":"mapPosition.js","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,GAAG,MAAM,QAAQ,CAAA;AAGxB;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,GAAiB,EACjB,MAA0B,EAChB,EAAE,CAAC,CAAC;IACd,MAAM;IACN,IAAI,EAAE,GAAG,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI;IACxE,IAAI,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;IAC9C,UAAU,EAAE,GAAG,CAAC,iBAAiB;IACjC,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;IACtC,aAAa,EAAE,GAAG,CAAC,aAAa;IAChC,cAAc,EAAE,GAAG,CAAC,sBAAsB;IAC1C,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;IACzC,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,wBAAwB,EAAE,GAAG,CAAC,UAAU;IACxC,UAAU,EAAE,UAAU,CAAC,KAAK;CAC7B,CAAC,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,SAAyB,EACzB,aAAqD,EACzC,EAAE,CACd,SAAS;KACN,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3E;KACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"mapPosition.js","sourceRoot":"","sources":["../../../src/utils/mapPosition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,GAAiB,EACjB,MAA0B,EAChB,EAAE,CAAC,CAAC;IACd,MAAM;IACN,IAAI,EAAE,GAAG,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI;IACxE,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;IAC/D,UAAU,EAAE,GAAG,CAAC,iBAAiB;IACjC,SAAS,EAAE,GAAG,CAAC,SAAS;IACxB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;IACtC,aAAa,EAAE,GAAG,CAAC,aAAa;IAChC,cAAc,EAAE,GAAG,CAAC,sBAAsB;IAC1C,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;IACzC,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,wBAAwB,EAAE,GAAG,CAAC,UAAU;IACxC,UAAU,EAAE,UAAU,CAAC,KAAK;CAC7B,CAAC,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,SAAyB,EACzB,aAAqD,EACzC,EAAE,CACd,SAAS;KACN,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAC3E;KACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA"}
@@ -8,8 +8,9 @@ import type { OndoBalanceSummary } from '../types/wire.js';
8
8
  *
9
9
  * @param assetId - `Asset.id` the row is keyed by.
10
10
  * @param withdrawalFeeUsd - The account's `withdrawalFeeUSD`. Ondo collateral
11
- * is USDC, so the USD fee is the row fee 1:1 in collateral units. Absent
12
- * leaves the row without a fee.
11
+ * is USDC, so the USD fee is the row fee 1:1 in collateral units. Ondo
12
+ * charges it on top of the requested amount. Absent leaves the row without a
13
+ * fee.
13
14
  * @public
14
15
  */
15
16
  export declare const ondoWithdrawableBalances: (assetId: string, balance: OndoBalanceSummary, withdrawalFeeUsd?: string) => ProviderWithdrawableBalance[];
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawableBalances.d.ts","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAG1D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,SAAS,kBAAkB,EAC3B,mBAAmB,MAAM,KACxB,2BAA2B,EAuB7B,CAAA"}
1
+ {"version":3,"file":"withdrawableBalances.d.ts","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAG1D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,SAAS,kBAAkB,EAC3B,mBAAmB,MAAM,KACxB,2BAA2B,EAwB7B,CAAA"}
@@ -7,8 +7,9 @@ import { toWireBig } from './decimal.js';
7
7
  *
8
8
  * @param assetId - `Asset.id` the row is keyed by.
9
9
  * @param withdrawalFeeUsd - The account's `withdrawalFeeUSD`. Ondo collateral
10
- * is USDC, so the USD fee is the row fee 1:1 in collateral units. Absent
11
- * leaves the row without a fee.
10
+ * is USDC, so the USD fee is the row fee 1:1 in collateral units. Ondo
11
+ * charges it on top of the requested amount. Absent leaves the row without a
12
+ * fee.
12
13
  * @public
13
14
  */
14
15
  export const ondoWithdrawableBalances = (assetId, balance, withdrawalFeeUsd) => {
@@ -25,6 +26,7 @@ export const ondoWithdrawableBalances = (assetId, balance, withdrawalFeeUsd) =>
25
26
  ? {}
26
27
  : {
27
28
  withdrawalFee: toWireBig(withdrawalFeeUsd, 'account.withdrawalFeeUSD').toFixed(),
29
+ isFeeDeducted: false,
28
30
  }),
29
31
  },
30
32
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawableBalances.js","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAe,EACf,OAA2B,EAC3B,gBAAyB,EACM,EAAE;IACjC,MAAM,SAAS,GAAG,SAAS,CACzB,OAAO,CAAC,kBAAkB,EAC1B,4BAA4B,CAC7B,CAAA;IACD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO;QACL;YACE,OAAO;YACP,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,SAAS,CAAC,OAAO,EAAE;YAC9B,GAAG,CAAC,gBAAgB,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,aAAa,EAAE,SAAS,CACtB,gBAAgB,EAChB,0BAA0B,CAC3B,CAAC,OAAO,EAAE;iBACZ,CAAC;SACP;KACF,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"withdrawableBalances.js","sourceRoot":"","sources":["../../../src/utils/withdrawableBalances.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAe,EACf,OAA2B,EAC3B,gBAAyB,EACM,EAAE;IACjC,MAAM,SAAS,GAAG,SAAS,CACzB,OAAO,CAAC,kBAAkB,EAC1B,4BAA4B,CAC7B,CAAA;IACD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO;QACL;YACE,OAAO;YACP,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,SAAS,CAAC,OAAO,EAAE;YAC9B,GAAG,CAAC,gBAAgB,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,aAAa,EAAE,SAAS,CACtB,gBAAgB,EAChB,0BAA0B,CAC3B,CAAC,OAAO,EAAE;oBACX,aAAa,EAAE,KAAK;iBACrB,CAAC;SACP;KACF,CAAA;AACH,CAAC,CAAA"}
@@ -10,6 +10,7 @@ interface SubState {
10
10
  };
11
11
  needsAuth: boolean;
12
12
  address?: Address;
13
+ authGeneration?: number;
13
14
  }
14
15
  /**
15
16
  * Options for {@link ondoWsProvider} / {@link OndoWsProvider}.
@@ -52,6 +53,7 @@ export declare class OndoWsProvider extends WsProviderBase<SubState> {
52
53
  * positions frame, which is what moves them.
53
54
  */
54
55
  private accountSummary;
56
+ private accountSummaryGeneration;
55
57
  /**
56
58
  * Serializes the balance re-read: a single trade event emits a fills frame
57
59
  * and a positions frame together, and two concurrent REST reads can resolve
@@ -65,6 +67,9 @@ export declare class OndoWsProvider extends WsProviderBase<SubState> {
65
67
  /** The single address this connection's login is bound to. */
66
68
  private accountAddress;
67
69
  private loginPromise;
70
+ private authGeneration;
71
+ private authBindingRefs;
72
+ private closeGeneration;
68
73
  constructor(wsUrl?: string, providerKey?: string, options?: OndoWsProviderOptions, client?: PerpsSDKClient);
69
74
  subscribeQuote(params: ProviderGetQuoteParams, onQuote: QuoteListener): Promise<() => void>;
70
75
  protected toKey(sub: Subscription): string;
@@ -82,11 +87,7 @@ export declare class OndoWsProvider extends WsProviderBase<SubState> {
82
87
  * false — leaving the binding intact — while any is still live.
83
88
  */
84
89
  private releaseBindingIfIdle;
85
- /**
86
- * Forget the authenticated binding and cycle the connection. The venue
87
- * permits one login per socket, so a later subscribe for a different address
88
- * must authenticate on a fresh connection rather than re-login on this one.
89
- */
90
+ /** Release a channel's binding reservation, including one still opening. */
90
91
  private releaseBinding;
91
92
  /** Register a wire sub, ref-counting the shared authenticated channels. */
92
93
  private acquireWire;
@@ -118,6 +119,7 @@ export declare class OndoWsProvider extends WsProviderBase<SubState> {
118
119
  private seedAccountSummary;
119
120
  /** Re-read the venue balance moved by the frame and re-emit the summary. */
120
121
  private refreshAccountSummary;
122
+ private clearAccountSummary;
121
123
  private readBalance;
122
124
  /** Emit the current account summary from the venue balance figures. */
123
125
  private emitAccountSummary;
@@ -141,8 +143,7 @@ export declare class OndoWsProvider extends WsProviderBase<SubState> {
141
143
  *
142
144
  * Closes over the per-instance options (storage, apiUrl override) so
143
145
  * `PerpsWsClient` can call the returned factory with just
144
- * `({ provider, wsUrl, client })` at subscribe time. `markets` is unused —
145
- * Ondo advertises a single venue, no sub-DEX filtering.
146
+ * `({ provider, wsUrl, client })` at subscribe time.
146
147
  *
147
148
  * @public
148
149
  */
@@ -1 +1 @@
1
- {"version":3,"file":"OndoWsProvider.d.ts","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OndoWsProvider.d.ts","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,7 @@ export class OndoWsProvider extends WsProviderBase {
56
56
  * positions frame, which is what moves them.
57
57
  */
58
58
  accountSummary;
59
+ accountSummaryGeneration = 0;
59
60
  /**
60
61
  * Serializes the balance re-read: a single trade event emits a fills frame
61
62
  * and a positions frame together, and two concurrent REST reads can resolve
@@ -69,6 +70,9 @@ export class OndoWsProvider extends WsProviderBase {
69
70
  /** The single address this connection's login is bound to. */
70
71
  accountAddress;
71
72
  loginPromise;
73
+ authGeneration = 0;
74
+ authBindingRefs = 0;
75
+ closeGeneration = 0;
72
76
  constructor(wsUrl = DEFAULT_ONDO_WS_URL, providerKey = ONDO_PROVIDER_KEY, options = {}, client) {
73
77
  super(new ReconnectingWebSocket(wsUrl, { pingPayload: '{"op":"ping"}' }), providerKey);
74
78
  this.apiUrl = options.apiUrl ?? DEFAULT_ONDO_API_URL;
@@ -121,49 +125,95 @@ export class OndoWsProvider extends WsProviderBase {
121
125
  }
122
126
  const wireSubs = this.resolveChannel(sub);
123
127
  const needsLogin = isAuthChannel(sub.channel) || sub.channel === 'accountSummary';
124
- let boundHere = false;
128
+ const closeGeneration = this.closeGeneration;
129
+ let authGeneration;
125
130
  if (needsLogin) {
126
131
  const { address } = sub;
127
132
  // Reject before the address binds and before any wire sub registers: a
128
133
  // registered sub whose login can never succeed is retried on every
129
134
  // reopen without the caller ever seeing the failure.
130
135
  await this.requireSession(address);
136
+ if (closeGeneration !== this.closeGeneration) {
137
+ return () => { };
138
+ }
131
139
  const bound = address.toLowerCase();
132
- boundHere = this.accountAddress !== bound;
133
140
  this.bindAddress(bound);
141
+ authGeneration = this.authGeneration;
142
+ this.authBindingRefs += 1;
134
143
  }
144
+ const summaryGeneration = sub.channel === 'accountSummary'
145
+ ? this.accountSummaryGeneration
146
+ : undefined;
147
+ let acquiredWireCount = 0;
135
148
  try {
136
149
  if (needsLogin) {
137
150
  // Account frames carry venue market symbols; the registry supplies the
138
151
  // market identity the mapped orders/fills/positions embed.
139
152
  await this.registry?.sync();
140
153
  }
141
- if (sub.channel === 'accountSummary') {
142
- await this.seedAccountSummary(sub.address);
154
+ if (authGeneration !== undefined &&
155
+ authGeneration !== this.authGeneration) {
156
+ return () => { };
157
+ }
158
+ if (sub.channel === 'accountSummary' && summaryGeneration !== undefined) {
159
+ if (summaryGeneration !== this.accountSummaryGeneration) {
160
+ return () => { };
161
+ }
162
+ await this.seedAccountSummary(sub.address, summaryGeneration);
163
+ if (summaryGeneration !== this.accountSummaryGeneration) {
164
+ return () => { };
165
+ }
143
166
  }
144
167
  // Authenticated wire subs are shared and ref-counted; public ones are 1:1.
145
168
  for (const [key, state] of wireSubs) {
169
+ state.authGeneration = authGeneration;
146
170
  await this.acquireWire(key, state, needsLogin);
171
+ acquiredWireCount += 1;
172
+ if (authGeneration !== undefined &&
173
+ authGeneration !== this.authGeneration) {
174
+ return () => { };
175
+ }
147
176
  }
148
177
  await this.rws.ready();
178
+ if (authGeneration !== undefined &&
179
+ authGeneration !== this.authGeneration) {
180
+ return () => { };
181
+ }
149
182
  }
150
183
  catch (err) {
151
- // Registry sync, summary seed, or wire acquire failed after the address
152
- // bound: release a binding this call newly reserved so a later
153
- // subscribe can rebind. A `requireSession` throw never reaches here.
154
- if (boundHere) {
155
- this.accountAddress = undefined;
184
+ // A failed opening releases only its own binding reservation.
185
+ if (authGeneration === undefined ||
186
+ authGeneration === this.authGeneration) {
187
+ if (summaryGeneration !== undefined) {
188
+ this.clearAccountSummary();
189
+ }
190
+ for (let index = 0; index < acquiredWireCount; index += 1) {
191
+ const [key, state] = wireSubs[index];
192
+ this.releaseWire(key, state, needsLogin);
193
+ }
194
+ if (authGeneration !== undefined) {
195
+ this.releaseBinding();
196
+ }
156
197
  }
157
198
  throw err;
158
199
  }
159
200
  return () => {
160
- if (sub.channel === 'accountSummary') {
161
- this.accountSummary = undefined;
162
- this.accountSummaryChain.reset();
201
+ if (authGeneration !== undefined &&
202
+ authGeneration !== this.authGeneration) {
203
+ return;
204
+ }
205
+ if (summaryGeneration !== undefined) {
206
+ if (summaryGeneration !== this.accountSummaryGeneration) {
207
+ return;
208
+ }
209
+ this.clearAccountSummary();
163
210
  }
164
211
  for (const [key, state] of wireSubs) {
165
212
  this.releaseWire(key, state, needsLogin);
166
213
  }
214
+ if (authGeneration !== undefined) {
215
+ this.releaseBinding();
216
+ }
167
217
  };
168
218
  }
169
219
  /**
@@ -198,14 +248,15 @@ export class OndoWsProvider extends WsProviderBase {
198
248
  }
199
249
  return true;
200
250
  }
201
- /**
202
- * Forget the authenticated binding and cycle the connection. The venue
203
- * permits one login per socket, so a later subscribe for a different address
204
- * must authenticate on a fresh connection rather than re-login on this one.
205
- */
251
+ /** Release a channel's binding reservation, including one still opening. */
206
252
  releaseBinding() {
253
+ this.authBindingRefs -= 1;
254
+ if (this.authBindingRefs > 0) {
255
+ return;
256
+ }
207
257
  this.accountAddress = undefined;
208
258
  this.loginPromise = undefined;
259
+ this.authGeneration += 1;
209
260
  this.rws.reconnect();
210
261
  }
211
262
  /** Register a wire sub, ref-counting the shared authenticated channels. */
@@ -222,7 +273,9 @@ export class OndoWsProvider extends WsProviderBase {
222
273
  }
223
274
  catch (err) {
224
275
  // Roll back the ref we just took so a later subscribe re-registers.
225
- this.authWireRefs.delete(key);
276
+ if (state.authGeneration === this.authGeneration) {
277
+ this.authWireRefs.delete(key);
278
+ }
226
279
  throw err;
227
280
  }
228
281
  }
@@ -230,6 +283,9 @@ export class OndoWsProvider extends WsProviderBase {
230
283
  /** Mirror of {@link acquireWire}: drop the wire sub on its last release. */
231
284
  releaseWire(key, state, shared) {
232
285
  if (shared) {
286
+ if (state.authGeneration !== this.authGeneration) {
287
+ return;
288
+ }
233
289
  const remaining = (this.authWireRefs.get(key) ?? 1) - 1;
234
290
  if (remaining > 0) {
235
291
  this.authWireRefs.set(key, remaining);
@@ -239,18 +295,21 @@ export class OndoWsProvider extends WsProviderBase {
239
295
  }
240
296
  this.unregisterSub(key);
241
297
  this.rws.send(JSON.stringify({ op: 'unsubscribe', ...state.frame }));
242
- // Last authenticated wire gone: forget the binding and cycle the socket so
243
- // the next address logs in on a fresh connection.
244
- if (shared && this.authWireRefs.size === 0) {
245
- this.releaseBinding();
246
- }
247
298
  }
248
299
  async sendSubscribe(state) {
249
300
  if (state.needsAuth && state.address !== undefined) {
301
+ if (state.authGeneration !== this.authGeneration) {
302
+ return;
303
+ }
250
304
  // Re-assert the binding: a replay after a reconnect (which cleared it on
251
305
  // close) must restore the address account frames emit under.
252
306
  this.accountAddress = state.address.toLowerCase();
253
- await this.ensureLogin(state.address);
307
+ const login = this.ensureLogin(state.address);
308
+ await login;
309
+ if (this.loginPromise !== login ||
310
+ state.authGeneration !== this.authGeneration) {
311
+ return;
312
+ }
254
313
  }
255
314
  this.rws.send(JSON.stringify({ op: 'subscribe', ...state.frame }));
256
315
  }
@@ -259,6 +318,11 @@ export class OndoWsProvider extends WsProviderBase {
259
318
  this.pendingFunding.clear();
260
319
  this.loginPromise = undefined;
261
320
  this.accountAddress = undefined;
321
+ this.authGeneration += 1;
322
+ this.closeGeneration += 1;
323
+ this.authWireRefs.clear();
324
+ this.authBindingRefs = 0;
325
+ this.clearAccountSummary();
262
326
  }
263
327
  /** Wire subs for `sub`, keyed uniquely for the base's replay registry. */
264
328
  resolveChannel(sub) {
@@ -385,12 +449,16 @@ export class OndoWsProvider extends WsProviderBase {
385
449
  */
386
450
  ensureLogin(address) {
387
451
  if (this.loginPromise === undefined) {
388
- this.loginPromise = (async () => {
389
- const token = await this.requireSession(address);
390
- this.rws.send(JSON.stringify({ op: 'login', args: { token: token.token } }));
391
- })();
392
- this.loginPromise.catch(() => {
393
- this.loginPromise = undefined;
452
+ const login = this.requireSession(address).then((token) => {
453
+ if (this.loginPromise === login) {
454
+ this.rws.send(JSON.stringify({ op: 'login', args: { token: token.token } }));
455
+ }
456
+ });
457
+ this.loginPromise = login;
458
+ login.catch(() => {
459
+ if (this.loginPromise === login) {
460
+ this.loginPromise = undefined;
461
+ }
394
462
  });
395
463
  }
396
464
  return this.loginPromise;
@@ -406,23 +474,38 @@ export class OndoWsProvider extends WsProviderBase {
406
474
  * OndoSessionExpiredError} when the SIWE session is missing, matching the
407
475
  * other authenticated channels.
408
476
  */
409
- async seedAccountSummary(address) {
477
+ async seedAccountSummary(address, generation) {
410
478
  const token = await this.requireSession(address);
411
- this.accountSummary = await this.readBalance(token.token);
412
- this.emitAccountSummary();
479
+ if (generation !== this.accountSummaryGeneration) {
480
+ return;
481
+ }
482
+ const balance = await this.readBalance(token.token);
483
+ if (generation !== this.accountSummaryGeneration) {
484
+ return;
485
+ }
486
+ this.accountSummary = balance;
487
+ this.emitAccountSummary(address);
413
488
  }
414
489
  /** Re-read the venue balance moved by the frame and re-emit the summary. */
415
- async refreshAccountSummary(address) {
490
+ async refreshAccountSummary(address, generation) {
416
491
  const token = await this.tokenStore.get(address);
417
- if (token === null || this.accountSummary === undefined) {
492
+ if (token === null ||
493
+ this.accountSummary === undefined ||
494
+ generation !== this.accountSummaryGeneration) {
418
495
  return;
419
496
  }
420
497
  const balance = await this.readBalance(token.token);
421
- if (this.accountSummary === undefined) {
498
+ if (this.accountSummary === undefined ||
499
+ generation !== this.accountSummaryGeneration) {
422
500
  return;
423
501
  }
424
502
  this.accountSummary = balance;
425
- this.emitAccountSummary();
503
+ this.emitAccountSummary(address);
504
+ }
505
+ clearAccountSummary() {
506
+ this.accountSummaryGeneration += 1;
507
+ this.accountSummary = undefined;
508
+ this.accountSummaryChain.reset();
426
509
  }
427
510
  async readBalance(authToken) {
428
511
  const balance = await this.restClient().get('/v1/perps/balance', { authToken });
@@ -436,13 +519,12 @@ export class OndoWsProvider extends WsProviderBase {
436
519
  };
437
520
  }
438
521
  /** Emit the current account summary from the venue balance figures. */
439
- emitAccountSummary() {
522
+ emitAccountSummary(address) {
440
523
  const balance = this.accountSummary;
441
- const address = this.accountAddress;
442
- if (balance === undefined || address === undefined) {
524
+ if (balance === undefined) {
443
525
  return;
444
526
  }
445
- this.emit(`accountSummary:${address}`, {
527
+ this.emit(`accountSummary:${address.toLowerCase()}`, {
446
528
  channel: 'accountSummary',
447
529
  data: {
448
530
  portfolioValue: balance.marginBalance,
@@ -645,7 +727,8 @@ export class OndoWsProvider extends WsProviderBase {
645
727
  }
646
728
  this.emit(`fills:${address}`, { channel: 'fills', data: mapped });
647
729
  if (this.accountSummary !== undefined) {
648
- this.accountSummaryChain.push(() => this.refreshAccountSummary(address));
730
+ const generation = this.accountSummaryGeneration;
731
+ this.accountSummaryChain.push(() => this.refreshAccountSummary(address, generation));
649
732
  }
650
733
  }
651
734
  handlePositions(positions) {
@@ -666,7 +749,8 @@ export class OndoWsProvider extends WsProviderBase {
666
749
  data: mapped,
667
750
  });
668
751
  if (this.accountSummary !== undefined) {
669
- this.accountSummaryChain.push(() => this.refreshAccountSummary(address));
752
+ const generation = this.accountSummaryGeneration;
753
+ this.accountSummaryChain.push(() => this.refreshAccountSummary(address, generation));
670
754
  }
671
755
  }
672
756
  }
@@ -676,8 +760,7 @@ export class OndoWsProvider extends WsProviderBase {
676
760
  *
677
761
  * Closes over the per-instance options (storage, apiUrl override) so
678
762
  * `PerpsWsClient` can call the returned factory with just
679
- * `({ provider, wsUrl, client })` at subscribe time. `markets` is unused —
680
- * Ondo advertises a single venue, no sub-DEX filtering.
763
+ * `({ provider, wsUrl, client })` at subscribe time.
681
764
  *
682
765
  * @public
683
766
  */
@@ -1 +1 @@
1
- {"version":3,"file":"OndoWsProvider.js","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OndoWsProvider.js","sourceRoot":"","sources":["../../../src/websocket/OndoWsProvider.ts"],"names":[],"mappings":"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"}