@slates/proto 1.0.0-rc.6 → 1.0.0-rc.8

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 +1092 -2
  2. package/dist/index.d.cts +3462 -0
  3. package/dist/index.d.ts +3462 -4
  4. package/dist/index.module.js +986 -2
  5. package/package.json +7 -6
  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 +26 -7
  10. package/src/messages/auth.ts +10 -8
  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 -500
  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 -560
  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,1092 @@
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()})}),k=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()})}),_=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":k,"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":_},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(),callbackState: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()),callbackState:a.default.record(a.default.string(),a.default.any()).optional()})}),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=k,exports.slatesMessageActionTriggerWebhookUnregisterRequest=_,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
+ attachments: import_zod5.default.array(
276
+ import_zod5.default.object({
277
+ mimeType: import_zod5.default.string().optional(),
278
+ content: import_zod5.default.union([
279
+ import_zod5.default.object({
280
+ type: import_zod5.default.literal("url"),
281
+ url: import_zod5.default.string()
282
+ }),
283
+ import_zod5.default.object({
284
+ type: import_zod5.default.literal("content"),
285
+ encoding: import_zod5.default.union([import_zod5.default.literal("base64"), import_zod5.default.literal("utf-8")]),
286
+ content: import_zod5.default.string()
287
+ })
288
+ ])
289
+ })
290
+ ).optional()
291
+ })
292
+ });
293
+ var slatesMessageActionTriggerEventMapRequest = import_zod5.default.object({
294
+ jsonrpc: import_zod5.default.literal("2.0"),
295
+ method: import_zod5.default.literal("slates/action.trigger.map_event"),
296
+ id: import_zod5.default.string(),
297
+ params: import_zod5.default.object({
298
+ actionId: import_zod5.default.string(),
299
+ input: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
300
+ })
301
+ });
302
+ var slatesMessageActionTriggerEventMapResponse = import_zod5.default.object({
303
+ jsonrpc: import_zod5.default.literal("2.0"),
304
+ id: import_zod5.default.string(),
305
+ result: withRequestTraces({
306
+ type: import_zod5.default.string(),
307
+ id: import_zod5.default.string(),
308
+ output: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())
309
+ })
310
+ });
311
+ var slatesMessageActionTriggerEventsPollRequest = import_zod5.default.object({
312
+ jsonrpc: import_zod5.default.literal("2.0"),
313
+ method: import_zod5.default.literal("slates/action.trigger.poll_events"),
314
+ id: import_zod5.default.string(),
315
+ params: import_zod5.default.object({
316
+ actionId: import_zod5.default.string(),
317
+ state: import_zod5.default.any().nullable()
318
+ })
319
+ });
320
+ var slatesMessageActionTriggerEventsPollResponse = import_zod5.default.object({
321
+ jsonrpc: import_zod5.default.literal("2.0"),
322
+ id: import_zod5.default.string(),
323
+ result: withRequestTraces({
324
+ inputs: import_zod5.default.array(import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())),
325
+ updatedState: import_zod5.default.any().nullable().optional()
326
+ })
327
+ });
328
+ var slatesMessageActionTriggerWebhookHandleRequest = import_zod5.default.object({
329
+ jsonrpc: import_zod5.default.literal("2.0"),
330
+ method: import_zod5.default.literal("slates/action.trigger.webhook_handle"),
331
+ id: import_zod5.default.string(),
332
+ params: import_zod5.default.object({
333
+ actionId: import_zod5.default.string(),
334
+ url: import_zod5.default.string(),
335
+ method: import_zod5.default.string(),
336
+ headers: import_zod5.default.record(import_zod5.default.string(), import_zod5.default.string()),
337
+ body: import_zod5.default.object({
338
+ encoding: import_zod5.default.literal("base64"),
339
+ content: import_zod5.default.string()
340
+ }).nullable(),
341
+ state: import_zod5.default.any().nullable()
342
+ })
343
+ });
344
+ var slatesMessageActionTriggerWebhookHandleResponse = import_zod5.default.object({
345
+ jsonrpc: import_zod5.default.literal("2.0"),
346
+ id: import_zod5.default.string(),
347
+ result: withRequestTraces({
348
+ inputs: import_zod5.default.array(import_zod5.default.record(import_zod5.default.string(), import_zod5.default.any())),
349
+ updatedState: import_zod5.default.any().nullable().optional()
350
+ })
351
+ });
352
+ var slatesMessageActionTriggerWebhookRegisterRequest = import_zod5.default.object({
353
+ jsonrpc: import_zod5.default.literal("2.0"),
354
+ method: import_zod5.default.literal("slates/action.trigger.webhook_register"),
355
+ id: import_zod5.default.string(),
356
+ params: import_zod5.default.object({
357
+ actionId: import_zod5.default.string(),
358
+ webhookBaseUrl: import_zod5.default.string()
359
+ })
360
+ });
361
+ var slatesMessageActionTriggerWebhookRegisterResponse = import_zod5.default.object({
362
+ jsonrpc: import_zod5.default.literal("2.0"),
363
+ id: import_zod5.default.string(),
364
+ result: withRequestTraces({
365
+ registrationDetails: import_zod5.default.any(),
366
+ state: import_zod5.default.any().optional()
367
+ })
368
+ });
369
+ var slatesMessageActionTriggerWebhookUnregisterRequest = import_zod5.default.object({
370
+ jsonrpc: import_zod5.default.literal("2.0"),
371
+ method: import_zod5.default.literal("slates/action.trigger.webhook_unregister"),
372
+ id: import_zod5.default.string(),
373
+ params: import_zod5.default.object({
374
+ actionId: import_zod5.default.string(),
375
+ webhookBaseUrl: import_zod5.default.string(),
376
+ registrationDetails: import_zod5.default.any(),
377
+ state: import_zod5.default.any().optional()
378
+ })
379
+ });
380
+ var slatesMessageActionTriggerWebhookUnregisterResponse = import_zod5.default.object({
381
+ jsonrpc: import_zod5.default.literal("2.0"),
382
+ id: import_zod5.default.string(),
383
+ result: withRequestTraces({})
384
+ });
385
+ var slatesActionResponsesByMethod = {
386
+ "slates/actions.list": slatesMessageActionsListResponse,
387
+ "slates/action.get": slatesMessageActionGetResponse,
388
+ "slates/action.tool.invoke": slatesMessageActionInvokeResponse,
389
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapResponse,
390
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollResponse,
391
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleResponse,
392
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterResponse,
393
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterResponse
394
+ };
395
+ var slatesActionRequestsByMethod = {
396
+ "slates/actions.list": slatesMessageActionsListRequest,
397
+ "slates/action.get": slatesMessageActionGetRequest,
398
+ "slates/action.tool.invoke": slatesMessageActionInvokeRequest,
399
+ "slates/action.trigger.map_event": slatesMessageActionTriggerEventMapRequest,
400
+ "slates/action.trigger.poll_events": slatesMessageActionTriggerEventsPollRequest,
401
+ "slates/action.trigger.webhook_handle": slatesMessageActionTriggerWebhookHandleRequest,
402
+ "slates/action.trigger.webhook_register": slatesMessageActionTriggerWebhookRegisterRequest,
403
+ "slates/action.trigger.webhook_unregister": slatesMessageActionTriggerWebhookUnregisterRequest
404
+ };
405
+
406
+ // src/messages/auth.ts
407
+ var import_zod6 = __toESM(require("zod"), 1);
408
+ var slatesMessageSetAuthNotification = import_zod6.default.object({
409
+ jsonrpc: import_zod6.default.literal("2.0"),
410
+ method: import_zod6.default.literal("slates/auth.set"),
411
+ params: import_zod6.default.object({
412
+ authenticationMethodId: import_zod6.default.string(),
413
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
414
+ })
415
+ });
416
+ var slatesMessageAuthMethodsListRequest = import_zod6.default.object({
417
+ jsonrpc: import_zod6.default.literal("2.0"),
418
+ method: import_zod6.default.literal("slates/auth.methods.list"),
419
+ id: import_zod6.default.string(),
420
+ params: import_zod6.default.object({})
421
+ });
422
+ var slatesMessageAuthMethodsListResponse = import_zod6.default.object({
423
+ jsonrpc: import_zod6.default.literal("2.0"),
424
+ id: import_zod6.default.string(),
425
+ result: import_zod6.default.object({
426
+ authenticationMethods: import_zod6.default.array(slatesAuthenticationMethod)
427
+ })
428
+ });
429
+ var slatesMessageAuthMethodGetRequest = import_zod6.default.object({
430
+ jsonrpc: import_zod6.default.literal("2.0"),
431
+ method: import_zod6.default.literal("slates/auth.method.get"),
432
+ id: import_zod6.default.string(),
433
+ params: import_zod6.default.object({
434
+ authenticationMethodId: import_zod6.default.string()
435
+ })
436
+ });
437
+ var slatesMessageAuthMethodGetResponse = import_zod6.default.object({
438
+ jsonrpc: import_zod6.default.literal("2.0"),
439
+ id: import_zod6.default.string(),
440
+ result: import_zod6.default.object({
441
+ authenticationMethod: slatesAuthenticationMethod
442
+ })
443
+ });
444
+ var slatesMessageAuthInputChangedRequest = import_zod6.default.object({
445
+ jsonrpc: import_zod6.default.literal("2.0"),
446
+ method: import_zod6.default.literal("slates/auth.input.changed"),
447
+ id: import_zod6.default.string(),
448
+ params: import_zod6.default.object({
449
+ authenticationMethodId: import_zod6.default.string(),
450
+ previousInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).nullable(),
451
+ newInput: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
452
+ })
453
+ });
454
+ var slatesMessageAuthInputChangedResponse = import_zod6.default.object({
455
+ jsonrpc: import_zod6.default.literal("2.0"),
456
+ id: import_zod6.default.string(),
457
+ result: withRequestTraces({
458
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
459
+ })
460
+ });
461
+ var slatesMessageAuthDefaultInputGetRequest = import_zod6.default.object({
462
+ jsonrpc: import_zod6.default.literal("2.0"),
463
+ method: import_zod6.default.literal("slates/auth.input.get_default"),
464
+ id: import_zod6.default.string(),
465
+ params: import_zod6.default.object({
466
+ authenticationMethodId: import_zod6.default.string()
467
+ })
468
+ });
469
+ var slatesMessageAuthDefaultInputGetResponse = import_zod6.default.object({
470
+ jsonrpc: import_zod6.default.literal("2.0"),
471
+ id: import_zod6.default.string(),
472
+ result: withRequestTraces({
473
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
474
+ })
475
+ });
476
+ var slatesMessageAuthAuthorizationUrlGetRequest = import_zod6.default.object({
477
+ jsonrpc: import_zod6.default.literal("2.0"),
478
+ method: import_zod6.default.literal("slates/auth.authorization_url.get"),
479
+ id: import_zod6.default.string(),
480
+ params: import_zod6.default.object({
481
+ authenticationMethodId: import_zod6.default.string(),
482
+ redirectUri: import_zod6.default.string(),
483
+ state: import_zod6.default.string(),
484
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
485
+ clientId: import_zod6.default.string(),
486
+ clientSecret: import_zod6.default.string(),
487
+ scopes: import_zod6.default.array(import_zod6.default.string())
488
+ })
489
+ });
490
+ var slatesMessageAuthAuthorizationUrlGetResponse = import_zod6.default.object({
491
+ jsonrpc: import_zod6.default.literal("2.0"),
492
+ id: import_zod6.default.string(),
493
+ result: withRequestTraces({
494
+ authorizationUrl: import_zod6.default.string(),
495
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
496
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
497
+ })
498
+ });
499
+ var slatesMessageAuthAuthorizationCallbackHandleRequest = import_zod6.default.object({
500
+ jsonrpc: import_zod6.default.literal("2.0"),
501
+ method: import_zod6.default.literal("slates/auth.authorization_callback.handle"),
502
+ id: import_zod6.default.string(),
503
+ params: import_zod6.default.object({
504
+ authenticationMethodId: import_zod6.default.string(),
505
+ code: import_zod6.default.string(),
506
+ state: import_zod6.default.string(),
507
+ redirectUri: import_zod6.default.string(),
508
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
509
+ clientId: import_zod6.default.string(),
510
+ clientSecret: import_zod6.default.string(),
511
+ scopes: import_zod6.default.array(import_zod6.default.string()),
512
+ callbackState: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
513
+ })
514
+ });
515
+ var slatesMessageAuthAuthorizationCallbackHandleResponse = import_zod6.default.object({
516
+ jsonrpc: import_zod6.default.literal("2.0"),
517
+ id: import_zod6.default.string(),
518
+ result: withRequestTraces({
519
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
520
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional(),
521
+ scopes: import_zod6.default.array(import_zod6.default.string()).optional()
522
+ })
523
+ });
524
+ var slatesMessageAuthTokenRefreshHandleRequest = import_zod6.default.object({
525
+ jsonrpc: import_zod6.default.literal("2.0"),
526
+ method: import_zod6.default.literal("slates/auth.token_refresh.handle"),
527
+ id: import_zod6.default.string(),
528
+ params: import_zod6.default.object({
529
+ authenticationMethodId: import_zod6.default.string(),
530
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
531
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
532
+ clientId: import_zod6.default.string(),
533
+ clientSecret: import_zod6.default.string(),
534
+ scopes: import_zod6.default.array(import_zod6.default.string())
535
+ })
536
+ });
537
+ var slatesMessageAuthTokenRefreshHandleResponse = import_zod6.default.object({
538
+ jsonrpc: import_zod6.default.literal("2.0"),
539
+ id: import_zod6.default.string(),
540
+ result: withRequestTraces({
541
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
542
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()).optional()
543
+ })
544
+ });
545
+ var slatesMessageAuthProfileGetRequest = import_zod6.default.object({
546
+ jsonrpc: import_zod6.default.literal("2.0"),
547
+ method: import_zod6.default.literal("slates/auth.profile.get"),
548
+ id: import_zod6.default.string(),
549
+ params: import_zod6.default.object({
550
+ authenticationMethodId: import_zod6.default.string(),
551
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
552
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any()),
553
+ scopes: import_zod6.default.array(import_zod6.default.string())
554
+ })
555
+ });
556
+ var slatesMessageAuthProfileGetResponse = import_zod6.default.object({
557
+ jsonrpc: import_zod6.default.literal("2.0"),
558
+ id: import_zod6.default.string(),
559
+ result: withRequestTraces({
560
+ profile: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
561
+ })
562
+ });
563
+ var slatesMessageAuthOutputGetRequest = import_zod6.default.object({
564
+ jsonrpc: import_zod6.default.literal("2.0"),
565
+ method: import_zod6.default.literal("slates/auth.output.get"),
566
+ id: import_zod6.default.string(),
567
+ params: import_zod6.default.object({
568
+ authenticationMethodId: import_zod6.default.string(),
569
+ input: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
570
+ })
571
+ });
572
+ var slatesMessageAuthOutputGetResponse = import_zod6.default.object({
573
+ jsonrpc: import_zod6.default.literal("2.0"),
574
+ id: import_zod6.default.string(),
575
+ result: withRequestTraces({
576
+ output: import_zod6.default.record(import_zod6.default.string(), import_zod6.default.any())
577
+ })
578
+ });
579
+ var slatesAuthResponsesByMethod = {
580
+ "slates/auth.methods.list": slatesMessageAuthMethodsListResponse,
581
+ "slates/auth.method.get": slatesMessageAuthMethodGetResponse,
582
+ "slates/auth.input.changed": slatesMessageAuthInputChangedResponse,
583
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetResponse,
584
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetResponse,
585
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleResponse,
586
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleResponse,
587
+ "slates/auth.profile.get": slatesMessageAuthProfileGetResponse,
588
+ "slates/auth.output.get": slatesMessageAuthOutputGetResponse
589
+ };
590
+ var slatesAuthRequestsByMethod = {
591
+ "slates/auth.methods.list": slatesMessageAuthMethodsListRequest,
592
+ "slates/auth.method.get": slatesMessageAuthMethodGetRequest,
593
+ "slates/auth.input.changed": slatesMessageAuthInputChangedRequest,
594
+ "slates/auth.input.get_default": slatesMessageAuthDefaultInputGetRequest,
595
+ "slates/auth.authorization_url.get": slatesMessageAuthAuthorizationUrlGetRequest,
596
+ "slates/auth.authorization_callback.handle": slatesMessageAuthAuthorizationCallbackHandleRequest,
597
+ "slates/auth.token_refresh.handle": slatesMessageAuthTokenRefreshHandleRequest,
598
+ "slates/auth.profile.get": slatesMessageAuthProfileGetRequest,
599
+ "slates/auth.output.get": slatesMessageAuthOutputGetRequest
600
+ };
601
+ var slatesAuthNotificationsByMethod = {
602
+ "slates/auth.set": slatesMessageSetAuthNotification
603
+ };
604
+
605
+ // src/messages/config.ts
606
+ var import_zod7 = __toESM(require("zod"), 1);
607
+ var slatesMessageSetConfigNotification = import_zod7.default.object({
608
+ jsonrpc: import_zod7.default.literal("2.0"),
609
+ method: import_zod7.default.literal("slates/config.set"),
610
+ params: import_zod7.default.object({
611
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
612
+ })
613
+ });
614
+ var slatesMessageConfigSchemaGetRequest = import_zod7.default.object({
615
+ jsonrpc: import_zod7.default.literal("2.0"),
616
+ method: import_zod7.default.literal("slates/config.schema.get"),
617
+ id: import_zod7.default.string(),
618
+ params: import_zod7.default.object({})
619
+ });
620
+ var slatesMessageConfigSchemaGetResponse = import_zod7.default.object({
621
+ jsonrpc: import_zod7.default.literal("2.0"),
622
+ id: import_zod7.default.string(),
623
+ result: import_zod7.default.object({
624
+ schema: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
625
+ })
626
+ });
627
+ var slatesMessageConfigChangedRequest = import_zod7.default.object({
628
+ jsonrpc: import_zod7.default.literal("2.0"),
629
+ method: import_zod7.default.literal("slates/config.changed"),
630
+ id: import_zod7.default.string(),
631
+ params: import_zod7.default.object({
632
+ previousConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable(),
633
+ newConfig: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any())
634
+ })
635
+ });
636
+ var slatesMessageConfigChangedResponse = import_zod7.default.object({
637
+ jsonrpc: import_zod7.default.literal("2.0"),
638
+ id: import_zod7.default.string(),
639
+ result: withRequestTraces({
640
+ success: import_zod7.default.boolean(),
641
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).optional(),
642
+ errors: import_zod7.default.array(
643
+ import_zod7.default.object({
644
+ code: import_zod7.default.string(),
645
+ message: import_zod7.default.string(),
646
+ path: import_zod7.default.array(import_zod7.default.string()).optional()
647
+ })
648
+ ).optional()
649
+ })
650
+ });
651
+ var slatesMessageConfigDefaultGetRequest = import_zod7.default.object({
652
+ jsonrpc: import_zod7.default.literal("2.0"),
653
+ method: import_zod7.default.literal("slates/config.get_default"),
654
+ id: import_zod7.default.string(),
655
+ params: import_zod7.default.object({})
656
+ });
657
+ var slatesMessageConfigDefaultGetResponse = import_zod7.default.object({
658
+ jsonrpc: import_zod7.default.literal("2.0"),
659
+ id: import_zod7.default.string(),
660
+ result: withRequestTraces({
661
+ config: import_zod7.default.record(import_zod7.default.string(), import_zod7.default.any()).nullable()
662
+ })
663
+ });
664
+ var slatesConfigResponsesByMethod = {
665
+ "slates/config.schema.get": slatesMessageConfigSchemaGetResponse,
666
+ "slates/config.get_default": slatesMessageConfigDefaultGetResponse,
667
+ "slates/config.changed": slatesMessageConfigChangedResponse
668
+ };
669
+ var slatesConfigRequestsByMethod = {
670
+ "slates/config.schema.get": slatesMessageConfigSchemaGetRequest,
671
+ "slates/config.get_default": slatesMessageConfigDefaultGetRequest,
672
+ "slates/config.changed": slatesMessageConfigChangedRequest
673
+ };
674
+ var slatesConfigNotificationsByMethod = {
675
+ "slates/config.set": slatesMessageSetConfigNotification
676
+ };
677
+
678
+ // src/messages/controlFlow.ts
679
+ var import_zod8 = __toESM(require("zod"), 1);
680
+
681
+ // src/version.ts
682
+ var SLATES_PROTOCOL_VERSION = "slates@2026-01-01";
683
+
684
+ // src/messages/controlFlow.ts
685
+ var slatesMessageHelloNotification = import_zod8.default.object({
686
+ jsonrpc: import_zod8.default.literal("2.0"),
687
+ method: import_zod8.default.literal("slates/hello"),
688
+ params: import_zod8.default.object({
689
+ protocol: import_zod8.default.literal(SLATES_PROTOCOL_VERSION)
690
+ })
691
+ });
692
+ var slatesMessageSetParticipantsNotification = import_zod8.default.object({
693
+ jsonrpc: import_zod8.default.literal("2.0"),
694
+ method: import_zod8.default.literal("slates/participant.set"),
695
+ params: import_zod8.default.object({
696
+ participants: import_zod8.default.array(slatesParticipant)
697
+ })
698
+ });
699
+ var slatesMessageSessionStartNotification = import_zod8.default.object({
700
+ jsonrpc: import_zod8.default.literal("2.0"),
701
+ method: import_zod8.default.literal("slates/session.start"),
702
+ params: import_zod8.default.object({
703
+ sessionId: import_zod8.default.string(),
704
+ state: import_zod8.default.record(import_zod8.default.string(), import_zod8.default.any())
705
+ })
706
+ });
707
+ var slatesControlFlowNotificationsByMethod = {
708
+ "slates/hello": slatesMessageHelloNotification,
709
+ "slates/participant.set": slatesMessageSetParticipantsNotification,
710
+ "slates/session.start": slatesMessageSessionStartNotification
711
+ };
712
+
713
+ // src/messages/identify.ts
714
+ var import_zod9 = __toESM(require("zod"), 1);
715
+ var slatesMessageProviderIdentifyRequest = import_zod9.default.object({
716
+ jsonrpc: import_zod9.default.literal("2.0"),
717
+ method: import_zod9.default.literal("slates/provider.identify"),
718
+ id: import_zod9.default.string(),
719
+ params: import_zod9.default.object({})
720
+ });
721
+ var slatesMessageProviderIdentifyResponse = import_zod9.default.object({
722
+ jsonrpc: import_zod9.default.literal("2.0"),
723
+ id: import_zod9.default.string(),
724
+ result: import_zod9.default.object({
725
+ protocol: import_zod9.default.literal(SLATES_PROTOCOL_VERSION),
726
+ provider: import_zod9.default.object({
727
+ type: import_zod9.default.literal("provider"),
728
+ id: import_zod9.default.string(),
729
+ name: import_zod9.default.string(),
730
+ description: import_zod9.default.string().optional(),
731
+ metadata: import_zod9.default.record(import_zod9.default.string(), import_zod9.default.any()).optional()
732
+ })
733
+ })
734
+ });
735
+ var slatesIdentifyResponsesByMethod = {
736
+ "slates/provider.identify": slatesMessageProviderIdentifyResponse
737
+ };
738
+ var slatesIdentifyRequestsByMethod = {
739
+ "slates/provider.identify": slatesMessageProviderIdentifyRequest
740
+ };
741
+
742
+ // src/messages/index.ts
743
+ var slatesResponsesByMethod = {
744
+ ...slatesActionResponsesByMethod,
745
+ ...slatesAuthResponsesByMethod,
746
+ ...slatesConfigResponsesByMethod,
747
+ ...slatesIdentifyResponsesByMethod
748
+ };
749
+ var slatesRequestsByMethod = {
750
+ ...slatesActionRequestsByMethod,
751
+ ...slatesAuthRequestsByMethod,
752
+ ...slatesConfigRequestsByMethod,
753
+ ...slatesIdentifyRequestsByMethod
754
+ };
755
+ var slatesNotificationsByMethod = {
756
+ ...slatesAuthNotificationsByMethod,
757
+ ...slatesConfigNotificationsByMethod,
758
+ ...slatesControlFlowNotificationsByMethod
759
+ };
760
+
761
+ // src/handler/provider.ts
762
+ var SlatesProviderProtoHandlerManager = class {
763
+ #implMap = /* @__PURE__ */ new Map();
764
+ onNotification(method, handler) {
765
+ let schema = slatesNotificationsByMethod[method];
766
+ if (!schema) {
767
+ throw new Error(`No schema found for method: ${method}`);
768
+ }
769
+ this.#implMap.set(method, {
770
+ type: "notification",
771
+ handler,
772
+ schema
773
+ });
774
+ }
775
+ onRequest(method, cb) {
776
+ let schema = slatesRequestsByMethod[method];
777
+ if (!schema) {
778
+ throw new Error(`No schema found for method: ${method}`);
779
+ }
780
+ this.#implMap.set(method, {
781
+ type: "request",
782
+ handler: cb,
783
+ schema
784
+ });
785
+ }
786
+ async _handleInput(input) {
787
+ try {
788
+ if (typeof input !== "object" || input === null) {
789
+ return {
790
+ jsonrpc: "2.0",
791
+ id: input.id,
792
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid input" }))
793
+ };
794
+ }
795
+ if (input.jsonrpc !== "2.0") {
796
+ return {
797
+ jsonrpc: "2.0",
798
+ id: input.id,
799
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid jsonrpc version" }))
800
+ };
801
+ }
802
+ let method = input.method;
803
+ if (typeof method !== "string") {
804
+ return {
805
+ jsonrpc: "2.0",
806
+ id: input.id,
807
+ error: toSlateErrorResponse((0, import_error.badRequestError)({ message: "Invalid or missing method" }))
808
+ };
809
+ }
810
+ let impl = this.#implMap.get(input.method);
811
+ if (!impl) {
812
+ return {
813
+ jsonrpc: "2.0",
814
+ id: input.id,
815
+ error: toSlateErrorResponse((0, import_error.notFoundError)("handler", input.method))
816
+ };
817
+ }
818
+ let parsed = impl.schema.safeParse(input);
819
+ if (!parsed.success) {
820
+ return {
821
+ jsonrpc: "2.0",
822
+ id: input.id,
823
+ error: toSlateErrorResponse(
824
+ (0, import_error.validationError)({
825
+ entity: "request",
826
+ message: "Invalid request parameters",
827
+ errors: parsed.error.issues.map((i) => ({
828
+ ...i,
829
+ path: i.path.map((p) => String(p))
830
+ }))
831
+ })
832
+ )
833
+ };
834
+ }
835
+ if (impl.type === "notification") {
836
+ await impl.handler(parsed.data);
837
+ return;
838
+ }
839
+ let result = await impl.handler(parsed.data);
840
+ return {
841
+ jsonrpc: "2.0",
842
+ id: parsed.data.id,
843
+ result
844
+ };
845
+ } catch (err) {
846
+ if (!getSlateErrorResponse(err) && !getServiceErrorData(err)) {
847
+ console.error(err);
848
+ }
849
+ return {
850
+ jsonrpc: "2.0",
851
+ id: input.id,
852
+ error: toSlateErrorResponse(err, {
853
+ message: "Internal server error"
854
+ })
855
+ };
856
+ }
857
+ }
858
+ static async handleInput(manager, input) {
859
+ return manager._handleInput(input);
860
+ }
861
+ };
862
+ var createSlatesProviderProtoHandler = (cb) => ({
863
+ run: async () => {
864
+ let manager = new SlatesProviderProtoHandlerManager();
865
+ await cb(manager);
866
+ return manager;
867
+ }
868
+ });
869
+ var toSlateErrorResponse = (error, defaults = {}) => {
870
+ let slateError = getSlateErrorResponse(error);
871
+ if (slateError) return slateError;
872
+ let serviceError = getServiceErrorData(error);
873
+ if (serviceError) {
874
+ return mapServiceErrorToSlateErrorResponse(serviceError, defaults);
875
+ }
876
+ return mapUnknownErrorToSlateErrorResponse(error, defaults);
877
+ };
878
+ var SERVICE_ERROR_CODE_MAP = {
879
+ invalid_data: "input.invalid",
880
+ bad_request: "request.bad",
881
+ not_found: "resource.not_found",
882
+ unauthorized: "auth.required",
883
+ forbidden: "permission.denied",
884
+ invalid_version: "request.invalid_version",
885
+ conflict: "resource.conflict",
886
+ gone: "resource.gone",
887
+ payment_required: "payment.required",
888
+ precondition_failed: "request.precondition_failed",
889
+ not_acceptable: "request.not_acceptable",
890
+ not_implemented: "operation.not_implemented",
891
+ too_many_requests: "request.rate_limited",
892
+ timeout: "internal.timeout",
893
+ internal_server_error: "internal.unexpected"
894
+ };
895
+ var isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
896
+ var isStructuredValue = (value) => (typeof value === "object" || typeof value === "function") && value !== null;
897
+ var isSlateErrorPayload = (value) => isRecord(value) && typeof value.code === "string" && typeof value.message === "string" && typeof value.kind === "string";
898
+ 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);
899
+ var getSlateErrorResponse = (error) => {
900
+ if (isStructuredValue(error) && "name" in error && typeof error.name === "string" && error.name.startsWith("SlateError") && "toResponse" in error && typeof error.toResponse === "function") {
901
+ let response = error.toResponse();
902
+ return isSlateErrorPayload(response) ? response : null;
903
+ }
904
+ if (isSlateErrorPayload(error)) return error;
905
+ if (isStructuredValue(error) && "data" in error && isSlateErrorPayload(error.data)) {
906
+ return error.data;
907
+ }
908
+ return null;
909
+ };
910
+ var getServiceErrorData = (error) => {
911
+ if ((0, import_error.isServiceError)(error) && isServiceErrorData(error.data)) {
912
+ return error.data;
913
+ }
914
+ if (isServiceErrorData(error)) return error;
915
+ if (isStructuredValue(error) && "data" in error && isServiceErrorData(error.data)) {
916
+ return error.data;
917
+ }
918
+ if (isStructuredValue(error) && "toResponse" in error && typeof error.toResponse === "function") {
919
+ let response = error.toResponse();
920
+ if (isServiceErrorData(response)) return response;
921
+ }
922
+ return null;
923
+ };
924
+ var mapKind = (code) => {
925
+ if (code.startsWith("declaration.")) return "declaration";
926
+ if (code.startsWith("input.")) return "validation";
927
+ if (code.startsWith("request.")) return "request";
928
+ if (code.startsWith("config.")) return "config";
929
+ if (code.startsWith("auth.") || code.startsWith("permission.")) return "auth";
930
+ if (code.startsWith("resource.")) return "resource";
931
+ if (code.startsWith("payment.")) return "payment";
932
+ if (code.startsWith("transport.")) return "transport";
933
+ if (code.startsWith("upstream.")) return "upstream";
934
+ return "internal";
935
+ };
936
+ 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";
937
+ var mapServiceErrorCode = (code, status) => {
938
+ if (SERVICE_ERROR_CODE_MAP[code]) return SERVICE_ERROR_CODE_MAP[code];
939
+ if (status === 400) return "request.bad";
940
+ if (status === 401) return "auth.required";
941
+ if (status === 402) return "payment.required";
942
+ if (status === 403) return "permission.denied";
943
+ if (status === 404) return "resource.not_found";
944
+ if (status === 406) return "request.not_acceptable";
945
+ if (status === 409) return "resource.conflict";
946
+ if (status === 410) return "resource.gone";
947
+ if (status === 412) return "request.precondition_failed";
948
+ if (status === 429) return "request.rate_limited";
949
+ if (status === 501) return "operation.not_implemented";
950
+ if (status === 504) return "internal.timeout";
951
+ if (status && status >= 500) return "internal.unexpected";
952
+ return "internal.unexpected";
953
+ };
954
+ var mapIssues = (errors) => {
955
+ if (!Array.isArray(errors)) return void 0;
956
+ let issues = errors.map((error) => {
957
+ if (!isRecord(error)) {
958
+ return { message: String(error) };
959
+ }
960
+ return {
961
+ ...error,
962
+ path: Array.isArray(error.path) ? error.path.map((entry) => String(entry)) : void 0,
963
+ code: typeof error.code === "string" ? error.code : void 0,
964
+ message: typeof error.message === "string" ? error.message : "Validation issue"
965
+ };
966
+ });
967
+ return issues.length > 0 ? issues : void 0;
968
+ };
969
+ var mapServiceErrorToSlateErrorResponse = (error, defaults = {}) => {
970
+ let code = defaults.code ?? mapServiceErrorCode(error.code, error.status);
971
+ let extraEntries = Object.entries(error).filter(
972
+ ([key]) => ![
973
+ "status",
974
+ "code",
975
+ "message",
976
+ "errors",
977
+ "hint",
978
+ "description",
979
+ "reason",
980
+ "object",
981
+ "ok"
982
+ ].includes(key)
983
+ );
984
+ return {
985
+ code,
986
+ kind: mapKind(code),
987
+ message: error.message,
988
+ retryable: mapRetryable(code),
989
+ status: error.status,
990
+ ...mapIssues(error.errors) ? { issues: mapIssues(error.errors) } : {},
991
+ baggage: {
992
+ serviceError: {
993
+ code: error.code,
994
+ status: error.status,
995
+ hint: error.hint,
996
+ description: error.description,
997
+ reason: error.reason
998
+ },
999
+ ...extraEntries.length > 0 ? { serviceErrorData: Object.fromEntries(extraEntries) } : {}
1000
+ }
1001
+ };
1002
+ };
1003
+ var mapUnknownErrorToSlateErrorResponse = (error, defaults = {}) => ({
1004
+ code: defaults.code ?? "internal.unexpected",
1005
+ kind: "internal",
1006
+ message: defaults.message ?? (error instanceof Error ? error.message : "An unexpected internal error occurred."),
1007
+ retryable: false,
1008
+ status: 500,
1009
+ ...error instanceof Error ? {
1010
+ baggage: {
1011
+ originalName: error.name
1012
+ }
1013
+ } : {}
1014
+ });
1015
+ // Annotate the CommonJS export names for ESM import in node:
1016
+ 0 && (module.exports = {
1017
+ SLATES_PROTOCOL_VERSION,
1018
+ SlatesProviderProtoHandlerManager,
1019
+ createSlatesProviderProtoHandler,
1020
+ slatesAction,
1021
+ slatesActionBase,
1022
+ slatesActionRequestsByMethod,
1023
+ slatesActionResponsesByMethod,
1024
+ slatesActionScopeClause,
1025
+ slatesActionScopes,
1026
+ slatesActionTool,
1027
+ slatesActionTrigger,
1028
+ slatesAuthNotificationsByMethod,
1029
+ slatesAuthRequestsByMethod,
1030
+ slatesAuthResponsesByMethod,
1031
+ slatesAuthenticationMethod,
1032
+ slatesConfigNotificationsByMethod,
1033
+ slatesConfigRequestsByMethod,
1034
+ slatesConfigResponsesByMethod,
1035
+ slatesControlFlowNotificationsByMethod,
1036
+ slatesIdentifyRequestsByMethod,
1037
+ slatesIdentifyResponsesByMethod,
1038
+ slatesMessageActionGetRequest,
1039
+ slatesMessageActionGetResponse,
1040
+ slatesMessageActionInvokeRequest,
1041
+ slatesMessageActionInvokeResponse,
1042
+ slatesMessageActionTriggerEventMapRequest,
1043
+ slatesMessageActionTriggerEventMapResponse,
1044
+ slatesMessageActionTriggerEventsPollRequest,
1045
+ slatesMessageActionTriggerEventsPollResponse,
1046
+ slatesMessageActionTriggerWebhookHandleRequest,
1047
+ slatesMessageActionTriggerWebhookHandleResponse,
1048
+ slatesMessageActionTriggerWebhookRegisterRequest,
1049
+ slatesMessageActionTriggerWebhookRegisterResponse,
1050
+ slatesMessageActionTriggerWebhookUnregisterRequest,
1051
+ slatesMessageActionTriggerWebhookUnregisterResponse,
1052
+ slatesMessageActionsListRequest,
1053
+ slatesMessageActionsListResponse,
1054
+ slatesMessageAuthAuthorizationCallbackHandleRequest,
1055
+ slatesMessageAuthAuthorizationCallbackHandleResponse,
1056
+ slatesMessageAuthAuthorizationUrlGetRequest,
1057
+ slatesMessageAuthAuthorizationUrlGetResponse,
1058
+ slatesMessageAuthDefaultInputGetRequest,
1059
+ slatesMessageAuthDefaultInputGetResponse,
1060
+ slatesMessageAuthInputChangedRequest,
1061
+ slatesMessageAuthInputChangedResponse,
1062
+ slatesMessageAuthMethodGetRequest,
1063
+ slatesMessageAuthMethodGetResponse,
1064
+ slatesMessageAuthMethodsListRequest,
1065
+ slatesMessageAuthMethodsListResponse,
1066
+ slatesMessageAuthOutputGetRequest,
1067
+ slatesMessageAuthOutputGetResponse,
1068
+ slatesMessageAuthProfileGetRequest,
1069
+ slatesMessageAuthProfileGetResponse,
1070
+ slatesMessageAuthTokenRefreshHandleRequest,
1071
+ slatesMessageAuthTokenRefreshHandleResponse,
1072
+ slatesMessageConfigChangedRequest,
1073
+ slatesMessageConfigChangedResponse,
1074
+ slatesMessageConfigDefaultGetRequest,
1075
+ slatesMessageConfigDefaultGetResponse,
1076
+ slatesMessageConfigSchemaGetRequest,
1077
+ slatesMessageConfigSchemaGetResponse,
1078
+ slatesMessageHelloNotification,
1079
+ slatesMessageProviderIdentifyRequest,
1080
+ slatesMessageProviderIdentifyResponse,
1081
+ slatesMessageSessionStartNotification,
1082
+ slatesMessageSetAuthNotification,
1083
+ slatesMessageSetConfigNotification,
1084
+ slatesMessageSetParticipantsNotification,
1085
+ slatesNotificationsByMethod,
1086
+ slatesParticipant,
1087
+ slatesRequestTrace,
1088
+ slatesRequestTraceTextBody,
1089
+ slatesRequestsByMethod,
1090
+ slatesResponsesByMethod,
1091
+ withRequestTraces
1092
+ });