@slates/proto 1.0.0-rc.5 → 1.0.0-rc.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/index.cjs +1076 -2
  2. package/dist/index.d.cts +3429 -0
  3. package/dist/index.d.ts +3429 -4
  4. package/dist/index.module.js +970 -2
  5. package/package.json +8 -7
  6. package/src/handler/provider.test.ts +118 -0
  7. package/src/handler/provider.ts +262 -27
  8. package/src/index.ts +1 -0
  9. package/src/messages/action.ts +7 -6
  10. package/src/messages/auth.ts +14 -10
  11. package/src/messages/config.ts +3 -2
  12. package/src/messages/controlFlow.ts +2 -1
  13. package/src/messages/identify.ts +2 -1
  14. package/src/messages/index.ts +13 -12
  15. package/src/messages/tracing.ts +38 -0
  16. package/src/types/action.ts +11 -1
  17. package/src/version.ts +3 -0
  18. package/dist/handler/index.d.ts +0 -2
  19. package/dist/handler/index.d.ts.map +0 -1
  20. package/dist/handler/provider.d.ts +0 -29
  21. package/dist/handler/provider.d.ts.map +0 -1
  22. package/dist/index.cjs.map +0 -1
  23. package/dist/index.d.ts.map +0 -1
  24. package/dist/index.module.js.map +0 -1
  25. package/dist/index.umd.js +0 -2
  26. package/dist/index.umd.js.map +0 -1
  27. package/dist/messages/action.d.ts +0 -474
  28. package/dist/messages/action.d.ts.map +0 -1
  29. package/dist/messages/auth.d.ts +0 -496
  30. package/dist/messages/auth.d.ts.map +0 -1
  31. package/dist/messages/config.d.ts +0 -140
  32. package/dist/messages/config.d.ts.map +0 -1
  33. package/dist/messages/controlFlow.d.ts +0 -64
  34. package/dist/messages/controlFlow.d.ts.map +0 -1
  35. package/dist/messages/identify.d.ts +0 -50
  36. package/dist/messages/identify.d.ts.map +0 -1
  37. package/dist/messages/index.d.ts +0 -558
  38. package/dist/messages/index.d.ts.map +0 -1
  39. package/dist/messages/log.d.ts +0 -27
  40. package/dist/messages/log.d.ts.map +0 -1
  41. package/dist/types/action.d.ts +0 -98
  42. package/dist/types/action.d.ts.map +0 -1
  43. package/dist/types/authMethod.d.ts +0 -29
  44. package/dist/types/authMethod.d.ts.map +0 -1
  45. package/dist/types/index.d.ts +0 -4
  46. package/dist/types/index.d.ts.map +0 -1
  47. package/dist/types/participant.d.ts +0 -10
  48. package/dist/types/participant.d.ts.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,2 +1,1076 @@
