@slates/proto 1.0.0-rc.1 → 1.0.0-rc.10

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/index.cjs ADDED
@@ -0,0 +1,1103 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/index.ts
31
+ var index_exports = {};
32
+ __export(index_exports, {
33
+ SLATES_PROTOCOL_VERSION: () => SLATES_PROTOCOL_VERSION,
34
+ SlatesProviderProtoHandlerManager: () => SlatesProviderProtoHandlerManager,
35
+ createSlatesProviderProtoHandler: () => createSlatesProviderProtoHandler,
36
+ slatesAction: () => slatesAction,
37
+ slatesActionBase: () => slatesActionBase,
38
+ slatesActionRequestsByMethod: () => slatesActionRequestsByMethod,
39
+ slatesActionResponsesByMethod: () => slatesActionResponsesByMethod,
40
+ slatesActionScopeClause: () => slatesActionScopeClause,
41
+ slatesActionScopes: () => slatesActionScopes,
42
+ slatesActionTool: () => slatesActionTool,
43
+ slatesActionTrigger: () => slatesActionTrigger,
44
+ slatesAuthNotificationsByMethod: () => slatesAuthNotificationsByMethod,
45
+ slatesAuthRequestsByMethod: () => slatesAuthRequestsByMethod,
46
+ slatesAuthResponsesByMethod: () => slatesAuthResponsesByMethod,
47
+ slatesAuthenticationMethod: () => slatesAuthenticationMethod,
48
+ slatesConfigNotificationsByMethod: () => slatesConfigNotificationsByMethod,
49
+ slatesConfigRequestsByMethod: () => slatesConfigRequestsByMethod,
50
+ slatesConfigResponsesByMethod: () => slatesConfigResponsesByMethod,
51
+ slatesControlFlowNotificationsByMethod: () => slatesControlFlowNotificationsByMethod,
52
+ slatesIdentifyRequestsByMethod: () => slatesIdentifyRequestsByMethod,
53
+ slatesIdentifyResponsesByMethod: () => slatesIdentifyResponsesByMethod,
54
+ slatesMessageActionGetRequest: () => slatesMessageActionGetRequest,
55
+ slatesMessageActionGetResponse: () => slatesMessageActionGetResponse,
56
+ slatesMessageActionInvokeRequest: () => slatesMessageActionInvokeRequest,
57
+ slatesMessageActionInvokeResponse: () => slatesMessageActionInvokeResponse,
58
+ slatesMessageActionTriggerEventMapRequest: () => slatesMessageActionTriggerEventMapRequest,
59
+ slatesMessageActionTriggerEventMapResponse: () => slatesMessageActionTriggerEventMapResponse,
60
+ slatesMessageActionTriggerEventsPollRequest: () => slatesMessageActionTriggerEventsPollRequest,
61
+ slatesMessageActionTriggerEventsPollResponse: () => slatesMessageActionTriggerEventsPollResponse,
62
+ slatesMessageActionTriggerWebhookHandleRequest: () => slatesMessageActionTriggerWebhookHandleRequest,
63
+ slatesMessageActionTriggerWebhookHandleResponse: () => slatesMessageActionTriggerWebhookHandleResponse,
64
+ slatesMessageActionTriggerWebhookRegisterRequest: () => slatesMessageActionTriggerWebhookRegisterRequest,
65
+ slatesMessageActionTriggerWebhookRegisterResponse: () => slatesMessageActionTriggerWebhookRegisterResponse,
66
+ slatesMessageActionTriggerWebhookUnregisterRequest: () => slatesMessageActionTriggerWebhookUnregisterRequest,
67
+ slatesMessageActionTriggerWebhookUnregisterResponse: () => slatesMessageActionTriggerWebhookUnregisterResponse,
68
+ slatesMessageActionsListRequest: () => slatesMessageActionsListRequest,
69
+ slatesMessageActionsListResponse: () => slatesMessageActionsListResponse,
70
+ slatesMessageAuthAuthorizationCallbackHandleRequest: () => slatesMessageAuthAuthorizationCallbackHandleRequest,
71
+ slatesMessageAuthAuthorizationCallbackHandleResponse: () => slatesMessageAuthAuthorizationCallbackHandleResponse,
72
+ slatesMessageAuthAuthorizationUrlGetRequest: () => slatesMessageAuthAuthorizationUrlGetRequest,
73
+ slatesMessageAuthAuthorizationUrlGetResponse: () => slatesMessageAuthAuthorizationUrlGetResponse,
74
+ slatesMessageAuthDefaultInputGetRequest: () => slatesMessageAuthDefaultInputGetRequest,
75
+ slatesMessageAuthDefaultInputGetResponse: () => slatesMessageAuthDefaultInputGetResponse,
76
+ slatesMessageAuthInputChangedRequest: () => slatesMessageAuthInputChangedRequest,
77
+ slatesMessageAuthInputChangedResponse: () => slatesMessageAuthInputChangedResponse,
78
+ slatesMessageAuthMethodGetRequest: () => slatesMessageAuthMethodGetRequest,
79
+ slatesMessageAuthMethodGetResponse: () => slatesMessageAuthMethodGetResponse,
80
+ slatesMessageAuthMethodsListRequest: () => slatesMessageAuthMethodsListRequest,
81
+ slatesMessageAuthMethodsListResponse: () => slatesMessageAuthMethodsListResponse,
82
+ slatesMessageAuthOutputGetRequest: () => slatesMessageAuthOutputGetRequest,
83
+ slatesMessageAuthOutputGetResponse: () => slatesMessageAuthOutputGetResponse,
84
+ slatesMessageAuthProfileGetRequest: () => slatesMessageAuthProfileGetRequest,
85
+ slatesMessageAuthProfileGetResponse: () => slatesMessageAuthProfileGetResponse,
86
+ slatesMessageAuthTokenRefreshHandleRequest: () => slatesMessageAuthTokenRefreshHandleRequest,
87
+ slatesMessageAuthTokenRefreshHandleResponse: () => slatesMessageAuthTokenRefreshHandleResponse,
88
+ slatesMessageConfigChangedRequest: () => slatesMessageConfigChangedRequest,
89
+ slatesMessageConfigChangedResponse: () => slatesMessageConfigChangedResponse,
90
+ slatesMessageConfigDefaultGetRequest: () => slatesMessageConfigDefaultGetRequest,
91
+ slatesMessageConfigDefaultGetResponse: () => slatesMessageConfigDefaultGetResponse,
92
+ slatesMessageConfigSchemaGetRequest: () => slatesMessageConfigSchemaGetRequest,
93
+ slatesMessageConfigSchemaGetResponse: () => slatesMessageConfigSchemaGetResponse,
94
+ slatesMessageHelloNotification: () => slatesMessageHelloNotification,
95
+ slatesMessageProviderIdentifyRequest: () => slatesMessageProviderIdentifyRequest,
96
+ slatesMessageProviderIdentifyResponse: () => slatesMessageProviderIdentifyResponse,
97
+ slatesMessageSessionStartNotification: () => slatesMessageSessionStartNotification,
98
+ slatesMessageSetAuthNotification: () => slatesMessageSetAuthNotification,
99
+ slatesMessageSetConfigNotification: () => slatesMessageSetConfigNotification,
100
+ slatesMessageSetParticipantsNotification: () => slatesMessageSetParticipantsNotification,
101
+ slatesNotificationsByMethod: () => slatesNotificationsByMethod,
102
+ slatesParticipant: () => slatesParticipant,
103
+ slatesRequestTrace: () => slatesRequestTrace,
104
+ slatesRequestTraceTextBody: () => slatesRequestTraceTextBody,
105
+ slatesRequestsByMethod: () => slatesRequestsByMethod,
106
+ slatesResponsesByMethod: () => slatesResponsesByMethod,
107
+ withRequestTraces: () => withRequestTraces
108
+ });
109
+ module.exports = __toCommonJS(index_exports);
110
+
111
+ // src/handler/provider.ts
112
+ var import_error = require("@lowerdeck/error");
113
+
114
+ // src/messages/action.ts
115
+ var import_zod5 = __toESM(require("zod"), 1);
116
+
117
+ // src/types/action.ts
118
+ var import_zod = __toESM(require("zod"), 1);
119
+ var slatesActionScopeClause = import_zod.default.object({
120
+ OR: import_zod.default.array(import_zod.default.string()).min(1)
121
+ });
122
+ var slatesActionScopes = import_zod.default.object({
123
+ AND: import_zod.default.array(slatesActionScopeClause).min(1)
124
+ });
125
+ var slatesActionBase = import_zod.default.object({
126
+ id: import_zod.default.string(),
127
+ name: import_zod.default.string(),
128
+ description: import_zod.default.string().optional(),
129
+ instructions: import_zod.default.array(import_zod.default.string()).optional(),
130
+ constraints: import_zod.default.array(import_zod.default.string()).optional(),
131
+ tags: import_zod.default.object({
132
+ destructive: import_zod.default.boolean().optional(),
133
+ readOnly: import_zod.default.boolean().optional()
134
+ }).optional(),
135
+ metadata: import_zod.default.record(import_zod.default.string(), import_zod.default.any()).optional(),
136
+ scopes: slatesActionScopes.optional(),
137
+ inputSchema: import_zod.default.record(import_zod.default.string(), import_zod.default.any()),
138
+ outputSchema: import_zod.default.record(import_zod.default.string(), import_zod.default.any())
139
+ });
140
+ var slatesActionTool = slatesActionBase.extend({
141
+ type: import_zod.default.literal("action.tool"),
142
+ capabilities: import_zod.default.object({})
143
+ });
144
+ var slatesActionTrigger = slatesActionBase.extend({
145
+ type: import_zod.default.literal("action.trigger"),
146
+ capabilities: import_zod.default.object({}),
147
+ invocation: import_zod.default.union([
148
+ import_zod.default.object({
149
+ type: import_zod.default.literal("polling"),
150
+ intervalSeconds: import_zod.default.number().min(60 * 10)
151
+ }),
152
+ import_zod.default.object({
153
+ type: import_zod.default.literal("webhook"),
154
+ autoRegistration: import_zod.default.boolean(),
155
+ autoUnregistration: import_zod.default.boolean()
156
+ })
157
+ ])
158
+ });
159
+ var slatesAction = import_zod.default.union([slatesActionTool, slatesActionTrigger]);
160
+
161
+ // src/types/authMethod.ts
162
+ var import_zod2 = __toESM(require("zod"), 1);
163
+ var slatesAuthenticationMethod = import_zod2.default.object({
164
+ id: import_zod2.default.string(),
165
+ name: import_zod2.default.string(),
166
+ type: import_zod2.default.union([
167
+ import_zod2.default.literal("auth.oauth"),
168
+ import_zod2.default.literal("auth.token"),
169
+ import_zod2.default.literal("auth.service_account"),
170
+ import_zod2.default.literal("auth.custom")
171
+ ]),
172
+ scopes: import_zod2.default.array(
173
+ import_zod2.default.object({
174
+ id: import_zod2.default.string(),
175
+ title: import_zod2.default.string(),
176
+ description: import_zod2.default.string().optional(),
177
+ defaultChecked: import_zod2.default.boolean().optional()
178
+ })
179
+ ).optional(),
180
+ inputSchema: import_zod2.default.record(import_zod2.default.string(), import_zod2.default.any()),
181
+ outputSchema: import_zod2.default.record(import_zod2.default.string(), import_zod2.default.any()),
182
+ capabilities: import_zod2.default.object({
183
+ getDefaultInput: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
184
+ handleChangedInput: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
185
+ handleTokenRefresh: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
186
+ getProfile: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional()
187
+ }),
188
+ docs: import_zod2.default.object({
189
+ oauthDocsLink: import_zod2.default.string().optional(),
190
+ oauthScopesLink: import_zod2.default.string().optional(),
191
+ tokenDocsLink: import_zod2.default.string().optional(),
192
+ serviceAccountDocsLink: import_zod2.default.string().optional(),
193
+ customAuthDocsLink: import_zod2.default.string().optional()
194
+ }).optional()
195
+ });
196
+
197
+ // src/types/participant.ts
198
+ var import_zod3 = __toESM(require("zod"), 1);
199
+ var slatesParticipant = import_zod3.default.object({
200
+ type: import_zod3.default.union([import_zod3.default.literal("consumer"), import_zod3.default.literal("hub")]),
201
+ id: import_zod3.default.string(),
202
+ name: import_zod3.default.string(),
203
+ description: import_zod3.default.string().optional(),
204
+ metadata: import_zod3.default.record(import_zod3.default.string(), import_zod3.default.any()).optional()
205
+ });
206
+
207
+ // src/messages/tracing.ts
208
+ var import_zod4 = __toESM(require("zod"), 1);
209
+ var slatesRequestTraceTextBody = import_zod4.default.object({
210
+ contentType: import_zod4.default.string().optional(),
211
+ text: import_zod4.default.string(),
212
+ truncated: import_zod4.default.boolean().optional()
213
+ });
214
+ var slatesRequestTrace = import_zod4.default.object({
215
+ startedAt: import_zod4.default.string(),
216
+ durationMs: import_zod4.default.number().nonnegative(),
217
+ request: import_zod4.default.object({
218
+ method: import_zod4.default.string(),
219
+ url: import_zod4.default.string(),
220
+ headers: import_zod4.default.record(import_zod4.default.string(), import_zod4.default.string()).optional(),
221
+ body: slatesRequestTraceTextBody.optional()
222
+ }),
223
+ response: import_zod4.default.object({
224
+ status: import_zod4.default.number(),
225
+ statusText: import_zod4.default.string().optional(),
226
+ headers: import_zod4.default.record(import_zod4.default.string(), import_zod4.default.string()).optional(),
227
+ body: slatesRequestTraceTextBody.optional()
228
+ }).optional(),
229
+ error: import_zod4.default.object({
230
+ code: import_zod4.default.string().optional(),
231
+ message: import_zod4.default.string()
232
+ }).optional()
233
+ });
234
+ var withRequestTraces = (shape) => import_zod4.default.object({
235
+ ...shape,
236
+ requestTraces: import_zod4.default.array(slatesRequestTrace).optional()
237
+ });
238
+
239
+ // src/messages/action.ts
240
+ var slatesMessageActionsListRequest = import_zod5.default.object({
241
+ jsonrpc: import_zod5.default.literal("2.0"),
242
+ method: import_zod5.default.literal("slates/actions.list"),
243
+ id: import_zod5.default.string(),
244
+ params: import_zod5.default.object({})
245
+ });
246
+ var slatesMessageActionsListResponse = import_zod5.default.object({
247
+ jsonrpc: import_zod5.default.literal("2.0"),
248
+ id: import_zod5.default.string(),
249
+ result: import_zod5.default.object({
250
+ actions: import_zod5.default.array(slatesAction)
251
+ })
252
+ });
253
+ var slatesMessageActionGetRequest = import_zod5.default.object({
254
+ jsonrpc: import_zod5.default.literal("2.0"),
255
+ method: import_zod5.default.literal("slates/action.get"),
256
+ id: import_zod5.default.string(),
257
+ params: import_zod5.default.object({
258
+ actionId: import_zod5.default.string()
259
+ })
260
+ });
261
+ var slatesMessageActionGetResponse = import_zod5.default.object({
262
+ jsonrpc: import_zod5.default.literal("2.0"),
263
+ id: import_zod5.default.string(),
264
+ result: import_zod5.default.object({
265
+ action: slatesAction
266
+ })
267
+ });
268
+ var slatesMessageActionInvokeRequest = import_zod5.default.object({
269
+ jsonrpc: import_zod5.default.literal("2.0"),
270
+ method: import_zod5.default.literal("slates/action.tool.invoke"),
271
+ id: import_zod5.default.string(),
272
+ params: import_zod5.default.object({
273
+ actionId: import_zod5.default.string(),
274
+ input: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
275
+ })
276
+ });
277
+ var slatesMessageActionInvokeResponse = import_zod5.default.object({
278
+ jsonrpc: import_zod5.default.literal("2.0"),
279
+ id: import_zod5.default.string(),
280
+ result: withRequestTraces({
281
+ output: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any()),
282
+ message: import_zod5.default.string().optional(),
283
+ attachments: import_zod5.default.array(
284
+ import_zod5.default.object({
285
+ mimeType: import_zod5.default.string().optional(),
286
+ content: import_zod5.default.union([
287
+ import_zod5.default.object({
288
+ type: import_zod5.default.literal("url"),
289
+ url: import_zod5.default.string()
290
+ }),
291
+ import_zod5.default.object({
292
+ type: import_zod5.default.literal("content"),
293
+ encoding: import_zod5.default.union([import_zod5.default.literal("base64"), import_zod5.default.literal("utf-8")]),
294
+ content: import_zod5.default.string()
295
+ })
296
+ ])
297
+ })
298
+ ).optional()
299
+ })
300
+ });
301
+ var slatesMessageActionTriggerEventMapRequest = import_zod5.default.object({
302
+ jsonrpc: import_zod5.default.literal("2.0"),
303
+ method: import_zod5.default.literal("slates/action.trigger.map_event"),
304
+ id: import_zod5.default.string(),
305
+ params: import_zod5.default.object({
306
+ actionId: import_zod5.default.string(),
307
+ input: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
308
+ })
309
+ });
310
+ var slatesMessageActionTriggerEventMapResponse = import_zod5.default.object({
311
+ jsonrpc: import_zod5.default.literal("2.0"),
312
+ id: import_zod5.default.string(),
313
+ result: withRequestTraces({
314
+ type: import_zod5.default.string(),
315
+ id: import_zod5.default.string(),
316
+ output: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
317
+ })
318
+ });
319
+ var slatesMessageActionTriggerEventsPollRequest = import_zod5.default.object({
320
+ jsonrpc: import_zod5.default.literal("2.0"),
321
+ method: import_zod5.default.literal("slates/action.trigger.poll_events"),
322
+ id: import_zod5.default.string(),
323
+ params: import_zod5.default.object({
324
+ actionId: import_zod5.default.string(),
325
+ state: import_zod5.default.any().nullable()
326
+ })
327
+ });
328
+ var slatesMessageActionTriggerEventsPollResponse = import_zod5.default.object({
329
+ jsonrpc: import_zod5.default.literal("2.0"),
330
+ id: import_zod5.default.string(),
331
+ result: withRequestTraces({
332
+ inputs: import_zod5.default.array(import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())),
333
+ updatedState: import_zod5.default.any().nullable().optional()
334
+ })
335
+ });
336
+ var slatesMessageActionTriggerWebhookHandleRequest = import_zod5.default.object({
337
+ jsonrpc: import_zod5.default.literal("2.0"),
338
+ method: import_zod5.default.literal("slates/action.trigger.webhook_handle"),
339
+ id: import_zod5.default.string(),
340
+ params: import_zod5.default.object({
341
+ actionId: import_zod5.default.string(),
342
+ url: import_zod5.default.string(),
343
+ method: import_zod5.default.string(),
344
+ headers: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.string()),
345
+ body: import_zod5.default.object({
346
+ encoding: import_zod5.default.literal("base64"),
347
+ content: import_zod5.default.string()
348
+ }).nullable(),
349
+ state: import_zod5.default.any().nullable()
350
+ })
351
+ });
352
+ var slatesMessageActionTriggerWebhookHandleResponse = import_zod5.default.object({
353
+ jsonrpc: import_zod5.default.literal("2.0"),
354
+ id: import_zod5.default.string(),
355
+ result: withRequestTraces({
356
+ inputs: import_zod5.default.array(import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())),
357
+ updatedState: import_zod5.default.any().nullable().optional()
358
+ })
359
+ });
360
+ var slatesMessageActionTriggerWebhookRegisterRequest = import_zod5.default.object({
361
+ jsonrpc: import_zod5.default.literal("2.0"),
362
+ method: import_zod5.default.literal("slates/action.trigger.webhook_register"),
363
+ id: import_zod5.default.string(),
364
+ params: import_zod5.default.object({
365
+ actionId: import_zod5.default.string(),
366
+ webhookBaseUrl: import_zod5.default.string()
367
+ })
368
+ });
369
+ var slatesMessageActionTriggerWebhookRegisterResponse = import_zod5.default.object({
370
+ jsonrpc: import_zod5.default.literal("2.0"),
371
+ id: import_zod5.default.string(),
372
+ result: withRequestTraces({
373
+ registrationDetails: import_zod5.default.any(),
374
+ state: import_zod5.default.any().optional()
375
+ })
376
+ });
377
+ var slatesMessageActionTriggerWebhookUnregisterRequest = import_zod5.default.object({
378
+ jsonrpc: import_zod5.default.literal("2.0"),
379
+ method: import_zod5.default.literal("slates/action.trigger.webhook_unregister"),
380
+ id: import_zod5.default.string(),
381
+ params: import_zod5.default.object({
382
+ actionId: import_zod5.default.string(),
383
+ webhookBaseUrl: import_zod5.default.string(),
384
+ registrationDetails: import_zod5.default.any(),
385
+ state: import_zod5.default.any().optional()
386
+ })
387
+ });
388
+ var slatesMessageActionTriggerWebhookUnregisterResponse = import_zod5.default.object({
389
+ jsonrpc: import_zod5.default.literal("2.0"),
390
+ id: import_zod5.default.string(),
391
+ result: withRequestTraces({})
392
+ });
393
+ var slatesActionResponsesByMethod = {
394
+ "slates/actions.list": slatesMessageActionsListResponse,
395
+ "slates/action.get": slatesMessageActionGetResponse,
396
+ "slates/action.tool.invoke": slatesMessageActionInvokeResponse,
397
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapResponse,
398
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollResponse,
399
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleResponse,
400
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterResponse,
401
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterResponse
402
+ };
403
+ var slatesActionRequestsByMethod = {
404
+ "slates/actions.list": slatesMessageActionsListRequest,
405
+ "slates/action.get": slatesMessageActionGetRequest,
406
+ "slates/action.tool.invoke": slatesMessageActionInvokeRequest,
407
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapRequest,
408
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollRequest,
409
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleRequest,
410
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterRequest,
411
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterRequest
412
+ };
413
+
414
+ // src/messages/auth.ts
415
+ var import_zod6 = __toESM(require("zod"), 1);
416
+ var slatesMessageSetAuthNotification = import_zod6.default.object({
417
+ jsonrpc: import_zod6.default.literal("2.0"),
418
+ method: import_zod6.default.literal("slates/auth.set"),
419
+ params: import_zod6.default.object({
420
+ authenticationMethodId: import_zod6.default.string(),
421
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
422
+ })
423
+ });
424
+ var slatesMessageAuthMethodsListRequest = import_zod6.default.object({
425
+ jsonrpc: import_zod6.default.literal("2.0"),
426
+ method: import_zod6.default.literal("slates/auth.methods.list"),
427
+ id: import_zod6.default.string(),
428
+ params: import_zod6.default.object({})
429
+ });
430
+ var slatesMessageAuthMethodsListResponse = import_zod6.default.object({
431
+ jsonrpc: import_zod6.default.literal("2.0"),
432
+ id: import_zod6.default.string(),
433
+ result: import_zod6.default.object({
434
+ authenticationMethods: import_zod6.default.array(slatesAuthenticationMethod)
435
+ })
436
+ });
437
+ var slatesMessageAuthMethodGetRequest = import_zod6.default.object({
438
+ jsonrpc: import_zod6.default.literal("2.0"),
439
+ method: import_zod6.default.literal("slates/auth.method.get"),
440
+ id: import_zod6.default.string(),
441
+ params: import_zod6.default.object({
442
+ authenticationMethodId: import_zod6.default.string()
443
+ })
444
+ });
445
+ var slatesMessageAuthMethodGetResponse = import_zod6.default.object({
446
+ jsonrpc: import_zod6.default.literal("2.0"),
447
+ id: import_zod6.default.string(),
448
+ result: import_zod6.default.object({
449
+ authenticationMethod: slatesAuthenticationMethod
450
+ })
451
+ });
452
+ var slatesMessageAuthInputChangedRequest = import_zod6.default.object({
453
+ jsonrpc: import_zod6.default.literal("2.0"),
454
+ method: import_zod6.default.literal("slates/auth.input.changed"),
455
+ id: import_zod6.default.string(),
456
+ params: import_zod6.default.object({
457
+ authenticationMethodId: import_zod6.default.string(),
458
+ previousInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).nullable(),
459
+ newInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
460
+ })
461
+ });
462
+ var slatesMessageAuthInputChangedResponse = import_zod6.default.object({
463
+ jsonrpc: import_zod6.default.literal("2.0"),
464
+ id: import_zod6.default.string(),
465
+ result: withRequestTraces({
466
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
467
+ })
468
+ });
469
+ var slatesMessageAuthDefaultInputGetRequest = import_zod6.default.object({
470
+ jsonrpc: import_zod6.default.literal("2.0"),
471
+ method: import_zod6.default.literal("slates/auth.input.get_default"),
472
+ id: import_zod6.default.string(),
473
+ params: import_zod6.default.object({
474
+ authenticationMethodId: import_zod6.default.string()
475
+ })
476
+ });
477
+ var slatesMessageAuthDefaultInputGetResponse = import_zod6.default.object({
478
+ jsonrpc: import_zod6.default.literal("2.0"),
479
+ id: import_zod6.default.string(),
480
+ result: withRequestTraces({
481
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
482
+ })
483
+ });
484
+ var slatesMessageAuthAuthorizationUrlGetRequest = import_zod6.default.object({
485
+ jsonrpc: import_zod6.default.literal("2.0"),
486
+ method: import_zod6.default.literal("slates/auth.authorization_url.get"),
487
+ id: import_zod6.default.string(),
488
+ params: import_zod6.default.object({
489
+ authenticationMethodId: import_zod6.default.string(),
490
+ redirectUri: import_zod6.default.string(),
491
+ state: import_zod6.default.string(),
492
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
493
+ clientId: import_zod6.default.string(),
494
+ clientSecret: import_zod6.default.string(),
495
+ scopes: import_zod6.default.array(import_zod6.default.string())
496
+ })
497
+ });
498
+ var slatesMessageAuthAuthorizationUrlGetResponse = import_zod6.default.object({
499
+ jsonrpc: import_zod6.default.literal("2.0"),
500
+ id: import_zod6.default.string(),
501
+ result: withRequestTraces({
502
+ authorizationUrl: import_zod6.default.string(),
503
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
504
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
505
+ })
506
+ });
507
+ var slatesMessageAuthAuthorizationCallbackHandleRequest = import_zod6.default.object({
508
+ jsonrpc: import_zod6.default.literal("2.0"),
509
+ method: import_zod6.default.literal("slates/auth.authorization_callback.handle"),
510
+ id: import_zod6.default.string(),
511
+ params: import_zod6.default.object({
512
+ authenticationMethodId: import_zod6.default.string(),
513
+ code: import_zod6.default.string(),
514
+ state: import_zod6.default.string(),
515
+ redirectUri: import_zod6.default.string(),
516
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
517
+ clientId: import_zod6.default.string(),
518
+ clientSecret: import_zod6.default.string(),
519
+ scopes: import_zod6.default.array(import_zod6.default.string()),
520
+ callbackParams: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.string()).optional(),
521
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
522
+ })
523
+ });
524
+ var slatesMessageAuthAuthorizationCallbackHandleResponse = import_zod6.default.object({
525
+ jsonrpc: import_zod6.default.literal("2.0"),
526
+ id: import_zod6.default.string(),
527
+ result: withRequestTraces({
528
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
529
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
530
+ scopes: import_zod6.default.array(import_zod6.default.string()).optional()
531
+ })
532
+ });
533
+ var slatesMessageAuthTokenRefreshHandleRequest = import_zod6.default.object({
534
+ jsonrpc: import_zod6.default.literal("2.0"),
535
+ method: import_zod6.default.literal("slates/auth.token_refresh.handle"),
536
+ id: import_zod6.default.string(),
537
+ params: import_zod6.default.object({
538
+ authenticationMethodId: import_zod6.default.string(),
539
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
540
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
541
+ clientId: import_zod6.default.string(),
542
+ clientSecret: import_zod6.default.string(),
543
+ scopes: import_zod6.default.array(import_zod6.default.string())
544
+ })
545
+ });
546
+ var slatesMessageAuthTokenRefreshHandleResponse = import_zod6.default.object({
547
+ jsonrpc: import_zod6.default.literal("2.0"),
548
+ id: import_zod6.default.string(),
549
+ result: withRequestTraces({
550
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
551
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
552
+ })
553
+ });
554
+ var slatesMessageAuthProfileGetRequest = import_zod6.default.object({
555
+ jsonrpc: import_zod6.default.literal("2.0"),
556
+ method: import_zod6.default.literal("slates/auth.profile.get"),
557
+ id: import_zod6.default.string(),
558
+ params: import_zod6.default.object({
559
+ authenticationMethodId: import_zod6.default.string(),
560
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
561
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
562
+ scopes: import_zod6.default.array(import_zod6.default.string())
563
+ })
564
+ });
565
+ var slatesMessageAuthProfileGetResponse = import_zod6.default.object({
566
+ jsonrpc: import_zod6.default.literal("2.0"),
567
+ id: import_zod6.default.string(),
568
+ result: withRequestTraces({
569
+ profile: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
570
+ })
571
+ });
572
+ var slatesMessageAuthOutputGetRequest = import_zod6.default.object({
573
+ jsonrpc: import_zod6.default.literal("2.0"),
574
+ method: import_zod6.default.literal("slates/auth.output.get"),
575
+ id: import_zod6.default.string(),
576
+ params: import_zod6.default.object({
577
+ authenticationMethodId: import_zod6.default.string(),
578
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
579
+ })
580
+ });
581
+ var slatesMessageAuthOutputGetResponse = import_zod6.default.object({
582
+ jsonrpc: import_zod6.default.literal("2.0"),
583
+ id: import_zod6.default.string(),
584
+ result: withRequestTraces({
585
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
586
+ })
587
+ });
588
+ var slatesAuthResponsesByMethod = {
589
+ "slates/auth.methods.list": slatesMessageAuthMethodsListResponse,
590
+ "slates/auth.method.get": slatesMessageAuthMethodGetResponse,
591
+ "slates/auth.input.changed": slatesMessageAuthInputChangedResponse,
592
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetResponse,
593
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetResponse,
594
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleResponse,
595
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleResponse,
596
+ "slates/auth.profile.get": slatesMessageAuthProfileGetResponse,
597
+ "slates/auth.output.get": slatesMessageAuthOutputGetResponse
598
+ };
599
+ var slatesAuthRequestsByMethod = {
600
+ "slates/auth.methods.list": slatesMessageAuthMethodsListRequest,
601
+ "slates/auth.method.get": slatesMessageAuthMethodGetRequest,
602
+ "slates/auth.input.changed": slatesMessageAuthInputChangedRequest,
603
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetRequest,
604
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetRequest,
605
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleRequest,
606
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleRequest,
607
+ "slates/auth.profile.get": slatesMessageAuthProfileGetRequest,
608
+ "slates/auth.output.get": slatesMessageAuthOutputGetRequest
609
+ };
610
+ var slatesAuthNotificationsByMethod = {
611
+ "slates/auth.set": slatesMessageSetAuthNotification
612
+ };
613
+
614
+ // src/messages/config.ts
615
+ var import_zod7 = __toESM(require("zod"), 1);
616
+ var slatesMessageSetConfigNotification = import_zod7.default.object({
617
+ jsonrpc: import_zod7.default.literal("2.0"),
618
+ method: import_zod7.default.literal("slates/config.set"),
619
+ params: import_zod7.default.object({
620
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
621
+ })
622
+ });
623
+ var slatesMessageConfigSchemaGetRequest = import_zod7.default.object({
624
+ jsonrpc: import_zod7.default.literal("2.0"),
625
+ method: import_zod7.default.literal("slates/config.schema.get"),
626
+ id: import_zod7.default.string(),
627
+ params: import_zod7.default.object({})
628
+ });
629
+ var slatesMessageConfigSchemaGetResponse = import_zod7.default.object({
630
+ jsonrpc: import_zod7.default.literal("2.0"),
631
+ id: import_zod7.default.string(),
632
+ result: import_zod7.default.object({
633
+ schema: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
634
+ })
635
+ });
636
+ var slatesMessageConfigChangedRequest = import_zod7.default.object({
637
+ jsonrpc: import_zod7.default.literal("2.0"),
638
+ method: import_zod7.default.literal("slates/config.changed"),
639
+ id: import_zod7.default.string(),
640
+ params: import_zod7.default.object({
641
+ previousConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable(),
642
+ newConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
643
+ })
644
+ });
645
+ var slatesMessageConfigChangedResponse = import_zod7.default.object({
646
+ jsonrpc: import_zod7.default.literal("2.0"),
647
+ id: import_zod7.default.string(),
648
+ result: withRequestTraces({
649
+ success: import_zod7.default.boolean(),
650
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).optional(),
651
+ errors: import_zod7.default.array(
652
+ import_zod7.default.object({
653
+ code: import_zod7.default.string(),
654
+ message: import_zod7.default.string(),
655
+ path: import_zod7.default.array(import_zod7.default.string()).optional()
656
+ })
657
+ ).optional()
658
+ })
659
+ });
660
+ var slatesMessageConfigDefaultGetRequest = import_zod7.default.object({
661
+ jsonrpc: import_zod7.default.literal("2.0"),
662
+ method: import_zod7.default.literal("slates/config.get_default"),
663
+ id: import_zod7.default.string(),
664
+ params: import_zod7.default.object({})
665
+ });
666
+ var slatesMessageConfigDefaultGetResponse = import_zod7.default.object({
667
+ jsonrpc: import_zod7.default.literal("2.0"),
668
+ id: import_zod7.default.string(),
669
+ result: withRequestTraces({
670
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable()
671
+ })
672
+ });
673
+ var slatesConfigResponsesByMethod = {
674
+ "slates/config.schema.get": slatesMessageConfigSchemaGetResponse,
675
+ "slates/config.get_default": slatesMessageConfigDefaultGetResponse,
676
+ "slates/config.changed": slatesMessageConfigChangedResponse
677
+ };
678
+ var slatesConfigRequestsByMethod = {
679
+ "slates/config.schema.get": slatesMessageConfigSchemaGetRequest,
680
+ "slates/config.get_default": slatesMessageConfigDefaultGetRequest,
681
+ "slates/config.changed": slatesMessageConfigChangedRequest
682
+ };
683
+ var slatesConfigNotificationsByMethod = {
684
+ "slates/config.set": slatesMessageSetConfigNotification
685
+ };
686
+
687
+ // src/messages/controlFlow.ts
688
+ var import_zod8 = __toESM(require("zod"), 1);
689
+
690
+ // src/version.ts
691
+ var SLATES_PROTOCOL_VERSION = "slates@2026-01-01";
692
+
693
+ // src/messages/controlFlow.ts
694
+ var slatesMessageHelloNotification = import_zod8.default.object({
695
+ jsonrpc: import_zod8.default.literal("2.0"),
696
+ method: import_zod8.default.literal("slates/hello"),
697
+ params: import_zod8.default.object({
698
+ protocol: import_zod8.default.literal(SLATES_PROTOCOL_VERSION)
699
+ })
700
+ });
701
+ var slatesMessageSetParticipantsNotification = import_zod8.default.object({
702
+ jsonrpc: import_zod8.default.literal("2.0"),
703
+ method: import_zod8.default.literal("slates/participant.set"),
704
+ params: import_zod8.default.object({
705
+ participants: import_zod8.default.array(slatesParticipant)
706
+ })
707
+ });
708
+ var slatesMessageSessionStartNotification = import_zod8.default.object({
709
+ jsonrpc: import_zod8.default.literal("2.0"),
710
+ method: import_zod8.default.literal("slates/session.start"),
711
+ params: import_zod8.default.object({
712
+ sessionId: import_zod8.default.string(),
713
+ state: import_zod8.default.record(import_zod8.default.string(), import_zod8.default.any())
714
+ })
715
+ });
716
+ var slatesControlFlowNotificationsByMethod = {
717
+ "slates/hello": slatesMessageHelloNotification,
718
+ "slates/participant.set": slatesMessageSetParticipantsNotification,
719
+ "slates/session.start": slatesMessageSessionStartNotification
720
+ };
721
+
722
+ // src/messages/identify.ts
723
+ var import_zod9 = __toESM(require("zod"), 1);
724
+ var slatesMessageProviderIdentifyRequest = import_zod9.default.object({
725
+ jsonrpc: import_zod9.default.literal("2.0"),
726
+ method: import_zod9.default.literal("slates/provider.identify"),
727
+ id: import_zod9.default.string(),
728
+ params: import_zod9.default.object({})
729
+ });
730
+ var slatesMessageProviderIdentifyResponse = import_zod9.default.object({
731
+ jsonrpc: import_zod9.default.literal("2.0"),
732
+ id: import_zod9.default.string(),
733
+ result: import_zod9.default.object({
734
+ protocol: import_zod9.default.literal(SLATES_PROTOCOL_VERSION),
735
+ provider: import_zod9.default.object({
736
+ type: import_zod9.default.literal("provider"),
737
+ id: import_zod9.default.string(),
738
+ name: import_zod9.default.string(),
739
+ description: import_zod9.default.string().optional(),
740
+ metadata: import_zod9.default.record(import_zod9.default.string(), import_zod9.default.any()).optional()
741
+ })
742
+ })
743
+ });
744
+ var slatesIdentifyResponsesByMethod = {
745
+ "slates/provider.identify": slatesMessageProviderIdentifyResponse
746
+ };
747
+ var slatesIdentifyRequestsByMethod = {
748
+ "slates/provider.identify": slatesMessageProviderIdentifyRequest
749
+ };
750
+
751
+ // src/messages/index.ts
752
+ var slatesResponsesByMethod = {
753
+ ...slatesActionResponsesByMethod,
754
+ ...slatesAuthResponsesByMethod,
755
+ ...slatesConfigResponsesByMethod,
756
+ ...slatesIdentifyResponsesByMethod
757
+ };
758
+ var slatesRequestsByMethod = {
759
+ ...slatesActionRequestsByMethod,
760
+ ...slatesAuthRequestsByMethod,
761
+ ...slatesConfigRequestsByMethod,
762
+ ...slatesIdentifyRequestsByMethod
763
+ };
764
+ var slatesNotificationsByMethod = {
765
+ ...slatesAuthNotificationsByMethod,
766
+ ...slatesConfigNotificationsByMethod,
767
+ ...slatesControlFlowNotificationsByMethod
768
+ };
769
+
770
+ // src/handler/provider.ts
771
+ var SlatesProviderProtoHandlerManager = class {
772
+ #implMap = /* @__PURE__ */ new Map();
773
+ onNotification(method, handler) {
774
+ let schema = slatesNotificationsByMethod[method];
775
+ if (!schema) {
776
+ throw new Error(`No schema found for method: ${method}`);
777
+ }
778
+ this.#implMap.set(method, {
779
+ type: "notification",
780
+ handler,
781
+ schema
782
+ });
783
+ }
784
+ onRequest(method, cb) {
785
+ let schema = slatesRequestsByMethod[method];
786
+ if (!schema) {
787
+ throw new Error(`No schema found for method: ${method}`);
788
+ }
789
+ this.#implMap.set(method, {
790
+ type: "request",
791
+ handler: cb,
792
+ schema
793
+ });
794
+ }
795
+ async _handleInput(input) {
796
+ try {
797
+ if (typeof input !== "object" || input === null) {
798
+ return {
799
+ jsonrpc: "2.0",
800
+ id: input.id,
801
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid input" }))
802
+ };
803
+ }
804
+ if (input.jsonrpc !== "2.0") {
805
+ return {
806
+ jsonrpc: "2.0",
807
+ id: input.id,
808
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid jsonrpc version" }))
809
+ };
810
+ }
811
+ let method = input.method;
812
+ if (typeof method !== "string") {
813
+ return {
814
+ jsonrpc: "2.0",
815
+ id: input.id,
816
+ error: toSlateErrorResponse(
817
+ (0, import_error.badRequestError)({ message: "Invalid or missing method" })
818
+ )
819
+ };
820
+ }
821
+ let impl = this.#implMap.get(input.method);
822
+ if (!impl) {
823
+ return {
824
+ jsonrpc: "2.0",
825
+ id: input.id,
826
+ error: toSlateErrorResponse((0, import_error.notFoundError)("handler", input.method))
827
+ };
828
+ }
829
+ let parsed = impl.schema.safeParse(input);
830
+ if (!parsed.success) {
831
+ return {
832
+ jsonrpc: "2.0",
833
+ id: input.id,
834
+ error: toSlateErrorResponse(
835
+ (0, import_error.validationError)({
836
+ entity: "request",
837
+ message: "Invalid request parameters",
838
+ errors: parsed.error.issues.map((i) => ({
839
+ ...i,
840
+ path: i.path.map((p) => String(p))
841
+ }))
842
+ })
843
+ )
844
+ };
845
+ }
846
+ if (impl.type === "notification") {
847
+ await impl.handler(parsed.data);
848
+ return;
849
+ }
850
+ let result = await impl.handler(parsed.data);
851
+ return {
852
+ jsonrpc: "2.0",
853
+ id: parsed.data.id,
854
+ result
855
+ };
856
+ } catch (err) {
857
+ if (!getSlateErrorResponse(err) && !getServiceErrorData(err)) {
858
+ console.error(err);
859
+ }
860
+ return {
861
+ jsonrpc: "2.0",
862
+ id: input.id,
863
+ error: toSlateErrorResponse(err, {
864
+ message: "Internal server error"
865
+ })
866
+ };
867
+ }
868
+ }
869
+ static async handleInput(manager, input) {
870
+ return manager._handleInput(input);
871
+ }
872
+ };
873
+ var createSlatesProviderProtoHandler = (cb) => ({
874
+ run: async () => {
875
+ let manager = new SlatesProviderProtoHandlerManager();
876
+ await cb(manager);
877
+ return manager;
878
+ }
879
+ });
880
+ var toSlateErrorResponse = (error, defaults = {}) => {
881
+ let slateError = getSlateErrorResponse(error);
882
+ if (slateError) return slateError;
883
+ let serviceError = getServiceErrorData(error);
884
+ if (serviceError) {
885
+ return mapServiceErrorToSlateErrorResponse(serviceError, defaults);
886
+ }
887
+ return mapUnknownErrorToSlateErrorResponse(error, defaults);
888
+ };
889
+ var SERVICE_ERROR_CODE_MAP = {
890
+ invalid_data: "input.invalid",
891
+ bad_request: "request.bad",
892
+ not_found: "resource.not_found",
893
+ unauthorized: "auth.required",
894
+ forbidden: "permission.denied",
895
+ invalid_version: "request.invalid_version",
896
+ conflict: "resource.conflict",
897
+ gone: "resource.gone",
898
+ payment_required: "payment.required",
899
+ precondition_failed: "request.precondition_failed",
900
+ not_acceptable: "request.not_acceptable",
901
+ not_implemented: "operation.not_implemented",
902
+ too_many_requests: "request.rate_limited",
903
+ timeout: "internal.timeout",
904
+ internal_server_error: "internal.unexpected"
905
+ };
906
+ var isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
907
+ var isStructuredValue = (value) => (typeof value === "object" || typeof value === "function") && value !== null;
908
+ var isSlateErrorPayload = (value) => isRecord(value) && typeof value.code === "string" && typeof value.message === "string" && typeof value.kind === "string";
909
+ var isServiceErrorData = (value) => isRecord(value) && typeof value.status === "number" && typeof value.code === "string" && typeof value.message === "string" && !("config" in value) && !("request" in value) && !("response" in value) && !("isAxiosError" in value);
910
+ var getSlateErrorResponse = (error) => {
911
+ if (isStructuredValue(error) && "name" in error && typeof error.name === "string" && error.name.startsWith("SlateError") && "toResponse" in error && typeof error.toResponse === "function") {
912
+ let response = error.toResponse();
913
+ return isSlateErrorPayload(response) ? response : null;
914
+ }
915
+ if (isSlateErrorPayload(error)) return error;
916
+ if (isStructuredValue(error) && "data" in error && isSlateErrorPayload(error.data)) {
917
+ return error.data;
918
+ }
919
+ return null;
920
+ };
921
+ var getServiceErrorData = (error) => {
922
+ if ((0, import_error.isServiceError)(error) && isServiceErrorData(error.data)) {
923
+ return error.data;
924
+ }
925
+ if (isServiceErrorData(error)) return error;
926
+ if (isStructuredValue(error) && "data" in error && isServiceErrorData(error.data)) {
927
+ return error.data;
928
+ }
929
+ if (isStructuredValue(error) && "toResponse" in error && typeof error.toResponse === "function") {
930
+ let response = error.toResponse();
931
+ if (isServiceErrorData(response)) return response;
932
+ }
933
+ return null;
934
+ };
935
+ var mapKind = (code) => {
936
+ if (code.startsWith("declaration.")) return "declaration";
937
+ if (code.startsWith("input.")) return "validation";
938
+ if (code.startsWith("request.")) return "request";
939
+ if (code.startsWith("config.")) return "config";
940
+ if (code.startsWith("auth.") || code.startsWith("permission.")) return "auth";
941
+ if (code.startsWith("resource.")) return "resource";
942
+ if (code.startsWith("payment.")) return "payment";
943
+ if (code.startsWith("transport.")) return "transport";
944
+ if (code.startsWith("upstream.")) return "upstream";
945
+ return "internal";
946
+ };
947
+ var mapRetryable = (code) => code === "request.rate_limited" || code === "upstream.rate_limited" || code === "upstream.timeout" || code === "upstream.network_error" || code === "upstream.unavailable" || code === "upstream.error" || code === "transport.invoke_failed" || code === "internal.timeout";
948
+ var mapServiceErrorCode = (code, status) => {
949
+ if (SERVICE_ERROR_CODE_MAP[code]) return SERVICE_ERROR_CODE_MAP[code];
950
+ if (status === 400) return "request.bad";
951
+ if (status === 401) return "auth.required";
952
+ if (status === 402) return "payment.required";
953
+ if (status === 403) return "permission.denied";
954
+ if (status === 404) return "resource.not_found";
955
+ if (status === 406) return "request.not_acceptable";
956
+ if (status === 409) return "resource.conflict";
957
+ if (status === 410) return "resource.gone";
958
+ if (status === 412) return "request.precondition_failed";
959
+ if (status === 429) return "request.rate_limited";
960
+ if (status === 501) return "operation.not_implemented";
961
+ if (status === 504) return "internal.timeout";
962
+ if (status && status >= 500) return "internal.unexpected";
963
+ return "internal.unexpected";
964
+ };
965
+ var mapIssues = (errors) => {
966
+ if (!Array.isArray(errors)) return void 0;
967
+ let issues = errors.map((error) => {
968
+ if (!isRecord(error)) {
969
+ return { message: String(error) };
970
+ }
971
+ return {
972
+ ...error,
973
+ path: Array.isArray(error.path) ? error.path.map((entry) => String(entry)) : void 0,
974
+ code: typeof error.code === "string" ? error.code : void 0,
975
+ message: typeof error.message === "string" ? error.message : "Validation issue"
976
+ };
977
+ });
978
+ return issues.length > 0 ? issues : void 0;
979
+ };
980
+ var mapServiceErrorToSlateErrorResponse = (error, defaults = {}) => {
981
+ let code = defaults.code ?? mapServiceErrorCode(error.code, error.status);
982
+ let extraEntries = Object.entries(error).filter(
983
+ ([key]) => ![
984
+ "status",
985
+ "code",
986
+ "message",
987
+ "errors",
988
+ "hint",
989
+ "description",
990
+ "reason",
991
+ "object",
992
+ "ok"
993
+ ].includes(key)
994
+ );
995
+ return {
996
+ code,
997
+ kind: mapKind(code),
998
+ message: error.message,
999
+ retryable: mapRetryable(code),
1000
+ status: error.status,
1001
+ ...mapIssues(error.errors) ? { issues: mapIssues(error.errors) } : {},
1002
+ baggage: {
1003
+ serviceError: {
1004
+ code: error.code,
1005
+ status: error.status,
1006
+ hint: error.hint,
1007
+ description: error.description,
1008
+ reason: error.reason
1009
+ },
1010
+ ...extraEntries.length > 0 ? { serviceErrorData: Object.fromEntries(extraEntries) } : {}
1011
+ }
1012
+ };
1013
+ };
1014
+ var mapUnknownErrorToSlateErrorResponse = (error, defaults = {}) => ({
1015
+ code: defaults.code ?? "internal.unexpected",
1016
+ kind: "internal",
1017
+ message: defaults.message ?? (error instanceof Error ? error.message : "An unexpected internal error occurred."),
1018
+ retryable: false,
1019
+ status: 500,
1020
+ ...error instanceof Error ? {
1021
+ baggage: {
1022
+ originalName: error.name
1023
+ }
1024
+ } : {}
1025
+ });
1026
+ // Annotate the CommonJS export names for ESM import in node:
1027
+ 0 && (module.exports = {
1028
+ SLATES_PROTOCOL_VERSION,
1029
+ SlatesProviderProtoHandlerManager,
1030
+ createSlatesProviderProtoHandler,
1031
+ slatesAction,
1032
+ slatesActionBase,
1033
+ slatesActionRequestsByMethod,
1034
+ slatesActionResponsesByMethod,
1035
+ slatesActionScopeClause,
1036
+ slatesActionScopes,
1037
+ slatesActionTool,
1038
+ slatesActionTrigger,
1039
+ slatesAuthNotificationsByMethod,
1040
+ slatesAuthRequestsByMethod,
1041
+ slatesAuthResponsesByMethod,
1042
+ slatesAuthenticationMethod,
1043
+ slatesConfigNotificationsByMethod,
1044
+ slatesConfigRequestsByMethod,
1045
+ slatesConfigResponsesByMethod,
1046
+ slatesControlFlowNotificationsByMethod,
1047
+ slatesIdentifyRequestsByMethod,
1048
+ slatesIdentifyResponsesByMethod,
1049
+ slatesMessageActionGetRequest,
1050
+ slatesMessageActionGetResponse,
1051
+ slatesMessageActionInvokeRequest,
1052
+ slatesMessageActionInvokeResponse,
1053
+ slatesMessageActionTriggerEventMapRequest,
1054
+ slatesMessageActionTriggerEventMapResponse,
1055
+ slatesMessageActionTriggerEventsPollRequest,
1056
+ slatesMessageActionTriggerEventsPollResponse,
1057
+ slatesMessageActionTriggerWebhookHandleRequest,
1058
+ slatesMessageActionTriggerWebhookHandleResponse,
1059
+ slatesMessageActionTriggerWebhookRegisterRequest,
1060
+ slatesMessageActionTriggerWebhookRegisterResponse,
1061
+ slatesMessageActionTriggerWebhookUnregisterRequest,
1062
+ slatesMessageActionTriggerWebhookUnregisterResponse,
1063
+ slatesMessageActionsListRequest,
1064
+ slatesMessageActionsListResponse,
1065
+ slatesMessageAuthAuthorizationCallbackHandleRequest,
1066
+ slatesMessageAuthAuthorizationCallbackHandleResponse,
1067
+ slatesMessageAuthAuthorizationUrlGetRequest,
1068
+ slatesMessageAuthAuthorizationUrlGetResponse,
1069
+ slatesMessageAuthDefaultInputGetRequest,
1070
+ slatesMessageAuthDefaultInputGetResponse,
1071
+ slatesMessageAuthInputChangedRequest,
1072
+ slatesMessageAuthInputChangedResponse,
1073
+ slatesMessageAuthMethodGetRequest,
1074
+ slatesMessageAuthMethodGetResponse,
1075
+ slatesMessageAuthMethodsListRequest,
1076
+ slatesMessageAuthMethodsListResponse,
1077
+ slatesMessageAuthOutputGetRequest,
1078
+ slatesMessageAuthOutputGetResponse,
1079
+ slatesMessageAuthProfileGetRequest,
1080
+ slatesMessageAuthProfileGetResponse,
1081
+ slatesMessageAuthTokenRefreshHandleRequest,
1082
+ slatesMessageAuthTokenRefreshHandleResponse,
1083
+ slatesMessageConfigChangedRequest,
1084
+ slatesMessageConfigChangedResponse,
1085
+ slatesMessageConfigDefaultGetRequest,
1086
+ slatesMessageConfigDefaultGetResponse,
1087
+ slatesMessageConfigSchemaGetRequest,
1088
+ slatesMessageConfigSchemaGetResponse,
1089
+ slatesMessageHelloNotification,
1090
+ slatesMessageProviderIdentifyRequest,
1091
+ slatesMessageProviderIdentifyResponse,
1092
+ slatesMessageSessionStartNotification,
1093
+ slatesMessageSetAuthNotification,
1094
+ slatesMessageSetConfigNotification,
1095
+ slatesMessageSetParticipantsNotification,
1096
+ slatesNotificationsByMethod,
1097
+ slatesParticipant,
1098
+ slatesRequestTrace,
1099
+ slatesRequestTraceTextBody,
1100
+ slatesRequestsByMethod,
1101
+ slatesResponsesByMethod,
1102
+ withRequestTraces
1103
+ });