@soulcraft/sdk 1.4.12 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/create-client-sdk.d.ts +99 -0
- package/dist/client/create-client-sdk.d.ts.map +1 -0
- package/dist/client/create-client-sdk.js +174 -0
- package/dist/client/create-client-sdk.js.map +1 -0
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +2 -0
- package/dist/client/index.js.map +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -8
- package/dist/index.js.map +1 -1
- package/dist/modules/auth/middleware.d.ts +246 -68
- package/dist/modules/auth/middleware.d.ts.map +1 -1
- package/dist/modules/auth/middleware.js +369 -67
- package/dist/modules/auth/middleware.js.map +1 -1
- package/dist/modules/auth/types.d.ts +4 -3
- package/dist/modules/auth/types.d.ts.map +1 -1
- package/dist/modules/brainy/errors.d.ts +16 -6
- package/dist/modules/brainy/errors.d.ts.map +1 -1
- package/dist/modules/brainy/errors.js +21 -11
- package/dist/modules/brainy/errors.js.map +1 -1
- package/dist/server/from-license.d.ts.map +1 -1
- package/dist/server/from-license.js +11 -4
- package/dist/server/from-license.js.map +1 -1
- package/dist/server/index.d.ts +3 -3
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -3
- package/dist/server/index.js.map +1 -1
- package/dist/server/instance-pool.d.ts +12 -35
- package/dist/server/instance-pool.d.ts.map +1 -1
- package/dist/server/instance-pool.js +14 -44
- package/dist/server/instance-pool.js.map +1 -1
- package/dist/server/postmessage-handler.d.ts +25 -0
- package/dist/server/postmessage-handler.d.ts.map +1 -1
- package/dist/server/postmessage-handler.js +13 -0
- package/dist/server/postmessage-handler.js.map +1 -1
- package/dist/transports/http.d.ts +1 -1
- package/dist/transports/http.d.ts.map +1 -1
- package/dist/transports/http.js +5 -2
- package/dist/transports/http.js.map +1 -1
- package/dist/transports/postmessage.d.ts +13 -7
- package/dist/transports/postmessage.d.ts.map +1 -1
- package/dist/transports/postmessage.js +24 -8
- package/dist/transports/postmessage.js.map +1 -1
- package/dist/transports/sse.d.ts +5 -1
- package/dist/transports/sse.d.ts.map +1 -1
- package/dist/transports/sse.js +12 -3
- package/dist/transports/sse.js.map +1 -1
- package/dist/transports/ws.d.ts +7 -3
- package/dist/transports/ws.d.ts.map +1 -1
- package/dist/transports/ws.js +28 -9
- package/dist/transports/ws.js.map +1 -1
- package/package.json +17 -5
|
@@ -56,8 +56,8 @@ export declare class HttpTransport implements SDKTransport {
|
|
|
56
56
|
* @throws {@link SDKTimeoutError} if the request exceeds `timeoutMs`.
|
|
57
57
|
* @throws {@link SDKAuthError} on HTTP 401.
|
|
58
58
|
* @throws {@link SDKForbiddenError} on HTTP 403.
|
|
59
|
+
* @throws {@link SDKRpcError} on any other non-ok HTTP response (5xx, 502, 503, etc.) or Brainy-level error.
|
|
59
60
|
* @throws {@link SDKDisconnectedError} on network failure.
|
|
60
|
-
* @throws {@link SDKRpcError} if the server returns a Brainy-level error.
|
|
61
61
|
*/
|
|
62
62
|
call(method: string, args: unknown[]): Promise<unknown>;
|
|
63
63
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AA8BpE;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAElC;;;;;OAKG;gBAED,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,WAAW,UAAQ,EACnB,SAAS,SAAS;IAQpB;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AA8BpE;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAElC;;;;;OAKG;gBAED,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,WAAW,UAAQ,EACnB,SAAS,SAAS;IAQpB;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA+C7D;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI3D;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI5D;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
package/dist/transports/http.js
CHANGED
|
@@ -60,8 +60,8 @@ export class HttpTransport {
|
|
|
60
60
|
* @throws {@link SDKTimeoutError} if the request exceeds `timeoutMs`.
|
|
61
61
|
* @throws {@link SDKAuthError} on HTTP 401.
|
|
62
62
|
* @throws {@link SDKForbiddenError} on HTTP 403.
|
|
63
|
+
* @throws {@link SDKRpcError} on any other non-ok HTTP response (5xx, 502, 503, etc.) or Brainy-level error.
|
|
63
64
|
* @throws {@link SDKDisconnectedError} on network failure.
|
|
64
|
-
* @throws {@link SDKRpcError} if the server returns a Brainy-level error.
|
|
65
65
|
*/
|
|
66
66
|
async call(method, args) {
|
|
67
67
|
const abort = new AbortController();
|
|
@@ -85,7 +85,7 @@ export class HttpTransport {
|
|
|
85
85
|
if (err instanceof DOMException && err.name === 'AbortError') {
|
|
86
86
|
throw new SDKTimeoutError(method);
|
|
87
87
|
}
|
|
88
|
-
throw new SDKDisconnectedError();
|
|
88
|
+
throw new SDKDisconnectedError(err);
|
|
89
89
|
}
|
|
90
90
|
finally {
|
|
91
91
|
clearTimeout(timer);
|
|
@@ -94,6 +94,9 @@ export class HttpTransport {
|
|
|
94
94
|
throw new SDKAuthError();
|
|
95
95
|
if (response.status === 403)
|
|
96
96
|
throw new SDKForbiddenError();
|
|
97
|
+
if (!response.ok) {
|
|
98
|
+
throw new SDKRpcError(`HTTP_${response.status}`, `SDK: server returned HTTP ${response.status} — the service may be temporarily unavailable`);
|
|
99
|
+
}
|
|
97
100
|
const json = (await response.json());
|
|
98
101
|
if ('error' in json && json.error) {
|
|
99
102
|
throw new SDKRpcError(json.error.code, json.error.message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,GACZ,MAAM,6BAA6B,CAAA;AAuBpC;;;;;;GAMG;AACH,MAAM,OAAO,aAAa;IACP,MAAM,CAAQ;IACd,SAAS,CAAoB;IAC7B,WAAW,CAAS;IACpB,SAAS,CAAQ;IAElC;;;;;OAKG;IACH,YACE,OAAe,EACf,SAAkB,EAClB,WAAW,GAAG,KAAK,EACnB,SAAS,GAAG,MAAM;QAElB,IAAI,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAA;QAC5D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,IAAe;QACxC,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAA;QACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;QAE7D,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAA;QAC9E,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,SAAS,EAAE,CAAA;QAEzE,MAAM,IAAI,GAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QAE7C,IAAI,QAAkB,CAAA;QACtB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;gBAClC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;gBAClD,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC7D,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,CAAA;YACnC,CAAC;YACD,MAAM,IAAI,oBAAoB,
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,9 +40,10 @@
|
|
|
40
40
|
*
|
|
41
41
|
* ## Security
|
|
42
42
|
*
|
|
43
|
-
* Messages are sent to `targetOrigin
|
|
44
|
-
*
|
|
45
|
-
*
|
|
43
|
+
* Messages are sent to `targetOrigin`. Always pass the explicit Workshop origin
|
|
44
|
+
* (e.g. `'https://workshop.soulcraft.com'`). Using `'*'` broadcasts to any origin
|
|
45
|
+
* and must never be used in production — it leaks Brainy RPC responses to third-party
|
|
46
|
+
* frames. The parent handler validates `event.source` and `event.origin` before dispatching.
|
|
46
47
|
*/
|
|
47
48
|
import type { SDKTransport } from './transport.js';
|
|
48
49
|
import type { BrainyChangeEvent } from '../modules/brainy/events.js';
|
|
@@ -70,6 +71,11 @@ export interface PostMessageErrorResponse {
|
|
|
70
71
|
}
|
|
71
72
|
/** Union of all response shapes. */
|
|
72
73
|
export type PostMessageResponse = PostMessageSuccessResponse | PostMessageErrorResponse;
|
|
74
|
+
/** A real-time change event forwarded from the parent frame to the kit iframe. */
|
|
75
|
+
export interface PostMessageEventMessage {
|
|
76
|
+
type: 'brainy:event';
|
|
77
|
+
event: BrainyChangeEvent;
|
|
78
|
+
}
|
|
73
79
|
/** Minimal window-like interface required by the transport. */
|
|
74
80
|
export interface PostMessageWindow {
|
|
75
81
|
addEventListener(type: 'message', listener: (event: MessageEvent) => void): void;
|
|
@@ -97,16 +103,16 @@ export declare class PostMessageTransport implements SDKTransport {
|
|
|
97
103
|
private readonly _listenerWindow;
|
|
98
104
|
private readonly _parentWindow;
|
|
99
105
|
/**
|
|
100
|
-
* @param targetOrigin - The origin to which requests are sent.
|
|
101
|
-
*
|
|
102
|
-
*
|
|
106
|
+
* @param targetOrigin - The origin to which requests are sent.
|
|
107
|
+
* Must be an explicit origin (e.g. `'https://workshop.soulcraft.com'`).
|
|
108
|
+
* Never use `'*'` in production — it broadcasts RPC responses to any origin.
|
|
103
109
|
* @param timeoutMs - Per-call timeout in milliseconds. Default: 30 000.
|
|
104
110
|
* @param listenerWindow - Window on which to listen for responses. Defaults to `window`.
|
|
105
111
|
* Pass a custom object in tests or non-browser environments.
|
|
106
112
|
* @param parentWindow - Window to which requests are posted. Defaults to `window.parent`.
|
|
107
113
|
* Pass a custom object in tests or non-browser environments.
|
|
108
114
|
*/
|
|
109
|
-
constructor(targetOrigin
|
|
115
|
+
constructor(targetOrigin: string, timeoutMs?: number, listenerWindow?: PostMessageWindow, parentWindow?: PostMessageWindow);
|
|
110
116
|
private _handleMessage;
|
|
111
117
|
private _generateId;
|
|
112
118
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postmessage.d.ts","sourceRoot":"","sources":["../../src/transports/postmessage.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"postmessage.d.ts","sourceRoot":"","sources":["../../src/transports/postmessage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAapE,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,OAAO,EAAE,CAAA;CAChB;AAED,iFAAiF;AACjF,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,iBAAiB,CAAA;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,6EAA6E;AAC7E,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,iBAAiB,CAAA;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,oCAAoC;AACpC,MAAM,MAAM,mBAAmB,GAAG,0BAA0B,GAAG,wBAAwB,CAAA;AAEvF,kFAAkF;AAClF,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,iBAAiB,CAAA;CACzB;AAaD,+DAA+D;AAC/D,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI,CAAA;IAChF,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI,CAAA;IACnF,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IACzD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;CACnC;AAED;;;;;;;;;GASG;AACH,qBAAa,oBAAqB,YAAW,YAAY;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiC;IAC1D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgD;IAC/E,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA+B;IAChE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD;;;;;;;;;OASG;gBAED,YAAY,EAAE,MAAM,EACpB,SAAS,SAAS,EAClB,cAAc,CAAC,EAAE,iBAAiB,EAClC,YAAY,CAAC,EAAE,iBAAiB;IAalC,OAAO,CAAC,cAAc;IAuCtB,OAAO,CAAC,WAAW;IAWnB;;;;;;;;;;OAUG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB7D;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI1D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI3D;;;;;OAKG;IACH,OAAO,IAAI,OAAO;IAIlB;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAa7B"}
|
|
@@ -40,9 +40,10 @@
|
|
|
40
40
|
*
|
|
41
41
|
* ## Security
|
|
42
42
|
*
|
|
43
|
-
* Messages are sent to `targetOrigin
|
|
44
|
-
*
|
|
45
|
-
*
|
|
43
|
+
* Messages are sent to `targetOrigin`. Always pass the explicit Workshop origin
|
|
44
|
+
* (e.g. `'https://workshop.soulcraft.com'`). Using `'*'` broadcasts to any origin
|
|
45
|
+
* and must never be used in production — it leaks Brainy RPC responses to third-party
|
|
46
|
+
* frames. The parent handler validates `event.source` and `event.origin` before dispatching.
|
|
46
47
|
*/
|
|
47
48
|
import { SDKDisconnectedError, SDKTimeoutError, SDKAuthError, SDKForbiddenError, SDKRpcError, } from '../modules/brainy/errors.js';
|
|
48
49
|
/**
|
|
@@ -65,16 +66,16 @@ export class PostMessageTransport {
|
|
|
65
66
|
_listenerWindow;
|
|
66
67
|
_parentWindow;
|
|
67
68
|
/**
|
|
68
|
-
* @param targetOrigin - The origin to which requests are sent.
|
|
69
|
-
*
|
|
70
|
-
*
|
|
69
|
+
* @param targetOrigin - The origin to which requests are sent.
|
|
70
|
+
* Must be an explicit origin (e.g. `'https://workshop.soulcraft.com'`).
|
|
71
|
+
* Never use `'*'` in production — it broadcasts RPC responses to any origin.
|
|
71
72
|
* @param timeoutMs - Per-call timeout in milliseconds. Default: 30 000.
|
|
72
73
|
* @param listenerWindow - Window on which to listen for responses. Defaults to `window`.
|
|
73
74
|
* Pass a custom object in tests or non-browser environments.
|
|
74
75
|
* @param parentWindow - Window to which requests are posted. Defaults to `window.parent`.
|
|
75
76
|
* Pass a custom object in tests or non-browser environments.
|
|
76
77
|
*/
|
|
77
|
-
constructor(targetOrigin
|
|
78
|
+
constructor(targetOrigin, timeoutMs = 30_000, listenerWindow, parentWindow) {
|
|
78
79
|
this._targetOrigin = targetOrigin;
|
|
79
80
|
this._timeoutMs = timeoutMs;
|
|
80
81
|
this._listenerWindow = listenerWindow ?? window;
|
|
@@ -85,7 +86,22 @@ export class PostMessageTransport {
|
|
|
85
86
|
// ── Internal ──────────────────────────────────────────────────────────────
|
|
86
87
|
_handleMessage(event) {
|
|
87
88
|
const data = event.data;
|
|
88
|
-
if (!data || data.type !== '
|
|
89
|
+
if (!data || typeof data.type !== 'string')
|
|
90
|
+
return;
|
|
91
|
+
// Real-time change event forwarded from the parent frame.
|
|
92
|
+
if (data.type === 'brainy:event') {
|
|
93
|
+
const msg = data;
|
|
94
|
+
for (const handler of this._eventHandlers) {
|
|
95
|
+
try {
|
|
96
|
+
handler(msg.event);
|
|
97
|
+
}
|
|
98
|
+
catch (err) {
|
|
99
|
+
console.error('[SDK/postmessage] Event handler threw', err);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
if (data.type !== 'brainy:response' || !('id' in data) || !data.id)
|
|
89
105
|
return;
|
|
90
106
|
const pending = this._pending.get(data.id);
|
|
91
107
|
if (!pending)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postmessage.js","sourceRoot":"","sources":["../../src/transports/postmessage.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"postmessage.js","sourceRoot":"","sources":["../../src/transports/postmessage.ts"],"names":[],"mappings":"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"}
|
package/dist/transports/sse.d.ts
CHANGED
|
@@ -56,8 +56,12 @@ export declare class SseTransport implements SDKTransport {
|
|
|
56
56
|
/**
|
|
57
57
|
* @param baseUrl - Base URL of the SDK server, e.g. `'https://venue.soulcraft.com'`.
|
|
58
58
|
* @param workspaceId - Optional workspace ID added as `?workspaceId=` query param.
|
|
59
|
+
* @param authToken - Optional Bearer token appended as `?token=` query param.
|
|
60
|
+
* `EventSource` does not support custom headers; token-in-URL is the only option
|
|
61
|
+
* when cookie-based auth is not available. The server must validate this parameter.
|
|
62
|
+
* Only use over HTTPS to avoid token exposure in transit.
|
|
59
63
|
*/
|
|
60
|
-
constructor(baseUrl: string, workspaceId?: string);
|
|
64
|
+
constructor(baseUrl: string, workspaceId?: string, authToken?: string);
|
|
61
65
|
/**
|
|
62
66
|
* Not supported — SSE is a server-push-only transport.
|
|
63
67
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/transports/sse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAWpE;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,YAAY;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgD;IAChF,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,CAAC,iBAAiB,CAAI;IAC7B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAK;IAC1C,OAAO,CAAC,cAAc,CAA6C;IAEnE
|
|
1
|
+
{"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/transports/sse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAWpE;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,YAAY;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgD;IAChF,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,CAAC,iBAAiB,CAAI;IAC7B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAK;IAC1C,OAAO,CAAC,cAAc,CAA6C;IAEnE;;;;;;;OAOG;gBACS,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAYrE;;;;OAIG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAO/D;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI1D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAK3D;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B;;;;;;OAMG;IACH,OAAO,IAAI,IAAI;IAWf,OAAO,CAAC,gBAAgB;IA8CxB,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,oBAAoB;CAM7B"}
|
package/dist/transports/sse.js
CHANGED
|
@@ -55,11 +55,20 @@ export class SseTransport {
|
|
|
55
55
|
/**
|
|
56
56
|
* @param baseUrl - Base URL of the SDK server, e.g. `'https://venue.soulcraft.com'`.
|
|
57
57
|
* @param workspaceId - Optional workspace ID added as `?workspaceId=` query param.
|
|
58
|
+
* @param authToken - Optional Bearer token appended as `?token=` query param.
|
|
59
|
+
* `EventSource` does not support custom headers; token-in-URL is the only option
|
|
60
|
+
* when cookie-based auth is not available. The server must validate this parameter.
|
|
61
|
+
* Only use over HTTPS to avoid token exposure in transit.
|
|
58
62
|
*/
|
|
59
|
-
constructor(baseUrl, workspaceId) {
|
|
63
|
+
constructor(baseUrl, workspaceId, authToken) {
|
|
60
64
|
const base = baseUrl.replace(/\/$/, '');
|
|
61
|
-
const params =
|
|
62
|
-
|
|
65
|
+
const params = new URLSearchParams();
|
|
66
|
+
if (workspaceId)
|
|
67
|
+
params.set('workspaceId', workspaceId);
|
|
68
|
+
if (authToken)
|
|
69
|
+
params.set('token', authToken);
|
|
70
|
+
const qs = params.toString();
|
|
71
|
+
this.eventsUrl = `${base}/api/workspace/events${qs ? `?${qs}` : ''}`;
|
|
63
72
|
this.workspaceId = workspaceId;
|
|
64
73
|
}
|
|
65
74
|
// ── SDKTransport interface ───────────────────────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/transports/sse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAUtD;;;;;;;;GAQG;AACH,MAAM,OAAO,YAAY;IACN,SAAS,CAAQ;IACjB,WAAW,CAAoB;IACxC,WAAW,GAAuB,IAAI,CAAA;IAC7B,eAAe,GAA8C,EAAE,CAAA;IACxE,MAAM,GAAG,KAAK,CAAA;IAEd,iBAAiB,GAAG,CAAC,CAAA;IACZ,oBAAoB,GAAG,EAAE,CAAA;IAClC,cAAc,GAAyC,IAAI,CAAA;IAEnE
|
|
1
|
+
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/transports/sse.ts"],"names":[],"mappings":"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"}
|
package/dist/transports/ws.d.ts
CHANGED
|
@@ -16,9 +16,13 @@
|
|
|
16
16
|
*
|
|
17
17
|
* ## Auth
|
|
18
18
|
*
|
|
19
|
-
* The capability token is sent
|
|
20
|
-
*
|
|
21
|
-
*
|
|
19
|
+
* The capability token is sent via the most appropriate mechanism for the runtime:
|
|
20
|
+
* - **Bun / Node** — `Authorization: Bearer <token>` header on the WebSocket upgrade request.
|
|
21
|
+
* - **Browser** — `?token=<token>` query parameter, since browser WebSocket constructors
|
|
22
|
+
* do not support custom headers. The server must validate this query parameter.
|
|
23
|
+
*
|
|
24
|
+
* The optional `scope` parameter is passed as a query string so Venue can select
|
|
25
|
+
* the correct tenant brain.
|
|
22
26
|
*
|
|
23
27
|
* ## Reconnection
|
|
24
28
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/transports/ws.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/transports/ws.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAkDpE;;;;;;;;;GASG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IACxD,OAAO,CAAC,MAAM,CAAI;IAElB,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgD;IAEhF,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAAoC;IAEzD,OAAO,CAAC,iBAAiB,CAAI;IAC7B,OAAO,CAAC,cAAc,CAA6C;IAEnE;;;;;;OAMG;gBAED,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EACd,SAAS,SAAS,EAClB,oBAAoB,SAAK;IAW3B;;;;;;;;;OASG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB7D;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI1D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAK3D;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B;;;;;;;;;OASG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8B9B,OAAO,CAAC,WAAW;IAuCnB,OAAO,CAAC,cAAc;IAsDtB,OAAO,CAAC,YAAY;IA2DpB,OAAO,CAAC,iBAAiB;CAO1B"}
|
package/dist/transports/ws.js
CHANGED
|
@@ -16,9 +16,13 @@
|
|
|
16
16
|
*
|
|
17
17
|
* ## Auth
|
|
18
18
|
*
|
|
19
|
-
* The capability token is sent
|
|
20
|
-
*
|
|
21
|
-
*
|
|
19
|
+
* The capability token is sent via the most appropriate mechanism for the runtime:
|
|
20
|
+
* - **Bun / Node** — `Authorization: Bearer <token>` header on the WebSocket upgrade request.
|
|
21
|
+
* - **Browser** — `?token=<token>` query parameter, since browser WebSocket constructors
|
|
22
|
+
* do not support custom headers. The server must validate this query parameter.
|
|
23
|
+
*
|
|
24
|
+
* The optional `scope` parameter is passed as a query string so Venue can select
|
|
25
|
+
* the correct tenant brain.
|
|
22
26
|
*
|
|
23
27
|
* ## Reconnection
|
|
24
28
|
*
|
|
@@ -196,12 +200,27 @@ export class WsTransport {
|
|
|
196
200
|
}
|
|
197
201
|
// ── Internal ─────────────────────────────────────────────────────────────
|
|
198
202
|
_openSocket() {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
//
|
|
203
|
-
|
|
204
|
-
|
|
203
|
+
// Build the URL with scope and — in browser environments — the auth token.
|
|
204
|
+
// Browser WebSocket constructors do not support custom headers; the token must
|
|
205
|
+
// go in the query string. Bun/Node support custom headers and prefer that path
|
|
206
|
+
// to avoid leaking tokens in server access logs.
|
|
207
|
+
const isBun = typeof process !== 'undefined' && !!process.versions?.bun;
|
|
208
|
+
const params = new URLSearchParams();
|
|
209
|
+
if (this.scope)
|
|
210
|
+
params.set('scope', this.scope);
|
|
211
|
+
if (!isBun)
|
|
212
|
+
params.set('token', this.authToken);
|
|
213
|
+
const qs = params.toString();
|
|
214
|
+
const url = qs ? `${this.wsUrl}?${qs}` : this.wsUrl;
|
|
215
|
+
if (isBun) {
|
|
216
|
+
// Bun supports custom headers on WebSocket upgrade (non-standard extension).
|
|
217
|
+
// @ts-expect-error — Bun-specific WebSocket constructor options
|
|
218
|
+
this.ws = new WebSocket(url, { headers: { Authorization: `Bearer ${this.authToken}` } });
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
// Browser — auth token already embedded in the URL query string.
|
|
222
|
+
this.ws = new WebSocket(url);
|
|
223
|
+
}
|
|
205
224
|
this.ws.binaryType = 'arraybuffer';
|
|
206
225
|
this.ws.onopen = () => {
|
|
207
226
|
// Connection established; waiting for server 'ready' message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.js","sourceRoot":"","sources":["../../src/transports/ws.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ws.js","sourceRoot":"","sources":["../../src/transports/ws.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@soulcraft/sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"description": "The unified Soulcraft platform SDK — data, auth, AI, billing, and notifications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"publishConfig": {
|
|
@@ -40,26 +40,38 @@
|
|
|
40
40
|
"@soulcraft/cortex": ">=2.1.5",
|
|
41
41
|
"@soulcraft/kit-schema": ">=2.0.0",
|
|
42
42
|
"@soulcraft/kits": ">=1.0.0",
|
|
43
|
-
"
|
|
43
|
+
"better-auth": ">=1.0.0",
|
|
44
|
+
"firebase-admin": ">=12.0.0",
|
|
45
|
+
"stripe": ">=20.0.0"
|
|
44
46
|
},
|
|
45
47
|
"peerDependenciesMeta": {
|
|
48
|
+
"@soulcraft/brainy": {
|
|
49
|
+
"optional": true
|
|
50
|
+
},
|
|
51
|
+
"@soulcraft/cortex": {
|
|
52
|
+
"optional": true
|
|
53
|
+
},
|
|
46
54
|
"@soulcraft/kit-schema": {
|
|
47
55
|
"optional": true
|
|
48
56
|
},
|
|
49
57
|
"@soulcraft/kits": {
|
|
50
58
|
"optional": true
|
|
51
59
|
},
|
|
60
|
+
"better-auth": {
|
|
61
|
+
"optional": true
|
|
62
|
+
},
|
|
52
63
|
"firebase-admin": {
|
|
53
64
|
"optional": true
|
|
65
|
+
},
|
|
66
|
+
"stripe": {
|
|
67
|
+
"optional": true
|
|
54
68
|
}
|
|
55
69
|
},
|
|
56
70
|
"dependencies": {
|
|
57
71
|
"@anthropic-ai/sdk": "^0.39.0",
|
|
58
72
|
"@msgpack/msgpack": "^3.0.0",
|
|
59
73
|
"@soulcraft/formats": "1.0.1",
|
|
60
|
-
"
|
|
61
|
-
"lru-cache": "^11.0.0",
|
|
62
|
-
"stripe": "^20.4.0"
|
|
74
|
+
"lru-cache": "^11.0.0"
|
|
63
75
|
},
|
|
64
76
|
"devDependencies": {
|
|
65
77
|
"@types/node": "^22.0.0",
|