1
- var t=require("@lowerdeck/error");function e(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var a=/*#__PURE__*/e(require("zod"));function l(t,e){if(!{}.hasOwnProperty.call(t,e))throw new TypeError("attempted to use private field on non-instance");return t}var s=0;function r(t){return"__private_"+s+++"_"+t}function o(){return o=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var l in a)({}).hasOwnProperty.call(a,l)&&(t[l]=a[l])}return t},o.apply(null,arguments)}var u=a.default.object({id:a.default.string(),name:a.default.string(),description:a.default.string().optional(),instructions:a.default.array(a.default.string()).optional(),constraints:a.default.array(a.default.string()).optional(),tags:a.default.object({destructive:a.default.boolean().optional(),readOnly:a.default.boolean().optional()}).optional(),metadata:a.default.record(a.default.string(),a.default.any()).optional(),inputSchema:a.default.record(a.default.string(),a.default.any()),outputSchema:a.default.record(a.default.string(),a.default.any())}),d=u.extend({type:a.default.literal("action.tool"),capabilities:a.default.object({})}),n=u.extend({type:a.default.literal("action.trigger"),capabilities:a.default.object({}),invocation:a.default.union([a.default.object({type:a.default.literal("polling"),intervalSeconds:a.default.number().min(15)}),a.default.object({type:a.default.literal("webhook"),autoRegistration:a.default.boolean(),autoUnregistration:a.default.boolean()})])}),i=a.default.union([d,n]),f=a.default.object({id:a.default.string(),name:a.default.string(),type:a.default.union([a.default.literal("auth.oauth"),a.default.literal("auth.token"),a.default.literal("auth.service_account"),a.default.literal("auth.custom")]),scopes:a.default.array(a.default.object({id:a.default.string(),title:a.default.string(),description:a.default.string().optional()})).optional(),inputSchema:a.default.record(a.default.string(),a.default.any()),outputSchema:a.default.record(a.default.string(),a.default.any()),capabilities:a.default.object({getDefaultInput:a.default.object({enabled:a.default.boolean()}).optional(),handleChangedInput:a.default.object({enabled:a.default.boolean()}).optional(),handleTokenRefresh:a.default.object({enabled:a.default.boolean()}).optional(),getProfile:a.default.object({enabled:a.default.boolean()}).optional()})}),c=a.default.object({type:a.default.union([a.default.literal("consumer"),a.default.literal("hub")]),id:a.default.string(),name:a.default.string(),description:a.default.string().optional(),metadata:a.default.record(a.default.string(),a.default.any()).optional()}),p=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/actions.list"),id:a.default.string(),params:a.default.object({})}),g=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({actions:a.default.array(i)})}),h=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.get"),id:a.default.string(),params:a.default.object({actionId:a.default.string()})}),j=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({action:i})}),b=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.tool.invoke"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),input:a.default.record(a.default.string(),a.default.any())})}),m=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({output:a.default.record(a.default.string(),a.default.any()),message:a.default.string().optional()})}),y=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.trigger.map_event"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),input:a.default.record(a.default.string(),a.default.any())})}),M=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({type:a.default.string(),id:a.default.string(),output:a.default.record(a.default.string(),a.default.any())})}),x=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.trigger.poll_events"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),state:a.default.any().nullable()})}),R=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({inputs:a.default.array(a.default.record(a.default.string(),a.default.any())),updatedState:a.default.any().nullable().optional()})}),v=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.trigger.webhook_handle"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),url:a.default.string(),method:a.default.string(),headers:a.default.record(a.default.string(),a.default.string()),body:a.default.object({encoding:a.default.literal("base64"),content:a.default.string()}).nullable(),state:a.default.any().nullable()})}),A=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({inputs:a.default.array(a.default.record(a.default.string(),a.default.any())),updatedState:a.default.any().nullable().optional()})}),I=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.trigger.webhook_register"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),webhookBaseUrl:a.default.string()})}),_=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({registrationDetails:a.default.any(),state:a.default.any().optional()})}),k=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/action.trigger.webhook_unregister"),id:a.default.string(),params:a.default.object({actionId:a.default.string(),webhookBaseUrl:a.default.string(),registrationDetails:a.default.any(),state:a.default.any().optional()})}),q=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({})}),w={"slates/actions.list":g,"slates/action.get":j,"slates/action.tool.invoke":m,"slates/action.trigger.map_event":M,"slates/action.trigger.poll_events":R,"slates/action.trigger.webhook_handle":A,"slates/action.trigger.webhook_register":_,"slates/action.trigger.webhook_unregister":q},P={"slates/actions.list":p,"slates/action.get":h,"slates/action.tool.invoke":b,"slates/action.trigger.map_event":y,"slates/action.trigger.poll_events":x,"slates/action.trigger.webhook_handle":v,"slates/action.trigger.webhook_register":I,"slates/action.trigger.webhook_unregister":k},S=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.set"),params:a.default.object({authenticationMethodId:a.default.string(),output:a.default.record(a.default.string(),a.default.any())})}),C=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.methods.list"),id:a.default.string(),params:a.default.object({})}),B=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({authenticationMethods:a.default.array(f)})}),G=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.method.get"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string()})}),T=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({authenticationMethod:f})}),E=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.input.changed"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),previousInput:a.default.record(a.default.string(),a.default.any()).nullable(),newInput:a.default.record(a.default.string(),a.default.any())})}),z=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({input:a.default.record(a.default.string(),a.default.any()).optional()})}),N=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.input.get_default"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string()})}),U=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({input:a.default.record(a.default.string(),a.default.any())})}),H=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.authorization_url.get"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),redirectUri:a.default.string(),state:a.default.string(),input:a.default.record(a.default.string(),a.default.any()),clientId:a.default.string(),clientSecret:a.default.string(),scopes:a.default.array(a.default.string())})}),O=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({authorizationUrl:a.default.string(),input:a.default.record(a.default.string(),a.default.any()).optional()})}),D=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.authorization_callback.handle"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),code:a.default.string(),state:a.default.string(),redirectUri:a.default.string(),input:a.default.record(a.default.string(),a.default.any()),clientId:a.default.string(),clientSecret:a.default.string(),scopes:a.default.array(a.default.string())})}),W=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({output:a.default.record(a.default.string(),a.default.any()),input:a.default.record(a.default.string(),a.default.any()).optional()})}),L=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.token_refresh.handle"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),output:a.default.record(a.default.string(),a.default.any()),input:a.default.record(a.default.string(),a.default.any()),clientId:a.default.string(),clientSecret:a.default.string(),scopes:a.default.array(a.default.string())})}),F=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({output:a.default.record(a.default.string(),a.default.any()),input:a.default.record(a.default.string(),a.default.any()).optional()})}),J=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.profile.get"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),output:a.default.record(a.default.string(),a.default.any()),input:a.default.record(a.default.string(),a.default.any()),scopes:a.default.array(a.default.string())})}),K=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({profile:a.default.record(a.default.string(),a.default.any())})}),Q=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/auth.output.get"),id:a.default.string(),params:a.default.object({authenticationMethodId:a.default.string(),input:a.default.record(a.default.string(),a.default.any())})}),V=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({output:a.default.record(a.default.string(),a.default.any())})}),X={"slates/auth.methods.list":B,"slates/auth.method.get":T,"slates/auth.input.changed":z,"slates/auth.input.get_default":U,"slates/auth.authorization_url.get":O,"slates/auth.authorization_callback.handle":W,"slates/auth.token_refresh.handle":F,"slates/auth.profile.get":K,"slates/auth.output.get":V},Y={"slates/auth.methods.list":C,"slates/auth.method.get":G,"slates/auth.input.changed":E,"slates/auth.input.get_default":N,"slates/auth.authorization_url.get":H,"slates/auth.authorization_callback.handle":D,"slates/auth.token_refresh.handle":L,"slates/auth.profile.get":J,"slates/auth.output.get":Q},Z={"slates/auth.set":S},$=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/config.set"),params:a.default.object({config:a.default.record(a.default.string(),a.default.any())})}),tt=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/config.schema.get"),id:a.default.string(),params:a.default.object({})}),et=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({schema:a.default.record(a.default.string(),a.default.any())})}),at=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/config.changed"),id:a.default.string(),params:a.default.object({previousConfig:a.default.record(a.default.string(),a.default.any()).nullable(),newConfig:a.default.record(a.default.string(),a.default.any())})}),lt=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({success:a.default.boolean(),config:a.default.record(a.default.string(),a.default.any()).optional(),errors:a.default.array(a.default.object({code:a.default.string(),message:a.default.string(),path:a.default.array(a.default.string()).optional()})).optional()})}),st=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/config.get_default"),id:a.default.string(),params:a.default.object({})}),rt=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({config:a.default.record(a.default.string(),a.default.any()).nullable()})}),ot={"slates/config.schema.get":et,"slates/config.get_default":rt,"slates/config.changed":lt},ut={"slates/config.schema.get":tt,"slates/config.get_default":st,"slates/config.changed":at},dt={"slates/config.set":$},nt=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/hello"),params:a.default.object({protocol:a.default.literal("slates@2026-01-01")})}),it=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/participant.set"),params:a.default.object({participants:a.default.array(c)})}),ft=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/session.start"),params:a.default.object({sessionId:a.default.string(),state:a.default.record(a.default.string(),a.default.any())})}),ct={"slates/hello":nt,"slates/participant.set":it,"slates/session.start":ft},pt=a.default.object({jsonrpc:a.default.literal("2.0"),method:a.default.literal("slates/provider.identify"),id:a.default.string(),params:a.default.object({})}),gt=a.default.object({jsonrpc:a.default.literal("2.0"),id:a.default.string(),result:a.default.object({protocol:a.default.literal("slates@2026-01-01"),provider:a.default.object({type:a.default.literal("provider"),id:a.default.string(),name:a.default.string(),description:a.default.string().optional(),metadata:a.default.record(a.default.string(),a.default.any()).optional()})})}),ht={"slates/provider.identify":gt},jt={"slates/provider.identify":pt},bt=o({},w,X,ot,ht),mt=o({},P,Y,ut,jt),yt=o({},Z,dt,ct),Mt=/*#__PURE__*/r("implMap"),xt=/*#__PURE__*/function(){function e(){Object.defineProperty(this,Mt,{writable:!0,value:new Map})}var a=e.prototype;return a.onNotification=function(t,e){var a=yt[t];if(!a)throw new Error("No schema found for method: "+t);l(this,Mt)[Mt].set(t,{type:"notification",handler:e,schema:a})},a.onRequest=function(t,e){var a=mt[t];if(!a)throw new Error("No schema found for method: "+t);l(this,Mt)[Mt].set(t,{type:"request",handler:e,schema:a})},a._handleInput=function(e){try{var a,s=this;return Promise.resolve(function(r,u){try{var d=function(){function r(t){return a?t:Promise.resolve(u.handler(d.data)).then(function(t){return{jsonrpc:"2.0",id:d.data.id,result:t}})}if("object"!=typeof e||null===e)return{jsonrpc:"2.0",id:e.id,error:t.badRequestError({message:"Invalid input"}).toResponse()};if("2.0"!==e.jsonrpc)return{jsonrpc:"2.0",id:e.id,error:t.badRequestError({message:"Invalid jsonrpc version"}).toResponse()};if("string"!=typeof e.method)return{jsonrpc:"2.0",id:e.id,error:t.badRequestError({message:"Invalid or missing method"}).toResponse()};var u=l(s,Mt)[Mt].get(e.method);if(!u)return{jsonrpc:"2.0",id:e.id,error:t.notFoundError("handler",e.method).toResponse()};var d=u.schema.safeParse(e);if(!d.success)return{jsonrpc:"2.0",id:e.id,error:t.validationError({entity:"request",message:"Invalid request parameters",errors:d.error.issues.map(function(t){return o({},t,{path:t.path.map(function(t){return String(t)})})})}).toResponse()};var n=function(){if("notification"===u.type)return Promise.resolve(u.handler(d.data)).then(function(){a=1})}();return n&&n.then?n.then(r):r(n)}()}catch(t){return u(t)}return d&&d.then?d.then(void 0,u):d}(0,function(a){return t.isServiceError(a)?{jsonrpc:"2.0",id:e.id,error:a.toResponse()}:(console.error(a),{jsonrpc:"2.0",id:e.id,error:t.internalServerError({message:"Internal server error"}).toResponse()})}))}catch(t){return Promise.reject(t)}},e.handleInput=function(t,e){try{return Promise.resolve(t._handleInput(e))}catch(t){return Promise.reject(t)}},e}();exports.SlatesProviderProtoHandlerManager=xt,exports.createSlatesProviderProtoHandler=function(t){return{run:function(){try{var e=new xt;return Promise.resolve(t(e)).then(function(){return e})}catch(t){return Promise.reject(t)}}}},exports.slatesAction=i,exports.slatesActionBase=u,exports.slatesActionRequestsByMethod=P,exports.slatesActionResponsesByMethod=w,exports.slatesActionTool=d,exports.slatesActionTrigger=n,exports.slatesAuthNotificationsByMethod=Z,exports.slatesAuthRequestsByMethod=Y,exports.slatesAuthResponsesByMethod=X,exports.slatesAuthenticationMethod=f,exports.slatesConfigNotificationsByMethod=dt,exports.slatesConfigRequestsByMethod=ut,exports.slatesConfigResponsesByMethod=ot,exports.slatesControlFlowNotificationsByMethod=ct,exports.slatesIdentifyRequestsByMethod=jt,exports.slatesIdentifyResponsesByMethod=ht,exports.slatesMessageActionGetRequest=h,exports.slatesMessageActionGetResponse=j,exports.slatesMessageActionInvokeRequest=b,exports.slatesMessageActionInvokeResponse=m,exports.slatesMessageActionTriggerEventMapRequest=y,exports.slatesMessageActionTriggerEventMapResponse=M,exports.slatesMessageActionTriggerEventsPollRequest=x,exports.slatesMessageActionTriggerEventsPollResponse=R,exports.slatesMessageActionTriggerWebhookHandleRequest=v,exports.slatesMessageActionTriggerWebhookHandleResponse=A,exports.slatesMessageActionTriggerWebhookRegisterRequest=I,exports.slatesMessageActionTriggerWebhookRegisterResponse=_,exports.slatesMessageActionTriggerWebhookUnregisterRequest=k,exports.slatesMessageActionTriggerWebhookUnregisterResponse=q,exports.slatesMessageActionsListRequest=p,exports.slatesMessageActionsListResponse=g,exports.slatesMessageAuthAuthorizationCallbackHandleRequest=D,exports.slatesMessageAuthAuthorizationCallbackHandleResponse=W,exports.slatesMessageAuthAuthorizationUrlGetRequest=H,exports.slatesMessageAuthAuthorizationUrlGetResponse=O,exports.slatesMessageAuthDefaultInputGetRequest=N,exports.slatesMessageAuthDefaultInputGetResponse=U,exports.slatesMessageAuthInputChangedRequest=E,exports.slatesMessageAuthInputChangedResponse=z,exports.slatesMessageAuthMethodGetRequest=G,exports.slatesMessageAuthMethodGetResponse=T,exports.slatesMessageAuthMethodsListRequest=C,exports.slatesMessageAuthMethodsListResponse=B,exports.slatesMessageAuthOutputGetRequest=Q,exports.slatesMessageAuthOutputGetResponse=V,exports.slatesMessageAuthProfileGetRequest=J,exports.slatesMessageAuthProfileGetResponse=K,exports.slatesMessageAuthTokenRefreshHandleRequest=L,exports.slatesMessageAuthTokenRefreshHandleResponse=F,exports.slatesMessageConfigChangedRequest=at,exports.slatesMessageConfigChangedResponse=lt,exports.slatesMessageConfigDefaultGetRequest=st,exports.slatesMessageConfigDefaultGetResponse=rt,exports.slatesMessageConfigSchemaGetRequest=tt,exports.slatesMessageConfigSchemaGetResponse=et,exports.slatesMessageHelloNotification=nt,exports.slatesMessageProviderIdentifyRequest=pt,exports.slatesMessageProviderIdentifyResponse=gt,exports.slatesMessageSessionStartNotification=ft,exports.slatesMessageSetAuthNotification=S,exports.slatesMessageSetConfigNotification=$,exports.slatesMessageSetParticipantsNotification=it,exports.slatesNotificationsByMethod=yt,exports.slatesParticipant=c,exports.slatesRequestsByMethod=mt,exports.slatesResponsesByMethod=bt;
2
- //# sourceMappingURL=index.cjs.map
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
+ })
178
+ ).optional(),
179
+ inputSchema: import_zod2.default.record(import_zod2.default.string(), import_zod2.default.any()),
180
+ outputSchema: import_zod2.default.record(import_zod2.default.string(), import_zod2.default.any()),
181
+ capabilities: import_zod2.default.object({
182
+ getDefaultInput: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
183
+ handleChangedInput: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
184
+ handleTokenRefresh: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional(),
185
+ getProfile: import_zod2.default.object({ enabled: import_zod2.default.boolean() }).optional()
186
+ })
187
+ });
188
+
189
+ // src/types/participant.ts
190
+ var import_zod3 = __toESM(require("zod"), 1);
191
+ var slatesParticipant = import_zod3.default.object({
192
+ type: import_zod3.default.union([import_zod3.default.literal("consumer"), import_zod3.default.literal("hub")]),
193
+ id: import_zod3.default.string(),
194
+ name: import_zod3.default.string(),
195
+ description: import_zod3.default.string().optional(),
196
+ metadata: import_zod3.default.record(import_zod3.default.string(), import_zod3.default.any()).optional()
197
+ });
198
+
199
+ // src/messages/tracing.ts
200
+ var import_zod4 = __toESM(require("zod"), 1);
201
+ var slatesRequestTraceTextBody = import_zod4.default.object({
202
+ contentType: import_zod4.default.string().optional(),
203
+ text: import_zod4.default.string(),
204
+ truncated: import_zod4.default.boolean().optional()
205
+ });
206
+ var slatesRequestTrace = import_zod4.default.object({
207
+ startedAt: import_zod4.default.string(),
208
+ durationMs: import_zod4.default.number().nonnegative(),
209
+ request: import_zod4.default.object({
210
+ method: import_zod4.default.string(),
211
+ url: import_zod4.default.string(),
212
+ headers: import_zod4.default.record(import_zod4.default.string(), import_zod4.default.string()).optional(),
213
+ body: slatesRequestTraceTextBody.optional()
214
+ }),
215
+ response: import_zod4.default.object({
216
+ status: import_zod4.default.number(),
217
+ statusText: import_zod4.default.string().optional(),
218
+ headers: import_zod4.default.record(import_zod4.default.string(), import_zod4.default.string()).optional(),
219
+ body: slatesRequestTraceTextBody.optional()
220
+ }).optional(),
221
+ error: import_zod4.default.object({
222
+ code: import_zod4.default.string().optional(),
223
+ message: import_zod4.default.string()
224
+ }).optional()
225
+ });
226
+ var withRequestTraces = (shape) => import_zod4.default.object({
227
+ ...shape,
228
+ requestTraces: import_zod4.default.array(slatesRequestTrace).optional()
229
+ });
230
+
231
+ // src/messages/action.ts
232
+ var slatesMessageActionsListRequest = import_zod5.default.object({
233
+ jsonrpc: import_zod5.default.literal("2.0"),
234
+ method: import_zod5.default.literal("slates/actions.list"),
235
+ id: import_zod5.default.string(),
236
+ params: import_zod5.default.object({})
237
+ });
238
+ var slatesMessageActionsListResponse = import_zod5.default.object({
239
+ jsonrpc: import_zod5.default.literal("2.0"),
240
+ id: import_zod5.default.string(),
241
+ result: import_zod5.default.object({
242
+ actions: import_zod5.default.array(slatesAction)
243
+ })
244
+ });
245
+ var slatesMessageActionGetRequest = import_zod5.default.object({
246
+ jsonrpc: import_zod5.default.literal("2.0"),
247
+ method: import_zod5.default.literal("slates/action.get"),
248
+ id: import_zod5.default.string(),
249
+ params: import_zod5.default.object({
250
+ actionId: import_zod5.default.string()
251
+ })
252
+ });
253
+ var slatesMessageActionGetResponse = import_zod5.default.object({
254
+ jsonrpc: import_zod5.default.literal("2.0"),
255
+ id: import_zod5.default.string(),
256
+ result: import_zod5.default.object({
257
+ action: slatesAction
258
+ })
259
+ });
260
+ var slatesMessageActionInvokeRequest = import_zod5.default.object({
261
+ jsonrpc: import_zod5.default.literal("2.0"),
262
+ method: import_zod5.default.literal("slates/action.tool.invoke"),
263
+ id: import_zod5.default.string(),
264
+ params: import_zod5.default.object({
265
+ actionId: import_zod5.default.string(),
266
+ input: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
267
+ })
268
+ });
269
+ var slatesMessageActionInvokeResponse = import_zod5.default.object({
270
+ jsonrpc: import_zod5.default.literal("2.0"),
271
+ id: import_zod5.default.string(),
272
+ result: withRequestTraces({
273
+ output: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any()),
274
+ message: import_zod5.default.string().optional()
275
+ })
276
+ });
277
+ var slatesMessageActionTriggerEventMapRequest = import_zod5.default.object({
278
+ jsonrpc: import_zod5.default.literal("2.0"),
279
+ method: import_zod5.default.literal("slates/action.trigger.map_event"),
280
+ id: import_zod5.default.string(),
281
+ params: import_zod5.default.object({
282
+ actionId: import_zod5.default.string(),
283
+ input: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
284
+ })
285
+ });
286
+ var slatesMessageActionTriggerEventMapResponse = import_zod5.default.object({
287
+ jsonrpc: import_zod5.default.literal("2.0"),
288
+ id: import_zod5.default.string(),
289
+ result: withRequestTraces({
290
+ type: import_zod5.default.string(),
291
+ id: import_zod5.default.string(),
292
+ output: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
293
+ })
294
+ });
295
+ var slatesMessageActionTriggerEventsPollRequest = import_zod5.default.object({
296
+ jsonrpc: import_zod5.default.literal("2.0"),
297
+ method: import_zod5.default.literal("slates/action.trigger.poll_events"),
298
+ id: import_zod5.default.string(),
299
+ params: import_zod5.default.object({
300
+ actionId: import_zod5.default.string(),
301
+ state: import_zod5.default.any().nullable()
302
+ })
303
+ });
304
+ var slatesMessageActionTriggerEventsPollResponse = import_zod5.default.object({
305
+ jsonrpc: import_zod5.default.literal("2.0"),
306
+ id: import_zod5.default.string(),
307
+ result: withRequestTraces({
308
+ inputs: import_zod5.default.array(import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())),
309
+ updatedState: import_zod5.default.any().nullable().optional()
310
+ })
311
+ });
312
+ var slatesMessageActionTriggerWebhookHandleRequest = import_zod5.default.object({
313
+ jsonrpc: import_zod5.default.literal("2.0"),
314
+ method: import_zod5.default.literal("slates/action.trigger.webhook_handle"),
315
+ id: import_zod5.default.string(),
316
+ params: import_zod5.default.object({
317
+ actionId: import_zod5.default.string(),
318
+ url: import_zod5.default.string(),
319
+ method: import_zod5.default.string(),
320
+ headers: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.string()),
321
+ body: import_zod5.default.object({
322
+ encoding: import_zod5.default.literal("base64"),
323
+ content: import_zod5.default.string()
324
+ }).nullable(),
325
+ state: import_zod5.default.any().nullable()
326
+ })
327
+ });
328
+ var slatesMessageActionTriggerWebhookHandleResponse = 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 slatesMessageActionTriggerWebhookRegisterRequest = import_zod5.default.object({
337
+ jsonrpc: import_zod5.default.literal("2.0"),
338
+ method: import_zod5.default.literal("slates/action.trigger.webhook_register"),
339
+ id: import_zod5.default.string(),
340
+ params: import_zod5.default.object({
341
+ actionId: import_zod5.default.string(),
342
+ webhookBaseUrl: import_zod5.default.string()
343
+ })
344
+ });
345
+ var slatesMessageActionTriggerWebhookRegisterResponse = import_zod5.default.object({
346
+ jsonrpc: import_zod5.default.literal("2.0"),
347
+ id: import_zod5.default.string(),
348
+ result: withRequestTraces({
349
+ registrationDetails: import_zod5.default.any(),
350
+ state: import_zod5.default.any().optional()
351
+ })
352
+ });
353
+ var slatesMessageActionTriggerWebhookUnregisterRequest = import_zod5.default.object({
354
+ jsonrpc: import_zod5.default.literal("2.0"),
355
+ method: import_zod5.default.literal("slates/action.trigger.webhook_unregister"),
356
+ id: import_zod5.default.string(),
357
+ params: import_zod5.default.object({
358
+ actionId: import_zod5.default.string(),
359
+ webhookBaseUrl: import_zod5.default.string(),
360
+ registrationDetails: import_zod5.default.any(),
361
+ state: import_zod5.default.any().optional()
362
+ })
363
+ });
364
+ var slatesMessageActionTriggerWebhookUnregisterResponse = import_zod5.default.object({
365
+ jsonrpc: import_zod5.default.literal("2.0"),
366
+ id: import_zod5.default.string(),
367
+ result: withRequestTraces({})
368
+ });
369
+ var slatesActionResponsesByMethod = {
370
+ "slates/actions.list": slatesMessageActionsListResponse,
371
+ "slates/action.get": slatesMessageActionGetResponse,
372
+ "slates/action.tool.invoke": slatesMessageActionInvokeResponse,
373
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapResponse,
374
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollResponse,
375
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleResponse,
376
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterResponse,
377
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterResponse
378
+ };
379
+ var slatesActionRequestsByMethod = {
380
+ "slates/actions.list": slatesMessageActionsListRequest,
381
+ "slates/action.get": slatesMessageActionGetRequest,
382
+ "slates/action.tool.invoke": slatesMessageActionInvokeRequest,
383
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapRequest,
384
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollRequest,
385
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleRequest,
386
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterRequest,
387
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterRequest
388
+ };
389
+
390
+ // src/messages/auth.ts
391
+ var import_zod6 = __toESM(require("zod"), 1);
392
+ var slatesMessageSetAuthNotification = import_zod6.default.object({
393
+ jsonrpc: import_zod6.default.literal("2.0"),
394
+ method: import_zod6.default.literal("slates/auth.set"),
395
+ params: import_zod6.default.object({
396
+ authenticationMethodId: import_zod6.default.string(),
397
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
398
+ })
399
+ });
400
+ var slatesMessageAuthMethodsListRequest = import_zod6.default.object({
401
+ jsonrpc: import_zod6.default.literal("2.0"),
402
+ method: import_zod6.default.literal("slates/auth.methods.list"),
403
+ id: import_zod6.default.string(),
404
+ params: import_zod6.default.object({})
405
+ });
406
+ var slatesMessageAuthMethodsListResponse = import_zod6.default.object({
407
+ jsonrpc: import_zod6.default.literal("2.0"),
408
+ id: import_zod6.default.string(),
409
+ result: import_zod6.default.object({
410
+ authenticationMethods: import_zod6.default.array(slatesAuthenticationMethod)
411
+ })
412
+ });
413
+ var slatesMessageAuthMethodGetRequest = import_zod6.default.object({
414
+ jsonrpc: import_zod6.default.literal("2.0"),
415
+ method: import_zod6.default.literal("slates/auth.method.get"),
416
+ id: import_zod6.default.string(),
417
+ params: import_zod6.default.object({
418
+ authenticationMethodId: import_zod6.default.string()
419
+ })
420
+ });
421
+ var slatesMessageAuthMethodGetResponse = import_zod6.default.object({
422
+ jsonrpc: import_zod6.default.literal("2.0"),
423
+ id: import_zod6.default.string(),
424
+ result: import_zod6.default.object({
425
+ authenticationMethod: slatesAuthenticationMethod
426
+ })
427
+ });
428
+ var slatesMessageAuthInputChangedRequest = import_zod6.default.object({
429
+ jsonrpc: import_zod6.default.literal("2.0"),
430
+ method: import_zod6.default.literal("slates/auth.input.changed"),
431
+ id: import_zod6.default.string(),
432
+ params: import_zod6.default.object({
433
+ authenticationMethodId: import_zod6.default.string(),
434
+ previousInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).nullable(),
435
+ newInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
436
+ })
437
+ });
438
+ var slatesMessageAuthInputChangedResponse = import_zod6.default.object({
439
+ jsonrpc: import_zod6.default.literal("2.0"),
440
+ id: import_zod6.default.string(),
441
+ result: withRequestTraces({
442
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
443
+ })
444
+ });
445
+ var slatesMessageAuthDefaultInputGetRequest = import_zod6.default.object({
446
+ jsonrpc: import_zod6.default.literal("2.0"),
447
+ method: import_zod6.default.literal("slates/auth.input.get_default"),
448
+ id: import_zod6.default.string(),
449
+ params: import_zod6.default.object({
450
+ authenticationMethodId: import_zod6.default.string()
451
+ })
452
+ });
453
+ var slatesMessageAuthDefaultInputGetResponse = import_zod6.default.object({
454
+ jsonrpc: import_zod6.default.literal("2.0"),
455
+ id: import_zod6.default.string(),
456
+ result: withRequestTraces({
457
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
458
+ })
459
+ });
460
+ var slatesMessageAuthAuthorizationUrlGetRequest = import_zod6.default.object({
461
+ jsonrpc: import_zod6.default.literal("2.0"),
462
+ method: import_zod6.default.literal("slates/auth.authorization_url.get"),
463
+ id: import_zod6.default.string(),
464
+ params: import_zod6.default.object({
465
+ authenticationMethodId: import_zod6.default.string(),
466
+ redirectUri: import_zod6.default.string(),
467
+ state: import_zod6.default.string(),
468
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
469
+ clientId: import_zod6.default.string(),
470
+ clientSecret: import_zod6.default.string(),
471
+ scopes: import_zod6.default.array(import_zod6.default.string())
472
+ })
473
+ });
474
+ var slatesMessageAuthAuthorizationUrlGetResponse = import_zod6.default.object({
475
+ jsonrpc: import_zod6.default.literal("2.0"),
476
+ id: import_zod6.default.string(),
477
+ result: withRequestTraces({
478
+ authorizationUrl: import_zod6.default.string(),
479
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
480
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
481
+ })
482
+ });
483
+ var slatesMessageAuthAuthorizationCallbackHandleRequest = import_zod6.default.object({
484
+ jsonrpc: import_zod6.default.literal("2.0"),
485
+ method: import_zod6.default.literal("slates/auth.authorization_callback.handle"),
486
+ id: import_zod6.default.string(),
487
+ params: import_zod6.default.object({
488
+ authenticationMethodId: import_zod6.default.string(),
489
+ code: import_zod6.default.string(),
490
+ state: import_zod6.default.string(),
491
+ redirectUri: 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
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
497
+ })
498
+ });
499
+ var slatesMessageAuthAuthorizationCallbackHandleResponse = import_zod6.default.object({
500
+ jsonrpc: import_zod6.default.literal("2.0"),
501
+ id: import_zod6.default.string(),
502
+ result: withRequestTraces({
503
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
504
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
505
+ scopes: import_zod6.default.array(import_zod6.default.string()).optional()
506
+ })
507
+ });
508
+ var slatesMessageAuthTokenRefreshHandleRequest = import_zod6.default.object({
509
+ jsonrpc: import_zod6.default.literal("2.0"),
510
+ method: import_zod6.default.literal("slates/auth.token_refresh.handle"),
511
+ id: import_zod6.default.string(),
512
+ params: import_zod6.default.object({
513
+ authenticationMethodId: import_zod6.default.string(),
514
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
515
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
516
+ clientId: import_zod6.default.string(),
517
+ clientSecret: import_zod6.default.string(),
518
+ scopes: import_zod6.default.array(import_zod6.default.string())
519
+ })
520
+ });
521
+ var slatesMessageAuthTokenRefreshHandleResponse = import_zod6.default.object({
522
+ jsonrpc: import_zod6.default.literal("2.0"),
523
+ id: import_zod6.default.string(),
524
+ result: withRequestTraces({
525
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
526
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
527
+ })
528
+ });
529
+ var slatesMessageAuthProfileGetRequest = import_zod6.default.object({
530
+ jsonrpc: import_zod6.default.literal("2.0"),
531
+ method: import_zod6.default.literal("slates/auth.profile.get"),
532
+ id: import_zod6.default.string(),
533
+ params: import_zod6.default.object({
534
+ authenticationMethodId: import_zod6.default.string(),
535
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
536
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
537
+ scopes: import_zod6.default.array(import_zod6.default.string())
538
+ })
539
+ });
540
+ var slatesMessageAuthProfileGetResponse = import_zod6.default.object({
541
+ jsonrpc: import_zod6.default.literal("2.0"),
542
+ id: import_zod6.default.string(),
543
+ result: withRequestTraces({
544
+ profile: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
545
+ })
546
+ });
547
+ var slatesMessageAuthOutputGetRequest = import_zod6.default.object({
548
+ jsonrpc: import_zod6.default.literal("2.0"),
549
+ method: import_zod6.default.literal("slates/auth.output.get"),
550
+ id: import_zod6.default.string(),
551
+ params: import_zod6.default.object({
552
+ authenticationMethodId: import_zod6.default.string(),
553
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
554
+ })
555
+ });
556
+ var slatesMessageAuthOutputGetResponse = import_zod6.default.object({
557
+ jsonrpc: import_zod6.default.literal("2.0"),
558
+ id: import_zod6.default.string(),
559
+ result: withRequestTraces({
560
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
561
+ })
562
+ });
563
+ var slatesAuthResponsesByMethod = {
564
+ "slates/auth.methods.list": slatesMessageAuthMethodsListResponse,
565
+ "slates/auth.method.get": slatesMessageAuthMethodGetResponse,
566
+ "slates/auth.input.changed": slatesMessageAuthInputChangedResponse,
567
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetResponse,
568
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetResponse,
569
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleResponse,
570
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleResponse,
571
+ "slates/auth.profile.get": slatesMessageAuthProfileGetResponse,
572
+ "slates/auth.output.get": slatesMessageAuthOutputGetResponse
573
+ };
574
+ var slatesAuthRequestsByMethod = {
575
+ "slates/auth.methods.list": slatesMessageAuthMethodsListRequest,
576
+ "slates/auth.method.get": slatesMessageAuthMethodGetRequest,
577
+ "slates/auth.input.changed": slatesMessageAuthInputChangedRequest,
578
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetRequest,
579
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetRequest,
580
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleRequest,
581
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleRequest,
582
+ "slates/auth.profile.get": slatesMessageAuthProfileGetRequest,
583
+ "slates/auth.output.get": slatesMessageAuthOutputGetRequest
584
+ };
585
+ var slatesAuthNotificationsByMethod = {
586
+ "slates/auth.set": slatesMessageSetAuthNotification
587
+ };
588
+
589
+ // src/messages/config.ts
590
+ var import_zod7 = __toESM(require("zod"), 1);
591
+ var slatesMessageSetConfigNotification = import_zod7.default.object({
592
+ jsonrpc: import_zod7.default.literal("2.0"),
593
+ method: import_zod7.default.literal("slates/config.set"),
594
+ params: import_zod7.default.object({
595
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
596
+ })
597
+ });
598
+ var slatesMessageConfigSchemaGetRequest = import_zod7.default.object({
599
+ jsonrpc: import_zod7.default.literal("2.0"),
600
+ method: import_zod7.default.literal("slates/config.schema.get"),
601
+ id: import_zod7.default.string(),
602
+ params: import_zod7.default.object({})
603
+ });
604
+ var slatesMessageConfigSchemaGetResponse = import_zod7.default.object({
605
+ jsonrpc: import_zod7.default.literal("2.0"),
606
+ id: import_zod7.default.string(),
607
+ result: import_zod7.default.object({
608
+ schema: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
609
+ })
610
+ });
611
+ var slatesMessageConfigChangedRequest = import_zod7.default.object({
612
+ jsonrpc: import_zod7.default.literal("2.0"),
613
+ method: import_zod7.default.literal("slates/config.changed"),
614
+ id: import_zod7.default.string(),
615
+ params: import_zod7.default.object({
616
+ previousConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable(),
617
+ newConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
618
+ })
619
+ });
620
+ var slatesMessageConfigChangedResponse = import_zod7.default.object({
621
+ jsonrpc: import_zod7.default.literal("2.0"),
622
+ id: import_zod7.default.string(),
623
+ result: withRequestTraces({
624
+ success: import_zod7.default.boolean(),
625
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).optional(),
626
+ errors: import_zod7.default.array(
627
+ import_zod7.default.object({
628
+ code: import_zod7.default.string(),
629
+ message: import_zod7.default.string(),
630
+ path: import_zod7.default.array(import_zod7.default.string()).optional()
631
+ })
632
+ ).optional()
633
+ })
634
+ });
635
+ var slatesMessageConfigDefaultGetRequest = import_zod7.default.object({
636
+ jsonrpc: import_zod7.default.literal("2.0"),
637
+ method: import_zod7.default.literal("slates/config.get_default"),
638
+ id: import_zod7.default.string(),
639
+ params: import_zod7.default.object({})
640
+ });
641
+ var slatesMessageConfigDefaultGetResponse = import_zod7.default.object({
642
+ jsonrpc: import_zod7.default.literal("2.0"),
643
+ id: import_zod7.default.string(),
644
+ result: withRequestTraces({
645
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable()
646
+ })
647
+ });
648
+ var slatesConfigResponsesByMethod = {
649
+ "slates/config.schema.get": slatesMessageConfigSchemaGetResponse,
650
+ "slates/config.get_default": slatesMessageConfigDefaultGetResponse,
651
+ "slates/config.changed": slatesMessageConfigChangedResponse
652
+ };
653
+ var slatesConfigRequestsByMethod = {
654
+ "slates/config.schema.get": slatesMessageConfigSchemaGetRequest,
655
+ "slates/config.get_default": slatesMessageConfigDefaultGetRequest,
656
+ "slates/config.changed": slatesMessageConfigChangedRequest
657
+ };
658
+ var slatesConfigNotificationsByMethod = {
659
+ "slates/config.set": slatesMessageSetConfigNotification
660
+ };
661
+
662
+ // src/messages/controlFlow.ts
663
+ var import_zod8 = __toESM(require("zod"), 1);
664
+
665
+ // src/version.ts
666
+ var SLATES_PROTOCOL_VERSION = "slates@2026-01-01";
667
+
668
+ // src/messages/controlFlow.ts
669
+ var slatesMessageHelloNotification = import_zod8.default.object({
670
+ jsonrpc: import_zod8.default.literal("2.0"),
671
+ method: import_zod8.default.literal("slates/hello"),
672
+ params: import_zod8.default.object({
673
+ protocol: import_zod8.default.literal(SLATES_PROTOCOL_VERSION)
674
+ })
675
+ });
676
+ var slatesMessageSetParticipantsNotification = import_zod8.default.object({
677
+ jsonrpc: import_zod8.default.literal("2.0"),
678
+ method: import_zod8.default.literal("slates/participant.set"),
679
+ params: import_zod8.default.object({
680
+ participants: import_zod8.default.array(slatesParticipant)
681
+ })
682
+ });
683
+ var slatesMessageSessionStartNotification = import_zod8.default.object({
684
+ jsonrpc: import_zod8.default.literal("2.0"),
685
+ method: import_zod8.default.literal("slates/session.start"),
686
+ params: import_zod8.default.object({
687
+ sessionId: import_zod8.default.string(),
688
+ state: import_zod8.default.record(import_zod8.default.string(), import_zod8.default.any())
689
+ })
690
+ });
691
+ var slatesControlFlowNotificationsByMethod = {
692
+ "slates/hello": slatesMessageHelloNotification,
693
+ "slates/participant.set": slatesMessageSetParticipantsNotification,
694
+ "slates/session.start": slatesMessageSessionStartNotification
695
+ };
696
+
697
+ // src/messages/identify.ts
698
+ var import_zod9 = __toESM(require("zod"), 1);
699
+ var slatesMessageProviderIdentifyRequest = import_zod9.default.object({
700
+ jsonrpc: import_zod9.default.literal("2.0"),
701
+ method: import_zod9.default.literal("slates/provider.identify"),
702
+ id: import_zod9.default.string(),
703
+ params: import_zod9.default.object({})
704
+ });
705
+ var slatesMessageProviderIdentifyResponse = import_zod9.default.object({
706
+ jsonrpc: import_zod9.default.literal("2.0"),
707
+ id: import_zod9.default.string(),
708
+ result: import_zod9.default.object({
709
+ protocol: import_zod9.default.literal(SLATES_PROTOCOL_VERSION),
710
+ provider: import_zod9.default.object({
711
+ type: import_zod9.default.literal("provider"),
712
+ id: import_zod9.default.string(),
713
+ name: import_zod9.default.string(),
714
+ description: import_zod9.default.string().optional(),
715
+ metadata: import_zod9.default.record(import_zod9.default.string(), import_zod9.default.any()).optional()
716
+ })
717
+ })
718
+ });
719
+ var slatesIdentifyResponsesByMethod = {
720
+ "slates/provider.identify": slatesMessageProviderIdentifyResponse
721
+ };
722
+ var slatesIdentifyRequestsByMethod = {
723
+ "slates/provider.identify": slatesMessageProviderIdentifyRequest
724
+ };
725
+
726
+ // src/messages/index.ts
727
+ var slatesResponsesByMethod = {
728
+ ...slatesActionResponsesByMethod,
729
+ ...slatesAuthResponsesByMethod,
730
+ ...slatesConfigResponsesByMethod,
731
+ ...slatesIdentifyResponsesByMethod
732
+ };
733
+ var slatesRequestsByMethod = {
734
+ ...slatesActionRequestsByMethod,
735
+ ...slatesAuthRequestsByMethod,
736
+ ...slatesConfigRequestsByMethod,
737
+ ...slatesIdentifyRequestsByMethod
738
+ };
739
+ var slatesNotificationsByMethod = {
740
+ ...slatesAuthNotificationsByMethod,
741
+ ...slatesConfigNotificationsByMethod,
742
+ ...slatesControlFlowNotificationsByMethod
743
+ };
744
+
745
+ // src/handler/provider.ts
746
+ var SlatesProviderProtoHandlerManager = class {
747
+ #implMap = /* @__PURE__ */ new Map();
748
+ onNotification(method, handler) {
749
+ let schema = slatesNotificationsByMethod[method];
750
+ if (!schema) {
751
+ throw new Error(`No schema found for method: ${method}`);
752
+ }
753
+ this.#implMap.set(method, {
754
+ type: "notification",
755
+ handler,
756
+ schema
757
+ });
758
+ }
759
+ onRequest(method, cb) {
760
+ let schema = slatesRequestsByMethod[method];
761
+ if (!schema) {
762
+ throw new Error(`No schema found for method: ${method}`);
763
+ }
764
+ this.#implMap.set(method, {
765
+ type: "request",
766
+ handler: cb,
767
+ schema
768
+ });
769
+ }
770
+ async _handleInput(input) {
771
+ try {
772
+ if (typeof input !== "object" || input === null) {
773
+ return {
774
+ jsonrpc: "2.0",
775
+ id: input.id,
776
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid input" }))
777
+ };
778
+ }
779
+ if (input.jsonrpc !== "2.0") {
780
+ return {
781
+ jsonrpc: "2.0",
782
+ id: input.id,
783
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid jsonrpc version" }))
784
+ };
785
+ }
786
+ let method = input.method;
787
+ if (typeof method !== "string") {
788
+ return {
789
+ jsonrpc: "2.0",
790
+ id: input.id,
791
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid or missing method" }))
792
+ };
793
+ }
794
+ let impl = this.#implMap.get(input.method);
795
+ if (!impl) {
796
+ return {
797
+ jsonrpc: "2.0",
798
+ id: input.id,
799
+ error: toSlateErrorResponse((0, import_error.notFoundError)("handler", input.method))
800
+ };
801
+ }
802
+ let parsed = impl.schema.safeParse(input);
803
+ if (!parsed.success) {
804
+ return {
805
+ jsonrpc: "2.0",
806
+ id: input.id,
807
+ error: toSlateErrorResponse(
808
+ (0, import_error.validationError)({
809
+ entity: "request",
810
+ message: "Invalid request parameters",
811
+ errors: parsed.error.issues.map((i) => ({
812
+ ...i,
813
+ path: i.path.map((p) => String(p))
814
+ }))
815
+ })
816
+ )
817
+ };
818
+ }
819
+ if (impl.type === "notification") {
820
+ await impl.handler(parsed.data);
821
+ return;
822
+ }
823
+ let result = await impl.handler(parsed.data);
824
+ return {
825
+ jsonrpc: "2.0",
826
+ id: parsed.data.id,
827
+ result
828
+ };
829
+ } catch (err) {
830
+ if (!getSlateErrorResponse(err) && !getServiceErrorData(err)) {
831
+ console.error(err);
832
+ }
833
+ return {
834
+ jsonrpc: "2.0",
835
+ id: input.id,
836
+ error: toSlateErrorResponse(err, {
837
+ message: "Internal server error"
838
+ })
839
+ };
840
+ }
841
+ }
842
+ static async handleInput(manager, input) {
843
+ return manager._handleInput(input);
844
+ }
845
+ };
846
+ var createSlatesProviderProtoHandler = (cb) => ({
847
+ run: async () => {
848
+ let manager = new SlatesProviderProtoHandlerManager();
849
+ await cb(manager);
850
+ return manager;
851
+ }
852
+ });
853
+ var toSlateErrorResponse = (error, defaults = {}) => {
854
+ let slateError = getSlateErrorResponse(error);
855
+ if (slateError) return slateError;
856
+ let serviceError = getServiceErrorData(error);
857
+ if (serviceError) {
858
+ return mapServiceErrorToSlateErrorResponse(serviceError, defaults);
859
+ }
860
+ return mapUnknownErrorToSlateErrorResponse(error, defaults);
861
+ };
862
+ var SERVICE_ERROR_CODE_MAP = {
863
+ invalid_data: "input.invalid",
864
+ bad_request: "request.bad",
865
+ not_found: "resource.not_found",
866
+ unauthorized: "auth.required",
867
+ forbidden: "permission.denied",
868
+ invalid_version: "request.invalid_version",
869
+ conflict: "resource.conflict",
870
+ gone: "resource.gone",
871
+ payment_required: "payment.required",
872
+ precondition_failed: "request.precondition_failed",
873
+ not_acceptable: "request.not_acceptable",
874
+ not_implemented: "operation.not_implemented",
875
+ too_many_requests: "request.rate_limited",
876
+ timeout: "internal.timeout",
877
+ internal_server_error: "internal.unexpected"
878
+ };
879
+ var isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
880
+ var isStructuredValue = (value) => (typeof value === "object" || typeof value === "function") && value !== null;
881
+ var isSlateErrorPayload = (value) => isRecord(value) && typeof value.code === "string" && typeof value.message === "string" && typeof value.kind === "string";
882
+ 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);
883
+ var getSlateErrorResponse = (error) => {
884
+ if (isStructuredValue(error) && "name" in error && typeof error.name === "string" && error.name.startsWith("SlateError") && "toResponse" in error && typeof error.toResponse === "function") {
885
+ let response = error.toResponse();
886
+ return isSlateErrorPayload(response) ? response : null;
887
+ }
888
+ if (isSlateErrorPayload(error)) return error;
889
+ if (isStructuredValue(error) && "data" in error && isSlateErrorPayload(error.data)) {
890
+ return error.data;
891
+ }
892
+ return null;
893
+ };
894
+ var getServiceErrorData = (error) => {
895
+ if ((0, import_error.isServiceError)(error) && isServiceErrorData(error.data)) {
896
+ return error.data;
897
+ }
898
+ if (isServiceErrorData(error)) return error;
899
+ if (isStructuredValue(error) && "data" in error && isServiceErrorData(error.data)) {
900
+ return error.data;
901
+ }
902
+ if (isStructuredValue(error) && "toResponse" in error && typeof error.toResponse === "function") {
903
+ let response = error.toResponse();
904
+ if (isServiceErrorData(response)) return response;
905
+ }
906
+ return null;
907
+ };
908
+ var mapKind = (code) => {
909
+ if (code.startsWith("declaration.")) return "declaration";
910
+ if (code.startsWith("input.")) return "validation";
911
+ if (code.startsWith("request.")) return "request";
912
+ if (code.startsWith("config.")) return "config";
913
+ if (code.startsWith("auth.") || code.startsWith("permission.")) return "auth";
914
+ if (code.startsWith("resource.")) return "resource";
915
+ if (code.startsWith("payment.")) return "payment";
916
+ if (code.startsWith("transport.")) return "transport";
917
+ if (code.startsWith("upstream.")) return "upstream";
918
+ return "internal";
919
+ };
920
+ 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";
921
+ var mapServiceErrorCode = (code, status) => {
922
+ if (SERVICE_ERROR_CODE_MAP[code]) return SERVICE_ERROR_CODE_MAP[code];
923
+ if (status === 400) return "request.bad";
924
+ if (status === 401) return "auth.required";
925
+ if (status === 402) return "payment.required";
926
+ if (status === 403) return "permission.denied";
927
+ if (status === 404) return "resource.not_found";
928
+ if (status === 406) return "request.not_acceptable";
929
+ if (status === 409) return "resource.conflict";
930
+ if (status === 410) return "resource.gone";
931
+ if (status === 412) return "request.precondition_failed";
932
+ if (status === 429) return "request.rate_limited";
933
+ if (status === 501) return "operation.not_implemented";
934
+ if (status === 504) return "internal.timeout";
935
+ if (status && status >= 500) return "internal.unexpected";
936
+ return "internal.unexpected";
937
+ };
938
+ var mapIssues = (errors) => {
939
+ if (!Array.isArray(errors)) return void 0;
940
+ let issues = errors.map((error) => {
941
+ if (!isRecord(error)) {
942
+ return { message: String(error) };
943
+ }
944
+ return {
945
+ ...error,
946
+ path: Array.isArray(error.path) ? error.path.map((entry) => String(entry)) : void 0,
947
+ code: typeof error.code === "string" ? error.code : void 0,
948
+ message: typeof error.message === "string" ? error.message : "Validation issue"
949
+ };
950
+ });
951
+ return issues.length > 0 ? issues : void 0;
952
+ };
953
+ var mapServiceErrorToSlateErrorResponse = (error, defaults = {}) => {
954
+ let code = defaults.code ?? mapServiceErrorCode(error.code, error.status);
955
+ let extraEntries = Object.entries(error).filter(
956
+ ([key]) => ![
957
+ "status",
958
+ "code",
959
+ "message",
960
+ "errors",
961
+ "hint",
962
+ "description",
963
+ "reason",
964
+ "object",
965
+ "ok"
966
+ ].includes(key)
967
+ );
968
+ return {
969
+ code,
970
+ kind: mapKind(code),
971
+ message: error.message,
972
+ retryable: mapRetryable(code),
973
+ status: error.status,
974
+ ...mapIssues(error.errors) ? { issues: mapIssues(error.errors) } : {},
975
+ baggage: {
976
+ serviceError: {
977
+ code: error.code,
978
+ status: error.status,
979
+ hint: error.hint,
980
+ description: error.description,
981
+ reason: error.reason
982
+ },
983
+ ...extraEntries.length > 0 ? { serviceErrorData: Object.fromEntries(extraEntries) } : {}
984
+ }
985
+ };
986
+ };
987
+ var mapUnknownErrorToSlateErrorResponse = (error, defaults = {}) => ({
988
+ code: defaults.code ?? "internal.unexpected",
989
+ kind: "internal",
990
+ message: defaults.message ?? (error instanceof Error ? error.message : "An unexpected internal error occurred."),
991
+ retryable: false,
992
+ status: 500,
993
+ ...error instanceof Error ? {
994
+ baggage: {
995
+ originalName: error.name
996
+ }
997
+ } : {}
998
+ });
999
+ // Annotate the CommonJS export names for ESM import in node:
1000
+ 0 && (module.exports = {
1001
+ SLATES_PROTOCOL_VERSION,
1002
+ SlatesProviderProtoHandlerManager,
1003
+ createSlatesProviderProtoHandler,
1004
+ slatesAction,
1005
+ slatesActionBase,
1006
+ slatesActionRequestsByMethod,
1007
+ slatesActionResponsesByMethod,
1008
+ slatesActionScopeClause,
1009
+ slatesActionScopes,
1010
+ slatesActionTool,
1011
+ slatesActionTrigger,
1012
+ slatesAuthNotificationsByMethod,
1013
+ slatesAuthRequestsByMethod,
1014
+ slatesAuthResponsesByMethod,
1015
+ slatesAuthenticationMethod,
1016
+ slatesConfigNotificationsByMethod,
1017
+ slatesConfigRequestsByMethod,
1018
+ slatesConfigResponsesByMethod,
1019
+ slatesControlFlowNotificationsByMethod,
1020
+ slatesIdentifyRequestsByMethod,
1021
+ slatesIdentifyResponsesByMethod,
1022
+ slatesMessageActionGetRequest,
1023
+ slatesMessageActionGetResponse,
1024
+ slatesMessageActionInvokeRequest,
1025
+ slatesMessageActionInvokeResponse,
1026
+ slatesMessageActionTriggerEventMapRequest,
1027
+ slatesMessageActionTriggerEventMapResponse,
1028
+ slatesMessageActionTriggerEventsPollRequest,
1029
+ slatesMessageActionTriggerEventsPollResponse,
1030
+ slatesMessageActionTriggerWebhookHandleRequest,
1031
+ slatesMessageActionTriggerWebhookHandleResponse,
1032
+ slatesMessageActionTriggerWebhookRegisterRequest,
1033
+ slatesMessageActionTriggerWebhookRegisterResponse,
1034
+ slatesMessageActionTriggerWebhookUnregisterRequest,
1035
+ slatesMessageActionTriggerWebhookUnregisterResponse,
1036
+ slatesMessageActionsListRequest,
1037
+ slatesMessageActionsListResponse,
1038
+ slatesMessageAuthAuthorizationCallbackHandleRequest,
1039
+ slatesMessageAuthAuthorizationCallbackHandleResponse,
1040
+ slatesMessageAuthAuthorizationUrlGetRequest,
1041
+ slatesMessageAuthAuthorizationUrlGetResponse,
1042
+ slatesMessageAuthDefaultInputGetRequest,
1043
+ slatesMessageAuthDefaultInputGetResponse,
1044
+ slatesMessageAuthInputChangedRequest,
1045
+ slatesMessageAuthInputChangedResponse,
1046
+ slatesMessageAuthMethodGetRequest,
1047
+ slatesMessageAuthMethodGetResponse,
1048
+ slatesMessageAuthMethodsListRequest,
1049
+ slatesMessageAuthMethodsListResponse,
1050
+ slatesMessageAuthOutputGetRequest,
1051
+ slatesMessageAuthOutputGetResponse,
1052
+ slatesMessageAuthProfileGetRequest,
1053
+ slatesMessageAuthProfileGetResponse,
1054
+ slatesMessageAuthTokenRefreshHandleRequest,
1055
+ slatesMessageAuthTokenRefreshHandleResponse,
1056
+ slatesMessageConfigChangedRequest,
1057
+ slatesMessageConfigChangedResponse,
1058
+ slatesMessageConfigDefaultGetRequest,
1059
+ slatesMessageConfigDefaultGetResponse,
1060
+ slatesMessageConfigSchemaGetRequest,
1061
+ slatesMessageConfigSchemaGetResponse,
1062
+ slatesMessageHelloNotification,
1063
+ slatesMessageProviderIdentifyRequest,
1064
+ slatesMessageProviderIdentifyResponse,
1065
+ slatesMessageSessionStartNotification,
1066
+ slatesMessageSetAuthNotification,
1067
+ slatesMessageSetConfigNotification,
1068
+ slatesMessageSetParticipantsNotification,
1069
+ slatesNotificationsByMethod,
1070
+ slatesParticipant,
1071
+ slatesRequestTrace,
1072
+ slatesRequestTraceTextBody,
1073
+ slatesRequestsByMethod,
1074
+ slatesResponsesByMethod,
1075
+ withRequestTraces
1076
+ });