clawpad 0.3.15 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +8 -8
  3. package/.next/standalone/.next/build-manifest.json +2 -2
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  7. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  16. package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
  17. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  18. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  19. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  20. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  22. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  23. package/.next/standalone/.next/server/app/api/ai/write/route_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/api/changes/[id]/route_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/api/changes/record/route_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/api/changes/revert/route_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/api/changes/route_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/api/changes/run/route_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/api/chat/abort/route_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/api/chat/route.js +1 -1
  31. package/.next/standalone/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/api/files/pages/[...path]/route_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/api/files/recent/route_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/api/files/search/route_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/api/files/spaces/[space]/pages/route_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/api/files/spaces/route_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/api/files/watch/route_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/api/gateway/detect/route_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/api/gateway/events/route_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/api/gateway/features/route_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/api/gateway/history/route_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/api/gateway/resolve/route_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/api/gateway/sessions/route_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/api/gateway/status/route_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/api/openclaw/commands/route_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/api/settings/search-status/route_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/api/setup/bootstrap/route_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/api/setup/bootstrap-workspace/route_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/api/setup/status/route_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/api/setup/trigger-onboarding/route_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/index.html +1 -1
  54. package/.next/standalone/.next/server/app/index.rsc +1 -1
  55. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  56. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +1 -1
  57. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  58. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +1 -1
  59. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  60. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/settings/connection/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/settings/connection.html +1 -1
  63. package/.next/standalone/.next/server/app/settings/connection.rsc +1 -1
  64. package/.next/standalone/.next/server/app/settings/connection.segments/_full.segment.rsc +1 -1
  65. package/.next/standalone/.next/server/app/settings/connection.segments/_head.segment.rsc +1 -1
  66. package/.next/standalone/.next/server/app/settings/connection.segments/_index.segment.rsc +1 -1
  67. package/.next/standalone/.next/server/app/settings/connection.segments/_tree.segment.rsc +1 -1
  68. package/.next/standalone/.next/server/app/settings/connection.segments/settings/connection/__PAGE__.segment.rsc +1 -1
  69. package/.next/standalone/.next/server/app/settings/connection.segments/settings/connection.segment.rsc +1 -1
  70. package/.next/standalone/.next/server/app/settings/connection.segments/settings.segment.rsc +1 -1
  71. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/settings/relay/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/settings/relay.html +1 -1
  74. package/.next/standalone/.next/server/app/settings/relay.rsc +1 -1
  75. package/.next/standalone/.next/server/app/settings/relay.segments/_full.segment.rsc +1 -1
  76. package/.next/standalone/.next/server/app/settings/relay.segments/_head.segment.rsc +1 -1
  77. package/.next/standalone/.next/server/app/settings/relay.segments/_index.segment.rsc +1 -1
  78. package/.next/standalone/.next/server/app/settings/relay.segments/_tree.segment.rsc +1 -1
  79. package/.next/standalone/.next/server/app/settings/relay.segments/settings/relay/__PAGE__.segment.rsc +1 -1
  80. package/.next/standalone/.next/server/app/settings/relay.segments/settings/relay.segment.rsc +1 -1
  81. package/.next/standalone/.next/server/app/settings/relay.segments/settings.segment.rsc +1 -1
  82. package/.next/standalone/.next/server/app/settings.html +1 -1
  83. package/.next/standalone/.next/server/app/settings.rsc +1 -1
  84. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  85. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  86. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  87. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  88. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  89. package/.next/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  90. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/setup.html +1 -1
  92. package/.next/standalone/.next/server/app/setup.rsc +1 -1
  93. package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +1 -1
  94. package/.next/standalone/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  95. package/.next/standalone/.next/server/app/setup.segments/_index.segment.rsc +1 -1
  96. package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +1 -1
  97. package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +1 -1
  98. package/.next/standalone/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  99. package/.next/standalone/.next/server/app/waitlist/page_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/waitlist.html +1 -1
  101. package/.next/standalone/.next/server/app/waitlist.rsc +1 -1
  102. package/.next/standalone/.next/server/app/waitlist.segments/_full.segment.rsc +1 -1
  103. package/.next/standalone/.next/server/app/waitlist.segments/_head.segment.rsc +1 -1
  104. package/.next/standalone/.next/server/app/waitlist.segments/_index.segment.rsc +1 -1
  105. package/.next/standalone/.next/server/app/waitlist.segments/_tree.segment.rsc +1 -1
  106. package/.next/standalone/.next/server/app/waitlist.segments/waitlist/__PAGE__.segment.rsc +1 -1
  107. package/.next/standalone/.next/server/app/waitlist.segments/waitlist.segment.rsc +1 -1
  108. package/.next/standalone/.next/server/app/workspace/[...path]/page_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/workspace/page_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/workspace/search/page_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/workspace/search.html +2 -2
  112. package/.next/standalone/.next/server/app/workspace/search.rsc +2 -2
  113. package/.next/standalone/.next/server/app/workspace/search.segments/_full.segment.rsc +2 -2
  114. package/.next/standalone/.next/server/app/workspace/search.segments/_head.segment.rsc +1 -1
  115. package/.next/standalone/.next/server/app/workspace/search.segments/_index.segment.rsc +1 -1
  116. package/.next/standalone/.next/server/app/workspace/search.segments/_tree.segment.rsc +1 -1
  117. package/.next/standalone/.next/server/app/workspace/search.segments/workspace/search/__PAGE__.segment.rsc +1 -1
  118. package/.next/standalone/.next/server/app/workspace/search.segments/workspace/search.segment.rsc +1 -1
  119. package/.next/standalone/.next/server/app/workspace/search.segments/workspace.segment.rsc +2 -2
  120. package/.next/standalone/.next/server/app/workspace.html +2 -2
  121. package/.next/standalone/.next/server/app/workspace.rsc +2 -2
  122. package/.next/standalone/.next/server/app/workspace.segments/_full.segment.rsc +2 -2
  123. package/.next/standalone/.next/server/app/workspace.segments/_head.segment.rsc +1 -1
  124. package/.next/standalone/.next/server/app/workspace.segments/_index.segment.rsc +1 -1
  125. package/.next/standalone/.next/server/app/workspace.segments/_tree.segment.rsc +1 -1
  126. package/.next/standalone/.next/server/app/workspace.segments/workspace/__PAGE__.segment.rsc +1 -1
  127. package/.next/standalone/.next/server/app/workspace.segments/workspace.segment.rsc +2 -2
  128. package/.next/standalone/.next/server/app-paths-manifest.json +8 -8
  129. package/.next/standalone/.next/server/chunks/7174.js +1 -1
  130. package/.next/standalone/.next/server/pages/404.html +1 -1
  131. package/.next/standalone/.next/server/pages/500.html +2 -2
  132. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  133. package/.next/standalone/package.json +1 -1
  134. package/.next/static/chunks/{ba12c10f-50aff6e7ca86063d.js → ba12c10f-a107b888860c768d.js} +1 -1
  135. package/bin/clawpad.js +20 -6
  136. package/package.json +1 -1
  137. /package/.next/static/{9hnoo0u7dSmJCeHPXKnSi → aWg1mzE9YOhnvoszT3b6Z}/_buildManifest.js +0 -0
  138. /package/.next/static/{9hnoo0u7dSmJCeHPXKnSi → aWg1mzE9YOhnvoszT3b6Z}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8803],{86726:(e,t,a)=>{a.d(t,{rL:()=>ee,vl:()=>et});var r,o,s=a(67506),i=a(13897),n=a(44916);a(41463);var l=Object.defineProperty,p=Symbol.for("vercel.ai.error.AI_InvalidArgumentError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidToolInputError");i.bD;Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");i.bD;Symbol.for("vercel.ai.error.AI_MissingToolResultsError");i.bD;Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");i.bD;var d="AI_NoObjectGeneratedError",u=`vercel.ai.error.${d}`,c=Symbol.for(u),h=class extends i.bD{constructor({message:e="No object generated.",cause:t,text:a,response:o,usage:s,finishReason:i}){super({name:d,message:e,cause:t}),this[r]=!0,this.text=a,this.response=o,this.usage=s,this.finishReason=i}static isInstance(e){return i.bD.hasMarker(e,u)}};r=c;Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoSuchToolError");i.bD;Symbol.for("vercel.ai.error.AI_ToolCallRepairError");i.bD,i.bD;var m="AI_UIMessageStreamError",g=`vercel.ai.error.${m}`,z=Symbol.for(g),v=class extends i.bD{constructor({chunkType:e,chunkId:t,message:a}){super({name:m,message:a}),this[o]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return i.bD.hasMarker(e,g)}};o=z;Symbol.for("vercel.ai.error.AI_InvalidDataContentError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");i.bD;Symbol.for("vercel.ai.error.AI_MessageConversionError");i.bD;Symbol.for("vercel.ai.error.AI_RetryError");i.bD;var b="6.0.95",y=async({url:e,maxBytes:t,abortSignal:a})=>{var r;let o=e.toString();try{let e=await fetch(o,{headers:(0,s.WZ)({},`ai-sdk/${b}`,(0,s.G1)()),signal:a});if(!e.ok)throw new s.nV({url:o,statusCode:e.status,statusText:e.statusText});return{data:await (0,s.cS)({response:e,url:o,maxBytes:null!=t?t:s.W}),mediaType:null!=(r=e.headers.get("content-type"))?r:void 0}}catch(e){if(s.nV.isInstance(e))throw e;throw new s.nV({url:o,cause:e})}},I=n.z.union([n.z.string(),n.z.instanceof(Uint8Array),n.z.instanceof(ArrayBuffer),n.z.custom(e=>{var t,a;return null!=(a=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&a},{message:"Must be a Buffer"})]),f=n.z.lazy(()=>n.z.union([n.z.null(),n.z.string(),n.z.number(),n.z.boolean(),n.z.record(n.z.string(),f.optional()),n.z.array(f)])),E=n.z.record(n.z.string(),n.z.record(n.z.string(),f.optional())),x=n.z.object({type:n.z.literal("text"),text:n.z.string(),providerOptions:E.optional()}),T=n.z.object({type:n.z.literal("image"),image:n.z.union([I,n.z.instanceof(URL)]),mediaType:n.z.string().optional(),providerOptions:E.optional()}),w=n.z.object({type:n.z.literal("file"),data:n.z.union([I,n.z.instanceof(URL)]),filename:n.z.string().optional(),mediaType:n.z.string(),providerOptions:E.optional()}),R=n.z.object({type:n.z.literal("reasoning"),text:n.z.string(),providerOptions:E.optional()}),M=n.z.object({type:n.z.literal("tool-call"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerOptions:E.optional(),providerExecuted:n.z.boolean().optional()}),_=n.z.discriminatedUnion("type",[n.z.object({type:n.z.literal("text"),value:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("json"),value:f,providerOptions:E.optional()}),n.z.object({type:n.z.literal("execution-denied"),reason:n.z.string().optional(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("error-text"),value:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("error-json"),value:f,providerOptions:E.optional()}),n.z.object({type:n.z.literal("content"),value:n.z.array(n.z.union([n.z.object({type:n.z.literal("text"),text:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("media"),data:n.z.string(),mediaType:n.z.string()}),n.z.object({type:n.z.literal("file-data"),data:n.z.string(),mediaType:n.z.string(),filename:n.z.string().optional(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("file-url"),url:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("file-id"),fileId:n.z.union([n.z.string(),n.z.record(n.z.string(),n.z.string())]),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-data"),data:n.z.string(),mediaType:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-url"),url:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-file-id"),fileId:n.z.union([n.z.string(),n.z.record(n.z.string(),n.z.string())]),providerOptions:E.optional()}),n.z.object({type:n.z.literal("custom"),providerOptions:E.optional()})]))})]),k=n.z.object({type:n.z.literal("tool-result"),toolCallId:n.z.string(),toolName:n.z.string(),output:_,providerOptions:E.optional()}),A=n.z.object({type:n.z.literal("tool-approval-request"),approvalId:n.z.string(),toolCallId:n.z.string()}),j=n.z.object({type:n.z.literal("tool-approval-response"),approvalId:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()}),S=n.z.object({role:n.z.literal("system"),content:n.z.string(),providerOptions:E.optional()}),N=n.z.object({role:n.z.literal("user"),content:n.z.union([n.z.string(),n.z.array(n.z.union([x,T,w]))]),providerOptions:E.optional()}),C=n.z.object({role:n.z.literal("assistant"),content:n.z.union([n.z.string(),n.z.array(n.z.union([x,w,R,M,k,A]))]),providerOptions:E.optional()}),O=n.z.object({role:n.z.literal("tool"),content:n.z.array(n.z.union([k,j])),providerOptions:E.optional()});n.z.union([S,N,C,O]);var D={},P={array:()=>W,choice:()=>U,json:()=>J,object:()=>L,text:()=>B};for(var F in P)l(D,F,{get:P[F],enumerable:!0});async function q(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await (0,s.N8)({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await (0,s.N8)({text:function(e){let t=["ROOT"],a=-1,r=null;function o(e,o,s){switch(e){case'"':a=o,t.pop(),t.push(s),t.push("INSIDE_STRING");break;case"f":case"t":case"n":a=o,r=o,t.pop(),t.push(s),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=o,t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"{":a=o,t.pop(),t.push(s),t.push("INSIDE_OBJECT_START");break;case"[":a=o,t.pop(),t.push(s),t.push("INSIDE_ARRAY_START")}}function s(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":a=r,t.pop()}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=r,t.pop()}}for(let n=0;n<e.length;n++){let l=e[n];switch(t[t.length-1]){case"ROOT":o(l,n,"FINISH");break;case"INSIDE_OBJECT_START":switch(l){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":a=n,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===l&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":o(l,n,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":s(l,n);break;case"INSIDE_STRING":switch(l){case'"':t.pop(),a=n;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:a=n}break;case"INSIDE_ARRAY_START":"]"===l?(a=n,t.pop()):(a=n,o(l,n,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(l){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=n,t.pop();break;default:a=n}break;case"INSIDE_ARRAY_AFTER_COMMA":o(l,n,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),a=n;break;case"INSIDE_NUMBER":switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=n;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n);break;default:t.pop()}break;case"INSIDE_LITERAL":{let o=e.substring(r,n+1);"false".startsWith(o)||"true".startsWith(o)||"null".startsWith(o)?a=n:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?s(l,n):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n))}}}let n=e.slice(0,a+1);for(let a=t.length-1;a>=0;a--)switch(t[a]){case"INSIDE_STRING":n+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":n+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":n+="]";break;case"INSIDE_LITERAL":{let t=e.substring(r,e.length);"true".startsWith(t)?n+="true".slice(t.length):"false".startsWith(t)?n+="false".slice(t.length):"null".startsWith(t)&&(n+="null".slice(t.length))}}return n}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var B=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),L=({schema:e,name:t,description:a})=>{let r=(0,s.mD)(e);return{name:"object",responseFormat:(0,s.hd)(r.jsonSchema).then(e=>({type:"json",schema:e,...null!=t&&{name:t},...null!=a&&{description:a}})),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=await (0,s.ZZ)({value:a.value,schema:r});if(!o.success)throw new h({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return o.value},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:t.value}}},createElementStreamTransform(){}}},W=({element:e,name:t,description:a})=>{let r=(0,s.mD)(e);return{name:"array",responseFormat:(0,s.hd)(r.jsonSchema).then(e=>{let{$schema:r,...o}=e;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:o}},required:["elements"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}}),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=a.value;if(null==o||"object"!=typeof o||!("elements"in o)||!Array.isArray(o.elements))throw new h({message:"No object generated: response did not match schema.",cause:new i.iM({value:o,cause:"response must be an object with an elements array"}),text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});for(let a of o.elements){let o=await (0,s.ZZ)({value:a,schema:r});if(!o.success)throw new h({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason})}return o.elements},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=t.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let a="repaired-parse"===t.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,o=[];for(let e of a){let t=await (0,s.ZZ)({value:e,schema:r});t.success&&o.push(t.value)}return{partial:o}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},a){if(null!=t)for(;e<t.length;e++)a.enqueue(t[e])}})}}},U=({options:e,name:t,description:a})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}),async parseCompleteOutput({text:t},a){let r=await (0,s.N8)({text:t});if(!r.success)throw new h({message:"No object generated: could not parse the response.",cause:r.error,text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});let o=r.value;if(null==o||"object"!=typeof o||!("result"in o)||"string"!=typeof o.result||!e.includes(o.result))throw new h({message:"No object generated: response did not match schema.",cause:new i.iM({value:o,cause:"response must be an object that contains a choice value."}),text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});return o.result},async parsePartialOutput({text:t}){let a=await q(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let t=a.value;if(null==t||"object"!=typeof t||!("result"in t)||"string"!=typeof t.result)return;let r=e.filter(e=>e.startsWith(t.result));if("successful-parse"===a.state)return r.includes(t.result)?{partial:t.result}:void 0;return 1===r.length?{partial:r[0]}:void 0}}},createElementStreamTransform(){}}),J=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=e&&{name:e},...null!=t&&{description:t}}),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return a.value},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===t.value?void 0:{partial:t.value}}},createElementStreamTransform(){}});(0,s.hK)({prefix:"aitxt",size:24}),TransformStream;var Y=(0,s.ID)(()=>(0,s.jN)(n.z.union([n.z.strictObject({type:n.z.literal("text-start"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("text-delta"),id:n.z.string(),delta:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("text-end"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("error"),errorText:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-input-start"),toolCallId:n.z.string(),toolName:n.z.string(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-input-delta"),toolCallId:n.z.string(),inputTextDelta:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-input-available"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-input-error"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),errorText:n.z.string(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-approval-request"),approvalId:n.z.string(),toolCallId:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-output-available"),toolCallId:n.z.string(),output:n.z.unknown(),providerExecuted:n.z.boolean().optional(),dynamic:n.z.boolean().optional(),preliminary:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("tool-output-error"),toolCallId:n.z.string(),errorText:n.z.string(),providerExecuted:n.z.boolean().optional(),dynamic:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("tool-output-denied"),toolCallId:n.z.string()}),n.z.strictObject({type:n.z.literal("reasoning-start"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("reasoning-delta"),id:n.z.string(),delta:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("reasoning-end"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("source-url"),sourceId:n.z.string(),url:n.z.string(),title:n.z.string().optional(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("source-document"),sourceId:n.z.string(),mediaType:n.z.string(),title:n.z.string(),filename:n.z.string().optional(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("file"),url:n.z.string(),mediaType:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.custom(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:n.z.string().optional(),data:n.z.unknown(),transient:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("start-step")}),n.z.strictObject({type:n.z.literal("finish-step")}),n.z.strictObject({type:n.z.literal("start"),messageId:n.z.string().optional(),messageMetadata:n.z.unknown().optional()}),n.z.strictObject({type:n.z.literal("finish"),finishReason:n.z.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:n.z.unknown().optional()}),n.z.strictObject({type:n.z.literal("abort"),reason:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("message-metadata"),messageMetadata:n.z.unknown()})])));function $(e){return e.type.startsWith("tool-")}function V(e){return $(e)||"dynamic-tool"===e.type}function G(e){return e.type.split("-").slice(1).join("-")}async function K({stream:e,onError:t}){let a=e.getReader();try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){null==t||t(e)}finally{a.releaseLock()}}function Z(e){return({url:t,abortSignal:a})=>y({url:t,maxBytes:null==e?void 0:e.maxBytes,abortSignal:a})}(0,s.hK)({prefix:"aitxt",size:24}),(0,s.ID)(()=>(0,s.jN)(n.z.array(n.z.object({id:n.z.string(),role:n.z.enum(["system","user","assistant"]),metadata:n.z.unknown().optional(),parts:n.z.array(n.z.union([n.z.object({type:n.z.literal("text"),text:n.z.string(),state:n.z.enum(["streaming","done"]).optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("reasoning"),text:n.z.string(),state:n.z.enum(["streaming","done"]).optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("source-url"),sourceId:n.z.string(),url:n.z.string(),title:n.z.string().optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("source-document"),sourceId:n.z.string(),mediaType:n.z.string(),title:n.z.string(),filename:n.z.string().optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("file"),mediaType:n.z.string(),filename:n.z.string().optional(),url:n.z.string(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("step-start")}),n.z.object({type:n.z.string().startsWith("data-"),id:n.z.string().optional(),data:n.z.unknown()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("input-streaming"),input:n.z.unknown().optional(),providerExecuted:n.z.boolean().optional(),callProviderMetadata:E.optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("input-available"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("approval-requested"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.never().optional(),reason:n.z.never().optional()})}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("approval-responded"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()})}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-available"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.unknown(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),preliminary:n.z.boolean().optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-error"),input:n.z.unknown(),rawInput:n.z.unknown().optional(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.string(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-denied"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!1),reason:n.z.string().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("input-streaming"),providerExecuted:n.z.boolean().optional(),callProviderMetadata:E.optional(),input:n.z.unknown().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("input-available"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("approval-requested"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.never().optional(),reason:n.z.never().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("approval-responded"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-available"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.unknown(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),preliminary:n.z.boolean().optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-error"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),rawInput:n.z.unknown().optional(),output:n.z.never().optional(),errorText:n.z.string(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-denied"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!1),reason:n.z.string().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty"))),(0,s.hK)({prefix:"aiobj",size:24});var Q=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){a(e)}}),this.processQueue()})}};(0,s.hK)({prefix:"aiobj",size:24}),Z();Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function H(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:a}=e;return{type:"file",mediaType:a,filename:t,url:await new Promise((t,a)=>{let r=new FileReader;r.onload=e=>{var a;t(null==(a=e.target)?void 0:a.result)},r.onerror=e=>a(e),r.readAsDataURL(e)})}}))}i.eM,Z();var X=class{constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:o,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=o,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var a,r,o,i,n;let l=await (0,s.hd)(this.body),p=await (0,s.hd)(this.headers),d=await (0,s.hd)(this.credentials),u={...(0,s.qx)(p),...(0,s.qx)(t.headers)},c=await (null==(a=this.prepareSendMessagesRequest)?void 0:a.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...l,...t.body},headers:u,credentials:d,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),h=null!=(r=null==c?void 0:c.api)?r:this.api,m=(null==c?void 0:c.headers)!==void 0?(0,s.qx)(c.headers):u,g=(null==c?void 0:c.body)!==void 0?c.body:{...l,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},z=null!=(o=null==c?void 0:c.credentials)?o:d,v=null!=(i=this.fetch)?i:globalThis.fetch,y=await v(h,{method:"POST",headers:(0,s.WZ)({"Content-Type":"application/json",...m},`ai-sdk/${b}`,(0,s.G1)()),body:JSON.stringify(g),credentials:z,signal:e});if(!y.ok)throw Error(null!=(n=await y.text())?n:"Failed to fetch the chat response.");if(!y.body)throw Error("The response body is empty.");return this.processResponseStream(y.body)}async reconnectToStream(e){var t,a,r,o,i;let n=await (0,s.hd)(this.body),l=await (0,s.hd)(this.headers),p=await (0,s.hd)(this.credentials),d={...(0,s.qx)(l),...(0,s.qx)(e.headers)},u=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...n,...e.body},headers:d,credentials:p,requestMetadata:e.metadata})),c=null!=(a=null==u?void 0:u.api)?a:`${this.api}/${e.chatId}/stream`,h=(null==u?void 0:u.headers)!==void 0?(0,s.qx)(u.headers):d,m=null!=(r=null==u?void 0:u.credentials)?r:p,g=null!=(o=this.fetch)?o:globalThis.fetch,z=await g(c,{method:"GET",headers:(0,s.WZ)(h,`ai-sdk/${b}`,(0,s.G1)()),credentials:m});if(204===z.status)return null;if(!z.ok)throw Error(null!=(i=await z.text())?i:"Failed to fetch the chat response.");if(!z.body)throw Error("The response body is empty.");return this.processResponseStream(z.body)}},ee=class extends X{constructor(e={}){super(e)}processResponseStream(e){return(0,s._Z)({stream:e,schema:Y}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},et=class{constructor({generateId:e=s.$C,id:t=e(),transport:a=new ee,messageMetadataSchema:r,dataPartSchemas:o,state:i,onError:n,onToolCall:l,onFinish:p,onData:d,sendAutomaticallyWhen:u}){this.activeResponse=void 0,this.jobExecutor=new Q,this.sendMessage=async(e,t)=>{var a,r,o,s;let i;if(null==e)return void await this.makeRequest({trigger:"submit-message",messageId:null==(a=this.lastMessage)?void 0:a.id,...t});if(i="text"in e||"files"in e?{parts:[...Array.isArray(e.files)?e.files:await H(e.files),..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}:e,null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error(`message with id ${e.messageId} not found`);if("user"!==this.state.messages[t].role)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...i,id:e.messageId,role:null!=(r=i.role)?r:"user",metadata:e.metadata})}else this.state.pushMessage({...i,id:null!=(o=i.id)?o:this.generateId(),role:null!=(s=i.role)?s:"user",metadata:e.metadata});await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let a=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===a)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[a].role?a:a+1),await this.makeRequest({trigger:"regenerate-message",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:"resume-stream",...e})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:a})=>this.jobExecutor.run(async()=>{let r=this.state.messages,o=r[r.length-1],s=r=>V(r)&&"approval-requested"===r.state&&r.approval.id===e?{...r,state:"approval-responded",approval:{id:e,approved:t,reason:a}}:r;this.state.replaceMessage(r.length-1,{...o,parts:o.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolOutput=async({state:e="output-available",tool:t,toolCallId:a,output:r,errorText:o})=>this.jobExecutor.run(async()=>{let t=this.state.messages,s=t[t.length-1],i=t=>V(t)&&t.toolCallId===a?{...t,state:e,output:r,errorText:o}:t;this.state.replaceMessage(t.length-1,{...s,parts:s.parts.map(i)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;("streaming"===this.status||"submitted"===this.status)&&(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=o,this.state=i,this.onError=n,this.onToolCall=l,this.onFinish=p,this.onData=d,this.sendAutomaticallyWhen=u}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:a,body:r,messageId:o}){var i,n,l;let p;if("resume-stream"===e)try{let e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:a,body:r});if(null==e)return;p=e}catch(e){this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e});return}this.setStatus({status:"submitted",error:void 0});let d=this.lastMessage,u=!1,c=!1,h=!1;try{let i,n={state:function({lastMessage:e,messageId:t}){return{message:(null==e?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}({lastMessage:this.state.snapshot(d),messageId:this.generateId()}),abortController:new AbortController};n.abortController.signal.addEventListener("abort",()=>{u=!0}),this.activeResponse=n,i="resume-stream"===e?p:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:n.abortController.signal,metadata:t,headers:a,body:r,trigger:e,messageId:o});let l=e=>this.jobExecutor.run(()=>e({state:n.state,write:()=>{var e;this.setStatus({status:"streaming"}),n.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,n.state.message):this.state.pushMessage(n.state.message)}}));await K({stream:function({stream:e,messageMetadataSchema:t,dataPartSchemas:a,runUpdateMessageJob:r,onError:o,onToolCall:i,onData:n}){return e.pipeThrough(new TransformStream({async transform(e,l){await r(async({state:r,write:p})=>{var d,u,c,h;function m(e){let t=r.message.parts.filter(V).find(t=>t.toolCallId===e);if(null==t)throw new v({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function g(e){var t;let a=r.message.parts.find(t=>$(t)&&t.toolCallId===e.toolCallId);null!=a?(a.state=e.state,a.input=e.input,a.output=e.output,a.errorText=e.errorText,a.rawInput=e.rawInput,a.preliminary=e.preliminary,void 0!==e.title&&(a.title=e.title),a.providerExecuted=null!=(t=e.providerExecuted)?t:a.providerExecuted,null!=e.providerMetadata&&(a.callProviderMetadata=e.providerMetadata)):r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}function z(e){var t,a;let o=r.message.parts.find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);null!=o?(o.state=e.state,o.toolName=e.toolName,o.input=e.input,o.output=e.output,o.errorText=e.errorText,o.rawInput=null!=(t=e.rawInput)?t:o.rawInput,o.preliminary=e.preliminary,void 0!==e.title&&(o.title=e.title),o.providerExecuted=null!=(a=e.providerExecuted)?a:o.providerExecuted,null!=e.providerMetadata&&(o.callProviderMetadata=e.providerMetadata)):r.message.parts.push({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}async function b(e){if(null!=e){let a=null!=r.message.metadata?function e(t,a){if(void 0===t&&void 0===a)return;if(void 0===t)return a;if(void 0===a)return t;let r={...t};for(let o in a)if(Object.prototype.hasOwnProperty.call(a,o)){let s=a[o];if(void 0===s)continue;let i=o in t?t[o]:void 0,n=null!==s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),l=null!=i&&"object"==typeof i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp);n&&l?r[o]=e(i,s):r[o]=s}return r}(r.message.metadata,e):e;null!=t&&await (0,s.k5)({value:a,schema:t,context:{field:"message.metadata",entityId:r.message.id}}),r.message.metadata=a}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeTextParts[e.id]=t,r.message.parts.push(t),p();break}case"text-delta":{let t=r.activeTextParts[e.id];if(null==t)throw new v({chunkType:"text-delta",chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,p();break}case"text-end":{let t=r.activeTextParts[e.id];if(null==t)throw new v({chunkType:"text-end",chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state="done",t.providerMetadata=null!=(u=e.providerMetadata)?u:t.providerMetadata,delete r.activeTextParts[e.id],p();break}case"reasoning-start":{let t={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),p();break}case"reasoning-delta":{let t=r.activeReasoningParts[e.id];if(null==t)throw new v({chunkType:"reasoning-delta",chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,p();break}case"reasoning-end":{let t=r.activeReasoningParts[e.id];if(null==t)throw new v({chunkType:"reasoning-end",chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=null!=(h=e.providerMetadata)?h:t.providerMetadata,t.state="done",delete r.activeReasoningParts[e.id],p();break}case"file":r.message.parts.push({type:"file",mediaType:e.mediaType,url:e.url}),p();break;case"source-url":r.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),p();break;case"source-document":r.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),p();break;case"tool-input-start":{let t=r.message.parts.filter($);r.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title},e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}),p();break}case"tool-input-delta":{let t=r.partialToolCalls[e.toolCallId];if(null==t)throw new v({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:a}=await q(t.text);t.dynamic?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}):g({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}),p();break}case"tool-input-available":e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}),p(),i&&!e.providerExecuted&&await i({toolCall:e});break;case"tool-input-error":e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),p();break;case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId},p();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",p();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:t.title}):g({toolCallId:e.toolCallId,toolName:G(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,title:t.title}),p();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}):g({toolCallId:e.toolCallId,toolName:G(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}),p();break}case"start-step":r.message.parts.push({type:"step-start"});break;case"finish-step":r.activeTextParts={},r.activeReasoningParts={};break;case"start":null!=e.messageId&&(r.message.id=e.messageId),await b(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&p();break;case"finish":null!=e.finishReason&&(r.finishReason=e.finishReason),await b(e.messageMetadata),null!=e.messageMetadata&&p();break;case"message-metadata":await b(e.messageMetadata),null!=e.messageMetadata&&p();break;case"error":null==o||o(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==a?void 0:a[e.type])!=null){let t=r.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),o=t>=0?t:r.message.parts.length;await (0,s.k5)({value:e.data,schema:a[e.type],context:{field:`message.parts[${o}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){null==n||n(e);break}let t=null!=e.id?r.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:r.message.parts.push(e),null==n||n(e),p()}}l.enqueue(e)})}}))}({stream:i,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:l,onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:"ready"})}catch(e){if(u||"AbortError"===e.name)return u=!0,this.setStatus({status:"ready"}),null;h=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(c=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{null==(n=this.onFinish)||n.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:u,isDisconnect:c,isError:h,finishReason:null==(i=this.activeResponse)?void 0:i.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}!h&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(l=this.lastMessage)?void 0:l.id,metadata:t,headers:a,body:r})}}}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8803],{86726:(e,t,a)=>{a.d(t,{rL:()=>ee,vl:()=>et});var r,o,s=a(67506),i=a(13897),n=a(44916);a(41463);var l=Object.defineProperty,p=Symbol.for("vercel.ai.error.AI_InvalidArgumentError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidToolInputError");i.bD;Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");i.bD;Symbol.for("vercel.ai.error.AI_MissingToolResultsError");i.bD;Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");i.bD;var d="AI_NoObjectGeneratedError",u=`vercel.ai.error.${d}`,c=Symbol.for(u),h=class extends i.bD{constructor({message:e="No object generated.",cause:t,text:a,response:o,usage:s,finishReason:i}){super({name:d,message:e,cause:t}),this[r]=!0,this.text=a,this.response=o,this.usage=s,this.finishReason=i}static isInstance(e){return i.bD.hasMarker(e,u)}};r=c;Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");i.bD;Symbol.for("vercel.ai.error.AI_NoSuchToolError");i.bD;Symbol.for("vercel.ai.error.AI_ToolCallRepairError");i.bD,i.bD;var m="AI_UIMessageStreamError",g=`vercel.ai.error.${m}`,z=Symbol.for(g),v=class extends i.bD{constructor({chunkType:e,chunkId:t,message:a}){super({name:m,message:a}),this[o]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return i.bD.hasMarker(e,g)}};o=z;Symbol.for("vercel.ai.error.AI_InvalidDataContentError");i.bD;Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");i.bD;Symbol.for("vercel.ai.error.AI_MessageConversionError");i.bD;Symbol.for("vercel.ai.error.AI_RetryError");i.bD;var b="6.0.96",y=async({url:e,maxBytes:t,abortSignal:a})=>{var r;let o=e.toString();try{let e=await fetch(o,{headers:(0,s.WZ)({},`ai-sdk/${b}`,(0,s.G1)()),signal:a});if(!e.ok)throw new s.nV({url:o,statusCode:e.status,statusText:e.statusText});return{data:await (0,s.cS)({response:e,url:o,maxBytes:null!=t?t:s.W}),mediaType:null!=(r=e.headers.get("content-type"))?r:void 0}}catch(e){if(s.nV.isInstance(e))throw e;throw new s.nV({url:o,cause:e})}},I=n.z.union([n.z.string(),n.z.instanceof(Uint8Array),n.z.instanceof(ArrayBuffer),n.z.custom(e=>{var t,a;return null!=(a=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&a},{message:"Must be a Buffer"})]),f=n.z.lazy(()=>n.z.union([n.z.null(),n.z.string(),n.z.number(),n.z.boolean(),n.z.record(n.z.string(),f.optional()),n.z.array(f)])),E=n.z.record(n.z.string(),n.z.record(n.z.string(),f.optional())),x=n.z.object({type:n.z.literal("text"),text:n.z.string(),providerOptions:E.optional()}),T=n.z.object({type:n.z.literal("image"),image:n.z.union([I,n.z.instanceof(URL)]),mediaType:n.z.string().optional(),providerOptions:E.optional()}),w=n.z.object({type:n.z.literal("file"),data:n.z.union([I,n.z.instanceof(URL)]),filename:n.z.string().optional(),mediaType:n.z.string(),providerOptions:E.optional()}),R=n.z.object({type:n.z.literal("reasoning"),text:n.z.string(),providerOptions:E.optional()}),M=n.z.object({type:n.z.literal("tool-call"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerOptions:E.optional(),providerExecuted:n.z.boolean().optional()}),_=n.z.discriminatedUnion("type",[n.z.object({type:n.z.literal("text"),value:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("json"),value:f,providerOptions:E.optional()}),n.z.object({type:n.z.literal("execution-denied"),reason:n.z.string().optional(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("error-text"),value:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("error-json"),value:f,providerOptions:E.optional()}),n.z.object({type:n.z.literal("content"),value:n.z.array(n.z.union([n.z.object({type:n.z.literal("text"),text:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("media"),data:n.z.string(),mediaType:n.z.string()}),n.z.object({type:n.z.literal("file-data"),data:n.z.string(),mediaType:n.z.string(),filename:n.z.string().optional(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("file-url"),url:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("file-id"),fileId:n.z.union([n.z.string(),n.z.record(n.z.string(),n.z.string())]),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-data"),data:n.z.string(),mediaType:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-url"),url:n.z.string(),providerOptions:E.optional()}),n.z.object({type:n.z.literal("image-file-id"),fileId:n.z.union([n.z.string(),n.z.record(n.z.string(),n.z.string())]),providerOptions:E.optional()}),n.z.object({type:n.z.literal("custom"),providerOptions:E.optional()})]))})]),k=n.z.object({type:n.z.literal("tool-result"),toolCallId:n.z.string(),toolName:n.z.string(),output:_,providerOptions:E.optional()}),A=n.z.object({type:n.z.literal("tool-approval-request"),approvalId:n.z.string(),toolCallId:n.z.string()}),j=n.z.object({type:n.z.literal("tool-approval-response"),approvalId:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()}),S=n.z.object({role:n.z.literal("system"),content:n.z.string(),providerOptions:E.optional()}),N=n.z.object({role:n.z.literal("user"),content:n.z.union([n.z.string(),n.z.array(n.z.union([x,T,w]))]),providerOptions:E.optional()}),C=n.z.object({role:n.z.literal("assistant"),content:n.z.union([n.z.string(),n.z.array(n.z.union([x,w,R,M,k,A]))]),providerOptions:E.optional()}),O=n.z.object({role:n.z.literal("tool"),content:n.z.array(n.z.union([k,j])),providerOptions:E.optional()});n.z.union([S,N,C,O]);var D={},P={array:()=>W,choice:()=>U,json:()=>J,object:()=>L,text:()=>B};for(var F in P)l(D,F,{get:P[F],enumerable:!0});async function q(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await (0,s.N8)({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await (0,s.N8)({text:function(e){let t=["ROOT"],a=-1,r=null;function o(e,o,s){switch(e){case'"':a=o,t.pop(),t.push(s),t.push("INSIDE_STRING");break;case"f":case"t":case"n":a=o,r=o,t.pop(),t.push(s),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=o,t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"{":a=o,t.pop(),t.push(s),t.push("INSIDE_OBJECT_START");break;case"[":a=o,t.pop(),t.push(s),t.push("INSIDE_ARRAY_START")}}function s(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":a=r,t.pop()}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=r,t.pop()}}for(let n=0;n<e.length;n++){let l=e[n];switch(t[t.length-1]){case"ROOT":o(l,n,"FINISH");break;case"INSIDE_OBJECT_START":switch(l){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":a=n,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===l&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":o(l,n,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":s(l,n);break;case"INSIDE_STRING":switch(l){case'"':t.pop(),a=n;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:a=n}break;case"INSIDE_ARRAY_START":"]"===l?(a=n,t.pop()):(a=n,o(l,n,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(l){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=n,t.pop();break;default:a=n}break;case"INSIDE_ARRAY_AFTER_COMMA":o(l,n,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),a=n;break;case"INSIDE_NUMBER":switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=n;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n);break;default:t.pop()}break;case"INSIDE_LITERAL":{let o=e.substring(r,n+1);"false".startsWith(o)||"true".startsWith(o)||"null".startsWith(o)?a=n:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?s(l,n):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n))}}}let n=e.slice(0,a+1);for(let a=t.length-1;a>=0;a--)switch(t[a]){case"INSIDE_STRING":n+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":n+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":n+="]";break;case"INSIDE_LITERAL":{let t=e.substring(r,e.length);"true".startsWith(t)?n+="true".slice(t.length):"false".startsWith(t)?n+="false".slice(t.length):"null".startsWith(t)&&(n+="null".slice(t.length))}}return n}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var B=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),L=({schema:e,name:t,description:a})=>{let r=(0,s.mD)(e);return{name:"object",responseFormat:(0,s.hd)(r.jsonSchema).then(e=>({type:"json",schema:e,...null!=t&&{name:t},...null!=a&&{description:a}})),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=await (0,s.ZZ)({value:a.value,schema:r});if(!o.success)throw new h({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return o.value},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:t.value}}},createElementStreamTransform(){}}},W=({element:e,name:t,description:a})=>{let r=(0,s.mD)(e);return{name:"array",responseFormat:(0,s.hd)(r.jsonSchema).then(e=>{let{$schema:r,...o}=e;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:o}},required:["elements"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}}),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=a.value;if(null==o||"object"!=typeof o||!("elements"in o)||!Array.isArray(o.elements))throw new h({message:"No object generated: response did not match schema.",cause:new i.iM({value:o,cause:"response must be an object with an elements array"}),text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});for(let a of o.elements){let o=await (0,s.ZZ)({value:a,schema:r});if(!o.success)throw new h({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason})}return o.elements},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=t.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let a="repaired-parse"===t.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,o=[];for(let e of a){let t=await (0,s.ZZ)({value:e,schema:r});t.success&&o.push(t.value)}return{partial:o}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},a){if(null!=t)for(;e<t.length;e++)a.enqueue(t[e])}})}}},U=({options:e,name:t,description:a})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}),async parseCompleteOutput({text:t},a){let r=await (0,s.N8)({text:t});if(!r.success)throw new h({message:"No object generated: could not parse the response.",cause:r.error,text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});let o=r.value;if(null==o||"object"!=typeof o||!("result"in o)||"string"!=typeof o.result||!e.includes(o.result))throw new h({message:"No object generated: response did not match schema.",cause:new i.iM({value:o,cause:"response must be an object that contains a choice value."}),text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});return o.result},async parsePartialOutput({text:t}){let a=await q(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let t=a.value;if(null==t||"object"!=typeof t||!("result"in t)||"string"!=typeof t.result)return;let r=e.filter(e=>e.startsWith(t.result));if("successful-parse"===a.state)return r.includes(t.result)?{partial:t.result}:void 0;return 1===r.length?{partial:r[0]}:void 0}}},createElementStreamTransform(){}}),J=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=e&&{name:e},...null!=t&&{description:t}}),async parseCompleteOutput({text:e},t){let a=await (0,s.N8)({text:e});if(!a.success)throw new h({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return a.value},async parsePartialOutput({text:e}){let t=await q(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===t.value?void 0:{partial:t.value}}},createElementStreamTransform(){}});(0,s.hK)({prefix:"aitxt",size:24}),TransformStream;var Y=(0,s.ID)(()=>(0,s.jN)(n.z.union([n.z.strictObject({type:n.z.literal("text-start"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("text-delta"),id:n.z.string(),delta:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("text-end"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("error"),errorText:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-input-start"),toolCallId:n.z.string(),toolName:n.z.string(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-input-delta"),toolCallId:n.z.string(),inputTextDelta:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-input-available"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-input-error"),toolCallId:n.z.string(),toolName:n.z.string(),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),providerMetadata:E.optional(),dynamic:n.z.boolean().optional(),errorText:n.z.string(),title:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("tool-approval-request"),approvalId:n.z.string(),toolCallId:n.z.string()}),n.z.strictObject({type:n.z.literal("tool-output-available"),toolCallId:n.z.string(),output:n.z.unknown(),providerExecuted:n.z.boolean().optional(),dynamic:n.z.boolean().optional(),preliminary:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("tool-output-error"),toolCallId:n.z.string(),errorText:n.z.string(),providerExecuted:n.z.boolean().optional(),dynamic:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("tool-output-denied"),toolCallId:n.z.string()}),n.z.strictObject({type:n.z.literal("reasoning-start"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("reasoning-delta"),id:n.z.string(),delta:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("reasoning-end"),id:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("source-url"),sourceId:n.z.string(),url:n.z.string(),title:n.z.string().optional(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("source-document"),sourceId:n.z.string(),mediaType:n.z.string(),title:n.z.string(),filename:n.z.string().optional(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.literal("file"),url:n.z.string(),mediaType:n.z.string(),providerMetadata:E.optional()}),n.z.strictObject({type:n.z.custom(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:n.z.string().optional(),data:n.z.unknown(),transient:n.z.boolean().optional()}),n.z.strictObject({type:n.z.literal("start-step")}),n.z.strictObject({type:n.z.literal("finish-step")}),n.z.strictObject({type:n.z.literal("start"),messageId:n.z.string().optional(),messageMetadata:n.z.unknown().optional()}),n.z.strictObject({type:n.z.literal("finish"),finishReason:n.z.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:n.z.unknown().optional()}),n.z.strictObject({type:n.z.literal("abort"),reason:n.z.string().optional()}),n.z.strictObject({type:n.z.literal("message-metadata"),messageMetadata:n.z.unknown()})])));function $(e){return e.type.startsWith("tool-")}function V(e){return $(e)||"dynamic-tool"===e.type}function G(e){return e.type.split("-").slice(1).join("-")}async function K({stream:e,onError:t}){let a=e.getReader();try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){null==t||t(e)}finally{a.releaseLock()}}function Z(e){return({url:t,abortSignal:a})=>y({url:t,maxBytes:null==e?void 0:e.maxBytes,abortSignal:a})}(0,s.hK)({prefix:"aitxt",size:24}),(0,s.ID)(()=>(0,s.jN)(n.z.array(n.z.object({id:n.z.string(),role:n.z.enum(["system","user","assistant"]),metadata:n.z.unknown().optional(),parts:n.z.array(n.z.union([n.z.object({type:n.z.literal("text"),text:n.z.string(),state:n.z.enum(["streaming","done"]).optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("reasoning"),text:n.z.string(),state:n.z.enum(["streaming","done"]).optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("source-url"),sourceId:n.z.string(),url:n.z.string(),title:n.z.string().optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("source-document"),sourceId:n.z.string(),mediaType:n.z.string(),title:n.z.string(),filename:n.z.string().optional(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("file"),mediaType:n.z.string(),filename:n.z.string().optional(),url:n.z.string(),providerMetadata:E.optional()}),n.z.object({type:n.z.literal("step-start")}),n.z.object({type:n.z.string().startsWith("data-"),id:n.z.string().optional(),data:n.z.unknown()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("input-streaming"),input:n.z.unknown().optional(),providerExecuted:n.z.boolean().optional(),callProviderMetadata:E.optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("input-available"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("approval-requested"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.never().optional(),reason:n.z.never().optional()})}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("approval-responded"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()})}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-available"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.unknown(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),preliminary:n.z.boolean().optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-error"),input:n.z.unknown(),rawInput:n.z.unknown().optional(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.string(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.literal("dynamic-tool"),toolName:n.z.string(),toolCallId:n.z.string(),state:n.z.literal("output-denied"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!1),reason:n.z.string().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("input-streaming"),providerExecuted:n.z.boolean().optional(),callProviderMetadata:E.optional(),input:n.z.unknown().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("input-available"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.never().optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("approval-requested"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.never().optional(),reason:n.z.never().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("approval-responded"),input:n.z.unknown(),providerExecuted:n.z.boolean().optional(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.boolean(),reason:n.z.string().optional()})}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-available"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.unknown(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),preliminary:n.z.boolean().optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-error"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),rawInput:n.z.unknown().optional(),output:n.z.never().optional(),errorText:n.z.string(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!0),reason:n.z.string().optional()}).optional()}),n.z.object({type:n.z.string().startsWith("tool-"),toolCallId:n.z.string(),state:n.z.literal("output-denied"),providerExecuted:n.z.boolean().optional(),input:n.z.unknown(),output:n.z.never().optional(),errorText:n.z.never().optional(),callProviderMetadata:E.optional(),approval:n.z.object({id:n.z.string(),approved:n.z.literal(!1),reason:n.z.string().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty"))),(0,s.hK)({prefix:"aiobj",size:24});var Q=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){a(e)}}),this.processQueue()})}};(0,s.hK)({prefix:"aiobj",size:24}),Z();Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function H(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:a}=e;return{type:"file",mediaType:a,filename:t,url:await new Promise((t,a)=>{let r=new FileReader;r.onload=e=>{var a;t(null==(a=e.target)?void 0:a.result)},r.onerror=e=>a(e),r.readAsDataURL(e)})}}))}i.eM,Z();var X=class{constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:o,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=o,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var a,r,o,i,n;let l=await (0,s.hd)(this.body),p=await (0,s.hd)(this.headers),d=await (0,s.hd)(this.credentials),u={...(0,s.qx)(p),...(0,s.qx)(t.headers)},c=await (null==(a=this.prepareSendMessagesRequest)?void 0:a.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...l,...t.body},headers:u,credentials:d,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),h=null!=(r=null==c?void 0:c.api)?r:this.api,m=(null==c?void 0:c.headers)!==void 0?(0,s.qx)(c.headers):u,g=(null==c?void 0:c.body)!==void 0?c.body:{...l,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},z=null!=(o=null==c?void 0:c.credentials)?o:d,v=null!=(i=this.fetch)?i:globalThis.fetch,y=await v(h,{method:"POST",headers:(0,s.WZ)({"Content-Type":"application/json",...m},`ai-sdk/${b}`,(0,s.G1)()),body:JSON.stringify(g),credentials:z,signal:e});if(!y.ok)throw Error(null!=(n=await y.text())?n:"Failed to fetch the chat response.");if(!y.body)throw Error("The response body is empty.");return this.processResponseStream(y.body)}async reconnectToStream(e){var t,a,r,o,i;let n=await (0,s.hd)(this.body),l=await (0,s.hd)(this.headers),p=await (0,s.hd)(this.credentials),d={...(0,s.qx)(l),...(0,s.qx)(e.headers)},u=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...n,...e.body},headers:d,credentials:p,requestMetadata:e.metadata})),c=null!=(a=null==u?void 0:u.api)?a:`${this.api}/${e.chatId}/stream`,h=(null==u?void 0:u.headers)!==void 0?(0,s.qx)(u.headers):d,m=null!=(r=null==u?void 0:u.credentials)?r:p,g=null!=(o=this.fetch)?o:globalThis.fetch,z=await g(c,{method:"GET",headers:(0,s.WZ)(h,`ai-sdk/${b}`,(0,s.G1)()),credentials:m});if(204===z.status)return null;if(!z.ok)throw Error(null!=(i=await z.text())?i:"Failed to fetch the chat response.");if(!z.body)throw Error("The response body is empty.");return this.processResponseStream(z.body)}},ee=class extends X{constructor(e={}){super(e)}processResponseStream(e){return(0,s._Z)({stream:e,schema:Y}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},et=class{constructor({generateId:e=s.$C,id:t=e(),transport:a=new ee,messageMetadataSchema:r,dataPartSchemas:o,state:i,onError:n,onToolCall:l,onFinish:p,onData:d,sendAutomaticallyWhen:u}){this.activeResponse=void 0,this.jobExecutor=new Q,this.sendMessage=async(e,t)=>{var a,r,o,s;let i;if(null==e)return void await this.makeRequest({trigger:"submit-message",messageId:null==(a=this.lastMessage)?void 0:a.id,...t});if(i="text"in e||"files"in e?{parts:[...Array.isArray(e.files)?e.files:await H(e.files),..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}:e,null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error(`message with id ${e.messageId} not found`);if("user"!==this.state.messages[t].role)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...i,id:e.messageId,role:null!=(r=i.role)?r:"user",metadata:e.metadata})}else this.state.pushMessage({...i,id:null!=(o=i.id)?o:this.generateId(),role:null!=(s=i.role)?s:"user",metadata:e.metadata});await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let a=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===a)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[a].role?a:a+1),await this.makeRequest({trigger:"regenerate-message",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:"resume-stream",...e})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:a})=>this.jobExecutor.run(async()=>{let r=this.state.messages,o=r[r.length-1],s=r=>V(r)&&"approval-requested"===r.state&&r.approval.id===e?{...r,state:"approval-responded",approval:{id:e,approved:t,reason:a}}:r;this.state.replaceMessage(r.length-1,{...o,parts:o.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolOutput=async({state:e="output-available",tool:t,toolCallId:a,output:r,errorText:o})=>this.jobExecutor.run(async()=>{let t=this.state.messages,s=t[t.length-1],i=t=>V(t)&&t.toolCallId===a?{...t,state:e,output:r,errorText:o}:t;this.state.replaceMessage(t.length-1,{...s,parts:s.parts.map(i)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;("streaming"===this.status||"submitted"===this.status)&&(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=o,this.state=i,this.onError=n,this.onToolCall=l,this.onFinish=p,this.onData=d,this.sendAutomaticallyWhen=u}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:a,body:r,messageId:o}){var i,n,l;let p;if("resume-stream"===e)try{let e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:a,body:r});if(null==e)return;p=e}catch(e){this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e});return}this.setStatus({status:"submitted",error:void 0});let d=this.lastMessage,u=!1,c=!1,h=!1;try{let i,n={state:function({lastMessage:e,messageId:t}){return{message:(null==e?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}({lastMessage:this.state.snapshot(d),messageId:this.generateId()}),abortController:new AbortController};n.abortController.signal.addEventListener("abort",()=>{u=!0}),this.activeResponse=n,i="resume-stream"===e?p:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:n.abortController.signal,metadata:t,headers:a,body:r,trigger:e,messageId:o});let l=e=>this.jobExecutor.run(()=>e({state:n.state,write:()=>{var e;this.setStatus({status:"streaming"}),n.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,n.state.message):this.state.pushMessage(n.state.message)}}));await K({stream:function({stream:e,messageMetadataSchema:t,dataPartSchemas:a,runUpdateMessageJob:r,onError:o,onToolCall:i,onData:n}){return e.pipeThrough(new TransformStream({async transform(e,l){await r(async({state:r,write:p})=>{var d,u,c,h;function m(e){let t=r.message.parts.filter(V).find(t=>t.toolCallId===e);if(null==t)throw new v({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function g(e){var t;let a=r.message.parts.find(t=>$(t)&&t.toolCallId===e.toolCallId);null!=a?(a.state=e.state,a.input=e.input,a.output=e.output,a.errorText=e.errorText,a.rawInput=e.rawInput,a.preliminary=e.preliminary,void 0!==e.title&&(a.title=e.title),a.providerExecuted=null!=(t=e.providerExecuted)?t:a.providerExecuted,null!=e.providerMetadata&&(a.callProviderMetadata=e.providerMetadata)):r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}function z(e){var t,a;let o=r.message.parts.find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);null!=o?(o.state=e.state,o.toolName=e.toolName,o.input=e.input,o.output=e.output,o.errorText=e.errorText,o.rawInput=null!=(t=e.rawInput)?t:o.rawInput,o.preliminary=e.preliminary,void 0!==e.title&&(o.title=e.title),o.providerExecuted=null!=(a=e.providerExecuted)?a:o.providerExecuted,null!=e.providerMetadata&&(o.callProviderMetadata=e.providerMetadata)):r.message.parts.push({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}async function b(e){if(null!=e){let a=null!=r.message.metadata?function e(t,a){if(void 0===t&&void 0===a)return;if(void 0===t)return a;if(void 0===a)return t;let r={...t};for(let o in a)if(Object.prototype.hasOwnProperty.call(a,o)){let s=a[o];if(void 0===s)continue;let i=o in t?t[o]:void 0,n=null!==s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),l=null!=i&&"object"==typeof i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp);n&&l?r[o]=e(i,s):r[o]=s}return r}(r.message.metadata,e):e;null!=t&&await (0,s.k5)({value:a,schema:t,context:{field:"message.metadata",entityId:r.message.id}}),r.message.metadata=a}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeTextParts[e.id]=t,r.message.parts.push(t),p();break}case"text-delta":{let t=r.activeTextParts[e.id];if(null==t)throw new v({chunkType:"text-delta",chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,p();break}case"text-end":{let t=r.activeTextParts[e.id];if(null==t)throw new v({chunkType:"text-end",chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state="done",t.providerMetadata=null!=(u=e.providerMetadata)?u:t.providerMetadata,delete r.activeTextParts[e.id],p();break}case"reasoning-start":{let t={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),p();break}case"reasoning-delta":{let t=r.activeReasoningParts[e.id];if(null==t)throw new v({chunkType:"reasoning-delta",chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,p();break}case"reasoning-end":{let t=r.activeReasoningParts[e.id];if(null==t)throw new v({chunkType:"reasoning-end",chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=null!=(h=e.providerMetadata)?h:t.providerMetadata,t.state="done",delete r.activeReasoningParts[e.id],p();break}case"file":r.message.parts.push({type:"file",mediaType:e.mediaType,url:e.url}),p();break;case"source-url":r.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),p();break;case"source-document":r.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),p();break;case"tool-input-start":{let t=r.message.parts.filter($);r.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title},e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}),p();break}case"tool-input-delta":{let t=r.partialToolCalls[e.toolCallId];if(null==t)throw new v({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:a}=await q(t.text);t.dynamic?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}):g({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}),p();break}case"tool-input-available":e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}),p(),i&&!e.providerExecuted&&await i({toolCall:e});break;case"tool-input-error":e.dynamic?z({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),p();break;case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId},p();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",p();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:t.title}):g({toolCallId:e.toolCallId,toolName:G(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,title:t.title}),p();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?z({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}):g({toolCallId:e.toolCallId,toolName:G(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}),p();break}case"start-step":r.message.parts.push({type:"step-start"});break;case"finish-step":r.activeTextParts={},r.activeReasoningParts={};break;case"start":null!=e.messageId&&(r.message.id=e.messageId),await b(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&p();break;case"finish":null!=e.finishReason&&(r.finishReason=e.finishReason),await b(e.messageMetadata),null!=e.messageMetadata&&p();break;case"message-metadata":await b(e.messageMetadata),null!=e.messageMetadata&&p();break;case"error":null==o||o(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==a?void 0:a[e.type])!=null){let t=r.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),o=t>=0?t:r.message.parts.length;await (0,s.k5)({value:e.data,schema:a[e.type],context:{field:`message.parts[${o}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){null==n||n(e);break}let t=null!=e.id?r.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:r.message.parts.push(e),null==n||n(e),p()}}l.enqueue(e)})}}))}({stream:i,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:l,onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:"ready"})}catch(e){if(u||"AbortError"===e.name)return u=!0,this.setStatus({status:"ready"}),null;h=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(c=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{null==(n=this.onFinish)||n.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:u,isDisconnect:c,isError:h,finishReason:null==(i=this.activeResponse)?void 0:i.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}!h&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(l=this.lastMessage)?void 0:l.id,metadata:t,headers:a,body:r})}}}}]);
