@openmarketsai/order-sheet 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +5 -0
  3. package/README.md +183 -0
  4. package/dist/auth.d.ts +24 -0
  5. package/dist/auth.js +36 -0
  6. package/dist/auth.js.map +1 -0
  7. package/dist/client.d.ts +158 -0
  8. package/dist/client.js +253 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/errors.d.ts +34 -0
  11. package/dist/errors.js +34 -0
  12. package/dist/errors.js.map +1 -0
  13. package/dist/generated/contract.d.ts +28 -0
  14. package/dist/generated/contract.js +176 -0
  15. package/dist/generated/contract.js.map +1 -0
  16. package/dist/http.d.ts +19 -0
  17. package/dist/http.js +58 -0
  18. package/dist/http.js.map +1 -0
  19. package/dist/index.cjs +1742 -0
  20. package/dist/index.d.ts +41 -0
  21. package/dist/index.js +31 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/math.d.ts +22 -0
  24. package/dist/math.js +55 -0
  25. package/dist/math.js.map +1 -0
  26. package/dist/messages.d.ts +21 -0
  27. package/dist/messages.js +97 -0
  28. package/dist/messages.js.map +1 -0
  29. package/dist/odds.d.ts +12 -0
  30. package/dist/odds.js +33 -0
  31. package/dist/odds.js.map +1 -0
  32. package/dist/quote.d.ts +20 -0
  33. package/dist/quote.js +117 -0
  34. package/dist/quote.js.map +1 -0
  35. package/dist/react.cjs +2137 -0
  36. package/dist/react.d.ts +157 -0
  37. package/dist/react.js +297 -0
  38. package/dist/react.js.map +1 -0
  39. package/dist/sheet.d.ts +77 -0
  40. package/dist/sheet.js +648 -0
  41. package/dist/sheet.js.map +1 -0
  42. package/dist/stream.d.ts +71 -0
  43. package/dist/stream.js +160 -0
  44. package/dist/stream.js.map +1 -0
  45. package/dist/types.d.ts +287 -0
  46. package/dist/types.js +2 -0
  47. package/dist/types.js.map +1 -0
  48. package/dist/ui/styles.css +284 -0
  49. package/dist/ui/theme.d.ts +108 -0
  50. package/dist/ui/theme.js +180 -0
  51. package/dist/ui/theme.js.map +1 -0
  52. package/dist/ui.cjs +2606 -0
  53. package/dist/ui.d.ts +124 -0
  54. package/dist/ui.js +154 -0
  55. package/dist/ui.js.map +1 -0
  56. package/dist/validate.d.ts +20 -0
  57. package/dist/validate.js +126 -0
  58. package/dist/validate.js.map +1 -0
  59. package/dist/venues.d.ts +19 -0
  60. package/dist/venues.js +103 -0
  61. package/dist/venues.js.map +1 -0
  62. package/dist/wire.d.ts +382 -0
  63. package/dist/wire.js +2 -0
  64. package/dist/wire.js.map +1 -0
  65. package/package.json +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheet.js","sourceRoot":"","sources":["../src/sheet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * The Flow stream, for the two private channels a sheet follows: `orders`
