1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[81171],{50981:function(e){e.exports=function(e,t){let a;if("function"!=typeof e)throw TypeError(`Expected the first argument to be a \`function\`, got \`${typeof e}\`.`);let r=0;return function(...o){clearTimeout(a);let n=Date.now(),s=t-(n-r);s<=0?(r=n,e.apply(this,o)):a=setTimeout(()=>{r=Date.now(),e.apply(this,o)},s)}}},81171:function(e,t,a){"use strict";a.d(t,{GO:function(){return _}});var r=a(2512),o=a(50981);Symbol("Let zodToJsonSchema decide on which parser to use");var n={code:"0",name:"text",parse:e=>{if("string"!=typeof e)throw Error('"text" parts expect a string value.');return{type:"text",value:e}}},s={code:"3",name:"error",parse:e=>{if("string"!=typeof e)throw Error('"error" parts expect a string value.');return{type:"error",value:e}}},i={code:"4",name:"assistant_message",parse:e=>{if(null==e||"object"!=typeof e||!("id"in e)||!("role"in e)||!("content"in e)||"string"!=typeof e.id||"string"!=typeof e.role||"assistant"!==e.role||!Array.isArray(e.content)||!e.content.every(e=>null!=e&&"object"==typeof e&&"type"in e&&"text"===e.type&&"text"in e&&null!=e.text&&"object"==typeof e.text&&"value"in e.text&&"string"==typeof e.text.value))throw Error('"assistant_message" parts expect an object with an "id", "role", and "content" property.');return{type:"assistant_message",value:e}}},l={code:"5",name:"assistant_control_data",parse:e=>{if(null==e||"object"!=typeof e||!("threadId"in e)||!("messageId"in e)||"string"!=typeof e.threadId||"string"!=typeof e.messageId)throw Error('"assistant_control_data" parts expect an object with a "threadId" and "messageId" property.');return{type:"assistant_control_data",value:{threadId:e.threadId,messageId:e.messageId}}}},p={code:"6",name:"data_message",parse:e=>{if(null==e||"object"!=typeof e||!("role"in e)||!("data"in e)||"string"!=typeof e.role||"data"!==e.role)throw Error('"data_message" parts expect an object with a "role" and "data" property.');return{type:"data_message",value:e}}};n.code,s.code,i.code,l.code,p.code,n.name,n.code,s.name,s.code,i.name,i.code,l.name,l.code,p.name,p.code,[n,s,i,l,p].map(e=>e.code);var c=[{code:"0",name:"text",parse:e=>{if("string"!=typeof e)throw Error('"text" parts expect a string value.');return{type:"text",value:e}}},{code:"2",name:"data",parse:e=>{if(!Array.isArray(e))throw Error('"data" parts expect an array value.');return{type:"data",value:e}}},{code:"3",name:"error",parse:e=>{if("string"!=typeof e)throw Error('"error" parts expect a string value.');return{type:"error",value:e}}},{code:"8",name:"message_annotations",parse:e=>{if(!Array.isArray(e))throw Error('"message_annotations" parts expect an array value.');return{type:"message_annotations",value:e}}},{code:"9",name:"tool_call",parse:e=>{if(null==e||"object"!=typeof e||!("toolCallId"in e)||"string"!=typeof e.toolCallId||!("toolName"in e)||"string"!=typeof e.toolName||!("args"in e)||"object"!=typeof e.args)throw Error('"tool_call" parts expect an object with a "toolCallId", "toolName", and "args" property.');return{type:"tool_call",value:e}}},{code:"a",name:"tool_result",parse:e=>{if(null==e||"object"!=typeof e||!("toolCallId"in e)||"string"!=typeof e.toolCallId||!("result"in e))throw Error('"tool_result" parts expect an object with a "toolCallId" and a "result" property.');return{type:"tool_result",value:e}}},{code:"b",name:"tool_call_streaming_start",parse:e=>{if(null==e||"object"!=typeof e||!("toolCallId"in e)||"string"!=typeof e.toolCallId||!("toolName"in e)||"string"!=typeof e.toolName)throw Error('"tool_call_streaming_start" parts expect an object with a "toolCallId" and "toolName" property.');return{type:"tool_call_streaming_start",value:e}}},{code:"c",name:"tool_call_delta",parse:e=>{if(null==e||"object"!=typeof e||!("toolCallId"in e)||"string"!=typeof e.toolCallId||!("argsTextDelta"in e)||"string"!=typeof e.argsTextDelta)throw Error('"tool_call_delta" parts expect an object with a "toolCallId" and "argsTextDelta" property.');return{type:"tool_call_delta",value:e}}},{code:"d",name:"finish_message",parse:e=>{if(null==e||"object"!=typeof e||!("finishReason"in e)||"string"!=typeof e.finishReason)throw Error('"finish_message" parts expect an object with a "finishReason" property.');let t={finishReason:e.finishReason};return"usage"in e&&null!=e.usage&&"object"==typeof e.usage&&"promptTokens"in e.usage&&"completionTokens"in e.usage&&(t.usage={promptTokens:"number"==typeof e.usage.promptTokens?e.usage.promptTokens:Number.NaN,completionTokens:"number"==typeof e.usage.completionTokens?e.usage.completionTokens:Number.NaN}),{type:"finish_message",value:t}}}
1,{code:"e",name:"finish_step",parse:e=>{if(null==e||"object"!=typeof e||!("finishReason"in e)||"string"!=typeof e.finishReason)throw Error('"finish_step" parts expect an object with a "finishReason" property.');let t={finishReason:e.finishReason,isContinued:!1};return"usage"in e&&null!=e.usage&&"object"==typeof e.usage&&"promptTokens"in e.usage&&"completionTokens"in e.usage&&(t.usage={promptTokens:"number"==typeof e.usage.promptTokens?e.usage.promptTokens:Number.NaN,completionTokens:"number"==typeof e.usage.completionTokens?e.usage.completionTokens:Number.NaN}),"isContinued"in e&&"boolean"==typeof e.isContinued&&(t.isContinued=e.isContinued),{type:"finish_step",value:t}}},{code:"f",name:"start_step",parse:e=>{if(null==e||"object"!=typeof e||!("messageId"in e)||"string"!=typeof e.messageId)throw Error('"start_step" parts expect an object with an "id" property.');return{type:"start_step",value:{messageId:e.messageId}}}},{code:"g",name:"reasoning",parse:e=>{if("string"!=typeof e)throw Error('"reasoning" parts expect a string value.');return{type:"reasoning",value:e}}},{code:"h",name:"source",parse:e=>{if(null==e||"object"!=typeof e)throw Error('"source" parts expect a Source object.');return{type:"source",value:e}}},{code:"i",name:"redacted_reasoning",parse:e=>{if(null==e||"object"!=typeof e||!("data"in e)||"string"!=typeof e.data)throw Error('"redacted_reasoning" parts expect an object with a "data" property.');return{type:"redacted_reasoning",value:{data:e.data}}}},{code:"j",name:"reasoning_signature",parse:e=>{if(null==e||"object"!=typeof e||!("signature"in e)||"string"!=typeof e.signature)throw Error('"reasoning_signature" parts expect an object with a "signature" property.');return{type:"reasoning_signature",value:{signature:e.signature}}}},{code:"k",name:"file",parse:e=>{if(null==e||"object"!=typeof e||!("data"in e)||"string"!=typeof e.data||!("mimeType"in e)||"string"!=typeof e.mimeType)throw Error('"file" parts expect an object with a "data" and "mimeType" property.');return{type:"file",value:e}}}],u=Object.fromEntries(c.map(e=>[e.code,e]));Object.fromEntries(c.map(e=>[e.name,e.code]));var d=c.map(e=>e.code),f=e=>{let t=e.indexOf(":");if(-1===t)throw Error("Failed to parse stream string. No separator found.");let a=e.slice(0,t);if(!d.includes(a))throw Error(`Failed to parse stream string. Invalid code ${a}.`);let r=JSON.parse(e.slice(t+1));return u[a].parse(r)};async function y({stream:e,onTextPart:t,onReasoningPart:a,onReasoningSignaturePart:r,onRedactedReasoningPart:o,onSourcePart:n,onFilePart:s,onDataPart:i,onErrorPart:l,onToolCallStreamingStartPart:p,onToolCallDeltaPart:c,onToolCallPart:u,onToolResultPart:d,onMessageAnnotationsPart:y,onFinishMessagePart:g,onFinishStepPart:m,onStartStepPart:h}){let b=e.getReader(),w=new TextDecoder,_=[],v=0;for(;;){let{value:e}=await b.read();if(e&&(_.push(e),v+=e.length,10!==e[e.length-1]))continue;if(0===_.length)break;let k=function(e,t){let a=new Uint8Array(t),r=0;for(let t of e)a.set(t,r),r+=t.length;return e.length=0,a}(_,v);for(let{type:e,value:b}of(v=0,w.decode(k,{stream:!0}).split("\n").filter(e=>""!==e).map(f)))switch(e){case"text":await (null==t?void 0:t(b));break;case"reasoning":await (null==a?void 0:a(b));break;case"reasoning_signature":await (null==r?void 0:r(b));break;case"redacted_reasoning":await (null==o?void 0:o(b));break;case"file":await (null==s?void 0:s(b));break;case"source":await (null==n?void 0:n(b));break;case"data":await (null==i?void 0:i(b));break;case"error":await (null==l?void 0:l(b));break;case"message_annotations":await (null==y?void 0:y(b));break;case"tool_call_streaming_start":await (null==p?void 0:p(b));break;case"tool_call_delta":await (null==c?void 0:c(b));break;case"tool_call":await (null==u?void 0:u(b));break;case"tool_result":await (null==d?void 0:d(b));break;case"finish_message":await (null==g?void 0:g(b));break;case"finish_step":await (null==m?void 0:m(b));break;case"start_step":await (null==h?void 0:h(b));break;default:throw Error(`Unknown stream part type: ${e}`)}}}async function g({stream:e,onTextPart:t}){let a=e.pipeThrough(new TextDecoderStream).getReader();for(;;){let{done:e,value:r}=await a.read();if(e)break;await t(r)}}var m=()=>fetch;async function h({api:e,prompt:t,credentials:a,headers:r,body:o,streamProtocol:n="data",setCompletion:s,setLoading:i,setError:l,setAbortController:p,onResponse:c,onFinish:u,onError:d,onData:f,fetch:h=m()}){var b;try{i(!0),l(void 0);let d=new AbortController;p(d),s("");let m=await h(e,{method:"POST",body:JSON.stringify({prompt:t,...o}
1),credentials:a,headers:{"Content-Type":"application/json",...r},signal:d.signal}).catch(e=>{throw e});if(c)try{await c(m)}catch(e){throw e}if(!m.ok)throw Error(null!=(b=await m.text())?b:"Failed to fetch the chat response.");if(!m.body)throw Error("The response body is empty.");let w="";switch(n){case"text":await g({stream:m.body,onTextPart:e=>{w+=e,s(w)}});break;case"data":await y({stream:m.body,onTextPart(e){w+=e,s(w)},onDataPart(e){null==f||f(e)},onErrorPart(e){throw Error(e)}});break;default:throw Error(`Unknown stream protocol: ${n}`)}return u&&u(t,w),p(null),w}catch(e){if("AbortError"===e.name)return p(null),null;e instanceof Error&&d&&d(e),l(e)}finally{i(!1)}}Symbol.for("vercel.ai.schema");var b=a(73789);function w(e,t){return null!=t?o(e,t):e}var _=function({api:e="/api/completion",id:t,initialCompletion:a="",initialInput:o="",credentials:n,headers:s,body:i,streamProtocol:l="data",fetch:p,onResponse:c,onFinish:u,onError:d,experimental_throttle:f}={}){let y=(0,r.useId)(),g=t||y,{data:m,mutate:_}=(0,b.ZP)([e,g],null,{fallbackData:a}),{data:v=!1,mutate:k}=(0,b.ZP)([g,"loading"],null),{data:x,mutate:E}=(0,b.ZP)([g,"streamData"],null),[j,T]=(0,r.useState)(void 0),[C,I]=(0,r.useState)(null),N=(0,r.useRef)({credentials:n,headers:s,body:i});(0,r.useEffect)(()=>{N.current={credentials:n,headers:s,body:i}},[n,s,i]);let R=(0,r.useCallback)(async(t,a)=>h({api:e,prompt:t,credentials:N.current.credentials,headers:{...N.current.headers,...null==a?void 0:a.headers},body:{...N.current.body,...null==a?void 0:a.body},streamProtocol:l,fetch:p,setCompletion:w(e=>_(e,!1),f),onData:w(e=>E([...null!=x?x:[],...null!=e?e:[]],!1),f),setLoading:k,setError:T,setAbortController:I,onResponse:c,onFinish:u,onError:d}),[_,k,e,N,I,c,u,d,T,x,l,p,E,f]),D=(0,r.useCallback)(()=>{C&&(C.abort(),I(null))},[C]),S=(0,r.useCallback)(e=>{_(e,!1)},[_]),A=(0,r.useCallback)(async(e,t)=>R(e,t),[R]),[P,O]=(0,r.useState)(o),$=(0,r.useCallback)(e=>{var t;return null==(t=null==e?void 0:e.preventDefault)||t.call(e),P?A(P):void 0},[P,A]),F=(0,r.useCallback)(e=>{O(e.target.value)},[O]);return{completion:m,complete:A,error:j,setCompletion:S,stop:D,input:P,setInput:O,handleInputChange:F,handleSubmit:$,isLoading:v,data:x}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.