package/bin/clawpad.js CHANGED
@@ -342,14 +342,25 @@ async function startShare(shareArgs) {
342
342
  process.exit(1);
343
343
  }
344
344
 
345
- const relayUrl = process.env.CLAWPAD_RELAY_URL || RELAY_SERVER_URL;
346
- connectRelay(relayUrl, token, gateway.url);
345
+ const relayArg = shareArgs.find(arg => arg.startsWith("--relay="));
346
+ const relayUrl = relayArg ? relayArg.split("=")[1] : (process.env.CLAWPAD_RELAY_URL || RELAY_SERVER_URL);
347
+
348
+ // Add agent metadata to the connection
349
+ const nameArg = shareArgs.find(arg => arg.startsWith("--name="));
350
+ const agentName = nameArg ? nameArg.split("=")[1] : os.hostname();
351
+
352
+ console.log(` 📡 Relay: ${relayUrl}`);
353
+ console.log(` 🏷️ Agent name: ${agentName}`);
354
+ console.log(` 🔑 Token: ${token.slice(0, 8)}...`);
355
+ console.log();
356
+
357
+ connectRelay(relayUrl, token, gateway.url, agentName);
347
358
  }
348
359
 
349
- function connectRelay(relayUrl, token, gatewayWsUrl) {
350
- console.log(` ☁️ Connecting to Relay: ${relayUrl}...`);
360
+ function connectRelay(relayUrl, token, gatewayWsUrl, agentName = "unknown") {
361
+ console.log(` ☁️ Connecting to Relay...`);
351
362
 
352
- const tunnelUrl = `${relayUrl}?type=agent&token=${token}`;
363
+ const tunnelUrl = `${relayUrl}?type=agent&token=${encodeURIComponent(token)}&name=${encodeURIComponent(agentName)}&version=${encodeURIComponent(CURRENT_VERSION)}&platform=${encodeURIComponent(process.platform)}`;
353
364
  const ws = new WebSocket(tunnelUrl);
354
365
  let gatewayWs = null;
355
366
  let reconnectTimer = null;
@@ -503,6 +514,8 @@ function printHelp() {
503
514
 
504
515
  Options (share):
505
516
  --token <token> Relay token from app.clawpad.io
517
+ --relay <url> Custom relay server URL (default: wss://relay.clawpad.io)
518
+ --name <name> Agent name shown in cloud UI (default: hostname)
506
519
 
507
520
  Examples:
508
521
  clawpad Start on port ${DEFAULT_PORT}
@@ -511,7 +524,8 @@ function printHelp() {
511
524
  clawpad --no-open Start without opening browser
512
525
  clawpad --setup Start and open setup onboarding
513
526
  clawpad --yes Auto-integrate with OpenClaw if detected
514
- clawpad share --token=abc Connect to cloud
527
+ clawpad share --token=abc123 Connect to cloud relay
528
+ clawpad share --token=abc123 --relay=ws://localhost:8080 Local relay for dev
515
529
  `);
516
530
  }
517
531
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clawpad",
3
- "version": "0.3.15",
3
+ "version": "0.4.0",
4
4
  "description": "A file-based, Notion-style document workspace for OpenClaw",
5
5
  "keywords": [
6
6
  "openclaw",