3
+ * (order.update / order.settled) and `balance` (balance.update).
4
+ *
5
+ * Contract the server holds us to:
6
+ * - auth is `?api_key=` on the URL — a JWT session has no stream (poll instead)
7
+ * - subscribe with NO `account_ids` for your own account (sending your own is refused)
8
+ * - `orders` is changes-only with no replay: on every `connected`, refetch
9
+ * GET /orders/resting/me — the client wires that through `onConnected`
10
+ * - `balance.update` carries `balance_version`; drop out-of-order frames
11
+ * - `{ action: 'ping' }` → `{ type: 'pong' }`
12
+ *
13
+ * Zero-dependency: uses the global WebSocket (browser, Node 22+) or one you inject.
14
+ */
15
+ import type { StreamBalanceUpdate, StreamOrderSettled, StreamOrderUpdate, StreamServerMessage } from './wire.js';
16
+ export type WebSocketCtor = new (url: string) => WebSocketLike;
17
+ export interface WebSocketLike {
18
+ readyState: number;
19
+ send(data: string): void;
20
+ close(code?: number, reason?: string): void;
21
+ onopen: ((ev: unknown) => void) | null;
22
+ onclose: ((ev: unknown) => void) | null;
23
+ onerror: ((ev: unknown) => void) | null;
24
+ onmessage: ((ev: {
25
+ data: unknown;
26
+ }) => void) | null;
27
+ }
28
+ export type StreamStatus = 'idle' | 'connecting' | 'open' | 'closed';
29
+ export interface StreamEvents {
30
+ 'order.update': StreamOrderUpdate;
31
+ 'order.settled': StreamOrderSettled;
32
+ 'balance.update': StreamBalanceUpdate;
33
+ connected: {
34
+ server_time: string | null;
35
+ };
36
+ disconnected: {
37
+ willRetry: boolean;
38
+ };
39
+ error: {
40
+ code: string;
41
+ message: string;
42
+ };
43
+ status: StreamStatus;
44
+ }
45
+ export interface OrderStreamOptions {
46
+ url: string;
47
+ getApiKey: () => Promise<string | null> | string | null;
48
+ WebSocket?: WebSocketCtor;
49
+ channels?: Array<'orders' | 'balance'>;
50
+ /** Reconnect back-off (ms). Set `maxAttempts: 0` to never retry. */
51
+ backoff?: {
52
+ initialMs?: number;
53
+ maxMs?: number;
54
+ maxAttempts?: number;
55
+ };
56
+ pingIntervalMs?: number;
57
+ /** For tests: replace setTimeout / clearTimeout. */
58
+ timers?: {
59
+ set: typeof setTimeout;
60
+ clear: typeof clearTimeout;
61
+ };
62
+ }
63
+ export interface OrderStream {
64
+ connect(): Promise<void>;
65
+ disconnect(): void;
66
+ readonly status: StreamStatus;
67
+ on<K extends keyof StreamEvents>(event: K, handler: (payload: StreamEvents[K]) => void): () => void;
68
+ /** Feed a frame in by hand (tests, or a host that owns the socket). */
69
+ ingest(frame: StreamServerMessage): void;
70
+ }
71
+ export declare function createOrderStream(options: OrderStreamOptions): OrderStream;
package/dist/stream.js ADDED
@@ -0,0 +1,160 @@
1
+ export function createOrderStream(options) {
2
+ const channels = options.channels ?? ['orders', 'balance'];
3
+ const timers = options.timers ?? { set: setTimeout, clear: clearTimeout };
4
+ const backoff = { initialMs: 1000, maxMs: 30000, maxAttempts: Infinity, ...(options.backoff ?? {}) };
5
+ const handlers = new Map();
6
+ const balanceVersions = new Map();
7
+ let ws = null;
8
+ let status = 'idle';
9
+ let attempts = 0;
10
+ let wantOpen = false;
11
+ let reconnectTimer = null;
12
+ let pingTimer = null;
13
+ const emit = (event, payload) => {
14
+ for (const h of handlers.get(event) ?? []) {
15
+ try {
16
+ h(payload);
17
+ }
18
+ catch (e) {
19
+ console.error('[order-sheet] stream handler threw', e);
20
+ }
21
+ }
22
+ };
23
+ const setStatus = (s) => { if (s !== status) {
24
+ status = s;
25
+ emit('status', s);
26
+ } };
27
+ const stopPing = () => { if (pingTimer) {
28
+ timers.clear(pingTimer);
29
+ pingTimer = null;
30
+ } };
31
+ const schedulePing = () => {
32
+ stopPing();
33
+ const every = options.pingIntervalMs ?? 25000;
34
+ if (!(every > 0))
35
+ return;
36
+ pingTimer = timers.set(() => {
37
+ if (ws && ws.readyState === 1) {
38
+ try {
39
+ ws.send(JSON.stringify({ action: 'ping' }));
40
+ }
41
+ catch { /* closed */ }
42
+ }
43
+ schedulePing();
44
+ }, every);
45
+ };
46
+ function ingest(frame) {
47
+ switch (frame.type) {
48
+ case 'connected': {
49
+ attempts = 0;
50
+ for (const channel of channels)
51
+ ws?.send(JSON.stringify({ action: 'subscribe', channel }));
52
+ emit('connected', { server_time: frame.server_time ?? null });
53
+ return;
54
+ }
55
+ case 'order.update':
56
+ emit('order.update', frame);
57
+ return;
58
+ case 'order.settled':
59
+ emit('order.settled', frame);
60
+ return;
61
+ case 'balance.update': {
62
+ const f = frame;
63
+ const last = balanceVersions.get(f.account_partner_id);
64
+ if (last != null && typeof f.balance_version === 'number' && f.balance_version <= last)
65
+ return; // out of order
66
+ if (typeof f.balance_version === 'number')
67
+ balanceVersions.set(f.account_partner_id, f.balance_version);
68
+ emit('balance.update', f);
69
+ return;
70
+ }
71
+ case 'error': {
72
+ const f = frame;
73
+ emit('error', { code: f.code ?? 'stream_error', message: f.message ?? 'stream error' });
74
+ return;
75
+ }
76
+ default: return;
77
+ }
78
+ }
79
+ async function open() {
80
+ const Ctor = options.WebSocket ?? globalThis.WebSocket;
81
+ if (!Ctor) {
82
+ emit('error', { code: 'stream_unavailable', message: 'No WebSocket implementation available.' });
83
+ setStatus('closed');
84
+ return;
85
+ }
86
+ const key = await options.getApiKey();
87
+ if (!key) {
88
+ emit('error', { code: 'no_credential', message: 'The stream needs an API key.' });
89
+ setStatus('closed');
90
+ return;
91
+ }
92
+ const sep = options.url.includes('?') ? '&' : '?';
93
+ setStatus('connecting');
94
+ const socket = new Ctor(`${options.url}${sep}api_key=${encodeURIComponent(key)}`);
95
+ ws = socket;
96
+ socket.onopen = () => { setStatus('open'); schedulePing(); };
97
+ socket.onmessage = (ev) => {
98
+ let frame = null;
99
+ try {
100
+ frame = JSON.parse(String(ev.data));
101
+ }
102
+ catch {
103
+ return;
104
+ }
105
+ if (frame && typeof frame === 'object' && typeof frame.type === 'string')
106
+ ingest(frame);
107
+ };
108
+ socket.onerror = () => { };
109
+ socket.onclose = () => {
110
+ if (ws !== socket)
111
+ return;
112
+ ws = null;
113
+ stopPing();
114
+ const willRetry = wantOpen && attempts < backoff.maxAttempts;
115
+ setStatus('closed');
116
+ emit('disconnected', { willRetry });
117
+ if (willRetry) {
118
+ const delay = Math.min(backoff.maxMs, backoff.initialMs * Math.pow(2, attempts));
119
+ attempts += 1;
120
+ reconnectTimer = timers.set(() => { reconnectTimer = null; if (wantOpen)
121
+ void open(); }, delay);
122
+ }
123
+ };
124
+ }
125
+ return {
126
+ get status() { return status; },
127
+ async connect() {
128
+ wantOpen = true;
129
+ if (ws)
130
+ return;
131
+ await open();
132
+ },
133
+ disconnect() {
134
+ wantOpen = false;
135
+ if (reconnectTimer) {
136
+ timers.clear(reconnectTimer);
137
+ reconnectTimer = null;
138
+ }
139
+ stopPing();
140
+ const s = ws;
141
+ ws = null; // the socket's own onclose is now a no-op (guarded on identity)
142
+ try {
143
+ s?.close(1000, 'client disconnect');
144
+ }
145
+ catch { /* already closed */ }
146
+ setStatus('closed');
147
+ if (s)
148
+ emit('disconnected', { willRetry: false });
149
+ },
150
+ on(event, handler) {
151
+ if (!handlers.has(event))
152
+ handlers.set(event, new Set());
153
+ const set = handlers.get(event);
154
+ set.add(handler);
155
+ return () => { set.delete(handler); };
156
+ },
157
+ ingest,
158
+ };
159
+ }
160
+ //# sourceMappingURL=stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,287 @@
1
+ /**
2
+ * The SDK's public vocabulary — what an app renders. camelCase, derived from the
3
+ * wire shapes in ./wire.ts. Every enum is either generated from the server
4
+ * contract (IssueCode, IssueFix) or a small closed union declared here.
5
+ */
6
+ import type { IssueCode, IssueFix } from './generated/contract.js';
7
+ import type { OrderSheetError } from './errors.js';
8
+ import type { OddsFormat } from './odds.js';
9
+ import type { AccountConstraints, BuyLegStatus, BuyResponse, FeeDirection, FeePacket, MoneyMode, OrderType, Position, PreflightLegResult, StakeUnit, VenueConstraints, IssueSeverity, IssueScope } from './wire.js';
10
+ export type { IssueCode, IssueFix, MoneyMode, OrderType, StakeUnit, OddsFormat, IssueSeverity, IssueScope };
11
+ /** Issues the sheet raises on its own, before or beside the server's. */
12
+ export type ClientIssueCode = 'no_venue' | 'no_stake' | 'no_quote' | 'paper_limit_unsupported' | 'order_type_unsupported' | 'mode_unavailable' | 'real_money_disabled' | 'not_paper_bettable' | 'stale_quote' | 'better_price_available' | 'constraints_stale' | 'confirm_required' | 'confirm_expired' | 'not_ready';
13
+ export type SheetIssueCode = IssueCode | ClientIssueCode;
14
+ /** One reason, before or after placement — the same shape everywhere in the sheet. */
15
+ export interface Issue {
16
+ code: SheetIssueCode;
17
+ severity: IssueSeverity;
18
+ /** Plain language, user-facing. Server-authored when the server answered; local otherwise. */
19
+ message: string;
20
+ /** The developer-facing reason, when there is one. */
21
+ detail: string | null;
22
+ fix: IssueFix;
23
+ scope: IssueScope;
24
+ source: 'local' | 'server';
25
+ }
26
+ /** Numbers a message can name. `currency` switches money formatting (USD vs the practice currency). */
27
+ export interface IssueContext {
28
+ venue?: string;
29
+ amount?: number;
30
+ price?: number;
31
+ max_price?: number;
32
+ min?: number;
33
+ max?: number;
34
+ contracts?: number;
35
+ min_contracts?: number;
36
+ available?: number;
37
+ balance?: number;
38
+ required?: number;
39
+ increment?: number;
40
+ tick?: number;
41
+ detail?: string;
42
+ currency?: string;
43
+ }
44
+ export interface Validation {
45
+ /** No blocking issue. */
46
+ ok: boolean;
47
+ blocking: Issue[];
48
+ warnings: Issue[];
49
+ info: Issue[];
50
+ all: Issue[];
51
+ }
52
+ export interface VenueAccount {
53
+ connected: boolean;
54
+ status: 'active' | 'inactive' | null;
55
+ credentialStatus: 'pending' | 'failed' | 'connected' | null;
56
+ currency: string | null;
57
+ /** Venue-reported snapshot. */
58
+ balance: number | null;
59
+ /** Net of holds — what the venue can fund right now. Prefer it. */
60
+ expectedBalance: number | null;
61
+ stale: boolean;
62
+ scopeTradeExecute: boolean;
63
+ }
64
+ /** One venue quoting this position, joined with the account's constraints for it. */
65
+ export interface VenueOption {
66
+ partnerId: string;
67
+ name: string;
68
+ logoUrl: string | null;
69
+ liquidityHash: string | null;
70
+ buyId: string | null;
71
+ /** Probability 0–1 before fees; null when the venue has nothing on the book. */
72
+ price: number | null;
73
+ americanOdds: string | null;
74
+ /** USD buyable at `price`; null when unknown. */
75
+ available: number | null;
76
+ actionable: boolean;
77
+ feePacket: FeePacket | null;
78
+ account: VenueAccount;
79
+ supports: {
80
+ orderTypes: OrderType[];
81
+ cancel: boolean;
82
+ modes: MoneyMode[];
83
+ };
84
+ /** For the sheet's CURRENT mode and order type. */
85
+ eligibility: {
86
+ status: 'ok' | 'warn' | 'blocked';
87
+ issues: Issue[];
88
+ };
89
+ /** The server-served rules — the SDK evaluates these and adds nothing of its own. */
90
+ constraints: VenueConstraints | null;
91
+ /** Cheapest actionable price of the list. Display only — never auto-selected. */
92
+ best: boolean;
93
+ selected: boolean;
94
+ display: {
95
+ price: string;
96
+ };
97
+ }
98
+ export interface QuoteFee {
99
+ taker: number;
100
+ maker: number;
101
+ direction: FeeDirection | null;
102
+ /** true = scaled from the venue's canonical fee packet; false = the server's exact fee (preflight). */
103
+ estimated: boolean;
104
+ }
105
+ export interface Quote {
106
+ venuePartnerId: string;
107
+ mode: MoneyMode;
108
+ orderType: OrderType;
109
+ stake: {
110
+ unit: StakeUnit;
111
+ value: number;
112
+ };
113
+ /** Reference fill price (market) or the limit price (limit). */
114
+ price: number;
115
+ /** The ceiling that will be sent, snapped to the venue's tick and band. */
116
+ maxPrice: number;
117
+ /** Whole on whole-contract venues (epsilon-safe), fractional elsewhere. */
118
+ contracts: number;
119
+ /** USD (or practice currency) that would actually book. */
120
+ cost: number;
121
+ /** Gross payout if the position wins (contracts × $1). */
122
+ payout: number;
123
+ /** Un-buyable remainder of the stake. */
124
+ leftover: number;
125
+ /** The stake in currency terms. */
126
+ notional: number;
127
+ fee: QuoteFee | null;
128
+ /** Cost per contract including the taker fee, when known. */
129
+ effectivePrice: number | null;
130
+ /** payout − cost − taker fee. */
131
+ profit: number;
132
+ expectedFill: {
133
+ allocated: number;
134
+ unfilled: number;
135
+ fillPrice: number;
136
+ } | null;
137
+ /** Limit orders: the book is above the limit, so the order would rest. */
138
+ wouldRest: boolean;
139
+ currency: string;
140
+ freshness: 'quote' | 'preflight' | 'stale';
141
+ display: {
142
+ price: string;
143
+ maxPrice: string;
144
+ cost: string;
145
+ payout: string;
146
+ profit: string;
147
+ fee: string;
148
+ effectivePrice: string;
149
+ };
150
+ }
151
+ export interface PreflightSnapshot {
152
+ /** Hash of the inputs it was computed for; the sheet drops it when they change. */
153
+ inputKey: string;
154
+ at: number;
155
+ leg: PreflightLegResult;
156
+ haltedAtIndex: number | null;
157
+ }
158
+ export type SheetPhase = 'idle' | 'loading' | 'ready' | 'blocked' | 'confirming' | 'placing' | 'filled' | 'partial' | 'resting' | 'pending' | 'failed' | 'cancelled' | 'settled';
159
+ export interface PlaceLeg {
160
+ index: number;
161
+ status: BuyLegStatus;
162
+ /** The venue you named. */
163
+ partnerId: string | null;
164
+ /** The venue(s) it actually booked on. A paper leg books on the internal book — benign. */
165
+ routedPartnerIds: string[];
166
+ /** A REAL leg booked somewhere other than the venue named — report it. */
167
+ substituted: boolean;
168
+ routerOrderIds: string[];
169
+ fill: {
170
+ notional: number;
171
+ shares: number;
172
+ avgPrice: number | null;
173
+ unfilled: number;
174
+ };
175
+ issue: Issue | null;
176
+ sorDecisionId: string | null;
177
+ }
178
+ export type PlaceSummary = 'filled' | 'partial' | 'resting' | 'pending' | 'failed';
179
+ export interface PlaceResult {
180
+ summary: PlaceSummary;
181
+ legs: PlaceLeg[];
182
+ opportunityId: string | null;
183
+ idempotencyKey: string;
184
+ placedAt: number;
185
+ raw: BuyResponse;
186
+ }
187
+ export type PlaceOutcome = {
188
+ status: 'placed';
189
+ result: PlaceResult;
190
+ } | {
191
+ status: 'confirm_required';
192
+ issues: Issue[];
193
+ } | {
194
+ status: 'blocked';
195
+ issues: Issue[];
196
+ };
197
+ export interface TrackedOrder {
198
+ routerOrderId: string;
199
+ partnerId: string;
200
+ status: string;
201
+ fillStatus: string;
202
+ filledAmt: number;
203
+ unfilledAmt: number;
204
+ avgPrice: number | null;
205
+ settled: {
206
+ result: 'win' | 'lose' | 'push';
207
+ winnings: number;
208
+ netWinnings: number;
209
+ } | null;
210
+ updatedAt: string;
211
+ }
212
+ export interface AccountFacts {
213
+ routerAccountId: string | null;
214
+ environment: 'live' | 'test' | null;
215
+ canExecute: boolean;
216
+ canPractice: boolean;
217
+ moneyModes: MoneyMode[];
218
+ practiceOnly: boolean;
219
+ isFiduciary: boolean;
220
+ issues: Issue[];
221
+ practiceWallet: {
222
+ partnerId: string | null;
223
+ currency: string;
224
+ balance: number | null;
225
+ };
226
+ policy: AccountConstraints['policy'] | null;
227
+ constraintsVersion: string | null;
228
+ }
229
+ /** How a sheet names its position. A full position (from GET /contests/:id/liquidity) skips a fetch. */
230
+ export type PositionRef = {
231
+ position: Position;
232
+ partnerId?: string;
233
+ } | {
234
+ liquidityHash: string;
235
+ } | {
236
+ positionHash: string;
237
+ partnerId?: string;
238
+ };
239
+ export interface BetterPriceHint {
240
+ code: 'better_price_available';
241
+ venue: VenueOption;
242
+ message: string;
243
+ }
244
+ export interface SheetState {
245
+ phase: SheetPhase;
246
+ position: Position | null;
247
+ venues: VenueOption[];
248
+ venue: VenueOption | null;
249
+ mode: MoneyMode;
250
+ orderType: OrderType;
251
+ stake: {
252
+ unit: StakeUnit;
253
+ value: number | null;
254
+ };
255
+ /** The ceiling to send. Auto-derived (quote + slippage, snapped) until the user sets one. */
256
+ maxPrice: number | null;
257
+ maxPriceIsAuto: boolean;
258
+ slippage: number;
259
+ oddsFormat: OddsFormat;
260
+ quote: Quote | null;
261
+ validation: Validation;
262
+ preflight: PreflightSnapshot | null;
263
+ preflightStatus: 'idle' | 'pending' | 'done' | 'error';
264
+ result: PlaceResult | null;
265
+ orders: TrackedOrder[];
266
+ error: OrderSheetError | null;
267
+ account: AccountFacts | null;
268
+ canPlace: boolean;
269
+ /** "Place practice order · $20" / "Confirm real order · $20 on Kalshi". */
270
+ confirmLabel: string;
271
+ /** A cheaper venue exists (display only — the user switches, the SDK never does). */
272
+ hint: BetterPriceHint | null;
273
+ loading: boolean;
274
+ updatedAt: number;
275
+ }
276
+ export interface SheetPatch {
277
+ stake?: {
278
+ amount: number;
279
+ } | {
280
+ shares: number;
281
+ } | null;
282
+ maxPrice?: number | null;
283
+ orderType?: OrderType;
284
+ mode?: MoneyMode;
285
+ oddsFormat?: OddsFormat;
286
+ slippage?: number;
287
+ }
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}