@soulcraft/sdk 1.6.2 → 1.7.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.
@@ -59,6 +59,10 @@ export { PostMessageTransport } from '../transports/postmessage.js';
59
59
  export type { PostMessageRequest, PostMessageResponse } from '../transports/postmessage.js';
60
60
  export type { SDKTransport } from '../transports/transport.js';
61
61
  export { createBrainyProxy } from '../modules/brainy/proxy.js';
62
+ export { createAppContext } from '../modules/app-context/index.js';
63
+ export type { CreateAppContextOptions, AppContext } from '../modules/app-context/index.js';
64
+ export { WorkshopTransport } from '../transports/workshop.js';
65
+ export type { WorkshopRequest, WorkshopResponse, WorkshopStreamChunk, } from '../transports/workshop.js';
62
66
  export { createYjsProvider } from '../transports/yjs-provider.js';
63
67
  export type { YjsProvider } from '../transports/yjs-provider.js';
64
68
  export { joinHallRoom } from '../modules/hall/browser.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACnE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AAC3F,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAG9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAG9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAGhE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACrE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,GACb,MAAM,0BAA0B,CAAA;AAGjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACnE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AAC3F,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAG9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,YAAY,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAG1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAGhE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACrE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,GACb,MAAM,0BAA0B,CAAA;AAGjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,6BAA6B,CAAA"}
@@ -60,6 +60,10 @@ export { SseTransport } from '../transports/sse.js';
60
60
  export { PostMessageTransport } from '../transports/postmessage.js';
61
61
  // ── Proxy factory ─────────────────────────────────────────────────────────────
62
62
  export { createBrainyProxy } from '../modules/brainy/proxy.js';
63
+ // ── App context factory ──────────────────────────────────────────────────────
64
+ export { createAppContext } from '../modules/app-context/index.js';
65
+ // ── Workshop transport (non-brainy PostMessage relay) ────────────────────────
66
+ export { WorkshopTransport } from '../transports/workshop.js';
63
67
  // ── Y.js provider (collaborative editing) ─────────────────────────────────────
64
68
  export { createYjsProvider } from '../transports/yjs-provider.js';
65
69
  // ── Hall room client (browser WebRTC) ─────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,iFAAiF;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAInE,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAGjE,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAoBzD,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,iFAAiF;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAInE,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,gFAAgF;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAGlE,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAO7D,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAGjE,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAoBzD,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,6BAA6B,CAAA"}
package/dist/index.d.ts CHANGED
@@ -12,6 +12,7 @@
12
12
  * `@soulcraft/sdk/client`.
13
13
  */
14
14
  export type { SoulcraftSDK, SDKOptions, ServerSDKOptions, ClientSDKOptions } from './types.js';
15
+ export type { SoulcraftProduct } from './modules/auth/products.js';
15
16
  export type { SoulcraftBrainy } from './modules/brainy/types.js';
16
17
  export type { Entity, Relation, Result, AddParams, UpdateParams, RelateParams, FindParams, BrainyConfig, AggregateDefinition, DiagnosticsResult, MigrationResult, MigrateOptions, MigrationPreview, NounType, VerbType, BrainyChangeEvent, BrainyChangeEntity, BrainyChangeRelation, } from './modules/brainy/types.js';
17
18
  export type { CreateCapabilityTokenOptions, CapabilityTokenClaims, } from './modules/brainy/auth.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA8BH,iFAAiF;AACjF,qCAAqC;AACrC,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,4BAA4B,CAAA;AAuCnC,gGAAgG;AAChG,oFAAoF;AACpF,2CAA2C;AAC3C,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,0BAA0B,CAAA;AAejC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAoFjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA+BH,iFAAiF;AACjF,qCAAqC;AACrC,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,sBAAsB,GACvB,MAAM,4BAA4B,CAAA;AAuCnC,gGAAgG;AAChG,oFAAoF;AACpF,2CAA2C;AAC3C,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,0BAA0B,CAAA;AAejC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAoFjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,214 @@
