@lightconexyz/lightcone-sdk 0.7.1 → 0.8.1-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/README.md +20 -0
  2. package/dist/auth/client.d.ts +3 -3
  3. package/dist/auth/client.d.ts.map +1 -1
  4. package/dist/auth/client.js +19 -38
  5. package/dist/auth/client.js.map +1 -1
  6. package/dist/auth/index.d.ts +95 -54
  7. package/dist/auth/index.d.ts.map +1 -1
  8. package/dist/auth/index.js +82 -7
  9. package/dist/auth/index.js.map +1 -1
  10. package/dist/client.d.ts +0 -2
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +0 -4
  13. package/dist/client.js.map +1 -1
  14. package/dist/domain/index.d.ts +0 -1
  15. package/dist/domain/index.d.ts.map +1 -1
  16. package/dist/domain/index.js +1 -2
  17. package/dist/domain/index.js.map +1 -1
  18. package/dist/domain/market/tokens.d.ts +2 -0
  19. package/dist/domain/market/tokens.d.ts.map +1 -1
  20. package/dist/domain/market/tokens.js +8 -0
  21. package/dist/domain/market/tokens.js.map +1 -1
  22. package/dist/domain/market/wire.d.ts +1 -0
  23. package/dist/domain/market/wire.d.ts.map +1 -1
  24. package/dist/domain/market/wire.js.map +1 -1
  25. package/dist/domain/metrics/client.d.ts +8 -2
  26. package/dist/domain/metrics/client.d.ts.map +1 -1
  27. package/dist/domain/metrics/client.js +48 -1
  28. package/dist/domain/metrics/client.js.map +1 -1
  29. package/dist/domain/metrics/wire.d.ts +107 -4
  30. package/dist/domain/metrics/wire.d.ts.map +1 -1
  31. package/dist/domain/metrics/wire.js.map +1 -1
  32. package/dist/domain/order/client.d.ts +2 -0
  33. package/dist/domain/order/client.d.ts.map +1 -1
  34. package/dist/domain/order/client.js.map +1 -1
  35. package/dist/domain/orderbook/aggregation.d.ts +50 -0
  36. package/dist/domain/orderbook/aggregation.d.ts.map +1 -0
  37. package/dist/domain/orderbook/aggregation.js +85 -0
  38. package/dist/domain/orderbook/aggregation.js.map +1 -0
  39. package/dist/domain/orderbook/client.d.ts +11 -1
  40. package/dist/domain/orderbook/client.d.ts.map +1 -1
  41. package/dist/domain/orderbook/client.js +24 -3
  42. package/dist/domain/orderbook/client.js.map +1 -1
  43. package/dist/domain/orderbook/index.d.ts +1 -0
  44. package/dist/domain/orderbook/index.d.ts.map +1 -1
  45. package/dist/domain/orderbook/index.js +1 -0
  46. package/dist/domain/orderbook/index.js.map +1 -1
  47. package/dist/domain/orderbook/state.d.ts +29 -31
  48. package/dist/domain/orderbook/state.d.ts.map +1 -1
  49. package/dist/domain/orderbook/state.js +20 -67
  50. package/dist/domain/orderbook/state.js.map +1 -1
  51. package/dist/domain/orderbook/wire.d.ts +32 -0
  52. package/dist/domain/orderbook/wire.d.ts.map +1 -1
  53. package/dist/domain/orderbook/wire.js.map +1 -1
  54. package/dist/env.d.ts +18 -3
  55. package/dist/env.d.ts.map +1 -1
  56. package/dist/env.js +28 -4
  57. package/dist/env.js.map +1 -1
  58. package/dist/http/client.d.ts +1 -4
  59. package/dist/http/client.d.ts.map +1 -1
  60. package/dist/http/client.js +56 -22
  61. package/dist/http/client.js.map +1 -1
  62. package/dist/index.d.ts +3 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +8 -1
  65. package/dist/index.js.map +1 -1
  66. package/dist/prelude.d.ts +9 -8
  67. package/dist/prelude.d.ts.map +1 -1
  68. package/dist/prelude.js +20 -4
  69. package/dist/prelude.js.map +1 -1
  70. package/dist/shared/fmt/index.d.ts +1 -0
  71. package/dist/shared/fmt/index.d.ts.map +1 -1
  72. package/dist/shared/fmt/index.js +2 -1
  73. package/dist/shared/fmt/index.js.map +1 -1
  74. package/dist/shared/fmt/str.d.ts +8 -0
  75. package/dist/shared/fmt/str.d.ts.map +1 -0
  76. package/dist/shared/fmt/str.js +17 -0
  77. package/dist/shared/fmt/str.js.map +1 -0
  78. package/dist/shared/index.d.ts +1 -1
  79. package/dist/shared/index.d.ts.map +1 -1
  80. package/dist/shared/index.js +11 -1
  81. package/dist/shared/index.js.map +1 -1
  82. package/dist/shared/rejection.d.ts.map +1 -1
  83. package/dist/shared/rejection.js +11 -0
  84. package/dist/shared/rejection.js.map +1 -1
  85. package/dist/shared/types.d.ts +41 -0
  86. package/dist/shared/types.d.ts.map +1 -1
  87. package/dist/shared/types.js +85 -1
  88. package/dist/shared/types.js.map +1 -1
  89. package/dist/ws/index.d.ts +25 -2
  90. package/dist/ws/index.d.ts.map +1 -1
  91. package/dist/ws/index.js +23 -2
  92. package/dist/ws/index.js.map +1 -1
  93. package/dist/ws/subscriptions.d.ts +12 -0
  94. package/dist/ws/subscriptions.d.ts.map +1 -1
  95. package/dist/ws/subscriptions.js +14 -4
  96. package/dist/ws/subscriptions.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/domain/admin/client.d.ts +0 -63
  99. package/dist/domain/admin/client.d.ts.map +0 -1
  100. package/dist/domain/admin/client.js +0 -234
  101. package/dist/domain/admin/client.js.map +0 -1
  102. package/dist/domain/admin/index.d.ts +0 -16
  103. package/dist/domain/admin/index.d.ts.map +0 -1
  104. package/dist/domain/admin/index.js +0 -19
  105. package/dist/domain/admin/index.js.map +0 -1
  106. package/dist/domain/admin/wire.d.ts +0 -450
  107. package/dist/domain/admin/wire.d.ts.map +0 -1
  108. package/dist/domain/admin/wire.js +0 -3
  109. package/dist/domain/admin/wire.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import type { OrderBookId, PubkeyStr } from "../../shared";
