@compose-market/sdk 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -9
- package/dist/events.d.ts +75 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +68 -0
- package/dist/events.js.map +1 -0
- package/dist/http.d.ts +1 -1
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +4 -4
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +108 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +221 -18
- package/dist/index.js.map +1 -1
- package/dist/resources/inference.d.ts +29 -15
- package/dist/resources/inference.d.ts.map +1 -1
- package/dist/resources/inference.js +85 -55
- package/dist/resources/inference.js.map +1 -1
- package/dist/resources/instrumentation.d.ts +28 -0
- package/dist/resources/instrumentation.d.ts.map +1 -0
- package/dist/resources/instrumentation.js +43 -0
- package/dist/resources/instrumentation.js.map +1 -0
- package/dist/resources/keys.d.ts +4 -0
- package/dist/resources/keys.d.ts.map +1 -1
- package/dist/resources/keys.js +15 -5
- package/dist/resources/keys.js.map +1 -1
- package/dist/resources/session-events.d.ts +46 -0
- package/dist/resources/session-events.d.ts.map +1 -0
- package/dist/resources/session-events.js +199 -0
- package/dist/resources/session-events.js.map +1 -0
- package/dist/storage.d.ts +27 -0
- package/dist/storage.d.ts.map +1 -0
- package/dist/storage.js +46 -0
- package/dist/storage.js.map +1 -0
- package/dist/streaming/budget.d.ts +22 -0
- package/dist/streaming/budget.d.ts.map +1 -0
- package/dist/streaming/budget.js +40 -0
- package/dist/streaming/budget.js.map +1 -0
- package/dist/types/index.d.ts +43 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/version.d.ts +9 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +9 -0
- package/dist/version.js.map +1 -0
- package/package.json +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.3.0
|
|
4
|
+
|
|
5
|
+
Live session state surfaces all the way to the caller. First-party parity milestone.
|
|
6
|
+
|
|
7
|
+
### Highlights
|
|
8
|
+
|
|
9
|
+
- **`sdk.events` typed event bus.** Listeners for `budget`, `sessionInvalid`, `sessionActive`, `sessionExpired`, `receipt`. Dispatched automatically on every billable response and every SSE session-event frame. Returns disposers; `.once(...)` fires exactly once.
|
|
10
|
+
- **Live session budget on every response.** `ComposeCompletion<T>` grows `budget` and `sessionInvalidReason` fields sourced from the `x-session-budget-*` / `x-compose-session-invalid` response headers. No more side-channel fetches to `/api/session` to render a session indicator.
|
|
11
|
+
- **SSE session events resource.** `sdk.session.subscribe({ signal })` streams `session-active` / `session-expired` frames from `/api/session/events`. Auto-reconnects with jittered backoff. Wallet context defaults to `sdk.wallets.current()`.
|
|
12
|
+
- **Persistent token storage.** New `storage` + `tokenScope` constructor options. Browsers auto-use `localStorage`; Node callers pass an explicit adapter. Tokens are keyed by `(address, chainId)` so multi-wallet devices never collide. A fresh `ComposeSDK` instance with the same wallet re-hydrates the token without a network call.
|
|
13
|
+
- **`keys.get` / `keys.revoke` now attach `x-session-user-address` + `x-chain-id`.** Matches the canonical header contract the rest of the SDK uses.
|
|
14
|
+
- **Single source of truth for version.** `sdk.version` reads from `package.json` via a build-time generated `src/version.ts`. No more duplicated constants anywhere.
|
|
15
|
+
- **`userAddress` is the canonical field name** across the SDK (was `walletAddress` in internal types); aligns with the header `x-session-user-address` and the Compose Market backend.
|
|
16
|
+
|
|
17
|
+
### New tests
|
|
18
|
+
|
|
19
|
+
- `sdk.events.test.ts` — budget / receipt / sessionInvalid emission, disposer, once semantics, storage persistence, version agreement.
|
|
20
|
+
- `sdk.session-events.test.ts` — SSE iterator + event-bus bridge for `session-active` / `session-expired`, wallet-context guards.
|
|
21
|
+
|
|
22
|
+
### Breaking changes from 0.2.0
|
|
23
|
+
|
|
24
|
+
- `HeaderBagInput.walletAddress` renamed to `HeaderBagInput.userAddress`.
|
|
25
|
+
- `ComposeCallOptions.walletAddress` renamed to `ComposeCallOptions.userAddress`.
|
|
26
|
+
- `ComposeCompletion<T>` now includes `budget` and `sessionInvalidReason`. Existing consumers that destructured `{ data, receipt, requestId, response }` are unaffected; consumers that did `const completion: ComposeCompletion<T> = ...` and then structural-assigned may need to accept the new fields.
|
|
27
|
+
- `audio.speech(...)` return type grows `budget` + `sessionInvalidReason` alongside the existing `{ response, receipt, requestId }`.
|
|
28
|
+
- Streaming final results (`ChatCompletionFinalResult`, `ResponsesStreamFinalResult`) grow `budget` + `sessionInvalidReason`.
|
|
29
|
+
- The `SDK_VERSION` constant is no longer exported at a stable location; use `sdk.version` on an instance.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
3
33
|
## 0.2.0
|
|
4
34
|
|
|
5
35
|
First production-shaped release. Full rewrite from the 0.1.x typed-fetch prototype.
|
|
@@ -16,15 +46,6 @@ First production-shaped release. Full rewrite from the 0.1.x typed-fetch prototy
|
|
|
16
46
|
- **Retries + timeouts + AbortSignal** — jittered exponential backoff; honors `Retry-After`; auto-generates `X-Idempotency-Key` on mutations.
|
|
17
47
|
- **Video job streaming** — `sdk.inference.videos.stream(id)` / `.waitUntilDone(id, { onStatus })` for SSE-driven polling.
|
|
18
48
|
|
|
19
|
-
### Breaking changes from 0.1.x
|
|
20
|
-
|
|
21
|
-
- Package entry moved from `./index.js` to `./dist/index.js` with dual `.d.ts` + sourcemaps.
|
|
22
|
-
- `ComposeApiError` renamed to `ComposeAPIError` (plus typed subclasses). Error envelopes now follow the canonical `{ error: { code, message, details? } }` shape.
|
|
23
|
-
- `sdk.keys.getActive()` no longer returns the token. The token is returned exactly once by `sdk.keys.create()` and must be persisted by the integrator (store in `localStorage`, keychain, secret store, etc.). Calling `getActive()` returns metadata only.
|
|
24
|
-
- `sdk.keys.revoke()` and the new `sdk.keys.get(id)` require possession of the target key's JWT (pass via `sdk.keys.use(token)` or the constructor).
|
|
25
|
-
- `sdk.inference.*` entry points now return `ComposeCompletion<T>` (`{ data, receipt, requestId, response }`) instead of the raw JSON body. Use `.data` to access the parsed body.
|
|
26
|
-
- Streaming is now an explicit `.stream()` method (separate from `.create()`) returning `ComposeStreamIterator<Chunk, Final>`. Passing `stream: true` to `.create()` throws `BadRequestError`.
|
|
27
|
-
|
|
28
49
|
### Tests
|
|
29
50
|
|
|
30
51
|
- **Hermetic.** Three suites: `sdk.unit.test.ts` (pure), `sdk.streaming.test.ts` (in-test synthetic SSE server), `sdk.contract.test.ts` (in-test mock HTTP server with canned responses mirroring `api.compose.market`).
|
package/dist/events.d.ts
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed event bus emitted by `ComposeSDK`.
|
|
3
|
+
*
|
|
4
|
+
* The event bus is the canonical way for application code to react to
|
|
5
|
+
* out-of-band signals from the Compose backend that arrive as a side effect
|
|
6
|
+
* of HTTP calls or SSE subscriptions:
|
|
7
|
+
*
|
|
8
|
+
* - `budget` — session-budget snapshot parsed from response headers
|
|
9
|
+
* on every billable call.
|
|
10
|
+
* - `sessionInvalid` — `x-compose-session-invalid` header was set, the
|
|
11
|
+
* session must be torn down.
|
|
12
|
+
* - `sessionExpired` — SSE `session-expired` frame arrived from
|
|
13
|
+
* `/api/session/events`.
|
|
14
|
+
* - `sessionActive` — SSE `session-active` heartbeat frame arrived.
|
|
15
|
+
* - `receipt` — settlement receipt parsed from `X-Compose-Receipt`
|
|
16
|
+
* (or the SSE `event: compose.receipt` frame).
|
|
17
|
+
*
|
|
18
|
+
* Listeners are registered with `.on(event, listener)`. The bus is in-memory,
|
|
19
|
+
* single-process, unordered across listeners, and never blocks the caller —
|
|
20
|
+
* listener exceptions are logged via the SDK logger and discarded.
|
|
21
|
+
*/
|
|
22
|
+
import type { ComposeReceipt, SessionActiveEvent, SessionBudgetSnapshot, SessionExpiredEvent, SessionInvalidReason } from "./types/index.js";
|
|
23
|
+
export interface BudgetEvent {
|
|
24
|
+
userAddress: string | null;
|
|
25
|
+
chainId: number | null;
|
|
26
|
+
snapshot: SessionBudgetSnapshot;
|
|
27
|
+
/** Request that produced this snapshot. Matches `X-Request-Id`. */
|
|
28
|
+
requestId: string | null;
|
|
29
|
+
}
|
|
30
|
+
export interface SessionInvalidEvent {
|
|
31
|
+
userAddress: string | null;
|
|
32
|
+
chainId: number | null;
|
|
33
|
+
reason: SessionInvalidReason;
|
|
34
|
+
requestId: string | null;
|
|
35
|
+
}
|
|
36
|
+
export interface ReceiptEvent {
|
|
37
|
+
userAddress: string | null;
|
|
38
|
+
chainId: number | null;
|
|
39
|
+
receipt: ComposeReceipt;
|
|
40
|
+
requestId: string | null;
|
|
41
|
+
/**
|
|
42
|
+
* Which code path produced the receipt:
|
|
43
|
+
* - "response-header" — decoded from `X-Compose-Receipt` on a normal
|
|
44
|
+
* JSON response.
|
|
45
|
+
* - "stream" — parsed from the `event: compose.receipt` SSE
|
|
46
|
+
* frame on a streaming inference call.
|
|
47
|
+
* - "body" — mirrored from the `compose_receipt` field on
|
|
48
|
+
* the JSON body (fallback).
|
|
49
|
+
*/
|
|
50
|
+
source: "response-header" | "stream" | "body";
|
|
51
|
+
}
|
|
52
|
+
export interface ComposeEventMap {
|
|
53
|
+
budget: BudgetEvent;
|
|
54
|
+
sessionInvalid: SessionInvalidEvent;
|
|
55
|
+
sessionActive: SessionActiveEvent;
|
|
56
|
+
sessionExpired: SessionExpiredEvent;
|
|
57
|
+
receipt: ReceiptEvent;
|
|
58
|
+
}
|
|
59
|
+
export type ComposeEventName = keyof ComposeEventMap;
|
|
60
|
+
export type ComposeEventListener<E extends ComposeEventName> = (event: ComposeEventMap[E]) => void | Promise<void>;
|
|
61
|
+
export interface ComposeEventBus {
|
|
62
|
+
on<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): () => void;
|
|
63
|
+
once<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): () => void;
|
|
64
|
+
off<E extends ComposeEventName>(event: E, listener: ComposeEventListener<E>): void;
|
|
65
|
+
emit<E extends ComposeEventName>(event: E, payload: ComposeEventMap[E]): void;
|
|
66
|
+
}
|
|
67
|
+
interface InternalBusOptions {
|
|
68
|
+
logger?: {
|
|
69
|
+
warn?: (msg: string, meta?: Record<string, unknown>) => void;
|
|
70
|
+
error?: (msg: string, meta?: Record<string, unknown>) => void;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
export declare function createEventBus(options?: InternalBusOptions): ComposeEventBus;
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACR,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACvB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,mEAAmE;IACnE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;;;;;OAQG;IACH,MAAM,EAAE,iBAAiB,GAAG,QAAQ,GAAG,MAAM,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,mBAAmB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,cAAc,EAAE,mBAAmB,CAAC;IACpC,OAAO,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;AAErD,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAC3D,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KACxB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,eAAe;IAC5B,EAAE,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IACxF,IAAI,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;IAC1F,GAAG,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACnF,IAAI,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CACjF;AAED,UAAU,kBAAkB;IACxB,MAAM,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7D,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KACjE,CAAC;CACL;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,kBAAuB,GAAG,eAAe,CA8ChF"}
|
package/dist/events.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed event bus emitted by `ComposeSDK`.
|
|
3
|
+
*
|
|
4
|
+
* The event bus is the canonical way for application code to react to
|
|
5
|
+
* out-of-band signals from the Compose backend that arrive as a side effect
|
|
6
|
+
* of HTTP calls or SSE subscriptions:
|
|
7
|
+
*
|
|
8
|
+
* - `budget` — session-budget snapshot parsed from response headers
|
|
9
|
+
* on every billable call.
|
|
10
|
+
* - `sessionInvalid` — `x-compose-session-invalid` header was set, the
|
|
11
|
+
* session must be torn down.
|
|
12
|
+
* - `sessionExpired` — SSE `session-expired` frame arrived from
|
|
13
|
+
* `/api/session/events`.
|
|
14
|
+
* - `sessionActive` — SSE `session-active` heartbeat frame arrived.
|
|
15
|
+
* - `receipt` — settlement receipt parsed from `X-Compose-Receipt`
|
|
16
|
+
* (or the SSE `event: compose.receipt` frame).
|
|
17
|
+
*
|
|
18
|
+
* Listeners are registered with `.on(event, listener)`. The bus is in-memory,
|
|
19
|
+
* single-process, unordered across listeners, and never blocks the caller —
|
|
20
|
+
* listener exceptions are logged via the SDK logger and discarded.
|
|
21
|
+
*/
|
|
22
|
+
export function createEventBus(options = {}) {
|
|
23
|
+
const listeners = new Map();
|
|
24
|
+
const logger = options.logger;
|
|
25
|
+
const register = (event, listener) => {
|
|
26
|
+
const existing = listeners.get(event) ?? new Set();
|
|
27
|
+
existing.add(listener);
|
|
28
|
+
listeners.set(event, existing);
|
|
29
|
+
return () => off(event, listener);
|
|
30
|
+
};
|
|
31
|
+
const off = (event, listener) => {
|
|
32
|
+
const set = listeners.get(event);
|
|
33
|
+
if (!set)
|
|
34
|
+
return;
|
|
35
|
+
set.delete(listener);
|
|
36
|
+
if (set.size === 0)
|
|
37
|
+
listeners.delete(event);
|
|
38
|
+
};
|
|
39
|
+
const emit = (event, payload) => {
|
|
40
|
+
const set = listeners.get(event);
|
|
41
|
+
if (!set || set.size === 0)
|
|
42
|
+
return;
|
|
43
|
+
// Iterate a snapshot so listeners that unsubscribe inside their own
|
|
44
|
+
// handler do not mutate the iteration order.
|
|
45
|
+
for (const listener of Array.from(set)) {
|
|
46
|
+
try {
|
|
47
|
+
const result = listener(payload);
|
|
48
|
+
if (result && typeof result.catch === "function") {
|
|
49
|
+
result.catch((err) => {
|
|
50
|
+
logger?.error?.(`[events] async listener for ${event} threw`, { err });
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
logger?.error?.(`[events] listener for ${event} threw`, { err });
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
const once = (event, listener) => {
|
|
60
|
+
const wrapped = (payload) => {
|
|
61
|
+
off(event, wrapped);
|
|
62
|
+
return listener(payload);
|
|
63
|
+
};
|
|
64
|
+
return register(event, wrapped);
|
|
65
|
+
};
|
|
66
|
+
return { on: register, once, off, emit };
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAsEH,MAAM,UAAU,cAAc,CAAC,UAA8B,EAAE;IAC3D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAiE,CAAC;IAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9B,MAAM,QAAQ,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAgB,EAAE;QACvG,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QACnD,QAAQ,CAAC,GAAG,CAAC,QAAkD,CAAC,CAAC;QACjE,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAQ,EAAE;QAC1F,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,GAAG,CAAC,MAAM,CAAC,QAAkD,CAAC,CAAC;QAC/D,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAA6B,KAAQ,EAAE,OAA2B,EAAQ,EAAE;QACrF,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QACnC,oEAAoE;QACpE,6CAA6C;QAC7C,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC;gBACD,MAAM,MAAM,GAAI,QAAoC,CAAC,OAAO,CAAC,CAAC;gBAC9D,IAAI,MAAM,IAAI,OAAQ,MAAwB,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;oBACjE,MAAwB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACpC,MAAM,EAAE,KAAK,EAAE,CAAC,+BAA+B,KAAK,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC3E,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,EAAE,KAAK,EAAE,CAAC,yBAAyB,KAAK,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACrE,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAA6B,KAAQ,EAAE,QAAiC,EAAgB,EAAE;QACnG,MAAM,OAAO,GAA4B,CAAC,OAAO,EAAE,EAAE;YACjD,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACpB,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC"}
|
package/dist/http.d.ts
CHANGED
|
@@ -37,7 +37,7 @@ export interface HttpClientOptions {
|
|
|
37
37
|
export interface HeaderBagInput {
|
|
38
38
|
authJwt?: string;
|
|
39
39
|
composeKey?: string | null;
|
|
40
|
-
|
|
40
|
+
userAddress?: string | null;
|
|
41
41
|
chainId?: number | null;
|
|
42
42
|
paymentSignature?: string;
|
|
43
43
|
x402MaxAmountWei?: string;
|
package/dist/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgBH,MAAM,MAAM,SAAS,GAAG,CACpB,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB,MAAM,WAAW,WAAW;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QAC7D,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KACjE,CAAC;CACL;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/dist/http.js
CHANGED
|
@@ -61,10 +61,10 @@ function buildQueryString(query) {
|
|
|
61
61
|
const encoded = params.toString();
|
|
62
62
|
return encoded.length > 0 ? `?${encoded}` : "";
|
|
63
63
|
}
|
|
64
|
-
function
|
|
64
|
+
function normalizeUserAddress(value) {
|
|
65
65
|
const trimmed = value.trim().toLowerCase();
|
|
66
66
|
if (!/^0x[a-f0-9]{40}$/.test(trimmed)) {
|
|
67
|
-
throw new BadRequestError({ message: "
|
|
67
|
+
throw new BadRequestError({ message: "userAddress must be a valid 0x-prefixed EVM address" });
|
|
68
68
|
}
|
|
69
69
|
return trimmed;
|
|
70
70
|
}
|
|
@@ -84,8 +84,8 @@ export function buildHeaders(input) {
|
|
|
84
84
|
else if (input.composeKey) {
|
|
85
85
|
headers.set("Authorization", `Bearer ${input.composeKey}`);
|
|
86
86
|
}
|
|
87
|
-
if (input.
|
|
88
|
-
headers.set("x-session-user-address",
|
|
87
|
+
if (input.userAddress) {
|
|
88
|
+
headers.set("x-session-user-address", normalizeUserAddress(input.userAddress));
|
|
89
89
|
}
|
|
90
90
|
if (typeof input.chainId === "number" && Number.isInteger(input.chainId) && input.chainId > 0) {
|
|
91
91
|
headers.set("x-chain-id", String(input.chainId));
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,10 +8,13 @@
|
|
|
8
8
|
* - Compose Key lifecycle (create / list / get / revoke, session metadata)
|
|
9
9
|
* - 45k+ model catalog (list / listAll / search / get / getParams)
|
|
10
10
|
* - OpenAI-shaped inference (chat.completions, responses, embeddings, images,
|
|
11
|
-
* audio.speech, audio.transcriptions, videos) with full SSE streaming
|
|
12
|
-
* typed tool-call deltas
|
|
11
|
+
* audio.speech, audio.transcriptions, videos) with full SSE streaming,
|
|
12
|
+
* typed tool-call deltas and reasoning deltas, typed cost receipts, and
|
|
13
|
+
* live session-budget updates emitted on every response.
|
|
13
14
|
* - x402 facilitator access (supported / chains / verify / settle) and typed
|
|
14
15
|
* decoders for PAYMENT-REQUIRED, PAYMENT-RESPONSE, X-Compose-Receipt.
|
|
16
|
+
* - SSE session events (`sdk.session.events`) for budget depletion and
|
|
17
|
+
* expiry notifications, dispatched on the typed event bus as well.
|
|
15
18
|
* - Webhook signature verification (HMAC-SHA256, Stripe-style header).
|
|
16
19
|
*
|
|
17
20
|
* Design:
|
|
@@ -24,8 +27,11 @@
|
|
|
24
27
|
* via the `x-session-user-address` header. The Compose Key JWT returned by
|
|
25
28
|
* `keys.create(...)` is the real cryptographic identity from that point on.
|
|
26
29
|
* - Every billable call returns a `ComposeCompletion<T>` carrying the parsed
|
|
27
|
-
* body, the settlement receipt (if any), the request id,
|
|
30
|
+
* body, the settlement receipt (if any), the request id, the live session
|
|
31
|
+
* budget snapshot, the session-invalid reason (if any), and the raw
|
|
28
32
|
* Response so integrators can read non-standard headers without parsing.
|
|
33
|
+
* - Persisted session tokens survive page reloads when a storage adapter is
|
|
34
|
+
* provided (browser `localStorage` is auto-detected).
|
|
29
35
|
*/
|
|
30
36
|
import { type FetchLike, type HttpClientOptions, type RetryPolicy } from "./http.js";
|
|
31
37
|
import { KeysResource } from "./resources/keys.js";
|
|
@@ -33,14 +39,24 @@ import { ModelsResource } from "./resources/models.js";
|
|
|
33
39
|
import { InferenceResource } from "./resources/inference.js";
|
|
34
40
|
import { X402Resource } from "./resources/x402.js";
|
|
35
41
|
import { WebhooksResource } from "./resources/webhooks.js";
|
|
42
|
+
import { SessionEventsResource, type SessionEventsOptions } from "./resources/session-events.js";
|
|
43
|
+
import { type ComposeEventBus, type ComposeEventListener } from "./events.js";
|
|
44
|
+
import { type ComposeStorage } from "./storage.js";
|
|
36
45
|
export * from "./types/index.js";
|
|
37
46
|
export * from "./errors.js";
|
|
38
47
|
export type { APIPromise, HeaderBagInput, HttpClientOptions, RequestOptions, RetryPolicy, } from "./http.js";
|
|
39
|
-
export type { ComposeCallOptions, ComposeCompletion, ChatCompletionFinalResult, ResponsesStreamFinalResult, ComposeStreamIterator, } from "./resources/inference.js";
|
|
48
|
+
export type { ComposeCallOptions, ComposeCompletion, ChatCompletionFinalResult, ResponsesStreamFinalResult, ComposeStreamIterator, InferenceContext, } from "./resources/inference.js";
|
|
40
49
|
export type { ComposeWebhookEvent, VerifyWebhookInput, } from "./resources/webhooks.js";
|
|
50
|
+
export type { BudgetEvent, ComposeEventBus, ComposeEventListener, ComposeEventMap, ComposeEventName, ReceiptEvent, SessionInvalidEvent, } from "./events.js";
|
|
51
|
+
export type { ComposeStorage } from "./storage.js";
|
|
52
|
+
export type { SessionEventsOptions } from "./resources/session-events.js";
|
|
41
53
|
export { decodeReceiptHeader, extractReceiptFromResponse, parseReceiptEvent } from "./streaming/receipt.js";
|
|
42
54
|
export { parseSSEStream } from "./streaming/sse.js";
|
|
43
|
-
export
|
|
55
|
+
export { extractSessionBudgetFromResponse } from "./streaming/budget.js";
|
|
56
|
+
export { createMemoryStorage } from "./storage.js";
|
|
57
|
+
/**
|
|
58
|
+
* Constructor options for `ComposeSDK`.
|
|
59
|
+
*/
|
|
44
60
|
export interface ComposeSDKOptions {
|
|
45
61
|
/** API base URL. Defaults to `https://api.compose.market`. */
|
|
46
62
|
baseUrl?: string;
|
|
@@ -61,6 +77,11 @@ export interface ComposeSDKOptions {
|
|
|
61
77
|
/**
|
|
62
78
|
* A previously-issued Compose Key JWT. The SDK stores this in-memory and
|
|
63
79
|
* attaches it as `Authorization: Bearer compose-<jwt>` on every call.
|
|
80
|
+
*
|
|
81
|
+
* When a `storage` adapter is present, the token is also persisted under
|
|
82
|
+
* the scoped key `<tokenScope>:<address>:<chainId>` so that it survives
|
|
83
|
+
* page reloads. If `composeKey` is omitted at construction, the SDK
|
|
84
|
+
* attempts to hydrate from storage.
|
|
64
85
|
*/
|
|
65
86
|
composeKey?: string;
|
|
66
87
|
/** Default timeout for each HTTP call, in milliseconds. Default 60_000. */
|
|
@@ -76,13 +97,31 @@ export interface ComposeSDKOptions {
|
|
|
76
97
|
userAgent?: string;
|
|
77
98
|
/** Optional debug/logging hooks. */
|
|
78
99
|
logger?: HttpClientOptions["logger"];
|
|
100
|
+
/**
|
|
101
|
+
* Pluggable persistent storage. Auto-detects `globalThis.localStorage` on
|
|
102
|
+
* browsers/Workers. Pass an explicit adapter on Node/server runtimes if
|
|
103
|
+
* you want the session token to survive process restarts.
|
|
104
|
+
*/
|
|
105
|
+
storage?: ComposeStorage;
|
|
106
|
+
/**
|
|
107
|
+
* Namespace prefix for persisted tokens. The full key shape is
|
|
108
|
+
* `<tokenScope>:<lower-address>:<chainId>`. Defaults to
|
|
109
|
+
* `compose.sdk.token`. Bump this only if you need to invalidate every
|
|
110
|
+
* persisted token at once (e.g. after a breaking server auth change).
|
|
111
|
+
*/
|
|
112
|
+
tokenScope?: string;
|
|
79
113
|
}
|
|
80
114
|
export declare class ComposeSDK {
|
|
115
|
+
/** The SDK version, sourced from package.json at build time. */
|
|
116
|
+
readonly version: string;
|
|
117
|
+
/** Resolved API base URL, trimmed of trailing slashes. */
|
|
118
|
+
readonly baseUrl: string;
|
|
81
119
|
readonly keys: KeysResource;
|
|
82
120
|
readonly models: ModelsResource;
|
|
83
121
|
readonly inference: InferenceResource;
|
|
84
122
|
readonly x402: X402Resource;
|
|
85
123
|
readonly webhooks: WebhooksResource;
|
|
124
|
+
readonly session: SessionEventsNamespace;
|
|
86
125
|
readonly wallets: {
|
|
87
126
|
attach: (input: {
|
|
88
127
|
address: string;
|
|
@@ -94,11 +133,74 @@ export declare class ComposeSDK {
|
|
|
94
133
|
};
|
|
95
134
|
clear: () => void;
|
|
96
135
|
};
|
|
136
|
+
/**
|
|
137
|
+
* Typed, in-memory event bus. Listeners registered here receive:
|
|
138
|
+
* - `budget` — live `x-session-budget-*` snapshot on every billable call.
|
|
139
|
+
* - `sessionInvalid` — `x-compose-session-invalid` header set by the server.
|
|
140
|
+
* - `sessionActive` — SSE `session-active` heartbeat from `/api/session/events`.
|
|
141
|
+
* - `sessionExpired` — SSE `session-expired` frame from `/api/session/events`.
|
|
142
|
+
* - `receipt` — settlement receipt on every billable response / stream.
|
|
143
|
+
*/
|
|
144
|
+
readonly events: ComposeEventBus;
|
|
97
145
|
private readonly http;
|
|
98
|
-
private
|
|
146
|
+
private readonly storage;
|
|
147
|
+
private readonly tokenScope;
|
|
148
|
+
private userAddress;
|
|
99
149
|
private chainId;
|
|
100
150
|
private composeKey;
|
|
151
|
+
private readonly rawFetch;
|
|
152
|
+
private readonly userAgent;
|
|
101
153
|
constructor(options?: ComposeSDKOptions);
|
|
154
|
+
private persistToken;
|
|
155
|
+
private deletePersistedToken;
|
|
156
|
+
/**
|
|
157
|
+
* Drop-in `fetch` wrapper that attaches the canonical Compose header
|
|
158
|
+
* contract (`Authorization`, `x-session-user-address`, `x-chain-id`,
|
|
159
|
+
* `User-Agent`) on every request and emits `budget` / `sessionInvalid` /
|
|
160
|
+
* `receipt` events on every response via the SDK event bus.
|
|
161
|
+
*
|
|
162
|
+
* Use this when you need to hit a Compose endpoint that isn't covered
|
|
163
|
+
* by a typed resource yet (agent/workflow runtime endpoints, workspace
|
|
164
|
+
* indexing, custom api/ routes). The URL may be absolute or relative to
|
|
165
|
+
* the SDK's `baseUrl`.
|
|
166
|
+
*
|
|
167
|
+
* Non-Compose URLs (absolute URLs whose host differs from `baseUrl`) are
|
|
168
|
+
* still passed through so this method is safe as a general-purpose fetch
|
|
169
|
+
* replacement; the budget event extraction is a no-op when the response
|
|
170
|
+
* doesn't carry `x-session-budget-*` headers.
|
|
171
|
+
*/
|
|
172
|
+
fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Thin ergonomic wrapper around `SessionEventsResource` so callers write
|
|
176
|
+
* `sdk.session.events({ ... })` with wallet defaults inferred from the SDK
|
|
177
|
+
* instance.
|
|
178
|
+
*/
|
|
179
|
+
declare class SessionEventsNamespace {
|
|
180
|
+
private readonly resource;
|
|
181
|
+
private readonly getWalletMaybe;
|
|
182
|
+
constructor(resource: SessionEventsResource, getWalletMaybe: () => {
|
|
183
|
+
address: string | null;
|
|
184
|
+
chainId: number | null;
|
|
185
|
+
});
|
|
186
|
+
/**
|
|
187
|
+
* Subscribe to `/api/session/events`. Yields `SessionActiveEvent` and
|
|
188
|
+
* `SessionExpiredEvent` until the signal aborts or the server ends the
|
|
189
|
+
* stream. The same events are also emitted on `sdk.events`.
|
|
190
|
+
*
|
|
191
|
+
* When `userAddress` / `chainId` are omitted, the SDK's currently attached
|
|
192
|
+
* wallet context is used. Abort via an `AbortController.signal`.
|
|
193
|
+
*/
|
|
194
|
+
subscribe(opts?: Partial<SessionEventsOptions>): AsyncIterable<import("./types/index.js").SessionEvent>;
|
|
195
|
+
/**
|
|
196
|
+
* Shortcut: register a listener on the `sessionActive` + `sessionExpired`
|
|
197
|
+
* events produced by a subscription. Returns a disposer that aborts the
|
|
198
|
+
* underlying stream AND removes the listeners.
|
|
199
|
+
*/
|
|
200
|
+
on(handlers: {
|
|
201
|
+
active?: ComposeEventListener<"sessionActive">;
|
|
202
|
+
expired?: ComposeEventListener<"sessionExpired">;
|
|
203
|
+
}, opts?: Partial<SessionEventsOptions>): () => void;
|
|
102
204
|
}
|
|
103
205
|
export default ComposeSDK;
|
|
104
206
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|