1
+ /**
2
+ * @module modules/app-context
3
+ * @description Factory for building a full {@link AppRuntimeContext} from minimal options.
4
+ *
5
+ * `createAppContext()` is the single entry point kit apps use to get a fully-wired
6
+ * runtime context. Both Workshop (dev, WebContainer iframe) and Venue (production,
7
+ * same-origin HTTP) call the same factory — the only difference is which transport
8
+ * the host provides.
9
+ *
10
+ * **Workshop** passes a {@link WorkshopTransport} → all non-brainy API calls go
11
+ * through PostMessage to the parent frame's relay in PreviewFrame.svelte.
12
+ *
13
+ * **Venue** omits `workshopTransport` → all API calls use HTTP fetch to `baseUrl`.
14
+ *
15
+ * Each context property (ai, hall, pulse, files, notify, services, auth) is built
16
+ * by a dedicated proxy builder that accepts either transport mode. The brain property
17
+ * is built from the provided Brainy transport (PostMessage or HTTP) via the existing
18
+ * `createBrainyProxy()`.
19
+ *
20
+ * @example Workshop kit app (WebContainer iframe)
21
+ * ```typescript
22
+ * import { createAppContext, PostMessageTransport, WorkshopTransport } from '@soulcraft/sdk/client'
23
+ *
24
+ * const origin = document.referrer ? new URL(document.referrer).origin : '*'
25
+ * const context = createAppContext({
26
+ * transport: new PostMessageTransport(origin),
27
+ * workshopTransport: new WorkshopTransport(origin),
28
+ * })
29
+ *
30
+ * // Full API surface:
31
+ * const items = await context.brain.find({ query: 'test' })
32
+ * for await (const token of context.ai.chat([{ role: 'user', content: 'hello' }])) { ... }
33
+ * context.pulse.track('page_view', { page: '/home' })
34
+ * ```
35
+ *
36
+ * @example Venue production app (same-origin HTTP)
37
+ * ```typescript
38
+ * import { createAppContext } from '@soulcraft/sdk/client'
39
+ *
40
+ * const context = createAppContext({
41
+ * brain: existingBrainyProxy,
42
+ * auth: { user, role, can, signOut, getToken },
43
+ * kit: kitManifest,
44
+ * slot: '/app',
45
+ * credentials: true,
46
+ * })
47
+ * ```
48
+ */
49
+ import type { SDKTransport } from '../../transports/transport.js';
50
+ import { WorkshopTransport } from '../../transports/workshop.js';
51
+ import type { SoulcraftBrainy } from '../brainy/types.js';
52
+ /**
53
+ * Re-declare the kit-schema context interfaces at type level so the SDK has
54
+ * no hard dependency on kit-schema at runtime. These are structurally identical
55
+ * to the canonical types in `@soulcraft/kit-schema` — TypeScript's structural
56
+ * typing ensures compatibility without import.
57
+ */
58
+ /** @see AppAIContext in @soulcraft/kit-schema */
59
+ interface AIContext {
60
+ chat(messages: Array<{
61
+ role: 'user' | 'assistant';
62
+ content: string;
63
+ }>, opts?: {
64
+ system?: string;
65
+ model?: string;
66
+ }): AsyncIterable<string>;
67
+ embed(text: string | string[]): Promise<number[][]>;
68
+ }
69
+ /** @see AppHallContext in @soulcraft/kit-schema */
70
+ interface HallContext {
71
+ joinRoom(roomId: string, options?: {
72
+ audio?: boolean;
73
+ video?: boolean;
74
+ }): Promise<void>;
75
+ leaveRoom(): void;
76
+ readonly connected: boolean;
77
+ readonly roomId: string | null;
78
+ on(event: 'participant-joined' | 'participant-left' | 'error', handler: (...args: unknown[]) => void): () => void;
79
+ }
80
+ /** @see AppPulseContext in @soulcraft/kit-schema */
81
+ interface PulseContext {
82
+ track(event: string, properties?: Record<string, string | number | boolean>): void;
83
+ identify(userId: string, traits?: Record<string, string | number | boolean>): void;
84
+ }
85
+ /** @see AppFilesContext in @soulcraft/kit-schema */
86
+ interface FilesContext {
87
+ upload(file: File | Blob, path: string): Promise<string>;
88
+ read(path: string): Promise<Blob>;
89
+ delete(path: string): Promise<void>;
90
+ list(prefix: string): Promise<string[]>;
91
+ }
92
+ /** @see AppNotifyContext in @soulcraft/kit-schema */
93
+ interface NotifyContext {
94
+ email(to: string, subject: string, body: string, opts?: {
95
+ html?: string;
96
+ replyTo?: string;
97
+ }): Promise<void>;
98
+ sms(to: string, message: string): Promise<void>;
99
+ push(userId: string, payload: {
100
+ title: string;
101
+ body: string;
102
+ url?: string;
103
+ }): Promise<void>;
104
+ }
105
+ /** @see AppWebSocketContext in @soulcraft/kit-schema */
106
+ interface WebSocketContext {
107
+ on<T = unknown>(event: string, handler: (data: T) => void): () => void;
108
+ emit(event: string, data: unknown): void;
109
+ readonly connected: boolean;
110
+ }
111
+ /** @see AppServicesContext in @soulcraft/kit-schema */
112
+ interface ServicesContext {
113
+ bookings: unknown;
114
+ transactions: unknown;
115
+ inventory: unknown;
116
+ customers: unknown;
117
+ subscriptions: unknown;
118
+ support: unknown;
119
+ loyalty: unknown;
120
+ analytics: unknown;
121
+ }
122
+ /** @see AppAuthContext in @soulcraft/kit-schema */
123
+ interface AuthContext {
124
+ user: {
125
+ id: string;
126
+ name: string;
127
+ email: string;
128
+ } | null;
129
+ role: unknown;
130
+ can(capability: string): boolean;
131
+ signOut(): Promise<void>;
132
+ getToken(): Promise<string>;
133
+ }
134
+ /** Structurally matches AppRuntimeContext from @soulcraft/kit-schema. */
135
+ export interface AppContext {
136
+ brain: unknown;
137
+ auth: AuthContext;
138
+ kit: unknown;
139
+ ws: WebSocketContext;
140
+ services: ServicesContext;
141
+ ai: AIContext;
142
+ files: FilesContext;
143
+ notify: NotifyContext;
144
+ hall: HallContext;
145
+ pulse: PulseContext;
146
+ config?: Record<string, string | number | boolean> | undefined;
147
+ slot?: string | undefined;
148
+ }
149
+ /** HTTP transport config for fetch-based proxy calls (Venue production). */
150
+ export interface HttpProxyConfig {
151
+ /** Base URL for API calls (e.g. '' for same-origin, or 'https://venue.example.com'). */
152
+ baseUrl: string;
153
+ /** Whether to include credentials (cookies) on fetch calls. */
154
+ credentials: boolean;
155
+ }
156
+ /**
157
+ * Options for {@link createAppContext}.
158
+ */
159
+ export interface CreateAppContextOptions {
160
+ /**
161
+ * Base URL for HTTP API calls.
162
+ * Venue: same-origin (empty string). Workshop standalone: unused.
163
+ */
164
+ baseUrl?: string;
165
+ /** Pre-built Brainy proxy (if the caller already has one). */
166
+ brain?: SoulcraftBrainy;
167
+ /** Transport for Brainy RPC (used to build brain if `brain` not provided). */
168
+ transport?: SDKTransport;
169
+ /**
170
+ * PostMessage transport for non-brainy API calls in Workshop dev.
171
+ * When provided, all non-brainy calls go through PostMessage.
172
+ * When omitted, all calls use HTTP fetch to `baseUrl`.
173
+ */
174
+ workshopTransport?: WorkshopTransport;
175
+ /** Auth context injected by the host. */
176
+ auth?: Partial<AuthContext>;
177
+ /** Kit metadata injected by the host. */
178
+ kit?: unknown;
179
+ /** Slot path for file operations. */
180
+ slot?: string;
181
+ /** Site config overrides. */
182
+ config?: Record<string, string | number | boolean>;
183
+ /** Include credentials on fetch calls (Venue same-origin). Default: false. */
184
+ credentials?: boolean;
185
+ }
186
+ /**
187
+ * Build a full {@link AppContext} (structurally matches `AppRuntimeContext`)
188
+ * from minimal options.
189
+ *
190
+ * @param options - Configuration for the app context.
191
+ * @returns A fully-wired app runtime context.
192
+ *
193
+ * @example Workshop kit app
194
+ * ```typescript
195
+ * const context = createAppContext({
196
+ * transport: new PostMessageTransport(origin),
197
+ * workshopTransport: new WorkshopTransport(origin),
198
+ * })
199
+ * export const brainy = context.brain // backward compatible
200
+ * ```
201
+ *
202
+ * @example Venue production app
203
+ * ```typescript
204
+ * const context = createAppContext({
205
+ * brain: existingProxy,
206
+ * auth: appAuth,
207
+ * kit: kitManifest,
208
+ * credentials: true,
209
+ * })
210
+ * ```
211
+ */
212
+ export declare function createAppContext(options: CreateAppContextOptions): AppContext;
213
+ export {};
214
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/app-context/index.ts"],"names":[],"mappings":"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"}