1
+ import type { OrderBookId, PubkeyStr, Resolution } from "../../shared";
2
2
  /**
3
3
  * One entry in `GET /api/metrics/orderbooks/tickers`. Same shape (BBO +
4
4
  * midpoint) as the WS `Ticker` stream, delivered in batch over REST.
@@ -39,6 +39,10 @@ export interface PlatformMetrics {
39
39
  taker_bid_ask_imbalance_7d_pct: string;
40
40
  taker_bid_ask_imbalance_30d_pct: string;
41
41
  taker_bid_ask_imbalance_total_pct: string;
42
+ open_interest_usd: string;
43
+ fees_24h_usd: string;
44
+ fees_7d_usd: string;
45
+ fees_30d_usd: string;
42
46
  unique_traders_24h: number;
43
47
  unique_traders_7d: number;
44
48
  unique_traders_30d: number;
@@ -298,6 +302,105 @@ export interface DepositTokenVolumeMetrics {
298
302
  export interface DepositTokensMetrics {
299
303
  deposit_tokens: DepositTokenVolumeMetrics[];
300
304
  }
305
+ export interface DepositTokenVolumeHistoryToken {
306
+ rank: number;
307
+ deposit_asset: PubkeyStr;
308
+ symbol?: string;
309
+ volume_total_usd: string;
310
+ }
311
+ export interface DepositTokenVolumeHistoryPointToken {
312
+ deposit_asset: PubkeyStr;
313
+ symbol?: string;
314
+ volume_usd: string;
315
+ }
316
+ export interface DepositTokenVolumeHistoryPoint {
317
+ /** Bucket start, Unix epoch milliseconds. */
318
+ bucket_start: number;
319
+ /** Calendar day label in `YYYY-MM-DD` format. */
320
+ bucket_start_date: string;
321
+ total_volume_usd: string;
322
+ cumulative_volume_usd: string;
323
+ deposit_token_volumes: DepositTokenVolumeHistoryPointToken[];
324
+ }
325
+ export interface DepositTokenVolumeHistory {
326
+ timestamp: number;
327
+ resolution: Resolution;
328
+ from: number;
329
+ to: number;
330
+ volume_total_usd: string;
331
+ total_days: number;
332
+ deposit_tokens: DepositTokenVolumeHistoryToken[];
333
+ points: DepositTokenVolumeHistoryPoint[];
334
+ }
335
+ /** Query for `GET /api/metrics/deposit-tokens/volume-history`. */
336
+ export interface DepositTokenVolumeHistoryQuery {
337
+ from?: number;
338
+ to?: number;
339
+ limit?: number;
340
+ }
341
+ export interface OpenInterestHistoryDepositAsset {
342
+ rank: number;
343
+ deposit_asset: PubkeyStr;
344
+ symbol?: string;
345
+ latest_open_interest_usd: string;
346
+ max_open_interest_usd: string;
347
+ }
348
+ export interface OpenInterestHistoryPointDepositAsset {
349
+ deposit_asset: PubkeyStr;
350
+ symbol?: string;
351
+ open_interest_usd: string;
352
+ }
353
+ export interface OpenInterestHistoryPoint {
354
+ /** Bucket start, Unix epoch milliseconds for the UTC day start. */
355
+ bucket_start: number;
356
+ /** UTC calendar day label in `YYYY-MM-DD` format. */
357
+ bucket_start_date: string;
358
+ total_open_interest_usd: string;
359
+ deposit_asset_open_interest: OpenInterestHistoryPointDepositAsset[];
360
+ }
361
+ export interface OpenInterestHistory {
362
+ timestamp: number;
363
+ resolution: Resolution;
364
+ from: number;
365
+ to: number;
366
+ latest_open_interest_usd: string;
367
+ total_days: number;
368
+ deposit_assets: OpenInterestHistoryDepositAsset[];
369
+ points: OpenInterestHistoryPoint[];
370
+ }
371
+ /** Query for `GET /api/metrics/open-interest/history`. */
372
+ export interface OpenInterestHistoryQuery {
373
+ from?: number;
374
+ to?: number;
375
+ limit?: number;
376
+ }
377
+ export type UniqueTradersHistoryScope = "platform" | "market" | "orderbook" | "category" | "outcome";
378
+ export interface UniqueTradersHistoryPoint {
379
+ /** Bucket start, Unix epoch milliseconds for the UTC day start. */
380
+ bucket_start: number;
381
+ /** UTC calendar day label in `YYYY-MM-DD` format. */
382
+ bucket_start_date: string;
383
+ unique_traders: number;
384
+ }
385
+ export interface UniqueTradersHistory {
386
+ timestamp: number;
387
+ resolution: Resolution;
388
+ scope: UniqueTradersHistoryScope;
389
+ scope_key: string;
390
+ from: number;
391
+ to: number;
392
+ latest_unique_traders: number;
393
+ total_days: number;
394
+ points: UniqueTradersHistoryPoint[];
395
+ }
396
+ /** Query for `GET /api/metrics/unique-traders/history`. */
397
+ export interface UniqueTradersHistoryQuery {
398
+ scope?: UniqueTradersHistoryScope;
399
+ scope_key?: string;
400
+ from?: number;
401
+ to?: number;
402
+ limit?: number;
403
+ }
301
404
  export interface LeaderboardEntry {
302
405
  rank: number;
303
406
  market_pubkey: PubkeyStr;
@@ -320,13 +423,13 @@ export interface HistoryPoint {
320
423
  export interface MetricsHistory {
321
424
  scope: string;
322
425
  scope_key: string;
323
- resolution: string;
426
+ resolution: Resolution;
324
427
  points: HistoryPoint[];
325
428
  }
326
429
  /** Query for `GET /api/metrics/history/{scope}/{scope_key}`. */
327
430
  export interface MetricsHistoryQuery {
328
- /** Defaults to `"1h"` on the backend. */
329
- resolution?: string;
431
+ /** Defaults to `Resolution.Hour1` on the backend. */
432
+ resolution?: Resolution;
330
433
  from?: number;
331
434
  to?: number;
332
435
  limit?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/metrics/wire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/metrics/wire.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/metrics/wire.ts"],"names":[],"mappings":"","sourcesContent":["import type { OrderBookId, PubkeyStr } from \"../../shared\";\n\n// Decimal-bearing fields arrive as strings from the backend.\n\n// ─── Platform ───────────────────────────────────────────────────────────────\n\n/**\n * One entry in `GET /api/metrics/orderbooks/tickers`. Same shape (BBO +\n * midpoint) as the WS `Ticker` stream, delivered in batch over REST.\n * Price fields are undefined when the orderbook has no liquidity yet.\n */\nexport interface OrderbookTickerEntry {\n orderbook_id: string;\n market_pubkey: string;\n outcome_index?: number;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: string;\n quote_deposit_asset: string;\n best_bid?: string;\n best_ask?: string;\n midpoint?: string;\n computed_at?: string;\n}\n\n/** Response of `GET /api/metrics/orderbooks/tickers`. */\nexport interface OrderbookTickersResponse {\n tickers: OrderbookTickerEntry[];\n}\n\n/** Response of `GET /api/metrics/platform`. */\nexport interface PlatformMetrics {\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n active_markets: number;\n active_orderbooks: number;\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n updated_at?: string;\n}\n\n// ─── Market (listing + detail) ──────────────────────────────────────────────\n\n/** Entry in `GET /api/metrics/markets`. */\nexport interface MarketVolumeMetrics {\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n}\n\n/** `GET /api/metrics/markets` envelope. */\nexport interface MarketsMetrics {\n markets: MarketVolumeMetrics[];\n total: number;\n}\n\nexport interface OutcomeVolumeMetrics {\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n volume_share_24h_pct: string;\n}\n\nexport interface MarketOrderbookVolumeMetrics {\n orderbook_id: OrderBookId;\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: PubkeyStr;\n base_deposit_symbol?: string;\n quote_deposit_asset: PubkeyStr;\n quote_deposit_symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n volume_24h_base: string;\n volume_7d_base: string;\n volume_30d_base: string;\n volume_total_base: string;\n volume_24h_quote: string;\n volume_7d_quote: string;\n volume_30d_quote: string;\n volume_total_quote: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_bid_volume_24h_base: string;\n taker_bid_volume_7d_base: string;\n taker_bid_volume_30d_base: string;\n taker_bid_volume_total_base: string;\n taker_bid_volume_24h_quote: string;\n taker_bid_volume_7d_quote: string;\n taker_bid_volume_30d_quote: string;\n taker_bid_volume_total_quote: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_ask_volume_24h_base: string;\n taker_ask_volume_7d_base: string;\n taker_ask_volume_30d_base: string;\n taker_ask_volume_total_base: string;\n taker_ask_volume_24h_quote: string;\n taker_ask_volume_7d_quote: string;\n taker_ask_volume_30d_quote: string;\n taker_ask_volume_total_quote: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n volume_share_24h_pct: string;\n}\n\n/** Response of `GET /api/metrics/markets/{market_pubkey}`. */\nexport interface MarketDetailMetrics {\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n outcome_volumes: OutcomeVolumeMetrics[];\n orderbook_volumes: MarketOrderbookVolumeMetrics[];\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n}\n\n// ─── Orderbook ──────────────────────────────────────────────────────────────\n\n/** Response of `GET /api/metrics/orderbooks/{orderbook_id}`. */\nexport interface OrderbookVolumeMetrics {\n orderbook_id: OrderBookId;\n market_pubkey: PubkeyStr;\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: PubkeyStr;\n base_deposit_symbol?: string;\n quote_deposit_asset: PubkeyStr;\n quote_deposit_symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n volume_24h_base: string;\n volume_7d_base: string;\n volume_30d_base: string;\n volume_total_base: string;\n volume_24h_quote: string;\n volume_7d_quote: string;\n volume_30d_quote: string;\n volume_total_quote: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_bid_volume_24h_base: string;\n taker_bid_volume_7d_base: string;\n taker_bid_volume_30d_base: string;\n taker_bid_volume_total_base: string;\n taker_bid_volume_24h_quote: string;\n taker_bid_volume_7d_quote: string;\n taker_bid_volume_30d_quote: string;\n taker_bid_volume_total_quote: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_ask_volume_24h_base: string;\n taker_ask_volume_7d_base: string;\n taker_ask_volume_30d_base: string;\n taker_ask_volume_total_base: string;\n taker_ask_volume_24h_quote: string;\n taker_ask_volume_7d_quote: string;\n taker_ask_volume_30d_quote: string;\n taker_ask_volume_total_quote: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n market_volume_share_24h_pct: string;\n}\n\n// ─── Category ───────────────────────────────────────────────────────────────\n\n/**\n * Entry in `GET /api/metrics/categories` and the single response of\n * `GET /api/metrics/categories/{category}`.\n */\nexport interface CategoryVolumeMetrics {\n category: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n platform_volume_share_24h_pct: string;\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n}\n\nexport interface CategoriesMetrics {\n categories: CategoryVolumeMetrics[];\n}\n\n// ─── Deposit tokens ─────────────────────────────────────────────────────────\n\nexport interface DepositTokenVolumeMetrics {\n deposit_asset: PubkeyStr;\n symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n volume_share_24h_pct: string;\n}\n\nexport interface DepositTokensMetrics {\n deposit_tokens: DepositTokenVolumeMetrics[];\n}\n\n// ─── Leaderboard ────────────────────────────────────────────────────────────\n\nexport interface LeaderboardEntry {\n rank: number;\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n}\n\nexport interface Leaderboard {\n entries: LeaderboardEntry[];\n period: string;\n}\n\n// ─── History ────────────────────────────────────────────────────────────────\n\nexport interface HistoryPoint {\n /** Bucket start, Unix epoch milliseconds. */\n bucket_start: number;\n volume_usd: string;\n}\n\nexport interface MetricsHistory {\n scope: string;\n scope_key: string;\n resolution: string;\n points: HistoryPoint[];\n}\n\n/** Query for `GET /api/metrics/history/{scope}/{scope_key}`. */\nexport interface MetricsHistoryQuery {\n /** Defaults to `\"1h\"` on the backend. */\n resolution?: string;\n from?: number;\n to?: number;\n limit?: number;\n}\n\n// ─── Per-user metrics ───────────────────────────────────────────────────────\n\n/**\n * Per-wallet trading + referral aggregates. Response shape of\n * `metrics().user()`, `metrics().userWithCookies()`, and\n * `metrics().userByWallet()`.\n */\nexport interface UserMetrics {\n wallet_address: PubkeyStr;\n total_outcomes_traded: number;\n /** USD volume as a stringified Decimal. */\n total_volume_usd: string;\n total_referrals_used: number;\n}\n"]}
1
+ {"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/metrics/wire.ts"],"names":[],"mappings":"","sourcesContent":["import type { OrderBookId, PubkeyStr, Resolution } from \"../../shared\";\n\n// Decimal-bearing fields arrive as strings from the backend.\n\n// ─── Platform ───────────────────────────────────────────────────────────────\n\n/**\n * One entry in `GET /api/metrics/orderbooks/tickers`. Same shape (BBO +\n * midpoint) as the WS `Ticker` stream, delivered in batch over REST.\n * Price fields are undefined when the orderbook has no liquidity yet.\n */\nexport interface OrderbookTickerEntry {\n orderbook_id: string;\n market_pubkey: string;\n outcome_index?: number;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: string;\n quote_deposit_asset: string;\n best_bid?: string;\n best_ask?: string;\n midpoint?: string;\n computed_at?: string;\n}\n\n/** Response of `GET /api/metrics/orderbooks/tickers`. */\nexport interface OrderbookTickersResponse {\n tickers: OrderbookTickerEntry[];\n}\n\n/** Response of `GET /api/metrics/platform`. */\nexport interface PlatformMetrics {\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n open_interest_usd: string;\n fees_24h_usd: string;\n fees_7d_usd: string;\n fees_30d_usd: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n active_markets: number;\n active_orderbooks: number;\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n updated_at?: string;\n}\n\n// ─── Market (listing + detail) ──────────────────────────────────────────────\n\n/** Entry in `GET /api/metrics/markets`. */\nexport interface MarketVolumeMetrics {\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n}\n\n/** `GET /api/metrics/markets` envelope. */\nexport interface MarketsMetrics {\n markets: MarketVolumeMetrics[];\n total: number;\n}\n\nexport interface OutcomeVolumeMetrics {\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n volume_share_24h_pct: string;\n}\n\nexport interface MarketOrderbookVolumeMetrics {\n orderbook_id: OrderBookId;\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: PubkeyStr;\n base_deposit_symbol?: string;\n quote_deposit_asset: PubkeyStr;\n quote_deposit_symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n volume_24h_base: string;\n volume_7d_base: string;\n volume_30d_base: string;\n volume_total_base: string;\n volume_24h_quote: string;\n volume_7d_quote: string;\n volume_30d_quote: string;\n volume_total_quote: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_bid_volume_24h_base: string;\n taker_bid_volume_7d_base: string;\n taker_bid_volume_30d_base: string;\n taker_bid_volume_total_base: string;\n taker_bid_volume_24h_quote: string;\n taker_bid_volume_7d_quote: string;\n taker_bid_volume_30d_quote: string;\n taker_bid_volume_total_quote: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_ask_volume_24h_base: string;\n taker_ask_volume_7d_base: string;\n taker_ask_volume_30d_base: string;\n taker_ask_volume_total_base: string;\n taker_ask_volume_24h_quote: string;\n taker_ask_volume_7d_quote: string;\n taker_ask_volume_30d_quote: string;\n taker_ask_volume_total_quote: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n volume_share_24h_pct: string;\n}\n\n/** Response of `GET /api/metrics/markets/{market_pubkey}`. */\nexport interface MarketDetailMetrics {\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n outcome_volumes: OutcomeVolumeMetrics[];\n orderbook_volumes: MarketOrderbookVolumeMetrics[];\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n}\n\n// ─── Orderbook ──────────────────────────────────────────────────────────────\n\n/** Response of `GET /api/metrics/orderbooks/{orderbook_id}`. */\nexport interface OrderbookVolumeMetrics {\n orderbook_id: OrderBookId;\n market_pubkey: PubkeyStr;\n outcome_index: number | null;\n outcome_name?: string;\n outcome_name_long?: string;\n base_deposit_asset: PubkeyStr;\n base_deposit_symbol?: string;\n quote_deposit_asset: PubkeyStr;\n quote_deposit_symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n volume_24h_base: string;\n volume_7d_base: string;\n volume_30d_base: string;\n volume_total_base: string;\n volume_24h_quote: string;\n volume_7d_quote: string;\n volume_30d_quote: string;\n volume_total_quote: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_bid_volume_24h_base: string;\n taker_bid_volume_7d_base: string;\n taker_bid_volume_30d_base: string;\n taker_bid_volume_total_base: string;\n taker_bid_volume_24h_quote: string;\n taker_bid_volume_7d_quote: string;\n taker_bid_volume_30d_quote: string;\n taker_bid_volume_total_quote: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_ask_volume_24h_base: string;\n taker_ask_volume_7d_base: string;\n taker_ask_volume_30d_base: string;\n taker_ask_volume_total_base: string;\n taker_ask_volume_24h_quote: string;\n taker_ask_volume_7d_quote: string;\n taker_ask_volume_30d_quote: string;\n taker_ask_volume_total_quote: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n market_volume_share_24h_pct: string;\n}\n\n// ─── Category ───────────────────────────────────────────────────────────────\n\n/**\n * Entry in `GET /api/metrics/categories` and the single response of\n * `GET /api/metrics/categories/{category}`.\n */\nexport interface CategoryVolumeMetrics {\n category: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n unique_traders_24h: number;\n unique_traders_7d: number;\n unique_traders_30d: number;\n platform_volume_share_24h_pct: string;\n deposit_token_volumes: DepositTokenVolumeMetrics[];\n}\n\nexport interface CategoriesMetrics {\n categories: CategoryVolumeMetrics[];\n}\n\n// ─── Deposit tokens ─────────────────────────────────────────────────────────\n\nexport interface DepositTokenVolumeMetrics {\n deposit_asset: PubkeyStr;\n symbol?: string;\n volume_24h_usd: string;\n volume_7d_usd: string;\n volume_30d_usd: string;\n volume_total_usd: string;\n taker_bid_volume_24h_usd: string;\n taker_bid_volume_7d_usd: string;\n taker_bid_volume_30d_usd: string;\n taker_bid_volume_total_usd: string;\n taker_ask_volume_24h_usd: string;\n taker_ask_volume_7d_usd: string;\n taker_ask_volume_30d_usd: string;\n taker_ask_volume_total_usd: string;\n taker_bid_ask_imbalance_24h_pct: string;\n taker_bid_ask_imbalance_7d_pct: string;\n taker_bid_ask_imbalance_30d_pct: string;\n taker_bid_ask_imbalance_total_pct: string;\n volume_share_24h_pct: string;\n}\n\nexport interface DepositTokensMetrics {\n deposit_tokens: DepositTokenVolumeMetrics[];\n}\n\nexport interface DepositTokenVolumeHistoryToken {\n rank: number;\n deposit_asset: PubkeyStr;\n symbol?: string;\n volume_total_usd: string;\n}\n\nexport interface DepositTokenVolumeHistoryPointToken {\n deposit_asset: PubkeyStr;\n symbol?: string;\n volume_usd: string;\n}\n\nexport interface DepositTokenVolumeHistoryPoint {\n /** Bucket start, Unix epoch milliseconds. */\n bucket_start: number;\n /** Calendar day label in `YYYY-MM-DD` format. */\n bucket_start_date: string;\n total_volume_usd: string;\n cumulative_volume_usd: string;\n deposit_token_volumes: DepositTokenVolumeHistoryPointToken[];\n}\n\nexport interface DepositTokenVolumeHistory {\n timestamp: number;\n resolution: Resolution;\n from: number;\n to: number;\n volume_total_usd: string;\n total_days: number;\n deposit_tokens: DepositTokenVolumeHistoryToken[];\n points: DepositTokenVolumeHistoryPoint[];\n}\n\n/** Query for `GET /api/metrics/deposit-tokens/volume-history`. */\nexport interface DepositTokenVolumeHistoryQuery {\n from?: number;\n to?: number;\n limit?: number;\n}\n\nexport interface OpenInterestHistoryDepositAsset {\n rank: number;\n deposit_asset: PubkeyStr;\n symbol?: string;\n latest_open_interest_usd: string;\n max_open_interest_usd: string;\n}\n\nexport interface OpenInterestHistoryPointDepositAsset {\n deposit_asset: PubkeyStr;\n symbol?: string;\n open_interest_usd: string;\n}\n\nexport interface OpenInterestHistoryPoint {\n /** Bucket start, Unix epoch milliseconds for the UTC day start. */\n bucket_start: number;\n /** UTC calendar day label in `YYYY-MM-DD` format. */\n bucket_start_date: string;\n total_open_interest_usd: string;\n deposit_asset_open_interest: OpenInterestHistoryPointDepositAsset[];\n}\n\nexport interface OpenInterestHistory {\n timestamp: number;\n resolution: Resolution;\n from: number;\n to: number;\n latest_open_interest_usd: string;\n total_days: number;\n deposit_assets: OpenInterestHistoryDepositAsset[];\n points: OpenInterestHistoryPoint[];\n}\n\n/** Query for `GET /api/metrics/open-interest/history`. */\nexport interface OpenInterestHistoryQuery {\n from?: number;\n to?: number;\n limit?: number;\n}\n\nexport type UniqueTradersHistoryScope =\n | \"platform\"\n | \"market\"\n | \"orderbook\"\n | \"category\"\n | \"outcome\";\n\nexport interface UniqueTradersHistoryPoint {\n /** Bucket start, Unix epoch milliseconds for the UTC day start. */\n bucket_start: number;\n /** UTC calendar day label in `YYYY-MM-DD` format. */\n bucket_start_date: string;\n unique_traders: number;\n}\n\nexport interface UniqueTradersHistory {\n timestamp: number;\n resolution: Resolution;\n scope: UniqueTradersHistoryScope;\n scope_key: string;\n from: number;\n to: number;\n latest_unique_traders: number;\n total_days: number;\n points: UniqueTradersHistoryPoint[];\n}\n\n/** Query for `GET /api/metrics/unique-traders/history`. */\nexport interface UniqueTradersHistoryQuery {\n scope?: UniqueTradersHistoryScope;\n scope_key?: string;\n from?: number;\n to?: number;\n limit?: number;\n}\n\n// ─── Leaderboard ────────────────────────────────────────────────────────────\n\nexport interface LeaderboardEntry {\n rank: number;\n market_pubkey: PubkeyStr;\n slug?: string;\n market_name?: string;\n category?: string;\n volume_24h_usd: string;\n category_volume_share_24h_pct: string;\n platform_volume_share_24h_pct: string;\n}\n\nexport interface Leaderboard {\n entries: LeaderboardEntry[];\n period: string;\n}\n\n// ─── History ────────────────────────────────────────────────────────────────\n\nexport interface HistoryPoint {\n /** Bucket start, Unix epoch milliseconds. */\n bucket_start: number;\n volume_usd: string;\n}\n\nexport interface MetricsHistory {\n scope: string;\n scope_key: string;\n resolution: Resolution;\n points: HistoryPoint[];\n}\n\n/** Query for `GET /api/metrics/history/{scope}/{scope_key}`. */\nexport interface MetricsHistoryQuery {\n /** Defaults to `Resolution.Hour1` on the backend. */\n resolution?: Resolution;\n from?: number;\n to?: number;\n limit?: number;\n}\n\n// ─── Per-user metrics ───────────────────────────────────────────────────────\n\n/**\n * Per-wallet trading + referral aggregates. Response shape of\n * `metrics().user()`, `metrics().userWithCookies()`, and\n * `metrics().userByWallet()`.\n */\nexport interface UserMetrics {\n wallet_address: PubkeyStr;\n total_outcomes_traded: number;\n /** USD volume as a stringified Decimal. */\n total_volume_usd: string;\n total_referrals_used: number;\n}\n"]}
@@ -34,8 +34,10 @@ export interface FillInfo {
34
34
  price: string;
35
35
  is_maker: boolean;
36
36
  }
37
+ export type SubmitOrderStatus = "accepted" | "partial_fill" | "filled";
37
38
  export interface SubmitOrderResponse {
38
39
  order_hash: string;
40
+ status: SubmitOrderStatus;
39
41
  remaining: string;
40
42
  filled: string;
41
43
  fills: FillInfo[];
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/domain/order/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/domain/order/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/domain/order/client.ts"],"names":[],"mappings":"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","sourcesContent":["import bs58 from \"bs58\";\nimport { Keypair, Transaction, type PublicKey, type TransactionInstruction } from \"@solana/web3.js\";\nimport type { ClientContext } from \"../../context\";\nimport { requireConnection, requireSigningStrategy } from \"../../context\";\nimport { SdkError } from \"../../error\";\nimport { ProgramSdkError } from \"../../program/error\";\nimport { RetryPolicy } from \"../../http\";\nimport { Privy } from \"../../privy\";\nimport { isUserCancellation } from \"../../shared/signing\";\nimport {\n buildCancelOrderIx,\n buildCloseOrderStatusIx,\n buildIncrementNonceIx,\n} from \"../../program/instructions\";\nimport {\n hashOrder as programHashOrder,\n signOrder as programSignOrder,\n signOrderFull,\n createBidOrder as programCreateBidOrder,\n createAskOrder as programCreateAskOrder,\n createSignedBidOrder as programCreateSignedBidOrder,\n createSignedAskOrder as programCreateSignedAskOrder,\n signCancelOrder,\n signCancelTriggerOrder,\n signCancelAll,\n cancelOrderMessage,\n cancelTriggerOrderMessage,\n cancelAllMessage,\n generateCancelAllSalt as programGenerateCancelAllSalt,\n} from \"../../program/orders\";\nimport {\n getOrderStatusPda,\n getUserNoncePda,\n} from \"../../program/pda\";\nimport {\n deserializeOrderStatus,\n deserializeUserNonce,\n} from \"../../program/accounts\";\nimport type {\n SignedOrder,\n CloseOrderStatusParams,\n BidOrderParams,\n AskOrderParams,\n OrderStatus as ProgramOrderStatus,\n} from \"../../program/types\";\nimport { asOrderBookId, asPubkeyStr, type OrderBookId, type PubkeyStr } from \"../../shared\";\nimport { LimitOrderEnvelope, TriggerOrderEnvelope } from \"../../program/envelope\";\nimport {\n normalizeUserOrdersPayload,\n type UserSnapshotBalance,\n type UserSnapshotOrder,\n type UserOrderFillsResponse,\n} from \"./wire\";\n\n// ─── Request types ───────────────────────────────────────────────────────────\n\nexport interface CancelBody {\n order_hash: string;\n maker: PubkeyStr;\n signature: string;\n}\n\nexport function cancelBodyFromBase58(\n orderHash: string,\n maker: PubkeyStr,\n signatureBase58: string\n): CancelBody {\n return {\n order_hash: orderHash,\n maker,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n };\n}\n\nexport function cancelBodySigned(\n orderHash: string,\n maker: PubkeyStr,\n keypair: Keypair\n): CancelBody {\n const signature = signCancelOrder(orderHash, keypair);\n return { order_hash: orderHash, maker, signature };\n}\n\nexport interface CancelAllBody {\n user_pubkey: PubkeyStr;\n orderbook_id: OrderBookId;\n signature: string;\n timestamp: number;\n salt: string;\n}\n\nexport function cancelAllBodyFromBase58(\n userPubkey: PubkeyStr,\n orderbookId: OrderBookId,\n timestamp: number,\n salt: string,\n signatureBase58: string\n): CancelAllBody {\n return {\n user_pubkey: userPubkey,\n orderbook_id: orderbookId,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n timestamp,\n salt,\n };\n}\n\nexport function cancelAllBodySigned(\n userPubkey: PubkeyStr,\n orderbookId: OrderBookId,\n timestamp: number,\n salt: string,\n keypair: Keypair\n): CancelAllBody {\n const signature = signCancelAll(userPubkey, orderbookId, timestamp, salt, keypair);\n return { user_pubkey: userPubkey, orderbook_id: orderbookId, signature, timestamp, salt };\n}\n\nexport interface CancelTriggerBody {\n trigger_order_id: string;\n maker: PubkeyStr;\n signature: string;\n}\n\nexport function cancelTriggerBodyFromBase58(\n triggerOrderId: string,\n maker: PubkeyStr,\n signatureBase58: string\n): CancelTriggerBody {\n return {\n trigger_order_id: triggerOrderId,\n maker,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n };\n}\n\nexport function cancelTriggerBodySigned(\n triggerOrderId: string,\n maker: PubkeyStr,\n keypair: Keypair\n): CancelTriggerBody {\n const signature = signCancelTriggerOrder(triggerOrderId, keypair);\n return { trigger_order_id: triggerOrderId, maker, signature };\n}\n\n// ─── Response types ──────────────────────────────────────────────────────────\n\nexport interface FillInfo {\n counterparty: PubkeyStr;\n counterparty_order_hash: string;\n fill_amount: string;\n price: string;\n is_maker: boolean;\n}\n\nexport interface SubmitOrderResponse {\n order_hash: string;\n remaining: string;\n filled: string;\n fills: FillInfo[];\n}\n\nexport interface CancelSuccess {\n order_hash: string;\n remaining: string;\n}\n\nexport interface CancelAllSuccess {\n cancelled_order_hashes: string[];\n count: number;\n user_pubkey: PubkeyStr;\n orderbook_id: OrderBookId;\n message: string;\n}\n\nexport interface TriggerOrderResponse {\n trigger_order_id: string;\n order_hash: string;\n}\n\nexport interface CancelTriggerSuccess {\n trigger_order_id: string;\n}\n\nexport interface UserOrdersResponse {\n user_pubkey: PubkeyStr;\n orders: UserSnapshotOrder[];\n balances: UserSnapshotBalance[];\n next_cursor?: string;\n has_more: boolean;\n}\n\n// ─── Sub-client ──────────────────────────────────────────────────────────────\n\nexport class Orders {\n constructor(private readonly client: ClientContext) {}\n\n // ── PDA helpers ──────────────────────────────────────────────────────\n\n statusPda(orderHash: Buffer): PublicKey {\n return getOrderStatusPda(orderHash, this.client.programId)[0];\n }\n\n noncePda(user: PublicKey): PublicKey {\n return getUserNoncePda(user, this.client.programId)[0];\n }\n\n // ── Envelope factories ────────────────────────────────────────────────\n\n limitOrder(): LimitOrderEnvelope {\n return LimitOrderEnvelope.new().depositSource(this.client.depositSource);\n }\n\n triggerOrder(): TriggerOrderEnvelope {\n return TriggerOrderEnvelope.new().depositSource(this.client.depositSource);\n }\n\n // ── Helpers ──────────────────────────────────────────────────────────\n\n generateCancelAllSalt(): string {\n return programGenerateCancelAllSalt();\n }\n\n // ── HTTP methods ─────────────────────────────────────────────────────\n\n async submit(request: object): Promise<SubmitOrderResponse> {\n const url = `${this.client.http.baseUrl()}/api/orders/submit`;\n return this.client.http.post<SubmitOrderResponse, object>(url, request, RetryPolicy.None);\n }\n\n async cancel(body: CancelBody): Promise<CancelSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel`;\n return this.client.http.post<CancelSuccess, CancelBody>(url, body, RetryPolicy.None);\n }\n\n async cancelAll(body: CancelAllBody): Promise<CancelAllSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel-all`;\n return this.client.http.post<CancelAllSuccess, CancelAllBody>(\n url,\n body,\n RetryPolicy.None\n );\n }\n\n async submitTrigger(request: object): Promise<TriggerOrderResponse> {\n const url = `${this.client.http.baseUrl()}/api/orders/submit`;\n return this.client.http.post<TriggerOrderResponse, object>(\n url,\n request,\n RetryPolicy.None\n );\n }\n\n async cancelTrigger(body: CancelTriggerBody): Promise<CancelTriggerSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel`;\n return this.client.http.post<CancelTriggerSuccess, CancelTriggerBody>(\n url,\n body,\n RetryPolicy.None\n );\n }\n\n /**\n * Fetch the authenticated user's open orders. Wallet is resolved\n * server-side from the auth cookie, so no parameter is required.\n */\n async getUserOrders(\n limit?: number,\n cursor?: string\n ): Promise<UserOrdersResponse> {\n const url = buildUserOrdersAuthenticatedUrl(this.client.http.baseUrl(), limit, cursor);\n const response = await this.client.http.get<UserOrdersRawResponse>(url, RetryPolicy.Idempotent);\n return normalizeUserOrdersPayload(response);\n }\n\n /**\n * Same as {@link getUserOrders}, but uses the supplied `cookieHeader` for\n * this call instead of the SDK's process-wide cookie store. For\n * server-side cookie forwarding (SSR / route handlers).\n */\n async getUserOrdersWithCookies(\n limit: number | undefined,\n cursor: string | undefined,\n cookieHeader: string,\n ): Promise<UserOrdersResponse> {\n const url = buildUserOrdersAuthenticatedUrl(this.client.http.baseUrl(), limit, cursor);\n const response = await this.client.http.getWithCookies<UserOrdersRawResponse>(\n url,\n RetryPolicy.Idempotent,\n cookieHeader,\n );\n return normalizeUserOrdersPayload(response);\n }\n\n /**\n * Fetch the authenticated user's filled orders with nested fill events.\n * Wallet is resolved server-side from the auth cookie.\n */\n async getUserOrderFills(\n marketPubkey?: string,\n limit?: number,\n cursor?: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsAuthenticatedUrl(\n this.client.http.baseUrl(),\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.get<UserOrderFillsResponse>(url, RetryPolicy.Idempotent);\n }\n\n /**\n * Same as {@link getUserOrderFills}, but uses the supplied `cookieHeader`\n * for this call instead of the SDK's process-wide cookie store. For\n * server-side cookie forwarding (SSR / route handlers).\n */\n async getUserOrderFillsWithCookies(\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n cookieHeader: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsAuthenticatedUrl(\n this.client.http.baseUrl(),\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.getWithCookies<UserOrderFillsResponse>(\n url,\n RetryPolicy.Idempotent,\n cookieHeader,\n );\n }\n\n /**\n * Public variant of {@link getUserOrderFills}. Takes the user's wallet\n * via the URL path (`GET /api/users/{wallet}/order-fills`) and requires\n * no auth.\n */\n async getUserOrderFillsByWallet(\n walletAddress: string,\n marketPubkey?: string,\n limit?: number,\n cursor?: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsByWalletUrl(\n this.client.http.baseUrl(),\n walletAddress,\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.get<UserOrderFillsResponse>(url, RetryPolicy.Idempotent);\n }\n\n // ── Unified cancel (dispatches based on client signing strategy) ────\n\n async cancelOrderSigned(\n orderHash: string,\n maker: PubkeyStr\n ): Promise<CancelSuccess> {\n const strategy = requireSigningStrategy(this.client);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelBodySigned(orderHash, maker, strategy.keypair);\n return this.cancel(body);\n }\n case \"walletAdapter\": {\n const message = cancelOrderMessage(orderHash);\n const sigBytes = await strategy.signer\n .signMessage(message)\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelBodyFromBase58(orderHash, maker, sigBs58);\n return this.cancel(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelOrder(\n strategy.walletId,\n orderHash,\n maker as string\n );\n return {\n order_hash: result.order_hash,\n remaining: result.remaining,\n };\n }\n }\n }\n\n async cancelAllSigned(\n userPubkey: PubkeyStr,\n timestamp: number,\n salt: string,\n orderbookId?: OrderBookId\n ): Promise<CancelAllSuccess> {\n const strategy = requireSigningStrategy(this.client);\n const resolvedOrderbookId = orderbookId ?? (\"\" as OrderBookId);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelAllBodySigned(\n userPubkey,\n resolvedOrderbookId,\n timestamp,\n salt,\n strategy.keypair\n );\n return this.cancelAll(body);\n }\n case \"walletAdapter\": {\n const message = cancelAllMessage(\n userPubkey as string,\n resolvedOrderbookId as string,\n timestamp,\n salt\n );\n const sigBytes = await strategy.signer\n .signMessage(new TextEncoder().encode(message))\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelAllBodyFromBase58(\n userPubkey,\n resolvedOrderbookId,\n timestamp,\n salt,\n sigBs58\n );\n return this.cancelAll(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelAllOrders(\n strategy.walletId,\n userPubkey as string,\n resolvedOrderbookId as string,\n timestamp,\n salt\n );\n return {\n cancelled_order_hashes: result.cancelled_order_hashes,\n count: result.count,\n user_pubkey: asPubkeyStr(result.user_pubkey),\n orderbook_id: asOrderBookId(result.orderbook_id),\n message: result.message,\n };\n }\n }\n }\n\n async cancelTriggerSigned(\n triggerOrderId: string,\n maker: PubkeyStr\n ): Promise<CancelTriggerSuccess> {\n const strategy = requireSigningStrategy(this.client);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelTriggerBodySigned(triggerOrderId, maker, strategy.keypair);\n return this.cancelTrigger(body);\n }\n case \"walletAdapter\": {\n const message = cancelTriggerOrderMessage(triggerOrderId);\n const sigBytes = await strategy.signer\n .signMessage(message)\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelTriggerBodyFromBase58(triggerOrderId, maker, sigBs58);\n return this.cancelTrigger(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelTriggerOrder(\n strategy.walletId,\n triggerOrderId,\n maker as string\n );\n return { trigger_order_id: result.trigger_order_id };\n }\n }\n }\n\n // ── On-chain transaction builders ────────────────────────────────────\n\n cancelOrderIx(\n operator: PublicKey,\n market: PublicKey,\n order: SignedOrder\n ): TransactionInstruction {\n return buildCancelOrderIx(operator, market, order, this.client.programId);\n }\n\n incrementNonceIx(user: PublicKey): TransactionInstruction {\n return buildIncrementNonceIx(user, this.client.programId);\n }\n\n closeOrderStatusIx(params: CloseOrderStatusParams): TransactionInstruction {\n return buildCloseOrderStatusIx(params, this.client.programId);\n }\n\n // ── Transaction builders (_tx convenience wrappers) ─────────────────\n\n cancelOrderTx(\n operator: PublicKey,\n market: PublicKey,\n order: SignedOrder\n ): Transaction {\n const ix = this.cancelOrderIx(operator, market, order);\n return new Transaction({ feePayer: operator }).add(ix);\n }\n\n incrementNonceTx(user: PublicKey): Transaction {\n const ix = this.incrementNonceIx(user);\n return new Transaction({ feePayer: user }).add(ix);\n }\n\n closeOrderStatusTx(params: CloseOrderStatusParams): Transaction {\n const ix = this.closeOrderStatusIx(params);\n return new Transaction({ feePayer: params.operator }).add(ix);\n }\n\n // ── Order helpers ────────────────────────────────────────────────────\n\n createBidOrder(params: BidOrderParams): Omit<SignedOrder, \"signature\"> {\n return programCreateBidOrder(params);\n }\n\n createAskOrder(params: AskOrderParams): Omit<SignedOrder, \"signature\"> {\n return programCreateAskOrder(params);\n }\n\n createSignedBidOrder(params: BidOrderParams, signer: Keypair): SignedOrder {\n return programCreateSignedBidOrder(params, signer);\n }\n\n createSignedAskOrder(params: AskOrderParams, signer: Keypair): SignedOrder {\n return programCreateSignedAskOrder(params, signer);\n }\n\n hashOrder(order: SignedOrder): Buffer {\n return programHashOrder(order);\n }\n\n signOrder(order: SignedOrder, signer: Keypair): Buffer {\n return programSignOrder(order, signer);\n }\n\n signFullOrder(\n order: Omit<SignedOrder, \"signature\">,\n signer: Keypair\n ): SignedOrder {\n return signOrderFull(order, signer);\n }\n\n // ── On-chain account fetchers (require Connection) ──────────────────\n\n async getStatus(orderHash: Buffer): Promise<ProgramOrderStatus | null> {\n const connection = requireConnection(this.client);\n const pda = this.statusPda(orderHash);\n const accountInfo = await connection.getAccountInfo(pda);\n if (!accountInfo) {\n return null;\n }\n return deserializeOrderStatus(accountInfo.data as Buffer);\n }\n\n async getNonce(user: PublicKey): Promise<bigint> {\n const connection = requireConnection(this.client);\n const pda = this.noncePda(user);\n const accountInfo = await connection.getAccountInfo(pda);\n if (!accountInfo) {\n return 0n;\n }\n const userNonce = deserializeUserNonce(accountInfo.data as Buffer);\n return userNonce.nonce;\n }\n\n async currentNonce(user: PublicKey): Promise<number> {\n const nonce = await this.getNonce(user);\n if (nonce > 0xFFFFFFFFn) {\n throw ProgramSdkError.serialization(`Nonce exceeds u32 range: ${nonce}`);\n }\n return Number(nonce);\n }\n}\n\ninterface UserOrdersRawResponse {\n user_pubkey: PubkeyStr;\n orders?: UserSnapshotOrder[];\n balances?: UserSnapshotBalance[];\n next_cursor?: string | null;\n has_more?: boolean;\n}\n\nfunction buildUserOrdersAuthenticatedUrl(\n baseUrl: string,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n return qs.length === 0\n ? `${baseUrl}/api/users/orders`\n : `${baseUrl}/api/users/orders?${qs}`;\n}\n\nfunction buildUserOrderFillsAuthenticatedUrl(\n baseUrl: string,\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (marketPubkey) params.set(\"market_pubkey\", marketPubkey);\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n return qs.length === 0\n ? `${baseUrl}/api/users/order-fills`\n : `${baseUrl}/api/users/order-fills?${qs}`;\n}\n\nfunction buildUserOrderFillsByWalletUrl(\n baseUrl: string,\n walletAddress: string,\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (marketPubkey) params.set(\"market_pubkey\", marketPubkey);\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n const path = `${baseUrl}/api/users/${encodeURIComponent(walletAddress)}/order-fills`;\n return qs.length === 0 ? path : `${path}?${qs}`;\n}\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/domain/order/client.ts"],"names":[],"mappings":";;;;;;AA8DA,oDAUC;AAED,4CAOC;AAUD,0DAcC;AAED,kDASC;AAQD,kEAUC;AAED,0DAOC;AA/ID,gDAAwB;AACxB,6CAAoG;AAEpG,2CAA0E;AAC1E,uCAAuC;AACvC,+CAAsD;AACtD,qCAAyC;AACzC,uCAAoC;AACpC,kDAA0D;AAC1D,6DAIoC;AACpC,iDAe8B;AAC9B,2CAG2B;AAC3B,qDAGgC;AAQhC,yCAA4F;AAC5F,qDAAkF;AAClF,iCAKgB;AAUhB,SAAgB,oBAAoB,CAClC,SAAiB,EACjB,KAAgB,EAChB,eAAuB;IAEvB,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,KAAK;QACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,cAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAC9B,SAAiB,EACjB,KAAgB,EAChB,OAAgB;IAEhB,MAAM,SAAS,GAAG,IAAA,wBAAe,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACtD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AACrD,CAAC;AAUD,SAAgB,uBAAuB,CACrC,UAAqB,EACrB,WAAwB,EACxB,SAAiB,EACjB,IAAY,EACZ,eAAuB;IAEvB,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,YAAY,EAAE,WAAW;QACzB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,cAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpE,SAAS;QACT,IAAI;KACL,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CACjC,UAAqB,EACrB,WAAwB,EACxB,SAAiB,EACjB,IAAY,EACZ,OAAgB;IAEhB,MAAM,SAAS,GAAG,IAAA,sBAAa,EAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnF,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC5F,CAAC;AAQD,SAAgB,2BAA2B,CACzC,cAAsB,EACtB,KAAgB,EAChB,eAAuB;IAEvB,OAAO;QACL,gBAAgB,EAAE,cAAc;QAChC,KAAK;QACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,cAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,SAAgB,uBAAuB,CACrC,cAAsB,EACtB,KAAgB,EAChB,OAAgB;IAEhB,MAAM,SAAS,GAAG,IAAA,+BAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAClE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAChE,CAAC;AAoDD,gFAAgF;AAEhF,MAAa,MAAM;IACY;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,wEAAwE;IAExE,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAA,uBAAiB,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,QAAQ,CAAC,IAAe;QACtB,OAAO,IAAA,qBAAe,EAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,yEAAyE;IAEzE,UAAU;QACR,OAAO,6BAAkB,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC3E,CAAC;IAED,YAAY;QACV,OAAO,+BAAoB,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC7E,CAAC;IAED,wEAAwE;IAExE,qBAAqB;QACnB,OAAO,IAAA,8BAA4B,GAAE,CAAC;IACxC,CAAC;IAED,wEAAwE;IAExE,KAAK,CAAC,MAAM,CAAC,OAAe;QAC1B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAA8B,GAAG,EAAE,OAAO,EAAE,kBAAW,CAAC,IAAI,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAgB;QAC3B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAA4B,GAAG,EAAE,IAAI,EAAE,kBAAW,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAmB;QACjC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC;QAClE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,GAAG,EACH,IAAI,EACJ,kBAAW,CAAC,IAAI,CACjB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,GAAG,EACH,OAAO,EACP,kBAAW,CAAC,IAAI,CACjB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAuB;QACzC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,GAAG,EACH,IAAI,EACJ,kBAAW,CAAC,IAAI,CACjB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CACjB,KAAc,EACd,MAAe;QAEf,MAAM,GAAG,GAAG,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAwB,GAAG,EAAE,kBAAW,CAAC,UAAU,CAAC,CAAC;QAChG,OAAO,IAAA,iCAA0B,EAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,wBAAwB,CAC5B,KAAyB,EACzB,MAA0B,EAC1B,YAAoB;QAEpB,MAAM,GAAG,GAAG,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CACpD,GAAG,EACH,kBAAW,CAAC,UAAU,EACtB,YAAY,CACb,CAAC;QACF,OAAO,IAAA,iCAA0B,EAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CACrB,YAAqB,EACrB,KAAc,EACd,MAAe;QAEf,MAAM,GAAG,GAAG,mCAAmC,CAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAC1B,YAAY,EACZ,KAAK,EACL,MAAM,CACP,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAyB,GAAG,EAAE,kBAAW,CAAC,UAAU,CAAC,CAAC;IACnF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,4BAA4B,CAChC,YAAgC,EAChC,KAAyB,EACzB,MAA0B,EAC1B,YAAoB;QAEpB,MAAM,GAAG,GAAG,mCAAmC,CAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAC1B,YAAY,EACZ,KAAK,EACL,MAAM,CACP,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CACpC,GAAG,EACH,kBAAW,CAAC,UAAU,EACtB,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,yBAAyB,CAC7B,aAAqB,EACrB,YAAqB,EACrB,KAAc,EACd,MAAe;QAEf,MAAM,GAAG,GAAG,8BAA8B,CACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAC1B,aAAa,EACb,YAAY,EACZ,KAAK,EACL,MAAM,CACP,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAyB,GAAG,EAAE,kBAAW,CAAC,UAAU,CAAC,CAAC;IACnF,CAAC;IAED,uEAAuE;IAEvE,KAAK,CAAC,iBAAiB,CACrB,SAAiB,EACjB,KAAgB;QAEhB,MAAM,QAAQ,GAAG,IAAA,gCAAsB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAClE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,GAAG,IAAA,2BAAkB,EAAC,SAAS,CAAC,CAAC;gBAC9C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM;qBACnC,WAAW,CAAC,OAAO,CAAC;qBACpB,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC7D,IAAI,IAAA,4BAAkB,EAAC,GAAG,CAAC;wBAAE,MAAM,gBAAQ,CAAC,aAAa,EAAE,CAAC;oBAC5D,MAAM,gBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBACL,MAAM,OAAO,GAAG,cAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,oBAAoB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAC3C,QAAQ,CAAC,QAAQ,EACjB,SAAS,EACT,KAAe,CAChB,CAAC;gBACF,OAAO;oBACL,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,UAAqB,EACrB,SAAiB,EACjB,IAAY,EACZ,WAAyB;QAEzB,MAAM,QAAQ,GAAG,IAAA,gCAAsB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,mBAAmB,GAAG,WAAW,IAAK,EAAkB,CAAC;QAE/D,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,mBAAmB,CAC9B,UAAU,EACV,mBAAmB,EACnB,SAAS,EACT,IAAI,EACJ,QAAQ,CAAC,OAAO,CACjB,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YACD,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,GAAG,IAAA,yBAAgB,EAC9B,UAAoB,EACpB,mBAA6B,EAC7B,SAAS,EACT,IAAI,CACL,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM;qBACnC,WAAW,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;qBAC9C,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC7D,IAAI,IAAA,4BAAkB,EAAC,GAAG,CAAC;wBAAE,MAAM,gBAAQ,CAAC,aAAa,EAAE,CAAC;oBAC5D,MAAM,gBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBACL,MAAM,OAAO,GAAG,cAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,uBAAuB,CAClC,UAAU,EACV,mBAAmB,EACnB,SAAS,EACT,IAAI,EACJ,OAAO,CACR,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAC/C,QAAQ,CAAC,QAAQ,EACjB,UAAoB,EACpB,mBAA6B,EAC7B,SAAS,EACT,IAAI,CACL,CAAC;gBACF,OAAO;oBACL,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;oBACrD,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,IAAA,oBAAW,EAAC,MAAM,CAAC,WAAW,CAAC;oBAC5C,YAAY,EAAE,IAAA,sBAAa,EAAC,MAAM,CAAC,YAAY,CAAC;oBAChD,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,cAAsB,EACtB,KAAgB;QAEhB,MAAM,QAAQ,GAAG,IAAA,gCAAsB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,uBAAuB,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC9E,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,GAAG,IAAA,kCAAyB,EAAC,cAAc,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM;qBACnC,WAAW,CAAC,OAAO,CAAC;qBACpB,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC7D,IAAI,IAAA,4BAAkB,EAAC,GAAG,CAAC;wBAAE,MAAM,gBAAQ,CAAC,aAAa,EAAE,CAAC;oBAC5D,MAAM,gBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBACL,MAAM,OAAO,GAAG,cAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,2BAA2B,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzE,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,yBAAyB,CAClD,QAAQ,CAAC,QAAQ,EACjB,cAAc,EACd,KAAe,CAChB,CAAC;gBACF,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAED,wEAAwE;IAExE,aAAa,CACX,QAAmB,EACnB,MAAiB,EACjB,KAAkB;QAElB,OAAO,IAAA,iCAAkB,EAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED,gBAAgB,CAAC,IAAe;QAC9B,OAAO,IAAA,oCAAqB,EAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED,kBAAkB,CAAC,MAA8B;QAC/C,OAAO,IAAA,sCAAuB,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED,uEAAuE;IAEvE,aAAa,CACX,QAAmB,EACnB,MAAiB,EACjB,KAAkB;QAElB,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACvD,OAAO,IAAI,qBAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,gBAAgB,CAAC,IAAe;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,IAAI,qBAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,kBAAkB,CAAC,MAA8B;QAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,IAAI,qBAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,wEAAwE;IAExE,cAAc,CAAC,MAAsB;QACnC,OAAO,IAAA,uBAAqB,EAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,cAAc,CAAC,MAAsB;QACnC,OAAO,IAAA,uBAAqB,EAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,oBAAoB,CAAC,MAAsB,EAAE,MAAe;QAC1D,OAAO,IAAA,6BAA2B,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB,CAAC,MAAsB,EAAE,MAAe;QAC1D,OAAO,IAAA,6BAA2B,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,SAAS,CAAC,KAAkB;QAC1B,OAAO,IAAA,kBAAgB,EAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,CAAC,KAAkB,EAAE,MAAe;QAC3C,OAAO,IAAA,kBAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,aAAa,CACX,KAAqC,EACrC,MAAe;QAEf,OAAO,IAAA,sBAAa,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,uEAAuE;IAEvE,KAAK,CAAC,SAAS,CAAC,SAAiB;QAC/B,MAAM,UAAU,GAAG,IAAA,2BAAiB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAA,iCAAsB,EAAC,WAAW,CAAC,IAAc,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAe;QAC5B,MAAM,UAAU,GAAG,IAAA,2BAAiB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,SAAS,GAAG,IAAA,+BAAoB,EAAC,WAAW,CAAC,IAAc,CAAC,CAAC;QACnE,OAAO,SAAS,CAAC,KAAK,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAe;QAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,GAAG,WAAW,EAAE,CAAC;YACxB,MAAM,uBAAe,CAAC,aAAa,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACF;AAtZD,wBAsZC;AAUD,SAAS,+BAA+B,CACtC,OAAe,EACf,KAAyB,EACzB,MAA0B;IAE1B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,IAAI,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,OAAO,EAAE,CAAC,MAAM,KAAK,CAAC;QACpB,CAAC,CAAC,GAAG,OAAO,mBAAmB;QAC/B,CAAC,CAAC,GAAG,OAAO,qBAAqB,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,mCAAmC,CAC1C,OAAe,EACf,YAAgC,EAChC,KAAyB,EACzB,MAA0B;IAE1B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,IAAI,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,OAAO,EAAE,CAAC,MAAM,KAAK,CAAC;QACpB,CAAC,CAAC,GAAG,OAAO,wBAAwB;QACpC,CAAC,CAAC,GAAG,OAAO,0BAA0B,EAAE,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,8BAA8B,CACrC,OAAe,EACf,aAAqB,EACrB,YAAgC,EAChC,KAAyB,EACzB,MAA0B;IAE1B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,IAAI,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,GAAG,OAAO,cAAc,kBAAkB,CAAC,aAAa,CAAC,cAAc,CAAC;IACrF,OAAO,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;AAClD,CAAC","sourcesContent":["import bs58 from \"bs58\";\nimport { Keypair, Transaction, type PublicKey, type TransactionInstruction } from \"@solana/web3.js\";\nimport type { ClientContext } from \"../../context\";\nimport { requireConnection, requireSigningStrategy } from \"../../context\";\nimport { SdkError } from \"../../error\";\nimport { ProgramSdkError } from \"../../program/error\";\nimport { RetryPolicy } from \"../../http\";\nimport { Privy } from \"../../privy\";\nimport { isUserCancellation } from \"../../shared/signing\";\nimport {\n buildCancelOrderIx,\n buildCloseOrderStatusIx,\n buildIncrementNonceIx,\n} from \"../../program/instructions\";\nimport {\n hashOrder as programHashOrder,\n signOrder as programSignOrder,\n signOrderFull,\n createBidOrder as programCreateBidOrder,\n createAskOrder as programCreateAskOrder,\n createSignedBidOrder as programCreateSignedBidOrder,\n createSignedAskOrder as programCreateSignedAskOrder,\n signCancelOrder,\n signCancelTriggerOrder,\n signCancelAll,\n cancelOrderMessage,\n cancelTriggerOrderMessage,\n cancelAllMessage,\n generateCancelAllSalt as programGenerateCancelAllSalt,\n} from \"../../program/orders\";\nimport {\n getOrderStatusPda,\n getUserNoncePda,\n} from \"../../program/pda\";\nimport {\n deserializeOrderStatus,\n deserializeUserNonce,\n} from \"../../program/accounts\";\nimport type {\n SignedOrder,\n CloseOrderStatusParams,\n BidOrderParams,\n AskOrderParams,\n OrderStatus as ProgramOrderStatus,\n} from \"../../program/types\";\nimport { asOrderBookId, asPubkeyStr, type OrderBookId, type PubkeyStr } from \"../../shared\";\nimport { LimitOrderEnvelope, TriggerOrderEnvelope } from \"../../program/envelope\";\nimport {\n normalizeUserOrdersPayload,\n type UserSnapshotBalance,\n type UserSnapshotOrder,\n type UserOrderFillsResponse,\n} from \"./wire\";\n\n// ─── Request types ───────────────────────────────────────────────────────────\n\nexport interface CancelBody {\n order_hash: string;\n maker: PubkeyStr;\n signature: string;\n}\n\nexport function cancelBodyFromBase58(\n orderHash: string,\n maker: PubkeyStr,\n signatureBase58: string\n): CancelBody {\n return {\n order_hash: orderHash,\n maker,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n };\n}\n\nexport function cancelBodySigned(\n orderHash: string,\n maker: PubkeyStr,\n keypair: Keypair\n): CancelBody {\n const signature = signCancelOrder(orderHash, keypair);\n return { order_hash: orderHash, maker, signature };\n}\n\nexport interface CancelAllBody {\n user_pubkey: PubkeyStr;\n orderbook_id: OrderBookId;\n signature: string;\n timestamp: number;\n salt: string;\n}\n\nexport function cancelAllBodyFromBase58(\n userPubkey: PubkeyStr,\n orderbookId: OrderBookId,\n timestamp: number,\n salt: string,\n signatureBase58: string\n): CancelAllBody {\n return {\n user_pubkey: userPubkey,\n orderbook_id: orderbookId,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n timestamp,\n salt,\n };\n}\n\nexport function cancelAllBodySigned(\n userPubkey: PubkeyStr,\n orderbookId: OrderBookId,\n timestamp: number,\n salt: string,\n keypair: Keypair\n): CancelAllBody {\n const signature = signCancelAll(userPubkey, orderbookId, timestamp, salt, keypair);\n return { user_pubkey: userPubkey, orderbook_id: orderbookId, signature, timestamp, salt };\n}\n\nexport interface CancelTriggerBody {\n trigger_order_id: string;\n maker: PubkeyStr;\n signature: string;\n}\n\nexport function cancelTriggerBodyFromBase58(\n triggerOrderId: string,\n maker: PubkeyStr,\n signatureBase58: string\n): CancelTriggerBody {\n return {\n trigger_order_id: triggerOrderId,\n maker,\n signature: Buffer.from(bs58.decode(signatureBase58)).toString(\"hex\"),\n };\n}\n\nexport function cancelTriggerBodySigned(\n triggerOrderId: string,\n maker: PubkeyStr,\n keypair: Keypair\n): CancelTriggerBody {\n const signature = signCancelTriggerOrder(triggerOrderId, keypair);\n return { trigger_order_id: triggerOrderId, maker, signature };\n}\n\n// ─── Response types ──────────────────────────────────────────────────────────\n\nexport interface FillInfo {\n counterparty: PubkeyStr;\n counterparty_order_hash: string;\n fill_amount: string;\n price: string;\n is_maker: boolean;\n}\n\nexport type SubmitOrderStatus = \"accepted\" | \"partial_fill\" | \"filled\";\n\nexport interface SubmitOrderResponse {\n order_hash: string;\n status: SubmitOrderStatus;\n remaining: string;\n filled: string;\n fills: FillInfo[];\n}\n\nexport interface CancelSuccess {\n order_hash: string;\n remaining: string;\n}\n\nexport interface CancelAllSuccess {\n cancelled_order_hashes: string[];\n count: number;\n user_pubkey: PubkeyStr;\n orderbook_id: OrderBookId;\n message: string;\n}\n\nexport interface TriggerOrderResponse {\n trigger_order_id: string;\n order_hash: string;\n}\n\nexport interface CancelTriggerSuccess {\n trigger_order_id: string;\n}\n\nexport interface UserOrdersResponse {\n user_pubkey: PubkeyStr;\n orders: UserSnapshotOrder[];\n balances: UserSnapshotBalance[];\n next_cursor?: string;\n has_more: boolean;\n}\n\n// ─── Sub-client ──────────────────────────────────────────────────────────────\n\nexport class Orders {\n constructor(private readonly client: ClientContext) {}\n\n // ── PDA helpers ──────────────────────────────────────────────────────\n\n statusPda(orderHash: Buffer): PublicKey {\n return getOrderStatusPda(orderHash, this.client.programId)[0];\n }\n\n noncePda(user: PublicKey): PublicKey {\n return getUserNoncePda(user, this.client.programId)[0];\n }\n\n // ── Envelope factories ────────────────────────────────────────────────\n\n limitOrder(): LimitOrderEnvelope {\n return LimitOrderEnvelope.new().depositSource(this.client.depositSource);\n }\n\n triggerOrder(): TriggerOrderEnvelope {\n return TriggerOrderEnvelope.new().depositSource(this.client.depositSource);\n }\n\n // ── Helpers ──────────────────────────────────────────────────────────\n\n generateCancelAllSalt(): string {\n return programGenerateCancelAllSalt();\n }\n\n // ── HTTP methods ─────────────────────────────────────────────────────\n\n async submit(request: object): Promise<SubmitOrderResponse> {\n const url = `${this.client.http.baseUrl()}/api/orders/submit`;\n return this.client.http.post<SubmitOrderResponse, object>(url, request, RetryPolicy.None);\n }\n\n async cancel(body: CancelBody): Promise<CancelSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel`;\n return this.client.http.post<CancelSuccess, CancelBody>(url, body, RetryPolicy.None);\n }\n\n async cancelAll(body: CancelAllBody): Promise<CancelAllSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel-all`;\n return this.client.http.post<CancelAllSuccess, CancelAllBody>(\n url,\n body,\n RetryPolicy.None\n );\n }\n\n async submitTrigger(request: object): Promise<TriggerOrderResponse> {\n const url = `${this.client.http.baseUrl()}/api/orders/submit`;\n return this.client.http.post<TriggerOrderResponse, object>(\n url,\n request,\n RetryPolicy.None\n );\n }\n\n async cancelTrigger(body: CancelTriggerBody): Promise<CancelTriggerSuccess> {\n const url = `${this.client.http.baseUrl()}/api/orders/cancel`;\n return this.client.http.post<CancelTriggerSuccess, CancelTriggerBody>(\n url,\n body,\n RetryPolicy.None\n );\n }\n\n /**\n * Fetch the authenticated user's open orders. Wallet is resolved\n * server-side from the auth cookie, so no parameter is required.\n */\n async getUserOrders(\n limit?: number,\n cursor?: string\n ): Promise<UserOrdersResponse> {\n const url = buildUserOrdersAuthenticatedUrl(this.client.http.baseUrl(), limit, cursor);\n const response = await this.client.http.get<UserOrdersRawResponse>(url, RetryPolicy.Idempotent);\n return normalizeUserOrdersPayload(response);\n }\n\n /**\n * Same as {@link getUserOrders}, but uses the supplied `cookieHeader` for\n * this call instead of the SDK's process-wide cookie store. For\n * server-side cookie forwarding (SSR / route handlers).\n */\n async getUserOrdersWithCookies(\n limit: number | undefined,\n cursor: string | undefined,\n cookieHeader: string,\n ): Promise<UserOrdersResponse> {\n const url = buildUserOrdersAuthenticatedUrl(this.client.http.baseUrl(), limit, cursor);\n const response = await this.client.http.getWithCookies<UserOrdersRawResponse>(\n url,\n RetryPolicy.Idempotent,\n cookieHeader,\n );\n return normalizeUserOrdersPayload(response);\n }\n\n /**\n * Fetch the authenticated user's filled orders with nested fill events.\n * Wallet is resolved server-side from the auth cookie.\n */\n async getUserOrderFills(\n marketPubkey?: string,\n limit?: number,\n cursor?: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsAuthenticatedUrl(\n this.client.http.baseUrl(),\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.get<UserOrderFillsResponse>(url, RetryPolicy.Idempotent);\n }\n\n /**\n * Same as {@link getUserOrderFills}, but uses the supplied `cookieHeader`\n * for this call instead of the SDK's process-wide cookie store. For\n * server-side cookie forwarding (SSR / route handlers).\n */\n async getUserOrderFillsWithCookies(\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n cookieHeader: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsAuthenticatedUrl(\n this.client.http.baseUrl(),\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.getWithCookies<UserOrderFillsResponse>(\n url,\n RetryPolicy.Idempotent,\n cookieHeader,\n );\n }\n\n /**\n * Public variant of {@link getUserOrderFills}. Takes the user's wallet\n * via the URL path (`GET /api/users/{wallet}/order-fills`) and requires\n * no auth.\n */\n async getUserOrderFillsByWallet(\n walletAddress: string,\n marketPubkey?: string,\n limit?: number,\n cursor?: string,\n ): Promise<UserOrderFillsResponse> {\n const url = buildUserOrderFillsByWalletUrl(\n this.client.http.baseUrl(),\n walletAddress,\n marketPubkey,\n limit,\n cursor,\n );\n return this.client.http.get<UserOrderFillsResponse>(url, RetryPolicy.Idempotent);\n }\n\n // ── Unified cancel (dispatches based on client signing strategy) ────\n\n async cancelOrderSigned(\n orderHash: string,\n maker: PubkeyStr\n ): Promise<CancelSuccess> {\n const strategy = requireSigningStrategy(this.client);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelBodySigned(orderHash, maker, strategy.keypair);\n return this.cancel(body);\n }\n case \"walletAdapter\": {\n const message = cancelOrderMessage(orderHash);\n const sigBytes = await strategy.signer\n .signMessage(message)\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelBodyFromBase58(orderHash, maker, sigBs58);\n return this.cancel(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelOrder(\n strategy.walletId,\n orderHash,\n maker as string\n );\n return {\n order_hash: result.order_hash,\n remaining: result.remaining,\n };\n }\n }\n }\n\n async cancelAllSigned(\n userPubkey: PubkeyStr,\n timestamp: number,\n salt: string,\n orderbookId?: OrderBookId\n ): Promise<CancelAllSuccess> {\n const strategy = requireSigningStrategy(this.client);\n const resolvedOrderbookId = orderbookId ?? (\"\" as OrderBookId);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelAllBodySigned(\n userPubkey,\n resolvedOrderbookId,\n timestamp,\n salt,\n strategy.keypair\n );\n return this.cancelAll(body);\n }\n case \"walletAdapter\": {\n const message = cancelAllMessage(\n userPubkey as string,\n resolvedOrderbookId as string,\n timestamp,\n salt\n );\n const sigBytes = await strategy.signer\n .signMessage(new TextEncoder().encode(message))\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelAllBodyFromBase58(\n userPubkey,\n resolvedOrderbookId,\n timestamp,\n salt,\n sigBs58\n );\n return this.cancelAll(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelAllOrders(\n strategy.walletId,\n userPubkey as string,\n resolvedOrderbookId as string,\n timestamp,\n salt\n );\n return {\n cancelled_order_hashes: result.cancelled_order_hashes,\n count: result.count,\n user_pubkey: asPubkeyStr(result.user_pubkey),\n orderbook_id: asOrderBookId(result.orderbook_id),\n message: result.message,\n };\n }\n }\n }\n\n async cancelTriggerSigned(\n triggerOrderId: string,\n maker: PubkeyStr\n ): Promise<CancelTriggerSuccess> {\n const strategy = requireSigningStrategy(this.client);\n\n switch (strategy.type) {\n case \"native\": {\n const body = cancelTriggerBodySigned(triggerOrderId, maker, strategy.keypair);\n return this.cancelTrigger(body);\n }\n case \"walletAdapter\": {\n const message = cancelTriggerOrderMessage(triggerOrderId);\n const sigBytes = await strategy.signer\n .signMessage(message)\n .catch((err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err);\n if (isUserCancellation(msg)) throw SdkError.userCancelled();\n throw SdkError.signing(msg);\n });\n const sigBs58 = bs58.encode(sigBytes);\n const body = cancelTriggerBodyFromBase58(triggerOrderId, maker, sigBs58);\n return this.cancelTrigger(body);\n }\n case \"privy\": {\n const privy = new Privy(this.client);\n const result = await privy.signAndCancelTriggerOrder(\n strategy.walletId,\n triggerOrderId,\n maker as string\n );\n return { trigger_order_id: result.trigger_order_id };\n }\n }\n }\n\n // ── On-chain transaction builders ────────────────────────────────────\n\n cancelOrderIx(\n operator: PublicKey,\n market: PublicKey,\n order: SignedOrder\n ): TransactionInstruction {\n return buildCancelOrderIx(operator, market, order, this.client.programId);\n }\n\n incrementNonceIx(user: PublicKey): TransactionInstruction {\n return buildIncrementNonceIx(user, this.client.programId);\n }\n\n closeOrderStatusIx(params: CloseOrderStatusParams): TransactionInstruction {\n return buildCloseOrderStatusIx(params, this.client.programId);\n }\n\n // ── Transaction builders (_tx convenience wrappers) ─────────────────\n\n cancelOrderTx(\n operator: PublicKey,\n market: PublicKey,\n order: SignedOrder\n ): Transaction {\n const ix = this.cancelOrderIx(operator, market, order);\n return new Transaction({ feePayer: operator }).add(ix);\n }\n\n incrementNonceTx(user: PublicKey): Transaction {\n const ix = this.incrementNonceIx(user);\n return new Transaction({ feePayer: user }).add(ix);\n }\n\n closeOrderStatusTx(params: CloseOrderStatusParams): Transaction {\n const ix = this.closeOrderStatusIx(params);\n return new Transaction({ feePayer: params.operator }).add(ix);\n }\n\n // ── Order helpers ────────────────────────────────────────────────────\n\n createBidOrder(params: BidOrderParams): Omit<SignedOrder, \"signature\"> {\n return programCreateBidOrder(params);\n }\n\n createAskOrder(params: AskOrderParams): Omit<SignedOrder, \"signature\"> {\n return programCreateAskOrder(params);\n }\n\n createSignedBidOrder(params: BidOrderParams, signer: Keypair): SignedOrder {\n return programCreateSignedBidOrder(params, signer);\n }\n\n createSignedAskOrder(params: AskOrderParams, signer: Keypair): SignedOrder {\n return programCreateSignedAskOrder(params, signer);\n }\n\n hashOrder(order: SignedOrder): Buffer {\n return programHashOrder(order);\n }\n\n signOrder(order: SignedOrder, signer: Keypair): Buffer {\n return programSignOrder(order, signer);\n }\n\n signFullOrder(\n order: Omit<SignedOrder, \"signature\">,\n signer: Keypair\n ): SignedOrder {\n return signOrderFull(order, signer);\n }\n\n // ── On-chain account fetchers (require Connection) ──────────────────\n\n async getStatus(orderHash: Buffer): Promise<ProgramOrderStatus | null> {\n const connection = requireConnection(this.client);\n const pda = this.statusPda(orderHash);\n const accountInfo = await connection.getAccountInfo(pda);\n if (!accountInfo) {\n return null;\n }\n return deserializeOrderStatus(accountInfo.data as Buffer);\n }\n\n async getNonce(user: PublicKey): Promise<bigint> {\n const connection = requireConnection(this.client);\n const pda = this.noncePda(user);\n const accountInfo = await connection.getAccountInfo(pda);\n if (!accountInfo) {\n return 0n;\n }\n const userNonce = deserializeUserNonce(accountInfo.data as Buffer);\n return userNonce.nonce;\n }\n\n async currentNonce(user: PublicKey): Promise<number> {\n const nonce = await this.getNonce(user);\n if (nonce > 0xFFFFFFFFn) {\n throw ProgramSdkError.serialization(`Nonce exceeds u32 range: ${nonce}`);\n }\n return Number(nonce);\n }\n}\n\ninterface UserOrdersRawResponse {\n user_pubkey: PubkeyStr;\n orders?: UserSnapshotOrder[];\n balances?: UserSnapshotBalance[];\n next_cursor?: string | null;\n has_more?: boolean;\n}\n\nfunction buildUserOrdersAuthenticatedUrl(\n baseUrl: string,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n return qs.length === 0\n ? `${baseUrl}/api/users/orders`\n : `${baseUrl}/api/users/orders?${qs}`;\n}\n\nfunction buildUserOrderFillsAuthenticatedUrl(\n baseUrl: string,\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (marketPubkey) params.set(\"market_pubkey\", marketPubkey);\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n return qs.length === 0\n ? `${baseUrl}/api/users/order-fills`\n : `${baseUrl}/api/users/order-fills?${qs}`;\n}\n\nfunction buildUserOrderFillsByWalletUrl(\n baseUrl: string,\n walletAddress: string,\n marketPubkey: string | undefined,\n limit: number | undefined,\n cursor: string | undefined,\n): string {\n const params = new URLSearchParams();\n if (marketPubkey) params.set(\"market_pubkey\", marketPubkey);\n if (limit !== undefined) params.set(\"limit\", String(limit));\n if (cursor) params.set(\"cursor\", cursor);\n const qs = params.toString();\n const path = `${baseUrl}/api/users/${encodeURIComponent(walletAddress)}/order-fills`;\n return qs.length === 0 ? path : `${path}?${qs}`;\n}\n"]}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Hyperliquid-style book aggregation parameters.
3
+ *
4
+ * `{}` (both fields absent) is full precision. `nSigFigs` must be 2, 3, 4,
5
+ * or 5; `mantissa` must be 1, 2, or 5 and is only valid with `nSigFigs: 5`.
6
+ * `{ nSigFigs: 5 }` normalizes to `{ nSigFigs: 5, mantissa: 1 }` — the
7
+ * backend treats them as the same subscription, so all key/matching logic
8
+ * compares normalized values.
9
+ *
10
+ * Property names use the wire spelling shared with subscribe params and REST
11
+ * query keys (camelCase `nSigFigs`). Incoming `book_update` frames tag their
12
+ * view with snake_case `n_sig_figs`/`mantissa` (omitted = full precision);
13
+ * use {@link aggregationFromFrame} to key per-`(orderbook, aggregation)`
14
+ * state from those tags.
15
+ */
16
+ export interface BookAggregation {
17
+ nSigFigs?: number;
18
+ mantissa?: number;
19
+ }
20
+ /** Full precision (no aggregation). */
21
+ export declare const FULL_PRECISION: BookAggregation;
22
+ /**
23
+ * Validate aggregation params against the backend's contract, returning the
24
+ * normalized form. Throws on invalid combinations — the server rejects them
25
+ * with `INVALID_ORDERBOOK_SUBSCRIPTION` (WS) or HTTP 400 (REST), so validate
26
+ * before sending.
27
+ */
28
+ export declare function validateAggregation(aggregation: BookAggregation): BookAggregation;
29
+ /**
30
+ * Normalized form: `{ nSigFigs: 5 }` becomes `{ nSigFigs: 5, mantissa: 1 }`;
31
+ * everything else is unchanged. Lenient — never throws. Use
32
+ * {@link validateAggregation} to reject invalid combinations before sending.
33
+ */
34
+ export declare function normalizeAggregation(aggregation: BookAggregation): BookAggregation;
35
+ /**
36
+ * Aggregation identified by an incoming frame's snake_case tags. Untagged
37
+ * frames (both fields absent) are full precision. Lenient — never throws.
38
+ */
39
+ export declare function aggregationFromFrame(nSigFigs?: number, mantissa?: number): BookAggregation;
40
+ /** Whether this is the full-precision (no aggregation) view. */
41
+ export declare function isFullPrecision(aggregation: BookAggregation): boolean;
42
+ /** Compare two aggregations as the backend does: by normalized value. */
43
+ export declare function aggregationsEqual(a: BookAggregation, b: BookAggregation): boolean;
44
+ /**
45
+ * Stable suffix for subscription keys: `"full"`, `"sig2"`..`"sig4"`, or
46
+ * `"sig5m1"`/`"sig5m2"`/`"sig5m5"`. Matches the backend's subscription-key
47
+ * vocabulary so keys are comparable across normalized spellings.
48
+ */
49
+ export declare function aggregationKeySuffix(aggregation: BookAggregation): string;
50
+ //# sourceMappingURL=aggregation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregation.d.ts","sourceRoot":"","sources":["../../../src/domain/orderbook/aggregation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,uCAAuC;AACvC,eAAO,MAAM,cAAc,EAAE,eAAoB,CAAC;AAElD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,CAwBjF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,CAKlF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,eAAe,CAE1F;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAGrE;AAED,yEAAyE;AACzE,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,GAAG,OAAO,CAOjF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,eAAe,GAAG,MAAM,CAMzE"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FULL_PRECISION = void 0;
4
+ exports.validateAggregation = validateAggregation;
5
+ exports.normalizeAggregation = normalizeAggregation;
6
+ exports.aggregationFromFrame = aggregationFromFrame;
7
+ exports.isFullPrecision = isFullPrecision;
8
+ exports.aggregationsEqual = aggregationsEqual;
9
+ exports.aggregationKeySuffix = aggregationKeySuffix;
10
+ /** Full precision (no aggregation). */
11
+ exports.FULL_PRECISION = {};
12
+ /**
13
+ * Validate aggregation params against the backend's contract, returning the
14
+ * normalized form. Throws on invalid combinations — the server rejects them
15
+ * with `INVALID_ORDERBOOK_SUBSCRIPTION` (WS) or HTTP 400 (REST), so validate
16
+ * before sending.
17
+ */
18
+ function validateAggregation(aggregation) {
19
+ const { nSigFigs, mantissa } = aggregation;
20
+ if (nSigFigs === undefined) {
21
+ if (mantissa !== undefined) {
22
+ throw new Error("mantissa is only valid when nSigFigs is 5");
23
+ }
24
+ return {};
25
+ }
26
+ if (nSigFigs >= 2 && nSigFigs <= 4) {
27
+ if (mantissa !== undefined) {
28
+ throw new Error("mantissa is only valid when nSigFigs is 5");
29
+ }
30
+ return { nSigFigs };
31
+ }
32
+ if (nSigFigs === 5) {
33
+ if (mantissa === undefined) {
34
+ return { nSigFigs: 5, mantissa: 1 };
35
+ }
36
+ if (mantissa === 1 || mantissa === 2 || mantissa === 5) {
37
+ return { nSigFigs: 5, mantissa };
38
+ }
39
+ throw new Error("mantissa must be 1, 2, or 5");
40
+ }
41
+ throw new Error("nSigFigs must be 2, 3, 4, 5, or omitted");
42
+ }
43
+ /**
44
+ * Normalized form: `{ nSigFigs: 5 }` becomes `{ nSigFigs: 5, mantissa: 1 }`;
45
+ * everything else is unchanged. Lenient — never throws. Use
46
+ * {@link validateAggregation} to reject invalid combinations before sending.
47
+ */
48
+ function normalizeAggregation(aggregation) {
49
+ if (aggregation.nSigFigs === 5 && aggregation.mantissa === undefined) {
50
+ return { nSigFigs: 5, mantissa: 1 };
51
+ }
52
+ return aggregation;
53
+ }
54
+ /**
55
+ * Aggregation identified by an incoming frame's snake_case tags. Untagged
56
+ * frames (both fields absent) are full precision. Lenient — never throws.
57
+ */
58
+ function aggregationFromFrame(nSigFigs, mantissa) {
59
+ return normalizeAggregation({ nSigFigs, mantissa });
60
+ }
61
+ /** Whether this is the full-precision (no aggregation) view. */
62
+ function isFullPrecision(aggregation) {
63
+ const normalized = normalizeAggregation(aggregation);
64
+ return normalized.nSigFigs === undefined && normalized.mantissa === undefined;
65
+ }
66
+ /** Compare two aggregations as the backend does: by normalized value. */
67
+ function aggregationsEqual(a, b) {
68
+ const normalizedA = normalizeAggregation(a);
69
+ const normalizedB = normalizeAggregation(b);
70
+ return (normalizedA.nSigFigs === normalizedB.nSigFigs &&
71
+ normalizedA.mantissa === normalizedB.mantissa);
72
+ }
73
+ /**
74
+ * Stable suffix for subscription keys: `"full"`, `"sig2"`..`"sig4"`, or
75
+ * `"sig5m1"`/`"sig5m2"`/`"sig5m5"`. Matches the backend's subscription-key
76
+ * vocabulary so keys are comparable across normalized spellings.
77
+ */
78
+ function aggregationKeySuffix(aggregation) {
79
+ const { nSigFigs, mantissa } = normalizeAggregation(aggregation);
80
+ if (nSigFigs === undefined) {
81
+ return mantissa === undefined ? "full" : "invalid";
82
+ }
83
+ return mantissa === undefined ? `sig${nSigFigs}` : `sig${nSigFigs}m${mantissa}`;
84
+ }
85
+ //# sourceMappingURL=aggregation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregation.js","sourceRoot":"","sources":["../../../src/domain/orderbook/aggregation.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Hyperliquid-style book aggregation parameters.\n *\n * `{}` (both fields absent) is full precision. `nSigFigs` must be 2, 3, 4,\n * or 5; `mantissa` must be 1, 2, or 5 and is only valid with `nSigFigs: 5`.\n * `{ nSigFigs: 5 }` normalizes to `{ nSigFigs: 5, mantissa: 1 }` — the\n * backend treats them as the same subscription, so all key/matching logic\n * compares normalized values.\n *\n * Property names use the wire spelling shared with subscribe params and REST\n * query keys (camelCase `nSigFigs`). Incoming `book_update` frames tag their\n * view with snake_case `n_sig_figs`/`mantissa` (omitted = full precision);\n * use {@link aggregationFromFrame} to key per-`(orderbook, aggregation)`\n * state from those tags.\n */\nexport interface BookAggregation {\n nSigFigs?: number;\n mantissa?: number;\n}\n\n/** Full precision (no aggregation). */\nexport const FULL_PRECISION: BookAggregation = {};\n\n/**\n * Validate aggregation params against the backend's contract, returning the\n * normalized form. Throws on invalid combinations — the server rejects them\n * with `INVALID_ORDERBOOK_SUBSCRIPTION` (WS) or HTTP 400 (REST), so validate\n * before sending.\n */\nexport function validateAggregation(aggregation: BookAggregation): BookAggregation {\n const { nSigFigs, mantissa } = aggregation;\n if (nSigFigs === undefined) {\n if (mantissa !== undefined) {\n throw new Error(\"mantissa is only valid when nSigFigs is 5\");\n }\n return {};\n }\n if (nSigFigs >= 2 && nSigFigs <= 4) {\n if (mantissa !== undefined) {\n throw new Error(\"mantissa is only valid when nSigFigs is 5\");\n }\n return { nSigFigs };\n }\n if (nSigFigs === 5) {\n if (mantissa === undefined) {\n return { nSigFigs: 5, mantissa: 1 };\n }\n if (mantissa === 1 || mantissa === 2 || mantissa === 5) {\n return { nSigFigs: 5, mantissa };\n }\n throw new Error(\"mantissa must be 1, 2, or 5\");\n }\n throw new Error(\"nSigFigs must be 2, 3, 4, 5, or omitted\");\n}\n\n/**\n * Normalized form: `{ nSigFigs: 5 }` becomes `{ nSigFigs: 5, mantissa: 1 }`;\n * everything else is unchanged. Lenient — never throws. Use\n * {@link validateAggregation} to reject invalid combinations before sending.\n */\nexport function normalizeAggregation(aggregation: BookAggregation): BookAggregation {\n if (aggregation.nSigFigs === 5 && aggregation.mantissa === undefined) {\n return { nSigFigs: 5, mantissa: 1 };\n }\n return aggregation;\n}\n\n/**\n * Aggregation identified by an incoming frame's snake_case tags. Untagged\n * frames (both fields absent) are full precision. Lenient — never throws.\n */\nexport function aggregationFromFrame(nSigFigs?: number, mantissa?: number): BookAggregation {\n return normalizeAggregation({ nSigFigs, mantissa });\n}\n\n/** Whether this is the full-precision (no aggregation) view. */\nexport function isFullPrecision(aggregation: BookAggregation): boolean {\n const normalized = normalizeAggregation(aggregation);\n return normalized.nSigFigs === undefined && normalized.mantissa === undefined;\n}\n\n/** Compare two aggregations as the backend does: by normalized value. */\nexport function aggregationsEqual(a: BookAggregation, b: BookAggregation): boolean {\n const normalizedA = normalizeAggregation(a);\n const normalizedB = normalizeAggregation(b);\n return (\n normalizedA.nSigFigs === normalizedB.nSigFigs &&\n normalizedA.mantissa === normalizedB.mantissa\n );\n}\n\n/**\n * Stable suffix for subscription keys: `\"full\"`, `\"sig2\"`..`\"sig4\"`, or\n * `\"sig5m1\"`/`\"sig5m2\"`/`\"sig5m5\"`. Matches the backend's subscription-key\n * vocabulary so keys are comparable across normalized spellings.\n */\nexport function aggregationKeySuffix(aggregation: BookAggregation): string {\n const { nSigFigs, mantissa } = normalizeAggregation(aggregation);\n if (nSigFigs === undefined) {\n return mantissa === undefined ? \"full\" : \"invalid\";\n }\n return mantissa === undefined ? `sig${nSigFigs}` : `sig${nSigFigs}m${mantissa}`;\n}\n"]}