@cuadra-ai/uikit 0.1.28 → 0.1.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +32 -27
- package/dist/index.mjs.map +1 -1
- package/dist/widget/cuadra-uikit.umd.js +8 -8
- package/dist/widget/cuadra-uikit.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
(function($,p){typeof exports=="object"&&typeof module!="undefined"?p(exports,require("react/jsx-runtime"),require("react"),require("react-dom/client"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom/client","react-dom"],p):($=typeof globalThis!="undefined"?globalThis:$||self,p($.CuadraUIKit={},$.React,$.React,$.ReactDOM,$.ReactDOM))})(this,(function($,p,y,ge,qe){"use strict";var dv=Object.defineProperty,hv=Object.defineProperties;var fv=Object.getOwnPropertyDescriptors;var vn=Object.getOwnPropertySymbols;var Iu=Object.prototype.hasOwnProperty,Eu=Object.prototype.propertyIsEnumerable;var ai=($,p)=>(p=Symbol[$])?p:Symbol.for("Symbol."+$),Au=$=>{throw TypeError($)},Mu=Math.pow,ii=($,p,y)=>p in $?dv($,p,{enumerable:!0,configurable:!0,writable:!0,value:y}):$[p]=y,m=($,p)=>{for(var y in p||(p={}))Iu.call(p,y)&&ii($,y,p[y]);if(vn)for(var y of vn(p))Eu.call(p,y)&&ii($,y,p[y]);return $},E=($,p)=>hv($,fv(p));var V=($,p)=>{var y={};for(var ge in $)Iu.call($,ge)&&p.indexOf(ge)<0&&(y[ge]=$[ge]);if($!=null&&vn)for(var ge of vn($))p.indexOf(ge)<0&&Eu.call($,ge)&&(y[ge]=$[ge]);return y};var C=($,p,y)=>ii($,typeof p!="symbol"?p+"":p,y),Pu=($,p,y)=>p.has($)||Au("Cannot "+y);var Ye=($,p,y)=>(Pu($,p,"read from private field"),y?y.call($):p.get($)),er=($,p,y)=>p.has($)?Au("Cannot add the same private member more than once"):p instanceof WeakSet?p.add($):p.set($,y),tr=($,p,y,ge)=>(Pu($,p,"write to private field"),ge?ge.call($,y):p.set($,y),y);var M=($,p,y)=>new Promise((ge,qe)=>{var De=Se=>{try{Y(y.next(Se))}catch(Ve){qe(Ve)}},Ge=Se=>{try{Y(y.throw(Se))}catch(Ve){qe(Ve)}},Y=Se=>Se.done?ge(Se.value):Promise.resolve(Se.value).then(De,Ge);Y((y=y.apply($,p)).next())}),Le=function($,p){this[0]=$,this[1]=p},Nr=($,p,y)=>{var ge=(Ge,Y,Se,Ve)=>{try{var rr=y[Ge](Y),nr=(Y=rr.value)instanceof Le,_n=rr.done;Promise.resolve(nr?Y[0]:Y).then(lt=>nr?ge(Ge==="return"?Ge:"next",Y[1]?{done:lt.done,value:lt.value}:lt,Se,Ve):Se({value:lt,done:_n})).catch(lt=>ge("throw",lt,Se,Ve))}catch(lt){Ve(lt)}},qe=Ge=>De[Ge]=Y=>new Promise((Se,Ve)=>ge(Ge,Y,Se,Ve)),De={};return y=y.apply($,p),De[ai("asyncIterator")]=()=>De,qe("next"),qe("throw"),qe("return"),De};var zt=($,p,y)=>(p=$[ai("asyncIterator")])?p.call($):($=$[ai("iterator")](),p={},y=(ge,qe)=>(qe=$[ge])&&(p[ge]=De=>new Promise((Ge,Y,Se)=>(De=qe.call($,De),Se=De.done,Promise.resolve(De.value).then(Ve=>Ge({value:Ve,done:Se}),Y)))),y("next"),y("return"),p);var at,Ft,Qe,ku,Ir,Su,Er,Ar,Mr,_u,Tu;var De=typeof document!="undefined"?document.currentScript:null;function Ge(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const Y=Ge(y);const Se=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Ve=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,n)=>n?n.toUpperCase():r.toLowerCase()),rr=e=>{const t=Ve(e);return t.charAt(0).toUpperCase()+t.slice(1)},nr=(...e)=>e.filter((t,r,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===r).join(" ").trim(),_n=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var lt={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Lu=y.forwardRef((u,l)=>{var c=u,{color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:n,className:a="",children:i,iconNode:s}=c,o=V(c,["color","size","strokeWidth","absoluteStrokeWidth","className","children","iconNode"]);return y.createElement("svg",m(m(E(m({ref:l},lt),{width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:nr("lucide",a)}),!i&&!_n(o)&&{"aria-hidden":"true"}),o),[...s.map(([d,f])=>y.createElement(d,f)),...Array.isArray(i)?i:[i]])});const Oe=(e,t)=>{const r=y.forwardRef((s,i)=>{var o=s,{className:n}=o,a=V(o,["className"]);return y.createElement(Lu,m({ref:i,iconNode:t,className:nr(`lucide-${Se(rr(e))}`,`lucide-${e}`,n)},a))});return r.displayName=rr(e),r};const Du=Oe("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);const Ou=Oe("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);const Tn=Oe("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Fu=Oe("contrast",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 18a6 6 0 0 0 0-12v12z",key:"j4l70d"}]]);const Bu=Oe("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);const zu=Oe("ellipsis-vertical",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]]);const Ru=Oe("file-spreadsheet",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]]);const oi=Oe("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);const ju=Oe("file-type",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M11 18h2",key:"12mj7e"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M9 13v-.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v.5",key:"qbrxap"}]]);const li=Oe("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);const $u=Oe("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]);const Uu=Oe("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);const ui=Oe("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);const Hu=Oe("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const Cn=Oe("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);var qu=e=>Array.from(e).map(r=>r.getModelContext()).sort((r,n)=>{var a,i;return((a=n.priority)!=null?a:0)-((i=r.priority)!=null?i:0)}).reduce((r,n)=>{var a;if(n.system&&(r.system?r.system+=`
|
|
2
2
|
|
|
3
|
-
${n.system}`:r.system=n.system),n.tools)for(const[i,s]of Object.entries(n.tools)){const o=(a=r.tools)==null?void 0:a[i];if(o&&o!==s)throw new Error(`You tried to define a tool with the name ${i}, but it already exists.`);r.tools||(r.tools={}),r.tools[i]=s}return n.config&&(r.config=m(m({},r.config),n.config)),n.callSettings&&(r.callSettings=m(m({},r.callSettings),n.callSettings)),r},{}),In=class{constructor(){C(this,"_providers",new Set);C(this,"_subscribers",new Set)}getModelContext(){return qu(this._providers)}registerModelContextProvider(e){var r;this._providers.add(e);const t=(r=e.subscribe)==null?void 0:r.call(e,()=>{this.notifySubscribers()});return this.notifySubscribers(),()=>{this._providers.delete(e),t==null||t(),this.notifySubscribers()}}notifySubscribers(){for(const e of this._subscribers)e()}subscribe(e){return this._subscribers.add(e),()=>this._subscribers.delete(e)}},En=class{constructor(){C(this,"_contextProvider",new In)}registerModelContextProvider(e){return this._contextProvider.registerModelContextProvider(e)}getModelContextProvider(){return this._contextProvider}},ar=class{constructor(){C(this,"_subscribers",new Set)}subscribe(e){return this._subscribers.add(e),()=>this._subscribers.delete(e)}waitForUpdate(){return new Promise(e=>{const t=this.subscribe(()=>{t(),e()})})}_notifySubscribers(){const e=[];for(const t of this._subscribers)try{t()}catch(r){e.push(r)}if(e.length>0)throw e.length===1?e[0]:new AggregateError(e)}},Vu=e=>e.status.type==="complete",ci=class extends ar{constructor(){super(...arguments);C(this,"isEditing",!0);C(this,"_attachments",[]);C(this,"_text","");C(this,"_role","user");C(this,"_runConfig",{});C(this,"_eventSubscribers",new Map)}get attachmentAccept(){var t,r;return(r=(t=this.getAttachmentAdapter())==null?void 0:t.accept)!=null?r:"*"}get attachments(){return this._attachments}setAttachments(t){this._attachments=t,this._notifySubscribers()}get isEmpty(){return!this.text.trim()&&!this.attachments.length}get text(){return this._text}get role(){return this._role}get runConfig(){return this._runConfig}setText(t){this._text!==t&&(this._text=t,this._notifySubscribers())}setRole(t){this._role!==t&&(this._role=t,this._notifySubscribers())}setRunConfig(t){this._runConfig!==t&&(this._runConfig=t,this._notifySubscribers())}_emptyTextAndAttachments(){this._attachments=[],this._text="",this._notifySubscribers()}_onClearAttachments(){return M(this,null,function*(){const t=this.getAttachmentAdapter();t&&(yield Promise.all(this._attachments.map(r=>t.remove(r))))})}reset(){return M(this,null,function*(){if(this._attachments.length===0&&this._text===""&&this._role==="user"&&Object.keys(this._runConfig).length===0)return;this._role="user",this._runConfig={};const t=this._onClearAttachments();this._emptyTextAndAttachments(),yield t})}clearAttachments(){return M(this,null,function*(){const t=this._onClearAttachments();this.setAttachments([]),yield t})}send(){return M(this,null,function*(){const t=this.getAttachmentAdapter(),r=t&&this.attachments.length>0?Promise.all(this.attachments.map(i=>M(this,null,function*(){return Vu(i)?i:yield t.send(i)}))):[],n=this.text;this._emptyTextAndAttachments();const a={createdAt:new Date,role:this.role,content:n?[{type:"text",text:n}]:[],attachments:yield r,runConfig:this.runConfig,metadata:{custom:{}}};this.handleSend(a),this._notifyEventSubscribers("send")})}cancel(){this.handleCancel()}addAttachment(t){return M(this,null,function*(){const r=this.getAttachmentAdapter();if(!r)throw new Error("Attachments are not supported");const n=u=>{const c=this._attachments.findIndex(d=>d.id===u.id);c!==-1?this._attachments=[...this._attachments.slice(0,c),u,...this._attachments.slice(c+1)]:this._attachments=[...this._attachments,u],this._notifySubscribers()},a=r.add({file:t});if(Symbol.asyncIterator in a)try{for(var i=zt(a),s,o,l;s=!(o=yield i.next()).done;s=!1){const u=o.value;n(u)}}catch(o){l=[o]}finally{try{s&&(o=i.return)&&(yield o.call(i))}finally{if(l)throw l[0]}}else n(yield a);this._notifyEventSubscribers("attachment-add"),this._notifySubscribers()})}removeAttachment(t){return M(this,null,function*(){const r=this.getAttachmentAdapter();if(!r)throw new Error("Attachments are not supported");const n=this._attachments.findIndex(i=>i.id===t);if(n===-1)throw new Error("Attachment not found");const a=this._attachments[n];yield r.remove(a),this._attachments=[...this._attachments.slice(0,n),...this._attachments.slice(n+1)],this._notifySubscribers()})}_notifyEventSubscribers(t){const r=this._eventSubscribers.get(t);if(r)for(const n of r)n()}unstable_on(t,r){const n=this._eventSubscribers.get(t);return n?n.add(r):this._eventSubscribers.set(t,new Set([r])),()=>{const a=this._eventSubscribers.get(t);a&&a.delete(r)}}},di=class extends ci{constructor(t){super();C(this,"_canCancel",!1);this.runtime=t,this.connect()}get canCancel(){return this._canCancel}get attachments(){return super.attachments}getAttachmentAdapter(){var t;return(t=this.runtime.adapters)==null?void 0:t.attachments}connect(){return this.runtime.subscribe(()=>{this.canCancel!==this.runtime.capabilities.cancel&&(this._canCancel=this.runtime.capabilities.cancel,this._notifySubscribers())})}handleSend(t){return M(this,null,function*(){var r,n;this.runtime.append(E(m({},t),{parentId:(n=(r=this.runtime.messages.at(-1))==null?void 0:r.id)!=null?n:null,sourceId:null}))})}handleCancel(){return M(this,null,function*(){this.runtime.cancelRun()})}};let hi=(e,t=21)=>(r=t)=>{let n="",a=r|0;for(;a--;)n+=e[Math.random()*e.length|0];return n};var Ct=hi("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7),Wu="__optimistic__",Ju=()=>`${Wu}${Ct()}`,ir=Symbol("autoStatus"),Ku=Object.freeze(Object.assign({type:"running"},{[ir]:!0})),Yu=Object.freeze(Object.assign({type:"complete",reason:"unknown"},{[ir]:!0})),Gu=Object.freeze(Object.assign({type:"requires-action",reason:"tool-calls"},{[ir]:!0})),Xu=Object.freeze(Object.assign({type:"requires-action",reason:"interrupt"},{[ir]:!0})),fi=(e,t,r,n,a)=>e&&a?Object.assign({type:"incomplete",reason:"error",error:a},{[ir]:!0}):e&&t?Ku:r?Xu:n?Gu:Yu;function Lr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var It={exports:{}},pi;function Qu(){if(pi)return It.exports;pi=1;const e=typeof Buffer!="undefined",t=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,r=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function n(o,l,u){u==null&&l!==null&&typeof l=="object"&&(u=l,l=void 0),e&&Buffer.isBuffer(o)&&(o=o.toString()),o&&o.charCodeAt(0)===65279&&(o=o.slice(1));const c=JSON.parse(o,l);if(c===null||typeof c!="object")return c;const d=u&&u.protoAction||"error",f=u&&u.constructorAction||"error";if(d==="ignore"&&f==="ignore")return c;if(d!=="ignore"&&f!=="ignore"){if(t.test(o)===!1&&r.test(o)===!1)return c}else if(d!=="ignore"&&f==="ignore"){if(t.test(o)===!1)return c}else if(r.test(o)===!1)return c;return a(c,{protoAction:d,constructorAction:f,safe:u&&u.safe})}function a(o,{protoAction:l="error",constructorAction:u="error",safe:c}={}){let d=[o];for(;d.length;){const f=d;d=[];for(const h of f){if(l!=="ignore"&&Object.prototype.hasOwnProperty.call(h,"__proto__")){if(c===!0)return null;if(l==="error")throw new SyntaxError("Object contains forbidden prototype property");delete h.__proto__}if(u!=="ignore"&&Object.prototype.hasOwnProperty.call(h,"constructor")&&h.constructor!==null&&typeof h.constructor=="object"&&Object.prototype.hasOwnProperty.call(h.constructor,"prototype")){if(c===!0)return null;if(u==="error")throw new SyntaxError("Object contains forbidden prototype property");delete h.constructor}for(const g in h){const v=h[g];v&&typeof v=="object"&&d.push(v)}}}return o}function i(o,l,u){const{stackTraceLimit:c}=Error;Error.stackTraceLimit=0;try{return n(o,l,u)}finally{Error.stackTraceLimit=c}}function s(o,l){const{stackTraceLimit:u}=Error;Error.stackTraceLimit=0;try{return n(o,l,{safe:!0})}catch(c){return}finally{Error.stackTraceLimit=u}}return It.exports=i,It.exports.default=i,It.exports.parse=i,It.exports.safeParse=s,It.exports.scan=a,It.exports}var Zu=Qu();const An=Lr(Zu);function ec(e){const t=["ROOT"];let r=-1,n=null;const a=[];let i;function s(){i!==void 0&&(a.push(JSON.parse(`"${i}"`)),i=void 0)}function o(d,f,h){switch(d){case'"':{r=f,t.pop(),t.push(h),t.push("INSIDE_STRING"),s();break}case"f":case"t":case"n":{r=f,n=f,t.pop(),t.push(h),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(h),t.push("INSIDE_NUMBER"),s();break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=f,t.pop(),t.push(h),t.push("INSIDE_NUMBER"),s();break}case"{":{r=f,t.pop(),t.push(h),t.push("INSIDE_OBJECT_START"),s();break}case"[":{r=f,t.pop(),t.push(h),t.push("INSIDE_ARRAY_START"),s();break}}}function l(d,f){switch(d){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=f,t.pop(),i=a.pop();break}}}function u(d,f){switch(d){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA"),i=(Number(i)+1).toString();break}case"]":{r=f,t.pop(),i=a.pop();break}}}for(let d=0;d<e.length;d++){const f=e[d];switch(t[t.length-1]){case"ROOT":o(f,d,"FINISH");break;case"INSIDE_OBJECT_START":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY"),i="";break}case"}":{r=d,t.pop(),i=a.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY"),i="";break}}break}case"INSIDE_OBJECT_KEY":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}case"\\":{t.push("INSIDE_STRING_ESCAPE"),i+=f;break}default:{i+=f;break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(f){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{o(f,d,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{l(f,d);break}case"INSIDE_STRING":{switch(f){case'"':{t.pop(),r=d,i=a.pop();break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=d}break}case"INSIDE_ARRAY_START":{switch(f){case"]":{r=d,t.pop(),i=a.pop();break}default:{r=d,i="0",o(f,d,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(f){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA"),i=(Number(i)+1).toString();break}case"]":{r=d,t.pop(),i=a.pop();break}default:{r=d;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{o(f,d,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),t[t.length-1]==="INSIDE_STRING"?r=d:t[t.length-1]==="INSIDE_OBJECT_KEY"&&(i+=f);break}case"INSIDE_NUMBER":{switch(f){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=d;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&l(f,d);break}case"}":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&l(f,d);break}case"]":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d);break}default:{t.pop(),i=a.pop();break}}break}case"INSIDE_LITERAL":{const g=e.substring(n,d+1);!"false".startsWith(g)&&!"true".startsWith(g)&&!"null".startsWith(g)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?l(f,d):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d)):r=d;break}}}let c=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{c+='"';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":{c+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{c+="]";break}case"INSIDE_LITERAL":{const h=e.substring(n,e.length);"true".startsWith(h)?c+="true".slice(h.length):"false".startsWith(h)?c+="false".slice(h.length):"null".startsWith(h)&&(c+="null".slice(h.length))}}return[c,a]}var Dr=Symbol("aui.parse-partial-json-object.meta"),tc=e=>e==null?void 0:e[Dr],Or=e=>{if(e.length===0)return{[Dr]:{state:"partial",partialPath:[]}};try{const t=An.parse(e);if(typeof t!="object"||t===null)throw new Error("argsText is expected to be an object");return t[Dr]={state:"complete",partialPath:[]},t}catch(t){try{const[r,n]=ec(e),a=An.parse(r);if(typeof a!="object"||a===null)throw new Error("argsText is expected to be an object");return a[Dr]={state:"partial",partialPath:n},a}catch(r){return}}},mi=(e,t,r)=>{if(typeof e!="object"||e===null)return t.state;if(t.state==="complete")return"complete";if(r.length===0)return t.state;const[n,...a]=r;if(!Object.prototype.hasOwnProperty.call(e,n))return"partial";const[i,...s]=t.partialPath;if(n!==i)return"complete";const o=e[n];return mi(o,{state:"partial",partialPath:s},a)},Rt=(e,t)=>{const r=tc(e);if(!r)throw new Error("unable to determine object state");return mi(e,r,t.map(String))};function rc(){return Nr(this,null,function*(){const e=this.getReader();try{for(;;){const{done:t,value:r}=yield new Le(e.read());if(t)break;yield r}}finally{e.releaseLock()}})}function Mn(e){var t,r;return(r=e[t=Symbol.asyncIterator])!=null||(e[t]=rc),e}var Pn={toResponse(e,t){var r;return new Response(Pn.toByteStream(e,t),{headers:(r=t.headers)!=null?r:{}})},fromResponse(e,t){return Pn.fromByteStream(e.body,t)},toByteStream(e,t){return e.pipeThrough(t)},fromByteStream(e,t){return e.pipeThrough(t)}},Nn=function(){let e,t;const r=new Promise((n,a)=>{e=n,t=a});if(!e||!t)throw new Error("Failed to create promise");return{promise:r,resolve:e,reject:t}},nc=()=>{const e=[];let t=!1,r,n;const a=s=>{s.promise||(s.promise=s.reader.read().then(({done:o,value:l})=>{s.promise=void 0,o?(e.splice(e.indexOf(s),1),t&&e.length===0&&r.close()):r.enqueue(l),n==null||n.resolve(),n=void 0}).catch(o=>{console.error(o),e.forEach(l=>{l.reader.cancel()}),e.length=0,r.error(o),n==null||n.reject(o),n=void 0}))};return{readable:new ReadableStream({start(s){r=s},pull(){return n=Nn(),e.forEach(s=>{a(s)}),n.promise},cancel(){e.forEach(s=>{s.reader.cancel()}),e.length=0}}),isSealed(){return t},seal(){t=!0,e.length===0&&r.close()},addStream(s){if(t)throw new Error("Cannot add streams after the run callback has settled.");const o={reader:s.getReader()};e.push(o),a(o)},enqueue(s){this.addStream(new ReadableStream({start(o){o.enqueue(s),o.close()}}))}}},gi=class{constructor(e){C(this,"_controller");C(this,"_isClosed",!1);this._controller=e}append(e){return this._controller.enqueue({type:"text-delta",path:[],textDelta:e}),this}close(){this._isClosed||(this._isClosed=!0,this._controller.enqueue({type:"part-finish",path:[]}),this._controller.close())}},yi=e=>new ReadableStream({start(t){var r;return(r=e.start)==null?void 0:r.call(e,new gi(t))},pull(t){var r;return(r=e.pull)==null?void 0:r.call(e,new gi(t))},cancel(t){var r;return(r=e.cancel)==null?void 0:r.call(e,t)}}),bi=()=>{let e;return[yi({start(r){e=r}}),e]},wi=class{constructor(e){C(this,"_isClosed",!1);C(this,"_mergeTask");C(this,"_argsTextController");this._controller=e;const t=yi({start:n=>{this._argsTextController=n}});let r=!1;this._mergeTask=t.pipeTo(new WritableStream({write:n=>{switch(n.type){case"text-delta":r=!0,this._controller.enqueue(n);break;case"part-finish":r||this._controller.enqueue({type:"text-delta",textDelta:"{}",path:[]}),this._controller.enqueue({type:"tool-call-args-text-finish",path:[]});break;default:throw new Error(`Unexpected chunk type: ${n.type}`)}}}))}get argsText(){return this._argsTextController}setResponse(e){return M(this,null,function*(){var t;this._argsTextController.close(),yield Promise.resolve(),this._controller.enqueue(E(m({type:"result",path:[]},e.artifact!==void 0?{artifact:e.artifact}:{}),{result:e.result,isError:(t=e.isError)!=null?t:!1}))})}close(){return M(this,null,function*(){this._isClosed||(this._isClosed=!0,this._argsTextController.close(),yield this._mergeTask,this._controller.enqueue({type:"part-finish",path:[]}),this._controller.close())})}},ac=e=>new ReadableStream({start(t){var r;return(r=e.start)==null?void 0:r.call(e,new wi(t))},pull(t){var r;return(r=e.pull)==null?void 0:r.call(e,new wi(t))},cancel(t){var r;return(r=e.cancel)==null?void 0:r.call(e,t)}}),ic=()=>{let e;return[ac({start(r){e=r}}),e]},xi=class{constructor(){C(this,"value",-1)}up(){return++this.value}},sc=class extends TransformStream{constructor(e){super({transform(t,r){r.enqueue(E(m({},t),{path:[e,...t.path]}))}})}};(class extends TransformStream{constructor(e){super({transform(t,r){const{path:[n,...a]}=t;if(e!==n)throw new Error(`Path mismatch: expected ${e}, got ${n}`);r.enqueue(E(m({},t),{path:a}))}})}});var oc=class extends TransformStream{constructor(e){const t=new xi,r=new Map;super({transform(n,a){n.type==="part-start"&&n.path.length===0&&r.set(t.up(),e.up());const[i,...s]=n.path;if(i===void 0){a.enqueue(n);return}const o=r.get(i);if(o===void 0)throw new Error("Path not found");a.enqueue(E(m({},n),{path:[o,...s]}))}})}},vi=class extends TransformStream{constructor(e){super();const t=e(super.readable);Object.defineProperty(this,"readable",{value:t,writable:!1})}},ki=class extends TransformStream{constructor(){const e=[];super({transform(t,r){if(t.type==="part-start"){if(t.path.length!==0){r.error(new Error("Nested parts are not supported"));return}e.push(t.part),r.enqueue(t);return}if(t.type==="text-delta"||t.type==="result"||t.type==="part-finish"||t.type==="tool-call-args-text-finish"){if(t.path.length!==1){r.error(new Error(`${t.type} chunks must have a path of length 1`));return}const n=t.path[0];if(n<0||n>=e.length){r.error(new Error(`Invalid path index: ${n}`));return}const a=e[n];r.enqueue(E(m({},t),{meta:a}));return}r.enqueue(t)}})}},Si=hi("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7),lc=class Nu{constructor(t){C(this,"_state");C(this,"_parentId");this._state=t||{merger:nc(),contentCounter:new xi}}get __internal_isClosed(){return this._state.merger.isSealed()}__internal_getReadable(){return this._state.merger.readable}__internal_subscribeToClose(t){this._state.closeSubscriber=t}_addPart(t,r){this._state.append&&(this._state.append.controller.close(),this._state.append=void 0),this.enqueue({type:"part-start",part:t,path:[]}),this._state.merger.addStream(r.pipeThrough(new sc(this._state.contentCounter.value)))}merge(t){this._state.merger.addStream(t.pipeThrough(new oc(this._state.contentCounter)))}appendText(t){var r;((r=this._state.append)==null?void 0:r.kind)!=="text"&&(this._state.append={kind:"text",controller:this.addTextPart()}),this._state.append.controller.append(t)}appendReasoning(t){var r;((r=this._state.append)==null?void 0:r.kind)!=="reasoning"&&(this._state.append={kind:"reasoning",controller:this.addReasoningPart()}),this._state.append.controller.append(t)}addTextPart(){const[t,r]=bi();return this._addPart({type:"text"},t),r}addReasoningPart(){const[t,r]=bi();return this._addPart({type:"reasoning"},t),r}addToolCallPart(t){var o;const r=typeof t=="string"?{toolName:t}:t,n=r.toolName,a=(o=r.toolCallId)!=null?o:Si(),[i,s]=ic();return this._addPart(m({type:"tool-call",toolName:n,toolCallId:a},this._parentId&&{parentId:this._parentId}),i),r.argsText!==void 0&&(s.argsText.append(r.argsText),s.argsText.close()),r.args!==void 0&&(s.argsText.append(JSON.stringify(r.args)),s.argsText.close()),r.response!==void 0&&s.setResponse(r.response),s}appendSource(t){this._addPart(m(m({},t),this._parentId&&{parentId:this._parentId}),new ReadableStream({start(r){r.enqueue({type:"part-finish",path:[]}),r.close()}}))}appendFile(t){this._addPart(t,new ReadableStream({start(r){r.enqueue({type:"part-finish",path:[]}),r.close()}}))}enqueue(t){this._state.merger.enqueue(t),t.type==="part-start"&&t.path.length===0&&this._state.contentCounter.up()}withParentId(t){const r=new Nu(this._state);return r._parentId=t,r}close(){var t,r,n,a;(r=(t=this._state.append)==null?void 0:t.controller)==null||r.close(),this._state.merger.seal(),(a=(n=this._state).closeSubscriber)==null||a.call(n)}};function uc(e){const t=new lc;return M(null,null,function*(){try{yield e(t)}catch(n){throw t.__internal_isClosed||t.enqueue({type:"error",path:[],error:String(n)}),n}finally{t.__internal_isClosed||t.close()}}),t.__internal_getReadable()}function _i(){const{resolve:e,promise:t}=Nn();let r;return[uc(a=>(r=a,r.__internal_subscribeToClose(e),t)),r]}var cc=class extends TransformStream{constructor(e,t,r){const[n,a]=_i();let i;super({start(o){var l;return i=n.pipeTo(new WritableStream({write(u){o.enqueue(u)},abort(u){o.error(u)},close(){o.terminate()}})).catch(u=>{o.error(u)}),(l=e.start)==null?void 0:l.call(e,a)},transform(o){var l;return(l=e.transform)==null?void 0:l.call(e,o,a)},flush(){return M(this,null,function*(){var o;yield(o=e.flush)==null?void 0:o.call(e,a),a.close(),yield i})}},t,r)}},sr=(e,t,r)=>{var f,h,g,v,w,b,I;const{role:n,id:a,createdAt:i,attachments:s,status:o,metadata:l}=e,u={id:a!=null?a:t,createdAt:i!=null?i:new Date},c=typeof e.content=="string"?[{type:"text",text:e.content}]:e.content,d=B=>{var _=B,{image:T}=_,D=V(_,["image"]);return T.match(/^data:image\/(png|jpeg|jpg|gif|webp);base64,(.*)$/)?E(m({},D),{image:T}):(console.warn("Invalid image data format detected"),null)};if(n!=="user"&&(s!=null&&s.length))throw new Error("attachments are only supported for user messages");if(n!=="assistant"&&o)throw new Error("status is only supported for assistant messages");if(n!=="assistant"&&(l!=null&&l.steps))throw new Error("metadata.steps is only supported for assistant messages");switch(n){case"assistant":return E(m({},u),{role:n,content:c.map(T=>{var _,j,R,U,S;const D=T.type;switch(D){case"text":case"reasoning":return T.text.trim().length===0?null:T;case"file":case"source":return T;case"image":return d(T);case"data":return T;case"tool-call":{const B=T,{parentId:P,messages:N}=B,H=V(B,["parentId","messages"]),z=m(m(E(m({},H),{toolCallId:(_=T.toolCallId)!=null?_:`tool-${Ct()}`}),P!==void 0&&{parentId:P}),N!==void 0&&{messages:N});return T.args?E(m({},z),{args:T.args,argsText:(j=T.argsText)!=null?j:JSON.stringify(T.args)}):E(m({},z),{args:(U=Or((R=T.argsText)!=null?R:""))!=null?U:{},argsText:(S=T.argsText)!=null?S:""})}default:{const P=D;throw new Error(`Unsupported assistant message part type: ${P}`)}}}).filter(T=>!!T),status:o!=null?o:r,metadata:m({unstable_state:(f=l==null?void 0:l.unstable_state)!=null?f:null,unstable_annotations:(h=l==null?void 0:l.unstable_annotations)!=null?h:[],unstable_data:(g=l==null?void 0:l.unstable_data)!=null?g:[],custom:(v=l==null?void 0:l.custom)!=null?v:{},steps:(w=l==null?void 0:l.steps)!=null?w:[]},(l==null?void 0:l.submittedFeedback)&&{submittedFeedback:l.submittedFeedback})});case"user":return E(m({},u),{role:n,content:c.map(T=>{const D=T.type;switch(D){case"text":case"image":case"audio":case"file":return T;default:{const B=D;throw new Error(`Unsupported user message part type: ${B}`)}}}),attachments:s!=null?s:[],metadata:{custom:(b=l==null?void 0:l.custom)!=null?b:{}}});case"system":if(c.length!==1||c[0].type!=="text")throw new Error("System messages must have exactly one text message part.");return E(m({},u),{role:n,content:c,metadata:{custom:(I=l==null?void 0:l.custom)!=null?I:{}}});default:{const T=n;throw new Error(`Unknown message role: ${T}`)}}},Ln={fromArray:e=>{const t=e.map(r=>sr(r,Ct(),fi(!1,!1,!1,!1,void 0)));return{messages:t.map((r,n)=>({parentId:n>0?t[n-1].id:null,message:r}))}}},Fr=e=>e.next?Fr(e.next):"current"in e?e:null,dc=class{constructor(e){C(this,"_value",null);this.func=e}get value(){return this._value===null&&(this._value=this.func()),this._value}dirty(){this._value=null}},Ti=class{constructor(){C(this,"messages",new Map);C(this,"head",null);C(this,"root",{children:[],next:null});C(this,"_messages",new dc(()=>{var t,r;const e=new Array(((r=(t=this.head)==null?void 0:t.level)!=null?r:-1)+1);for(let n=this.head;n;n=n.prev)e[n.level]=n.current;return e}))}updateLevels(e,t){e.level=t;for(const r of e.children){const n=this.messages.get(r);n&&this.updateLevels(n,t+1)}}performOp(e,t,r){var i;const n=(i=t.prev)!=null?i:this.root,a=e!=null?e:this.root;if(!(r==="relink"&&n===a)){if(r!=="link"&&(n.children=n.children.filter(s=>s!==t.current.id),n.next===t)){const s=n.children.at(-1),o=s?this.messages.get(s):null;if(o===void 0)throw new Error("MessageRepository(performOp/cut): Fallback sibling message not found. This is likely an internal bug in assistant-ui.");n.next=o}if(r!=="cut"){for(let o=e;o;o=o.prev)if(o.current.id===t.current.id)throw new Error("MessageRepository(performOp/link): A message with the same id already exists in the parent tree. This error occurs if the same message id is found multiple times. This is likely an internal bug in assistant-ui.");a.children=[...a.children,t.current.id],(Fr(t)===this.head||a.next===null)&&(a.next=t),t.prev=e;const s=e?e.level+1:0;this.updateLevels(t,s)}}}get headId(){var e,t;return(t=(e=this.head)==null?void 0:e.current.id)!=null?t:null}getMessages(e){var n;if(e===void 0||e===((n=this.head)==null?void 0:n.current.id))return this._messages.value;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(getMessages): Head message not found. This is likely an internal bug in assistant-ui.");const r=new Array(t.level+1);for(let a=t;a;a=a.prev)r[a.level]=a.current;return r}addOrUpdateMessage(e,t){const r=this.messages.get(t.id),n=e?this.messages.get(e):null;if(n===void 0)throw new Error("MessageRepository(addOrUpdateMessage): Parent message not found. This is likely an internal bug in assistant-ui.");if(r){r.current=t,this.performOp(n,r,"relink"),this._messages.dirty();return}const a={prev:n,current:t,next:null,children:[],level:n?n.level+1:0};this.messages.set(t.id,a),this.performOp(n,a,"link"),this.head===n&&(this.head=a),this._messages.dirty()}getMessage(e){var r,n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(updateMessage): Message not found. This is likely an internal bug in assistant-ui.");return{parentId:(n=(r=t.prev)==null?void 0:r.current.id)!=null?n:null,message:t.current,index:t.level}}appendOptimisticMessage(e,t){let r;do r=Ju();while(this.messages.has(r));return this.addOrUpdateMessage(e,sr(t,r,{type:"running"})),r}deleteMessage(e,t){const r=this.messages.get(e);if(!r)throw new Error("MessageRepository(deleteMessage): Message not found. This is likely an internal bug in assistant-ui.");const n=t===void 0?r.prev:t===null?null:this.messages.get(t);if(n===void 0)throw new Error("MessageRepository(deleteMessage): Replacement not found. This is likely an internal bug in assistant-ui.");for(const a of r.children){const i=this.messages.get(a);if(!i)throw new Error("MessageRepository(deleteMessage): Child message not found. This is likely an internal bug in assistant-ui.");this.performOp(n,i,"relink")}this.performOp(null,r,"cut"),this.messages.delete(e),this.head===r&&(this.head=Fr(n!=null?n:this.root)),this._messages.dirty()}getBranches(e){var n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(getBranches): Message not found. This is likely an internal bug in assistant-ui.");const{children:r}=(n=t.prev)!=null?n:this.root;return r}switchToBranch(e){var n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(switchToBranch): Branch not found. This is likely an internal bug in assistant-ui.");const r=(n=t.prev)!=null?n:this.root;r.next=t,this.head=Fr(t),this._messages.dirty()}resetHead(e){if(e===null){this.clear();return}const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(resetHead): Branch not found. This is likely an internal bug in assistant-ui.");if(t.children.length>0){const r=n=>{for(const a of n.children){const i=this.messages.get(a);i&&(r(i),this.messages.delete(a))}};r(t),t.children=[],t.next=null}this.head=t;for(let r=t;r;r=r.prev)r.prev&&(r.prev.next=r);this._messages.dirty()}clear(){this.messages.clear(),this.head=null,this.root={children:[],next:null},this._messages.dirty()}export(){var t,r,n,a;const e=[];for(const[,i]of this.messages)e.push({message:i.current,parentId:(r=(t=i.prev)==null?void 0:t.current.id)!=null?r:null});return{headId:(a=(n=this.head)==null?void 0:n.current.id)!=null?a:null,messages:e}}import({headId:e,messages:t}){var r,n;for(const{message:a,parentId:i}of t)this.addOrUpdateMessage(i,a);this.resetHead((n=e!=null?e:(r=t.at(-1))==null?void 0:r.message.id)!=null?n:null)}},Br=class{constructor(){C(this,"_subscriptions",new Set);C(this,"_connection")}get isConnected(){return!!this._connection}notifySubscribers(){for(const e of this._subscriptions)e()}_updateConnection(){var e;if(this._subscriptions.size>0){if(this._connection)return;this._connection=this._connect()}else(e=this._connection)==null||e.call(this),this._connection=void 0}subscribe(e){return this._subscriptions.add(e),this._updateConnection(),()=>{this._subscriptions.delete(e),this._updateConnection()}}},Ze=Symbol("skip-update"),Dn=class extends Br{constructor(t){super();C(this,"_previousStateDirty",!0);C(this,"_previousState");C(this,"getState",()=>{if(!this.isConnected||this._previousStateDirty){const t=this.binding.getState();t!==Ze&&(this._previousState=t),this._previousStateDirty=!1}if(this._previousState===void 0)throw new Error("Entry not available in the store");return this._previousState});this.binding=t}get path(){return this.binding.path}_connect(){const t=()=>{this._previousStateDirty=!0,this.notifySubscribers()};return this.binding.subscribe(t)}},zr=class{constructor(e,t){this._core=e,this._threadListBinding=t,this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.switchTo=this.switchTo.bind(this),this.rename=this.rename.bind(this),this.archive=this.archive.bind(this),this.unarchive=this.unarchive.bind(this),this.delete=this.delete.bind(this),this.initialize=this.initialize.bind(this),this.generateTitle=this.generateTitle.bind(this),this.subscribe=this.subscribe.bind(this),this.unstable_on=this.unstable_on.bind(this),this.getState=this.getState.bind(this),this.detach=this.detach.bind(this)}getState(){return this._core.getState()}switchTo(){const e=this._core.getState();return this._threadListBinding.switchToThread(e.id)}rename(e){const t=this._core.getState();return this._threadListBinding.rename(t.id,e)}archive(){const e=this._core.getState();return this._threadListBinding.archive(e.id)}unarchive(){const e=this._core.getState();return this._threadListBinding.unarchive(e.id)}delete(){const e=this._core.getState();return this._threadListBinding.delete(e.id)}initialize(){const e=this._core.getState();return this._threadListBinding.initialize(e.id)}generateTitle(){const e=this._core.getState();return this._threadListBinding.generateTitle(e.id)}unstable_on(e,t){let r=this._core.getState().isMain,n=this._core.getState().id;return this.subscribe(()=>{const a=this._core.getState(),i=a.isMain,s=a.id;r===i&&n===s||(r=i,n=s,!(e==="switched-to"&&!i)&&(e==="switched-away"&&i||t()))})}subscribe(e){return this._core.subscribe(e)}detach(){const e=this._core.getState();this._threadListBinding.detach(e.id)}__internal_getRuntime(){return this}};function hc(e,t){if(e===void 0&&t===void 0)return!0;if(e===void 0||t===void 0)return!1;for(const r of Object.keys(e)){const n=e[r],a=t[r];if(!Object.is(n,a))return!1}return!0}var et=class extends Br{constructor(t){super();C(this,"_previousState");C(this,"getState",()=>(this.isConnected||this._syncState(),this._previousState));this.binding=t;const r=t.getState();if(r===Ze)throw new Error("Entry not available in the store");this._previousState=r}get path(){return this.binding.path}_syncState(){const t=this.binding.getState();return t===Ze||hc(t,this._previousState)?!1:(this._previousState=t,!0)}_connect(){const t=()=>{this._syncState()&&this.notifySubscribers()};return this.binding.subscribe(t)}},Rr=Symbol("innerMessage"),jr=e=>e.content.filter(r=>r.type==="text").map(r=>r.text).join(`
|
|
3
|
+
${n.system}`:r.system=n.system),n.tools)for(const[i,s]of Object.entries(n.tools)){const o=(a=r.tools)==null?void 0:a[i];if(o&&o!==s)throw new Error(`You tried to define a tool with the name ${i}, but it already exists.`);r.tools||(r.tools={}),r.tools[i]=s}return n.config&&(r.config=m(m({},r.config),n.config)),n.callSettings&&(r.callSettings=m(m({},r.callSettings),n.callSettings)),r},{}),In=class{constructor(){C(this,"_providers",new Set);C(this,"_subscribers",new Set)}getModelContext(){return qu(this._providers)}registerModelContextProvider(e){var r;this._providers.add(e);const t=(r=e.subscribe)==null?void 0:r.call(e,()=>{this.notifySubscribers()});return this.notifySubscribers(),()=>{this._providers.delete(e),t==null||t(),this.notifySubscribers()}}notifySubscribers(){for(const e of this._subscribers)e()}subscribe(e){return this._subscribers.add(e),()=>this._subscribers.delete(e)}},En=class{constructor(){C(this,"_contextProvider",new In)}registerModelContextProvider(e){return this._contextProvider.registerModelContextProvider(e)}getModelContextProvider(){return this._contextProvider}},ar=class{constructor(){C(this,"_subscribers",new Set)}subscribe(e){return this._subscribers.add(e),()=>this._subscribers.delete(e)}waitForUpdate(){return new Promise(e=>{const t=this.subscribe(()=>{t(),e()})})}_notifySubscribers(){const e=[];for(const t of this._subscribers)try{t()}catch(r){e.push(r)}if(e.length>0)throw e.length===1?e[0]:new AggregateError(e)}},Vu=e=>e.status.type==="complete",ci=class extends ar{constructor(){super(...arguments);C(this,"isEditing",!0);C(this,"_attachments",[]);C(this,"_text","");C(this,"_role","user");C(this,"_runConfig",{});C(this,"_eventSubscribers",new Map)}get attachmentAccept(){var t,r;return(r=(t=this.getAttachmentAdapter())==null?void 0:t.accept)!=null?r:"*"}get attachments(){return this._attachments}setAttachments(t){this._attachments=t,this._notifySubscribers()}get isEmpty(){return!this.text.trim()&&!this.attachments.length}get text(){return this._text}get role(){return this._role}get runConfig(){return this._runConfig}setText(t){this._text!==t&&(this._text=t,this._notifySubscribers())}setRole(t){this._role!==t&&(this._role=t,this._notifySubscribers())}setRunConfig(t){this._runConfig!==t&&(this._runConfig=t,this._notifySubscribers())}_emptyTextAndAttachments(){this._attachments=[],this._text="",this._notifySubscribers()}_onClearAttachments(){return M(this,null,function*(){const t=this.getAttachmentAdapter();t&&(yield Promise.all(this._attachments.map(r=>t.remove(r))))})}reset(){return M(this,null,function*(){if(this._attachments.length===0&&this._text===""&&this._role==="user"&&Object.keys(this._runConfig).length===0)return;this._role="user",this._runConfig={};const t=this._onClearAttachments();this._emptyTextAndAttachments(),yield t})}clearAttachments(){return M(this,null,function*(){const t=this._onClearAttachments();this.setAttachments([]),yield t})}send(){return M(this,null,function*(){const t=this.getAttachmentAdapter(),r=t&&this.attachments.length>0?Promise.all(this.attachments.map(i=>M(this,null,function*(){return Vu(i)?i:yield t.send(i)}))):[],n=this.text;this._emptyTextAndAttachments();const a={createdAt:new Date,role:this.role,content:n?[{type:"text",text:n}]:[],attachments:yield r,runConfig:this.runConfig,metadata:{custom:{}}};this.handleSend(a),this._notifyEventSubscribers("send")})}cancel(){this.handleCancel()}addAttachment(t){return M(this,null,function*(){const r=this.getAttachmentAdapter();if(!r)throw new Error("Attachments are not supported");const n=u=>{const c=this._attachments.findIndex(d=>d.id===u.id);c!==-1?this._attachments=[...this._attachments.slice(0,c),u,...this._attachments.slice(c+1)]:this._attachments=[...this._attachments,u],this._notifySubscribers()},a=r.add({file:t});if(Symbol.asyncIterator in a)try{for(var i=zt(a),s,o,l;s=!(o=yield i.next()).done;s=!1){const u=o.value;n(u)}}catch(o){l=[o]}finally{try{s&&(o=i.return)&&(yield o.call(i))}finally{if(l)throw l[0]}}else n(yield a);this._notifyEventSubscribers("attachment-add"),this._notifySubscribers()})}removeAttachment(t){return M(this,null,function*(){const r=this.getAttachmentAdapter();if(!r)throw new Error("Attachments are not supported");const n=this._attachments.findIndex(i=>i.id===t);if(n===-1)throw new Error("Attachment not found");const a=this._attachments[n];yield r.remove(a),this._attachments=[...this._attachments.slice(0,n),...this._attachments.slice(n+1)],this._notifySubscribers()})}_notifyEventSubscribers(t){const r=this._eventSubscribers.get(t);if(r)for(const n of r)n()}unstable_on(t,r){const n=this._eventSubscribers.get(t);return n?n.add(r):this._eventSubscribers.set(t,new Set([r])),()=>{const a=this._eventSubscribers.get(t);a&&a.delete(r)}}},di=class extends ci{constructor(t){super();C(this,"_canCancel",!1);this.runtime=t,this.connect()}get canCancel(){return this._canCancel}get attachments(){return super.attachments}getAttachmentAdapter(){var t;return(t=this.runtime.adapters)==null?void 0:t.attachments}connect(){return this.runtime.subscribe(()=>{this.canCancel!==this.runtime.capabilities.cancel&&(this._canCancel=this.runtime.capabilities.cancel,this._notifySubscribers())})}handleSend(t){return M(this,null,function*(){var r,n;this.runtime.append(E(m({},t),{parentId:(n=(r=this.runtime.messages.at(-1))==null?void 0:r.id)!=null?n:null,sourceId:null}))})}handleCancel(){return M(this,null,function*(){this.runtime.cancelRun()})}};let hi=(e,t=21)=>(r=t)=>{let n="",a=r|0;for(;a--;)n+=e[Math.random()*e.length|0];return n};var It=hi("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7),Wu="__optimistic__",Ju=()=>`${Wu}${It()}`,ir=Symbol("autoStatus"),Ku=Object.freeze(Object.assign({type:"running"},{[ir]:!0})),Yu=Object.freeze(Object.assign({type:"complete",reason:"unknown"},{[ir]:!0})),Gu=Object.freeze(Object.assign({type:"requires-action",reason:"tool-calls"},{[ir]:!0})),Xu=Object.freeze(Object.assign({type:"requires-action",reason:"interrupt"},{[ir]:!0})),fi=(e,t,r,n,a)=>e&&a?Object.assign({type:"incomplete",reason:"error",error:a},{[ir]:!0}):e&&t?Ku:r?Xu:n?Gu:Yu;function Lr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Et={exports:{}},pi;function Qu(){if(pi)return Et.exports;pi=1;const e=typeof Buffer!="undefined",t=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,r=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function n(o,l,u){u==null&&l!==null&&typeof l=="object"&&(u=l,l=void 0),e&&Buffer.isBuffer(o)&&(o=o.toString()),o&&o.charCodeAt(0)===65279&&(o=o.slice(1));const c=JSON.parse(o,l);if(c===null||typeof c!="object")return c;const d=u&&u.protoAction||"error",f=u&&u.constructorAction||"error";if(d==="ignore"&&f==="ignore")return c;if(d!=="ignore"&&f!=="ignore"){if(t.test(o)===!1&&r.test(o)===!1)return c}else if(d!=="ignore"&&f==="ignore"){if(t.test(o)===!1)return c}else if(r.test(o)===!1)return c;return a(c,{protoAction:d,constructorAction:f,safe:u&&u.safe})}function a(o,{protoAction:l="error",constructorAction:u="error",safe:c}={}){let d=[o];for(;d.length;){const f=d;d=[];for(const h of f){if(l!=="ignore"&&Object.prototype.hasOwnProperty.call(h,"__proto__")){if(c===!0)return null;if(l==="error")throw new SyntaxError("Object contains forbidden prototype property");delete h.__proto__}if(u!=="ignore"&&Object.prototype.hasOwnProperty.call(h,"constructor")&&h.constructor!==null&&typeof h.constructor=="object"&&Object.prototype.hasOwnProperty.call(h.constructor,"prototype")){if(c===!0)return null;if(u==="error")throw new SyntaxError("Object contains forbidden prototype property");delete h.constructor}for(const g in h){const v=h[g];v&&typeof v=="object"&&d.push(v)}}}return o}function i(o,l,u){const{stackTraceLimit:c}=Error;Error.stackTraceLimit=0;try{return n(o,l,u)}finally{Error.stackTraceLimit=c}}function s(o,l){const{stackTraceLimit:u}=Error;Error.stackTraceLimit=0;try{return n(o,l,{safe:!0})}catch(c){return}finally{Error.stackTraceLimit=u}}return Et.exports=i,Et.exports.default=i,Et.exports.parse=i,Et.exports.safeParse=s,Et.exports.scan=a,Et.exports}var Zu=Qu();const An=Lr(Zu);function ec(e){const t=["ROOT"];let r=-1,n=null;const a=[];let i;function s(){i!==void 0&&(a.push(JSON.parse(`"${i}"`)),i=void 0)}function o(d,f,h){switch(d){case'"':{r=f,t.pop(),t.push(h),t.push("INSIDE_STRING"),s();break}case"f":case"t":case"n":{r=f,n=f,t.pop(),t.push(h),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(h),t.push("INSIDE_NUMBER"),s();break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=f,t.pop(),t.push(h),t.push("INSIDE_NUMBER"),s();break}case"{":{r=f,t.pop(),t.push(h),t.push("INSIDE_OBJECT_START"),s();break}case"[":{r=f,t.pop(),t.push(h),t.push("INSIDE_ARRAY_START"),s();break}}}function l(d,f){switch(d){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=f,t.pop(),i=a.pop();break}}}function u(d,f){switch(d){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA"),i=(Number(i)+1).toString();break}case"]":{r=f,t.pop(),i=a.pop();break}}}for(let d=0;d<e.length;d++){const f=e[d];switch(t[t.length-1]){case"ROOT":o(f,d,"FINISH");break;case"INSIDE_OBJECT_START":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY"),i="";break}case"}":{r=d,t.pop(),i=a.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY"),i="";break}}break}case"INSIDE_OBJECT_KEY":{switch(f){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}case"\\":{t.push("INSIDE_STRING_ESCAPE"),i+=f;break}default:{i+=f;break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(f){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{o(f,d,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{l(f,d);break}case"INSIDE_STRING":{switch(f){case'"':{t.pop(),r=d,i=a.pop();break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=d}break}case"INSIDE_ARRAY_START":{switch(f){case"]":{r=d,t.pop(),i=a.pop();break}default:{r=d,i="0",o(f,d,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(f){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA"),i=(Number(i)+1).toString();break}case"]":{r=d,t.pop(),i=a.pop();break}default:{r=d;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{o(f,d,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),t[t.length-1]==="INSIDE_STRING"?r=d:t[t.length-1]==="INSIDE_OBJECT_KEY"&&(i+=f);break}case"INSIDE_NUMBER":{switch(f){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=d;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&l(f,d);break}case"}":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&l(f,d);break}case"]":{t.pop(),i=a.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d);break}default:{t.pop(),i=a.pop();break}}break}case"INSIDE_LITERAL":{const g=e.substring(n,d+1);!"false".startsWith(g)&&!"true".startsWith(g)&&!"null".startsWith(g)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?l(f,d):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&u(f,d)):r=d;break}}}let c=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{c+='"';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":{c+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{c+="]";break}case"INSIDE_LITERAL":{const h=e.substring(n,e.length);"true".startsWith(h)?c+="true".slice(h.length):"false".startsWith(h)?c+="false".slice(h.length):"null".startsWith(h)&&(c+="null".slice(h.length))}}return[c,a]}var Dr=Symbol("aui.parse-partial-json-object.meta"),tc=e=>e==null?void 0:e[Dr],Or=e=>{if(e.length===0)return{[Dr]:{state:"partial",partialPath:[]}};try{const t=An.parse(e);if(typeof t!="object"||t===null)throw new Error("argsText is expected to be an object");return t[Dr]={state:"complete",partialPath:[]},t}catch(t){try{const[r,n]=ec(e),a=An.parse(r);if(typeof a!="object"||a===null)throw new Error("argsText is expected to be an object");return a[Dr]={state:"partial",partialPath:n},a}catch(r){return}}},mi=(e,t,r)=>{if(typeof e!="object"||e===null)return t.state;if(t.state==="complete")return"complete";if(r.length===0)return t.state;const[n,...a]=r;if(!Object.prototype.hasOwnProperty.call(e,n))return"partial";const[i,...s]=t.partialPath;if(n!==i)return"complete";const o=e[n];return mi(o,{state:"partial",partialPath:s},a)},Rt=(e,t)=>{const r=tc(e);if(!r)throw new Error("unable to determine object state");return mi(e,r,t.map(String))};function rc(){return Nr(this,null,function*(){const e=this.getReader();try{for(;;){const{done:t,value:r}=yield new Le(e.read());if(t)break;yield r}}finally{e.releaseLock()}})}function Mn(e){var t,r;return(r=e[t=Symbol.asyncIterator])!=null||(e[t]=rc),e}var Pn={toResponse(e,t){var r;return new Response(Pn.toByteStream(e,t),{headers:(r=t.headers)!=null?r:{}})},fromResponse(e,t){return Pn.fromByteStream(e.body,t)},toByteStream(e,t){return e.pipeThrough(t)},fromByteStream(e,t){return e.pipeThrough(t)}},Nn=function(){let e,t;const r=new Promise((n,a)=>{e=n,t=a});if(!e||!t)throw new Error("Failed to create promise");return{promise:r,resolve:e,reject:t}},nc=()=>{const e=[];let t=!1,r,n;const a=s=>{s.promise||(s.promise=s.reader.read().then(({done:o,value:l})=>{s.promise=void 0,o?(e.splice(e.indexOf(s),1),t&&e.length===0&&r.close()):r.enqueue(l),n==null||n.resolve(),n=void 0}).catch(o=>{console.error(o),e.forEach(l=>{l.reader.cancel()}),e.length=0,r.error(o),n==null||n.reject(o),n=void 0}))};return{readable:new ReadableStream({start(s){r=s},pull(){return n=Nn(),e.forEach(s=>{a(s)}),n.promise},cancel(){e.forEach(s=>{s.reader.cancel()}),e.length=0}}),isSealed(){return t},seal(){t=!0,e.length===0&&r.close()},addStream(s){if(t)throw new Error("Cannot add streams after the run callback has settled.");const o={reader:s.getReader()};e.push(o),a(o)},enqueue(s){this.addStream(new ReadableStream({start(o){o.enqueue(s),o.close()}}))}}},gi=class{constructor(e){C(this,"_controller");C(this,"_isClosed",!1);this._controller=e}append(e){return this._controller.enqueue({type:"text-delta",path:[],textDelta:e}),this}close(){this._isClosed||(this._isClosed=!0,this._controller.enqueue({type:"part-finish",path:[]}),this._controller.close())}},yi=e=>new ReadableStream({start(t){var r;return(r=e.start)==null?void 0:r.call(e,new gi(t))},pull(t){var r;return(r=e.pull)==null?void 0:r.call(e,new gi(t))},cancel(t){var r;return(r=e.cancel)==null?void 0:r.call(e,t)}}),bi=()=>{let e;return[yi({start(r){e=r}}),e]},wi=class{constructor(e){C(this,"_isClosed",!1);C(this,"_mergeTask");C(this,"_argsTextController");this._controller=e;const t=yi({start:n=>{this._argsTextController=n}});let r=!1;this._mergeTask=t.pipeTo(new WritableStream({write:n=>{switch(n.type){case"text-delta":r=!0,this._controller.enqueue(n);break;case"part-finish":r||this._controller.enqueue({type:"text-delta",textDelta:"{}",path:[]}),this._controller.enqueue({type:"tool-call-args-text-finish",path:[]});break;default:throw new Error(`Unexpected chunk type: ${n.type}`)}}}))}get argsText(){return this._argsTextController}setResponse(e){return M(this,null,function*(){var t;this._argsTextController.close(),yield Promise.resolve(),this._controller.enqueue(E(m({type:"result",path:[]},e.artifact!==void 0?{artifact:e.artifact}:{}),{result:e.result,isError:(t=e.isError)!=null?t:!1}))})}close(){return M(this,null,function*(){this._isClosed||(this._isClosed=!0,this._argsTextController.close(),yield this._mergeTask,this._controller.enqueue({type:"part-finish",path:[]}),this._controller.close())})}},ac=e=>new ReadableStream({start(t){var r;return(r=e.start)==null?void 0:r.call(e,new wi(t))},pull(t){var r;return(r=e.pull)==null?void 0:r.call(e,new wi(t))},cancel(t){var r;return(r=e.cancel)==null?void 0:r.call(e,t)}}),ic=()=>{let e;return[ac({start(r){e=r}}),e]},xi=class{constructor(){C(this,"value",-1)}up(){return++this.value}},sc=class extends TransformStream{constructor(e){super({transform(t,r){r.enqueue(E(m({},t),{path:[e,...t.path]}))}})}};(class extends TransformStream{constructor(e){super({transform(t,r){const{path:[n,...a]}=t;if(e!==n)throw new Error(`Path mismatch: expected ${e}, got ${n}`);r.enqueue(E(m({},t),{path:a}))}})}});var oc=class extends TransformStream{constructor(e){const t=new xi,r=new Map;super({transform(n,a){n.type==="part-start"&&n.path.length===0&&r.set(t.up(),e.up());const[i,...s]=n.path;if(i===void 0){a.enqueue(n);return}const o=r.get(i);if(o===void 0)throw new Error("Path not found");a.enqueue(E(m({},n),{path:[o,...s]}))}})}},vi=class extends TransformStream{constructor(e){super();const t=e(super.readable);Object.defineProperty(this,"readable",{value:t,writable:!1})}},ki=class extends TransformStream{constructor(){const e=[];super({transform(t,r){if(t.type==="part-start"){if(t.path.length!==0){r.error(new Error("Nested parts are not supported"));return}e.push(t.part),r.enqueue(t);return}if(t.type==="text-delta"||t.type==="result"||t.type==="part-finish"||t.type==="tool-call-args-text-finish"){if(t.path.length!==1){r.error(new Error(`${t.type} chunks must have a path of length 1`));return}const n=t.path[0];if(n<0||n>=e.length){r.error(new Error(`Invalid path index: ${n}`));return}const a=e[n];r.enqueue(E(m({},t),{meta:a}));return}r.enqueue(t)}})}},Si=hi("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",7),lc=class Nu{constructor(t){C(this,"_state");C(this,"_parentId");this._state=t||{merger:nc(),contentCounter:new xi}}get __internal_isClosed(){return this._state.merger.isSealed()}__internal_getReadable(){return this._state.merger.readable}__internal_subscribeToClose(t){this._state.closeSubscriber=t}_addPart(t,r){this._state.append&&(this._state.append.controller.close(),this._state.append=void 0),this.enqueue({type:"part-start",part:t,path:[]}),this._state.merger.addStream(r.pipeThrough(new sc(this._state.contentCounter.value)))}merge(t){this._state.merger.addStream(t.pipeThrough(new oc(this._state.contentCounter)))}appendText(t){var r;((r=this._state.append)==null?void 0:r.kind)!=="text"&&(this._state.append={kind:"text",controller:this.addTextPart()}),this._state.append.controller.append(t)}appendReasoning(t){var r;((r=this._state.append)==null?void 0:r.kind)!=="reasoning"&&(this._state.append={kind:"reasoning",controller:this.addReasoningPart()}),this._state.append.controller.append(t)}addTextPart(){const[t,r]=bi();return this._addPart({type:"text"},t),r}addReasoningPart(){const[t,r]=bi();return this._addPart({type:"reasoning"},t),r}addToolCallPart(t){var o;const r=typeof t=="string"?{toolName:t}:t,n=r.toolName,a=(o=r.toolCallId)!=null?o:Si(),[i,s]=ic();return this._addPart(m({type:"tool-call",toolName:n,toolCallId:a},this._parentId&&{parentId:this._parentId}),i),r.argsText!==void 0&&(s.argsText.append(r.argsText),s.argsText.close()),r.args!==void 0&&(s.argsText.append(JSON.stringify(r.args)),s.argsText.close()),r.response!==void 0&&s.setResponse(r.response),s}appendSource(t){this._addPart(m(m({},t),this._parentId&&{parentId:this._parentId}),new ReadableStream({start(r){r.enqueue({type:"part-finish",path:[]}),r.close()}}))}appendFile(t){this._addPart(t,new ReadableStream({start(r){r.enqueue({type:"part-finish",path:[]}),r.close()}}))}enqueue(t){this._state.merger.enqueue(t),t.type==="part-start"&&t.path.length===0&&this._state.contentCounter.up()}withParentId(t){const r=new Nu(this._state);return r._parentId=t,r}close(){var t,r,n,a;(r=(t=this._state.append)==null?void 0:t.controller)==null||r.close(),this._state.merger.seal(),(a=(n=this._state).closeSubscriber)==null||a.call(n)}};function uc(e){const t=new lc;return M(null,null,function*(){try{yield e(t)}catch(n){throw t.__internal_isClosed||t.enqueue({type:"error",path:[],error:String(n)}),n}finally{t.__internal_isClosed||t.close()}}),t.__internal_getReadable()}function _i(){const{resolve:e,promise:t}=Nn();let r;return[uc(a=>(r=a,r.__internal_subscribeToClose(e),t)),r]}var cc=class extends TransformStream{constructor(e,t,r){const[n,a]=_i();let i;super({start(o){var l;return i=n.pipeTo(new WritableStream({write(u){o.enqueue(u)},abort(u){o.error(u)},close(){o.terminate()}})).catch(u=>{o.error(u)}),(l=e.start)==null?void 0:l.call(e,a)},transform(o){var l;return(l=e.transform)==null?void 0:l.call(e,o,a)},flush(){return M(this,null,function*(){var o;yield(o=e.flush)==null?void 0:o.call(e,a),a.close(),yield i})}},t,r)}},sr=(e,t,r)=>{var f,h,g,v,w,b,I;const{role:n,id:a,createdAt:i,attachments:s,status:o,metadata:l}=e,u={id:a!=null?a:t,createdAt:i!=null?i:new Date},c=typeof e.content=="string"?[{type:"text",text:e.content}]:e.content,d=B=>{var _=B,{image:T}=_,D=V(_,["image"]);return T.match(/^data:image\/(png|jpeg|jpg|gif|webp);base64,(.*)$/)?E(m({},D),{image:T}):(console.warn("Invalid image data format detected"),null)};if(n!=="user"&&(s!=null&&s.length))throw new Error("attachments are only supported for user messages");if(n!=="assistant"&&o)throw new Error("status is only supported for assistant messages");if(n!=="assistant"&&(l!=null&&l.steps))throw new Error("metadata.steps is only supported for assistant messages");switch(n){case"assistant":return E(m({},u),{role:n,content:c.map(T=>{var _,j,R,U,S;const D=T.type;switch(D){case"text":case"reasoning":return T.text.trim().length===0?null:T;case"file":case"source":return T;case"image":return d(T);case"data":return T;case"tool-call":{const B=T,{parentId:P,messages:N}=B,H=V(B,["parentId","messages"]),z=m(m(E(m({},H),{toolCallId:(_=T.toolCallId)!=null?_:`tool-${It()}`}),P!==void 0&&{parentId:P}),N!==void 0&&{messages:N});return T.args?E(m({},z),{args:T.args,argsText:(j=T.argsText)!=null?j:JSON.stringify(T.args)}):E(m({},z),{args:(U=Or((R=T.argsText)!=null?R:""))!=null?U:{},argsText:(S=T.argsText)!=null?S:""})}default:{const P=D;throw new Error(`Unsupported assistant message part type: ${P}`)}}}).filter(T=>!!T),status:o!=null?o:r,metadata:m({unstable_state:(f=l==null?void 0:l.unstable_state)!=null?f:null,unstable_annotations:(h=l==null?void 0:l.unstable_annotations)!=null?h:[],unstable_data:(g=l==null?void 0:l.unstable_data)!=null?g:[],custom:(v=l==null?void 0:l.custom)!=null?v:{},steps:(w=l==null?void 0:l.steps)!=null?w:[]},(l==null?void 0:l.submittedFeedback)&&{submittedFeedback:l.submittedFeedback})});case"user":return E(m({},u),{role:n,content:c.map(T=>{const D=T.type;switch(D){case"text":case"image":case"audio":case"file":return T;default:{const B=D;throw new Error(`Unsupported user message part type: ${B}`)}}}),attachments:s!=null?s:[],metadata:{custom:(b=l==null?void 0:l.custom)!=null?b:{}}});case"system":if(c.length!==1||c[0].type!=="text")throw new Error("System messages must have exactly one text message part.");return E(m({},u),{role:n,content:c,metadata:{custom:(I=l==null?void 0:l.custom)!=null?I:{}}});default:{const T=n;throw new Error(`Unknown message role: ${T}`)}}},Ln={fromArray:e=>{const t=e.map(r=>sr(r,It(),fi(!1,!1,!1,!1,void 0)));return{messages:t.map((r,n)=>({parentId:n>0?t[n-1].id:null,message:r}))}}},Fr=e=>e.next?Fr(e.next):"current"in e?e:null,dc=class{constructor(e){C(this,"_value",null);this.func=e}get value(){return this._value===null&&(this._value=this.func()),this._value}dirty(){this._value=null}},Ti=class{constructor(){C(this,"messages",new Map);C(this,"head",null);C(this,"root",{children:[],next:null});C(this,"_messages",new dc(()=>{var t,r;const e=new Array(((r=(t=this.head)==null?void 0:t.level)!=null?r:-1)+1);for(let n=this.head;n;n=n.prev)e[n.level]=n.current;return e}))}updateLevels(e,t){e.level=t;for(const r of e.children){const n=this.messages.get(r);n&&this.updateLevels(n,t+1)}}performOp(e,t,r){var i;const n=(i=t.prev)!=null?i:this.root,a=e!=null?e:this.root;if(!(r==="relink"&&n===a)){if(r!=="link"&&(n.children=n.children.filter(s=>s!==t.current.id),n.next===t)){const s=n.children.at(-1),o=s?this.messages.get(s):null;if(o===void 0)throw new Error("MessageRepository(performOp/cut): Fallback sibling message not found. This is likely an internal bug in assistant-ui.");n.next=o}if(r!=="cut"){for(let o=e;o;o=o.prev)if(o.current.id===t.current.id)throw new Error("MessageRepository(performOp/link): A message with the same id already exists in the parent tree. This error occurs if the same message id is found multiple times. This is likely an internal bug in assistant-ui.");a.children=[...a.children,t.current.id],(Fr(t)===this.head||a.next===null)&&(a.next=t),t.prev=e;const s=e?e.level+1:0;this.updateLevels(t,s)}}}get headId(){var e,t;return(t=(e=this.head)==null?void 0:e.current.id)!=null?t:null}getMessages(e){var n;if(e===void 0||e===((n=this.head)==null?void 0:n.current.id))return this._messages.value;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(getMessages): Head message not found. This is likely an internal bug in assistant-ui.");const r=new Array(t.level+1);for(let a=t;a;a=a.prev)r[a.level]=a.current;return r}addOrUpdateMessage(e,t){const r=this.messages.get(t.id),n=e?this.messages.get(e):null;if(n===void 0)throw new Error("MessageRepository(addOrUpdateMessage): Parent message not found. This is likely an internal bug in assistant-ui.");if(r){r.current=t,this.performOp(n,r,"relink"),this._messages.dirty();return}const a={prev:n,current:t,next:null,children:[],level:n?n.level+1:0};this.messages.set(t.id,a),this.performOp(n,a,"link"),this.head===n&&(this.head=a),this._messages.dirty()}getMessage(e){var r,n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(updateMessage): Message not found. This is likely an internal bug in assistant-ui.");return{parentId:(n=(r=t.prev)==null?void 0:r.current.id)!=null?n:null,message:t.current,index:t.level}}appendOptimisticMessage(e,t){let r;do r=Ju();while(this.messages.has(r));return this.addOrUpdateMessage(e,sr(t,r,{type:"running"})),r}deleteMessage(e,t){const r=this.messages.get(e);if(!r)throw new Error("MessageRepository(deleteMessage): Message not found. This is likely an internal bug in assistant-ui.");const n=t===void 0?r.prev:t===null?null:this.messages.get(t);if(n===void 0)throw new Error("MessageRepository(deleteMessage): Replacement not found. This is likely an internal bug in assistant-ui.");for(const a of r.children){const i=this.messages.get(a);if(!i)throw new Error("MessageRepository(deleteMessage): Child message not found. This is likely an internal bug in assistant-ui.");this.performOp(n,i,"relink")}this.performOp(null,r,"cut"),this.messages.delete(e),this.head===r&&(this.head=Fr(n!=null?n:this.root)),this._messages.dirty()}getBranches(e){var n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(getBranches): Message not found. This is likely an internal bug in assistant-ui.");const{children:r}=(n=t.prev)!=null?n:this.root;return r}switchToBranch(e){var n;const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(switchToBranch): Branch not found. This is likely an internal bug in assistant-ui.");const r=(n=t.prev)!=null?n:this.root;r.next=t,this.head=Fr(t),this._messages.dirty()}resetHead(e){if(e===null){this.clear();return}const t=this.messages.get(e);if(!t)throw new Error("MessageRepository(resetHead): Branch not found. This is likely an internal bug in assistant-ui.");if(t.children.length>0){const r=n=>{for(const a of n.children){const i=this.messages.get(a);i&&(r(i),this.messages.delete(a))}};r(t),t.children=[],t.next=null}this.head=t;for(let r=t;r;r=r.prev)r.prev&&(r.prev.next=r);this._messages.dirty()}clear(){this.messages.clear(),this.head=null,this.root={children:[],next:null},this._messages.dirty()}export(){var t,r,n,a;const e=[];for(const[,i]of this.messages)e.push({message:i.current,parentId:(r=(t=i.prev)==null?void 0:t.current.id)!=null?r:null});return{headId:(a=(n=this.head)==null?void 0:n.current.id)!=null?a:null,messages:e}}import({headId:e,messages:t}){var r,n;for(const{message:a,parentId:i}of t)this.addOrUpdateMessage(i,a);this.resetHead((n=e!=null?e:(r=t.at(-1))==null?void 0:r.message.id)!=null?n:null)}},Br=class{constructor(){C(this,"_subscriptions",new Set);C(this,"_connection")}get isConnected(){return!!this._connection}notifySubscribers(){for(const e of this._subscriptions)e()}_updateConnection(){var e;if(this._subscriptions.size>0){if(this._connection)return;this._connection=this._connect()}else(e=this._connection)==null||e.call(this),this._connection=void 0}subscribe(e){return this._subscriptions.add(e),this._updateConnection(),()=>{this._subscriptions.delete(e),this._updateConnection()}}},Ze=Symbol("skip-update"),Dn=class extends Br{constructor(t){super();C(this,"_previousStateDirty",!0);C(this,"_previousState");C(this,"getState",()=>{if(!this.isConnected||this._previousStateDirty){const t=this.binding.getState();t!==Ze&&(this._previousState=t),this._previousStateDirty=!1}if(this._previousState===void 0)throw new Error("Entry not available in the store");return this._previousState});this.binding=t}get path(){return this.binding.path}_connect(){const t=()=>{this._previousStateDirty=!0,this.notifySubscribers()};return this.binding.subscribe(t)}},zr=class{constructor(e,t){this._core=e,this._threadListBinding=t,this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.switchTo=this.switchTo.bind(this),this.rename=this.rename.bind(this),this.archive=this.archive.bind(this),this.unarchive=this.unarchive.bind(this),this.delete=this.delete.bind(this),this.initialize=this.initialize.bind(this),this.generateTitle=this.generateTitle.bind(this),this.subscribe=this.subscribe.bind(this),this.unstable_on=this.unstable_on.bind(this),this.getState=this.getState.bind(this),this.detach=this.detach.bind(this)}getState(){return this._core.getState()}switchTo(){const e=this._core.getState();return this._threadListBinding.switchToThread(e.id)}rename(e){const t=this._core.getState();return this._threadListBinding.rename(t.id,e)}archive(){const e=this._core.getState();return this._threadListBinding.archive(e.id)}unarchive(){const e=this._core.getState();return this._threadListBinding.unarchive(e.id)}delete(){const e=this._core.getState();return this._threadListBinding.delete(e.id)}initialize(){const e=this._core.getState();return this._threadListBinding.initialize(e.id)}generateTitle(){const e=this._core.getState();return this._threadListBinding.generateTitle(e.id)}unstable_on(e,t){let r=this._core.getState().isMain,n=this._core.getState().id;return this.subscribe(()=>{const a=this._core.getState(),i=a.isMain,s=a.id;r===i&&n===s||(r=i,n=s,!(e==="switched-to"&&!i)&&(e==="switched-away"&&i||t()))})}subscribe(e){return this._core.subscribe(e)}detach(){const e=this._core.getState();this._threadListBinding.detach(e.id)}__internal_getRuntime(){return this}};function hc(e,t){if(e===void 0&&t===void 0)return!0;if(e===void 0||t===void 0)return!1;for(const r of Object.keys(e)){const n=e[r],a=t[r];if(!Object.is(n,a))return!1}return!0}var et=class extends Br{constructor(t){super();C(this,"_previousState");C(this,"getState",()=>(this.isConnected||this._syncState(),this._previousState));this.binding=t;const r=t.getState();if(r===Ze)throw new Error("Entry not available in the store");this._previousState=r}get path(){return this.binding.path}_syncState(){const t=this.binding.getState();return t===Ze||hc(t,this._previousState)?!1:(this._previousState=t,!0)}_connect(){const t=()=>{this._syncState()&&this.notifySubscribers()};return this.binding.subscribe(t)}},Rr=Symbol("innerMessage"),jr=e=>e.content.filter(r=>r.type==="text").map(r=>r.text).join(`
|
|
4
4
|
|
|
5
|
-
`),Ci=class{constructor(e){this._core=e,this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.getState=this.getState.bind(this),this.remove=this.remove.bind(this),this.subscribe=this.subscribe.bind(this)}getState(){return this._core.getState()}subscribe(e){return this._core.subscribe(e)}},Ii=class extends Ci{constructor(e,t){super(e),this._composerApi=t}remove(){const e=this._composerApi.getState();if(!e)throw new Error("Composer is not available");return e.removeAttachment(this.getState().id)}},fc=class extends Ii{get source(){return"thread-composer"}},pc=class extends Ii{get source(){return"edit-composer"}},mc=class extends Ci{get source(){return"message"}constructor(e){super(e)}remove(){throw new Error("Message attachments cannot be removed")}},Ei=class extends Br{constructor(e){super(),this.config=e}getState(){return this.config.binding.getState()}outerSubscribe(e){return this.config.binding.subscribe(e)}_connect(){const e=()=>{this.notifySubscribers()};let t=this.config.binding.getState(),r=t==null?void 0:t.unstable_on(this.config.event,e);const n=()=>{var s;const i=this.config.binding.getState();i!==t&&(t=i,r==null||r(),r=(s=this.config.binding.getState())==null?void 0:s.unstable_on(this.config.event,e))},a=this.outerSubscribe(n);return()=>{a==null||a(),r==null||r()}}},Ai=Object.freeze([]),Mi=Object.freeze({}),gc=e=>{var t,r,n,a,i,s,o,l,u;return Object.freeze({type:"thread",isEditing:(t=e==null?void 0:e.isEditing)!=null?t:!1,canCancel:(r=e==null?void 0:e.canCancel)!=null?r:!1,isEmpty:(n=e==null?void 0:e.isEmpty)!=null?n:!0,attachments:(a=e==null?void 0:e.attachments)!=null?a:Ai,text:(i=e==null?void 0:e.text)!=null?i:"",role:(s=e==null?void 0:e.role)!=null?s:"user",runConfig:(o=e==null?void 0:e.runConfig)!=null?o:Mi,attachmentAccept:(l=e==null?void 0:e.attachmentAccept)!=null?l:"",value:(u=e==null?void 0:e.text)!=null?u:""})},yc=e=>{var t,r,n,a,i,s,o,l,u;return Object.freeze({type:"edit",isEditing:(t=e==null?void 0:e.isEditing)!=null?t:!1,canCancel:(r=e==null?void 0:e.canCancel)!=null?r:!1,isEmpty:(n=e==null?void 0:e.isEmpty)!=null?n:!0,text:(a=e==null?void 0:e.text)!=null?a:"",role:(i=e==null?void 0:e.role)!=null?i:"user",attachments:(s=e==null?void 0:e.attachments)!=null?s:Ai,runConfig:(o=e==null?void 0:e.runConfig)!=null?o:Mi,attachmentAccept:(l=e==null?void 0:e.attachmentAccept)!=null?l:"",value:(u=e==null?void 0:e.text)!=null?u:""})},Pi=class{constructor(e){C(this,"_eventSubscriptionSubjects",new Map);this._core=e}get path(){return this._core.path}__internal_bindMethods(){this.setText=this.setText.bind(this),this.setRunConfig=this.setRunConfig.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.addAttachment=this.addAttachment.bind(this),this.reset=this.reset.bind(this),this.clearAttachments=this.clearAttachments.bind(this),this.send=this.send.bind(this),this.cancel=this.cancel.bind(this),this.setRole=this.setRole.bind(this),this.getAttachmentByIndex=this.getAttachmentByIndex.bind(this),this.unstable_on=this.unstable_on.bind(this)}setText(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setText(e)}setRunConfig(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setRunConfig(e)}addAttachment(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");return t.addAttachment(e)}reset(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");return e.reset()}clearAttachments(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");return e.clearAttachments()}send(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");e.send()}cancel(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");e.cancel()}setRole(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setRole(e)}subscribe(e){return this._core.subscribe(e)}unstable_on(e,t){let r=this._eventSubscriptionSubjects.get(e);return r||(r=new Ei({event:e,binding:this._core}),this._eventSubscriptionSubjects.set(e,r)),r.subscribe(t)}},bc=class extends Pi{constructor(t){const r=new Dn({path:t.path,getState:()=>gc(t.getState()),subscribe:n=>t.subscribe(n)});super({path:t.path,getState:()=>t.getState(),subscribe:n=>r.subscribe(n)});C(this,"_getState");this._getState=r.getState.bind(r),this.__internal_bindMethods()}get path(){return this._core.path}get type(){return"thread"}getState(){return this._getState()}getAttachmentByIndex(t){return new fc(new et({path:E(m({},this.path),{attachmentSource:"thread-composer",attachmentSelector:{type:"index",index:t},ref:`${this.path.ref}${this.path.ref}.attachments[${t}]`}),getState:()=>{const n=this.getState().attachments[t];return n?E(m({},n),{source:"thread-composer"}):Ze},subscribe:r=>this._core.subscribe(r)}),this._core)}},wc=class extends Pi{constructor(t,r){const n=new Dn({path:t.path,getState:()=>yc(t.getState()),subscribe:a=>t.subscribe(a)});super({path:t.path,getState:()=>t.getState(),subscribe:a=>n.subscribe(a)});C(this,"_getState");this._beginEdit=r,this._getState=n.getState.bind(n),this.__internal_bindMethods()}get path(){return this._core.path}get type(){return"edit"}__internal_bindMethods(){super.__internal_bindMethods(),this.beginEdit=this.beginEdit.bind(this)}getState(){return this._getState()}beginEdit(){this._beginEdit()}getAttachmentByIndex(t){return new pc(new et({path:E(m({},this.path),{attachmentSource:"edit-composer",attachmentSelector:{type:"index",index:t},ref:`${this.path.ref}${this.path.ref}.attachments[${t}]`}),getState:()=>{const n=this.getState().attachments[t];return n?E(m({},n),{source:"edit-composer"}):Ze},subscribe:r=>this._core.subscribe(r)}),this._core)}},xc=class kn{constructor(t=null){C(this,"_state");this._state=t}get state(){return this._state}append(t){this._state=t.reduce((r,n)=>kn.apply(r,n),this._state)}static apply(t,r){const n=r.type;switch(n){case"set":return kn.updatePath(t,r.path,()=>r.value);case"append-text":return kn.updatePath(t,r.path,a=>{if(typeof a!="string")throw new Error(`Expected string at path [${r.path.join(", ")}]`);return a+r.value});default:{const a=n;throw new Error(`Invalid operation type: ${a}`)}}}static updatePath(t,r,n){if(r.length===0)return n(t);if(t!=null||(t={}),typeof t!="object")throw new Error(`Invalid path: [${r.join(", ")}]`);const[a,...i]=r;if(Array.isArray(t)){const o=Number(a);if(Number.isNaN(o))throw new Error(`Expected array index at [${r.join(", ")}]`);if(o>t.length||o<0)throw new Error("Insert array index out of bounds");const l=[...t];return l[o]=this.updatePath(l[o],i,n),l}const s=m({},t);return s[a]=this.updatePath(s[a],i,n),s}},vc=({unstable_state:e=null}={})=>({role:"assistant",status:{type:"running"},parts:[],get content(){return this.parts},metadata:{unstable_state:e,unstable_data:[],unstable_annotations:[],steps:[],custom:{}}}),$r=(e,t,r)=>{if(e.parts.length===0)throw new Error("No parts available to update.");if(t.path.length!==1)throw new Error("Nested paths are not supported yet.");const n=t.path[0],a=r(e.parts[n]);return E(m({},e),{parts:[...e.parts.slice(0,n),a,...e.parts.slice(n+1)],get content(){return this.parts}})},kc=(e,t)=>{const r=t.part;if(r.type==="text"||r.type==="reasoning"){const n=m({type:r.type,text:"",status:{type:"running"}},r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="tool-call"){const n=m({type:"tool-call",state:"partial-call",status:{type:"running",isArgsComplete:!1},toolCallId:r.toolCallId,toolName:r.toolName,argsText:"",args:{}},r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="source"){const n=m(m({type:"source",sourceType:r.sourceType,id:r.id,url:r.url},r.title?{title:r.title}:void 0),r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="file"){const n={type:"file",mimeType:r.mimeType,data:r.data};return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else throw new Error(`Unsupported part type: ${r.type}`)},Sc=(e,t)=>$r(e,t,r=>{if(r.type!=="tool-call")throw new Error("Last is not a tool call");return r.state!=="partial-call"?r:E(m({},r),{state:"call"})}),_c=(e,t)=>$r(e,t,r=>E(m({},r),{status:{type:"complete",reason:"unknown"}})),Tc=(e,t)=>$r(e,t,r=>{var n;if(r.type==="text"||r.type==="reasoning")return E(m({},r),{text:r.text+t.textDelta});if(r.type==="tool-call"){const a=r.argsText+t.textDelta,i=(n=Or(a))!=null?n:r.args;return E(m({},r),{argsText:a,args:i})}else throw new Error("text-delta received but part is neither text nor tool-call")}),Cc=(e,t)=>$r(e,t,r=>{var n;if(r.type==="tool-call")return E(m(E(m({},r),{state:"result"}),t.artifact!==void 0?{artifact:t.artifact}:{}),{result:t.result,isError:(n=t.isError)!=null?n:!1,status:{type:"complete",reason:"stop"}});throw new Error("Result chunk received but part is not a tool-call")}),Ni=(e,t)=>{var n,a;if(((n=e.status)==null?void 0:n.type)==="incomplete"&&((a=e.status)==null?void 0:a.reason)==="error")return e;const r=Ic(t);return E(m({},e),{status:r})},Ic=e=>e.finishReason==="tool-calls"?{type:"requires-action",reason:"tool-calls"}:e.finishReason==="stop"||e.finishReason==="unknown"?{type:"complete",reason:e.finishReason}:{type:"incomplete",reason:e.finishReason},Ec=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{unstable_annotations:[...e.metadata.unstable_annotations,...t.annotations]})}),Ac=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{unstable_data:[...e.metadata.unstable_data,...t.data]})}),Mc=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{steps:[...e.metadata.steps,{state:"started",messageId:t.messageId}]})}),Pc=(e,t)=>{var a;const r=e.metadata.steps.slice(),n=r.length-1;return r.length>0&&((a=r[n])==null?void 0:a.state)==="started"?r[n]=E(m({},r[n]),{state:"finished",finishReason:t.finishReason,usage:t.usage,isContinued:t.isContinued}):r.push({state:"finished",messageId:Si(),finishReason:t.finishReason,usage:t.usage,isContinued:t.isContinued}),E(m({},e),{metadata:E(m({},e.metadata),{steps:r})})},Nc=(e,t)=>E(m({},e),{status:{type:"incomplete",reason:"error",error:t.error}}),Lc=(e,t)=>{const r=new xc(e.metadata.unstable_state);return r.append(t.operations),E(m({},e),{metadata:E(m({},e.metadata),{unstable_state:r.state})})},Dc=e=>{let t=!1;return()=>{t||(t=!0,queueMicrotask(()=>{t=!1,e()}))}},Oc=class extends TransformStream{constructor({initialMessage:e,throttle:t,onError:r}={}){let n=e!=null?e:vc(),a;const i=t?Dc(()=>{a==null||a.enqueue(n)}):()=>{a==null||a.enqueue(n)};super({start(s){a=s},transform(s){const o=s.type;switch(o){case"part-start":n=kc(n,s);break;case"tool-call-args-text-finish":n=Sc(n,s);break;case"part-finish":n=_c(n,s);break;case"text-delta":n=Tc(n,s);break;case"result":n=Cc(n,s);break;case"message-finish":n=Ni(n,s);break;case"annotations":n=Ec(n,s);break;case"data":n=Ac(n,s);break;case"step-start":n=Mc(n,s);break;case"step-finish":n=Pc(n,s);break;case"error":n=Nc(n,s),r==null||r(s.error);break;case"update-state":n=Lc(n,s);break;default:{const l=o;throw new Error(`Unsupported chunk type: ${l}`)}}i()},flush(s){var o,l,u;if(((o=n.status)==null?void 0:o.type)==="running"){const c=(u=(l=n.parts)==null?void 0:l.some(d=>d.type==="tool-call"&&(d.state==="call"||d.state==="partial-call")&&d.result===void 0))!=null?u:!1;n=Ni(n,{finishReason:c?"tool-calls":"unknown"}),s.enqueue(n)}}})}},Fc=class extends vi{constructor(){super(e=>{const t=new cc({transform(r,n){n.appendText(r)}});return e.pipeThrough(new TextDecoderStream).pipeThrough(t)})}},Bc=class Sn{constructor(t){this.readable=t,this.readable=t}static fromAssistantStream(t){return new Sn(t.pipeThrough(new Oc))}unstable_result(){return M(this,null,function*(){let t;try{for(var r=zt(this),n,a,i;n=!(a=yield r.next()).done;n=!1){const s=a.value;t=s}}catch(a){i=[a]}finally{try{n&&(a=r.return)&&(yield a.call(r))}finally{if(i)throw i[0]}}return t||{role:"assistant",status:{type:"complete",reason:"unknown"},parts:[],content:[],metadata:{unstable_state:null,unstable_data:[],unstable_annotations:[],steps:[],custom:{}}}})}[Symbol.asyncIterator](){const t=this.readable.getReader();return{next(){return M(this,null,function*(){const{done:n,value:a}=yield t.read();return n?{done:!0,value:void 0}:{done:!1,value:a}})}}}tee(){const[t,r]=this.readable.tee();return[new Sn(t),new Sn(r)]}},Li=Symbol.for("aui.tool-response"),bt=class si{constructor(t){C(this,"artifact");C(this,"result");C(this,"isError");var r;t.artifact!==void 0&&(this.artifact=t.artifact),this.result=t.result,this.isError=(r=t.isError)!=null?r:!1}get[Li](){return!0}static[Symbol.hasInstance](t){return typeof t=="object"&&t!==null&&Li in t}static toResponse(t){return t instanceof si?t:new si({result:t===void 0?"<no result>":t})}};function zc(e,t,r){try{const n=e();if(typeof n=="object"&&n!==null&&"then"in n)return n.then(t,r);t(n)}catch(n){r(n)}}function or(e,t){let r=e;for(const n of t){if(r==null)return;r=r[n]}return r}var Rc=class{constructor(e,t,r){C(this,"resolve");C(this,"reject");C(this,"disposed",!1);C(this,"fieldPath");this.resolve=e,this.reject=t,this.fieldPath=r}update(e){if(!this.disposed)try{if(Rt(e,this.fieldPath)==="complete"){const t=or(e,this.fieldPath);t!==void 0&&(this.resolve(t),this.dispose())}}catch(t){this.reject(t),this.dispose()}}dispose(){this.disposed=!0}},Di=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");this.controller=e,this.fieldPath=t}update(e){if(!this.disposed)try{const t=or(e,this.fieldPath);t!==void 0&&this.controller.enqueue(t),Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(t){this.controller.error(t),this.dispose()}}dispose(){this.disposed=!0}},Oi=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");C(this,"lastValue");this.controller=e,this.fieldPath=t}update(e){var t;if(!this.disposed)try{const r=or(e,this.fieldPath);if(r!==void 0&&typeof r=="string"){const n=r.substring(((t=this.lastValue)==null?void 0:t.length)||0);this.lastValue=r,this.controller.enqueue(n)}Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(r){this.controller.error(r),this.dispose()}}dispose(){this.disposed=!0}},Fi=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");C(this,"processedIndexes",new Set);this.controller=e,this.fieldPath=t}update(e){if(!this.disposed)try{const t=or(e,this.fieldPath);if(!Array.isArray(t))return;for(let r=0;r<t.length;r++)if(!this.processedIndexes.has(r)){const n=[...this.fieldPath,r];Rt(e,n)==="complete"&&(this.controller.enqueue(t[r]),this.processedIndexes.add(r))}Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(t){this.controller.error(t),this.dispose()}}dispose(){this.disposed=!0}},jc=class{constructor(e){C(this,"argTextDeltas");C(this,"handles",new Set);C(this,"args",Or(""));this.argTextDeltas=e,this.processStream()}processStream(){return M(this,null,function*(){try{let e="";const t=this.argTextDeltas.getReader();for(;;){const{value:r,done:n}=yield t.read();if(n)break;e+=r;const a=Or(e);if(a!==void 0){this.args=a;for(const i of this.handles)i.update(a)}}}catch(e){console.error("Error processing argument stream:",e);for(const t of this.handles)t.dispose()}})}get(...e){return new Promise((t,r)=>{const n=new Rc(t,r,e);if(this.args&&Rt(this.args,e)==="complete"){const a=or(this.args,e);if(a!==void 0){t(a);return}}this.handles.add(n),n.update(this.args)})}streamValues(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Di(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Di){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}streamText(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Oi(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Oi){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}forEach(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Fi(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Fi){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}},$c=class{constructor(e){this.promise=e}get(){return this.promise}},Uc=class{constructor(){C(this,"args");C(this,"response");C(this,"writable");C(this,"resolve");C(this,"argsText","");C(this,"result",{get:()=>M(this,null,function*(){return(yield this.response.get()).result})});const e=new TransformStream;this.writable=e.writable,this.args=new jc(e.readable);const{promise:t,resolve:r}=Nn();this.resolve=r,this.response=new $c(t)}appendArgsTextDelta(e){return M(this,null,function*(){const t=this.writable.getWriter();try{yield t.write(e)}catch(r){console.warn(r)}finally{t.releaseLock()}this.argsText+=e})}setResponse(e){this.resolve(e)}},Hc=class extends vi{constructor(e){const t=new Map,r=new Map;super(n=>{const a=new TransformStream({transform(s,o){switch((s.type!=="part-finish"||s.meta.type!=="tool-call")&&o.enqueue(s),s.type){case"part-start":if(s.part.type==="tool-call"){const u=new Uc;r.set(s.part.toolCallId,u),e.streamCall({reader:u,toolCallId:s.part.toolCallId,toolName:s.part.toolName})}break;case"text-delta":{if(s.meta.type==="tool-call"){const u=s.meta.toolCallId,c=r.get(u);if(!c)throw new Error("No controller found for tool call");c.appendArgsTextDelta(s.textDelta)}break}case"result":{if(s.meta.type!=="tool-call")break;const{toolCallId:u}=s.meta,c=r.get(u);if(!c)throw new Error("No controller found for tool call");c.setResponse(new bt({result:s.result,artifact:s.artifact,isError:s.isError}));break}case"tool-call-args-text-finish":{if(s.meta.type!=="tool-call")break;const{toolCallId:u,toolName:c}=s.meta,d=r.get(u);if(!d)throw new Error("No controller found for tool call");let f=!1;const h=zc(()=>{var w;let g;try{g=An.parse(d.argsText)}catch(b){throw new Error(`Function parameter parsing failed. ${JSON.stringify(b.message)}`)}const v=e.execute({toolCallId:u,toolName:c,args:g});return v!==void 0&&(f=!0,(w=e.onExecutionStart)==null||w.call(e,u,c)),v},g=>{var w;if(f&&((w=e.onExecutionEnd)==null||w.call(e,u,c)),g===void 0)return;const v=new bt({artifact:g.artifact,result:g.result,isError:g.isError});d.setResponse(v),o.enqueue(m({type:"result",path:s.path},v))},g=>{var w;f&&((w=e.onExecutionEnd)==null||w.call(e,u,c));const v=new bt({result:String(g),isError:!0});d.setResponse(v),o.enqueue(m({type:"result",path:s.path},v))});h&&t.set(u,h);break}case"part-finish":{if(s.meta.type!=="tool-call")break;const{toolCallId:u}=s.meta,c=t.get(u);c?c.then(()=>{t.delete(u),r.delete(u),o.enqueue(s)}):o.enqueue(s)}}},flush(){return M(this,null,function*(){yield Promise.all(t.values())})}});return n.pipeThrough(new ki).pipeThrough(a)})}},qc=e=>typeof e=="object"&&e!==null&&"~standard"in e&&e["~standard"].version===1;function Vc(e,t,r,n){const a=e==null?void 0:e[r.toolName];return!a||!a.execute?void 0:(s=>M(null,null,function*(){var c;if(t.aborted)return new bt({result:"Tool execution was cancelled.",isError:!0});let o=s;if(qc(a.parameters)){let d=a.parameters["~standard"].validate(r.args);d instanceof Promise&&(d=yield d),d.issues&&(o=(c=a.experimental_onSchemaValidationError)!=null?c:(()=>{throw new Error(`Function parameter validation failed. ${JSON.stringify(d.issues)}`)}))}const l=new Promise(d=>{const f=()=>{queueMicrotask(()=>{queueMicrotask(()=>{d(new bt({result:"Tool execution was cancelled.",isError:!0}))})})};t.aborted?f():t.addEventListener("abort",f,{once:!0})}),u=M(null,null,function*(){const d=yield o(r.args,{toolCallId:r.toolCallId,abortSignal:t,human:f=>n(r.toolCallId,f)});return bt.toResponse(d)});return Promise.race([u,l])}))(a.execute)}function Wc(e,t,r,n,a){var i,s;(s=(i=e==null?void 0:e[n.toolName])==null?void 0:i.streamCall)==null||s.call(i,r,{toolCallId:n.toolCallId,abortSignal:t,human:o=>a(n.toolCallId,o)})}function Jc(e,t,r,n){const a=typeof e=="function"?e:()=>e,i=typeof t=="function"?t:()=>t;return new Hc({execute:s=>Vc(a(),i(),s,r),streamCall:l=>{var u=l,{reader:s}=u,o=V(u,["reader"]);return Wc(a(),i(),s,o,r)},onExecutionStart:n==null?void 0:n.onExecutionStart,onExecutionEnd:n==null?void 0:n.onExecutionEnd})}var Bi=class{constructor(e,t,r){this.contentBinding=e,this.messageApi=t,this.threadApi=r,this.__internal_bindMethods()}get path(){return this.contentBinding.path}__internal_bindMethods(){this.addToolResult=this.addToolResult.bind(this),this.resumeToolCall=this.resumeToolCall.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this)}getState(){return this.contentBinding.getState()}addToolResult(e){const t=this.contentBinding.getState();if(!t)throw new Error("Message part is not available");if(t.type!=="tool-call")throw new Error("Tried to add tool result to non-tool message part");if(!this.messageApi)throw new Error("Message API is not available. This is likely a bug in assistant-ui.");if(!this.threadApi)throw new Error("Thread API is not available");const r=this.messageApi.getState();if(!r)throw new Error("Message is not available");const n=t.toolName,a=t.toolCallId,i=bt.toResponse(e);this.threadApi.getState().addToolResult({messageId:r.id,toolName:n,toolCallId:a,result:i.result,artifact:i.artifact,isError:i.isError})}resumeToolCall(e){const t=this.contentBinding.getState();if(!t)throw new Error("Message part is not available");if(t.type!=="tool-call")throw new Error("Tried to resume tool call on non-tool message part");if(!this.threadApi)throw new Error("Thread API is not available");const r=t.toolCallId;this.threadApi.getState().resumeToolCall({toolCallId:r,payload:e})}subscribe(e){return this.contentBinding.subscribe(e)}},Ur=class extends Br{constructor(e){super(),this.binding=e}get path(){return this.binding.path}getState(){return this.binding.getState()}outerSubscribe(e){return this.binding.subscribe(e)}_connect(){const e=()=>{this.notifySubscribers()};let t=this.binding.getState(),r=t==null?void 0:t.subscribe(e);const n=()=>{var s;const i=this.binding.getState();i!==t&&(t=i,r==null||r(),r=(s=this.binding.getState())==null?void 0:s.subscribe(e),e())},a=this.outerSubscribe(n);return()=>{a==null||a(),r==null||r()}}},Hr=Object.freeze({type:"complete"}),Kc=(e,t,r)=>{if(e.role!=="assistant")return Hr;if(r.type==="tool-call")return r.result?Hr:e.status;const n=t===Math.max(0,e.content.length-1);return e.status.type==="requires-action"?Hr:n?e.status:Hr},zi=(e,t)=>{const r=e.content[t];if(!r)return Ze;const n=Kc(e,t,r);return Object.freeze(E(m({},r),{[Rr]:r[Rr],status:n}))},Yc=class{constructor(e,t){C(this,"composer");C(this,"_getEditComposerRuntimeCore",()=>this._threadBinding.getState().getEditComposer(this._core.getState().id));this._core=e,this._threadBinding=t,this.composer=new wc(new Ur({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.composer`,composerSource:"edit"}),getState:this._getEditComposerRuntimeCore,subscribe:r=>this._threadBinding.subscribe(r)}),()=>this._threadBinding.getState().beginEdit(this._core.getState().id)),this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.reload=this.reload.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.getMessagePartByIndex=this.getMessagePartByIndex.bind(this),this.getMessagePartByToolCallId=this.getMessagePartByToolCallId.bind(this),this.getAttachmentByIndex=this.getAttachmentByIndex.bind(this),this.unstable_getCopyText=this.unstable_getCopyText.bind(this),this.speak=this.speak.bind(this),this.stopSpeaking=this.stopSpeaking.bind(this),this.submitFeedback=this.submitFeedback.bind(this),this.switchToBranch=this.switchToBranch.bind(this)}getState(){return this._core.getState()}reload(e={}){const t=this._getEditComposerRuntimeCore(),r=t!=null?t:this._threadBinding.getState().composer,n=t!=null?t:r,{runConfig:a=n.runConfig}=e,i=this._core.getState();if(i.role!=="assistant")throw new Error("Can only reload assistant messages");this._threadBinding.getState().startRun({parentId:i.parentId,sourceId:i.id,runConfig:a})}speak(){const e=this._core.getState();return this._threadBinding.getState().speak(e.id)}stopSpeaking(){var r;const e=this._core.getState();if(((r=this._threadBinding.getState().speech)==null?void 0:r.messageId)===e.id)this._threadBinding.getState().stopSpeaking();else throw new Error("Message is not being spoken")}submitFeedback({type:e}){const t=this._core.getState();this._threadBinding.getState().submitFeedback({messageId:t.id,type:e})}switchToBranch({position:e,branchId:t}){const r=this._core.getState();if(t&&e)throw new Error("May not specify both branchId and position");if(!t&&!e)throw new Error("Must specify either branchId or position");const a=this._threadBinding.getState().getBranches(r.id);let i=t;if(e==="previous"?i=a[r.branchNumber-2]:e==="next"&&(i=a[r.branchNumber]),!i)throw new Error("Branch not found");this._threadBinding.getState().switchToBranch(i)}unstable_getCopyText(){return jr(this.getState())}subscribe(e){return this._core.subscribe(e)}getMessagePartByIndex(e){if(e<0)throw new Error("Message part index must be >= 0");return new Bi(new et({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.content[${e}]`,messagePartSelector:{type:"index",index:e}}),getState:()=>zi(this.getState(),e),subscribe:t=>this._core.subscribe(t)}),this._core,this._threadBinding)}getMessagePartByToolCallId(e){return new Bi(new et({path:E(m({},this.path),{ref:this.path.ref+`${this.path.ref}.content[toolCallId=${JSON.stringify(e)}]`,messagePartSelector:{type:"toolCallId",toolCallId:e}}),getState:()=>{const t=this._core.getState(),r=t.content.findIndex(n=>n.type==="tool-call"&&n.toolCallId===e);return r===-1?Ze:zi(t,r)},subscribe:t=>this._core.subscribe(t)}),this._core,this._threadBinding)}getAttachmentByIndex(e){return new mc(new et({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.attachments[${e}]`,attachmentSource:"message",attachmentSelector:{type:"index",index:e}}),getState:()=>{const t=this.getState().attachments,r=t==null?void 0:t[e];return r?E(m({},r),{source:"message"}):Ze},subscribe:t=>this._core.subscribe(t)}))}},Gc=e=>{var t,r,n;return m({parentId:(t=e.parentId)!=null?t:null,sourceId:(r=e.sourceId)!=null?r:null,runConfig:(n=e.runConfig)!=null?n:{}},e.stream?{stream:e.stream}:{})},Xc=e=>{var t,r,n;return{parentId:(t=e.parentId)!=null?t:null,sourceId:(r=e.sourceId)!=null?r:null,runConfig:(n=e.runConfig)!=null?n:{}}},Qc=(e,t)=>{var r,n,a,i,s,o,l,u,c,d,f;return typeof t=="string"?{createdAt:new Date,parentId:(n=(r=e.at(-1))==null?void 0:r.id)!=null?n:null,sourceId:null,runConfig:{},role:"user",content:[{type:"text",text:t}],attachments:[],metadata:{custom:{}}}:{createdAt:(a=t.createdAt)!=null?a:new Date,parentId:(o=(s=t.parentId)!=null?s:(i=e.at(-1))==null?void 0:i.id)!=null?o:null,sourceId:(l=t.sourceId)!=null?l:null,role:(u=t.role)!=null?u:"user",content:t.content,attachments:(c=t.attachments)!=null?c:[],metadata:(d=t.metadata)!=null?d:{custom:{}},runConfig:(f=t.runConfig)!=null?f:{},startRun:t.startRun}},Zc=(e,t)=>{const r=e.messages.at(-1);return Object.freeze({threadId:t.id,metadata:t,capabilities:e.capabilities,isDisabled:e.isDisabled,isLoading:e.isLoading,isRunning:(r==null?void 0:r.role)!=="assistant"?!1:r.status.type==="running",messages:e.messages,state:e.state,suggestions:e.suggestions,extras:e.extras,speech:e.speech})},Ri=class{constructor(e,t){C(this,"_threadBinding");C(this,"composer");C(this,"_eventSubscriptionSubjects",new Map);const r=new et({path:e.path,getState:()=>Zc(e.getState(),t.getState()),subscribe:n=>{const a=e.subscribe(n),i=t.subscribe(n);return()=>{a(),i()}}});this._threadBinding={path:e.path,getState:()=>e.getState(),getStateState:()=>r.getState(),outerSubscribe:n=>e.outerSubscribe(n),subscribe:n=>e.subscribe(n)},this.composer=new bc(new Ur({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.composer`,composerSource:"thread"}),getState:()=>this._threadBinding.getState().composer,subscribe:n=>this._threadBinding.subscribe(n)})),this.__internal_bindMethods()}get path(){return this._threadBinding.path}get __internal_threadBinding(){return this._threadBinding}__internal_bindMethods(){this.append=this.append.bind(this),this.unstable_resumeRun=this.unstable_resumeRun.bind(this),this.unstable_loadExternalState=this.unstable_loadExternalState.bind(this),this.startRun=this.startRun.bind(this),this.cancelRun=this.cancelRun.bind(this),this.stopSpeaking=this.stopSpeaking.bind(this),this.export=this.export.bind(this),this.import=this.import.bind(this),this.reset=this.reset.bind(this),this.getMessageByIndex=this.getMessageByIndex.bind(this),this.getMessageById=this.getMessageById.bind(this),this.subscribe=this.subscribe.bind(this),this.unstable_on=this.unstable_on.bind(this),this.getModelContext=this.getModelContext.bind(this),this.getModelConfig=this.getModelConfig.bind(this),this.getState=this.getState.bind(this)}getState(){return this._threadBinding.getStateState()}append(e){this._threadBinding.getState().append(Qc(this._threadBinding.getState().messages,e))}subscribe(e){return this._threadBinding.subscribe(e)}getModelContext(){return this._threadBinding.getState().getModelContext()}getModelConfig(){return this.getModelContext()}startRun(e){const t=e===null||typeof e=="string"?{parentId:e}:e;return this._threadBinding.getState().startRun(Xc(t))}unstable_resumeRun(e){return this._threadBinding.getState().resumeRun(Gc(e))}unstable_loadExternalState(e){this._threadBinding.getState().unstable_loadExternalState(e)}cancelRun(){this._threadBinding.getState().cancelRun()}stopSpeaking(){return this._threadBinding.getState().stopSpeaking()}export(){return this._threadBinding.getState().export()}import(e){this._threadBinding.getState().import(e)}reset(e){this._threadBinding.getState().reset(e)}getMessageByIndex(e){if(e<0)throw new Error("Message index must be >= 0");return this._getMessageRuntime(E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.messages[${e}]`,messageSelector:{type:"index",index:e}}),()=>{var n,a;const t=this._threadBinding.getState().messages,r=t[e];if(r)return{message:r,parentId:(a=(n=t[e-1])==null?void 0:n.id)!=null?a:null,index:e}})}getMessageById(e){return this._getMessageRuntime(E(m({},this.path),{ref:this.path.ref+`${this.path.ref}.messages[messageId=${JSON.stringify(e)}]`,messageSelector:{type:"messageId",messageId:e}}),()=>this._threadBinding.getState().getMessageById(e))}_getMessageRuntime(e,t){return new Yc(new et({path:e,getState:()=>{var c,d;const{message:r,parentId:n,index:a}=(c=t())!=null?c:{},{messages:i,speech:s}=this._threadBinding.getState();if(!r||n===void 0||a===void 0)return Ze;const l=this._threadBinding.getState().getBranches(r.id),u=r.metadata.submittedFeedback;return E(m({},r),{[Rr]:r[Rr],index:a,isLast:((d=i.at(-1))==null?void 0:d.id)===r.id,parentId:n,branchNumber:l.indexOf(r.id)+1,branchCount:l.length,speech:(s==null?void 0:s.messageId)===r.id?s:void 0,submittedFeedback:u})},subscribe:r=>this._threadBinding.subscribe(r)}),this._threadBinding)}unstable_on(e,t){let r=this._eventSubscriptionSubjects.get(e);return r||(r=new Ei({event:e,binding:this._threadBinding}),this._eventSubscriptionSubjects.set(e,r)),r.subscribe(t)}},ed=e=>({mainThreadId:e.mainThreadId,newThread:e.newThreadId,threads:e.threadIds,archivedThreads:e.archivedThreadIds,isLoading:e.isLoading,threadItems:e.threadData}),qr=(e,t)=>{if(t===void 0)return Ze;const r=e.getItemById(t);return r?{id:r.id,threadId:r.id,remoteId:r.remoteId,externalId:r.externalId,title:r.title,status:r.status,isMain:r.id===e.mainThreadId}:Ze},td=class{constructor(e,t=Ri){C(this,"_getState");C(this,"_mainThreadListItemRuntime");C(this,"main");this._core=e,this._runtimeFactory=t;const r=new Dn({path:{},getState:()=>ed(e),subscribe:n=>e.subscribe(n)});this._getState=r.getState.bind(r),this._mainThreadListItemRuntime=new zr(new et({path:{ref:"threadItems[main]",threadSelector:{type:"main"}},getState:()=>qr(this._core,this._core.mainThreadId),subscribe:n=>this._core.subscribe(n)}),this._core),this.main=new t(new Ur({path:{ref:"threads.main",threadSelector:{type:"main"}},getState:()=>e.getMainThreadRuntimeCore(),subscribe:n=>e.subscribe(n)}),this._mainThreadListItemRuntime),this.__internal_bindMethods()}__internal_bindMethods(){this.switchToThread=this.switchToThread.bind(this),this.switchToNewThread=this.switchToNewThread.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.getById=this.getById.bind(this),this.getItemById=this.getItemById.bind(this),this.getItemByIndex=this.getItemByIndex.bind(this),this.getArchivedItemByIndex=this.getArchivedItemByIndex.bind(this)}switchToThread(e){return this._core.switchToThread(e)}switchToNewThread(){return this._core.switchToNewThread()}getState(){return this._getState()}subscribe(e){return this._core.subscribe(e)}get mainItem(){return this._mainThreadListItemRuntime}getById(e){return new this._runtimeFactory(new Ur({path:{ref:`threads[threadId=${JSON.stringify(e)}]`,threadSelector:{type:"threadId",threadId:e}},getState:()=>this._core.getThreadRuntimeCore(e),subscribe:t=>this._core.subscribe(t)}),this.mainItem)}getItemByIndex(e){return new zr(new et({path:{ref:`threadItems[${e}]`,threadSelector:{type:"index",index:e}},getState:()=>qr(this._core,this._core.threadIds[e]),subscribe:t=>this._core.subscribe(t)}),this._core)}getArchivedItemByIndex(e){return new zr(new et({path:{ref:`archivedThreadItems[${e}]`,threadSelector:{type:"archiveIndex",index:e}},getState:()=>qr(this._core,this._core.archivedThreadIds[e]),subscribe:t=>this._core.subscribe(t)}),this._core)}getItemById(e){return new zr(new et({path:{ref:`threadItems[threadId=${e}]`,threadSelector:{type:"threadId",threadId:e}},getState:()=>qr(this._core,e),subscribe:t=>this._core.subscribe(t)}),this._core)}},rd=e=>e.startsWith("image/")?"image":e.startsWith("text/")?"document":"file",nd=class{constructor(e){C(this,"accept","*");C(this,"uploadedUrls",new Map);this.cloud=e}add(t){return Nr(this,arguments,function*({file:e}){const r=crypto.randomUUID(),n=rd(e.type);let a={id:r,type:n,name:e.name,contentType:e.type,file:e,status:{type:"running",reason:"uploading",progress:0}};yield a;try{const{signedUrl:i,publicUrl:s}=yield new Le(this.cloud.files.generatePresignedUploadUrl({filename:e.name}));yield new Le(fetch(i,{method:"PUT",body:e,headers:{"Content-Type":e.type},mode:"cors"})),this.uploadedUrls.set(r,s),a=E(m({},a),{status:{type:"requires-action",reason:"composer-send"}}),yield a}catch(i){a=E(m({},a),{status:{type:"incomplete",reason:"error"}}),yield a}})}remove(e){return M(this,null,function*(){this.uploadedUrls.delete(e.id)})}send(e){return M(this,null,function*(){const t=this.uploadedUrls.get(e.id);if(!t)throw new Error("Attachment not uploaded");this.uploadedUrls.delete(e.id);let r;return e.type==="image"?r=[{type:"image",image:t,filename:e.name}]:r=[{type:"file",data:t,mimeType:e.contentType,filename:e.name}],E(m({},e),{status:{type:"complete"},content:r})})}},On=y.createContext(null),Fn=({adapters:e,children:t})=>{const r=y.useContext(On);return p.jsx(On.Provider,{value:m(m({},r),e),children:t})},ad=()=>y.useContext(On),id=class extends ci{constructor(t,r,{parentId:n,message:a}){var i;super();C(this,"_nonTextParts");C(this,"_previousText");C(this,"_parentId");C(this,"_sourceId");this.runtime=t,this.endEditCallback=r,this._parentId=n,this._sourceId=a.id,this._previousText=jr(a),this.setText(this._previousText),this.setRole(a.role),this.setAttachments((i=a.attachments)!=null?i:[]),this._nonTextParts=a.content.filter(s=>s.type!=="text"),this.setRunConfig(m({},t.composer.runConfig))}get canCancel(){return!0}getAttachmentAdapter(){var t;return(t=this.runtime.adapters)==null?void 0:t.attachments}handleSend(t){return M(this,null,function*(){jr(t)!==this._previousText&&this.runtime.append(E(m({},t),{content:[...t.content,...this._nonTextParts],parentId:this._parentId,sourceId:this._sourceId})),this.handleCancel()})}handleCancel(){this.endEditCallback(),this._notifySubscribers()}},sd=class{constructor(e){C(this,"_subscriptions",new Set);C(this,"_isInitialized",!1);C(this,"repository",new Ti);C(this,"composer",new di(this));C(this,"_editComposers",new Map);C(this,"_stopSpeaking");C(this,"speech");C(this,"_eventSubscribers",new Map);this._contextProvider=e}get messages(){return this.repository.getMessages()}get state(){var t;let e;for(const r of this.messages)if(r.role==="assistant"){e=r;break}return(t=e==null?void 0:e.metadata.unstable_state)!=null?t:null}getModelContext(){return this._contextProvider.getModelContext()}getEditComposer(e){return this._editComposers.get(e)}beginEdit(e){if(this._editComposers.has(e))throw new Error("Edit already in progress");this._editComposers.set(e,new id(this,()=>this._editComposers.delete(e),this.repository.getMessage(e))),this._notifySubscribers()}getMessageById(e){try{return this.repository.getMessage(e)}catch(t){return}}getBranches(e){return this.repository.getBranches(e)}switchToBranch(e){this.repository.switchToBranch(e),this._notifySubscribers()}_notifySubscribers(){for(const e of this._subscriptions)e()}_notifyEventSubscribers(e){const t=this._eventSubscribers.get(e);if(t)for(const r of t)r()}subscribe(e){return this._subscriptions.add(e),()=>this._subscriptions.delete(e)}submitFeedback({messageId:e,type:t}){var i;const r=(i=this.adapters)==null?void 0:i.feedback;if(!r)throw new Error("Feedback adapter not configured");const{message:n,parentId:a}=this.repository.getMessage(e);if(r.submit({message:n,type:t}),n.role==="assistant"){const s=E(m({},n),{metadata:E(m({},n.metadata),{submittedFeedback:{type:t}})});this.repository.addOrUpdateMessage(a,s)}this._notifySubscribers()}speak(e){var i,s;const t=(i=this.adapters)==null?void 0:i.speech;if(!t)throw new Error("Speech adapter not configured");const{message:r}=this.repository.getMessage(e);(s=this._stopSpeaking)==null||s.call(this);const n=t.speak(jr(r)),a=n.subscribe(()=>{n.status.type==="ended"?(this._stopSpeaking=void 0,this.speech=void 0):this.speech={messageId:e,status:n.status},this._notifySubscribers()});this.speech={messageId:e,status:n.status},this._notifySubscribers(),this._stopSpeaking=()=>{n.cancel(),a(),this.speech=void 0,this._stopSpeaking=void 0}}stopSpeaking(){if(!this._stopSpeaking)throw new Error("No message is being spoken");this._stopSpeaking(),this._notifySubscribers()}ensureInitialized(){this._isInitialized||(this._isInitialized=!0,this._notifyEventSubscribers("initialize"))}export(){return this.repository.export()}import(e){this.ensureInitialized(),this.repository.clear(),this.repository.import(e),this._notifySubscribers()}reset(e){this.import(Ln.fromArray(e!=null?e:[]))}unstable_on(e,t){var n,a,i;if(e==="model-context-update")return(i=(a=(n=this._contextProvider).subscribe)==null?void 0:a.call(n,t))!=null?i:(()=>{});const r=this._eventSubscribers.get(e);return r?r.add(t):this._eventSubscribers.set(e,new Set([t])),()=>{this._eventSubscribers.get(e).delete(t)}}},od=e=>{try{return JSON.parse(e),!0}catch(t){return!1}};function ld({state:e,getTools:t,onResult:r,setToolStatuses:n}){const a=y.useRef({}),i=y.useRef(new Map),s=y.useRef(new AbortController),o=y.useRef(0),l=y.useRef([]),[u]=y.useState(()=>{const[h,g]=_i(),v=Jc(t,()=>{var w,b;return(b=(w=s.current)==null?void 0:w.signal)!=null?b:new AbortController().signal},(w,b)=>new Promise((I,T)=>{const D=i.current.get(w);D&&D.reject(new Error("Human input request was superseded by a new request")),i.current.set(w,{resolve:I,reject:T}),n(B=>E(m({},B),{[w]:{type:"interrupt",payload:{type:"human",payload:b}}}))}),{onExecutionStart:w=>{o.current++,n(b=>E(m({},b),{[w]:{type:"executing"}}))},onExecutionEnd:w=>{o.current--,n(b=>{const I=m({},b);return delete I[w],I}),o.current===0&&(l.current.forEach(b=>b()),l.current=[])}});return h.pipeThrough(v).pipeThrough(new ki).pipeTo(new WritableStream({write(w){var b;if(w.type==="result"){if((b=a.current[w.meta.toolCallId])!=null&&b.hasResult)return;r(m({type:"add-tool-result",toolCallId:w.meta.toolCallId,toolName:w.meta.toolName,result:w.result,isError:w.isError},w.artifact&&{artifact:w.artifact}))}}})),g}),c=y.useRef(new Set),d=y.useRef(!0);y.useEffect(()=>{const h=g=>{g.forEach(v=>{v.content.forEach(w=>{if(w.type==="tool-call"){if(d.current)c.current.add(w.toolCallId);else{if(c.current.has(w.toolCallId))return;let b=a.current[w.toolCallId];if(b||(b={argsText:"",hasResult:!1,argsComplete:!1,controller:u.addToolCallPart({toolName:w.toolName,toolCallId:w.toolCallId})},a.current[w.toolCallId]=b),w.argsText!==b.argsText)if(b.argsComplete)process.env.NODE_ENV!=="production"&&console.warn("argsText updated after controller was closed:",{previous:b.argsText,next:w.argsText});else{if(!w.argsText.startsWith(b.argsText))throw new Error(`Tool call argsText can only be appended, not updated: ${w.argsText} does not start with ${b.argsText}`);const I=w.argsText.slice(b.argsText.length);b.controller.argsText.append(I);const T=od(w.argsText);T&&b.controller.argsText.close(),a.current[w.toolCallId]={argsText:w.argsText,hasResult:b.hasResult,argsComplete:T,controller:b.controller}}w.result!==void 0&&!b.hasResult&&(b.controller.setResponse(new bt({result:w.result,artifact:w.artifact,isError:w.isError})),b.controller.close(),a.current[w.toolCallId]={hasResult:!0,argsComplete:!0,argsText:b.argsText,controller:b.controller})}w.messages&&h(w.messages)}})})};h(e.messages),d.current&&(d.current=!1)},[e,u,r]);const f=()=>(i.current.forEach(({reject:h})=>{h(new Error("Tool execution aborted"))}),i.current.clear(),s.current.abort(),s.current=new AbortController,o.current===0?Promise.resolve():new Promise(h=>{l.current.push(h)}));return{reset:()=>{f(),d.current=!0},abort:f,resume:(h,g)=>{const v=i.current.get(h);if(v)i.current.delete(h),n(w=>E(m({},w),{[h]:{type:"executing"}})),v.resolve(g);else throw new Error(`Tool call ${h} is not waiting for human input`)}}}var ud=class{list(){return Promise.resolve({threads:[]})}rename(){return Promise.resolve()}archive(){return Promise.resolve()}unarchive(){return Promise.resolve()}delete(){return Promise.resolve()}initialize(e){return Promise.resolve({remoteId:e,externalId:void 0})}generateTitle(){return Promise.resolve(new ReadableStream)}fetch(e){return Promise.reject(new Error("Thread not found"))}};function cd(e,t){e.commitTasks.forEach(r=>{const n=r.cellIndex,a=t.cells[n];if(a.type!=="effect")throw new Error("Cannot find effect cell");let i=!0;if(a.deps!==void 0&&r.deps!==void 0&&(i=a.deps.length!==r.deps.length||a.deps.some((s,o)=>!Object.is(s,r.deps[o]))),i){if(a.mounted){if(typeof a.deps!=typeof r.deps)throw new Error("tapEffect called with and without dependencies across re-renders");try{a.mounted&&a.cleanup&&a.cleanup()}finally{a.mounted=!1}}try{const s=r.effect();if(s!==void 0&&typeof s!="function")throw new Error(`An effect function must either return a cleanup function or nothing. Received: ${typeof s}`);a.mounted=!0,a.cleanup=typeof s=="function"?s:void 0,a.deps=r.deps}catch(s){throw s}}})}function dd(e){let t=null;for(let r=e.cells.length-1;r>=0;r--){const n=e.cells[r];if((n==null?void 0:n.type)==="effect"&&n.mounted&&n.cleanup)try{n.cleanup()}catch(a){t==null&&(t=a)}finally{n.mounted=!1}}if(t!=null)throw t}var lr=null;function hd(e,t){e.currentIndex=0;const r=lr;lr=e;try{if(t(),e.isFirstRender=!1,e.cells.length!==e.currentIndex)throw new Error(`Rendered ${e.currentIndex} hooks but expected ${e.cells.length}. Hooks must be called in the exact same order in every render.`)}finally{lr=r}}function Bn(){if(!lr)throw new Error("No resource fiber available");return lr}function ji(e,t){const r=e[$i];if(!r)throw new Error("ResourceElement.type is not a valid Resource");return r(t)}var $i=Symbol("fnSymbol");function Vr(e,t){return{resource:e,scheduleRerender:t,cells:[],currentIndex:0,renderContext:void 0,isFirstRender:!0,isMounted:!1,isNeverMounted:!0}}function jt(e){e.isMounted=!1,dd(e)}function ur(e,t){const r={commitTasks:[],props:t,state:void 0};return hd(e,()=>{e.renderContext=r;try{r.state=ji(e.resource,t)}finally{e.renderContext=void 0}}),r}function $t(e,t){e.isMounted=!0,e.isNeverMounted=!1,cd(t,e)}var fd=globalThis.__ASSISTANT_UI_DISABLE_LAYOUT_EFFECT__===!0,Ui=fd?y.useEffect:y.useLayoutEffect;function zn(e){const[,t]=y.useState({}),r=y.useMemo(()=>Vr(e.type,()=>t({})),[e.type,t]),n=ur(r,e.props);return Ui(()=>()=>jt(r),[]),Ui(()=>{$t(r,n)}),n.state}var Ut=e=>typeof e=="string"?{scope:e.split(".")[0],event:e}:{scope:e.scope,event:e.event},Et=(e,t,r)=>t===e,Ht,Rn=()=>{if(Ht)return Ht;const e=()=>({apis:new Map,nextId:0,listeners:new Set});if(typeof window=="undefined")return Ht=e(),Ht;const t=window.__ASSISTANT_UI_DEVTOOLS_HOOK__;if(t)return Ht=t,t;const r=e();return window.__ASSISTANT_UI_DEVTOOLS_HOOK__=r,Ht=r,r},pd=(at=class{static register(t){var o,l;const r=Rn();for(const u of r.apis.values())if(u.api===t)return()=>{};const n=r.nextId++,a={api:t,logs:[]},i=(o=t.on)==null?void 0:o.call(t,"*",u=>{const c=r.apis.get(n);c&&(c.logs.push({time:new Date,event:u.event,data:u.payload}),c.logs.length>at.MAX_EVENT_LOGS_PER_API&&(c.logs=c.logs.slice(-200)),at.notifyListeners(n))}),s=(l=t.subscribe)==null?void 0:l.call(t,()=>{at.notifyListeners(n)});return r.apis.set(n,a),at.notifyListeners(n),()=>{const u=Rn();u.apis.get(n)&&(i==null||i(),s==null||s(),u.apis.delete(n),at.notifyListeners(n))}}static notifyListeners(t){Rn().listeners.forEach(n=>n(t))}},C(at,"MAX_EVENT_LOGS_PER_API",200),at);function ye(e){const t=(r,n)=>m({type:t,props:r},(n==null?void 0:n.key)!==void 0&&{key:n.key});return t[$i]=e,t}var md=e=>{if(e.renderContext)throw new Error("Resource updated during render");if(e.isNeverMounted)throw new Error("Resource updated before mount");e.isMounted&&e.scheduleRerender()};function gd(e){const t=Bn(),r=t.currentIndex++;if(!t.isFirstRender&&r>=t.cells.length)throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");if(!t.cells[r]){const i={type:"state",value:typeof e=="function"?e():e,set:s=>{const o=i.value,l=typeof s=="function"?s(o):s;Object.is(o,l)||(i.value=l,md(t))}};t.cells[r]=i}const n=t.cells[r];if(n.type!=="state")throw new Error("Hook order changed between renders");return n}function ut(e){const t=gd(e);return[t.value,t.set]}function yd(){const e=Bn(),t=e.currentIndex++;if(!e.isFirstRender&&t>=e.cells.length)throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");if(!e.cells[t]){const n={type:"effect",mounted:!1};e.cells[t]=n}if(e.cells[t].type!=="effect")throw new Error("Hook order changed between renders");return t}function Fe(e,t){const r=Bn(),n=yd();r.renderContext.commitTasks.push({effect:e,deps:t,cellIndex:n})}function qt(e){const[t]=ut(()=>({current:e}));return t}var bd=(e,t)=>{if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!Object.is(e[r],t[r]))return!1;return!0},oe=(e,t)=>{const r=qt();return r.current||(r.current={value:e(),deps:t}),bd(r.current.deps,t)||(r.current.value=e(),r.current.deps=t),r.current.value};function Wr(e,t){const[r,n]=ut({}),a=oe(()=>Vr(e.type,()=>n({})),[e.type]),i=t?oe(()=>e.props,t):e.props,s=oe(()=>ur(a,i),[a,i,r]);return Fe(()=>()=>jt(a),[a]),Fe(()=>{$t(a,s)},[a,s]),s.state}function tt(e){return ji(e.type,e.props)}function Hi(e){const t=new Set;e.forEach((o,l)=>{if(o.key===void 0)throw new Error(`tapResources: All resource elements must have a key. Element at index ${l} is missing a key.`);if(t.has(o.key))throw new Error(`tapResources: Duplicate key "${o.key}" found. All keys must be unique.`);t.add(o.key)});const[r,n]=ut({}),a=oe(()=>new Map(e.map(o=>[o.key,o])),[e]),[i]=ut(()=>new Map),s=oe(()=>{const o=new Map,l=new Set;return a.forEach((u,c)=>{l.add(c);let d=i.get(c);(!d||d.resource!==u.type)&&(d&&jt(d),d=Vr(u.type,()=>n({})),i.set(c,d));const f=ur(d,u.props);o.set(c,f)}),i.forEach((u,c)=>{l.has(c)||(jt(u),i.delete(c))}),o},[a,r]);return Fe(()=>{s.forEach((o,l)=>{const u=i.get(l);u&&$t(u,o)})},[s,i]),Fe(()=>()=>{i.forEach(o=>{jt(o)}),i.clear()},[i]),oe(()=>e.map(o=>{var l;return(l=s.get(o.key))==null?void 0:l.state}),[e,s])}var jn=[],$n=!1;function wd(){$n=!1;const e=jn;jn=[];for(const t of e)try{t()}catch(r){console.error("Error in scheduled task:",r)}}function xd(e){jn.push(e),$n||($n=!0,queueMicrotask(wd))}var vd=(Ft=class{constructor(t){C(this,"_isDirty",!1);C(this,"_hasScheduledTask",!1);C(this,"_isFlushing",!1);this._task=t}get isDirty(){return this._isDirty}markDirty(){this._isDirty=!0,!(this._hasScheduledTask||this._isFlushing)&&(this._hasScheduledTask=!0,xd(()=>{this._hasScheduledTask=!1,this.flushSync()}))}flushSync(){if(this._isFlushing)return;this._isFlushing=!0;let t=0;try{for(;this._isDirty;){if(t++,t>Ft.MAX_FLUSH_DEPTH)throw new Error("Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside tapEffect.");this._isDirty=!1,this._task()}}finally{this._isFlushing=!1}}},C(Ft,"MAX_FLUSH_DEPTH",50),Ft),kd=ye(({element:e,onUpdateInput:t,onFlushSync:r,onDispose:n})=>{const[a,i]=ut(e.props),s=tt({type:e.type,props:a}),o=qt(new Set).current,l=qt(s);return Fe(()=>{s!==l.current&&(l.current=s,o.forEach(c=>c()))}),oe(()=>({getState:()=>l.current,subscribe:c=>(o.add(c),()=>o.delete(c)),updateInput:c=>{t(),i(()=>c)},flushSync:r,dispose:n}),[])}),Sd=(e,t=!1)=>{let r=!t;const n={element:e,onUpdateInput:()=>{r||(r=!0,$t(i,s))},onFlushSync:()=>{a.flushSync()},onDispose:()=>jt(i)},a=new vd(()=>{s=ur(i,n),r&&$t(i,s)}),i=Vr(kd,()=>a.markDirty());let s=ur(i,n);return r&&$t(i,s),s.state},cr=Symbol("tap.Context"),qi=e=>({[cr]:e}),Vi=(e,t,r)=>{const n=e[cr];e[cr]=t;try{return r()}finally{e[cr]=n}},Wi=e=>e[cr];const Ji=e=>{let t;const r=new Set,n=(u,c)=>{const d=typeof u=="function"?u(t):u;if(!Object.is(d,t)){const f=t;t=(c!=null?c:typeof d!="object"||d===null)?d:Object.assign({},t,d),r.forEach(h=>h(t,f))}},a=()=>t,o={setState:n,getState:a,getInitialState:()=>l,subscribe:u=>(r.add(u),()=>r.delete(u))},l=t=e(n,a,o);return o},_d=(e=>e?Ji(e):Ji),Td=e=>e;function Cd(e,t=Td){const r=y.useSyncExternalStore(e.subscribe,y.useCallback(()=>t(e.getState()),[e,t]),y.useCallback(()=>t(e.getInitialState()),[e,t]));return y.useDebugValue(r),r}const Ki=e=>{const t=_d(e),r=n=>Cd(t,n);return Object.assign(r,t),r},Vt=(e=>e?Ki(e):Ki);function Yi(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Gi(...e){return t=>{let r=!1;const n=e.map(a=>{const i=Yi(a,t);return!r&&typeof i=="function"&&(r=!0),i});if(r)return()=>{for(let a=0;a<n.length;a++){const i=n[a];typeof i=="function"?i():Yi(e[a],null)}}}}function Jr(...e){return Y.useCallback(Gi(...e),e)}var Xi=ye(e=>{const t=oe(()=>Sd(e,!0),[e.type]);return Fe(()=>{t.updateInput(e.props)}),t}),Id=class{constructor(e){this.getApi=e}get(e,t){return this.getApi()[t]}ownKeys(){return Object.keys(this.getApi())}has(e,t){return t in this.getApi()}getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(this.getApi(),t)}set(){return!1}defineProperty(){return!1}deleteProperty(){return!1}},rt=(e,t)=>{const r=qt(e);Fe(()=>{r.current=e});const n=oe(()=>new Proxy({},new Id(()=>r.current)),[]),a=t==null?void 0:t.key,i=e.getState();return oe(()=>({key:a,state:i,api:n}),[i,a])},wt=ye(e=>{const t=qt(e.get);return Fe(()=>{t.current=e.get}),oe(()=>Ee({source:e.source,query:e.query,get:()=>t.current()}),[e.source,JSON.stringify(e.query)])}),Ed=ye(e=>{const t=Wr(e.scopeElement);return oe(()=>[e.fieldName,t],[e.fieldName,t])}),Ad=ye(e=>{const o=e,{on:t,subscribe:r,flushSync:n}=o,a=V(o,["on","subscribe","flushSync"]),i=qt({on:t,subscribe:r,flushSync:n});Fe(()=>{i.current={on:t,subscribe:r,flushSync:n}});const s=Hi(Object.entries(a).map(([l,u])=>Ed({fieldName:l,scopeElement:u},{key:l})));return oe(()=>{const l=Object.fromEntries(s),{on:u,subscribe:c,flushSync:d}=i.current;return u&&(l.on=(f,h)=>u(f,h)),c&&(l.subscribe=f=>c(f)),d&&(l.flushSync=()=>d()),l},[...s])}),Qi=qi(null),Md=(e,t)=>Vi(Qi,e,t),Zi=()=>{const e=Wi(Qi);if(!e)throw new Error("Model context is not available in this context");return e},Pd=ye(({toolkit:e})=>{const[t,r]=ut(()=>({tools:{}})),n=Zi();Fe(()=>{if(!e)return;const i=[];for(const[l,u]of Object.entries(e))u.render&&i.push(a(l,u.render));const s=Object.entries(e).reduce((l,[u,c])=>{const h=c,{render:d}=h,f=V(h,["render"]);return l[u]=f,l},{}),o={getModelContext:()=>({tools:s})};return i.push(n.register(o)),()=>{i.forEach(l=>l())}},[e,n]);const a=(i,s)=>(r(o=>{var l;return E(m({},o),{tools:E(m({},o.tools),{[i]:[...(l=o.tools[i])!=null?l:[],s]})})}),()=>{r(o=>{var l,u;return E(m({},o),{tools:E(m({},o.tools),{[i]:(u=(l=o.tools[i])==null?void 0:l.filter(c=>c!==s))!=null?u:[]})})})});return rt({getState:()=>t,setToolUI:a})}),Nd=ye(()=>oe(()=>{const t=new Map;return{on:(r,n)=>{t.has(r)||t.set(r,new Set);const a=t.get(r);return a.add(n),()=>{a.delete(n),a.size===0&&t.delete(r)}},emit:(r,n)=>{const a=t.get(r),i=t.get("*");!a&&!i||queueMicrotask(()=>{if(a)for(const s of a)s(n);if(i)for(const s of i)s({event:r,payload:n})})}}},[])),es=qi(null),Ld=(e,t)=>Vi(es,e,t),Un=()=>{const e=Wi(es);if(!e)throw new Error("Events context is not available");return e},Dd=ye(()=>{const[e]=ut(()=>({})),t=new In;return rt({getState:()=>e,getModelContext:()=>t.getModelContext(),subscribe:r=>t.subscribe(r),register:r=>t.registerModelContextProvider(r)})}),Od=ye(({threads:e,modelContext:t,tools:r})=>{const n=tt(Nd()),{threads:a,tools:i,modelContext:s}=Ld(n,()=>{const l=Wr(t!=null?t:Dd(),[t]);return Md(l.api,()=>({modelContext:l,tools:Wr(r!=null?r:Pd({}),[r]),threads:Wr(e,[e])}))}),o=oe(()=>({threads:a.state,tools:i.state,modelContext:s.state}),[a.state,i.state,s.state]);return rt({getState:()=>o,threads:a.api,tools:i.api,modelContext:s.api,on:n.on})}),Fd=e=>{const t=()=>e.getState().api.threads.item("main");return{threads:Ee({source:"root",query:{},get:()=>e.getState().api.threads}),tools:Ee({source:"root",query:{},get:()=>e.getState().api.tools}),modelContext:Ee({source:"root",query:{},get:()=>e.getState().api.modelContext}),thread:Ee({source:"threads",query:{type:"main"},get:()=>e.getState().api.threads.thread("main")}),threadListItem:Ee({source:"threads",query:{type:"main"},get:()=>t()}),composer:Ee({source:"thread",query:{},get:()=>e.getState().api.threads.thread("main").composer}),on(r,n){const{event:a,scope:i}=Ut(r);if(i==="*")return e.getState().api.on(a,n);if(Et("thread",i)||Et("thread-list-item",i)||Et("composer",i))return e.getState().api.on(a,s=>{s.threadId===t().getState().id&&n(s)});throw new Error(`Event scope is not available in this component: ${i}`)},subscribe:e.subscribe,flushSync:e.flushSync}},Bd=e=>{const t=Kr(),r=zn(Xi(Od(e))),n=y.useMemo(()=>Fd(r),[r]);return y.useMemo(()=>rs(t,n),[t,n])},Ee=e=>{const t=e.get;return t.source=e.source,t.query=e.query,t},xt=()=>()=>{},ts=y.createContext({threads:Ee({source:null,query:{},get:()=>{throw new Error("Threads is only available inside <AssistantProvider />")}}),tools:Ee({source:null,query:{},get:()=>{throw new Error("Tools is only available inside <AssistantProvider />")}}),modelContext:Ee({source:null,query:{},get:()=>{throw new Error("ModelContext is only available inside <AssistantProvider />")}}),threadListItem:Ee({source:null,query:{},get:()=>{throw new Error("ThreadListItem is only available inside <AssistantProvider />")}}),thread:Ee({source:null,query:{},get:()=>{throw new Error("Thread is only available inside <AssistantProvider />")}}),composer:Ee({source:null,query:{},get:()=>{throw new Error("Composer is only available inside <AssistantProvider />")}}),message:Ee({source:null,query:{},get:()=>{throw new Error("Message is only available inside <ThreadPrimitive.Messages />")}}),part:Ee({source:null,query:{},get:()=>{throw new Error("Part is only available inside <MessagePrimitive.Parts />")}}),attachment:Ee({source:null,query:{},get:()=>{throw new Error("Attachment is only available inside <MessagePrimitive.Attachments /> or <ComposerPrimitive.Attachments />")}}),subscribe:xt,flushSync:xt,on:e=>{const{scope:t}=Ut(e);throw new Error(`Event scope is not available in this component: ${t}`)}}),Kr=()=>y.useContext(ts),At=e=>{const t=Kr(),r=zn(Ad(e));return y.useMemo(()=>rs(t,r),[t,r])},zd=e=>Bd(e);function fe(e){return e?zd(e):Kr()}var Rd=(e,t)=>e===xt?t:t===xt?e:(...r)=>{e(...r),t(...r)},jd=(e,t)=>e===xt?t:t===xt?e:(...r)=>{const n=e(...r),a=t(...r);return()=>{n(),a()}},rs=(e,t)=>{const r=t.subscribe,n=t.flushSync;return E(m(m({},e),t),{subscribe:jd(e.subscribe,r!=null?r:xt),flushSync:Rd(e.flushSync,n!=null?n:xt)})},vt=({api:e,children:t,devToolsVisible:r=!0})=>(y.useEffect(()=>{if(!(!r||!e.subscribe))return pd.register(e)},[e,r]),p.jsx(ts.Provider,{value:e,children:t})),ns=(ku=class{constructor(e){er(this,Qe);tr(this,Qe,e)}get threads(){return Ye(this,Qe).threads().getState()}get tools(){return Ye(this,Qe).tools().getState()}get threadListItem(){return Ye(this,Qe).threadListItem().getState()}get thread(){return Ye(this,Qe).thread().getState()}get composer(){return Ye(this,Qe).composer().getState()}get message(){return Ye(this,Qe).message().getState()}get part(){return Ye(this,Qe).part().getState()}get attachment(){return Ye(this,Qe).attachment().getState()}},Qe=new WeakMap,ku),te=e=>{const t=fe(),r=y.useMemo(()=>new ns(t),[t]),n=y.useSyncExternalStore(t.subscribe,()=>e(r),()=>e(r));if(y.useDebugValue(n),n instanceof ns)throw new Error("You tried to return the entire AssistantState. This is not supported due to technical limitations.");return n},Hn=(e,t)=>{const r=fe(),n=y.useRef(t);y.useEffect(()=>{n.current=t});const{scope:a,event:i}=Ut(e);y.useEffect(()=>r.on({scope:a,event:i},s=>n.current(s)),[r,a,i])};function $d(e,t){function r(n){const a=y.useContext(e);if(!(n!=null&&n.optional)&&!a)throw new Error(`This component must be used within ${t}.`);return a}return r}function as(e,t){function r(a){const i=e(a);return i?i[t]:null}function n(a){let i=!1,s;typeof a=="function"?s=a:a&&typeof a=="object"&&(i=!!a.optional,s=a.selector);const o=r({optional:i});return o?s?o(s):o():null}return{[t]:n,[`${t}Store`]:r}}var is=y.createContext(null),Ud=$d(is,"ThreadPrimitive.Viewport"),{useThreadViewport:Yr,useThreadViewportStore:qn}=as(Ud,"useThreadViewport"),Hd=e=>{var r;const t=e;t.__isBound||((r=t.__internal_bindMethods)==null||r.call(t),t.__isBound=!0)};function qd(e,t=Vd){Hd(e);const r=y.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getState()));return y.useDebugValue(r),r}var Vd=e=>e;function ss(e){function t(r){let n=!1,a;typeof r=="function"?a=r:r&&(n=!!r.optional,a=r.selector);const i=e({optional:n});return i?qd(i,a):null}return t}function os(e){const t=fe(),r=te(()=>{var n,a,i;return t.thread.source&&(i=(a=(n=t.thread()).__internal_getRuntime)==null?void 0:a.call(n))!=null?i:null});if(!r&&!(e!=null&&e.optional))throw new Error("ThreadRuntime is not available");return r}var Wd=ss(os);function Jd(e){const t=fe(),r=te(()=>{var n,a,i;return t.threadListItem.source&&(i=(a=(n=t.threadListItem()).__internal_getRuntime)==null?void 0:a.call(n))!=null?i:null});if(!r&&!(e!=null&&e.optional))throw new Error("ThreadListItemRuntime is not available");return r}var ls=ss(Jd),Mt=e=>{const[,t]=ut(e.getState);return Fe(()=>(t(e.getState()),e.subscribe(()=>{t(e.getState())})),[e]),e.getState()},Kd=ye(({runtime:e})=>{const t=Mt(e),r=Un();return Fe(()=>{const n=[],a=["switched-to","switched-away"];for(const i of a){const s=e.unstable_on(i,()=>{r.emit(`thread-list-item.${i}`,{threadId:e.getState().id})});n.push(s)}return()=>{for(const i of n)i()}},[e,r]),rt({getState:()=>t,switchTo:e.switchTo,rename:e.rename,archive:e.archive,unarchive:e.unarchive,delete:e.delete,generateTitle:e.generateTitle,initialize:e.initialize,detach:e.detach,__internal_getRuntime:()=>e},{key:t.id})}),dr=e=>{const t=Hi(e);return{state:t.map(r=>r.state),api:r=>{var a,i;const n="index"in r?(a=t[r.index])==null?void 0:a.api:(i=t.find(s=>s.key===r.key))==null?void 0:i.api;if(!n)throw new Error(`tapLookupResources: Resource not found for lookup: ${JSON.stringify(r)}`);return n}}},us=ye(({runtime:e})=>{const t=Mt(e);return rt({getState:()=>t,remove:e.remove,__internal_getRuntime:()=>e},{key:t.id})}),Yd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getAttachmentByIndex(t),[e,t]);return tt(us({runtime:r}))}),cs=ye(({threadIdRef:e,messageIdRef:t,runtime:r})=>{var o;const n=Mt(r),a=Un();Fe(()=>{const l=[],u=["send","attachment-add"];for(const c of u){const d=r.unstable_on(c,()=>{a.emit(`composer.${c}`,m({threadId:e.current},t&&{messageId:t.current}))});l.push(d)}return()=>{for(const c of l)c()}},[r,a,e,t]);const i=dr(n.attachments.map((l,u)=>Yd({runtime:r,index:u},{key:u}))),s=oe(()=>{var l;return{text:n.text,role:n.role,attachments:i.state,runConfig:n.runConfig,isEditing:n.isEditing,canCancel:n.canCancel,attachmentAccept:n.attachmentAccept,isEmpty:n.isEmpty,type:(l=n.type)!=null?l:"thread"}},[n,i.state]);return rt({getState:()=>s,setText:r.setText,setRole:r.setRole,setRunConfig:r.setRunConfig,addAttachment:r.addAttachment,reset:r.reset,clearAttachments:r.clearAttachments,send:r.send,cancel:r.cancel,beginEdit:(o=r.beginEdit)!=null?o:(()=>{throw new Error("beginEdit is not supported in this runtime")}),attachment:l=>"id"in l?i.api({key:l.id}):i.api(l),__internal_getRuntime:()=>r})}),Gd=ye(({runtime:e})=>{const t=Mt(e);return rt({getState:()=>t,addToolResult:n=>e.addToolResult(n),resumeToolCall:n=>e.resumeToolCall(n),__internal_getRuntime:()=>e},{key:t.type==="tool-call"?`toolCallId-${t.toolCallId}`:void 0})}),Xd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getAttachmentByIndex(t),[e,t]);return tt(us({runtime:r}))}),Qd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getMessagePartByIndex(t),[e,t]);return tt(Gd({runtime:r}))}),Zd=ye(({runtime:e,threadIdRef:t})=>{var f,h;const r=Mt(e),[n,a]=ut(!1),[i,s]=ut(!1),o=oe(()=>({get current(){return e.getState().id}}),[e]),l=tt(cs({runtime:e.composer,threadIdRef:t,messageIdRef:o})),u=dr(r.content.map((g,v)=>Qd({runtime:e,index:v},{key:v}))),c=dr((h=(f=r.attachments)==null?void 0:f.map((g,v)=>Xd({runtime:e,index:v},{key:v})))!=null?h:[]),d=oe(()=>E(m({},r),{parts:u.state,composer:l.state,isCopied:n,isHovering:i}),[r,u.state,l.state,n,i]);return rt({getState:()=>d,composer:l.api,reload:g=>e.reload(g),speak:()=>e.speak(),stopSpeaking:()=>e.stopSpeaking(),submitFeedback:g=>e.submitFeedback(g),switchToBranch:g=>e.switchToBranch(g),getCopyText:()=>e.unstable_getCopyText(),part:g=>"index"in g?u.api({index:g.index}):u.api({key:`toolCallId-${g.toolCallId}`}),attachment:g=>"id"in g?c.api({key:g.id}):c.api(g),setIsCopied:a,setIsHovering:s,__internal_getRuntime:()=>e},{key:r.id})}),eh=ye(({runtime:e,id:t,threadIdRef:r})=>{const n=oe(()=>e.getMessageById(t),[e,t]);return tt(Zd({runtime:n,threadIdRef:r}))}),th=ye(({runtime:e})=>{const t=Mt(e),r=Un();Fe(()=>{const o=[],l=["run-start","run-end","initialize","model-context-update"];for(const u of l){const c=e.unstable_on(u,()=>{var f;const d=((f=e.getState())==null?void 0:f.threadId)||"unknown";r.emit(`thread.${u}`,{threadId:d})});o.push(c)}return()=>{for(const u of o)u()}},[e]);const n=oe(()=>({get current(){return e.getState().threadId}}),[e]),a=tt(cs({runtime:e.composer,threadIdRef:n})),i=dr(t.messages.map(o=>eh({runtime:e,id:o.id,threadIdRef:n},{key:o.id}))),s=oe(()=>({isEmpty:i.state.length===0&&!t.isLoading,isDisabled:t.isDisabled,isLoading:t.isLoading,isRunning:t.isRunning,capabilities:t.capabilities,state:t.state,suggestions:t.suggestions,extras:t.extras,speech:t.speech,composer:a.state,messages:i.state}),[t,i,a.state]);return rt({getState:()=>s,composer:a.api,append:e.append,startRun:e.startRun,unstable_resumeRun:e.unstable_resumeRun,cancelRun:e.cancelRun,getModelContext:e.getModelContext,export:e.export,import:e.import,reset:e.reset,stopSpeaking:e.stopSpeaking,startVoice:()=>M(null,null,function*(){throw new Error("startVoice is not supported in this runtime")}),stopVoice:()=>M(null,null,function*(){throw new Error("stopVoice is not supported in this runtime")}),message:o=>"id"in o?i.api({key:o.id}):i.api(o),__internal_getRuntime:()=>e})}),rh=ye(({runtime:e,id:t})=>{const r=oe(()=>e.getItemById(t),[e,t]);return tt(Kd({runtime:r}))}),nh=ye(({runtime:e,__internal_assistantRuntime:t})=>{const r=Mt(e),n=tt(th({runtime:e.main})),a=dr(Object.keys(r.threadItems).map(s=>rh({runtime:e,id:s},{key:s}))),i=oe(()=>{var s;return{mainThreadId:r.mainThreadId,newThreadId:(s=r.newThread)!=null?s:null,isLoading:r.isLoading,threadIds:r.threads,archivedThreadIds:r.archivedThreads,threadItems:a.state,main:n.state}},[r,a.state,n.state]);return rt({getState:()=>i,thread:()=>n.api,item:s=>{if(s==="main")return a.api({key:i.mainThreadId});if("id"in s)return a.api({key:s.id});const{index:o,archived:l=!1}=s,u=l?i.archivedThreadIds[o]:i.threadIds[o];return a.api({key:u})},switchToThread:s=>{e.switchToThread(s)},switchToNewThread:()=>{e.switchToNewThread()},__internal_getAssistantRuntime:()=>t})}),ah=ye(e=>{const t=Zi();return Fe(()=>e.registerModelContextProvider(t),[e,t]),tt(nh({runtime:e.threads,__internal_assistantRuntime:e}))}),Vn=e=>{const t=new Map,r=()=>{let n=0;for(const a of t.values())n+=a;e(n)};return{register:()=>{const n=Symbol();return t.set(n,0),{setHeight:a=>{t.get(n)!==a&&(t.set(n,a),r())},unregister:()=>{t.delete(n),r()}}}}},ih=(e={})=>{const t=new Set,r=Vn(s=>{i.setState({height:E(m({},i.getState().height),{viewport:s})})}),n=Vn(s=>{i.setState({height:E(m({},i.getState().height),{inset:s})})}),a=Vn(s=>{i.setState({height:E(m({},i.getState().height),{userMessage:s})})}),i=Vt(()=>{var s;return{isAtBottom:!0,scrollToBottom:({behavior:o="auto"}={})=>{for(const l of t)l({behavior:o})},onScrollToBottom:o=>(t.add(o),()=>{t.delete(o)}),turnAnchor:(s=e.turnAnchor)!=null?s:"bottom",height:{viewport:0,inset:0,userMessage:0},registerViewport:r.register,registerContentInset:n.register,registerUserMessageHeight:a.register}});return i},hr=e=>e,sh=e=>{const t=qn({optional:!0}),[r]=y.useState(()=>ih(e));return y.useEffect(()=>t==null?void 0:t.getState().onScrollToBottom(()=>{r.getState().scrollToBottom()}),[t,r]),y.useEffect(()=>{if(t)return r.subscribe(n=>{t.getState().isAtBottom!==n.isAtBottom&&hr(t).setState({isAtBottom:n.isAtBottom})})},[r,t]),y.useEffect(()=>{var i;const n={turnAnchor:(i=e.turnAnchor)!=null?i:"bottom"};r.getState().turnAnchor!==n.turnAnchor&&hr(r).setState(n)},[r,e.turnAnchor]),r},ds=({children:e,options:t={}})=>{const r=sh(t),[n]=y.useState(()=>({useThreadViewport:r}));return p.jsx(is.Provider,{value:n,children:e})},oh=e=>{var t;return(t=e._core)==null?void 0:t.RenderComponent},lh=({children:e,runtime:t})=>{const r=fe({threads:ah(t)}),n=oh(t);return p.jsxs(vt,{api:r,children:[n&&p.jsx(n,{}),p.jsx(ds,{children:e})]})},hs=y.memo(lh),uh=({index:e,archived:t,children:r})=>{const n=fe(),a=At({threadListItem:wt({source:"threads",query:{type:"index",index:e,archived:t},get:()=>n.threads().item({index:e,archived:t})}),on(i,s){const o=()=>n.threads().item({index:e,archived:t}),{event:l,scope:u}=Ut(i);return Et("thread-list-item",u)?n.on({scope:"*",event:l},c=>{c.threadId===o().getState().id&&s(c)}):n.on(i,s)}});return p.jsx(vt,{api:a,children:r})},ch=({id:e,children:t})=>{const r=fe(),n=At({threadListItem:wt({source:"threads",query:{type:"id",id:e},get:()=>r.threads().item({id:e})}),on(a,i){const s=()=>r.threads().item({id:e}),{event:o,scope:l}=Ut(a);return Et("thread-list-item",l)?r.on({scope:"*",event:o},u=>{u.threadId===s().getState().id&&i(u)}):r.on(a,i)}});return p.jsx(vt,{api:n,children:t})},dh=({index:e,children:t})=>{const r=fe(),n=At({message:wt({source:"thread",query:{type:"index",index:e},get:()=>r.thread().message({index:e})}),composer:wt({source:"message",query:{},get:()=>r.thread().message({index:e}).composer}),on(a,i){const s=()=>r.thread().message({index:e}),{event:o,scope:l}=Ut(a);return!Et("composer",l)&&!Et("message",l)?r.on(a,i):r.on({scope:"thread",event:o},u=>{u.messageId===s().getState().id&&i(u)})}});return p.jsx(vt,{api:n,children:t})},hh=({index:e,children:t})=>{const r=fe(),n=At({part:wt({source:"message",query:{type:"index",index:e},get:()=>r.message().part({index:e})})});return p.jsx(vt,{api:n,children:t})},fh=({index:e,children:t})=>{const r=fe(),n=At({attachment:wt({source:"message",query:{type:"index",index:e},get:()=>r.message().attachment({index:e})})});return p.jsx(vt,{api:n,children:t})},ph=({index:e,children:t})=>{const r=fe(),n=At({attachment:wt({source:"composer",query:{type:"index",index:e},get:()=>r.composer().attachment({index:e})})});return p.jsx(vt,{api:n,children:t})},mh=ye(({text:e,isRunning:t})=>{const r=oe(()=>({type:"text",text:e,status:t?{type:"running"}:{type:"complete"}}),[e,t]);return rt({getState:()=>r,addToolResult:()=>{throw new Error("Not supported")},resumeToolCall:()=>{throw new Error("Not supported")}})}),gh=({text:e,isRunning:t=!1,children:r})=>{const n=zn(Xi(mh({text:e,isRunning:t}))),a=At({part:wt({source:"root",query:{},get:()=>n.getState().api}),subscribe:n.subscribe,flushSync:n.flushSync});return p.jsx(vt,{api:a,children:r})},fs=(e,t)=>{var r,n;return t===void 0?((r=e.status)==null?void 0:r.type)==="requires-action"&&e.status.reason==="tool-calls"&&e.content.every(a=>a.type!=="tool-call"||!!a.result):((n=e.status)==null?void 0:n.type)==="requires-action"&&e.status.reason==="tool-calls"&&e.content.every(a=>a.type!=="tool-call"||!!a.result||!t.includes(a.toolName))},Wn=class extends Error{constructor(t,r){super(r);C(this,"name","AbortError");C(this,"detach");this.detach=t}},yh=class extends sd{constructor(t,r){super(t);C(this,"capabilities",{switchToBranch:!0,switchBranchDuringRun:!0,edit:!0,reload:!0,cancel:!0,unstable_copy:!0,speech:!1,attachments:!1,feedback:!1});C(this,"abortController",null);C(this,"isDisabled",!1);C(this,"_isLoading",!1);C(this,"_suggestions",[]);C(this,"_suggestionsController",null);C(this,"_options");C(this,"_lastRunConfig",{});C(this,"_loadPromise");this.__internal_setOptions(r)}get isLoading(){return this._isLoading}get suggestions(){return this._suggestions}get adapters(){return this._options.adapters}get extras(){}__internal_setOptions(t){var s,o,l;if(this._options===t)return;this._options=t;let r=!1;const n=((s=t.adapters)==null?void 0:s.speech)!==void 0;this.capabilities.speech!==n&&(this.capabilities.speech=n,r=!0);const a=((o=t.adapters)==null?void 0:o.attachments)!==void 0;this.capabilities.attachments!==a&&(this.capabilities.attachments=a,r=!0);const i=((l=t.adapters)==null?void 0:l.feedback)!==void 0;this.capabilities.feedback!==i&&(this.capabilities.feedback=i,r=!0),r&&this._notifySubscribers()}__internal_load(){var r,n;if(this._loadPromise)return this._loadPromise;const t=(n=(r=this.adapters.history)==null?void 0:r.load())!=null?n:Promise.resolve(null);return this._isLoading=!0,this._notifySubscribers(),this._loadPromise=t.then(a=>{var s,o;if(!a)return;this.repository.import(a),this._notifySubscribers();const i=(o=(s=this.adapters.history)==null?void 0:s.resume)==null?void 0:o.bind(this.adapters.history);a.unstable_resume&&i&&this.startRun({parentId:this.repository.headId,sourceId:this.repository.headId,runConfig:this._lastRunConfig},i)}).finally(()=>{this._isLoading=!1,this._notifySubscribers()}),this._loadPromise}append(t){return M(this,null,function*(){var a,i,s;this.ensureInitialized();const r=sr(t,Ct(),{type:"complete",reason:"unknown"});this.repository.addOrUpdateMessage(t.parentId,r),(a=this._options.adapters.history)==null||a.append(m({parentId:t.parentId,message:r},t.runConfig!==void 0&&{runConfig:t.runConfig})),((i=t.startRun)!=null?i:t.role==="user")?yield this.startRun({parentId:r.id,sourceId:t.sourceId,runConfig:(s=t.runConfig)!=null?s:{}}):(this.repository.resetHead(r.id),this._notifySubscribers())})}resumeRun(n){var a=n,{stream:t}=a,r=V(a,["stream"]);if(!t)throw new Error("You must pass a stream parameter to resume runs.");return this.startRun(r,t)}unstable_loadExternalState(){throw new Error("Runtime does not support importing external states.")}startRun(a,i){return M(this,arguments,function*({parentId:t,runConfig:r},n){var u,c,d;this.ensureInitialized();let o={id:Ct(),role:"assistant",status:{type:"running"},content:[],metadata:{unstable_state:this.state,unstable_annotations:[],unstable_data:[],steps:[],custom:{}},createdAt:new Date};this._notifyEventSubscribers("run-start");try{this._suggestions=[],(u=this._suggestionsController)==null||u.abort(),this._suggestionsController=null,this._notifySubscribers();do o=yield this.performRoundtrip(t,o,r,n),n=void 0;while(fs(o,this._options.unstable_humanToolNames))}finally{this._notifyEventSubscribers("run-end")}this._suggestionsController=new AbortController;const l=this._suggestionsController.signal;if(this.adapters.suggestion&&((c=o.status)==null?void 0:c.type)!=="requires-action"){const w=(d=this.adapters.suggestion)==null?void 0:d.generate({messages:this.messages});if(Symbol.asyncIterator in w)try{for(var f=zt(w),h,g,v;h=!(g=yield f.next()).done;h=!1){const b=g.value;if(l.aborted)break;this._suggestions=b,this._notifySubscribers()}}catch(g){v=[g]}finally{try{h&&(g=f.return)&&(yield g.call(f))}finally{if(v)throw v[0]}}else{const b=yield w;if(l.aborted)return;this._suggestions=b,this._notifySubscribers()}}})}performRoundtrip(t,r,n,a){return M(this,null,function*(){var g,v,w,b,I,T,D,B,_,P;const i=t?this.repository.getMessages(t):[];(g=this.abortController)==null||g.abort(),this.abortController=new AbortController;const s=r.content,o=(v=r.metadata)==null?void 0:v.unstable_annotations,l=(w=r.metadata)==null?void 0:w.unstable_data,u=(b=r.metadata)==null?void 0:b.steps,c=(I=r.metadata)==null?void 0:I.custom,d=N=>{var ue,x,ie,_e,k,Te;const H=(ue=N.metadata)==null?void 0:ue.steps,z=H?[...u!=null?u:[],...H]:void 0,O=(x=N.metadata)==null?void 0:x.unstable_annotations,ee=(ie=N.metadata)==null?void 0:ie.unstable_data,de=O?[...o!=null?o:[],...O]:void 0,pe=ee?[...l!=null?l:[],...ee]:void 0;r=m(E(m(m({},r),N.content?{content:[...s,...(_e=N.content)!=null?_e:[]]}:void 0),{status:(k=N.status)!=null?k:r.status}),N.metadata?{metadata:m(m(m(m(m(m({},r.metadata),N.metadata.unstable_state?{unstable_state:N.metadata.unstable_state}:void 0),de?{unstable_annotations:de}:void 0),pe?{unstable_data:pe}:void 0),z?{steps:z}:void 0),(Te=N.metadata)!=null&&Te.custom?{custom:m(m({},c!=null?c:{}),N.metadata.custom)}:void 0)}:void 0),this.repository.addOrUpdateMessage(t,r),this._notifySubscribers()},f=(T=this._options.maxSteps)!=null?T:2;if(((_=(B=(D=r.metadata)==null?void 0:D.steps)==null?void 0:B.length)!=null?_:0)>=f)return d({status:{type:"incomplete",reason:"tool-calls"}}),r;d({status:{type:"running"}}),this.repository.resetHead(r.id),this._notifySubscribers();try{this._lastRunConfig=n!=null?n:{};const N=this.getModelContext();a=a!=null?a:this.adapters.chatModel.run.bind(this.adapters.chatModel);const H=this.abortController.signal,z=a({messages:i,runConfig:this._lastRunConfig,abortSignal:H,context:N,config:N,unstable_assistantMessageId:r.id,unstable_getMessage(){return r}});if(Symbol.asyncIterator in z)try{for(var j=zt(z),R,U,S;R=!(U=yield j.next()).done;R=!1){const O=U.value;if(H.aborted){d({status:{type:"incomplete",reason:"cancelled"}});break}d(O)}}catch(U){S=[U]}finally{try{R&&(U=j.return)&&(yield U.call(j))}finally{if(S)throw S[0]}}else d(yield z);r.status.type==="running"&&d({status:{type:"complete",reason:"unknown"}})}catch(N){if(N instanceof Wn)d({status:{type:"incomplete",reason:"cancelled"}});else throw d({status:{type:"incomplete",reason:"error",error:N instanceof Error?N.message:`[${typeof N}] ${new String(N).toString()}`}}),N}finally{this.abortController=null,(r.status.type==="complete"||r.status.type==="incomplete")&&(yield(P=this._options.adapters.history)==null?void 0:P.append({parentId:t,message:r,runConfig:this._lastRunConfig}))}return r})}detach(){var r;const t=new Wn(!0);(r=this.abortController)==null||r.abort(t),this.abortController=null}cancelRun(){var r;const t=new Wn(!1);(r=this.abortController)==null||r.abort(t),this.abortController=null}addToolResult({messageId:t,toolCallId:r,result:n,isError:a,artifact:i}){const s=this.repository.getMessage(t),{parentId:o}=s;let{message:l}=s;if(l.role!=="assistant")throw new Error("Tried to add tool result to non-assistant message");let u=!1,c=!1;const d=l.content.map(f=>f.type!=="tool-call"||f.toolCallId!==r?f:(c=!0,f.result||(u=!0),E(m({},f),{result:n,artifact:i,isError:a})));if(!c)throw new Error("Tried to add tool result to non-existing tool call");l=E(m({},l),{content:d}),this.repository.addOrUpdateMessage(o,l),u&&fs(l,this._options.unstable_humanToolNames)&&this.performRoundtrip(o,l,this._lastRunConfig)}resumeToolCall(t){throw new Error("Local runtime does not support resuming tool calls.")}},ps=Object.freeze([]),Jn="__DEFAULT_ID__",bh=Object.freeze({[Jn]:{id:Jn,remoteId:void 0,externalId:void 0,status:"regular",title:void 0}}),wh=class extends ar{constructor(t){super();C(this,"_mainThread");this._mainThread=t()}get isLoading(){return!1}getMainThreadRuntimeCore(){return this._mainThread}get newThreadId(){throw new Error("Method not implemented.")}get threadIds(){throw ps}get archivedThreadIds(){throw ps}get mainThreadId(){return Jn}get threadData(){return bh}getThreadRuntimeCore(){throw new Error("Method not implemented.")}getLoadThreadsPromise(){throw new Error("Method not implemented.")}getItemById(t){if(t===this.mainThreadId)return{status:"regular",id:this.mainThreadId,remoteId:this.mainThreadId,externalId:void 0,title:void 0,isMain:!0};throw new Error("Method not implemented")}switchToThread(){return M(this,null,function*(){throw new Error("Method not implemented.")})}switchToNewThread(){throw new Error("Method not implemented.")}rename(){throw new Error("Method not implemented.")}archive(){throw new Error("Method not implemented.")}detach(){throw new Error("Method not implemented.")}unarchive(){throw new Error("Method not implemented.")}delete(){throw new Error("Method not implemented.")}initialize(t){return Promise.resolve({remoteId:t,externalId:void 0})}generateTitle(){throw new Error("Method not implemented.")}},xh=class extends En{constructor(t,r){super();C(this,"threads");C(this,"Provider");C(this,"_options");this._options=t,this.threads=new wh(()=>new yh(this._contextProvider,this._options)),r&&this.threads.getMainThreadRuntimeCore().import(Ln.fromArray(r))}},ms=e=>{try{const r=e.split(".")[1];if(!r)throw new Error("Invalid JWT format");let n=r.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";const a=atob(n),s=JSON.parse(a).exp;if(!s||typeof s!="number")throw new Error('JWT does not contain a valid "exp" field');return s*1e3}catch(t){throw new Error(`Unable to determine the token expiry: ${t}`)}},gs=(Su=class{constructor(e){C(this,"strategy","jwt");C(this,"cachedToken",null);C(this,"tokenExpiry",null);er(this,Ir);tr(this,Ir,e)}getAuthHeaders(){return M(this,null,function*(){const e=Date.now();if(this.cachedToken&&this.tokenExpiry&&this.tokenExpiry-e>30*1e3)return{Authorization:`Bearer ${this.cachedToken}`};const t=yield Ye(this,Ir).call(this);return t?(this.cachedToken=t,this.tokenExpiry=ms(t),{Authorization:`Bearer ${t}`}):!1})}readAuthHeaders(e){const t=e.get("Authorization");if(!t)return;const[r,n]=t.split(" ");if(r!=="Bearer"||!n)throw new Error("Invalid auth header received");this.cachedToken=n,this.tokenExpiry=ms(n)}},Ir=new WeakMap,Su),vh=(_u=class{constructor(e,t,r){C(this,"strategy","api-key");er(this,Er);er(this,Ar);er(this,Mr);tr(this,Er,e),tr(this,Ar,t),tr(this,Mr,r)}getAuthHeaders(){return M(this,null,function*(){return{Authorization:`Bearer ${Ye(this,Er)}`,"Aui-User-Id":Ye(this,Ar),"Aui-Workspace-Id":Ye(this,Mr)}})}readAuthHeaders(){}},Er=new WeakMap,Ar=new WeakMap,Mr=new WeakMap,_u),Gr="aui:refresh_token",kh=class{constructor(e){C(this,"strategy","anon");C(this,"baseUrl");C(this,"jwtStrategy");this.baseUrl=e,this.jwtStrategy=new gs(()=>M(this,null,function*(){const t=Date.now(),r=localStorage.getItem(Gr),n=r?JSON.parse(r):void 0;if(n)if(new Date(n.expires_at).getTime()-t>30*1e3){const u=yield fetch(`${this.baseUrl}/v1/auth/tokens/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refresh_token:n.token})});if(u.ok){const c=yield u.json(),{access_token:d,refresh_token:f}=c;return f&&localStorage.setItem(Gr,JSON.stringify(f)),d}}else localStorage.removeItem(Gr);const a=yield fetch(`${this.baseUrl}/v1/auth/tokens/anonymous`,{method:"POST"});if(!a.ok)return null;const i=yield a.json(),{access_token:s,refresh_token:o}=i;return!s||!o?null:(localStorage.setItem(Gr,JSON.stringify(o)),s)}))}getAuthHeaders(){return M(this,null,function*(){return this.jwtStrategy.getAuthHeaders()})}readAuthHeaders(e){this.jwtStrategy.readAuthHeaders(e)}},Sh=class extends Error{constructor(e){super(e),this.name="APIError"}},_h=class{constructor(e){C(this,"_auth");C(this,"_baseUrl");if("authToken"in e)this._baseUrl=e.baseUrl,this._auth=new gs(e.authToken);else if("apiKey"in e)this._baseUrl="https://backend.assistant-api.com",this._auth=new vh(e.apiKey,e.userId,e.workspaceId);else if("anonymous"in e)this._baseUrl=e.baseUrl,this._auth=new kh(e.baseUrl);else throw new Error("Invalid configuration: Must provide authToken, apiKey, or anonymous configuration")}initializeAuth(){return M(this,null,function*(){return!!this._auth.getAuthHeaders()})}makeRawRequest(r){return M(this,arguments,function*(e,t={}){var l;const n=yield this._auth.getAuthHeaders();if(!n)throw new Error("Authorization failed");const a=E(m(m({},n),t.headers),{"Content-Type":"application/json"}),i=new URLSearchParams;if(t.query)for(const[u,c]of Object.entries(t.query))c!==!1&&(c===!0?i.set(u,"true"):i.set(u,c.toString()));const s=new URL(`${this._baseUrl}/v1${e}`);s.search=i.toString();const o=yield fetch(s,{method:(l=t.method)!=null?l:"GET",headers:a,body:t.body?JSON.stringify(t.body):null});if(this._auth.readAuthHeaders(o.headers),!o.ok){const u=yield o.text();try{const c=JSON.parse(u);throw new Sh(c.message)}catch(c){throw new Error(`Request failed with status ${o.status}, ${u}`)}}return o})}makeRequest(r){return M(this,arguments,function*(e,t={}){return(yield this.makeRawRequest(e,t)).json()})}},Th=class{constructor(e){this.cloud=e}create(){return M(this,null,function*(){return this.cloud.makeRequest("/auth/tokens",{method:"POST"})})}},Ch=class{constructor(e){this.cloud=e}__internal_getAssistantOptions(e){return{api:`${this.cloud._baseUrl}/v1/runs/stream`,headers:()=>M(this,null,function*(){const t=yield this.cloud._auth.getAuthHeaders();if(!t)throw new Error("Authorization failed");return E(m({},t),{Accept:"text/plain"})}),body:{assistant_id:e,response_format:"vercel-ai-data-stream/v1",thread_id:"unstable_todo"}}}stream(e){return M(this,null,function*(){const t=yield this.cloud.makeRawRequest("/runs/stream",{method:"POST",headers:{Accept:"text/plain"},body:e});return Pn.fromResponse(t,new Fc)})}},Ih=class{constructor(e){this.cloud=e}list(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}/messages`,{query:t})})}create(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}/messages`,{method:"POST",body:t})})}},Eh=class{constructor(e){C(this,"messages");this.cloud=e,this.messages=new Ih(e)}list(e){return M(this,null,function*(){return this.cloud.makeRequest("/threads",{query:e})})}get(e){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`)})}create(e){return M(this,null,function*(){return this.cloud.makeRequest("/threads",{method:"POST",body:e})})}update(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`,{method:"PUT",body:t})})}delete(e){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`,{method:"DELETE"})})}},Ah=class{constructor(e){this.cloud=e}pdfToImages(e){return M(this,null,function*(){return this.cloud.makeRequest("/files/pdf-to-images",{method:"POST",body:e})})}generatePresignedUploadUrl(e){return M(this,null,function*(){return this.cloud.makeRequest("/files/attachments/generate-presigned-upload-url",{method:"POST",body:e})})}},Mh=class{constructor(e){C(this,"threads");C(this,"auth");C(this,"runs");C(this,"files");const t=new _h(e);this.threads=new Eh(t),this.auth={tokens:new Th(t)},this.runs=new Ch(t),this.files=new Ah(t)}};function Kn(e,t=0){return t>100?!1:e===null||typeof e=="string"||typeof e=="boolean"?!0:typeof e=="number"?!Number.isNaN(e)&&Number.isFinite(e):Array.isArray(e)?e.every(r=>Kn(r,t+1)):typeof e=="object"?Object.entries(e).every(([r,n])=>typeof r=="string"&&Kn(n,t+1)):!1}var Ph=e=>{var t;return m({role:e.role,content:e.content.map(r=>{const n=r.type;switch(n){case"text":return{type:"text",text:r.text};case"reasoning":return{type:"reasoning",text:r.text};case"source":return m({type:"source",sourceType:r.sourceType,id:r.id,url:r.url},r.title?{title:r.title}:void 0);case"tool-call":return Kn(r.result)||console.warn(`tool-call result is not JSON! ${JSON.stringify(r)}`),m(m(m({type:"tool-call",toolCallId:r.toolCallId,toolName:r.toolName},JSON.stringify(r.args)===r.argsText?{args:r.args}:{argsText:r.argsText}),r.result?{result:r.result}:{}),r.isError?{isError:!0}:{});default:{const a=n;throw new Error(`Message part type not supported by aui/v0: ${a}`)}}}),metadata:e.metadata},e.status?{status:((t=e.status)==null?void 0:t.type)==="running"?{type:"incomplete",reason:"cancelled"}:e.status}:void 0)},Nh=e=>{const t=e.content,r=sr(m({id:e.id,createdAt:e.created_at},t),e.id,{type:"complete",reason:"unknown"});return{parentId:e.parent_id,message:r}},Yn=new WeakMap,Lh=class{constructor(e,t){this.parent=e,this.formatAdapter=t}append(e){return M(this,null,function*(){const t=this.formatAdapter.encode(e),r=this.formatAdapter.getId(e.message);return this.parent._appendWithFormat(e.parentId,r,this.formatAdapter.format,t)})}load(){return M(this,null,function*(){return this.parent._loadWithFormat(this.formatAdapter.format,e=>this.formatAdapter.decode(e))})}},Dh=class{constructor(e,t){this.cloudRef=e,this.store=t}get _getIdForLocalId(){return Yn.has(this.store.threadListItem())||Yn.set(this.store.threadListItem(),{}),Yn.get(this.store.threadListItem())}withFormat(e){return new Lh(this,e)}append(r){return M(this,arguments,function*({parentId:e,message:t}){var i;const{remoteId:n}=yield this.store.threadListItem().initialize(),a=this.cloudRef.current.threads.messages.create(n,{parent_id:e?(i=yield this._getIdForLocalId[e])!=null?i:e:null,format:"aui/v0",content:Ph(t)}).then(({message_id:s})=>(this._getIdForLocalId[t.id]=s,s));return this._getIdForLocalId[t.id]=a,a.then(()=>{})})}load(){return M(this,null,function*(){const e=this.store.threadListItem().getState().remoteId;if(!e)return{messages:[]};const{messages:t}=yield this.cloudRef.current.threads.messages.list(e,{format:"aui/v0"});return{messages:t.filter(n=>n.format==="aui/v0").map(Nh).reverse()}})}_appendWithFormat(e,t,r,n){return M(this,null,function*(){var s;const{remoteId:a}=yield this.store.threadListItem().initialize(),i=this.cloudRef.current.threads.messages.create(a,{parent_id:e?(s=yield this._getIdForLocalId[e])!=null?s:e:null,format:r,content:n}).then(({message_id:o})=>(this._getIdForLocalId[t]=o,o));return this._getIdForLocalId[t]=i,i.then(()=>{})})}_loadWithFormat(e,t){return M(this,null,function*(){const r=this.store.threadListItem().getState().remoteId;if(!r)return{messages:[]};const{messages:n}=yield this.cloudRef.current.threads.messages.list(r,{format:e});return{messages:n.filter(a=>a.format===e).map(a=>t({id:a.id,parent_id:a.parent_id,format:a.format,content:a.content})).reverse()}})}},Oh=e=>{const t=fe(),[r]=y.useState(()=>new Dh(e,t));return r},ys=typeof process!="undefined"&&((Tu=process==null?void 0:process.env)==null?void 0:Tu.NEXT_PUBLIC_ASSISTANT_BASE_URL),Gn=ys?new Mh({baseUrl:ys,anonymous:!0}):void 0,Fh=e=>{var a;const t=y.useRef(e);y.useEffect(()=>{t.current=e},[e]);const r=y.useCallback(function({children:s}){var d;const o=Oh({get current(){var f;return(f=t.current.cloud)!=null?f:Gn}}),l=(d=t.current.cloud)!=null?d:Gn,u=y.useMemo(()=>new nd(l),[l]),c=y.useMemo(()=>({history:o,attachments:u}),[o,u]);return p.jsx(Fn,{adapters:c,children:s})},[]),n=(a=e.cloud)!=null?a:Gn;return n?{list:()=>M(null,null,function*(){const{threads:i}=yield n.threads.list();return{threads:i.map(s=>{var o;return{status:s.is_archived?"archived":"regular",remoteId:s.id,title:s.title,externalId:(o=s.external_id)!=null?o:void 0}})}}),initialize:()=>M(null,null,function*(){var u,c;const s=yield(c=(u=e.create)==null?void 0:u.call(e))!=null?c:Promise.resolve(),o=s?s.externalId:void 0,{thread_id:l}=yield n.threads.create({last_message_at:new Date,external_id:o});return{externalId:o,remoteId:l}}),rename:(i,s)=>M(null,null,function*(){return n.threads.update(i,{title:s})}),archive:i=>M(null,null,function*(){return n.threads.update(i,{is_archived:!0})}),unarchive:i=>M(null,null,function*(){return n.threads.update(i,{is_archived:!1})}),delete:i=>M(null,null,function*(){var s;return yield(s=e.delete)==null?void 0:s.call(e,i),n.threads.delete(i)}),generateTitle:(i,s)=>M(null,null,function*(){return n.runs.stream({thread_id:i,assistant_id:"system/thread_title",messages:s})}),fetch:i=>M(null,null,function*(){var o;const s=yield n.threads.get(i);return{status:s.is_archived?"archived":"regular",remoteId:s.id,title:s.title,externalId:(o=s.external_id)!=null?o:void 0}}),unstable_Provider:r}:new ud},Bh=(e,n)=>{var a=n,{initialMessages:t}=a,r=V(a,["initialMessages"]);var u;const c=(u=ad())!=null?u:{},{modelContext:i}=c,s=V(c,["modelContext"]),o=y.useMemo(()=>E(m({},r),{adapters:E(m(m({},s),r.adapters),{chatModel:e})}),[e,r,s]),[l]=y.useState(()=>new xh(o,t));return y.useEffect(()=>()=>{l.threads.getMainThreadRuntimeCore().detach()},[l]),y.useEffect(()=>{l.threads.getMainThreadRuntimeCore().__internal_setOptions(o),l.threads.getMainThreadRuntimeCore().__internal_load()},[l,o]),y.useEffect(()=>{if(i)return l.registerModelContextProvider(i)},[i,l]),y.useMemo(()=>new Xn(l),[l])},bs=(e,n={})=>{var a=n,{cloud:t}=a,r=V(a,["cloud"]);const i=Fh({cloud:t});return Ss({runtimeHook:function(){return Bh(e,r)},adapter:i,allowNesting:!0})},Xn=class{constructor(e){C(this,"threads");C(this,"_thread");this._core=e,this.threads=new td(e.threads),this._thread=this.threads.main,this.__internal_bindMethods()}get threadList(){return this.threads}__internal_bindMethods(){this.switchToNewThread=this.switchToNewThread.bind(this),this.switchToThread=this.switchToThread.bind(this),this.registerModelContextProvider=this.registerModelContextProvider.bind(this),this.registerModelConfigProvider=this.registerModelConfigProvider.bind(this),this.reset=this.reset.bind(this)}get thread(){return this._thread}switchToNewThread(){return this._core.threads.switchToNewThread()}switchToThread(e){return this._core.threads.switchToThread(e)}registerModelContextProvider(e){return this._core.registerModelContextProvider(e)}registerModelConfigProvider(e){return this.registerModelContextProvider(e)}reset({initialMessages:e}={}){return this._core.threads.getMainThreadRuntimeCore().import(Ln.fromArray(e!=null?e:[]))}},zh=e=>{const o=e,{cloud:t,initialMessages:r,maxSteps:n,adapters:a,unstable_humanToolNames:i}=o,s=V(o,["cloud","initialMessages","maxSteps","adapters","unstable_humanToolNames"]);return{localRuntimeOptions:{cloud:t,initialMessages:r,maxSteps:n,adapters:a,unstable_humanToolNames:i},otherOptions:s}};function Pt(e){const t=Y.useRef(e);return Y.useEffect(()=>{t.current=e}),Y.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}var ws=y.createContext(null),Rh=e=>({useSmoothStatus:Vt(()=>e)}),jh=({children:e})=>{const t=xs({optional:!0}),r=fe(),[n]=y.useState(()=>Rh(r.part().getState().status));return t?e:p.jsx(ws.Provider,{value:n,children:e})},$h=e=>{const t=y.forwardRef((r,n)=>p.jsx(jh,{children:p.jsx(e,E(m({},r),{ref:n}))}));return t.displayName=e.displayName,t};function xs(e){const t=y.useContext(ws);if(!(e!=null&&e.optional)&&!t)throw new Error("This component must be used within a SmoothContextProvider.");return t}var{useSmoothStatus:Uh,useSmoothStatusStore:Hh}=as(xs,"useSmoothStatus"),qh=class{constructor(e,t){C(this,"animationFrameId",null);C(this,"lastUpdateTime",Date.now());C(this,"targetText","");C(this,"animate",()=>{const e=Date.now();let r=e-this.lastUpdateTime;const n=this.targetText.length-this.currentText.length,a=Math.min(5,250/n);let i=0;for(;r>=a&&i<n;)i++,r-=a;i!==n?this.animationFrameId=requestAnimationFrame(this.animate):this.animationFrameId=null,i!==0&&(this.currentText=this.targetText.slice(0,this.currentText.length+i),this.lastUpdateTime=e-r,this.setText(this.currentText))});this.currentText=e,this.setText=t}start(){this.animationFrameId===null&&(this.lastUpdateTime=Date.now(),this.animate())}stop(){this.animationFrameId!==null&&(cancelAnimationFrame(this.animationFrameId),this.animationFrameId=null)}},Qn=Object.freeze({type:"running"}),vs=(e,t=!1)=>{const{text:r}=e,n=te(({message:c})=>c.id),a=y.useRef(n),[i,s]=y.useState(r),o=Hh({optional:!0}),l=Pt(c=>{if(s(c),o){const d=i!==c||e.status.type==="running"?Qn:e.status;hr(o).setState(d,!0)}});y.useEffect(()=>{if(o){const c=t&&(i!==r||e.status.type==="running")?Qn:e.status;hr(o).setState(c,!0)}},[o,t,r,i,e.status]);const[u]=y.useState(new qh(r,l));return y.useEffect(()=>{if(!t){u.stop();return}if(a.current!==n||!r.startsWith(u.targetText)){a.current=n,l(r),u.currentText=r,u.targetText=r,u.stop();return}u.targetText=r,u.start()},[l,u,n,t,r]),y.useEffect(()=>()=>{u.stop()},[u]),y.useMemo(()=>t?{type:"text",text:i,status:r===i?e.status:Qn}:e,[t,i,e,r])};const Vh=Object.freeze(Object.defineProperty({__proto__:null,AssistantRuntimeImpl:Xn,BaseAssistantRuntimeCore:En,CompositeContextProvider:In,DefaultThreadComposerRuntimeCore:di,MessageRepository:Ti,ThreadRuntimeImpl:Ri,fromThreadMessageLike:sr,generateId:Ct,getAutoStatus:fi,splitLocalRuntimeOptions:zh,useSmooth:vs,useSmoothStatus:Uh,useToolInvocations:ld,withSmoothContextProvider:$h},Symbol.toStringTag,{value:"Module"}));var Wh=class extends ar{constructor(t){super();C(this,"useRuntimeHook");C(this,"instances",new Map);C(this,"useAliveThreadsKeysChanged",Vt(()=>({})));C(this,"_InnerActiveThreadProvider",({threadId:t})=>{const{useRuntime:r}=this.useRuntimeHook(),n=r(),a=n.thread.__internal_threadBinding,i=y.useCallback(()=>{const l=this.instances.get(t);if(!l)throw new Error("Thread not found. This is a bug in assistant-ui.");l.runtime=a.getState(),this._notifySubscribers()},[t,a]),s=y.useRef(!1);s.current||i(),y.useEffect(()=>(s.current=!0,i(),a.outerSubscribe(i)),[a,i]);const o=fe();return y.useEffect(()=>n.threads.main.unstable_on("initialize",()=>{if(o.threadListItem().getState().status==="new"){o.threadListItem().initialize();const u=n.thread.unstable_on("run-end",()=>{u(),o.threadListItem().generateTitle()})}}),[n,o]),null});C(this,"_OuterActiveThreadProvider",y.memo(({threadId:t,provider:r})=>p.jsx(ch,{id:t,children:p.jsx(r,{children:p.jsx(this._InnerActiveThreadProvider,{threadId:t})})})));C(this,"__internal_RenderThreadRuntimes",({provider:t})=>(this.useAliveThreadsKeysChanged(),Array.from(this.instances.keys()).map(r=>p.jsx(this._OuterActiveThreadProvider,{threadId:r,provider:t},r))));this.useRuntimeHook=Vt(()=>({useRuntime:t}))}startThreadRuntime(t){return this.instances.has(t)||(this.instances.set(t,{}),this.useAliveThreadsKeysChanged.setState({},!0)),new Promise((r,n)=>{const a=()=>{const s=this.instances.get(t);if(!s)i(),n(new Error("Thread was deleted before runtime was started"));else if(s.runtime)i(),r(s.runtime);else return},i=this.subscribe(a);a()})}getThreadRuntimeCore(t){const r=this.instances.get(t);if(r)return r.runtime}stopThreadRuntime(t){this.instances.delete(t),this.useAliveThreadsKeysChanged.setState({},!0)}setRuntimeHook(t){this.useRuntimeHook.getState().useRuntime!==t&&this.useRuntimeHook.setState({useRuntime:t},!0)}},xe=new Error("This is the empty thread, a placeholder for the main thread. You cannot perform any actions on this thread instance. This error is probably because you tried to call a thread method in your render function. Call the method inside a `useEffect` hook instead."),Jh={getMessageById(){},getBranches(){return[]},switchToBranch(){throw xe},append(){throw xe},startRun(){throw xe},resumeRun(){throw xe},cancelRun(){throw xe},addToolResult(){throw xe},resumeToolCall(){throw xe},speak(){throw xe},stopSpeaking(){throw xe},submitFeedback(){throw xe},getModelContext(){return{}},unstable_loadExternalState(){throw xe},composer:{attachments:[],attachmentAccept:"*",addAttachment(){return M(this,null,function*(){throw xe})},removeAttachment(){return M(this,null,function*(){throw xe})},isEditing:!0,canCancel:!1,isEmpty:!0,text:"",setText(){throw xe},role:"user",setRole(){throw xe},runConfig:{},setRunConfig(){throw xe},reset(){return M(this,null,function*(){})},clearAttachments(){return M(this,null,function*(){})},send(){throw xe},cancel(){},subscribe(){return()=>{}},unstable_on(){return()=>{}}},getEditComposer(){},beginEdit(){throw xe},speech:void 0,capabilities:{switchToBranch:!1,switchBranchDuringRun:!1,edit:!1,reload:!1,cancel:!1,unstable_copy:!1,speech:!1,attachments:!1,feedback:!1},isDisabled:!1,isLoading:!1,messages:[],state:null,suggestions:[],extras:void 0,subscribe(){return()=>{}},import(){throw xe},export(){return{messages:[]}},reset(){throw xe},unstable_on(){return()=>{}}},ks=(e,t,r)=>r.reduce((n,a)=>{var i;return(i=a==null?void 0:a(n,t))!=null?i:n},e),Kh=class extends ar{constructor(t){super();C(this,"_pendingTransforms",[]);C(this,"_baseValue");C(this,"_cachedValue");this._baseValue=t,this._cachedValue=t}_updateState(){this._cachedValue=this._pendingTransforms.reduce((t,r)=>ks(t,r.task,[r.loading,r.optimistic]),this._baseValue),this._notifySubscribers()}get baseValue(){return this._baseValue}get value(){return this._cachedValue}update(t){this._baseValue=t,this._updateState()}optimisticUpdate(t){return M(this,null,function*(){const r=t.execute(),n=E(m({},t),{task:r});try{this._pendingTransforms.push(n),this._updateState();const a=yield r;return this._baseValue=ks(this._baseValue,a,[t.optimistic,t.then]),a}finally{const a=this._pendingTransforms.indexOf(n);a>-1&&this._pendingTransforms.splice(a,1),this._updateState()}})}};function Av(e){return e}var Xr=(e,t)=>{const r=e.threadIdMap[t];if(r!==void 0)return e.threadData[r]},Qr=(e,t,r)=>{const n=Xr(e,t);if(!n)return e;const{id:a,remoteId:i,status:s}=n;if(s===r)return e;const o=m({},e);switch(s){case"new":o.newThreadId=void 0;break;case"regular":o.threadIds=o.threadIds.filter(l=>l!==a);break;case"archived":o.archivedThreadIds=o.archivedThreadIds.filter(l=>l!==a);break;default:{const l=s;throw new Error(`Unsupported state: ${l}`)}}switch(r){case"regular":o.threadIds=[a,...o.threadIds];break;case"archived":o.archivedThreadIds=[a,...o.archivedThreadIds];break;case"deleted":o.threadData=Object.fromEntries(Object.entries(o.threadData).filter(([l])=>l!==a)),o.threadIdMap=Object.fromEntries(Object.entries(o.threadIdMap).filter(([l])=>l!==a&&l!==i));break;default:{const l=r;throw new Error(`Unsupported state: ${l}`)}}return r!=="deleted"&&(o.threadData=E(m({},o.threadData),{[a]:E(m({},n),{status:r})})),o},Yh=class extends ar{constructor(t,r){super();C(this,"_options");C(this,"_hookManager");C(this,"_loadThreadsPromise");C(this,"_mainThreadId");C(this,"_state",new Kh({isLoading:!1,newThreadId:void 0,threadIds:[],archivedThreadIds:[],threadIdMap:{},threadData:{}}));C(this,"useProvider");C(this,"initialize",t=>M(this,null,function*(){if(this._state.value.newThreadId!==t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status==="new")throw new Error("Unexpected new state");return r.initializeTask}return this._state.optimisticUpdate({execute:()=>this._options.adapter.initialize(t),optimistic:r=>Qr(r,t,"regular"),loading:(r,n)=>{const a=t;return E(m({},r),{threadData:E(m({},r.threadData),{[a]:E(m({},r.threadData[a]),{initializeTask:n})})})},then:(r,{remoteId:n,externalId:a})=>{const i=Xr(r,t);if(!i)return r;const s=t;return E(m({},r),{threadIdMap:E(m({},r.threadIdMap),{[n]:s}),threadData:E(m({},r.threadData),{[s]:E(m({},i),{initializeTask:Promise.resolve({remoteId:n,externalId:a}),remoteId:n,externalId:a})})})}})}));C(this,"generateTitle",t=>M(this,null,function*(){var l;const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status==="new")throw new Error("Thread is not yet initialized");const{remoteId:n}=yield r.initializeTask,a=this._hookManager.getThreadRuntimeCore(r.id);if(!a)return;const i=a.messages,s=yield this._options.adapter.generateTitle(n,i),o=Bc.fromAssistantStream(s);try{for(var u=zt(o),c,d,f;c=!(d=yield u.next()).done;c=!1){const h=d.value;const g=(l=h.parts.filter(w=>w.type==="text")[0])==null?void 0:l.text,v=this._state.baseValue;this._state.update(E(m({},v),{threadData:E(m({},v.threadData),{[r.id]:E(m({},r),{title:g})})}))}}catch(d){f=[d]}finally{try{c&&(d=u.return)&&(yield d.call(u))}finally{if(f)throw f[0]}}}));C(this,"useBoundIds",Vt(()=>[]));C(this,"__internal_RenderComponent",()=>{const t=y.useId();y.useEffect(()=>(this.useBoundIds.setState(i=>[...i,t],!0),()=>{this.useBoundIds.setState(i=>i.filter(s=>s!==t),!0)}),[t]);const r=this.useBoundIds(),{Provider:n}=this.useProvider(),a={modelContext:this.contextProvider};return(r.length===0||r[0]===t)&&p.jsx(Fn,{adapters:a,children:p.jsx(this._hookManager.__internal_RenderThreadRuntimes,{provider:n})})});this.contextProvider=r,this._state.subscribe(()=>this._notifySubscribers()),this._hookManager=new Wh(t.runtimeHook),this.useProvider=Vt(()=>{var n;return{Provider:(n=t.adapter.unstable_Provider)!=null?n:y.Fragment}}),this.__internal_setOptions(t),this.switchToNewThread()}get threadData(){return this._state.value.threadData}getLoadThreadsPromise(){return this._loadThreadsPromise||(this._loadThreadsPromise=this._state.optimisticUpdate({execute:()=>this._options.adapter.list(),loading:t=>E(m({},t),{isLoading:!0}),then:(t,r)=>{const n=[],a=[],i={},s={};for(const o of r.threads){switch(o.status){case"regular":n.push(o.remoteId);break;case"archived":a.push(o.remoteId);break;default:{const u=o.status;throw new Error(`Unsupported state: ${u}`)}}const l=o.remoteId;i[o.remoteId]=l,s[l]={id:o.remoteId,remoteId:o.remoteId,externalId:o.externalId,status:o.status,title:o.title,initializeTask:Promise.resolve({remoteId:o.remoteId,externalId:o.externalId})}}return E(m({},t),{threadIds:n,archivedThreadIds:a,threadIdMap:m(m({},t.threadIdMap),i),threadData:m(m({},t.threadData),s)})}}).then(()=>{})),this._loadThreadsPromise}__internal_setOptions(t){var n;if(this._options===t)return;this._options=t;const r=(n=t.adapter.unstable_Provider)!=null?n:y.Fragment;r!==this.useProvider.getState().Provider&&this.useProvider.setState({Provider:r},!0),this._hookManager.setRuntimeHook(t.runtimeHook)}__internal_load(){this.getLoadThreadsPromise()}get isLoading(){return this._state.value.isLoading}get threadIds(){return this._state.value.threadIds}get archivedThreadIds(){return this._state.value.archivedThreadIds}get newThreadId(){return this._state.value.newThreadId}get mainThreadId(){return this._mainThreadId}getMainThreadRuntimeCore(){const t=this._hookManager.getThreadRuntimeCore(this._mainThreadId);return t||Jh}getThreadRuntimeCore(t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");const n=this._hookManager.getThreadRuntimeCore(r.id);if(!n)throw new Error("Thread not found");return n}getItemById(t){return Xr(this._state.value,t)}switchToThread(t){return M(this,null,function*(){let r=this.getItemById(t);if(!r){const a=yield this._options.adapter.fetch(t),i=this._state.value,s=a.remoteId,o=E(m({},i.threadData),{[s]:{id:s,initializeTask:Promise.resolve({remoteId:a.remoteId,externalId:a.externalId}),remoteId:a.remoteId,externalId:a.externalId,status:a.status,title:a.title}}),l=E(m({},i.threadIdMap),{[a.remoteId]:s}),u=a.status==="regular"?[...i.threadIds,a.remoteId]:i.threadIds,c=a.status==="archived"?[...i.archivedThreadIds,a.remoteId]:i.archivedThreadIds;this._state.update(E(m({},i),{threadIds:u,archivedThreadIds:c,threadIdMap:l,threadData:o})),r=this.getItemById(t)}if(!r)throw new Error("Thread not found");if(this._mainThreadId===r.id)return;const n=this._hookManager.startThreadRuntime(r.id);this.mainThreadId!==void 0?yield n:n.then(()=>this._notifySubscribers()),r.status==="archived"&&(yield this.unarchive(r.id)),this._mainThreadId=r.id,this._notifySubscribers()})}switchToNewThread(){return M(this,null,function*(){for(;this._state.baseValue.newThreadId!==void 0&&this._state.value.newThreadId===void 0;)yield this._state.waitForUpdate();const t=this._state.value;let r=this._state.value.newThreadId;if(r===void 0){do r=`__LOCALID_${Ct()}`;while(t.threadIdMap[r]);const n=r;this._state.update(E(m({},t),{newThreadId:r,threadIdMap:E(m({},t.threadIdMap),{[r]:n}),threadData:E(m({},t.threadData),{[n]:{status:"new",id:r,remoteId:void 0,externalId:void 0,title:void 0}})}))}return this.switchToThread(r)})}rename(t,r){const n=this.getItemById(t);if(!n)throw new Error("Thread not found");if(n.status==="new")throw new Error("Thread is not yet initialized");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){const{remoteId:a}=yield n.initializeTask;return this._options.adapter.rename(a,r)}),optimistic:a=>{const i=Xr(a,t);return i?E(m({},a),{threadData:E(m({},a.threadData),{[i.id]:E(m({},i),{title:r})})}):a}})}_ensureThreadIsNotMain(t){return M(this,null,function*(){if(t===this.newThreadId)throw new Error("Cannot ensure new thread is not main");t===this._mainThreadId&&(yield this.switchToNewThread())})}archive(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular")throw new Error("Thread is not yet initialized or already archived");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){yield this._ensureThreadIsNotMain(r.id);const{remoteId:n}=yield r.initializeTask;return this._options.adapter.archive(n)}),optimistic:n=>Qr(n,r.id,"archived")})})}unarchive(t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="archived")throw new Error("Thread is not archived");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){try{const{remoteId:n}=yield r.initializeTask;return yield this._options.adapter.unarchive(n)}catch(n){throw yield this._ensureThreadIsNotMain(r.id),n}}),optimistic:n=>Qr(n,r.id,"regular")})}delete(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular"&&r.status!=="archived")throw new Error("Thread is not yet initialized");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){yield this._ensureThreadIsNotMain(r.id);const{remoteId:n}=yield r.initializeTask;return yield this._options.adapter.delete(n)}),optimistic:n=>Qr(n,r.id,"deleted")})})}detach(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular"&&r.status!=="archived")throw new Error("Thread is not yet initialized");yield this._ensureThreadIsNotMain(r.id),this._hookManager.stopThreadRuntime(r.id)})}},Gh=class extends En{constructor(t){super();C(this,"threads");this.threads=new Yh(t,this._contextProvider)}get RenderComponent(){return this.threads.__internal_RenderComponent}},Xh=e=>{const[t]=y.useState(()=>new Gh(e));return y.useEffect(()=>{t.threads.__internal_setOptions(e),t.threads.__internal_load()},[t,e]),y.useMemo(()=>new Xn(t),[t])},Ss=e=>{if(Kr().threadListItem.source!==null){if(!e.allowNesting)throw new Error("useRemoteThreadListRuntime cannot be nested inside another RemoteThreadListRuntime. Set allowNesting: true to allow nesting (the inner runtime will become a no-op).");return e.runtimeHook()}return Xh(e)},Qh=Symbol.for("react.lazy"),Zr=Y[" use ".trim().toString()];function Zh(e){return typeof e=="object"&&e!==null&&"then"in e}function _s(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===Qh&&"_payload"in e&&Zh(e._payload)}function Ts(e){const t=ef(e),r=Y.forwardRef((n,a)=>{let u=n,{children:i}=u,s=V(u,["children"]);_s(i)&&typeof Zr=="function"&&(i=Zr(i._payload));const o=Y.Children.toArray(i),l=o.find(rf);if(l){const c=l.props.children,d=o.map(f=>f===l?Y.Children.count(c)>1?Y.Children.only(null):Y.isValidElement(c)?c.props.children:null:f);return p.jsx(t,E(m({},s),{ref:a,children:Y.isValidElement(c)?Y.cloneElement(c,void 0,d):null}))}return p.jsx(t,E(m({},s),{ref:a,children:i}))});return r.displayName=`${e}.Slot`,r}var Cs=Ts("Slot");function ef(e){const t=Y.forwardRef((r,n)=>{let s=r,{children:a}=s,i=V(s,["children"]);if(_s(a)&&typeof Zr=="function"&&(a=Zr(a._payload)),Y.isValidElement(a)){const o=af(a),l=nf(i,a.props);return a.type!==Y.Fragment&&(l.ref=n?Gi(n,o):o),Y.cloneElement(a,l)}return Y.Children.count(a)>1?Y.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var tf=Symbol("radix.slottable");function rf(e){return Y.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===tf}function nf(e,t){const r=m({},t);for(const n in t){const a=e[n],i=t[n];/^on[A-Z]/.test(n)?a&&i?r[n]=(...o)=>{const l=i(...o);return a(...o),l}:a&&(r[n]=a):n==="style"?r[n]=m(m({},a),i):n==="className"&&(r[n]=[a,i].filter(Boolean).join(" "))}return m(m({},e),r)}function af(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var sf=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],mt=sf.reduce((e,t)=>{const r=Ts(`Primitive.${t}`),n=Y.forwardRef((a,i)=>{const u=a,{asChild:s}=u,o=V(u,["asChild"]),l=s?r:t;return typeof window!="undefined"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(l,E(m({},o),{ref:i}))});return n.displayName=`Primitive.${t}`,E(m({},e),{[t]:n})},{});function Wt(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e==null||e(a),r===!1||!a.defaultPrevented)return t==null?void 0:t(a)}}var fr=(e,t,r=[])=>{const n=y.forwardRef((a,i)=>{var u;const s={},o={};Object.keys(a).forEach(c=>{r.includes(c)?s[c]=a[c]:o[c]=a[c]});const l=(u=t(s))!=null?u:void 0;return p.jsx(mt.button,E(m({type:"button"},o),{ref:i,disabled:o.disabled||!l,onClick:Wt(o.onClick,l)}))});return n.displayName=e,n};function of(e,t=globalThis==null?void 0:globalThis.document){const r=Pt(e);Y.useEffect(()=>{const n=a=>{a.key==="Escape"&&r(a)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[r,t])}var lf=()=>{const e=fe();return y.useCallback(()=>{e.attachment().remove()},[e])},uf=fr("AttachmentPrimitive.Remove",lf),pr=e=>{const t=y.useRef(void 0);return y.useCallback(n=>{t.current&&t.current(),n&&(t.current=e(n))},[e])},Is=(e,t)=>{const r=y.useCallback(n=>{if(!e)return;const a=e(),i=()=>{const o=t?t(n):n.offsetHeight;a.setHeight(o)},s=new ResizeObserver(i);return s.observe(n),i(),()=>{s.disconnect(),a.unregister()}},[e,t]);return pr(r)},Es=y.createContext(!1),As=(e,t)=>{const r=e.match(/^([\d.]+)(em|px|rem)$/);if(!r)return 0;const n=parseFloat(r[1]),a=r[2];if(a==="px")return n;if(a==="em"){const i=parseFloat(getComputedStyle(t).fontSize)||16;return n*i}if(a==="rem"){const i=parseFloat(getComputedStyle(document.documentElement).fontSize)||16;return n*i}return 0},Ms=({children:e,fillClampThreshold:t="10em",fillClampOffset:r="6em"})=>{const n=te(({message:l})=>l.isLast&&l.index>=2),a=qn({optional:!0}),i=y.useContext(Es),s=y.useCallback(l=>{if(!a||i)return;const u=()=>{const c=a.getState();if(c.turnAnchor==="top"&&n){const{viewport:d,inset:f,userMessage:h}=c.height,g=As(t,l),v=As(r,l),w=h<=g?h:v,b=Math.max(0,d-f-w);l.style.minHeight=`${b}px`,l.style.flexShrink="0",l.style.transition="min-height 0s"}else l.style.minHeight="",l.style.flexShrink="",l.style.transition=""};return u(),a.subscribe(u)},[a,n,i,t,r]),o=pr(s);return p.jsx(Es.Provider,{value:!0,children:p.jsx(Cs,{ref:o,children:e})})};Ms.displayName="ThreadPrimitive.ViewportSlack";var cf=()=>{const e=fe(),t=te(()=>e.message()),r=y.useCallback(n=>{const a=()=>{t.setIsHovering(!0)},i=()=>{t.setIsHovering(!1)};return n.addEventListener("mouseenter",a),n.addEventListener("mouseleave",i),n.matches(":hover")&&t.setIsHovering(!0),()=>{n.removeEventListener("mouseenter",a),n.removeEventListener("mouseleave",i),t.setIsHovering(!1)}},[t]);return pr(r)},df=()=>{const e=Yr(a=>a.turnAnchor),t=Yr(a=>a.registerUserMessageHeight),r=te(({thread:a,message:i})=>{var s;return e==="top"&&i.role==="user"&&i.index===a.messages.length-2&&((s=a.messages.at(-1))==null?void 0:s.role)==="assistant"}),n=y.useCallback(a=>a.offsetHeight,[]);return Is(r?t:null,n)},Zn=y.forwardRef((e,t)=>{const r=cf(),n=df(),a=Jr(t,r,n);return p.jsx(Ms,{children:p.jsx(mt.div,E(m({},e),{ref:a}))})});Zn.displayName="MessagePrimitive.Root";var Ps=()=>te(({part:t})=>{if(t.type!=="text"&&t.type!=="reasoning")throw new Error("MessagePartText can only be used inside text or reasoning message parts.");return t}),Ns=y.forwardRef((a,n)=>{var i=a,{smooth:e=!0,component:t="span"}=i,r=V(i,["smooth","component"]);const{text:s,status:o}=vs(Ps(),e);return p.jsx(t,E(m({"data-status":o.type},r),{ref:n,children:s}))});Ns.displayName="MessagePartPrimitive.Text";var hf=()=>te(({part:t})=>{if(t.type!=="image")throw new Error("MessagePartImage can only be used inside image message parts.");return t}),Ls=y.forwardRef((e,t)=>{const{image:r}=hf();return p.jsx(mt.img,E(m({src:r},e),{ref:t}))});Ls.displayName="MessagePartPrimitive.Image";var Ds=({children:e})=>te(({part:r})=>r.status.type==="running")?e:null;Ds.displayName="MessagePartPrimitive.InProgress";const Os=e=>Symbol.iterator in e,Fs=e=>"entries"in e,Bs=(e,t)=>{const r=e instanceof Map?e:new Map(e.entries()),n=t instanceof Map?t:new Map(t.entries());if(r.size!==n.size)return!1;for(const[a,i]of r)if(!n.has(a)||!Object.is(i,n.get(a)))return!1;return!0},ff=(e,t)=>{const r=e[Symbol.iterator](),n=t[Symbol.iterator]();let a=r.next(),i=n.next();for(;!a.done&&!i.done;){if(!Object.is(a.value,i.value))return!1;a=r.next(),i=n.next()}return!!a.done&&!!i.done};function pf(e,t){return Object.is(e,t)?!0:typeof e!="object"||e===null||typeof t!="object"||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:Os(e)&&Os(t)?Fs(e)&&Fs(t)?Bs(e,t):ff(e,t):Bs({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function mf(e){const t=y.useRef(void 0);return r=>{const n=e(r);return pf(t.current,n)?t.current:t.current=n}}var zs=e=>{let t=-1;return{startGroup:r=>{t===-1&&(t=r)},endGroup:(r,n)=>{t!==-1&&(n.push({type:e,startIndex:t,endIndex:r}),t=-1)},finalize:(r,n)=>{t!==-1&&n.push({type:e,startIndex:t,endIndex:r})}}},gf=e=>{const t=[],r=zs("toolGroup"),n=zs("reasoningGroup");for(let a=0;a<e.length;a++){const i=e[a];i==="tool-call"?(n.endGroup(a-1,t),r.startGroup(a)):i==="reasoning"?(r.endGroup(a-1,t),n.startGroup(a)):(r.endGroup(a-1,t),n.endGroup(a-1,t),t.push({type:"single",index:a}))}return r.finalize(e.length-1,t),n.finalize(e.length-1,t),t},yf=()=>{const e=te(mf(t=>t.message.parts.map(r=>r.type)));return y.useMemo(()=>e.length===0?[]:gf(e),[e])},bf=r=>{var n=r,{Fallback:e}=n,t=V(n,["Fallback"]);const a=te(({tools:i})=>{var o,l;const s=(o=i.tools[t.toolName])!=null?o:e;return Array.isArray(s)?(l=s[0])!=null?l:e:s});return a?p.jsx(a,m({},t)):null},gt={Text:()=>p.jsxs("p",{style:{whiteSpace:"pre-line"},children:[p.jsx(Ns,{}),p.jsx(Ds,{children:p.jsx("span",{style:{fontFamily:"revert"},children:" ●"})})]}),Reasoning:()=>null,Source:()=>null,Image:()=>p.jsx(Ls,{}),File:()=>null,Unstable_Audio:()=>null,ToolGroup:({children:e})=>e,ReasoningGroup:({children:e})=>e},wf=({components:{Text:e=gt.Text,Reasoning:t=gt.Reasoning,Image:r=gt.Image,Source:n=gt.Source,File:a=gt.File,Unstable_Audio:i=gt.Unstable_Audio,tools:s={}}={}})=>{var c,d,f;const o=fe(),l=te(({part:h})=>h),u=l.type;if(u==="tool-call"){const h=o.part().addToolResult,g=o.part().resumeToolCall;if("Override"in s)return p.jsx(s.Override,E(m({},l),{addResult:h,resume:g}));const v=(d=(c=s.by_name)==null?void 0:c[l.toolName])!=null?d:s.Fallback;return p.jsx(bf,E(m({},l),{Fallback:v,addResult:h,resume:g}))}if(((f=l.status)==null?void 0:f.type)==="requires-action")throw new Error("Encountered unexpected requires-action status");switch(u){case"text":return p.jsx(e,m({},l));case"reasoning":return p.jsx(t,m({},l));case"source":return p.jsx(n,m({},l));case"image":return p.jsx(r,m({},l));case"file":return p.jsx(a,m({},l));case"audio":return p.jsx(i,m({},l));case"data":return null;default:const h=u;throw new Error(`Unknown message part type: ${h}`)}},en=y.memo(({index:e,components:t})=>p.jsx(hh,{index:e,children:p.jsx(wf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u,c,d,f,h,g,v,w,b,I,T;return e.index===t.index&&((r=e.components)==null?void 0:r.Text)===((n=t.components)==null?void 0:n.Text)&&((a=e.components)==null?void 0:a.Reasoning)===((i=t.components)==null?void 0:i.Reasoning)&&((s=e.components)==null?void 0:s.Source)===((o=t.components)==null?void 0:o.Source)&&((l=e.components)==null?void 0:l.Image)===((u=t.components)==null?void 0:u.Image)&&((c=e.components)==null?void 0:c.File)===((d=t.components)==null?void 0:d.File)&&((f=e.components)==null?void 0:f.Unstable_Audio)===((h=t.components)==null?void 0:h.Unstable_Audio)&&((g=e.components)==null?void 0:g.tools)===((v=t.components)==null?void 0:v.tools)&&((w=e.components)==null?void 0:w.ToolGroup)===((b=t.components)==null?void 0:b.ToolGroup)&&((I=e.components)==null?void 0:I.ReasoningGroup)===((T=t.components)==null?void 0:T.ReasoningGroup)});en.displayName="MessagePrimitive.PartByIndex";var xf=({status:e,component:t})=>p.jsx(gh,{text:"",isRunning:e.type==="running",children:p.jsx(t,{type:"text",text:"",status:e})}),vf=Object.freeze({type:"complete"}),kf=({components:e})=>{var r;const t=te(n=>{var a;return(a=n.message.status)!=null?a:vf});return e!=null&&e.Empty?p.jsx(e.Empty,{status:t}):p.jsx(xf,{status:t,component:(r=e==null?void 0:e.Text)!=null?r:gt.Text})},Sf=y.memo(kf,(e,t)=>{var r,n,a,i;return((r=e.components)==null?void 0:r.Empty)===((n=t.components)==null?void 0:n.Empty)&&((a=e.components)==null?void 0:a.Text)===((i=t.components)==null?void 0:i.Text)}),ea=({components:e})=>{const t=te(({message:a})=>a.parts.length),r=yf(),n=y.useMemo(()=>t===0?p.jsx(Sf,{components:e}):r.map(a=>{var i,s;if(a.type==="single")return p.jsx(en,{index:a.index,components:e},a.index);if(a.type==="toolGroup"){const o=(i=e==null?void 0:e.ToolGroup)!=null?i:gt.ToolGroup;return p.jsx(o,{startIndex:a.startIndex,endIndex:a.endIndex,children:Array.from({length:a.endIndex-a.startIndex+1},(l,u)=>p.jsx(en,{index:a.startIndex+u,components:e},u))},`tool-${a.startIndex}`)}else{const o=(s=e==null?void 0:e.ReasoningGroup)!=null?s:gt.ReasoningGroup;return p.jsx(o,{startIndex:a.startIndex,endIndex:a.endIndex,children:Array.from({length:a.endIndex-a.startIndex+1},(l,u)=>p.jsx(en,{index:a.startIndex+u,components:e},u))},`reasoning-${a.startIndex}`)}}),[r,e,t]);return p.jsx(p.Fragment,{children:n})};ea.displayName="MessagePrimitive.Parts";var _f=(e,t)=>{var n,a,i;const r=t.type;switch(r){case"image":return(n=e==null?void 0:e.Image)!=null?n:e==null?void 0:e.Attachment;case"document":return(a=e==null?void 0:e.Document)!=null?a:e==null?void 0:e.Attachment;case"file":return(i=e==null?void 0:e.File)!=null?i:e==null?void 0:e.Attachment;default:const s=r;throw new Error(`Unknown attachment type: ${s}`)}},Tf=({components:e})=>{const t=te(({attachment:n})=>n);if(!t)return null;const r=_f(e,t);return r?p.jsx(r,{}):null},Rs=y.memo(({index:e,components:t})=>p.jsx(fh,{index:e,children:p.jsx(Tf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u;return e.index===t.index&&((r=e.components)==null?void 0:r.Image)===((n=t.components)==null?void 0:n.Image)&&((a=e.components)==null?void 0:a.Document)===((i=t.components)==null?void 0:i.Document)&&((s=e.components)==null?void 0:s.File)===((o=t.components)==null?void 0:o.File)&&((l=e.components)==null?void 0:l.Attachment)===((u=t.components)==null?void 0:u.Attachment)});Rs.displayName="MessagePrimitive.AttachmentByIndex";var js=({components:e})=>{const t=te(({message:n})=>n.role!=="user"?0:n.attachments.length);return y.useMemo(()=>Array.from({length:t},(n,a)=>p.jsx(Rs,{index:a,components:e},a)),[t,e])};js.displayName="MessagePrimitive.Attachments";var $s=()=>{const e=fe(),t=te(n=>n.thread.isRunning||!n.composer.isEditing||n.composer.isEmpty),r=y.useCallback(()=>{e.composer().send()},[e]);return t?null:r},Cf=fr("ComposerPrimitive.Send",$s),Us=y.forwardRef((n,r)=>{var a=n,{onSubmit:e}=a,t=V(a,["onSubmit"]);const i=$s(),s=o=>{o.preventDefault(),i&&i()};return p.jsx(mt.form,E(m({},t),{ref:r,onSubmit:Wt(e,s)}))});Us.displayName="ComposerPrimitive.Root";function ta(){return ta=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ta.apply(null,arguments)}function If(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Ef=y.useLayoutEffect,Af=function(t){var r=y.useRef(t);return Ef(function(){r.current=t}),r},Hs=function(t,r){if(typeof t=="function"){t(r);return}t.current=r},Mf=function(t,r){var n=y.useRef();return y.useCallback(function(a){t.current=a,n.current&&Hs(n.current,null),n.current=r,r&&Hs(r,a)},[r])},qs={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0",display:"block"},Pf=function(t){Object.keys(qs).forEach(function(r){t.style.setProperty(r,qs[r],"important")})},Vs=Pf,Be=null,Ws=function(t,r){var n=t.scrollHeight;return r.sizingStyle.boxSizing==="border-box"?n+r.borderSize:n-r.paddingSize};function Nf(e,t,r,n){r===void 0&&(r=1),n===void 0&&(n=1/0),Be||(Be=document.createElement("textarea"),Be.setAttribute("tabindex","-1"),Be.setAttribute("aria-hidden","true"),Vs(Be)),Be.parentNode===null&&document.body.appendChild(Be);var a=e.paddingSize,i=e.borderSize,s=e.sizingStyle,o=s.boxSizing;Object.keys(s).forEach(function(f){var h=f;Be.style[h]=s[h]}),Vs(Be),Be.value=t;var l=Ws(Be,e);Be.value=t,l=Ws(Be,e),Be.value="x";var u=Be.scrollHeight-a,c=u*r;o==="border-box"&&(c=c+a+i),l=Math.max(c,l);var d=u*n;return o==="border-box"&&(d=d+a+i),l=Math.min(d,l),[l,u]}var Js=function(){},Lf=function(t,r){return t.reduce(function(n,a){return n[a]=r[a],n},{})},Df=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","boxSizing","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","paddingBottom","paddingLeft","paddingRight","paddingTop","tabSize","textIndent","textRendering","textTransform","width","wordBreak","wordSpacing","scrollbarGutter"],Of=!!document.documentElement.currentStyle,Ff=function(t){var r=window.getComputedStyle(t);if(r===null)return null;var n=Lf(Df,r),a=n.boxSizing;if(a==="")return null;Of&&a==="border-box"&&(n.width=parseFloat(n.width)+parseFloat(n.borderRightWidth)+parseFloat(n.borderLeftWidth)+parseFloat(n.paddingRight)+parseFloat(n.paddingLeft)+"px");var i=parseFloat(n.paddingBottom)+parseFloat(n.paddingTop),s=parseFloat(n.borderBottomWidth)+parseFloat(n.borderTopWidth);return{sizingStyle:n,paddingSize:i,borderSize:s}},Bf=Ff;function ra(e,t,r){var n=Af(r);Y.useLayoutEffect(function(){var a=function(s){return n.current(s)};if(e)return e.addEventListener(t,a),function(){return e.removeEventListener(t,a)}},[])}var zf=function(t,r){ra(document.body,"reset",function(n){t.current.form===n.target&&r(n)})},Rf=function(t){ra(window,"resize",t)},jf=function(t){ra(document.fonts,"loadingdone",t)},$f=["cacheMeasurements","maxRows","minRows","onChange","onHeightChange"],Uf=function(t,r){var n=t.cacheMeasurements,a=t.maxRows,i=t.minRows,s=t.onChange,o=s===void 0?Js:s,l=t.onHeightChange,u=l===void 0?Js:l,c=If(t,$f),d=c.value!==void 0,f=Y.useRef(null),h=Mf(f,r),g=Y.useRef(0),v=Y.useRef(),w=function(){var T=f.current,D=n&&v.current?v.current:Bf(T);if(D){v.current=D;var B=Nf(D,T.value||T.placeholder||"x",i,a),_=B[0],j=B[1];g.current!==_&&(g.current=_,T.style.setProperty("height",_+"px","important"),u(_,{rowHeight:j}))}},b=function(T){d||w(),o(T)};return Y.useLayoutEffect(w),zf(f,function(){if(!d){var I=f.current.value;requestAnimationFrame(function(){var T=f.current;T&&I!==T.value&&w()})}}),Rf(w),jf(w),Y.createElement("textarea",ta({},c,{onChange:b,ref:h}))},Hf=Y.forwardRef(Uf),Ks=e=>{const t=Pt(e),r=Yr(n=>n.onScrollToBottom);y.useEffect(()=>r(t),[r,t])},Ys=y.forwardRef((g,h)=>{var v=g,{autoFocus:e=!1,asChild:t,disabled:r,onChange:n,onKeyDown:a,onPaste:i,submitOnEnter:s=!0,cancelOnEscape:o=!0,unstable_focusOnRunStart:l=!0,unstable_focusOnScrollToBottom:u=!0,unstable_focusOnThreadSwitched:c=!0,addAttachmentOnPaste:d=!0}=v,f=V(v,["autoFocus","asChild","disabled","onChange","onKeyDown","onPaste","submitOnEnter","cancelOnEscape","unstable_focusOnRunStart","unstable_focusOnScrollToBottom","unstable_focusOnThreadSwitched","addAttachmentOnPaste"]);const w=fe(),b=te(({composer:S})=>S.isEditing?S.text:""),I=t?Cs:Hf,T=te(({thread:S})=>S.isDisabled)||r,D=y.useRef(null),B=Jr(h,D);of(S=>{var N;if(!o||!((N=D.current)!=null&&N.contains(S.target)))return;const P=w.composer();P.getState().canCancel&&(P.cancel(),S.preventDefault())});const _=S=>{var P,N;T||!s||S.nativeEvent.isComposing||S.key==="Enter"&&S.shiftKey===!1&&(w.thread().getState().isRunning||(S.preventDefault(),(N=(P=D.current)==null?void 0:P.closest("form"))==null||N.requestSubmit()))},j=S=>M(null,null,function*(){var H;if(!d)return;const P=w.thread().getState().capabilities,N=Array.from(((H=S.clipboardData)==null?void 0:H.files)||[]);if(P.attachments&&N.length>0)try{S.preventDefault(),yield Promise.all(N.map(z=>w.composer().addAttachment(z)))}catch(z){console.error("Error adding attachment:",z)}}),R=e&&!T,U=y.useCallback(()=>{const S=D.current;!S||!R||(S.focus({preventScroll:!0}),S.setSelectionRange(S.value.length,S.value.length))},[R]);return y.useEffect(()=>U(),[U]),Ks(()=>{w.composer().getState().type==="thread"&&u&&U()}),y.useEffect(()=>{if(!(w.composer().getState().type!=="thread"||!l))return w.on("thread.run-start",U)},[l,U,w]),y.useEffect(()=>{if(!(w.composer().getState().type!=="thread"||!c))return w.on("thread-list-item.switched-to",U)},[c,U,w]),p.jsx(I,E(m({name:"input",value:b},f),{ref:B,disabled:T,onChange:Wt(n,S=>{w.composer().getState().isEditing&&(w.composer().setText(S.target.value),w.flushSync())}),onKeyDown:Wt(a,_),onPaste:Wt(i,j)}))});Ys.displayName="ComposerPrimitive.Input";var qf=({multiple:e=!0}={})=>{const t=te(({composer:a})=>!a.isEditing),r=fe(),n=y.useCallback(()=>{const a=document.createElement("input");a.type="file",a.multiple=e,a.hidden=!0;const i=r.composer().getState().attachmentAccept;i!=="*"&&(a.accept=i),document.body.appendChild(a),a.onchange=s=>{const o=s.target.files;if(o){for(const l of o)r.composer().addAttachment(l);document.body.removeChild(a)}},a.oncancel=()=>{(!a.files||a.files.length===0)&&document.body.removeChild(a)},a.click()},[r,e]);return t?null:n},Vf=fr("ComposerPrimitive.AddAttachment",qf,["multiple"]),Wf=(e,t)=>{var n,a,i;const r=t.type;switch(r){case"image":return(n=e==null?void 0:e.Image)!=null?n:e==null?void 0:e.Attachment;case"document":return(a=e==null?void 0:e.Document)!=null?a:e==null?void 0:e.Attachment;case"file":return(i=e==null?void 0:e.File)!=null?i:e==null?void 0:e.Attachment;default:const s=r;throw new Error(`Unknown attachment type: ${s}`)}},Jf=({components:e})=>{const t=te(({attachment:n})=>n);if(!t)return null;const r=Wf(e,t);return r?p.jsx(r,{}):null},Gs=y.memo(({index:e,components:t})=>p.jsx(ph,{index:e,children:p.jsx(Jf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u;return e.index===t.index&&((r=e.components)==null?void 0:r.Image)===((n=t.components)==null?void 0:n.Image)&&((a=e.components)==null?void 0:a.Document)===((i=t.components)==null?void 0:i.Document)&&((s=e.components)==null?void 0:s.File)===((o=t.components)==null?void 0:o.File)&&((l=e.components)==null?void 0:l.Attachment)===((u=t.components)==null?void 0:u.Attachment)});Gs.displayName="ComposerPrimitive.AttachmentByIndex";var Xs=({components:e})=>{const t=te(n=>n.composer.attachments.length);return y.useMemo(()=>Array.from({length:t},(n,a)=>p.jsx(Gs,{index:a,components:e},a)),[t,e])};Xs.displayName="ComposerPrimitive.Attachments";var Qs=y.forwardRef((e,t)=>p.jsx(mt.div,E(m({},e),{ref:t})));Qs.displayName="ThreadPrimitive.Root";var Zs=({children:e})=>te(({thread:r})=>r.messages.length===0&&!r.isLoading)?e:null;Zs.displayName="ThreadPrimitive.Empty";var Kf=e=>{const t=Pt(e),r=y.useCallback(n=>{const a=new ResizeObserver(()=>{t()}),i=new MutationObserver(()=>{t()});return a.observe(n),i.observe(n,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),()=>{a.disconnect(),i.disconnect()}},[t]);return pr(r)},Yf=({autoScroll:e,scrollToBottomOnRunStart:t=!0,scrollToBottomOnInitialize:r=!0,scrollToBottomOnThreadSwitch:n=!0})=>{const a=y.useRef(null),i=qn();e===void 0&&(e=i.getState().turnAnchor!=="top");const s=y.useRef(0),o=y.useRef(null),l=y.useCallback(h=>{const g=a.current;g&&(o.current=h,g.scrollTo({top:g.scrollHeight,behavior:h}))},[]),u=()=>{const h=a.current;if(!h)return;const g=i.getState().isAtBottom,v=Math.abs(h.scrollHeight-h.scrollTop-h.clientHeight)<1||h.scrollHeight<=h.clientHeight;!v&&s.current<h.scrollTop||(v&&(o.current=null),(v||o.current===null)&&v!==g&&hr(i).setState({isAtBottom:v})),s.current=h.scrollTop},c=Kf(()=>{const h=o.current;h?l(h):e&&i.getState().isAtBottom&&l("instant"),u()}),d=pr(h=>(h.addEventListener("scroll",u),()=>{h.removeEventListener("scroll",u)}));return Ks(({behavior:h})=>{l(h)}),Hn("thread.run-start",()=>{t&&(o.current="auto",requestAnimationFrame(()=>{l("auto")}))}),Hn("thread.initialize",()=>{r&&(o.current="instant",requestAnimationFrame(()=>{l("instant")}))}),Hn("thread-list-item.switched-to",()=>{n&&(o.current="instant",requestAnimationFrame(()=>{l("instant")}))}),Jr(c,d,a)},Gf=()=>{const e=Yr(r=>r.registerViewport),t=y.useCallback(r=>r.clientHeight,[]);return Is(e,t)},eo=y.forwardRef((o,s)=>{var l=o,{autoScroll:e,scrollToBottomOnRunStart:t,scrollToBottomOnInitialize:r,scrollToBottomOnThreadSwitch:n,children:a}=l,i=V(l,["autoScroll","scrollToBottomOnRunStart","scrollToBottomOnInitialize","scrollToBottomOnThreadSwitch","children"]);const u=Yf({autoScroll:e,scrollToBottomOnRunStart:t,scrollToBottomOnInitialize:r,scrollToBottomOnThreadSwitch:n}),c=Gf(),d=Jr(s,u,c);return p.jsx(mt.div,E(m({},i),{ref:d,children:a}))});eo.displayName="ThreadPrimitive.ViewportScrollable";var to=y.forwardRef((n,r)=>{var a=n,{turnAnchor:e}=a,t=V(a,["turnAnchor"]);return p.jsx(ds,{options:{turnAnchor:e},children:p.jsx(eo,E(m({},t),{ref:r}))})});to.displayName="ThreadPrimitive.Viewport";var ro=(e,t)=>e.Message===t.Message&&e.EditComposer===t.EditComposer&&e.UserEditComposer===t.UserEditComposer&&e.AssistantEditComposer===t.AssistantEditComposer&&e.SystemEditComposer===t.SystemEditComposer&&e.UserMessage===t.UserMessage&&e.AssistantMessage===t.AssistantMessage&&e.SystemMessage===t.SystemMessage,Xf=()=>null,Qf=(e,t,r)=>{var n,a,i,s,o,l,u,c,d,f,h,g;switch(t){case"user":return r?(i=(a=(n=e.UserEditComposer)!=null?n:e.EditComposer)!=null?a:e.UserMessage)!=null?i:e.Message:(s=e.UserMessage)!=null?s:e.Message;case"assistant":return r?(u=(l=(o=e.AssistantEditComposer)!=null?o:e.EditComposer)!=null?l:e.AssistantMessage)!=null?u:e.Message:(c=e.AssistantMessage)!=null?c:e.Message;case"system":return r?(h=(f=(d=e.SystemEditComposer)!=null?d:e.EditComposer)!=null?f:e.SystemMessage)!=null?h:e.Message:(g=e.SystemMessage)!=null?g:Xf;default:const v=t;throw new Error(`Unknown message role: ${v}`)}},Zf=({components:e})=>{const t=te(({message:a})=>a.role),r=te(({message:a})=>a.composer.isEditing),n=Qf(e,t,r);return p.jsx(n,{})},no=y.memo(({index:e,components:t})=>p.jsx(dh,{index:e,children:p.jsx(Zf,{components:t})}),(e,t)=>e.index===t.index&&ro(e.components,t.components));no.displayName="ThreadPrimitive.MessageByIndex";var ao=({components:e})=>{const t=te(({thread:n})=>n.messages.length);return y.useMemo(()=>t===0?null:Array.from({length:t},(n,a)=>p.jsx(no,{index:a,components:e},a)),[t,e])};ao.displayName="ThreadPrimitive.Messages";var ep=y.memo(ao,(e,t)=>ro(e.components,t.components)),io=y.forwardRef((a,n)=>{var i=a,{onClick:e,disabled:t}=i,r=V(i,["onClick","disabled"]);const s=te(({threads:l})=>l.newThreadId===l.mainThreadId),o=fe();return p.jsx(mt.button,E(m(m({type:"button"},s?{"data-active":"true","aria-current":"true"}:null),r),{ref:n,disabled:t,onClick:Wt(e,()=>{o.threads().switchToNewThread()})}))});io.displayName="ThreadListPrimitive.New";var so=y.memo(({index:e,archived:t=!1,components:r})=>{const n=r.ThreadListItem;return p.jsx(uh,{index:e,archived:t,children:p.jsx(n,{})})},(e,t)=>e.index===t.index&&e.archived===t.archived&&e.components.ThreadListItem===t.components.ThreadListItem);so.displayName="ThreadListPrimitive.ItemByIndex";var oo=({archived:e=!1,components:t})=>{const r=te(({threads:a})=>e?a.archivedThreadIds.length:a.threadIds.length);return y.useMemo(()=>Array.from({length:r},(a,i)=>p.jsx(so,{index:i,archived:e,components:t},i)),[r,e,t])};oo.displayName="ThreadListPrimitive.Items";var lo=y.forwardRef((e,t)=>p.jsx(mt.div,E(m({},e),{ref:t})));lo.displayName="ThreadListPrimitive.Root";var uo=y.forwardRef((e,t)=>{const r=te(({threads:n,threadListItem:a})=>n.mainThreadId===a.id);return p.jsx(mt.div,E(m(m({},r?{"data-active":"true","aria-current":"true"}:null),e),{ref:t}))});uo.displayName="ThreadListItemPrimitive.Root";var tp=()=>{const e=fe();return y.useCallback(()=>{e.threadListItem().delete()},[e])},rp=fr("ThreadListItemPrimitive.Delete",tp),np=()=>{const e=fe();return y.useCallback(()=>{e.threadListItem().switchTo()},[e])},ap=fr("ThreadListItemPrimitive.Trigger",np);class co{constructor(t,r,n=!1){C(this,"baseUrl");C(this,"sessionToken",null);C(this,"isProxyMode",!1);this.baseUrl=t.replace(/\/$/,""),this.isProxyMode=n,r&&(this.sessionToken=r)}setSessionToken(t){this.sessionToken=t}getUrl(t){if(this.isProxyMode){const r=`${this.baseUrl}${t.replace("/v1","")}`;return r.startsWith("/")||r.startsWith("./"),r}return`${this.baseUrl}${t}`}createOrContinueChat(t,r){return M(this,null,function*(){const n=this.getUrl("/v1/chats"),i={"Content-Type":"application/json",Accept:"text/event-stream","Accept-Encoding":"identity","Cache-Control":"no-cache","X-Accel-Buffering":"no","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(i.Authorization=`Bearer ${this.sessionToken}`);const s=E(m({},t),{stream:!0}),o=yield fetch(n,{method:"POST",headers:i,body:JSON.stringify(s),signal:r,cache:"no-store"});if(!o.ok){const l=yield o.json().catch(()=>({}));throw new Error(l.detail||l.message||`API error: ${o.status} ${o.statusText}`)}if(!o.body)throw new Error("Response body is null");return o.body})}getChat(t){return M(this,null,function*(){const r=this.getUrl(`/v1/chats/${t}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const a=yield fetch(r,{method:"GET",headers:n});if(!a.ok){const i=yield a.json().catch(()=>({}));throw new Error(i.detail||i.message||`API error: ${a.status} ${a.statusText}`)}return a.json()})}listChats(t){return M(this,null,function*(){const r=this.getUrl("/v1/chats"),n=r.startsWith("/")||r.startsWith("./")?new URL(r,window.location.origin):new URL(r);t!=null&&t.limit&&n.searchParams.set("limit",t.limit.toString()),t!=null&&t.cursor&&n.searchParams.set("cursor",t.cursor),t!=null&&t["expand[]"]&&t["expand[]"].forEach(s=>{n.searchParams.append("expand[]",s)});const a={"Content-Type":"application/json"};this.sessionToken&&(a.Authorization=`Bearer ${this.sessionToken}`);const i=yield fetch(n.toString(),{method:"GET",headers:a});if(!i.ok){const s=yield i.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${i.status} ${i.statusText}`)}return i.json()})}generateIdempotencyKey(){try{if(typeof crypto!="undefined"&&crypto.randomUUID)return crypto.randomUUID()}catch(n){}const t=n=>Array.from({length:n},()=>Math.floor(Math.random()*16).toString(16)).join(""),r=()=>{const n=["8","9","a","b"];return n[Math.floor(Math.random()*n.length)]};return`${t(8)}-${t(4)}-4${t(3)}-${r()}${t(3)}-${t(12)}`}updateChat(t,r){return M(this,null,function*(){const n=`/v1/chats/${t}`,a=this.getUrl(n),i=a.startsWith("/")||a.startsWith("./")?new URL(a,window.location.origin):new URL(a),o={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(o.Authorization=`Bearer ${this.sessionToken}`);const l=yield fetch(i.toString(),{method:"PATCH",headers:o,body:JSON.stringify(r)});if(!l.ok){const c=yield l.text();let d={};try{d=JSON.parse(c)}catch(f){d={detail:c}}throw new Error(d.detail||d.message||`API error: ${l.status} ${l.statusText}`)}if(l.status===204)return{};const u=yield l.text();if(!u)return{};try{return JSON.parse(u)}catch(c){return{}}})}deleteChat(t){return M(this,null,function*(){const r=`/v1/chats/${t}`,n=this.getUrl(r),a=n.startsWith("/")||n.startsWith("./")?new URL(n,window.location.origin):new URL(n),s={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(s.Authorization=`Bearer ${this.sessionToken}`);const o=yield fetch(a.toString(),{method:"DELETE",headers:s});if(!o.ok){const l=yield o.json().catch(()=>({}));throw new Error(l.detail||l.message||`API error: ${o.status} ${o.statusText}`)}})}listModels(t){return M(this,null,function*(){const r=this.getUrl("/v1/models"),n=r.startsWith("/")||r.startsWith("./")?new URL(r,window.location.origin):new URL(r);t!=null&&t.limit&&n.searchParams.set("limit",t.limit.toString()),t!=null&&t.cursor&&n.searchParams.set("cursor",t.cursor),t!=null&&t["expand[]"]&&t["expand[]"].forEach(s=>{n.searchParams.append("expand[]",s)});const a={"Content-Type":"application/json"};this.sessionToken&&(a.Authorization=`Bearer ${this.sessionToken}`);const i=yield fetch(n.toString(),{method:"GET",headers:a});if(!i.ok){const s=yield i.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${i.status} ${i.statusText}`)}return i.json()})}getModel(t){return M(this,null,function*(){const r=this.getUrl(`/v1/models/${t}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const a=yield fetch(r,{method:"GET",headers:n});if(!a.ok){const i=yield a.json().catch(()=>({}));throw new Error(i.detail||i.message||`API error: ${a.status} ${a.statusText}`)}return a.json()})}uploadFile(t,r,n){return M(this,null,function*(){const a=this.getUrl("/v1/files"),i=this.generateIdempotencyKey(),s=new FormData;s.append("file",t),r&&s.append("resource_type",r),n&&s.append("resource_id",n);const o={"Idempotency-Key":i};this.sessionToken&&(o.Authorization=`Bearer ${this.sessionToken}`);const l=yield fetch(a,{method:"POST",headers:o,body:s});if(!l.ok){const u=yield l.json().catch(()=>({}));throw new Error(u.detail||u.message||`API error: ${l.status} ${l.statusText}`)}return l.json()})}}function ip(e,t){return Nr(this,null,function*(){const r=e.getReader(),n=new TextDecoder;let a="";try{for(;;){if(t!=null&&t.aborted){r.cancel();break}const{done:i,value:s}=yield new Le(r.read());if(i)break;a+=n.decode(s,{stream:!0});const o=a.split(`
|
|
5
|
+
`),Ci=class{constructor(e){this._core=e,this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.getState=this.getState.bind(this),this.remove=this.remove.bind(this),this.subscribe=this.subscribe.bind(this)}getState(){return this._core.getState()}subscribe(e){return this._core.subscribe(e)}},Ii=class extends Ci{constructor(e,t){super(e),this._composerApi=t}remove(){const e=this._composerApi.getState();if(!e)throw new Error("Composer is not available");return e.removeAttachment(this.getState().id)}},fc=class extends Ii{get source(){return"thread-composer"}},pc=class extends Ii{get source(){return"edit-composer"}},mc=class extends Ci{get source(){return"message"}constructor(e){super(e)}remove(){throw new Error("Message attachments cannot be removed")}},Ei=class extends Br{constructor(e){super(),this.config=e}getState(){return this.config.binding.getState()}outerSubscribe(e){return this.config.binding.subscribe(e)}_connect(){const e=()=>{this.notifySubscribers()};let t=this.config.binding.getState(),r=t==null?void 0:t.unstable_on(this.config.event,e);const n=()=>{var s;const i=this.config.binding.getState();i!==t&&(t=i,r==null||r(),r=(s=this.config.binding.getState())==null?void 0:s.unstable_on(this.config.event,e))},a=this.outerSubscribe(n);return()=>{a==null||a(),r==null||r()}}},Ai=Object.freeze([]),Mi=Object.freeze({}),gc=e=>{var t,r,n,a,i,s,o,l,u;return Object.freeze({type:"thread",isEditing:(t=e==null?void 0:e.isEditing)!=null?t:!1,canCancel:(r=e==null?void 0:e.canCancel)!=null?r:!1,isEmpty:(n=e==null?void 0:e.isEmpty)!=null?n:!0,attachments:(a=e==null?void 0:e.attachments)!=null?a:Ai,text:(i=e==null?void 0:e.text)!=null?i:"",role:(s=e==null?void 0:e.role)!=null?s:"user",runConfig:(o=e==null?void 0:e.runConfig)!=null?o:Mi,attachmentAccept:(l=e==null?void 0:e.attachmentAccept)!=null?l:"",value:(u=e==null?void 0:e.text)!=null?u:""})},yc=e=>{var t,r,n,a,i,s,o,l,u;return Object.freeze({type:"edit",isEditing:(t=e==null?void 0:e.isEditing)!=null?t:!1,canCancel:(r=e==null?void 0:e.canCancel)!=null?r:!1,isEmpty:(n=e==null?void 0:e.isEmpty)!=null?n:!0,text:(a=e==null?void 0:e.text)!=null?a:"",role:(i=e==null?void 0:e.role)!=null?i:"user",attachments:(s=e==null?void 0:e.attachments)!=null?s:Ai,runConfig:(o=e==null?void 0:e.runConfig)!=null?o:Mi,attachmentAccept:(l=e==null?void 0:e.attachmentAccept)!=null?l:"",value:(u=e==null?void 0:e.text)!=null?u:""})},Pi=class{constructor(e){C(this,"_eventSubscriptionSubjects",new Map);this._core=e}get path(){return this._core.path}__internal_bindMethods(){this.setText=this.setText.bind(this),this.setRunConfig=this.setRunConfig.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.addAttachment=this.addAttachment.bind(this),this.reset=this.reset.bind(this),this.clearAttachments=this.clearAttachments.bind(this),this.send=this.send.bind(this),this.cancel=this.cancel.bind(this),this.setRole=this.setRole.bind(this),this.getAttachmentByIndex=this.getAttachmentByIndex.bind(this),this.unstable_on=this.unstable_on.bind(this)}setText(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setText(e)}setRunConfig(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setRunConfig(e)}addAttachment(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");return t.addAttachment(e)}reset(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");return e.reset()}clearAttachments(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");return e.clearAttachments()}send(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");e.send()}cancel(){const e=this._core.getState();if(!e)throw new Error("Composer is not available");e.cancel()}setRole(e){const t=this._core.getState();if(!t)throw new Error("Composer is not available");t.setRole(e)}subscribe(e){return this._core.subscribe(e)}unstable_on(e,t){let r=this._eventSubscriptionSubjects.get(e);return r||(r=new Ei({event:e,binding:this._core}),this._eventSubscriptionSubjects.set(e,r)),r.subscribe(t)}},bc=class extends Pi{constructor(t){const r=new Dn({path:t.path,getState:()=>gc(t.getState()),subscribe:n=>t.subscribe(n)});super({path:t.path,getState:()=>t.getState(),subscribe:n=>r.subscribe(n)});C(this,"_getState");this._getState=r.getState.bind(r),this.__internal_bindMethods()}get path(){return this._core.path}get type(){return"thread"}getState(){return this._getState()}getAttachmentByIndex(t){return new fc(new et({path:E(m({},this.path),{attachmentSource:"thread-composer",attachmentSelector:{type:"index",index:t},ref:`${this.path.ref}${this.path.ref}.attachments[${t}]`}),getState:()=>{const n=this.getState().attachments[t];return n?E(m({},n),{source:"thread-composer"}):Ze},subscribe:r=>this._core.subscribe(r)}),this._core)}},wc=class extends Pi{constructor(t,r){const n=new Dn({path:t.path,getState:()=>yc(t.getState()),subscribe:a=>t.subscribe(a)});super({path:t.path,getState:()=>t.getState(),subscribe:a=>n.subscribe(a)});C(this,"_getState");this._beginEdit=r,this._getState=n.getState.bind(n),this.__internal_bindMethods()}get path(){return this._core.path}get type(){return"edit"}__internal_bindMethods(){super.__internal_bindMethods(),this.beginEdit=this.beginEdit.bind(this)}getState(){return this._getState()}beginEdit(){this._beginEdit()}getAttachmentByIndex(t){return new pc(new et({path:E(m({},this.path),{attachmentSource:"edit-composer",attachmentSelector:{type:"index",index:t},ref:`${this.path.ref}${this.path.ref}.attachments[${t}]`}),getState:()=>{const n=this.getState().attachments[t];return n?E(m({},n),{source:"edit-composer"}):Ze},subscribe:r=>this._core.subscribe(r)}),this._core)}},xc=class kn{constructor(t=null){C(this,"_state");this._state=t}get state(){return this._state}append(t){this._state=t.reduce((r,n)=>kn.apply(r,n),this._state)}static apply(t,r){const n=r.type;switch(n){case"set":return kn.updatePath(t,r.path,()=>r.value);case"append-text":return kn.updatePath(t,r.path,a=>{if(typeof a!="string")throw new Error(`Expected string at path [${r.path.join(", ")}]`);return a+r.value});default:{const a=n;throw new Error(`Invalid operation type: ${a}`)}}}static updatePath(t,r,n){if(r.length===0)return n(t);if(t!=null||(t={}),typeof t!="object")throw new Error(`Invalid path: [${r.join(", ")}]`);const[a,...i]=r;if(Array.isArray(t)){const o=Number(a);if(Number.isNaN(o))throw new Error(`Expected array index at [${r.join(", ")}]`);if(o>t.length||o<0)throw new Error("Insert array index out of bounds");const l=[...t];return l[o]=this.updatePath(l[o],i,n),l}const s=m({},t);return s[a]=this.updatePath(s[a],i,n),s}},vc=({unstable_state:e=null}={})=>({role:"assistant",status:{type:"running"},parts:[],get content(){return this.parts},metadata:{unstable_state:e,unstable_data:[],unstable_annotations:[],steps:[],custom:{}}}),$r=(e,t,r)=>{if(e.parts.length===0)throw new Error("No parts available to update.");if(t.path.length!==1)throw new Error("Nested paths are not supported yet.");const n=t.path[0],a=r(e.parts[n]);return E(m({},e),{parts:[...e.parts.slice(0,n),a,...e.parts.slice(n+1)],get content(){return this.parts}})},kc=(e,t)=>{const r=t.part;if(r.type==="text"||r.type==="reasoning"){const n=m({type:r.type,text:"",status:{type:"running"}},r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="tool-call"){const n=m({type:"tool-call",state:"partial-call",status:{type:"running",isArgsComplete:!1},toolCallId:r.toolCallId,toolName:r.toolName,argsText:"",args:{}},r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="source"){const n=m(m({type:"source",sourceType:r.sourceType,id:r.id,url:r.url},r.title?{title:r.title}:void 0),r.parentId&&{parentId:r.parentId});return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else if(r.type==="file"){const n={type:"file",mimeType:r.mimeType,data:r.data};return E(m({},e),{parts:[...e.parts,n],get content(){return this.parts}})}else throw new Error(`Unsupported part type: ${r.type}`)},Sc=(e,t)=>$r(e,t,r=>{if(r.type!=="tool-call")throw new Error("Last is not a tool call");return r.state!=="partial-call"?r:E(m({},r),{state:"call"})}),_c=(e,t)=>$r(e,t,r=>E(m({},r),{status:{type:"complete",reason:"unknown"}})),Tc=(e,t)=>$r(e,t,r=>{var n;if(r.type==="text"||r.type==="reasoning")return E(m({},r),{text:r.text+t.textDelta});if(r.type==="tool-call"){const a=r.argsText+t.textDelta,i=(n=Or(a))!=null?n:r.args;return E(m({},r),{argsText:a,args:i})}else throw new Error("text-delta received but part is neither text nor tool-call")}),Cc=(e,t)=>$r(e,t,r=>{var n;if(r.type==="tool-call")return E(m(E(m({},r),{state:"result"}),t.artifact!==void 0?{artifact:t.artifact}:{}),{result:t.result,isError:(n=t.isError)!=null?n:!1,status:{type:"complete",reason:"stop"}});throw new Error("Result chunk received but part is not a tool-call")}),Ni=(e,t)=>{var n,a;if(((n=e.status)==null?void 0:n.type)==="incomplete"&&((a=e.status)==null?void 0:a.reason)==="error")return e;const r=Ic(t);return E(m({},e),{status:r})},Ic=e=>e.finishReason==="tool-calls"?{type:"requires-action",reason:"tool-calls"}:e.finishReason==="stop"||e.finishReason==="unknown"?{type:"complete",reason:e.finishReason}:{type:"incomplete",reason:e.finishReason},Ec=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{unstable_annotations:[...e.metadata.unstable_annotations,...t.annotations]})}),Ac=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{unstable_data:[...e.metadata.unstable_data,...t.data]})}),Mc=(e,t)=>E(m({},e),{metadata:E(m({},e.metadata),{steps:[...e.metadata.steps,{state:"started",messageId:t.messageId}]})}),Pc=(e,t)=>{var a;const r=e.metadata.steps.slice(),n=r.length-1;return r.length>0&&((a=r[n])==null?void 0:a.state)==="started"?r[n]=E(m({},r[n]),{state:"finished",finishReason:t.finishReason,usage:t.usage,isContinued:t.isContinued}):r.push({state:"finished",messageId:Si(),finishReason:t.finishReason,usage:t.usage,isContinued:t.isContinued}),E(m({},e),{metadata:E(m({},e.metadata),{steps:r})})},Nc=(e,t)=>E(m({},e),{status:{type:"incomplete",reason:"error",error:t.error}}),Lc=(e,t)=>{const r=new xc(e.metadata.unstable_state);return r.append(t.operations),E(m({},e),{metadata:E(m({},e.metadata),{unstable_state:r.state})})},Dc=e=>{let t=!1;return()=>{t||(t=!0,queueMicrotask(()=>{t=!1,e()}))}},Oc=class extends TransformStream{constructor({initialMessage:e,throttle:t,onError:r}={}){let n=e!=null?e:vc(),a;const i=t?Dc(()=>{a==null||a.enqueue(n)}):()=>{a==null||a.enqueue(n)};super({start(s){a=s},transform(s){const o=s.type;switch(o){case"part-start":n=kc(n,s);break;case"tool-call-args-text-finish":n=Sc(n,s);break;case"part-finish":n=_c(n,s);break;case"text-delta":n=Tc(n,s);break;case"result":n=Cc(n,s);break;case"message-finish":n=Ni(n,s);break;case"annotations":n=Ec(n,s);break;case"data":n=Ac(n,s);break;case"step-start":n=Mc(n,s);break;case"step-finish":n=Pc(n,s);break;case"error":n=Nc(n,s),r==null||r(s.error);break;case"update-state":n=Lc(n,s);break;default:{const l=o;throw new Error(`Unsupported chunk type: ${l}`)}}i()},flush(s){var o,l,u;if(((o=n.status)==null?void 0:o.type)==="running"){const c=(u=(l=n.parts)==null?void 0:l.some(d=>d.type==="tool-call"&&(d.state==="call"||d.state==="partial-call")&&d.result===void 0))!=null?u:!1;n=Ni(n,{finishReason:c?"tool-calls":"unknown"}),s.enqueue(n)}}})}},Fc=class extends vi{constructor(){super(e=>{const t=new cc({transform(r,n){n.appendText(r)}});return e.pipeThrough(new TextDecoderStream).pipeThrough(t)})}},Bc=class Sn{constructor(t){this.readable=t,this.readable=t}static fromAssistantStream(t){return new Sn(t.pipeThrough(new Oc))}unstable_result(){return M(this,null,function*(){let t;try{for(var r=zt(this),n,a,i;n=!(a=yield r.next()).done;n=!1){const s=a.value;t=s}}catch(a){i=[a]}finally{try{n&&(a=r.return)&&(yield a.call(r))}finally{if(i)throw i[0]}}return t||{role:"assistant",status:{type:"complete",reason:"unknown"},parts:[],content:[],metadata:{unstable_state:null,unstable_data:[],unstable_annotations:[],steps:[],custom:{}}}})}[Symbol.asyncIterator](){const t=this.readable.getReader();return{next(){return M(this,null,function*(){const{done:n,value:a}=yield t.read();return n?{done:!0,value:void 0}:{done:!1,value:a}})}}}tee(){const[t,r]=this.readable.tee();return[new Sn(t),new Sn(r)]}},Li=Symbol.for("aui.tool-response"),bt=class si{constructor(t){C(this,"artifact");C(this,"result");C(this,"isError");var r;t.artifact!==void 0&&(this.artifact=t.artifact),this.result=t.result,this.isError=(r=t.isError)!=null?r:!1}get[Li](){return!0}static[Symbol.hasInstance](t){return typeof t=="object"&&t!==null&&Li in t}static toResponse(t){return t instanceof si?t:new si({result:t===void 0?"<no result>":t})}};function zc(e,t,r){try{const n=e();if(typeof n=="object"&&n!==null&&"then"in n)return n.then(t,r);t(n)}catch(n){r(n)}}function or(e,t){let r=e;for(const n of t){if(r==null)return;r=r[n]}return r}var Rc=class{constructor(e,t,r){C(this,"resolve");C(this,"reject");C(this,"disposed",!1);C(this,"fieldPath");this.resolve=e,this.reject=t,this.fieldPath=r}update(e){if(!this.disposed)try{if(Rt(e,this.fieldPath)==="complete"){const t=or(e,this.fieldPath);t!==void 0&&(this.resolve(t),this.dispose())}}catch(t){this.reject(t),this.dispose()}}dispose(){this.disposed=!0}},Di=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");this.controller=e,this.fieldPath=t}update(e){if(!this.disposed)try{const t=or(e,this.fieldPath);t!==void 0&&this.controller.enqueue(t),Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(t){this.controller.error(t),this.dispose()}}dispose(){this.disposed=!0}},Oi=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");C(this,"lastValue");this.controller=e,this.fieldPath=t}update(e){var t;if(!this.disposed)try{const r=or(e,this.fieldPath);if(r!==void 0&&typeof r=="string"){const n=r.substring(((t=this.lastValue)==null?void 0:t.length)||0);this.lastValue=r,this.controller.enqueue(n)}Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(r){this.controller.error(r),this.dispose()}}dispose(){this.disposed=!0}},Fi=class{constructor(e,t){C(this,"controller");C(this,"disposed",!1);C(this,"fieldPath");C(this,"processedIndexes",new Set);this.controller=e,this.fieldPath=t}update(e){if(!this.disposed)try{const t=or(e,this.fieldPath);if(!Array.isArray(t))return;for(let r=0;r<t.length;r++)if(!this.processedIndexes.has(r)){const n=[...this.fieldPath,r];Rt(e,n)==="complete"&&(this.controller.enqueue(t[r]),this.processedIndexes.add(r))}Rt(e,this.fieldPath)==="complete"&&(this.controller.close(),this.dispose())}catch(t){this.controller.error(t),this.dispose()}}dispose(){this.disposed=!0}},jc=class{constructor(e){C(this,"argTextDeltas");C(this,"handles",new Set);C(this,"args",Or(""));this.argTextDeltas=e,this.processStream()}processStream(){return M(this,null,function*(){try{let e="";const t=this.argTextDeltas.getReader();for(;;){const{value:r,done:n}=yield t.read();if(n)break;e+=r;const a=Or(e);if(a!==void 0){this.args=a;for(const i of this.handles)i.update(a)}}}catch(e){console.error("Error processing argument stream:",e);for(const t of this.handles)t.dispose()}})}get(...e){return new Promise((t,r)=>{const n=new Rc(t,r,e);if(this.args&&Rt(this.args,e)==="complete"){const a=or(this.args,e);if(a!==void 0){t(a);return}}this.handles.add(n),n.update(this.args)})}streamValues(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Di(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Di){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}streamText(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Oi(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Oi){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}forEach(...e){const t=e,r=new ReadableStream({start:n=>{const a=new Fi(n,t);this.handles.add(a),a.update(this.args)},cancel:()=>{for(const n of this.handles)if(n instanceof Fi){n.dispose(),this.handles.delete(n);break}}});return Mn(r)}},$c=class{constructor(e){this.promise=e}get(){return this.promise}},Uc=class{constructor(){C(this,"args");C(this,"response");C(this,"writable");C(this,"resolve");C(this,"argsText","");C(this,"result",{get:()=>M(this,null,function*(){return(yield this.response.get()).result})});const e=new TransformStream;this.writable=e.writable,this.args=new jc(e.readable);const{promise:t,resolve:r}=Nn();this.resolve=r,this.response=new $c(t)}appendArgsTextDelta(e){return M(this,null,function*(){const t=this.writable.getWriter();try{yield t.write(e)}catch(r){console.warn(r)}finally{t.releaseLock()}this.argsText+=e})}setResponse(e){this.resolve(e)}},Hc=class extends vi{constructor(e){const t=new Map,r=new Map;super(n=>{const a=new TransformStream({transform(s,o){switch((s.type!=="part-finish"||s.meta.type!=="tool-call")&&o.enqueue(s),s.type){case"part-start":if(s.part.type==="tool-call"){const u=new Uc;r.set(s.part.toolCallId,u),e.streamCall({reader:u,toolCallId:s.part.toolCallId,toolName:s.part.toolName})}break;case"text-delta":{if(s.meta.type==="tool-call"){const u=s.meta.toolCallId,c=r.get(u);if(!c)throw new Error("No controller found for tool call");c.appendArgsTextDelta(s.textDelta)}break}case"result":{if(s.meta.type!=="tool-call")break;const{toolCallId:u}=s.meta,c=r.get(u);if(!c)throw new Error("No controller found for tool call");c.setResponse(new bt({result:s.result,artifact:s.artifact,isError:s.isError}));break}case"tool-call-args-text-finish":{if(s.meta.type!=="tool-call")break;const{toolCallId:u,toolName:c}=s.meta,d=r.get(u);if(!d)throw new Error("No controller found for tool call");let f=!1;const h=zc(()=>{var w;let g;try{g=An.parse(d.argsText)}catch(b){throw new Error(`Function parameter parsing failed. ${JSON.stringify(b.message)}`)}const v=e.execute({toolCallId:u,toolName:c,args:g});return v!==void 0&&(f=!0,(w=e.onExecutionStart)==null||w.call(e,u,c)),v},g=>{var w;if(f&&((w=e.onExecutionEnd)==null||w.call(e,u,c)),g===void 0)return;const v=new bt({artifact:g.artifact,result:g.result,isError:g.isError});d.setResponse(v),o.enqueue(m({type:"result",path:s.path},v))},g=>{var w;f&&((w=e.onExecutionEnd)==null||w.call(e,u,c));const v=new bt({result:String(g),isError:!0});d.setResponse(v),o.enqueue(m({type:"result",path:s.path},v))});h&&t.set(u,h);break}case"part-finish":{if(s.meta.type!=="tool-call")break;const{toolCallId:u}=s.meta,c=t.get(u);c?c.then(()=>{t.delete(u),r.delete(u),o.enqueue(s)}):o.enqueue(s)}}},flush(){return M(this,null,function*(){yield Promise.all(t.values())})}});return n.pipeThrough(new ki).pipeThrough(a)})}},qc=e=>typeof e=="object"&&e!==null&&"~standard"in e&&e["~standard"].version===1;function Vc(e,t,r,n){const a=e==null?void 0:e[r.toolName];return!a||!a.execute?void 0:(s=>M(null,null,function*(){var c;if(t.aborted)return new bt({result:"Tool execution was cancelled.",isError:!0});let o=s;if(qc(a.parameters)){let d=a.parameters["~standard"].validate(r.args);d instanceof Promise&&(d=yield d),d.issues&&(o=(c=a.experimental_onSchemaValidationError)!=null?c:(()=>{throw new Error(`Function parameter validation failed. ${JSON.stringify(d.issues)}`)}))}const l=new Promise(d=>{const f=()=>{queueMicrotask(()=>{queueMicrotask(()=>{d(new bt({result:"Tool execution was cancelled.",isError:!0}))})})};t.aborted?f():t.addEventListener("abort",f,{once:!0})}),u=M(null,null,function*(){const d=yield o(r.args,{toolCallId:r.toolCallId,abortSignal:t,human:f=>n(r.toolCallId,f)});return bt.toResponse(d)});return Promise.race([u,l])}))(a.execute)}function Wc(e,t,r,n,a){var i,s;(s=(i=e==null?void 0:e[n.toolName])==null?void 0:i.streamCall)==null||s.call(i,r,{toolCallId:n.toolCallId,abortSignal:t,human:o=>a(n.toolCallId,o)})}function Jc(e,t,r,n){const a=typeof e=="function"?e:()=>e,i=typeof t=="function"?t:()=>t;return new Hc({execute:s=>Vc(a(),i(),s,r),streamCall:l=>{var u=l,{reader:s}=u,o=V(u,["reader"]);return Wc(a(),i(),s,o,r)},onExecutionStart:n==null?void 0:n.onExecutionStart,onExecutionEnd:n==null?void 0:n.onExecutionEnd})}var Bi=class{constructor(e,t,r){this.contentBinding=e,this.messageApi=t,this.threadApi=r,this.__internal_bindMethods()}get path(){return this.contentBinding.path}__internal_bindMethods(){this.addToolResult=this.addToolResult.bind(this),this.resumeToolCall=this.resumeToolCall.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this)}getState(){return this.contentBinding.getState()}addToolResult(e){const t=this.contentBinding.getState();if(!t)throw new Error("Message part is not available");if(t.type!=="tool-call")throw new Error("Tried to add tool result to non-tool message part");if(!this.messageApi)throw new Error("Message API is not available. This is likely a bug in assistant-ui.");if(!this.threadApi)throw new Error("Thread API is not available");const r=this.messageApi.getState();if(!r)throw new Error("Message is not available");const n=t.toolName,a=t.toolCallId,i=bt.toResponse(e);this.threadApi.getState().addToolResult({messageId:r.id,toolName:n,toolCallId:a,result:i.result,artifact:i.artifact,isError:i.isError})}resumeToolCall(e){const t=this.contentBinding.getState();if(!t)throw new Error("Message part is not available");if(t.type!=="tool-call")throw new Error("Tried to resume tool call on non-tool message part");if(!this.threadApi)throw new Error("Thread API is not available");const r=t.toolCallId;this.threadApi.getState().resumeToolCall({toolCallId:r,payload:e})}subscribe(e){return this.contentBinding.subscribe(e)}},Ur=class extends Br{constructor(e){super(),this.binding=e}get path(){return this.binding.path}getState(){return this.binding.getState()}outerSubscribe(e){return this.binding.subscribe(e)}_connect(){const e=()=>{this.notifySubscribers()};let t=this.binding.getState(),r=t==null?void 0:t.subscribe(e);const n=()=>{var s;const i=this.binding.getState();i!==t&&(t=i,r==null||r(),r=(s=this.binding.getState())==null?void 0:s.subscribe(e),e())},a=this.outerSubscribe(n);return()=>{a==null||a(),r==null||r()}}},Hr=Object.freeze({type:"complete"}),Kc=(e,t,r)=>{if(e.role!=="assistant")return Hr;if(r.type==="tool-call")return r.result?Hr:e.status;const n=t===Math.max(0,e.content.length-1);return e.status.type==="requires-action"?Hr:n?e.status:Hr},zi=(e,t)=>{const r=e.content[t];if(!r)return Ze;const n=Kc(e,t,r);return Object.freeze(E(m({},r),{[Rr]:r[Rr],status:n}))},Yc=class{constructor(e,t){C(this,"composer");C(this,"_getEditComposerRuntimeCore",()=>this._threadBinding.getState().getEditComposer(this._core.getState().id));this._core=e,this._threadBinding=t,this.composer=new wc(new Ur({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.composer`,composerSource:"edit"}),getState:this._getEditComposerRuntimeCore,subscribe:r=>this._threadBinding.subscribe(r)}),()=>this._threadBinding.getState().beginEdit(this._core.getState().id)),this.__internal_bindMethods()}get path(){return this._core.path}__internal_bindMethods(){this.reload=this.reload.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.getMessagePartByIndex=this.getMessagePartByIndex.bind(this),this.getMessagePartByToolCallId=this.getMessagePartByToolCallId.bind(this),this.getAttachmentByIndex=this.getAttachmentByIndex.bind(this),this.unstable_getCopyText=this.unstable_getCopyText.bind(this),this.speak=this.speak.bind(this),this.stopSpeaking=this.stopSpeaking.bind(this),this.submitFeedback=this.submitFeedback.bind(this),this.switchToBranch=this.switchToBranch.bind(this)}getState(){return this._core.getState()}reload(e={}){const t=this._getEditComposerRuntimeCore(),r=t!=null?t:this._threadBinding.getState().composer,n=t!=null?t:r,{runConfig:a=n.runConfig}=e,i=this._core.getState();if(i.role!=="assistant")throw new Error("Can only reload assistant messages");this._threadBinding.getState().startRun({parentId:i.parentId,sourceId:i.id,runConfig:a})}speak(){const e=this._core.getState();return this._threadBinding.getState().speak(e.id)}stopSpeaking(){var r;const e=this._core.getState();if(((r=this._threadBinding.getState().speech)==null?void 0:r.messageId)===e.id)this._threadBinding.getState().stopSpeaking();else throw new Error("Message is not being spoken")}submitFeedback({type:e}){const t=this._core.getState();this._threadBinding.getState().submitFeedback({messageId:t.id,type:e})}switchToBranch({position:e,branchId:t}){const r=this._core.getState();if(t&&e)throw new Error("May not specify both branchId and position");if(!t&&!e)throw new Error("Must specify either branchId or position");const a=this._threadBinding.getState().getBranches(r.id);let i=t;if(e==="previous"?i=a[r.branchNumber-2]:e==="next"&&(i=a[r.branchNumber]),!i)throw new Error("Branch not found");this._threadBinding.getState().switchToBranch(i)}unstable_getCopyText(){return jr(this.getState())}subscribe(e){return this._core.subscribe(e)}getMessagePartByIndex(e){if(e<0)throw new Error("Message part index must be >= 0");return new Bi(new et({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.content[${e}]`,messagePartSelector:{type:"index",index:e}}),getState:()=>zi(this.getState(),e),subscribe:t=>this._core.subscribe(t)}),this._core,this._threadBinding)}getMessagePartByToolCallId(e){return new Bi(new et({path:E(m({},this.path),{ref:this.path.ref+`${this.path.ref}.content[toolCallId=${JSON.stringify(e)}]`,messagePartSelector:{type:"toolCallId",toolCallId:e}}),getState:()=>{const t=this._core.getState(),r=t.content.findIndex(n=>n.type==="tool-call"&&n.toolCallId===e);return r===-1?Ze:zi(t,r)},subscribe:t=>this._core.subscribe(t)}),this._core,this._threadBinding)}getAttachmentByIndex(e){return new mc(new et({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.attachments[${e}]`,attachmentSource:"message",attachmentSelector:{type:"index",index:e}}),getState:()=>{const t=this.getState().attachments,r=t==null?void 0:t[e];return r?E(m({},r),{source:"message"}):Ze},subscribe:t=>this._core.subscribe(t)}))}},Gc=e=>{var t,r,n;return m({parentId:(t=e.parentId)!=null?t:null,sourceId:(r=e.sourceId)!=null?r:null,runConfig:(n=e.runConfig)!=null?n:{}},e.stream?{stream:e.stream}:{})},Xc=e=>{var t,r,n;return{parentId:(t=e.parentId)!=null?t:null,sourceId:(r=e.sourceId)!=null?r:null,runConfig:(n=e.runConfig)!=null?n:{}}},Qc=(e,t)=>{var r,n,a,i,s,o,l,u,c,d,f;return typeof t=="string"?{createdAt:new Date,parentId:(n=(r=e.at(-1))==null?void 0:r.id)!=null?n:null,sourceId:null,runConfig:{},role:"user",content:[{type:"text",text:t}],attachments:[],metadata:{custom:{}}}:{createdAt:(a=t.createdAt)!=null?a:new Date,parentId:(o=(s=t.parentId)!=null?s:(i=e.at(-1))==null?void 0:i.id)!=null?o:null,sourceId:(l=t.sourceId)!=null?l:null,role:(u=t.role)!=null?u:"user",content:t.content,attachments:(c=t.attachments)!=null?c:[],metadata:(d=t.metadata)!=null?d:{custom:{}},runConfig:(f=t.runConfig)!=null?f:{},startRun:t.startRun}},Zc=(e,t)=>{const r=e.messages.at(-1);return Object.freeze({threadId:t.id,metadata:t,capabilities:e.capabilities,isDisabled:e.isDisabled,isLoading:e.isLoading,isRunning:(r==null?void 0:r.role)!=="assistant"?!1:r.status.type==="running",messages:e.messages,state:e.state,suggestions:e.suggestions,extras:e.extras,speech:e.speech})},Ri=class{constructor(e,t){C(this,"_threadBinding");C(this,"composer");C(this,"_eventSubscriptionSubjects",new Map);const r=new et({path:e.path,getState:()=>Zc(e.getState(),t.getState()),subscribe:n=>{const a=e.subscribe(n),i=t.subscribe(n);return()=>{a(),i()}}});this._threadBinding={path:e.path,getState:()=>e.getState(),getStateState:()=>r.getState(),outerSubscribe:n=>e.outerSubscribe(n),subscribe:n=>e.subscribe(n)},this.composer=new bc(new Ur({path:E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.composer`,composerSource:"thread"}),getState:()=>this._threadBinding.getState().composer,subscribe:n=>this._threadBinding.subscribe(n)})),this.__internal_bindMethods()}get path(){return this._threadBinding.path}get __internal_threadBinding(){return this._threadBinding}__internal_bindMethods(){this.append=this.append.bind(this),this.unstable_resumeRun=this.unstable_resumeRun.bind(this),this.unstable_loadExternalState=this.unstable_loadExternalState.bind(this),this.startRun=this.startRun.bind(this),this.cancelRun=this.cancelRun.bind(this),this.stopSpeaking=this.stopSpeaking.bind(this),this.export=this.export.bind(this),this.import=this.import.bind(this),this.reset=this.reset.bind(this),this.getMessageByIndex=this.getMessageByIndex.bind(this),this.getMessageById=this.getMessageById.bind(this),this.subscribe=this.subscribe.bind(this),this.unstable_on=this.unstable_on.bind(this),this.getModelContext=this.getModelContext.bind(this),this.getModelConfig=this.getModelConfig.bind(this),this.getState=this.getState.bind(this)}getState(){return this._threadBinding.getStateState()}append(e){this._threadBinding.getState().append(Qc(this._threadBinding.getState().messages,e))}subscribe(e){return this._threadBinding.subscribe(e)}getModelContext(){return this._threadBinding.getState().getModelContext()}getModelConfig(){return this.getModelContext()}startRun(e){const t=e===null||typeof e=="string"?{parentId:e}:e;return this._threadBinding.getState().startRun(Xc(t))}unstable_resumeRun(e){return this._threadBinding.getState().resumeRun(Gc(e))}unstable_loadExternalState(e){this._threadBinding.getState().unstable_loadExternalState(e)}cancelRun(){this._threadBinding.getState().cancelRun()}stopSpeaking(){return this._threadBinding.getState().stopSpeaking()}export(){return this._threadBinding.getState().export()}import(e){this._threadBinding.getState().import(e)}reset(e){this._threadBinding.getState().reset(e)}getMessageByIndex(e){if(e<0)throw new Error("Message index must be >= 0");return this._getMessageRuntime(E(m({},this.path),{ref:`${this.path.ref}${this.path.ref}.messages[${e}]`,messageSelector:{type:"index",index:e}}),()=>{var n,a;const t=this._threadBinding.getState().messages,r=t[e];if(r)return{message:r,parentId:(a=(n=t[e-1])==null?void 0:n.id)!=null?a:null,index:e}})}getMessageById(e){return this._getMessageRuntime(E(m({},this.path),{ref:this.path.ref+`${this.path.ref}.messages[messageId=${JSON.stringify(e)}]`,messageSelector:{type:"messageId",messageId:e}}),()=>this._threadBinding.getState().getMessageById(e))}_getMessageRuntime(e,t){return new Yc(new et({path:e,getState:()=>{var c,d;const{message:r,parentId:n,index:a}=(c=t())!=null?c:{},{messages:i,speech:s}=this._threadBinding.getState();if(!r||n===void 0||a===void 0)return Ze;const l=this._threadBinding.getState().getBranches(r.id),u=r.metadata.submittedFeedback;return E(m({},r),{[Rr]:r[Rr],index:a,isLast:((d=i.at(-1))==null?void 0:d.id)===r.id,parentId:n,branchNumber:l.indexOf(r.id)+1,branchCount:l.length,speech:(s==null?void 0:s.messageId)===r.id?s:void 0,submittedFeedback:u})},subscribe:r=>this._threadBinding.subscribe(r)}),this._threadBinding)}unstable_on(e,t){let r=this._eventSubscriptionSubjects.get(e);return r||(r=new Ei({event:e,binding:this._threadBinding}),this._eventSubscriptionSubjects.set(e,r)),r.subscribe(t)}},ed=e=>({mainThreadId:e.mainThreadId,newThread:e.newThreadId,threads:e.threadIds,archivedThreads:e.archivedThreadIds,isLoading:e.isLoading,threadItems:e.threadData}),qr=(e,t)=>{if(t===void 0)return Ze;const r=e.getItemById(t);return r?{id:r.id,threadId:r.id,remoteId:r.remoteId,externalId:r.externalId,title:r.title,status:r.status,isMain:r.id===e.mainThreadId}:Ze},td=class{constructor(e,t=Ri){C(this,"_getState");C(this,"_mainThreadListItemRuntime");C(this,"main");this._core=e,this._runtimeFactory=t;const r=new Dn({path:{},getState:()=>ed(e),subscribe:n=>e.subscribe(n)});this._getState=r.getState.bind(r),this._mainThreadListItemRuntime=new zr(new et({path:{ref:"threadItems[main]",threadSelector:{type:"main"}},getState:()=>qr(this._core,this._core.mainThreadId),subscribe:n=>this._core.subscribe(n)}),this._core),this.main=new t(new Ur({path:{ref:"threads.main",threadSelector:{type:"main"}},getState:()=>e.getMainThreadRuntimeCore(),subscribe:n=>e.subscribe(n)}),this._mainThreadListItemRuntime),this.__internal_bindMethods()}__internal_bindMethods(){this.switchToThread=this.switchToThread.bind(this),this.switchToNewThread=this.switchToNewThread.bind(this),this.getState=this.getState.bind(this),this.subscribe=this.subscribe.bind(this),this.getById=this.getById.bind(this),this.getItemById=this.getItemById.bind(this),this.getItemByIndex=this.getItemByIndex.bind(this),this.getArchivedItemByIndex=this.getArchivedItemByIndex.bind(this)}switchToThread(e){return this._core.switchToThread(e)}switchToNewThread(){return this._core.switchToNewThread()}getState(){return this._getState()}subscribe(e){return this._core.subscribe(e)}get mainItem(){return this._mainThreadListItemRuntime}getById(e){return new this._runtimeFactory(new Ur({path:{ref:`threads[threadId=${JSON.stringify(e)}]`,threadSelector:{type:"threadId",threadId:e}},getState:()=>this._core.getThreadRuntimeCore(e),subscribe:t=>this._core.subscribe(t)}),this.mainItem)}getItemByIndex(e){return new zr(new et({path:{ref:`threadItems[${e}]`,threadSelector:{type:"index",index:e}},getState:()=>qr(this._core,this._core.threadIds[e]),subscribe:t=>this._core.subscribe(t)}),this._core)}getArchivedItemByIndex(e){return new zr(new et({path:{ref:`archivedThreadItems[${e}]`,threadSelector:{type:"archiveIndex",index:e}},getState:()=>qr(this._core,this._core.archivedThreadIds[e]),subscribe:t=>this._core.subscribe(t)}),this._core)}getItemById(e){return new zr(new et({path:{ref:`threadItems[threadId=${e}]`,threadSelector:{type:"threadId",threadId:e}},getState:()=>qr(this._core,e),subscribe:t=>this._core.subscribe(t)}),this._core)}},rd=e=>e.startsWith("image/")?"image":e.startsWith("text/")?"document":"file",nd=class{constructor(e){C(this,"accept","*");C(this,"uploadedUrls",new Map);this.cloud=e}add(t){return Nr(this,arguments,function*({file:e}){const r=crypto.randomUUID(),n=rd(e.type);let a={id:r,type:n,name:e.name,contentType:e.type,file:e,status:{type:"running",reason:"uploading",progress:0}};yield a;try{const{signedUrl:i,publicUrl:s}=yield new Le(this.cloud.files.generatePresignedUploadUrl({filename:e.name}));yield new Le(fetch(i,{method:"PUT",body:e,headers:{"Content-Type":e.type},mode:"cors"})),this.uploadedUrls.set(r,s),a=E(m({},a),{status:{type:"requires-action",reason:"composer-send"}}),yield a}catch(i){a=E(m({},a),{status:{type:"incomplete",reason:"error"}}),yield a}})}remove(e){return M(this,null,function*(){this.uploadedUrls.delete(e.id)})}send(e){return M(this,null,function*(){const t=this.uploadedUrls.get(e.id);if(!t)throw new Error("Attachment not uploaded");this.uploadedUrls.delete(e.id);let r;return e.type==="image"?r=[{type:"image",image:t,filename:e.name}]:r=[{type:"file",data:t,mimeType:e.contentType,filename:e.name}],E(m({},e),{status:{type:"complete"},content:r})})}},On=y.createContext(null),Fn=({adapters:e,children:t})=>{const r=y.useContext(On);return p.jsx(On.Provider,{value:m(m({},r),e),children:t})},ad=()=>y.useContext(On),id=class extends ci{constructor(t,r,{parentId:n,message:a}){var i;super();C(this,"_nonTextParts");C(this,"_previousText");C(this,"_parentId");C(this,"_sourceId");this.runtime=t,this.endEditCallback=r,this._parentId=n,this._sourceId=a.id,this._previousText=jr(a),this.setText(this._previousText),this.setRole(a.role),this.setAttachments((i=a.attachments)!=null?i:[]),this._nonTextParts=a.content.filter(s=>s.type!=="text"),this.setRunConfig(m({},t.composer.runConfig))}get canCancel(){return!0}getAttachmentAdapter(){var t;return(t=this.runtime.adapters)==null?void 0:t.attachments}handleSend(t){return M(this,null,function*(){jr(t)!==this._previousText&&this.runtime.append(E(m({},t),{content:[...t.content,...this._nonTextParts],parentId:this._parentId,sourceId:this._sourceId})),this.handleCancel()})}handleCancel(){this.endEditCallback(),this._notifySubscribers()}},sd=class{constructor(e){C(this,"_subscriptions",new Set);C(this,"_isInitialized",!1);C(this,"repository",new Ti);C(this,"composer",new di(this));C(this,"_editComposers",new Map);C(this,"_stopSpeaking");C(this,"speech");C(this,"_eventSubscribers",new Map);this._contextProvider=e}get messages(){return this.repository.getMessages()}get state(){var t;let e;for(const r of this.messages)if(r.role==="assistant"){e=r;break}return(t=e==null?void 0:e.metadata.unstable_state)!=null?t:null}getModelContext(){return this._contextProvider.getModelContext()}getEditComposer(e){return this._editComposers.get(e)}beginEdit(e){if(this._editComposers.has(e))throw new Error("Edit already in progress");this._editComposers.set(e,new id(this,()=>this._editComposers.delete(e),this.repository.getMessage(e))),this._notifySubscribers()}getMessageById(e){try{return this.repository.getMessage(e)}catch(t){return}}getBranches(e){return this.repository.getBranches(e)}switchToBranch(e){this.repository.switchToBranch(e),this._notifySubscribers()}_notifySubscribers(){for(const e of this._subscriptions)e()}_notifyEventSubscribers(e){const t=this._eventSubscribers.get(e);if(t)for(const r of t)r()}subscribe(e){return this._subscriptions.add(e),()=>this._subscriptions.delete(e)}submitFeedback({messageId:e,type:t}){var i;const r=(i=this.adapters)==null?void 0:i.feedback;if(!r)throw new Error("Feedback adapter not configured");const{message:n,parentId:a}=this.repository.getMessage(e);if(r.submit({message:n,type:t}),n.role==="assistant"){const s=E(m({},n),{metadata:E(m({},n.metadata),{submittedFeedback:{type:t}})});this.repository.addOrUpdateMessage(a,s)}this._notifySubscribers()}speak(e){var i,s;const t=(i=this.adapters)==null?void 0:i.speech;if(!t)throw new Error("Speech adapter not configured");const{message:r}=this.repository.getMessage(e);(s=this._stopSpeaking)==null||s.call(this);const n=t.speak(jr(r)),a=n.subscribe(()=>{n.status.type==="ended"?(this._stopSpeaking=void 0,this.speech=void 0):this.speech={messageId:e,status:n.status},this._notifySubscribers()});this.speech={messageId:e,status:n.status},this._notifySubscribers(),this._stopSpeaking=()=>{n.cancel(),a(),this.speech=void 0,this._stopSpeaking=void 0}}stopSpeaking(){if(!this._stopSpeaking)throw new Error("No message is being spoken");this._stopSpeaking(),this._notifySubscribers()}ensureInitialized(){this._isInitialized||(this._isInitialized=!0,this._notifyEventSubscribers("initialize"))}export(){return this.repository.export()}import(e){this.ensureInitialized(),this.repository.clear(),this.repository.import(e),this._notifySubscribers()}reset(e){this.import(Ln.fromArray(e!=null?e:[]))}unstable_on(e,t){var n,a,i;if(e==="model-context-update")return(i=(a=(n=this._contextProvider).subscribe)==null?void 0:a.call(n,t))!=null?i:(()=>{});const r=this._eventSubscribers.get(e);return r?r.add(t):this._eventSubscribers.set(e,new Set([t])),()=>{this._eventSubscribers.get(e).delete(t)}}},od=e=>{try{return JSON.parse(e),!0}catch(t){return!1}};function ld({state:e,getTools:t,onResult:r,setToolStatuses:n}){const a=y.useRef({}),i=y.useRef(new Map),s=y.useRef(new AbortController),o=y.useRef(0),l=y.useRef([]),[u]=y.useState(()=>{const[h,g]=_i(),v=Jc(t,()=>{var w,b;return(b=(w=s.current)==null?void 0:w.signal)!=null?b:new AbortController().signal},(w,b)=>new Promise((I,T)=>{const D=i.current.get(w);D&&D.reject(new Error("Human input request was superseded by a new request")),i.current.set(w,{resolve:I,reject:T}),n(B=>E(m({},B),{[w]:{type:"interrupt",payload:{type:"human",payload:b}}}))}),{onExecutionStart:w=>{o.current++,n(b=>E(m({},b),{[w]:{type:"executing"}}))},onExecutionEnd:w=>{o.current--,n(b=>{const I=m({},b);return delete I[w],I}),o.current===0&&(l.current.forEach(b=>b()),l.current=[])}});return h.pipeThrough(v).pipeThrough(new ki).pipeTo(new WritableStream({write(w){var b;if(w.type==="result"){if((b=a.current[w.meta.toolCallId])!=null&&b.hasResult)return;r(m({type:"add-tool-result",toolCallId:w.meta.toolCallId,toolName:w.meta.toolName,result:w.result,isError:w.isError},w.artifact&&{artifact:w.artifact}))}}})),g}),c=y.useRef(new Set),d=y.useRef(!0);y.useEffect(()=>{const h=g=>{g.forEach(v=>{v.content.forEach(w=>{if(w.type==="tool-call"){if(d.current)c.current.add(w.toolCallId);else{if(c.current.has(w.toolCallId))return;let b=a.current[w.toolCallId];if(b||(b={argsText:"",hasResult:!1,argsComplete:!1,controller:u.addToolCallPart({toolName:w.toolName,toolCallId:w.toolCallId})},a.current[w.toolCallId]=b),w.argsText!==b.argsText)if(b.argsComplete)process.env.NODE_ENV!=="production"&&console.warn("argsText updated after controller was closed:",{previous:b.argsText,next:w.argsText});else{if(!w.argsText.startsWith(b.argsText))throw new Error(`Tool call argsText can only be appended, not updated: ${w.argsText} does not start with ${b.argsText}`);const I=w.argsText.slice(b.argsText.length);b.controller.argsText.append(I);const T=od(w.argsText);T&&b.controller.argsText.close(),a.current[w.toolCallId]={argsText:w.argsText,hasResult:b.hasResult,argsComplete:T,controller:b.controller}}w.result!==void 0&&!b.hasResult&&(b.controller.setResponse(new bt({result:w.result,artifact:w.artifact,isError:w.isError})),b.controller.close(),a.current[w.toolCallId]={hasResult:!0,argsComplete:!0,argsText:b.argsText,controller:b.controller})}w.messages&&h(w.messages)}})})};h(e.messages),d.current&&(d.current=!1)},[e,u,r]);const f=()=>(i.current.forEach(({reject:h})=>{h(new Error("Tool execution aborted"))}),i.current.clear(),s.current.abort(),s.current=new AbortController,o.current===0?Promise.resolve():new Promise(h=>{l.current.push(h)}));return{reset:()=>{f(),d.current=!0},abort:f,resume:(h,g)=>{const v=i.current.get(h);if(v)i.current.delete(h),n(w=>E(m({},w),{[h]:{type:"executing"}})),v.resolve(g);else throw new Error(`Tool call ${h} is not waiting for human input`)}}}var ud=class{list(){return Promise.resolve({threads:[]})}rename(){return Promise.resolve()}archive(){return Promise.resolve()}unarchive(){return Promise.resolve()}delete(){return Promise.resolve()}initialize(e){return Promise.resolve({remoteId:e,externalId:void 0})}generateTitle(){return Promise.resolve(new ReadableStream)}fetch(e){return Promise.reject(new Error("Thread not found"))}};function cd(e,t){e.commitTasks.forEach(r=>{const n=r.cellIndex,a=t.cells[n];if(a.type!=="effect")throw new Error("Cannot find effect cell");let i=!0;if(a.deps!==void 0&&r.deps!==void 0&&(i=a.deps.length!==r.deps.length||a.deps.some((s,o)=>!Object.is(s,r.deps[o]))),i){if(a.mounted){if(typeof a.deps!=typeof r.deps)throw new Error("tapEffect called with and without dependencies across re-renders");try{a.mounted&&a.cleanup&&a.cleanup()}finally{a.mounted=!1}}try{const s=r.effect();if(s!==void 0&&typeof s!="function")throw new Error(`An effect function must either return a cleanup function or nothing. Received: ${typeof s}`);a.mounted=!0,a.cleanup=typeof s=="function"?s:void 0,a.deps=r.deps}catch(s){throw s}}})}function dd(e){let t=null;for(let r=e.cells.length-1;r>=0;r--){const n=e.cells[r];if((n==null?void 0:n.type)==="effect"&&n.mounted&&n.cleanup)try{n.cleanup()}catch(a){t==null&&(t=a)}finally{n.mounted=!1}}if(t!=null)throw t}var lr=null;function hd(e,t){e.currentIndex=0;const r=lr;lr=e;try{if(t(),e.isFirstRender=!1,e.cells.length!==e.currentIndex)throw new Error(`Rendered ${e.currentIndex} hooks but expected ${e.cells.length}. Hooks must be called in the exact same order in every render.`)}finally{lr=r}}function Bn(){if(!lr)throw new Error("No resource fiber available");return lr}function ji(e,t){const r=e[$i];if(!r)throw new Error("ResourceElement.type is not a valid Resource");return r(t)}var $i=Symbol("fnSymbol");function Vr(e,t){return{resource:e,scheduleRerender:t,cells:[],currentIndex:0,renderContext:void 0,isFirstRender:!0,isMounted:!1,isNeverMounted:!0}}function jt(e){e.isMounted=!1,dd(e)}function ur(e,t){const r={commitTasks:[],props:t,state:void 0};return hd(e,()=>{e.renderContext=r;try{r.state=ji(e.resource,t)}finally{e.renderContext=void 0}}),r}function $t(e,t){e.isMounted=!0,e.isNeverMounted=!1,cd(t,e)}var fd=globalThis.__ASSISTANT_UI_DISABLE_LAYOUT_EFFECT__===!0,Ui=fd?y.useEffect:y.useLayoutEffect;function zn(e){const[,t]=y.useState({}),r=y.useMemo(()=>Vr(e.type,()=>t({})),[e.type,t]),n=ur(r,e.props);return Ui(()=>()=>jt(r),[]),Ui(()=>{$t(r,n)}),n.state}var Ut=e=>typeof e=="string"?{scope:e.split(".")[0],event:e}:{scope:e.scope,event:e.event},At=(e,t,r)=>t===e,Ht,Rn=()=>{if(Ht)return Ht;const e=()=>({apis:new Map,nextId:0,listeners:new Set});if(typeof window=="undefined")return Ht=e(),Ht;const t=window.__ASSISTANT_UI_DEVTOOLS_HOOK__;if(t)return Ht=t,t;const r=e();return window.__ASSISTANT_UI_DEVTOOLS_HOOK__=r,Ht=r,r},pd=(at=class{static register(t){var o,l;const r=Rn();for(const u of r.apis.values())if(u.api===t)return()=>{};const n=r.nextId++,a={api:t,logs:[]},i=(o=t.on)==null?void 0:o.call(t,"*",u=>{const c=r.apis.get(n);c&&(c.logs.push({time:new Date,event:u.event,data:u.payload}),c.logs.length>at.MAX_EVENT_LOGS_PER_API&&(c.logs=c.logs.slice(-200)),at.notifyListeners(n))}),s=(l=t.subscribe)==null?void 0:l.call(t,()=>{at.notifyListeners(n)});return r.apis.set(n,a),at.notifyListeners(n),()=>{const u=Rn();u.apis.get(n)&&(i==null||i(),s==null||s(),u.apis.delete(n),at.notifyListeners(n))}}static notifyListeners(t){Rn().listeners.forEach(n=>n(t))}},C(at,"MAX_EVENT_LOGS_PER_API",200),at);function ye(e){const t=(r,n)=>m({type:t,props:r},(n==null?void 0:n.key)!==void 0&&{key:n.key});return t[$i]=e,t}var md=e=>{if(e.renderContext)throw new Error("Resource updated during render");if(e.isNeverMounted)throw new Error("Resource updated before mount");e.isMounted&&e.scheduleRerender()};function gd(e){const t=Bn(),r=t.currentIndex++;if(!t.isFirstRender&&r>=t.cells.length)throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");if(!t.cells[r]){const i={type:"state",value:typeof e=="function"?e():e,set:s=>{const o=i.value,l=typeof s=="function"?s(o):s;Object.is(o,l)||(i.value=l,md(t))}};t.cells[r]=i}const n=t.cells[r];if(n.type!=="state")throw new Error("Hook order changed between renders");return n}function ut(e){const t=gd(e);return[t.value,t.set]}function yd(){const e=Bn(),t=e.currentIndex++;if(!e.isFirstRender&&t>=e.cells.length)throw new Error("Rendered more hooks than during the previous render. Hooks must be called in the exact same order in every render.");if(!e.cells[t]){const n={type:"effect",mounted:!1};e.cells[t]=n}if(e.cells[t].type!=="effect")throw new Error("Hook order changed between renders");return t}function Fe(e,t){const r=Bn(),n=yd();r.renderContext.commitTasks.push({effect:e,deps:t,cellIndex:n})}function qt(e){const[t]=ut(()=>({current:e}));return t}var bd=(e,t)=>{if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!Object.is(e[r],t[r]))return!1;return!0},oe=(e,t)=>{const r=qt();return r.current||(r.current={value:e(),deps:t}),bd(r.current.deps,t)||(r.current.value=e(),r.current.deps=t),r.current.value};function Wr(e,t){const[r,n]=ut({}),a=oe(()=>Vr(e.type,()=>n({})),[e.type]),i=t?oe(()=>e.props,t):e.props,s=oe(()=>ur(a,i),[a,i,r]);return Fe(()=>()=>jt(a),[a]),Fe(()=>{$t(a,s)},[a,s]),s.state}function tt(e){return ji(e.type,e.props)}function Hi(e){const t=new Set;e.forEach((o,l)=>{if(o.key===void 0)throw new Error(`tapResources: All resource elements must have a key. Element at index ${l} is missing a key.`);if(t.has(o.key))throw new Error(`tapResources: Duplicate key "${o.key}" found. All keys must be unique.`);t.add(o.key)});const[r,n]=ut({}),a=oe(()=>new Map(e.map(o=>[o.key,o])),[e]),[i]=ut(()=>new Map),s=oe(()=>{const o=new Map,l=new Set;return a.forEach((u,c)=>{l.add(c);let d=i.get(c);(!d||d.resource!==u.type)&&(d&&jt(d),d=Vr(u.type,()=>n({})),i.set(c,d));const f=ur(d,u.props);o.set(c,f)}),i.forEach((u,c)=>{l.has(c)||(jt(u),i.delete(c))}),o},[a,r]);return Fe(()=>{s.forEach((o,l)=>{const u=i.get(l);u&&$t(u,o)})},[s,i]),Fe(()=>()=>{i.forEach(o=>{jt(o)}),i.clear()},[i]),oe(()=>e.map(o=>{var l;return(l=s.get(o.key))==null?void 0:l.state}),[e,s])}var jn=[],$n=!1;function wd(){$n=!1;const e=jn;jn=[];for(const t of e)try{t()}catch(r){console.error("Error in scheduled task:",r)}}function xd(e){jn.push(e),$n||($n=!0,queueMicrotask(wd))}var vd=(Ft=class{constructor(t){C(this,"_isDirty",!1);C(this,"_hasScheduledTask",!1);C(this,"_isFlushing",!1);this._task=t}get isDirty(){return this._isDirty}markDirty(){this._isDirty=!0,!(this._hasScheduledTask||this._isFlushing)&&(this._hasScheduledTask=!0,xd(()=>{this._hasScheduledTask=!1,this.flushSync()}))}flushSync(){if(this._isFlushing)return;this._isFlushing=!0;let t=0;try{for(;this._isDirty;){if(t++,t>Ft.MAX_FLUSH_DEPTH)throw new Error("Maximum update depth exceeded. This can happen when a resource repeatedly calls setState inside tapEffect.");this._isDirty=!1,this._task()}}finally{this._isFlushing=!1}}},C(Ft,"MAX_FLUSH_DEPTH",50),Ft),kd=ye(({element:e,onUpdateInput:t,onFlushSync:r,onDispose:n})=>{const[a,i]=ut(e.props),s=tt({type:e.type,props:a}),o=qt(new Set).current,l=qt(s);return Fe(()=>{s!==l.current&&(l.current=s,o.forEach(c=>c()))}),oe(()=>({getState:()=>l.current,subscribe:c=>(o.add(c),()=>o.delete(c)),updateInput:c=>{t(),i(()=>c)},flushSync:r,dispose:n}),[])}),Sd=(e,t=!1)=>{let r=!t;const n={element:e,onUpdateInput:()=>{r||(r=!0,$t(i,s))},onFlushSync:()=>{a.flushSync()},onDispose:()=>jt(i)},a=new vd(()=>{s=ur(i,n),r&&$t(i,s)}),i=Vr(kd,()=>a.markDirty());let s=ur(i,n);return r&&$t(i,s),s.state},cr=Symbol("tap.Context"),qi=e=>({[cr]:e}),Vi=(e,t,r)=>{const n=e[cr];e[cr]=t;try{return r()}finally{e[cr]=n}},Wi=e=>e[cr];const Ji=e=>{let t;const r=new Set,n=(u,c)=>{const d=typeof u=="function"?u(t):u;if(!Object.is(d,t)){const f=t;t=(c!=null?c:typeof d!="object"||d===null)?d:Object.assign({},t,d),r.forEach(h=>h(t,f))}},a=()=>t,o={setState:n,getState:a,getInitialState:()=>l,subscribe:u=>(r.add(u),()=>r.delete(u))},l=t=e(n,a,o);return o},_d=(e=>e?Ji(e):Ji),Td=e=>e;function Cd(e,t=Td){const r=y.useSyncExternalStore(e.subscribe,y.useCallback(()=>t(e.getState()),[e,t]),y.useCallback(()=>t(e.getInitialState()),[e,t]));return y.useDebugValue(r),r}const Ki=e=>{const t=_d(e),r=n=>Cd(t,n);return Object.assign(r,t),r},Vt=(e=>e?Ki(e):Ki);function Yi(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Gi(...e){return t=>{let r=!1;const n=e.map(a=>{const i=Yi(a,t);return!r&&typeof i=="function"&&(r=!0),i});if(r)return()=>{for(let a=0;a<n.length;a++){const i=n[a];typeof i=="function"?i():Yi(e[a],null)}}}}function Jr(...e){return Y.useCallback(Gi(...e),e)}var Xi=ye(e=>{const t=oe(()=>Sd(e,!0),[e.type]);return Fe(()=>{t.updateInput(e.props)}),t}),Id=class{constructor(e){this.getApi=e}get(e,t){return this.getApi()[t]}ownKeys(){return Object.keys(this.getApi())}has(e,t){return t in this.getApi()}getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(this.getApi(),t)}set(){return!1}defineProperty(){return!1}deleteProperty(){return!1}},rt=(e,t)=>{const r=qt(e);Fe(()=>{r.current=e});const n=oe(()=>new Proxy({},new Id(()=>r.current)),[]),a=t==null?void 0:t.key,i=e.getState();return oe(()=>({key:a,state:i,api:n}),[i,a])},wt=ye(e=>{const t=qt(e.get);return Fe(()=>{t.current=e.get}),oe(()=>Ee({source:e.source,query:e.query,get:()=>t.current()}),[e.source,JSON.stringify(e.query)])}),Ed=ye(e=>{const t=Wr(e.scopeElement);return oe(()=>[e.fieldName,t],[e.fieldName,t])}),Ad=ye(e=>{const o=e,{on:t,subscribe:r,flushSync:n}=o,a=V(o,["on","subscribe","flushSync"]),i=qt({on:t,subscribe:r,flushSync:n});Fe(()=>{i.current={on:t,subscribe:r,flushSync:n}});const s=Hi(Object.entries(a).map(([l,u])=>Ed({fieldName:l,scopeElement:u},{key:l})));return oe(()=>{const l=Object.fromEntries(s),{on:u,subscribe:c,flushSync:d}=i.current;return u&&(l.on=(f,h)=>u(f,h)),c&&(l.subscribe=f=>c(f)),d&&(l.flushSync=()=>d()),l},[...s])}),Qi=qi(null),Md=(e,t)=>Vi(Qi,e,t),Zi=()=>{const e=Wi(Qi);if(!e)throw new Error("Model context is not available in this context");return e},Pd=ye(({toolkit:e})=>{const[t,r]=ut(()=>({tools:{}})),n=Zi();Fe(()=>{if(!e)return;const i=[];for(const[l,u]of Object.entries(e))u.render&&i.push(a(l,u.render));const s=Object.entries(e).reduce((l,[u,c])=>{const h=c,{render:d}=h,f=V(h,["render"]);return l[u]=f,l},{}),o={getModelContext:()=>({tools:s})};return i.push(n.register(o)),()=>{i.forEach(l=>l())}},[e,n]);const a=(i,s)=>(r(o=>{var l;return E(m({},o),{tools:E(m({},o.tools),{[i]:[...(l=o.tools[i])!=null?l:[],s]})})}),()=>{r(o=>{var l,u;return E(m({},o),{tools:E(m({},o.tools),{[i]:(u=(l=o.tools[i])==null?void 0:l.filter(c=>c!==s))!=null?u:[]})})})});return rt({getState:()=>t,setToolUI:a})}),Nd=ye(()=>oe(()=>{const t=new Map;return{on:(r,n)=>{t.has(r)||t.set(r,new Set);const a=t.get(r);return a.add(n),()=>{a.delete(n),a.size===0&&t.delete(r)}},emit:(r,n)=>{const a=t.get(r),i=t.get("*");!a&&!i||queueMicrotask(()=>{if(a)for(const s of a)s(n);if(i)for(const s of i)s({event:r,payload:n})})}}},[])),es=qi(null),Ld=(e,t)=>Vi(es,e,t),Un=()=>{const e=Wi(es);if(!e)throw new Error("Events context is not available");return e},Dd=ye(()=>{const[e]=ut(()=>({})),t=new In;return rt({getState:()=>e,getModelContext:()=>t.getModelContext(),subscribe:r=>t.subscribe(r),register:r=>t.registerModelContextProvider(r)})}),Od=ye(({threads:e,modelContext:t,tools:r})=>{const n=tt(Nd()),{threads:a,tools:i,modelContext:s}=Ld(n,()=>{const l=Wr(t!=null?t:Dd(),[t]);return Md(l.api,()=>({modelContext:l,tools:Wr(r!=null?r:Pd({}),[r]),threads:Wr(e,[e])}))}),o=oe(()=>({threads:a.state,tools:i.state,modelContext:s.state}),[a.state,i.state,s.state]);return rt({getState:()=>o,threads:a.api,tools:i.api,modelContext:s.api,on:n.on})}),Fd=e=>{const t=()=>e.getState().api.threads.item("main");return{threads:Ee({source:"root",query:{},get:()=>e.getState().api.threads}),tools:Ee({source:"root",query:{},get:()=>e.getState().api.tools}),modelContext:Ee({source:"root",query:{},get:()=>e.getState().api.modelContext}),thread:Ee({source:"threads",query:{type:"main"},get:()=>e.getState().api.threads.thread("main")}),threadListItem:Ee({source:"threads",query:{type:"main"},get:()=>t()}),composer:Ee({source:"thread",query:{},get:()=>e.getState().api.threads.thread("main").composer}),on(r,n){const{event:a,scope:i}=Ut(r);if(i==="*")return e.getState().api.on(a,n);if(At("thread",i)||At("thread-list-item",i)||At("composer",i))return e.getState().api.on(a,s=>{s.threadId===t().getState().id&&n(s)});throw new Error(`Event scope is not available in this component: ${i}`)},subscribe:e.subscribe,flushSync:e.flushSync}},Bd=e=>{const t=Kr(),r=zn(Xi(Od(e))),n=y.useMemo(()=>Fd(r),[r]);return y.useMemo(()=>rs(t,n),[t,n])},Ee=e=>{const t=e.get;return t.source=e.source,t.query=e.query,t},xt=()=>()=>{},ts=y.createContext({threads:Ee({source:null,query:{},get:()=>{throw new Error("Threads is only available inside <AssistantProvider />")}}),tools:Ee({source:null,query:{},get:()=>{throw new Error("Tools is only available inside <AssistantProvider />")}}),modelContext:Ee({source:null,query:{},get:()=>{throw new Error("ModelContext is only available inside <AssistantProvider />")}}),threadListItem:Ee({source:null,query:{},get:()=>{throw new Error("ThreadListItem is only available inside <AssistantProvider />")}}),thread:Ee({source:null,query:{},get:()=>{throw new Error("Thread is only available inside <AssistantProvider />")}}),composer:Ee({source:null,query:{},get:()=>{throw new Error("Composer is only available inside <AssistantProvider />")}}),message:Ee({source:null,query:{},get:()=>{throw new Error("Message is only available inside <ThreadPrimitive.Messages />")}}),part:Ee({source:null,query:{},get:()=>{throw new Error("Part is only available inside <MessagePrimitive.Parts />")}}),attachment:Ee({source:null,query:{},get:()=>{throw new Error("Attachment is only available inside <MessagePrimitive.Attachments /> or <ComposerPrimitive.Attachments />")}}),subscribe:xt,flushSync:xt,on:e=>{const{scope:t}=Ut(e);throw new Error(`Event scope is not available in this component: ${t}`)}}),Kr=()=>y.useContext(ts),Mt=e=>{const t=Kr(),r=zn(Ad(e));return y.useMemo(()=>rs(t,r),[t,r])},zd=e=>Bd(e);function fe(e){return e?zd(e):Kr()}var Rd=(e,t)=>e===xt?t:t===xt?e:(...r)=>{e(...r),t(...r)},jd=(e,t)=>e===xt?t:t===xt?e:(...r)=>{const n=e(...r),a=t(...r);return()=>{n(),a()}},rs=(e,t)=>{const r=t.subscribe,n=t.flushSync;return E(m(m({},e),t),{subscribe:jd(e.subscribe,r!=null?r:xt),flushSync:Rd(e.flushSync,n!=null?n:xt)})},vt=({api:e,children:t,devToolsVisible:r=!0})=>(y.useEffect(()=>{if(!(!r||!e.subscribe))return pd.register(e)},[e,r]),p.jsx(ts.Provider,{value:e,children:t})),ns=(ku=class{constructor(e){er(this,Qe);tr(this,Qe,e)}get threads(){return Ye(this,Qe).threads().getState()}get tools(){return Ye(this,Qe).tools().getState()}get threadListItem(){return Ye(this,Qe).threadListItem().getState()}get thread(){return Ye(this,Qe).thread().getState()}get composer(){return Ye(this,Qe).composer().getState()}get message(){return Ye(this,Qe).message().getState()}get part(){return Ye(this,Qe).part().getState()}get attachment(){return Ye(this,Qe).attachment().getState()}},Qe=new WeakMap,ku),te=e=>{const t=fe(),r=y.useMemo(()=>new ns(t),[t]),n=y.useSyncExternalStore(t.subscribe,()=>e(r),()=>e(r));if(y.useDebugValue(n),n instanceof ns)throw new Error("You tried to return the entire AssistantState. This is not supported due to technical limitations.");return n},Hn=(e,t)=>{const r=fe(),n=y.useRef(t);y.useEffect(()=>{n.current=t});const{scope:a,event:i}=Ut(e);y.useEffect(()=>r.on({scope:a,event:i},s=>n.current(s)),[r,a,i])};function $d(e,t){function r(n){const a=y.useContext(e);if(!(n!=null&&n.optional)&&!a)throw new Error(`This component must be used within ${t}.`);return a}return r}function as(e,t){function r(a){const i=e(a);return i?i[t]:null}function n(a){let i=!1,s;typeof a=="function"?s=a:a&&typeof a=="object"&&(i=!!a.optional,s=a.selector);const o=r({optional:i});return o?s?o(s):o():null}return{[t]:n,[`${t}Store`]:r}}var is=y.createContext(null),Ud=$d(is,"ThreadPrimitive.Viewport"),{useThreadViewport:Yr,useThreadViewportStore:qn}=as(Ud,"useThreadViewport"),Hd=e=>{var r;const t=e;t.__isBound||((r=t.__internal_bindMethods)==null||r.call(t),t.__isBound=!0)};function qd(e,t=Vd){Hd(e);const r=y.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getState()));return y.useDebugValue(r),r}var Vd=e=>e;function ss(e){function t(r){let n=!1,a;typeof r=="function"?a=r:r&&(n=!!r.optional,a=r.selector);const i=e({optional:n});return i?qd(i,a):null}return t}function os(e){const t=fe(),r=te(()=>{var n,a,i;return t.thread.source&&(i=(a=(n=t.thread()).__internal_getRuntime)==null?void 0:a.call(n))!=null?i:null});if(!r&&!(e!=null&&e.optional))throw new Error("ThreadRuntime is not available");return r}var Wd=ss(os);function Jd(e){const t=fe(),r=te(()=>{var n,a,i;return t.threadListItem.source&&(i=(a=(n=t.threadListItem()).__internal_getRuntime)==null?void 0:a.call(n))!=null?i:null});if(!r&&!(e!=null&&e.optional))throw new Error("ThreadListItemRuntime is not available");return r}var ls=ss(Jd),Pt=e=>{const[,t]=ut(e.getState);return Fe(()=>(t(e.getState()),e.subscribe(()=>{t(e.getState())})),[e]),e.getState()},Kd=ye(({runtime:e})=>{const t=Pt(e),r=Un();return Fe(()=>{const n=[],a=["switched-to","switched-away"];for(const i of a){const s=e.unstable_on(i,()=>{r.emit(`thread-list-item.${i}`,{threadId:e.getState().id})});n.push(s)}return()=>{for(const i of n)i()}},[e,r]),rt({getState:()=>t,switchTo:e.switchTo,rename:e.rename,archive:e.archive,unarchive:e.unarchive,delete:e.delete,generateTitle:e.generateTitle,initialize:e.initialize,detach:e.detach,__internal_getRuntime:()=>e},{key:t.id})}),dr=e=>{const t=Hi(e);return{state:t.map(r=>r.state),api:r=>{var a,i;const n="index"in r?(a=t[r.index])==null?void 0:a.api:(i=t.find(s=>s.key===r.key))==null?void 0:i.api;if(!n)throw new Error(`tapLookupResources: Resource not found for lookup: ${JSON.stringify(r)}`);return n}}},us=ye(({runtime:e})=>{const t=Pt(e);return rt({getState:()=>t,remove:e.remove,__internal_getRuntime:()=>e},{key:t.id})}),Yd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getAttachmentByIndex(t),[e,t]);return tt(us({runtime:r}))}),cs=ye(({threadIdRef:e,messageIdRef:t,runtime:r})=>{var o;const n=Pt(r),a=Un();Fe(()=>{const l=[],u=["send","attachment-add"];for(const c of u){const d=r.unstable_on(c,()=>{a.emit(`composer.${c}`,m({threadId:e.current},t&&{messageId:t.current}))});l.push(d)}return()=>{for(const c of l)c()}},[r,a,e,t]);const i=dr(n.attachments.map((l,u)=>Yd({runtime:r,index:u},{key:u}))),s=oe(()=>{var l;return{text:n.text,role:n.role,attachments:i.state,runConfig:n.runConfig,isEditing:n.isEditing,canCancel:n.canCancel,attachmentAccept:n.attachmentAccept,isEmpty:n.isEmpty,type:(l=n.type)!=null?l:"thread"}},[n,i.state]);return rt({getState:()=>s,setText:r.setText,setRole:r.setRole,setRunConfig:r.setRunConfig,addAttachment:r.addAttachment,reset:r.reset,clearAttachments:r.clearAttachments,send:r.send,cancel:r.cancel,beginEdit:(o=r.beginEdit)!=null?o:(()=>{throw new Error("beginEdit is not supported in this runtime")}),attachment:l=>"id"in l?i.api({key:l.id}):i.api(l),__internal_getRuntime:()=>r})}),Gd=ye(({runtime:e})=>{const t=Pt(e);return rt({getState:()=>t,addToolResult:n=>e.addToolResult(n),resumeToolCall:n=>e.resumeToolCall(n),__internal_getRuntime:()=>e},{key:t.type==="tool-call"?`toolCallId-${t.toolCallId}`:void 0})}),Xd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getAttachmentByIndex(t),[e,t]);return tt(us({runtime:r}))}),Qd=ye(({runtime:e,index:t})=>{const r=oe(()=>e.getMessagePartByIndex(t),[e,t]);return tt(Gd({runtime:r}))}),Zd=ye(({runtime:e,threadIdRef:t})=>{var f,h;const r=Pt(e),[n,a]=ut(!1),[i,s]=ut(!1),o=oe(()=>({get current(){return e.getState().id}}),[e]),l=tt(cs({runtime:e.composer,threadIdRef:t,messageIdRef:o})),u=dr(r.content.map((g,v)=>Qd({runtime:e,index:v},{key:v}))),c=dr((h=(f=r.attachments)==null?void 0:f.map((g,v)=>Xd({runtime:e,index:v},{key:v})))!=null?h:[]),d=oe(()=>E(m({},r),{parts:u.state,composer:l.state,isCopied:n,isHovering:i}),[r,u.state,l.state,n,i]);return rt({getState:()=>d,composer:l.api,reload:g=>e.reload(g),speak:()=>e.speak(),stopSpeaking:()=>e.stopSpeaking(),submitFeedback:g=>e.submitFeedback(g),switchToBranch:g=>e.switchToBranch(g),getCopyText:()=>e.unstable_getCopyText(),part:g=>"index"in g?u.api({index:g.index}):u.api({key:`toolCallId-${g.toolCallId}`}),attachment:g=>"id"in g?c.api({key:g.id}):c.api(g),setIsCopied:a,setIsHovering:s,__internal_getRuntime:()=>e},{key:r.id})}),eh=ye(({runtime:e,id:t,threadIdRef:r})=>{const n=oe(()=>e.getMessageById(t),[e,t]);return tt(Zd({runtime:n,threadIdRef:r}))}),th=ye(({runtime:e})=>{const t=Pt(e),r=Un();Fe(()=>{const o=[],l=["run-start","run-end","initialize","model-context-update"];for(const u of l){const c=e.unstable_on(u,()=>{var f;const d=((f=e.getState())==null?void 0:f.threadId)||"unknown";r.emit(`thread.${u}`,{threadId:d})});o.push(c)}return()=>{for(const u of o)u()}},[e]);const n=oe(()=>({get current(){return e.getState().threadId}}),[e]),a=tt(cs({runtime:e.composer,threadIdRef:n})),i=dr(t.messages.map(o=>eh({runtime:e,id:o.id,threadIdRef:n},{key:o.id}))),s=oe(()=>({isEmpty:i.state.length===0&&!t.isLoading,isDisabled:t.isDisabled,isLoading:t.isLoading,isRunning:t.isRunning,capabilities:t.capabilities,state:t.state,suggestions:t.suggestions,extras:t.extras,speech:t.speech,composer:a.state,messages:i.state}),[t,i,a.state]);return rt({getState:()=>s,composer:a.api,append:e.append,startRun:e.startRun,unstable_resumeRun:e.unstable_resumeRun,cancelRun:e.cancelRun,getModelContext:e.getModelContext,export:e.export,import:e.import,reset:e.reset,stopSpeaking:e.stopSpeaking,startVoice:()=>M(null,null,function*(){throw new Error("startVoice is not supported in this runtime")}),stopVoice:()=>M(null,null,function*(){throw new Error("stopVoice is not supported in this runtime")}),message:o=>"id"in o?i.api({key:o.id}):i.api(o),__internal_getRuntime:()=>e})}),rh=ye(({runtime:e,id:t})=>{const r=oe(()=>e.getItemById(t),[e,t]);return tt(Kd({runtime:r}))}),nh=ye(({runtime:e,__internal_assistantRuntime:t})=>{const r=Pt(e),n=tt(th({runtime:e.main})),a=dr(Object.keys(r.threadItems).map(s=>rh({runtime:e,id:s},{key:s}))),i=oe(()=>{var s;return{mainThreadId:r.mainThreadId,newThreadId:(s=r.newThread)!=null?s:null,isLoading:r.isLoading,threadIds:r.threads,archivedThreadIds:r.archivedThreads,threadItems:a.state,main:n.state}},[r,a.state,n.state]);return rt({getState:()=>i,thread:()=>n.api,item:s=>{if(s==="main")return a.api({key:i.mainThreadId});if("id"in s)return a.api({key:s.id});const{index:o,archived:l=!1}=s,u=l?i.archivedThreadIds[o]:i.threadIds[o];return a.api({key:u})},switchToThread:s=>{e.switchToThread(s)},switchToNewThread:()=>{e.switchToNewThread()},__internal_getAssistantRuntime:()=>t})}),ah=ye(e=>{const t=Zi();return Fe(()=>e.registerModelContextProvider(t),[e,t]),tt(nh({runtime:e.threads,__internal_assistantRuntime:e}))}),Vn=e=>{const t=new Map,r=()=>{let n=0;for(const a of t.values())n+=a;e(n)};return{register:()=>{const n=Symbol();return t.set(n,0),{setHeight:a=>{t.get(n)!==a&&(t.set(n,a),r())},unregister:()=>{t.delete(n),r()}}}}},ih=(e={})=>{const t=new Set,r=Vn(s=>{i.setState({height:E(m({},i.getState().height),{viewport:s})})}),n=Vn(s=>{i.setState({height:E(m({},i.getState().height),{inset:s})})}),a=Vn(s=>{i.setState({height:E(m({},i.getState().height),{userMessage:s})})}),i=Vt(()=>{var s;return{isAtBottom:!0,scrollToBottom:({behavior:o="auto"}={})=>{for(const l of t)l({behavior:o})},onScrollToBottom:o=>(t.add(o),()=>{t.delete(o)}),turnAnchor:(s=e.turnAnchor)!=null?s:"bottom",height:{viewport:0,inset:0,userMessage:0},registerViewport:r.register,registerContentInset:n.register,registerUserMessageHeight:a.register}});return i},hr=e=>e,sh=e=>{const t=qn({optional:!0}),[r]=y.useState(()=>ih(e));return y.useEffect(()=>t==null?void 0:t.getState().onScrollToBottom(()=>{r.getState().scrollToBottom()}),[t,r]),y.useEffect(()=>{if(t)return r.subscribe(n=>{t.getState().isAtBottom!==n.isAtBottom&&hr(t).setState({isAtBottom:n.isAtBottom})})},[r,t]),y.useEffect(()=>{var i;const n={turnAnchor:(i=e.turnAnchor)!=null?i:"bottom"};r.getState().turnAnchor!==n.turnAnchor&&hr(r).setState(n)},[r,e.turnAnchor]),r},ds=({children:e,options:t={}})=>{const r=sh(t),[n]=y.useState(()=>({useThreadViewport:r}));return p.jsx(is.Provider,{value:n,children:e})},oh=e=>{var t;return(t=e._core)==null?void 0:t.RenderComponent},lh=({children:e,runtime:t})=>{const r=fe({threads:ah(t)}),n=oh(t);return p.jsxs(vt,{api:r,children:[n&&p.jsx(n,{}),p.jsx(ds,{children:e})]})},hs=y.memo(lh),uh=({index:e,archived:t,children:r})=>{const n=fe(),a=Mt({threadListItem:wt({source:"threads",query:{type:"index",index:e,archived:t},get:()=>n.threads().item({index:e,archived:t})}),on(i,s){const o=()=>n.threads().item({index:e,archived:t}),{event:l,scope:u}=Ut(i);return At("thread-list-item",u)?n.on({scope:"*",event:l},c=>{c.threadId===o().getState().id&&s(c)}):n.on(i,s)}});return p.jsx(vt,{api:a,children:r})},ch=({id:e,children:t})=>{const r=fe(),n=Mt({threadListItem:wt({source:"threads",query:{type:"id",id:e},get:()=>r.threads().item({id:e})}),on(a,i){const s=()=>r.threads().item({id:e}),{event:o,scope:l}=Ut(a);return At("thread-list-item",l)?r.on({scope:"*",event:o},u=>{u.threadId===s().getState().id&&i(u)}):r.on(a,i)}});return p.jsx(vt,{api:n,children:t})},dh=({index:e,children:t})=>{const r=fe(),n=Mt({message:wt({source:"thread",query:{type:"index",index:e},get:()=>r.thread().message({index:e})}),composer:wt({source:"message",query:{},get:()=>r.thread().message({index:e}).composer}),on(a,i){const s=()=>r.thread().message({index:e}),{event:o,scope:l}=Ut(a);return!At("composer",l)&&!At("message",l)?r.on(a,i):r.on({scope:"thread",event:o},u=>{u.messageId===s().getState().id&&i(u)})}});return p.jsx(vt,{api:n,children:t})},hh=({index:e,children:t})=>{const r=fe(),n=Mt({part:wt({source:"message",query:{type:"index",index:e},get:()=>r.message().part({index:e})})});return p.jsx(vt,{api:n,children:t})},fh=({index:e,children:t})=>{const r=fe(),n=Mt({attachment:wt({source:"message",query:{type:"index",index:e},get:()=>r.message().attachment({index:e})})});return p.jsx(vt,{api:n,children:t})},ph=({index:e,children:t})=>{const r=fe(),n=Mt({attachment:wt({source:"composer",query:{type:"index",index:e},get:()=>r.composer().attachment({index:e})})});return p.jsx(vt,{api:n,children:t})},mh=ye(({text:e,isRunning:t})=>{const r=oe(()=>({type:"text",text:e,status:t?{type:"running"}:{type:"complete"}}),[e,t]);return rt({getState:()=>r,addToolResult:()=>{throw new Error("Not supported")},resumeToolCall:()=>{throw new Error("Not supported")}})}),gh=({text:e,isRunning:t=!1,children:r})=>{const n=zn(Xi(mh({text:e,isRunning:t}))),a=Mt({part:wt({source:"root",query:{},get:()=>n.getState().api}),subscribe:n.subscribe,flushSync:n.flushSync});return p.jsx(vt,{api:a,children:r})},fs=(e,t)=>{var r,n;return t===void 0?((r=e.status)==null?void 0:r.type)==="requires-action"&&e.status.reason==="tool-calls"&&e.content.every(a=>a.type!=="tool-call"||!!a.result):((n=e.status)==null?void 0:n.type)==="requires-action"&&e.status.reason==="tool-calls"&&e.content.every(a=>a.type!=="tool-call"||!!a.result||!t.includes(a.toolName))},Wn=class extends Error{constructor(t,r){super(r);C(this,"name","AbortError");C(this,"detach");this.detach=t}},yh=class extends sd{constructor(t,r){super(t);C(this,"capabilities",{switchToBranch:!0,switchBranchDuringRun:!0,edit:!0,reload:!0,cancel:!0,unstable_copy:!0,speech:!1,attachments:!1,feedback:!1});C(this,"abortController",null);C(this,"isDisabled",!1);C(this,"_isLoading",!1);C(this,"_suggestions",[]);C(this,"_suggestionsController",null);C(this,"_options");C(this,"_lastRunConfig",{});C(this,"_loadPromise");this.__internal_setOptions(r)}get isLoading(){return this._isLoading}get suggestions(){return this._suggestions}get adapters(){return this._options.adapters}get extras(){}__internal_setOptions(t){var s,o,l;if(this._options===t)return;this._options=t;let r=!1;const n=((s=t.adapters)==null?void 0:s.speech)!==void 0;this.capabilities.speech!==n&&(this.capabilities.speech=n,r=!0);const a=((o=t.adapters)==null?void 0:o.attachments)!==void 0;this.capabilities.attachments!==a&&(this.capabilities.attachments=a,r=!0);const i=((l=t.adapters)==null?void 0:l.feedback)!==void 0;this.capabilities.feedback!==i&&(this.capabilities.feedback=i,r=!0),r&&this._notifySubscribers()}__internal_load(){var r,n;if(this._loadPromise)return this._loadPromise;const t=(n=(r=this.adapters.history)==null?void 0:r.load())!=null?n:Promise.resolve(null);return this._isLoading=!0,this._notifySubscribers(),this._loadPromise=t.then(a=>{var s,o;if(!a)return;this.repository.import(a),this._notifySubscribers();const i=(o=(s=this.adapters.history)==null?void 0:s.resume)==null?void 0:o.bind(this.adapters.history);a.unstable_resume&&i&&this.startRun({parentId:this.repository.headId,sourceId:this.repository.headId,runConfig:this._lastRunConfig},i)}).finally(()=>{this._isLoading=!1,this._notifySubscribers()}),this._loadPromise}append(t){return M(this,null,function*(){var a,i,s;this.ensureInitialized();const r=sr(t,It(),{type:"complete",reason:"unknown"});this.repository.addOrUpdateMessage(t.parentId,r),(a=this._options.adapters.history)==null||a.append(m({parentId:t.parentId,message:r},t.runConfig!==void 0&&{runConfig:t.runConfig})),((i=t.startRun)!=null?i:t.role==="user")?yield this.startRun({parentId:r.id,sourceId:t.sourceId,runConfig:(s=t.runConfig)!=null?s:{}}):(this.repository.resetHead(r.id),this._notifySubscribers())})}resumeRun(n){var a=n,{stream:t}=a,r=V(a,["stream"]);if(!t)throw new Error("You must pass a stream parameter to resume runs.");return this.startRun(r,t)}unstable_loadExternalState(){throw new Error("Runtime does not support importing external states.")}startRun(a,i){return M(this,arguments,function*({parentId:t,runConfig:r},n){var u,c,d;this.ensureInitialized();let o={id:It(),role:"assistant",status:{type:"running"},content:[],metadata:{unstable_state:this.state,unstable_annotations:[],unstable_data:[],steps:[],custom:{}},createdAt:new Date};this._notifyEventSubscribers("run-start");try{this._suggestions=[],(u=this._suggestionsController)==null||u.abort(),this._suggestionsController=null,this._notifySubscribers();do o=yield this.performRoundtrip(t,o,r,n),n=void 0;while(fs(o,this._options.unstable_humanToolNames))}finally{this._notifyEventSubscribers("run-end")}this._suggestionsController=new AbortController;const l=this._suggestionsController.signal;if(this.adapters.suggestion&&((c=o.status)==null?void 0:c.type)!=="requires-action"){const w=(d=this.adapters.suggestion)==null?void 0:d.generate({messages:this.messages});if(Symbol.asyncIterator in w)try{for(var f=zt(w),h,g,v;h=!(g=yield f.next()).done;h=!1){const b=g.value;if(l.aborted)break;this._suggestions=b,this._notifySubscribers()}}catch(g){v=[g]}finally{try{h&&(g=f.return)&&(yield g.call(f))}finally{if(v)throw v[0]}}else{const b=yield w;if(l.aborted)return;this._suggestions=b,this._notifySubscribers()}}})}performRoundtrip(t,r,n,a){return M(this,null,function*(){var g,v,w,b,I,T,D,B,_,P;const i=t?this.repository.getMessages(t):[];(g=this.abortController)==null||g.abort(),this.abortController=new AbortController;const s=r.content,o=(v=r.metadata)==null?void 0:v.unstable_annotations,l=(w=r.metadata)==null?void 0:w.unstable_data,u=(b=r.metadata)==null?void 0:b.steps,c=(I=r.metadata)==null?void 0:I.custom,d=N=>{var ue,x,ie,_e,k,Te;const H=(ue=N.metadata)==null?void 0:ue.steps,z=H?[...u!=null?u:[],...H]:void 0,O=(x=N.metadata)==null?void 0:x.unstable_annotations,ee=(ie=N.metadata)==null?void 0:ie.unstable_data,de=O?[...o!=null?o:[],...O]:void 0,pe=ee?[...l!=null?l:[],...ee]:void 0;r=m(E(m(m({},r),N.content?{content:[...s,...(_e=N.content)!=null?_e:[]]}:void 0),{status:(k=N.status)!=null?k:r.status}),N.metadata?{metadata:m(m(m(m(m(m({},r.metadata),N.metadata.unstable_state?{unstable_state:N.metadata.unstable_state}:void 0),de?{unstable_annotations:de}:void 0),pe?{unstable_data:pe}:void 0),z?{steps:z}:void 0),(Te=N.metadata)!=null&&Te.custom?{custom:m(m({},c!=null?c:{}),N.metadata.custom)}:void 0)}:void 0),this.repository.addOrUpdateMessage(t,r),this._notifySubscribers()},f=(T=this._options.maxSteps)!=null?T:2;if(((_=(B=(D=r.metadata)==null?void 0:D.steps)==null?void 0:B.length)!=null?_:0)>=f)return d({status:{type:"incomplete",reason:"tool-calls"}}),r;d({status:{type:"running"}}),this.repository.resetHead(r.id),this._notifySubscribers();try{this._lastRunConfig=n!=null?n:{};const N=this.getModelContext();a=a!=null?a:this.adapters.chatModel.run.bind(this.adapters.chatModel);const H=this.abortController.signal,z=a({messages:i,runConfig:this._lastRunConfig,abortSignal:H,context:N,config:N,unstable_assistantMessageId:r.id,unstable_getMessage(){return r}});if(Symbol.asyncIterator in z)try{for(var j=zt(z),R,U,S;R=!(U=yield j.next()).done;R=!1){const O=U.value;if(H.aborted){d({status:{type:"incomplete",reason:"cancelled"}});break}d(O)}}catch(U){S=[U]}finally{try{R&&(U=j.return)&&(yield U.call(j))}finally{if(S)throw S[0]}}else d(yield z);r.status.type==="running"&&d({status:{type:"complete",reason:"unknown"}})}catch(N){if(N instanceof Wn)d({status:{type:"incomplete",reason:"cancelled"}});else throw d({status:{type:"incomplete",reason:"error",error:N instanceof Error?N.message:`[${typeof N}] ${new String(N).toString()}`}}),N}finally{this.abortController=null,(r.status.type==="complete"||r.status.type==="incomplete")&&(yield(P=this._options.adapters.history)==null?void 0:P.append({parentId:t,message:r,runConfig:this._lastRunConfig}))}return r})}detach(){var r;const t=new Wn(!0);(r=this.abortController)==null||r.abort(t),this.abortController=null}cancelRun(){var r;const t=new Wn(!1);(r=this.abortController)==null||r.abort(t),this.abortController=null}addToolResult({messageId:t,toolCallId:r,result:n,isError:a,artifact:i}){const s=this.repository.getMessage(t),{parentId:o}=s;let{message:l}=s;if(l.role!=="assistant")throw new Error("Tried to add tool result to non-assistant message");let u=!1,c=!1;const d=l.content.map(f=>f.type!=="tool-call"||f.toolCallId!==r?f:(c=!0,f.result||(u=!0),E(m({},f),{result:n,artifact:i,isError:a})));if(!c)throw new Error("Tried to add tool result to non-existing tool call");l=E(m({},l),{content:d}),this.repository.addOrUpdateMessage(o,l),u&&fs(l,this._options.unstable_humanToolNames)&&this.performRoundtrip(o,l,this._lastRunConfig)}resumeToolCall(t){throw new Error("Local runtime does not support resuming tool calls.")}},ps=Object.freeze([]),Jn="__DEFAULT_ID__",bh=Object.freeze({[Jn]:{id:Jn,remoteId:void 0,externalId:void 0,status:"regular",title:void 0}}),wh=class extends ar{constructor(t){super();C(this,"_mainThread");this._mainThread=t()}get isLoading(){return!1}getMainThreadRuntimeCore(){return this._mainThread}get newThreadId(){throw new Error("Method not implemented.")}get threadIds(){throw ps}get archivedThreadIds(){throw ps}get mainThreadId(){return Jn}get threadData(){return bh}getThreadRuntimeCore(){throw new Error("Method not implemented.")}getLoadThreadsPromise(){throw new Error("Method not implemented.")}getItemById(t){if(t===this.mainThreadId)return{status:"regular",id:this.mainThreadId,remoteId:this.mainThreadId,externalId:void 0,title:void 0,isMain:!0};throw new Error("Method not implemented")}switchToThread(){return M(this,null,function*(){throw new Error("Method not implemented.")})}switchToNewThread(){throw new Error("Method not implemented.")}rename(){throw new Error("Method not implemented.")}archive(){throw new Error("Method not implemented.")}detach(){throw new Error("Method not implemented.")}unarchive(){throw new Error("Method not implemented.")}delete(){throw new Error("Method not implemented.")}initialize(t){return Promise.resolve({remoteId:t,externalId:void 0})}generateTitle(){throw new Error("Method not implemented.")}},xh=class extends En{constructor(t,r){super();C(this,"threads");C(this,"Provider");C(this,"_options");this._options=t,this.threads=new wh(()=>new yh(this._contextProvider,this._options)),r&&this.threads.getMainThreadRuntimeCore().import(Ln.fromArray(r))}},ms=e=>{try{const r=e.split(".")[1];if(!r)throw new Error("Invalid JWT format");let n=r.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";const a=atob(n),s=JSON.parse(a).exp;if(!s||typeof s!="number")throw new Error('JWT does not contain a valid "exp" field');return s*1e3}catch(t){throw new Error(`Unable to determine the token expiry: ${t}`)}},gs=(Su=class{constructor(e){C(this,"strategy","jwt");C(this,"cachedToken",null);C(this,"tokenExpiry",null);er(this,Ir);tr(this,Ir,e)}getAuthHeaders(){return M(this,null,function*(){const e=Date.now();if(this.cachedToken&&this.tokenExpiry&&this.tokenExpiry-e>30*1e3)return{Authorization:`Bearer ${this.cachedToken}`};const t=yield Ye(this,Ir).call(this);return t?(this.cachedToken=t,this.tokenExpiry=ms(t),{Authorization:`Bearer ${t}`}):!1})}readAuthHeaders(e){const t=e.get("Authorization");if(!t)return;const[r,n]=t.split(" ");if(r!=="Bearer"||!n)throw new Error("Invalid auth header received");this.cachedToken=n,this.tokenExpiry=ms(n)}},Ir=new WeakMap,Su),vh=(_u=class{constructor(e,t,r){C(this,"strategy","api-key");er(this,Er);er(this,Ar);er(this,Mr);tr(this,Er,e),tr(this,Ar,t),tr(this,Mr,r)}getAuthHeaders(){return M(this,null,function*(){return{Authorization:`Bearer ${Ye(this,Er)}`,"Aui-User-Id":Ye(this,Ar),"Aui-Workspace-Id":Ye(this,Mr)}})}readAuthHeaders(){}},Er=new WeakMap,Ar=new WeakMap,Mr=new WeakMap,_u),Gr="aui:refresh_token",kh=class{constructor(e){C(this,"strategy","anon");C(this,"baseUrl");C(this,"jwtStrategy");this.baseUrl=e,this.jwtStrategy=new gs(()=>M(this,null,function*(){const t=Date.now(),r=localStorage.getItem(Gr),n=r?JSON.parse(r):void 0;if(n)if(new Date(n.expires_at).getTime()-t>30*1e3){const u=yield fetch(`${this.baseUrl}/v1/auth/tokens/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refresh_token:n.token})});if(u.ok){const c=yield u.json(),{access_token:d,refresh_token:f}=c;return f&&localStorage.setItem(Gr,JSON.stringify(f)),d}}else localStorage.removeItem(Gr);const a=yield fetch(`${this.baseUrl}/v1/auth/tokens/anonymous`,{method:"POST"});if(!a.ok)return null;const i=yield a.json(),{access_token:s,refresh_token:o}=i;return!s||!o?null:(localStorage.setItem(Gr,JSON.stringify(o)),s)}))}getAuthHeaders(){return M(this,null,function*(){return this.jwtStrategy.getAuthHeaders()})}readAuthHeaders(e){this.jwtStrategy.readAuthHeaders(e)}},Sh=class extends Error{constructor(e){super(e),this.name="APIError"}},_h=class{constructor(e){C(this,"_auth");C(this,"_baseUrl");if("authToken"in e)this._baseUrl=e.baseUrl,this._auth=new gs(e.authToken);else if("apiKey"in e)this._baseUrl="https://backend.assistant-api.com",this._auth=new vh(e.apiKey,e.userId,e.workspaceId);else if("anonymous"in e)this._baseUrl=e.baseUrl,this._auth=new kh(e.baseUrl);else throw new Error("Invalid configuration: Must provide authToken, apiKey, or anonymous configuration")}initializeAuth(){return M(this,null,function*(){return!!this._auth.getAuthHeaders()})}makeRawRequest(r){return M(this,arguments,function*(e,t={}){var l;const n=yield this._auth.getAuthHeaders();if(!n)throw new Error("Authorization failed");const a=E(m(m({},n),t.headers),{"Content-Type":"application/json"}),i=new URLSearchParams;if(t.query)for(const[u,c]of Object.entries(t.query))c!==!1&&(c===!0?i.set(u,"true"):i.set(u,c.toString()));const s=new URL(`${this._baseUrl}/v1${e}`);s.search=i.toString();const o=yield fetch(s,{method:(l=t.method)!=null?l:"GET",headers:a,body:t.body?JSON.stringify(t.body):null});if(this._auth.readAuthHeaders(o.headers),!o.ok){const u=yield o.text();try{const c=JSON.parse(u);throw new Sh(c.message)}catch(c){throw new Error(`Request failed with status ${o.status}, ${u}`)}}return o})}makeRequest(r){return M(this,arguments,function*(e,t={}){return(yield this.makeRawRequest(e,t)).json()})}},Th=class{constructor(e){this.cloud=e}create(){return M(this,null,function*(){return this.cloud.makeRequest("/auth/tokens",{method:"POST"})})}},Ch=class{constructor(e){this.cloud=e}__internal_getAssistantOptions(e){return{api:`${this.cloud._baseUrl}/v1/runs/stream`,headers:()=>M(this,null,function*(){const t=yield this.cloud._auth.getAuthHeaders();if(!t)throw new Error("Authorization failed");return E(m({},t),{Accept:"text/plain"})}),body:{assistant_id:e,response_format:"vercel-ai-data-stream/v1",thread_id:"unstable_todo"}}}stream(e){return M(this,null,function*(){const t=yield this.cloud.makeRawRequest("/runs/stream",{method:"POST",headers:{Accept:"text/plain"},body:e});return Pn.fromResponse(t,new Fc)})}},Ih=class{constructor(e){this.cloud=e}list(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}/messages`,{query:t})})}create(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}/messages`,{method:"POST",body:t})})}},Eh=class{constructor(e){C(this,"messages");this.cloud=e,this.messages=new Ih(e)}list(e){return M(this,null,function*(){return this.cloud.makeRequest("/threads",{query:e})})}get(e){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`)})}create(e){return M(this,null,function*(){return this.cloud.makeRequest("/threads",{method:"POST",body:e})})}update(e,t){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`,{method:"PUT",body:t})})}delete(e){return M(this,null,function*(){return this.cloud.makeRequest(`/threads/${encodeURIComponent(e)}`,{method:"DELETE"})})}},Ah=class{constructor(e){this.cloud=e}pdfToImages(e){return M(this,null,function*(){return this.cloud.makeRequest("/files/pdf-to-images",{method:"POST",body:e})})}generatePresignedUploadUrl(e){return M(this,null,function*(){return this.cloud.makeRequest("/files/attachments/generate-presigned-upload-url",{method:"POST",body:e})})}},Mh=class{constructor(e){C(this,"threads");C(this,"auth");C(this,"runs");C(this,"files");const t=new _h(e);this.threads=new Eh(t),this.auth={tokens:new Th(t)},this.runs=new Ch(t),this.files=new Ah(t)}};function Kn(e,t=0){return t>100?!1:e===null||typeof e=="string"||typeof e=="boolean"?!0:typeof e=="number"?!Number.isNaN(e)&&Number.isFinite(e):Array.isArray(e)?e.every(r=>Kn(r,t+1)):typeof e=="object"?Object.entries(e).every(([r,n])=>typeof r=="string"&&Kn(n,t+1)):!1}var Ph=e=>{var t;return m({role:e.role,content:e.content.map(r=>{const n=r.type;switch(n){case"text":return{type:"text",text:r.text};case"reasoning":return{type:"reasoning",text:r.text};case"source":return m({type:"source",sourceType:r.sourceType,id:r.id,url:r.url},r.title?{title:r.title}:void 0);case"tool-call":return Kn(r.result)||console.warn(`tool-call result is not JSON! ${JSON.stringify(r)}`),m(m(m({type:"tool-call",toolCallId:r.toolCallId,toolName:r.toolName},JSON.stringify(r.args)===r.argsText?{args:r.args}:{argsText:r.argsText}),r.result?{result:r.result}:{}),r.isError?{isError:!0}:{});default:{const a=n;throw new Error(`Message part type not supported by aui/v0: ${a}`)}}}),metadata:e.metadata},e.status?{status:((t=e.status)==null?void 0:t.type)==="running"?{type:"incomplete",reason:"cancelled"}:e.status}:void 0)},Nh=e=>{const t=e.content,r=sr(m({id:e.id,createdAt:e.created_at},t),e.id,{type:"complete",reason:"unknown"});return{parentId:e.parent_id,message:r}},Yn=new WeakMap,Lh=class{constructor(e,t){this.parent=e,this.formatAdapter=t}append(e){return M(this,null,function*(){const t=this.formatAdapter.encode(e),r=this.formatAdapter.getId(e.message);return this.parent._appendWithFormat(e.parentId,r,this.formatAdapter.format,t)})}load(){return M(this,null,function*(){return this.parent._loadWithFormat(this.formatAdapter.format,e=>this.formatAdapter.decode(e))})}},Dh=class{constructor(e,t){this.cloudRef=e,this.store=t}get _getIdForLocalId(){return Yn.has(this.store.threadListItem())||Yn.set(this.store.threadListItem(),{}),Yn.get(this.store.threadListItem())}withFormat(e){return new Lh(this,e)}append(r){return M(this,arguments,function*({parentId:e,message:t}){var i;const{remoteId:n}=yield this.store.threadListItem().initialize(),a=this.cloudRef.current.threads.messages.create(n,{parent_id:e?(i=yield this._getIdForLocalId[e])!=null?i:e:null,format:"aui/v0",content:Ph(t)}).then(({message_id:s})=>(this._getIdForLocalId[t.id]=s,s));return this._getIdForLocalId[t.id]=a,a.then(()=>{})})}load(){return M(this,null,function*(){const e=this.store.threadListItem().getState().remoteId;if(!e)return{messages:[]};const{messages:t}=yield this.cloudRef.current.threads.messages.list(e,{format:"aui/v0"});return{messages:t.filter(n=>n.format==="aui/v0").map(Nh).reverse()}})}_appendWithFormat(e,t,r,n){return M(this,null,function*(){var s;const{remoteId:a}=yield this.store.threadListItem().initialize(),i=this.cloudRef.current.threads.messages.create(a,{parent_id:e?(s=yield this._getIdForLocalId[e])!=null?s:e:null,format:r,content:n}).then(({message_id:o})=>(this._getIdForLocalId[t]=o,o));return this._getIdForLocalId[t]=i,i.then(()=>{})})}_loadWithFormat(e,t){return M(this,null,function*(){const r=this.store.threadListItem().getState().remoteId;if(!r)return{messages:[]};const{messages:n}=yield this.cloudRef.current.threads.messages.list(r,{format:e});return{messages:n.filter(a=>a.format===e).map(a=>t({id:a.id,parent_id:a.parent_id,format:a.format,content:a.content})).reverse()}})}},Oh=e=>{const t=fe(),[r]=y.useState(()=>new Dh(e,t));return r},ys=typeof process!="undefined"&&((Tu=process==null?void 0:process.env)==null?void 0:Tu.NEXT_PUBLIC_ASSISTANT_BASE_URL),Gn=ys?new Mh({baseUrl:ys,anonymous:!0}):void 0,Fh=e=>{var a;const t=y.useRef(e);y.useEffect(()=>{t.current=e},[e]);const r=y.useCallback(function({children:s}){var d;const o=Oh({get current(){var f;return(f=t.current.cloud)!=null?f:Gn}}),l=(d=t.current.cloud)!=null?d:Gn,u=y.useMemo(()=>new nd(l),[l]),c=y.useMemo(()=>({history:o,attachments:u}),[o,u]);return p.jsx(Fn,{adapters:c,children:s})},[]),n=(a=e.cloud)!=null?a:Gn;return n?{list:()=>M(null,null,function*(){const{threads:i}=yield n.threads.list();return{threads:i.map(s=>{var o;return{status:s.is_archived?"archived":"regular",remoteId:s.id,title:s.title,externalId:(o=s.external_id)!=null?o:void 0}})}}),initialize:()=>M(null,null,function*(){var u,c;const s=yield(c=(u=e.create)==null?void 0:u.call(e))!=null?c:Promise.resolve(),o=s?s.externalId:void 0,{thread_id:l}=yield n.threads.create({last_message_at:new Date,external_id:o});return{externalId:o,remoteId:l}}),rename:(i,s)=>M(null,null,function*(){return n.threads.update(i,{title:s})}),archive:i=>M(null,null,function*(){return n.threads.update(i,{is_archived:!0})}),unarchive:i=>M(null,null,function*(){return n.threads.update(i,{is_archived:!1})}),delete:i=>M(null,null,function*(){var s;return yield(s=e.delete)==null?void 0:s.call(e,i),n.threads.delete(i)}),generateTitle:(i,s)=>M(null,null,function*(){return n.runs.stream({thread_id:i,assistant_id:"system/thread_title",messages:s})}),fetch:i=>M(null,null,function*(){var o;const s=yield n.threads.get(i);return{status:s.is_archived?"archived":"regular",remoteId:s.id,title:s.title,externalId:(o=s.external_id)!=null?o:void 0}}),unstable_Provider:r}:new ud},Bh=(e,n)=>{var a=n,{initialMessages:t}=a,r=V(a,["initialMessages"]);var u;const c=(u=ad())!=null?u:{},{modelContext:i}=c,s=V(c,["modelContext"]),o=y.useMemo(()=>E(m({},r),{adapters:E(m(m({},s),r.adapters),{chatModel:e})}),[e,r,s]),[l]=y.useState(()=>new xh(o,t));return y.useEffect(()=>()=>{l.threads.getMainThreadRuntimeCore().detach()},[l]),y.useEffect(()=>{l.threads.getMainThreadRuntimeCore().__internal_setOptions(o),l.threads.getMainThreadRuntimeCore().__internal_load()},[l,o]),y.useEffect(()=>{if(i)return l.registerModelContextProvider(i)},[i,l]),y.useMemo(()=>new Xn(l),[l])},bs=(e,n={})=>{var a=n,{cloud:t}=a,r=V(a,["cloud"]);const i=Fh({cloud:t});return Ss({runtimeHook:function(){return Bh(e,r)},adapter:i,allowNesting:!0})},Xn=class{constructor(e){C(this,"threads");C(this,"_thread");this._core=e,this.threads=new td(e.threads),this._thread=this.threads.main,this.__internal_bindMethods()}get threadList(){return this.threads}__internal_bindMethods(){this.switchToNewThread=this.switchToNewThread.bind(this),this.switchToThread=this.switchToThread.bind(this),this.registerModelContextProvider=this.registerModelContextProvider.bind(this),this.registerModelConfigProvider=this.registerModelConfigProvider.bind(this),this.reset=this.reset.bind(this)}get thread(){return this._thread}switchToNewThread(){return this._core.threads.switchToNewThread()}switchToThread(e){return this._core.threads.switchToThread(e)}registerModelContextProvider(e){return this._core.registerModelContextProvider(e)}registerModelConfigProvider(e){return this.registerModelContextProvider(e)}reset({initialMessages:e}={}){return this._core.threads.getMainThreadRuntimeCore().import(Ln.fromArray(e!=null?e:[]))}},zh=e=>{const o=e,{cloud:t,initialMessages:r,maxSteps:n,adapters:a,unstable_humanToolNames:i}=o,s=V(o,["cloud","initialMessages","maxSteps","adapters","unstable_humanToolNames"]);return{localRuntimeOptions:{cloud:t,initialMessages:r,maxSteps:n,adapters:a,unstable_humanToolNames:i},otherOptions:s}};function Nt(e){const t=Y.useRef(e);return Y.useEffect(()=>{t.current=e}),Y.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}var ws=y.createContext(null),Rh=e=>({useSmoothStatus:Vt(()=>e)}),jh=({children:e})=>{const t=xs({optional:!0}),r=fe(),[n]=y.useState(()=>Rh(r.part().getState().status));return t?e:p.jsx(ws.Provider,{value:n,children:e})},$h=e=>{const t=y.forwardRef((r,n)=>p.jsx(jh,{children:p.jsx(e,E(m({},r),{ref:n}))}));return t.displayName=e.displayName,t};function xs(e){const t=y.useContext(ws);if(!(e!=null&&e.optional)&&!t)throw new Error("This component must be used within a SmoothContextProvider.");return t}var{useSmoothStatus:Uh,useSmoothStatusStore:Hh}=as(xs,"useSmoothStatus"),qh=class{constructor(e,t){C(this,"animationFrameId",null);C(this,"lastUpdateTime",Date.now());C(this,"targetText","");C(this,"animate",()=>{const e=Date.now();let r=e-this.lastUpdateTime;const n=this.targetText.length-this.currentText.length,a=Math.min(5,250/n);let i=0;for(;r>=a&&i<n;)i++,r-=a;i!==n?this.animationFrameId=requestAnimationFrame(this.animate):this.animationFrameId=null,i!==0&&(this.currentText=this.targetText.slice(0,this.currentText.length+i),this.lastUpdateTime=e-r,this.setText(this.currentText))});this.currentText=e,this.setText=t}start(){this.animationFrameId===null&&(this.lastUpdateTime=Date.now(),this.animate())}stop(){this.animationFrameId!==null&&(cancelAnimationFrame(this.animationFrameId),this.animationFrameId=null)}},Qn=Object.freeze({type:"running"}),vs=(e,t=!1)=>{const{text:r}=e,n=te(({message:c})=>c.id),a=y.useRef(n),[i,s]=y.useState(r),o=Hh({optional:!0}),l=Nt(c=>{if(s(c),o){const d=i!==c||e.status.type==="running"?Qn:e.status;hr(o).setState(d,!0)}});y.useEffect(()=>{if(o){const c=t&&(i!==r||e.status.type==="running")?Qn:e.status;hr(o).setState(c,!0)}},[o,t,r,i,e.status]);const[u]=y.useState(new qh(r,l));return y.useEffect(()=>{if(!t){u.stop();return}if(a.current!==n||!r.startsWith(u.targetText)){a.current=n,l(r),u.currentText=r,u.targetText=r,u.stop();return}u.targetText=r,u.start()},[l,u,n,t,r]),y.useEffect(()=>()=>{u.stop()},[u]),y.useMemo(()=>t?{type:"text",text:i,status:r===i?e.status:Qn}:e,[t,i,e,r])};const Vh=Object.freeze(Object.defineProperty({__proto__:null,AssistantRuntimeImpl:Xn,BaseAssistantRuntimeCore:En,CompositeContextProvider:In,DefaultThreadComposerRuntimeCore:di,MessageRepository:Ti,ThreadRuntimeImpl:Ri,fromThreadMessageLike:sr,generateId:It,getAutoStatus:fi,splitLocalRuntimeOptions:zh,useSmooth:vs,useSmoothStatus:Uh,useToolInvocations:ld,withSmoothContextProvider:$h},Symbol.toStringTag,{value:"Module"}));var Wh=class extends ar{constructor(t){super();C(this,"useRuntimeHook");C(this,"instances",new Map);C(this,"useAliveThreadsKeysChanged",Vt(()=>({})));C(this,"_InnerActiveThreadProvider",({threadId:t})=>{const{useRuntime:r}=this.useRuntimeHook(),n=r(),a=n.thread.__internal_threadBinding,i=y.useCallback(()=>{const l=this.instances.get(t);if(!l)throw new Error("Thread not found. This is a bug in assistant-ui.");l.runtime=a.getState(),this._notifySubscribers()},[t,a]),s=y.useRef(!1);s.current||i(),y.useEffect(()=>(s.current=!0,i(),a.outerSubscribe(i)),[a,i]);const o=fe();return y.useEffect(()=>n.threads.main.unstable_on("initialize",()=>{if(o.threadListItem().getState().status==="new"){o.threadListItem().initialize();const u=n.thread.unstable_on("run-end",()=>{u(),o.threadListItem().generateTitle()})}}),[n,o]),null});C(this,"_OuterActiveThreadProvider",y.memo(({threadId:t,provider:r})=>p.jsx(ch,{id:t,children:p.jsx(r,{children:p.jsx(this._InnerActiveThreadProvider,{threadId:t})})})));C(this,"__internal_RenderThreadRuntimes",({provider:t})=>(this.useAliveThreadsKeysChanged(),Array.from(this.instances.keys()).map(r=>p.jsx(this._OuterActiveThreadProvider,{threadId:r,provider:t},r))));this.useRuntimeHook=Vt(()=>({useRuntime:t}))}startThreadRuntime(t){return this.instances.has(t)||(this.instances.set(t,{}),this.useAliveThreadsKeysChanged.setState({},!0)),new Promise((r,n)=>{const a=()=>{const s=this.instances.get(t);if(!s)i(),n(new Error("Thread was deleted before runtime was started"));else if(s.runtime)i(),r(s.runtime);else return},i=this.subscribe(a);a()})}getThreadRuntimeCore(t){const r=this.instances.get(t);if(r)return r.runtime}stopThreadRuntime(t){this.instances.delete(t),this.useAliveThreadsKeysChanged.setState({},!0)}setRuntimeHook(t){this.useRuntimeHook.getState().useRuntime!==t&&this.useRuntimeHook.setState({useRuntime:t},!0)}},xe=new Error("This is the empty thread, a placeholder for the main thread. You cannot perform any actions on this thread instance. This error is probably because you tried to call a thread method in your render function. Call the method inside a `useEffect` hook instead."),Jh={getMessageById(){},getBranches(){return[]},switchToBranch(){throw xe},append(){throw xe},startRun(){throw xe},resumeRun(){throw xe},cancelRun(){throw xe},addToolResult(){throw xe},resumeToolCall(){throw xe},speak(){throw xe},stopSpeaking(){throw xe},submitFeedback(){throw xe},getModelContext(){return{}},unstable_loadExternalState(){throw xe},composer:{attachments:[],attachmentAccept:"*",addAttachment(){return M(this,null,function*(){throw xe})},removeAttachment(){return M(this,null,function*(){throw xe})},isEditing:!0,canCancel:!1,isEmpty:!0,text:"",setText(){throw xe},role:"user",setRole(){throw xe},runConfig:{},setRunConfig(){throw xe},reset(){return M(this,null,function*(){})},clearAttachments(){return M(this,null,function*(){})},send(){throw xe},cancel(){},subscribe(){return()=>{}},unstable_on(){return()=>{}}},getEditComposer(){},beginEdit(){throw xe},speech:void 0,capabilities:{switchToBranch:!1,switchBranchDuringRun:!1,edit:!1,reload:!1,cancel:!1,unstable_copy:!1,speech:!1,attachments:!1,feedback:!1},isDisabled:!1,isLoading:!1,messages:[],state:null,suggestions:[],extras:void 0,subscribe(){return()=>{}},import(){throw xe},export(){return{messages:[]}},reset(){throw xe},unstable_on(){return()=>{}}},ks=(e,t,r)=>r.reduce((n,a)=>{var i;return(i=a==null?void 0:a(n,t))!=null?i:n},e),Kh=class extends ar{constructor(t){super();C(this,"_pendingTransforms",[]);C(this,"_baseValue");C(this,"_cachedValue");this._baseValue=t,this._cachedValue=t}_updateState(){this._cachedValue=this._pendingTransforms.reduce((t,r)=>ks(t,r.task,[r.loading,r.optimistic]),this._baseValue),this._notifySubscribers()}get baseValue(){return this._baseValue}get value(){return this._cachedValue}update(t){this._baseValue=t,this._updateState()}optimisticUpdate(t){return M(this,null,function*(){const r=t.execute(),n=E(m({},t),{task:r});try{this._pendingTransforms.push(n),this._updateState();const a=yield r;return this._baseValue=ks(this._baseValue,a,[t.optimistic,t.then]),a}finally{const a=this._pendingTransforms.indexOf(n);a>-1&&this._pendingTransforms.splice(a,1),this._updateState()}})}};function Av(e){return e}var Xr=(e,t)=>{const r=e.threadIdMap[t];if(r!==void 0)return e.threadData[r]},Qr=(e,t,r)=>{const n=Xr(e,t);if(!n)return e;const{id:a,remoteId:i,status:s}=n;if(s===r)return e;const o=m({},e);switch(s){case"new":o.newThreadId=void 0;break;case"regular":o.threadIds=o.threadIds.filter(l=>l!==a);break;case"archived":o.archivedThreadIds=o.archivedThreadIds.filter(l=>l!==a);break;default:{const l=s;throw new Error(`Unsupported state: ${l}`)}}switch(r){case"regular":o.threadIds=[a,...o.threadIds];break;case"archived":o.archivedThreadIds=[a,...o.archivedThreadIds];break;case"deleted":o.threadData=Object.fromEntries(Object.entries(o.threadData).filter(([l])=>l!==a)),o.threadIdMap=Object.fromEntries(Object.entries(o.threadIdMap).filter(([l])=>l!==a&&l!==i));break;default:{const l=r;throw new Error(`Unsupported state: ${l}`)}}return r!=="deleted"&&(o.threadData=E(m({},o.threadData),{[a]:E(m({},n),{status:r})})),o},Yh=class extends ar{constructor(t,r){super();C(this,"_options");C(this,"_hookManager");C(this,"_loadThreadsPromise");C(this,"_mainThreadId");C(this,"_state",new Kh({isLoading:!1,newThreadId:void 0,threadIds:[],archivedThreadIds:[],threadIdMap:{},threadData:{}}));C(this,"useProvider");C(this,"initialize",t=>M(this,null,function*(){if(this._state.value.newThreadId!==t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status==="new")throw new Error("Unexpected new state");return r.initializeTask}return this._state.optimisticUpdate({execute:()=>this._options.adapter.initialize(t),optimistic:r=>Qr(r,t,"regular"),loading:(r,n)=>{const a=t;return E(m({},r),{threadData:E(m({},r.threadData),{[a]:E(m({},r.threadData[a]),{initializeTask:n})})})},then:(r,{remoteId:n,externalId:a})=>{const i=Xr(r,t);if(!i)return r;const s=t;return E(m({},r),{threadIdMap:E(m({},r.threadIdMap),{[n]:s}),threadData:E(m({},r.threadData),{[s]:E(m({},i),{initializeTask:Promise.resolve({remoteId:n,externalId:a}),remoteId:n,externalId:a})})})}})}));C(this,"generateTitle",t=>M(this,null,function*(){var l;const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status==="new")throw new Error("Thread is not yet initialized");const{remoteId:n}=yield r.initializeTask,a=this._hookManager.getThreadRuntimeCore(r.id);if(!a)return;const i=a.messages,s=yield this._options.adapter.generateTitle(n,i),o=Bc.fromAssistantStream(s);try{for(var u=zt(o),c,d,f;c=!(d=yield u.next()).done;c=!1){const h=d.value;const g=(l=h.parts.filter(w=>w.type==="text")[0])==null?void 0:l.text,v=this._state.baseValue;this._state.update(E(m({},v),{threadData:E(m({},v.threadData),{[r.id]:E(m({},r),{title:g})})}))}}catch(d){f=[d]}finally{try{c&&(d=u.return)&&(yield d.call(u))}finally{if(f)throw f[0]}}}));C(this,"useBoundIds",Vt(()=>[]));C(this,"__internal_RenderComponent",()=>{const t=y.useId();y.useEffect(()=>(this.useBoundIds.setState(i=>[...i,t],!0),()=>{this.useBoundIds.setState(i=>i.filter(s=>s!==t),!0)}),[t]);const r=this.useBoundIds(),{Provider:n}=this.useProvider(),a={modelContext:this.contextProvider};return(r.length===0||r[0]===t)&&p.jsx(Fn,{adapters:a,children:p.jsx(this._hookManager.__internal_RenderThreadRuntimes,{provider:n})})});this.contextProvider=r,this._state.subscribe(()=>this._notifySubscribers()),this._hookManager=new Wh(t.runtimeHook),this.useProvider=Vt(()=>{var n;return{Provider:(n=t.adapter.unstable_Provider)!=null?n:y.Fragment}}),this.__internal_setOptions(t),this.switchToNewThread()}get threadData(){return this._state.value.threadData}getLoadThreadsPromise(){return this._loadThreadsPromise||(this._loadThreadsPromise=this._state.optimisticUpdate({execute:()=>this._options.adapter.list(),loading:t=>E(m({},t),{isLoading:!0}),then:(t,r)=>{const n=[],a=[],i={},s={};for(const o of r.threads){switch(o.status){case"regular":n.push(o.remoteId);break;case"archived":a.push(o.remoteId);break;default:{const u=o.status;throw new Error(`Unsupported state: ${u}`)}}const l=o.remoteId;i[o.remoteId]=l,s[l]={id:o.remoteId,remoteId:o.remoteId,externalId:o.externalId,status:o.status,title:o.title,initializeTask:Promise.resolve({remoteId:o.remoteId,externalId:o.externalId})}}return E(m({},t),{threadIds:n,archivedThreadIds:a,threadIdMap:m(m({},t.threadIdMap),i),threadData:m(m({},t.threadData),s)})}}).then(()=>{})),this._loadThreadsPromise}__internal_setOptions(t){var n;if(this._options===t)return;this._options=t;const r=(n=t.adapter.unstable_Provider)!=null?n:y.Fragment;r!==this.useProvider.getState().Provider&&this.useProvider.setState({Provider:r},!0),this._hookManager.setRuntimeHook(t.runtimeHook)}__internal_load(){this.getLoadThreadsPromise()}get isLoading(){return this._state.value.isLoading}get threadIds(){return this._state.value.threadIds}get archivedThreadIds(){return this._state.value.archivedThreadIds}get newThreadId(){return this._state.value.newThreadId}get mainThreadId(){return this._mainThreadId}getMainThreadRuntimeCore(){const t=this._hookManager.getThreadRuntimeCore(this._mainThreadId);return t||Jh}getThreadRuntimeCore(t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");const n=this._hookManager.getThreadRuntimeCore(r.id);if(!n)throw new Error("Thread not found");return n}getItemById(t){return Xr(this._state.value,t)}switchToThread(t){return M(this,null,function*(){let r=this.getItemById(t);if(!r){const a=yield this._options.adapter.fetch(t),i=this._state.value,s=a.remoteId,o=E(m({},i.threadData),{[s]:{id:s,initializeTask:Promise.resolve({remoteId:a.remoteId,externalId:a.externalId}),remoteId:a.remoteId,externalId:a.externalId,status:a.status,title:a.title}}),l=E(m({},i.threadIdMap),{[a.remoteId]:s}),u=a.status==="regular"?[...i.threadIds,a.remoteId]:i.threadIds,c=a.status==="archived"?[...i.archivedThreadIds,a.remoteId]:i.archivedThreadIds;this._state.update(E(m({},i),{threadIds:u,archivedThreadIds:c,threadIdMap:l,threadData:o})),r=this.getItemById(t)}if(!r)throw new Error("Thread not found");if(this._mainThreadId===r.id)return;const n=this._hookManager.startThreadRuntime(r.id);this.mainThreadId!==void 0?yield n:n.then(()=>this._notifySubscribers()),r.status==="archived"&&(yield this.unarchive(r.id)),this._mainThreadId=r.id,this._notifySubscribers()})}switchToNewThread(){return M(this,null,function*(){for(;this._state.baseValue.newThreadId!==void 0&&this._state.value.newThreadId===void 0;)yield this._state.waitForUpdate();const t=this._state.value;let r=this._state.value.newThreadId;if(r===void 0){do r=`__LOCALID_${It()}`;while(t.threadIdMap[r]);const n=r;this._state.update(E(m({},t),{newThreadId:r,threadIdMap:E(m({},t.threadIdMap),{[r]:n}),threadData:E(m({},t.threadData),{[n]:{status:"new",id:r,remoteId:void 0,externalId:void 0,title:void 0}})}))}return this.switchToThread(r)})}rename(t,r){const n=this.getItemById(t);if(!n)throw new Error("Thread not found");if(n.status==="new")throw new Error("Thread is not yet initialized");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){const{remoteId:a}=yield n.initializeTask;return this._options.adapter.rename(a,r)}),optimistic:a=>{const i=Xr(a,t);return i?E(m({},a),{threadData:E(m({},a.threadData),{[i.id]:E(m({},i),{title:r})})}):a}})}_ensureThreadIsNotMain(t){return M(this,null,function*(){if(t===this.newThreadId)throw new Error("Cannot ensure new thread is not main");t===this._mainThreadId&&(yield this.switchToNewThread())})}archive(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular")throw new Error("Thread is not yet initialized or already archived");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){yield this._ensureThreadIsNotMain(r.id);const{remoteId:n}=yield r.initializeTask;return this._options.adapter.archive(n)}),optimistic:n=>Qr(n,r.id,"archived")})})}unarchive(t){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="archived")throw new Error("Thread is not archived");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){try{const{remoteId:n}=yield r.initializeTask;return yield this._options.adapter.unarchive(n)}catch(n){throw yield this._ensureThreadIsNotMain(r.id),n}}),optimistic:n=>Qr(n,r.id,"regular")})}delete(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular"&&r.status!=="archived")throw new Error("Thread is not yet initialized");return this._state.optimisticUpdate({execute:()=>M(this,null,function*(){yield this._ensureThreadIsNotMain(r.id);const{remoteId:n}=yield r.initializeTask;return yield this._options.adapter.delete(n)}),optimistic:n=>Qr(n,r.id,"deleted")})})}detach(t){return M(this,null,function*(){const r=this.getItemById(t);if(!r)throw new Error("Thread not found");if(r.status!=="regular"&&r.status!=="archived")throw new Error("Thread is not yet initialized");yield this._ensureThreadIsNotMain(r.id),this._hookManager.stopThreadRuntime(r.id)})}},Gh=class extends En{constructor(t){super();C(this,"threads");this.threads=new Yh(t,this._contextProvider)}get RenderComponent(){return this.threads.__internal_RenderComponent}},Xh=e=>{const[t]=y.useState(()=>new Gh(e));return y.useEffect(()=>{t.threads.__internal_setOptions(e),t.threads.__internal_load()},[t,e]),y.useMemo(()=>new Xn(t),[t])},Ss=e=>{if(Kr().threadListItem.source!==null){if(!e.allowNesting)throw new Error("useRemoteThreadListRuntime cannot be nested inside another RemoteThreadListRuntime. Set allowNesting: true to allow nesting (the inner runtime will become a no-op).");return e.runtimeHook()}return Xh(e)},Qh=Symbol.for("react.lazy"),Zr=Y[" use ".trim().toString()];function Zh(e){return typeof e=="object"&&e!==null&&"then"in e}function _s(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===Qh&&"_payload"in e&&Zh(e._payload)}function Ts(e){const t=ef(e),r=Y.forwardRef((n,a)=>{let u=n,{children:i}=u,s=V(u,["children"]);_s(i)&&typeof Zr=="function"&&(i=Zr(i._payload));const o=Y.Children.toArray(i),l=o.find(rf);if(l){const c=l.props.children,d=o.map(f=>f===l?Y.Children.count(c)>1?Y.Children.only(null):Y.isValidElement(c)?c.props.children:null:f);return p.jsx(t,E(m({},s),{ref:a,children:Y.isValidElement(c)?Y.cloneElement(c,void 0,d):null}))}return p.jsx(t,E(m({},s),{ref:a,children:i}))});return r.displayName=`${e}.Slot`,r}var Cs=Ts("Slot");function ef(e){const t=Y.forwardRef((r,n)=>{let s=r,{children:a}=s,i=V(s,["children"]);if(_s(a)&&typeof Zr=="function"&&(a=Zr(a._payload)),Y.isValidElement(a)){const o=af(a),l=nf(i,a.props);return a.type!==Y.Fragment&&(l.ref=n?Gi(n,o):o),Y.cloneElement(a,l)}return Y.Children.count(a)>1?Y.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var tf=Symbol("radix.slottable");function rf(e){return Y.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===tf}function nf(e,t){const r=m({},t);for(const n in t){const a=e[n],i=t[n];/^on[A-Z]/.test(n)?a&&i?r[n]=(...o)=>{const l=i(...o);return a(...o),l}:a&&(r[n]=a):n==="style"?r[n]=m(m({},a),i):n==="className"&&(r[n]=[a,i].filter(Boolean).join(" "))}return m(m({},e),r)}function af(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var sf=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],mt=sf.reduce((e,t)=>{const r=Ts(`Primitive.${t}`),n=Y.forwardRef((a,i)=>{const u=a,{asChild:s}=u,o=V(u,["asChild"]),l=s?r:t;return typeof window!="undefined"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(l,E(m({},o),{ref:i}))});return n.displayName=`Primitive.${t}`,E(m({},e),{[t]:n})},{});function Wt(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e==null||e(a),r===!1||!a.defaultPrevented)return t==null?void 0:t(a)}}var fr=(e,t,r=[])=>{const n=y.forwardRef((a,i)=>{var u;const s={},o={};Object.keys(a).forEach(c=>{r.includes(c)?s[c]=a[c]:o[c]=a[c]});const l=(u=t(s))!=null?u:void 0;return p.jsx(mt.button,E(m({type:"button"},o),{ref:i,disabled:o.disabled||!l,onClick:Wt(o.onClick,l)}))});return n.displayName=e,n};function of(e,t=globalThis==null?void 0:globalThis.document){const r=Nt(e);Y.useEffect(()=>{const n=a=>{a.key==="Escape"&&r(a)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[r,t])}var lf=()=>{const e=fe();return y.useCallback(()=>{e.attachment().remove()},[e])},uf=fr("AttachmentPrimitive.Remove",lf),pr=e=>{const t=y.useRef(void 0);return y.useCallback(n=>{t.current&&t.current(),n&&(t.current=e(n))},[e])},Is=(e,t)=>{const r=y.useCallback(n=>{if(!e)return;const a=e(),i=()=>{const o=t?t(n):n.offsetHeight;a.setHeight(o)},s=new ResizeObserver(i);return s.observe(n),i(),()=>{s.disconnect(),a.unregister()}},[e,t]);return pr(r)},Es=y.createContext(!1),As=(e,t)=>{const r=e.match(/^([\d.]+)(em|px|rem)$/);if(!r)return 0;const n=parseFloat(r[1]),a=r[2];if(a==="px")return n;if(a==="em"){const i=parseFloat(getComputedStyle(t).fontSize)||16;return n*i}if(a==="rem"){const i=parseFloat(getComputedStyle(document.documentElement).fontSize)||16;return n*i}return 0},Ms=({children:e,fillClampThreshold:t="10em",fillClampOffset:r="6em"})=>{const n=te(({message:l})=>l.isLast&&l.index>=2),a=qn({optional:!0}),i=y.useContext(Es),s=y.useCallback(l=>{if(!a||i)return;const u=()=>{const c=a.getState();if(c.turnAnchor==="top"&&n){const{viewport:d,inset:f,userMessage:h}=c.height,g=As(t,l),v=As(r,l),w=h<=g?h:v,b=Math.max(0,d-f-w);l.style.minHeight=`${b}px`,l.style.flexShrink="0",l.style.transition="min-height 0s"}else l.style.minHeight="",l.style.flexShrink="",l.style.transition=""};return u(),a.subscribe(u)},[a,n,i,t,r]),o=pr(s);return p.jsx(Es.Provider,{value:!0,children:p.jsx(Cs,{ref:o,children:e})})};Ms.displayName="ThreadPrimitive.ViewportSlack";var cf=()=>{const e=fe(),t=te(()=>e.message()),r=y.useCallback(n=>{const a=()=>{t.setIsHovering(!0)},i=()=>{t.setIsHovering(!1)};return n.addEventListener("mouseenter",a),n.addEventListener("mouseleave",i),n.matches(":hover")&&t.setIsHovering(!0),()=>{n.removeEventListener("mouseenter",a),n.removeEventListener("mouseleave",i),t.setIsHovering(!1)}},[t]);return pr(r)},df=()=>{const e=Yr(a=>a.turnAnchor),t=Yr(a=>a.registerUserMessageHeight),r=te(({thread:a,message:i})=>{var s;return e==="top"&&i.role==="user"&&i.index===a.messages.length-2&&((s=a.messages.at(-1))==null?void 0:s.role)==="assistant"}),n=y.useCallback(a=>a.offsetHeight,[]);return Is(r?t:null,n)},Zn=y.forwardRef((e,t)=>{const r=cf(),n=df(),a=Jr(t,r,n);return p.jsx(Ms,{children:p.jsx(mt.div,E(m({},e),{ref:a}))})});Zn.displayName="MessagePrimitive.Root";var Ps=()=>te(({part:t})=>{if(t.type!=="text"&&t.type!=="reasoning")throw new Error("MessagePartText can only be used inside text or reasoning message parts.");return t}),Ns=y.forwardRef((a,n)=>{var i=a,{smooth:e=!0,component:t="span"}=i,r=V(i,["smooth","component"]);const{text:s,status:o}=vs(Ps(),e);return p.jsx(t,E(m({"data-status":o.type},r),{ref:n,children:s}))});Ns.displayName="MessagePartPrimitive.Text";var hf=()=>te(({part:t})=>{if(t.type!=="image")throw new Error("MessagePartImage can only be used inside image message parts.");return t}),Ls=y.forwardRef((e,t)=>{const{image:r}=hf();return p.jsx(mt.img,E(m({src:r},e),{ref:t}))});Ls.displayName="MessagePartPrimitive.Image";var Ds=({children:e})=>te(({part:r})=>r.status.type==="running")?e:null;Ds.displayName="MessagePartPrimitive.InProgress";const Os=e=>Symbol.iterator in e,Fs=e=>"entries"in e,Bs=(e,t)=>{const r=e instanceof Map?e:new Map(e.entries()),n=t instanceof Map?t:new Map(t.entries());if(r.size!==n.size)return!1;for(const[a,i]of r)if(!n.has(a)||!Object.is(i,n.get(a)))return!1;return!0},ff=(e,t)=>{const r=e[Symbol.iterator](),n=t[Symbol.iterator]();let a=r.next(),i=n.next();for(;!a.done&&!i.done;){if(!Object.is(a.value,i.value))return!1;a=r.next(),i=n.next()}return!!a.done&&!!i.done};function pf(e,t){return Object.is(e,t)?!0:typeof e!="object"||e===null||typeof t!="object"||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:Os(e)&&Os(t)?Fs(e)&&Fs(t)?Bs(e,t):ff(e,t):Bs({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function mf(e){const t=y.useRef(void 0);return r=>{const n=e(r);return pf(t.current,n)?t.current:t.current=n}}var zs=e=>{let t=-1;return{startGroup:r=>{t===-1&&(t=r)},endGroup:(r,n)=>{t!==-1&&(n.push({type:e,startIndex:t,endIndex:r}),t=-1)},finalize:(r,n)=>{t!==-1&&n.push({type:e,startIndex:t,endIndex:r})}}},gf=e=>{const t=[],r=zs("toolGroup"),n=zs("reasoningGroup");for(let a=0;a<e.length;a++){const i=e[a];i==="tool-call"?(n.endGroup(a-1,t),r.startGroup(a)):i==="reasoning"?(r.endGroup(a-1,t),n.startGroup(a)):(r.endGroup(a-1,t),n.endGroup(a-1,t),t.push({type:"single",index:a}))}return r.finalize(e.length-1,t),n.finalize(e.length-1,t),t},yf=()=>{const e=te(mf(t=>t.message.parts.map(r=>r.type)));return y.useMemo(()=>e.length===0?[]:gf(e),[e])},bf=r=>{var n=r,{Fallback:e}=n,t=V(n,["Fallback"]);const a=te(({tools:i})=>{var o,l;const s=(o=i.tools[t.toolName])!=null?o:e;return Array.isArray(s)?(l=s[0])!=null?l:e:s});return a?p.jsx(a,m({},t)):null},gt={Text:()=>p.jsxs("p",{style:{whiteSpace:"pre-line"},children:[p.jsx(Ns,{}),p.jsx(Ds,{children:p.jsx("span",{style:{fontFamily:"revert"},children:" ●"})})]}),Reasoning:()=>null,Source:()=>null,Image:()=>p.jsx(Ls,{}),File:()=>null,Unstable_Audio:()=>null,ToolGroup:({children:e})=>e,ReasoningGroup:({children:e})=>e},wf=({components:{Text:e=gt.Text,Reasoning:t=gt.Reasoning,Image:r=gt.Image,Source:n=gt.Source,File:a=gt.File,Unstable_Audio:i=gt.Unstable_Audio,tools:s={}}={}})=>{var c,d,f;const o=fe(),l=te(({part:h})=>h),u=l.type;if(u==="tool-call"){const h=o.part().addToolResult,g=o.part().resumeToolCall;if("Override"in s)return p.jsx(s.Override,E(m({},l),{addResult:h,resume:g}));const v=(d=(c=s.by_name)==null?void 0:c[l.toolName])!=null?d:s.Fallback;return p.jsx(bf,E(m({},l),{Fallback:v,addResult:h,resume:g}))}if(((f=l.status)==null?void 0:f.type)==="requires-action")throw new Error("Encountered unexpected requires-action status");switch(u){case"text":return p.jsx(e,m({},l));case"reasoning":return p.jsx(t,m({},l));case"source":return p.jsx(n,m({},l));case"image":return p.jsx(r,m({},l));case"file":return p.jsx(a,m({},l));case"audio":return p.jsx(i,m({},l));case"data":return null;default:const h=u;throw new Error(`Unknown message part type: ${h}`)}},en=y.memo(({index:e,components:t})=>p.jsx(hh,{index:e,children:p.jsx(wf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u,c,d,f,h,g,v,w,b,I,T;return e.index===t.index&&((r=e.components)==null?void 0:r.Text)===((n=t.components)==null?void 0:n.Text)&&((a=e.components)==null?void 0:a.Reasoning)===((i=t.components)==null?void 0:i.Reasoning)&&((s=e.components)==null?void 0:s.Source)===((o=t.components)==null?void 0:o.Source)&&((l=e.components)==null?void 0:l.Image)===((u=t.components)==null?void 0:u.Image)&&((c=e.components)==null?void 0:c.File)===((d=t.components)==null?void 0:d.File)&&((f=e.components)==null?void 0:f.Unstable_Audio)===((h=t.components)==null?void 0:h.Unstable_Audio)&&((g=e.components)==null?void 0:g.tools)===((v=t.components)==null?void 0:v.tools)&&((w=e.components)==null?void 0:w.ToolGroup)===((b=t.components)==null?void 0:b.ToolGroup)&&((I=e.components)==null?void 0:I.ReasoningGroup)===((T=t.components)==null?void 0:T.ReasoningGroup)});en.displayName="MessagePrimitive.PartByIndex";var xf=({status:e,component:t})=>p.jsx(gh,{text:"",isRunning:e.type==="running",children:p.jsx(t,{type:"text",text:"",status:e})}),vf=Object.freeze({type:"complete"}),kf=({components:e})=>{var r;const t=te(n=>{var a;return(a=n.message.status)!=null?a:vf});return e!=null&&e.Empty?p.jsx(e.Empty,{status:t}):p.jsx(xf,{status:t,component:(r=e==null?void 0:e.Text)!=null?r:gt.Text})},Sf=y.memo(kf,(e,t)=>{var r,n,a,i;return((r=e.components)==null?void 0:r.Empty)===((n=t.components)==null?void 0:n.Empty)&&((a=e.components)==null?void 0:a.Text)===((i=t.components)==null?void 0:i.Text)}),ea=({components:e})=>{const t=te(({message:a})=>a.parts.length),r=yf(),n=y.useMemo(()=>t===0?p.jsx(Sf,{components:e}):r.map(a=>{var i,s;if(a.type==="single")return p.jsx(en,{index:a.index,components:e},a.index);if(a.type==="toolGroup"){const o=(i=e==null?void 0:e.ToolGroup)!=null?i:gt.ToolGroup;return p.jsx(o,{startIndex:a.startIndex,endIndex:a.endIndex,children:Array.from({length:a.endIndex-a.startIndex+1},(l,u)=>p.jsx(en,{index:a.startIndex+u,components:e},u))},`tool-${a.startIndex}`)}else{const o=(s=e==null?void 0:e.ReasoningGroup)!=null?s:gt.ReasoningGroup;return p.jsx(o,{startIndex:a.startIndex,endIndex:a.endIndex,children:Array.from({length:a.endIndex-a.startIndex+1},(l,u)=>p.jsx(en,{index:a.startIndex+u,components:e},u))},`reasoning-${a.startIndex}`)}}),[r,e,t]);return p.jsx(p.Fragment,{children:n})};ea.displayName="MessagePrimitive.Parts";var _f=(e,t)=>{var n,a,i;const r=t.type;switch(r){case"image":return(n=e==null?void 0:e.Image)!=null?n:e==null?void 0:e.Attachment;case"document":return(a=e==null?void 0:e.Document)!=null?a:e==null?void 0:e.Attachment;case"file":return(i=e==null?void 0:e.File)!=null?i:e==null?void 0:e.Attachment;default:const s=r;throw new Error(`Unknown attachment type: ${s}`)}},Tf=({components:e})=>{const t=te(({attachment:n})=>n);if(!t)return null;const r=_f(e,t);return r?p.jsx(r,{}):null},Rs=y.memo(({index:e,components:t})=>p.jsx(fh,{index:e,children:p.jsx(Tf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u;return e.index===t.index&&((r=e.components)==null?void 0:r.Image)===((n=t.components)==null?void 0:n.Image)&&((a=e.components)==null?void 0:a.Document)===((i=t.components)==null?void 0:i.Document)&&((s=e.components)==null?void 0:s.File)===((o=t.components)==null?void 0:o.File)&&((l=e.components)==null?void 0:l.Attachment)===((u=t.components)==null?void 0:u.Attachment)});Rs.displayName="MessagePrimitive.AttachmentByIndex";var js=({components:e})=>{const t=te(({message:n})=>n.role!=="user"?0:n.attachments.length);return y.useMemo(()=>Array.from({length:t},(n,a)=>p.jsx(Rs,{index:a,components:e},a)),[t,e])};js.displayName="MessagePrimitive.Attachments";var $s=()=>{const e=fe(),t=te(n=>n.thread.isRunning||!n.composer.isEditing||n.composer.isEmpty),r=y.useCallback(()=>{e.composer().send()},[e]);return t?null:r},Cf=fr("ComposerPrimitive.Send",$s),Us=y.forwardRef((n,r)=>{var a=n,{onSubmit:e}=a,t=V(a,["onSubmit"]);const i=$s(),s=o=>{o.preventDefault(),i&&i()};return p.jsx(mt.form,E(m({},t),{ref:r,onSubmit:Wt(e,s)}))});Us.displayName="ComposerPrimitive.Root";function ta(){return ta=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ta.apply(null,arguments)}function If(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Ef=y.useLayoutEffect,Af=function(t){var r=y.useRef(t);return Ef(function(){r.current=t}),r},Hs=function(t,r){if(typeof t=="function"){t(r);return}t.current=r},Mf=function(t,r){var n=y.useRef();return y.useCallback(function(a){t.current=a,n.current&&Hs(n.current,null),n.current=r,r&&Hs(r,a)},[r])},qs={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0",display:"block"},Pf=function(t){Object.keys(qs).forEach(function(r){t.style.setProperty(r,qs[r],"important")})},Vs=Pf,Be=null,Ws=function(t,r){var n=t.scrollHeight;return r.sizingStyle.boxSizing==="border-box"?n+r.borderSize:n-r.paddingSize};function Nf(e,t,r,n){r===void 0&&(r=1),n===void 0&&(n=1/0),Be||(Be=document.createElement("textarea"),Be.setAttribute("tabindex","-1"),Be.setAttribute("aria-hidden","true"),Vs(Be)),Be.parentNode===null&&document.body.appendChild(Be);var a=e.paddingSize,i=e.borderSize,s=e.sizingStyle,o=s.boxSizing;Object.keys(s).forEach(function(f){var h=f;Be.style[h]=s[h]}),Vs(Be),Be.value=t;var l=Ws(Be,e);Be.value=t,l=Ws(Be,e),Be.value="x";var u=Be.scrollHeight-a,c=u*r;o==="border-box"&&(c=c+a+i),l=Math.max(c,l);var d=u*n;return o==="border-box"&&(d=d+a+i),l=Math.min(d,l),[l,u]}var Js=function(){},Lf=function(t,r){return t.reduce(function(n,a){return n[a]=r[a],n},{})},Df=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","boxSizing","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","paddingBottom","paddingLeft","paddingRight","paddingTop","tabSize","textIndent","textRendering","textTransform","width","wordBreak","wordSpacing","scrollbarGutter"],Of=!!document.documentElement.currentStyle,Ff=function(t){var r=window.getComputedStyle(t);if(r===null)return null;var n=Lf(Df,r),a=n.boxSizing;if(a==="")return null;Of&&a==="border-box"&&(n.width=parseFloat(n.width)+parseFloat(n.borderRightWidth)+parseFloat(n.borderLeftWidth)+parseFloat(n.paddingRight)+parseFloat(n.paddingLeft)+"px");var i=parseFloat(n.paddingBottom)+parseFloat(n.paddingTop),s=parseFloat(n.borderBottomWidth)+parseFloat(n.borderTopWidth);return{sizingStyle:n,paddingSize:i,borderSize:s}},Bf=Ff;function ra(e,t,r){var n=Af(r);Y.useLayoutEffect(function(){var a=function(s){return n.current(s)};if(e)return e.addEventListener(t,a),function(){return e.removeEventListener(t,a)}},[])}var zf=function(t,r){ra(document.body,"reset",function(n){t.current.form===n.target&&r(n)})},Rf=function(t){ra(window,"resize",t)},jf=function(t){ra(document.fonts,"loadingdone",t)},$f=["cacheMeasurements","maxRows","minRows","onChange","onHeightChange"],Uf=function(t,r){var n=t.cacheMeasurements,a=t.maxRows,i=t.minRows,s=t.onChange,o=s===void 0?Js:s,l=t.onHeightChange,u=l===void 0?Js:l,c=If(t,$f),d=c.value!==void 0,f=Y.useRef(null),h=Mf(f,r),g=Y.useRef(0),v=Y.useRef(),w=function(){var T=f.current,D=n&&v.current?v.current:Bf(T);if(D){v.current=D;var B=Nf(D,T.value||T.placeholder||"x",i,a),_=B[0],j=B[1];g.current!==_&&(g.current=_,T.style.setProperty("height",_+"px","important"),u(_,{rowHeight:j}))}},b=function(T){d||w(),o(T)};return Y.useLayoutEffect(w),zf(f,function(){if(!d){var I=f.current.value;requestAnimationFrame(function(){var T=f.current;T&&I!==T.value&&w()})}}),Rf(w),jf(w),Y.createElement("textarea",ta({},c,{onChange:b,ref:h}))},Hf=Y.forwardRef(Uf),Ks=e=>{const t=Nt(e),r=Yr(n=>n.onScrollToBottom);y.useEffect(()=>r(t),[r,t])},Ys=y.forwardRef((g,h)=>{var v=g,{autoFocus:e=!1,asChild:t,disabled:r,onChange:n,onKeyDown:a,onPaste:i,submitOnEnter:s=!0,cancelOnEscape:o=!0,unstable_focusOnRunStart:l=!0,unstable_focusOnScrollToBottom:u=!0,unstable_focusOnThreadSwitched:c=!0,addAttachmentOnPaste:d=!0}=v,f=V(v,["autoFocus","asChild","disabled","onChange","onKeyDown","onPaste","submitOnEnter","cancelOnEscape","unstable_focusOnRunStart","unstable_focusOnScrollToBottom","unstable_focusOnThreadSwitched","addAttachmentOnPaste"]);const w=fe(),b=te(({composer:S})=>S.isEditing?S.text:""),I=t?Cs:Hf,T=te(({thread:S})=>S.isDisabled)||r,D=y.useRef(null),B=Jr(h,D);of(S=>{var N;if(!o||!((N=D.current)!=null&&N.contains(S.target)))return;const P=w.composer();P.getState().canCancel&&(P.cancel(),S.preventDefault())});const _=S=>{var P,N;T||!s||S.nativeEvent.isComposing||S.key==="Enter"&&S.shiftKey===!1&&(w.thread().getState().isRunning||(S.preventDefault(),(N=(P=D.current)==null?void 0:P.closest("form"))==null||N.requestSubmit()))},j=S=>M(null,null,function*(){var H;if(!d)return;const P=w.thread().getState().capabilities,N=Array.from(((H=S.clipboardData)==null?void 0:H.files)||[]);if(P.attachments&&N.length>0)try{S.preventDefault(),yield Promise.all(N.map(z=>w.composer().addAttachment(z)))}catch(z){console.error("Error adding attachment:",z)}}),R=e&&!T,U=y.useCallback(()=>{const S=D.current;!S||!R||(S.focus({preventScroll:!0}),S.setSelectionRange(S.value.length,S.value.length))},[R]);return y.useEffect(()=>U(),[U]),Ks(()=>{w.composer().getState().type==="thread"&&u&&U()}),y.useEffect(()=>{if(!(w.composer().getState().type!=="thread"||!l))return w.on("thread.run-start",U)},[l,U,w]),y.useEffect(()=>{if(!(w.composer().getState().type!=="thread"||!c))return w.on("thread-list-item.switched-to",U)},[c,U,w]),p.jsx(I,E(m({name:"input",value:b},f),{ref:B,disabled:T,onChange:Wt(n,S=>{w.composer().getState().isEditing&&(w.composer().setText(S.target.value),w.flushSync())}),onKeyDown:Wt(a,_),onPaste:Wt(i,j)}))});Ys.displayName="ComposerPrimitive.Input";var qf=({multiple:e=!0}={})=>{const t=te(({composer:a})=>!a.isEditing),r=fe(),n=y.useCallback(()=>{const a=document.createElement("input");a.type="file",a.multiple=e,a.hidden=!0;const i=r.composer().getState().attachmentAccept;i!=="*"&&(a.accept=i),document.body.appendChild(a),a.onchange=s=>{const o=s.target.files;if(o){for(const l of o)r.composer().addAttachment(l);document.body.removeChild(a)}},a.oncancel=()=>{(!a.files||a.files.length===0)&&document.body.removeChild(a)},a.click()},[r,e]);return t?null:n},Vf=fr("ComposerPrimitive.AddAttachment",qf,["multiple"]),Wf=(e,t)=>{var n,a,i;const r=t.type;switch(r){case"image":return(n=e==null?void 0:e.Image)!=null?n:e==null?void 0:e.Attachment;case"document":return(a=e==null?void 0:e.Document)!=null?a:e==null?void 0:e.Attachment;case"file":return(i=e==null?void 0:e.File)!=null?i:e==null?void 0:e.Attachment;default:const s=r;throw new Error(`Unknown attachment type: ${s}`)}},Jf=({components:e})=>{const t=te(({attachment:n})=>n);if(!t)return null;const r=Wf(e,t);return r?p.jsx(r,{}):null},Gs=y.memo(({index:e,components:t})=>p.jsx(ph,{index:e,children:p.jsx(Jf,{components:t})}),(e,t)=>{var r,n,a,i,s,o,l,u;return e.index===t.index&&((r=e.components)==null?void 0:r.Image)===((n=t.components)==null?void 0:n.Image)&&((a=e.components)==null?void 0:a.Document)===((i=t.components)==null?void 0:i.Document)&&((s=e.components)==null?void 0:s.File)===((o=t.components)==null?void 0:o.File)&&((l=e.components)==null?void 0:l.Attachment)===((u=t.components)==null?void 0:u.Attachment)});Gs.displayName="ComposerPrimitive.AttachmentByIndex";var Xs=({components:e})=>{const t=te(n=>n.composer.attachments.length);return y.useMemo(()=>Array.from({length:t},(n,a)=>p.jsx(Gs,{index:a,components:e},a)),[t,e])};Xs.displayName="ComposerPrimitive.Attachments";var Qs=y.forwardRef((e,t)=>p.jsx(mt.div,E(m({},e),{ref:t})));Qs.displayName="ThreadPrimitive.Root";var Zs=({children:e})=>te(({thread:r})=>r.messages.length===0&&!r.isLoading)?e:null;Zs.displayName="ThreadPrimitive.Empty";var Kf=e=>{const t=Nt(e),r=y.useCallback(n=>{const a=new ResizeObserver(()=>{t()}),i=new MutationObserver(()=>{t()});return a.observe(n),i.observe(n,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),()=>{a.disconnect(),i.disconnect()}},[t]);return pr(r)},Yf=({autoScroll:e,scrollToBottomOnRunStart:t=!0,scrollToBottomOnInitialize:r=!0,scrollToBottomOnThreadSwitch:n=!0})=>{const a=y.useRef(null),i=qn();e===void 0&&(e=i.getState().turnAnchor!=="top");const s=y.useRef(0),o=y.useRef(null),l=y.useCallback(h=>{const g=a.current;g&&(o.current=h,g.scrollTo({top:g.scrollHeight,behavior:h}))},[]),u=()=>{const h=a.current;if(!h)return;const g=i.getState().isAtBottom,v=Math.abs(h.scrollHeight-h.scrollTop-h.clientHeight)<1||h.scrollHeight<=h.clientHeight;!v&&s.current<h.scrollTop||(v&&(o.current=null),(v||o.current===null)&&v!==g&&hr(i).setState({isAtBottom:v})),s.current=h.scrollTop},c=Kf(()=>{const h=o.current;h?l(h):e&&i.getState().isAtBottom&&l("instant"),u()}),d=pr(h=>(h.addEventListener("scroll",u),()=>{h.removeEventListener("scroll",u)}));return Ks(({behavior:h})=>{l(h)}),Hn("thread.run-start",()=>{t&&(o.current="auto",requestAnimationFrame(()=>{l("auto")}))}),Hn("thread.initialize",()=>{r&&(o.current="instant",requestAnimationFrame(()=>{l("instant")}))}),Hn("thread-list-item.switched-to",()=>{n&&(o.current="instant",requestAnimationFrame(()=>{l("instant")}))}),Jr(c,d,a)},Gf=()=>{const e=Yr(r=>r.registerViewport),t=y.useCallback(r=>r.clientHeight,[]);return Is(e,t)},eo=y.forwardRef((o,s)=>{var l=o,{autoScroll:e,scrollToBottomOnRunStart:t,scrollToBottomOnInitialize:r,scrollToBottomOnThreadSwitch:n,children:a}=l,i=V(l,["autoScroll","scrollToBottomOnRunStart","scrollToBottomOnInitialize","scrollToBottomOnThreadSwitch","children"]);const u=Yf({autoScroll:e,scrollToBottomOnRunStart:t,scrollToBottomOnInitialize:r,scrollToBottomOnThreadSwitch:n}),c=Gf(),d=Jr(s,u,c);return p.jsx(mt.div,E(m({},i),{ref:d,children:a}))});eo.displayName="ThreadPrimitive.ViewportScrollable";var to=y.forwardRef((n,r)=>{var a=n,{turnAnchor:e}=a,t=V(a,["turnAnchor"]);return p.jsx(ds,{options:{turnAnchor:e},children:p.jsx(eo,E(m({},t),{ref:r}))})});to.displayName="ThreadPrimitive.Viewport";var ro=(e,t)=>e.Message===t.Message&&e.EditComposer===t.EditComposer&&e.UserEditComposer===t.UserEditComposer&&e.AssistantEditComposer===t.AssistantEditComposer&&e.SystemEditComposer===t.SystemEditComposer&&e.UserMessage===t.UserMessage&&e.AssistantMessage===t.AssistantMessage&&e.SystemMessage===t.SystemMessage,Xf=()=>null,Qf=(e,t,r)=>{var n,a,i,s,o,l,u,c,d,f,h,g;switch(t){case"user":return r?(i=(a=(n=e.UserEditComposer)!=null?n:e.EditComposer)!=null?a:e.UserMessage)!=null?i:e.Message:(s=e.UserMessage)!=null?s:e.Message;case"assistant":return r?(u=(l=(o=e.AssistantEditComposer)!=null?o:e.EditComposer)!=null?l:e.AssistantMessage)!=null?u:e.Message:(c=e.AssistantMessage)!=null?c:e.Message;case"system":return r?(h=(f=(d=e.SystemEditComposer)!=null?d:e.EditComposer)!=null?f:e.SystemMessage)!=null?h:e.Message:(g=e.SystemMessage)!=null?g:Xf;default:const v=t;throw new Error(`Unknown message role: ${v}`)}},Zf=({components:e})=>{const t=te(({message:a})=>a.role),r=te(({message:a})=>a.composer.isEditing),n=Qf(e,t,r);return p.jsx(n,{})},no=y.memo(({index:e,components:t})=>p.jsx(dh,{index:e,children:p.jsx(Zf,{components:t})}),(e,t)=>e.index===t.index&&ro(e.components,t.components));no.displayName="ThreadPrimitive.MessageByIndex";var ao=({components:e})=>{const t=te(({thread:n})=>n.messages.length);return y.useMemo(()=>t===0?null:Array.from({length:t},(n,a)=>p.jsx(no,{index:a,components:e},a)),[t,e])};ao.displayName="ThreadPrimitive.Messages";var ep=y.memo(ao,(e,t)=>ro(e.components,t.components)),io=y.forwardRef((a,n)=>{var i=a,{onClick:e,disabled:t}=i,r=V(i,["onClick","disabled"]);const s=te(({threads:l})=>l.newThreadId===l.mainThreadId),o=fe();return p.jsx(mt.button,E(m(m({type:"button"},s?{"data-active":"true","aria-current":"true"}:null),r),{ref:n,disabled:t,onClick:Wt(e,()=>{o.threads().switchToNewThread()})}))});io.displayName="ThreadListPrimitive.New";var so=y.memo(({index:e,archived:t=!1,components:r})=>{const n=r.ThreadListItem;return p.jsx(uh,{index:e,archived:t,children:p.jsx(n,{})})},(e,t)=>e.index===t.index&&e.archived===t.archived&&e.components.ThreadListItem===t.components.ThreadListItem);so.displayName="ThreadListPrimitive.ItemByIndex";var oo=({archived:e=!1,components:t})=>{const r=te(({threads:a})=>e?a.archivedThreadIds.length:a.threadIds.length);return y.useMemo(()=>Array.from({length:r},(a,i)=>p.jsx(so,{index:i,archived:e,components:t},i)),[r,e,t])};oo.displayName="ThreadListPrimitive.Items";var lo=y.forwardRef((e,t)=>p.jsx(mt.div,E(m({},e),{ref:t})));lo.displayName="ThreadListPrimitive.Root";var uo=y.forwardRef((e,t)=>{const r=te(({threads:n,threadListItem:a})=>n.mainThreadId===a.id);return p.jsx(mt.div,E(m(m({},r?{"data-active":"true","aria-current":"true"}:null),e),{ref:t}))});uo.displayName="ThreadListItemPrimitive.Root";var tp=()=>{const e=fe();return y.useCallback(()=>{e.threadListItem().delete()},[e])},rp=fr("ThreadListItemPrimitive.Delete",tp),np=()=>{const e=fe();return y.useCallback(()=>{e.threadListItem().switchTo()},[e])},ap=fr("ThreadListItemPrimitive.Trigger",np);class co{constructor(t,r,n=!1){C(this,"baseUrl");C(this,"sessionToken",null);C(this,"isProxyMode",!1);this.baseUrl=t.replace(/\/$/,""),this.isProxyMode=n,r&&(this.sessionToken=r)}setSessionToken(t){this.sessionToken=t}getUrl(t){if(this.isProxyMode){const r=`${this.baseUrl}${t.replace("/v1","")}`;return r.startsWith("/")||r.startsWith("./"),r}return`${this.baseUrl}${t}`}createOrContinueChat(t,r){return M(this,null,function*(){const n=this.getUrl("/v1/chats"),i={"Content-Type":"application/json",Accept:"text/event-stream","Accept-Encoding":"identity","Cache-Control":"no-cache","X-Accel-Buffering":"no","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(i.Authorization=`Bearer ${this.sessionToken}`);const s=E(m({},t),{stream:!0}),o=yield fetch(n,{method:"POST",headers:i,body:JSON.stringify(s),signal:r,cache:"no-store"});if(!o.ok){const l=yield o.json().catch(()=>({}));throw new Error(l.detail||l.message||`API error: ${o.status} ${o.statusText}`)}if(!o.body)throw new Error("Response body is null");return o.body})}getChat(t){return M(this,null,function*(){const r=this.getUrl(`/v1/chats/${t}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const a=yield fetch(r,{method:"GET",headers:n});if(!a.ok){const i=yield a.json().catch(()=>({}));throw new Error(i.detail||i.message||`API error: ${a.status} ${a.statusText}`)}return a.json()})}listChats(t){return M(this,null,function*(){const r=this.getUrl("/v1/chats"),n=r.startsWith("/")||r.startsWith("./")?new URL(r,window.location.origin):new URL(r);t!=null&&t.limit&&n.searchParams.set("limit",t.limit.toString()),t!=null&&t.cursor&&n.searchParams.set("cursor",t.cursor),t!=null&&t["expand[]"]&&t["expand[]"].forEach(s=>{n.searchParams.append("expand[]",s)});const a={"Content-Type":"application/json"};this.sessionToken&&(a.Authorization=`Bearer ${this.sessionToken}`);const i=yield fetch(n.toString(),{method:"GET",headers:a});if(!i.ok){const s=yield i.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${i.status} ${i.statusText}`)}return i.json()})}generateIdempotencyKey(){try{if(typeof crypto!="undefined"&&crypto.randomUUID)return crypto.randomUUID()}catch(n){}const t=n=>Array.from({length:n},()=>Math.floor(Math.random()*16).toString(16)).join(""),r=()=>{const n=["8","9","a","b"];return n[Math.floor(Math.random()*n.length)]};return`${t(8)}-${t(4)}-4${t(3)}-${r()}${t(3)}-${t(12)}`}updateChat(t,r){return M(this,null,function*(){const n=`/v1/chats/${t}`,a=this.getUrl(n),i=a.startsWith("/")||a.startsWith("./")?new URL(a,window.location.origin):new URL(a),o={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(o.Authorization=`Bearer ${this.sessionToken}`);const l=yield fetch(i.toString(),{method:"PATCH",headers:o,body:JSON.stringify(r)});if(!l.ok){const c=yield l.text();let d={};try{d=JSON.parse(c)}catch(f){d={detail:c}}throw new Error(d.detail||d.message||`API error: ${l.status} ${l.statusText}`)}if(l.status===204)return{};const u=yield l.text();if(!u)return{};try{return JSON.parse(u)}catch(c){return{}}})}deleteChat(t){return M(this,null,function*(){const r=`/v1/chats/${t}`,n=this.getUrl(r),a=n.startsWith("/")||n.startsWith("./")?new URL(n,window.location.origin):new URL(n),s={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(s.Authorization=`Bearer ${this.sessionToken}`);const o=yield fetch(a.toString(),{method:"DELETE",headers:s});if(!o.ok){const l=yield o.json().catch(()=>({}));throw new Error(l.detail||l.message||`API error: ${o.status} ${o.statusText}`)}})}listModels(t){return M(this,null,function*(){const r=this.getUrl("/v1/models"),n=r.startsWith("/")||r.startsWith("./")?new URL(r,window.location.origin):new URL(r);t!=null&&t.limit&&n.searchParams.set("limit",t.limit.toString()),t!=null&&t.cursor&&n.searchParams.set("cursor",t.cursor),t!=null&&t["expand[]"]&&t["expand[]"].forEach(s=>{n.searchParams.append("expand[]",s)});const a={"Content-Type":"application/json"};this.sessionToken&&(a.Authorization=`Bearer ${this.sessionToken}`);const i=yield fetch(n.toString(),{method:"GET",headers:a});if(!i.ok){const s=yield i.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${i.status} ${i.statusText}`)}return i.json()})}getModel(t){return M(this,null,function*(){const r=this.getUrl(`/v1/models/${t}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const a=yield fetch(r,{method:"GET",headers:n});if(!a.ok){const i=yield a.json().catch(()=>({}));throw new Error(i.detail||i.message||`API error: ${a.status} ${a.statusText}`)}return a.json()})}uploadFile(t,r,n){return M(this,null,function*(){const a=this.getUrl("/v1/files"),i=this.generateIdempotencyKey(),s=new FormData;s.append("file",t),r&&s.append("resource_type",r),n&&s.append("resource_id",n);const o={"Idempotency-Key":i};this.sessionToken&&(o.Authorization=`Bearer ${this.sessionToken}`);const l=yield fetch(a,{method:"POST",headers:o,body:s});if(!l.ok){const u=yield l.json().catch(()=>({}));throw new Error(u.detail||u.message||`API error: ${l.status} ${l.statusText}`)}return l.json()})}}function ip(e,t){return Nr(this,null,function*(){const r=e.getReader(),n=new TextDecoder;let a="";try{for(;;){if(t!=null&&t.aborted){r.cancel();break}const{done:i,value:s}=yield new Le(r.read());if(i)break;a+=n.decode(s,{stream:!0});const o=a.split(`
|
|
6
6
|
|
|
7
|
-
`);a=o.pop()||"";for(const l of o)if(l.startsWith("data: ")){const u=l.slice(6);if(u.trim()==="[DONE]"){yield{done:!0};continue}try{yield JSON.parse(u)}catch(c){}}}}finally{r.releaseLock()}})}function sp(e){return e.map(t=>{let r="";if(typeof t.content=="string")r=t.content;else if(Array.isArray(t.content)){const n=t.content.find(a=>a.type==="text");n&&typeof n=="object"&&"text"in n&&(r=n.text)}return{role:t.role,content:r}})}function op(e){return m(m({id:e.id,role:e.role,content:[{type:"text",text:e.content}],createdAt:new Date(e.createdAt),metadata:{custom:{}}},e.role==="assistant"&&{status:{type:"complete",reason:"stop"},metadata:{unstable_state:null,unstable_annotations:[],unstable_data:[],steps:[],custom:{}}}),e.role==="user"&&{attachments:[]})}const tn=new Map;function lp(e,t){return{list(){return M(this,null,function*(){const n=[];let i,s=0;do{const l=yield e.listChats({limit:50,cursor:i}),u=l.items||[];Array.isArray(u)&&u.length>0&&n.push(...u),i=l.nextCursor||void 0,s++}while(i&&s<50);return{threads:n.map(l=>{const u=l.id;return!u||l.deletedAt?null:{status:"regular",remoteId:u,title:l.title||"New Chat",createdAt:l.createdAt?new Date(l.createdAt):new Date,updatedAt:l.updatedAt?new Date(l.updatedAt):new Date}}).filter(l=>l!==null)}})},initialize(n){return M(this,null,function*(){return{remoteId:tn.get(n)||n,externalId:void 0}})},rename(n,a){return M(this,null,function*(){yield e.updateChat(n,{title:a})})},archive(n){return M(this,null,function*(){})},unarchive(n){return M(this,null,function*(){})},delete(n){return M(this,null,function*(){yield e.deleteChat(n)})},generateTitle(n,a){return M(this,null,function*(){return new ReadableStream})},fetch(n){return M(this,null,function*(){try{const a=yield e.getChat(n);return{status:"regular",remoteId:a.id||n,title:a.title||"Chat",createdAt:a.createdAt?new Date(a.createdAt):new Date,updatedAt:a.updatedAt?new Date(a.updatedAt):new Date}}catch(a){return{status:"regular",remoteId:n,createdAt:new Date,updatedAt:new Date}}})},updateRemoteId(n,a){tn.set(n,a),t==null||t(n,a)},unstable_Provider:({children:n})=>{const a=ls(),i=a==null?void 0:a.remoteId,s=y.useMemo(()=>({load(){return M(this,null,function*(){if(!i)return{messages:[]};try{const u=yield e.getChat(i);return!u.messages||u.messages.length===0?{messages:[]}:{messages:u.messages.map(d=>op(d))}}catch(u){return{messages:[]}}})},append(u){return M(this,null,function*(){})}}),[i,e]),o=y.useMemo(()=>({history:s}),[s]);return p.jsx(Fn,{adapters:o,children:n})}}}class up{constructor(){C(this,"messageMetadata",new Map);C(this,"currentMessageId",null);C(this,"listeners",new Set)}setCurrentMessage(t){this.currentMessageId=t}update(t){if(!this.currentMessageId)return;const r=this.messageMetadata.get(this.currentMessageId)||{},n=t.sources;n&&n.length>0&&(this.messageMetadata.set(this.currentMessageId,E(m({},r),{sources:n})),this.notify())}get(){return this.currentMessageId?this.messageMetadata.get(this.currentMessageId)||{}:{}}getForMessage(t){return this.messageMetadata.get(t)||{}}getCurrentMessageId(){return this.currentMessageId}clear(){this.currentMessageId=null}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}notify(){this.listeners.forEach(t=>t())}}const Nt=new up,ho=new Map,na=[];let rn=[];function fo(e,t,r=50,n=800){na.push({question:e,response:t,streamingSpeed:r,initialDelay:n})}function po(e,t){const{modelId:r,systemPrompt:n,ephemeral:a,enableReasoning:i,onChatCreated:s,onUserMessage:o,onThreadIdUpdate:l,onBeforeRequest:u,mockResponseOnBlocked:c}=t;let d;return{run(h){return Nr(this,null,function*(){var ue,x,ie,_e;const{messages:g,abortSignal:v,context:w}=h,b=na.shift();if(b){o==null||o();const W=(ue=b.initialDelay)!=null?ue:800;if(W>0&&(yield new Le(new Promise(he=>setTimeout(he,W)))),v!=null&&v.aborted)throw new Error("Request aborted");const ne=b.response.split(" ");let me="";const be=b.streamingSpeed||50,Ce=`premade-${Date.now()}`;a&&(s==null||s(Ce));for(let he=0;he<ne.length;he++){if(v!=null&&v.aborted)throw new Error("Request aborted");me+=(he===0?"":" ")+ne[he],yield{content:[{type:"text",text:me}]},yield new Le(new Promise(Pe=>setTimeout(Pe,be+Math.random()*(be*.5))))}yield{content:[{type:"text",text:me}]},rn.push({role:"user",content:b.question},{role:"assistant",content:b.response});return}const I=w==null?void 0:w.threadId;let T=I;if(!T&&g.length>0){const W=g.find(ne=>ne.role==="user");W&&(T=(typeof W.content=="string"?W.content:Array.isArray(W.content)&&((x=W.content.find(me=>me.type==="text"))==null?void 0:x.text)||"").substring(0,50))}let D;I&&(D=tn.get(I)),!D&&T&&(D=ho.get(T)),!D&&d&&(D=d),o==null||o();let B=g,_=-1;for(let W=g.length-1;W>=0;W--)if(g[W].role==="assistant"){_=W;break}(D||_>=0)&&_>=0&&(B=g.slice(_+1));const j=sp(B);if(rn.length>0&&!D){const W=rn.map(ne=>({role:ne.role,content:ne.content}));j.unshift(...W),rn=[]}const R={messages:j,chatId:D||null,systemPrompt:n,ephemeral:a,enableReasoning:i,stream:!0};if(r&&r.trim()!==""&&(R.modelId=r),u&&!(yield new Le(u()))){if(c){const ne=typeof c=="function"?c():c,me=g.filter(Pe=>Pe.role==="user"),be=me.length>0?me[me.length-1]:void 0;let Ce="Message";if(be){if(typeof be.content=="string")Ce=be.content;else if(Array.isArray(be.content)){const Pe=be.content.find(it=>it.type==="text");Ce=(Pe==null?void 0:Pe.text)||"Message"}}fo(Ce,ne,40,400);const he=na.shift();if(he){o==null||o();const Pe=(ie=he.initialDelay)!=null?ie:400;if(Pe>0&&(yield new Le(new Promise(ht=>setTimeout(ht,Pe)))),v!=null&&v.aborted)throw new Error("Request aborted");const it=he.response.split(" ");let st="";const _t=he.streamingSpeed||40,Ie=`mock-${Date.now()}`;a&&(s==null||s(Ie));for(let ht=0;ht<it.length;ht++){if(v!=null&&v.aborted)throw new Error("Request aborted");st+=(ht===0?"":" ")+it[ht],yield{content:[{type:"text",text:st}]},yield new Le(new Promise(ft=>setTimeout(ft,_t+Math.random()*(_t*.3))))}yield{content:[{type:"text",text:st}]};return}}throw new Error("Request blocked")}const U=yield new Le(e.createOrContinueChat(R,v));let S="",P="",N;const H=[];let z=0,O=!1;const ee=`msg_${Date.now()}_${Math.random().toString(36).substring(2,9)}`;Nt.clear(),Nt.setCurrentMessage(ee);const de=()=>{H.length!==z&&(z=H.length,Nt.update({sources:H.length>0?[...H]:void 0}))},pe=()=>{de();const W=[];return P&&W.push({type:"reasoning",text:P}),S&&W.push({type:"text",text:S}),W.length===0&&W.push({type:"text",text:""}),{content:W}};try{for(var k=zt(ip(U,v)),Te,He,we;Te=!(He=yield new Le(k.next())).done;Te=!1){const W=He.value;if(v!=null&&v.aborted)throw new Error("Request aborted");const ne=W.id||W.chatId||W.messageId;ne&&!N&&(N=ne,d=ne,s==null||s(ne),I&&l&&(l(I,ne),tn.set(I,ne)),T&&ho.set(T,ne));const me=W.sources;if(me&&Array.isArray(me)&&me.length>0)for(const he of me)H.some(Pe=>Pe.sourceId===he.sourceId)||H.push({sourceId:he.sourceId,filename:he.filename||"Unknown",score:(_e=he.score)!=null?_e:1,chunkId:he.chunkId,datasetId:he.datasetId});const be=W.reasoning;if(be&&be.length>0&&(P+=be,yield pe()),W.type)switch(W.type){case"source-document":W.sourceId&&H.push({sourceId:W.sourceId,filename:W.title||"Unknown",score:1});continue;case"reasoning-start":continue;case"reasoning-delta":W.delta&&(P+=W.delta),(S||P)&&(yield pe());continue;case"reasoning-end":(S||P)&&(yield pe());continue;case"text-delta":W.delta&&(P&&!O&&!S&&(O=!0,yield new Le(new Promise(he=>setTimeout(he,400)))),S+=W.delta),S&&(yield pe());continue;case"error":throw new Error(W.errorText||"Stream error");case"text-start":case"text-end":case"start":case"start-step":case"finish-step":case"finish":continue}const Ce=W.delta;if(Ce!=null&&(P&&!O&&!S&&(O=!0,yield new Le(new Promise(he=>setTimeout(he,400)))),S+=Ce),W.content&&(S+=W.content),W.message&&(S+=W.message.content||""),W.finished){(S||P||H.length>0)&&(yield pe());break}(S||P||H.length>0)&&(yield pe())}}catch(He){we=[He]}finally{try{Te&&(He=k.return)&&(yield new Le(He.call(k)))}finally{if(we)throw we[0]}}(S||P||H.length>0)&&(yield pe())})}}}function mo(){return{accept:".pdf,.docx,.txt,.md,.csv,.json,image/*",add(r){return M(this,arguments,function*({file:t}){let n="file";return t.type.startsWith("image/")?n="image":(t.type.includes("pdf")||t.type.includes("document")||t.type.includes("text")||t.name.endsWith(".pdf")||t.name.endsWith(".docx")||t.name.endsWith(".txt")||t.name.endsWith(".md")||t.name.endsWith(".csv")||t.name.endsWith(".json"))&&(n="document"),{id:`${t.name}-${Date.now()}`,type:n,name:t.name,contentType:t.type,file:t,status:{type:"requires-action",reason:"composer-send"}}})},remove(){return M(this,null,function*(){})},send(t){return M(this,null,function*(){if(t.type==="image"&&t.file){const r=yield new Promise((n,a)=>{const i=new FileReader;i.onload=()=>n(i.result),i.onerror=a,i.readAsDataURL(t.file)});return E(m({},t),{status:{type:"complete"},content:[{type:"image",image:r}]})}return E(m({},t),{status:{type:"complete"},content:[]})})}}}function cp({children:e,baseUrl:t,sessionToken:r,isProxyMode:n=!1,mode:a="multiChat",modelId:i,onModelChange:s,ephemeral:o=!1,systemPrompt:l,enableReasoning:u=!1,initialThreadId:c,onError:d,onChatCreated:f,onUserMessage:h,onThreadIdUpdate:g,onChatsLoaded:v,enableAttachments:w=!1,onBeforeRequest:b,mockResponseOnBlocked:I}){const T=y.useMemo(()=>new co(t,r||void 0,n),[t,r,n]),[D,B]=y.useState(i||null);y.useEffect(()=>{i&&B(i)},[i]);const _=y.useCallback(U=>{f==null||f(U)},[f]),j=y.useCallback((U,S)=>{g==null||g(U,S)},[g]),R=y.useMemo(()=>po(T,{modelId:D||void 0,systemPrompt:l,ephemeral:o,enableReasoning:u,onChatCreated:_,onUserMessage:h,onBeforeRequest:b,mockResponseOnBlocked:I}),[T,D,l,o,u,_,h,b,I]);return a==="singleChat"?p.jsx(dp,{modelAdapter:R,enableAttachments:w,children:e}):p.jsx(hp,{client:T,modelAdapterOptions:{modelId:D||void 0,systemPrompt:l,ephemeral:o,enableReasoning:u,onChatCreated:_,onUserMessage:h,onBeforeRequest:b,mockResponseOnBlocked:I},initialThreadId:c,onChatsLoaded:v,onThreadIdUpdate:j,onError:d,enableAttachments:w,children:e})}function dp({modelAdapter:e,enableAttachments:t,children:r}){const n=y.useMemo(()=>t?mo():void 0,[t]),a=bs(e,{adapters:m({},n&&{attachments:n})});return p.jsx(hs,{runtime:a,children:r})}function hp({client:e,modelAdapterOptions:t,initialThreadId:r,onChatsLoaded:n,onThreadIdUpdate:a,onError:i,enableAttachments:s,children:o}){const l=y.useMemo(()=>lp(e,(v,w)=>{a==null||a(v,w)}),[e,a]),u=y.useCallback((v,w)=>{l.updateRemoteId&&l.updateRemoteId(v,w),a==null||a(v,w)},[l,a]),c=y.useMemo(()=>E(m({},l),{list(){return M(this,null,function*(){const w=yield l.list();return n==null||n(),w})}}),[l,n]);y.useEffect(()=>{window.__cuadraThreadListAdapter=c,window.__cuadraThreadListRuntime=null},[c]);const d=y.useMemo(()=>po(e,E(m({},t),{onThreadIdUpdate:u})),[e,t,u]),f=y.useMemo(()=>s?mo():void 0,[s]),h=y.useCallback(()=>bs(d,{adapters:m({},f&&{attachments:f})}),[d,f]),g=Ss({adapter:c,runtimeHook:h});return y.useEffect(()=>{window.__cuadraThreadListRuntime=g},[g]),p.jsx(hs,{runtime:g,children:o})}function Mv(){}function Pv(){}function fp(e,t){const r={};return(e[e.length-1]===""?[...e,""]:e).join((r.padRight?" ":"")+","+(r.padLeft===!1?"":" ")).trim()}const pp=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,mp=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,gp={};function go(e,t){return(gp.jsx?mp:pp).test(e)}const yp=/[ \t\n\f\r]/g;function bp(e){return typeof e=="object"?e.type==="text"?yo(e.value):!1:yo(e)}function yo(e){return e.replace(yp,"")===""}class mr{constructor(t,r,n){this.normal=r,this.property=t,n&&(this.space=n)}}mr.prototype.normal={},mr.prototype.property={},mr.prototype.space=void 0;function bo(e,t){const r={},n={};for(const a of e)Object.assign(r,a.property),Object.assign(n,a.normal);return new mr(r,n,t)}function aa(e){return e.toLowerCase()}class $e{constructor(t,r){this.attribute=r,this.property=t}}$e.prototype.attribute="",$e.prototype.booleanish=!1,$e.prototype.boolean=!1,$e.prototype.commaOrSpaceSeparated=!1,$e.prototype.commaSeparated=!1,$e.prototype.defined=!1,$e.prototype.mustUseProperty=!1,$e.prototype.number=!1,$e.prototype.overloadedBoolean=!1,$e.prototype.property="",$e.prototype.spaceSeparated=!1,$e.prototype.space=void 0;let wp=0;const X=Lt(),ve=Lt(),ia=Lt(),L=Lt(),ce=Lt(),Jt=Lt(),We=Lt();function Lt(){return Mu(2,++wp)}const sa=Object.freeze(Object.defineProperty({__proto__:null,boolean:X,booleanish:ve,commaOrSpaceSeparated:We,commaSeparated:Jt,number:L,overloadedBoolean:ia,spaceSeparated:ce},Symbol.toStringTag,{value:"Module"})),oa=Object.keys(sa);class la extends $e{constructor(t,r,n,a){let i=-1;if(super(t,r),wo(this,"space",a),typeof n=="number")for(;++i<oa.length;){const s=oa[i];wo(this,oa[i],(n&sa[s])===sa[s])}}}la.prototype.defined=!0;function wo(e,t,r){r&&(e[t]=r)}function Kt(e){const t={},r={};for(const[n,a]of Object.entries(e.properties)){const i=new la(n,e.transform(e.attributes||{},n),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(n)&&(i.mustUseProperty=!0),t[n]=i,r[aa(n)]=n,r[aa(i.attribute)]=n}return new mr(t,r,e.space)}const xo=Kt({properties:{ariaActiveDescendant:null,ariaAtomic:ve,ariaAutoComplete:null,ariaBusy:ve,ariaChecked:ve,ariaColCount:L,ariaColIndex:L,ariaColSpan:L,ariaControls:ce,ariaCurrent:null,ariaDescribedBy:ce,ariaDetails:null,ariaDisabled:ve,ariaDropEffect:ce,ariaErrorMessage:null,ariaExpanded:ve,ariaFlowTo:ce,ariaGrabbed:ve,ariaHasPopup:null,ariaHidden:ve,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:ce,ariaLevel:L,ariaLive:null,ariaModal:ve,ariaMultiLine:ve,ariaMultiSelectable:ve,ariaOrientation:null,ariaOwns:ce,ariaPlaceholder:null,ariaPosInSet:L,ariaPressed:ve,ariaReadOnly:ve,ariaRelevant:null,ariaRequired:ve,ariaRoleDescription:ce,ariaRowCount:L,ariaRowIndex:L,ariaRowSpan:L,ariaSelected:ve,ariaSetSize:L,ariaSort:null,ariaValueMax:L,ariaValueMin:L,ariaValueNow:L,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function vo(e,t){return t in e?e[t]:t}function ko(e,t){return vo(e,t.toLowerCase())}const xp=Kt({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Jt,acceptCharset:ce,accessKey:ce,action:null,allow:null,allowFullScreen:X,allowPaymentRequest:X,allowUserMedia:X,alt:null,as:null,async:X,autoCapitalize:null,autoComplete:ce,autoFocus:X,autoPlay:X,blocking:ce,capture:null,charSet:null,checked:X,cite:null,className:ce,cols:L,colSpan:null,content:null,contentEditable:ve,controls:X,controlsList:ce,coords:L|Jt,crossOrigin:null,data:null,dateTime:null,decoding:null,default:X,defer:X,dir:null,dirName:null,disabled:X,download:ia,draggable:ve,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:X,formTarget:null,headers:ce,height:L,hidden:ia,high:L,href:null,hrefLang:null,htmlFor:ce,httpEquiv:ce,id:null,imageSizes:null,imageSrcSet:null,inert:X,inputMode:null,integrity:null,is:null,isMap:X,itemId:null,itemProp:ce,itemRef:ce,itemScope:X,itemType:ce,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:X,low:L,manifest:null,max:null,maxLength:L,media:null,method:null,min:null,minLength:L,multiple:X,muted:X,name:null,nonce:null,noModule:X,noValidate:X,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:X,optimum:L,pattern:null,ping:ce,placeholder:null,playsInline:X,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:X,referrerPolicy:null,rel:ce,required:X,reversed:X,rows:L,rowSpan:L,sandbox:ce,scope:null,scoped:X,seamless:X,selected:X,shadowRootClonable:X,shadowRootDelegatesFocus:X,shadowRootMode:null,shape:null,size:L,sizes:null,slot:null,span:L,spellCheck:ve,src:null,srcDoc:null,srcLang:null,srcSet:null,start:L,step:null,style:null,tabIndex:L,target:null,title:null,translate:null,type:null,typeMustMatch:X,useMap:null,value:ve,width:L,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:ce,axis:null,background:null,bgColor:null,border:L,borderColor:null,bottomMargin:L,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:X,declare:X,event:null,face:null,frame:null,frameBorder:null,hSpace:L,leftMargin:L,link:null,longDesc:null,lowSrc:null,marginHeight:L,marginWidth:L,noResize:X,noHref:X,noShade:X,noWrap:X,object:null,profile:null,prompt:null,rev:null,rightMargin:L,rules:null,scheme:null,scrolling:ve,standby:null,summary:null,text:null,topMargin:L,valueType:null,version:null,vAlign:null,vLink:null,vSpace:L,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:X,disableRemotePlayback:X,prefix:null,property:null,results:L,security:null,unselectable:null},space:"html",transform:ko}),vp=Kt({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:We,accentHeight:L,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:L,amplitude:L,arabicForm:null,ascent:L,attributeName:null,attributeType:null,azimuth:L,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:L,by:null,calcMode:null,capHeight:L,className:ce,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:L,diffuseConstant:L,direction:null,display:null,dur:null,divisor:L,dominantBaseline:null,download:X,dx:null,dy:null,edgeMode:null,editable:null,elevation:L,enableBackground:null,end:null,event:null,exponent:L,externalResourcesRequired:null,fill:null,fillOpacity:L,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Jt,g2:Jt,glyphName:Jt,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:L,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:L,horizOriginX:L,horizOriginY:L,id:null,ideographic:L,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:L,k:L,k1:L,k2:L,k3:L,k4:L,kernelMatrix:We,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:L,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:L,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:L,overlineThickness:L,paintOrder:null,panose1:null,path:null,pathLength:L,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:ce,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:L,pointsAtY:L,pointsAtZ:L,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:We,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:We,rev:We,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:We,requiredFeatures:We,requiredFonts:We,requiredFormats:We,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:L,specularExponent:L,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:L,strikethroughThickness:L,string:null,stroke:null,strokeDashArray:We,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:L,strokeOpacity:L,strokeWidth:null,style:null,surfaceScale:L,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:We,tabIndex:L,tableValues:null,target:null,targetX:L,targetY:L,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:We,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:L,underlineThickness:L,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:L,values:null,vAlphabetic:L,vMathematical:L,vectorEffect:null,vHanging:L,vIdeographic:L,version:null,vertAdvY:L,vertOriginX:L,vertOriginY:L,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:L,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:vo}),So=Kt({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),_o=Kt({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:ko}),To=Kt({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),kp={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Sp=/[A-Z]/g,Co=/-[a-z]/g,_p=/^data[-\w.:]+$/i;function Tp(e,t){const r=aa(t);let n=t,a=$e;if(r in e.normal)return e.property[e.normal[r]];if(r.length>4&&r.slice(0,4)==="data"&&_p.test(t)){if(t.charAt(4)==="-"){const i=t.slice(5).replace(Co,Ip);n="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=t.slice(4);if(!Co.test(i)){let s=i.replace(Sp,Cp);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}a=la}return new a(n,t)}function Cp(e){return"-"+e.toLowerCase()}function Ip(e){return e.charAt(1).toUpperCase()}const Ep=bo([xo,xp,So,_o,To],"html"),ua=bo([xo,vp,So,_o,To],"svg");function Ap(e){return e.join(" ").trim()}var Yt={},ca,Io;function Mp(){if(Io)return ca;Io=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,r=/^\s*/,n=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,i=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,o=/^\s+|\s+$/g,l=`
|
|
8
|
-
`,u="/",c="*",d="",f="comment",h="declaration";function g(w,b){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];b=b||{};var I=1,T=1;function D(z){var O=z.match(t);O&&(I+=O.length);var ee=z.lastIndexOf(l);T=~ee?z.length-ee:T+z.length}function B(){var z={line:I,column:T};return function(O){return O.position=new _(z),U(),O}}function _(z){this.start=z,this.end={line:I,column:T},this.source=b.source}_.prototype.content=w;function j(z){var O=new Error(b.source+":"+I+":"+T+": "+z);if(O.reason=z,O.filename=b.source,O.line=I,O.column=T,O.source=w,!b.silent)throw O}function R(z){var O=z.exec(w);if(O){var ee=O[0];return D(ee),w=w.slice(ee.length),O}}function U(){R(r)}function S(z){var O;for(z=z||[];O=P();)O!==!1&&z.push(O);return z}function P(){var z=B();if(!(u!=w.charAt(0)||c!=w.charAt(1))){for(var O=2;d!=w.charAt(O)&&(c!=w.charAt(O)||u!=w.charAt(O+1));)++O;if(O+=2,d===w.charAt(O-1))return j("End of comment missing");var ee=w.slice(2,O-2);return T+=2,D(ee),w=w.slice(O),T+=2,z({type:f,comment:ee})}}function N(){var z=B(),O=R(n);if(O){if(P(),!R(a))return j("property missing ':'");var ee=R(i),de=z({type:h,property:v(O[0].replace(e,d)),value:ee?v(ee[0].replace(e,d)):d});return R(s),de}}function H(){var z=[];S(z);for(var O;O=N();)O!==!1&&(z.push(O),S(z));return z}return U(),H()}function v(w){return w?w.replace(o,d):d}return ca=g,ca}var Eo;function Pp(){if(Eo)return Yt;Eo=1;var e=Yt&&Yt.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.default=r;const t=e(Mp());function r(n,a){let i=null;if(!n||typeof n!="string")return i;const s=(0,t.default)(n),o=typeof a=="function";return s.forEach(l=>{if(l.type!=="declaration")return;const{property:u,value:c}=l;o?a(u,c,l):c&&(i=i||{},i[u]=c)}),i}return Yt}var gr={},Ao;function Np(){if(Ao)return gr;Ao=1,Object.defineProperty(gr,"__esModule",{value:!0}),gr.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,r=/^[^-]+$/,n=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,i=function(u){return!u||r.test(u)||e.test(u)},s=function(u,c){return c.toUpperCase()},o=function(u,c){return"".concat(c,"-")},l=function(u,c){return c===void 0&&(c={}),i(u)?u:(u=u.toLowerCase(),c.reactCompat?u=u.replace(a,o):u=u.replace(n,o),u.replace(t,s))};return gr.camelCase=l,gr}var yr,Mo;function Lp(){if(Mo)return yr;Mo=1;var e=yr&&yr.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},t=e(Pp()),r=Np();function n(a,i){var s={};return!a||typeof a!="string"||(0,t.default)(a,function(o,l){o&&l&&(s[(0,r.camelCase)(o,i)]=l)}),s}return n.default=n,yr=n,yr}var Dp=Lp();const Op=Lr(Dp),Po=No("end"),da=No("start");function No(e){return t;function t(r){const n=r&&r.position&&r.position[e]||{};if(typeof n.line=="number"&&n.line>0&&typeof n.column=="number"&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset=="number"&&n.offset>-1?n.offset:void 0}}}function Fp(e){const t=da(e),r=Po(e);if(t&&r)return{start:t,end:r}}function br(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Lo(e.position):"start"in e||"end"in e?Lo(e):"line"in e||"column"in e?ha(e):""}function ha(e){return Do(e&&e.line)+":"+Do(e&&e.column)}function Lo(e){return ha(e&&e.start)+"-"+ha(e&&e.end)}function Do(e){return e&&typeof e=="number"?e:1}class Ae extends Error{constructor(t,r,n){super(),typeof r=="string"&&(n=r,r=void 0);let a="",i={},s=!1;if(r&&("line"in r&&"column"in r?i={place:r}:"start"in r&&"end"in r?i={place:r}:"type"in r?i={ancestors:[r],place:r.position}:i=m({},r)),typeof t=="string"?a=t:!i.cause&&t&&(s=!0,a=t.message,i.cause=t),!i.ruleId&&!i.source&&typeof n=="string"){const l=n.indexOf(":");l===-1?i.ruleId=n:(i.source=n.slice(0,l),i.ruleId=n.slice(l+1))}if(!i.place&&i.ancestors&&i.ancestors){const l=i.ancestors[i.ancestors.length-1];l&&(i.place=l.position)}const o=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=o?o.line:void 0,this.name=br(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=s&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Ae.prototype.file="",Ae.prototype.name="",Ae.prototype.reason="",Ae.prototype.message="",Ae.prototype.stack="",Ae.prototype.column=void 0,Ae.prototype.line=void 0,Ae.prototype.ancestors=void 0,Ae.prototype.cause=void 0,Ae.prototype.fatal=void 0,Ae.prototype.place=void 0,Ae.prototype.ruleId=void 0,Ae.prototype.source=void 0;const fa={}.hasOwnProperty,Bp=new Map,zp=/[A-Z]/g,Rp=new Set(["table","tbody","thead","tfoot","tr"]),jp=new Set(["td","th"]),Oo="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function $p(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=t.filePath||void 0;let n;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");n=Yp(r,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");n=Kp(r,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:n,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?ua:Ep,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},i=Fo(a,e,void 0);return i&&typeof i!="string"?i:a.create(e,a.Fragment,{children:i||void 0},void 0)}function Fo(e,t,r){if(t.type==="element")return Up(e,t,r);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return Hp(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return Vp(e,t,r);if(t.type==="mdxjsEsm")return qp(e,t);if(t.type==="root")return Wp(e,t,r);if(t.type==="text")return Jp(e,t)}function Up(e,t,r){const n=e.schema;let a=n;t.tagName.toLowerCase()==="svg"&&n.space==="html"&&(a=ua,e.schema=a),e.ancestors.push(t);const i=zo(e,t.tagName,!1),s=Gp(e,t);let o=ma(e,t);return Rp.has(t.tagName)&&(o=o.filter(function(l){return typeof l=="string"?!bp(l):!0})),Bo(e,s,i,t),pa(s,o),e.ancestors.pop(),e.schema=n,e.create(t,i,s,r)}function Hp(e,t){if(t.data&&t.data.estree&&e.evaluater){const n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}wr(e,t.position)}function qp(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);wr(e,t.position)}function Vp(e,t,r){const n=e.schema;let a=n;t.name==="svg"&&n.space==="html"&&(a=ua,e.schema=a),e.ancestors.push(t);const i=t.name===null?e.Fragment:zo(e,t.name,!0),s=Xp(e,t),o=ma(e,t);return Bo(e,s,i,t),pa(s,o),e.ancestors.pop(),e.schema=n,e.create(t,i,s,r)}function Wp(e,t,r){const n={};return pa(n,ma(e,t)),e.create(t,e.Fragment,n,r)}function Jp(e,t){return t.value}function Bo(e,t,r,n){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(t.node=n)}function pa(e,t){if(t.length>0){const r=t.length>1?t:t[0];r&&(e.children=r)}}function Kp(e,t,r){return n;function n(a,i,s,o){const u=Array.isArray(s.children)?r:t;return o?u(i,s,o):u(i,s)}}function Yp(e,t){return r;function r(n,a,i,s){const o=Array.isArray(i.children),l=da(n);return t(a,i,s,o,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function Gp(e,t){const r={};let n,a;for(a in t.properties)if(a!=="children"&&fa.call(t.properties,a)){const i=Qp(e,a,t.properties[a]);if(i){const[s,o]=i;e.tableCellAlignToStyle&&s==="align"&&typeof o=="string"&&jp.has(t.tagName)?n=o:r[s]=o}}if(n){const i=r.style||(r.style={});i[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=n}return r}function Xp(e,t){const r={};for(const n of t.attributes)if(n.type==="mdxJsxExpressionAttribute")if(n.data&&n.data.estree&&e.evaluater){const i=n.data.estree.body[0];i.type;const s=i.expression;s.type;const o=s.properties[0];o.type,Object.assign(r,e.evaluater.evaluateExpression(o.argument))}else wr(e,t.position);else{const a=n.name;let i;if(n.value&&typeof n.value=="object")if(n.value.data&&n.value.data.estree&&e.evaluater){const o=n.value.data.estree.body[0];o.type,i=e.evaluater.evaluateExpression(o.expression)}else wr(e,t.position);else i=n.value===null?!0:n.value;r[a]=i}return r}function ma(e,t){const r=[];let n=-1;const a=e.passKeys?new Map:Bp;for(;++n<t.children.length;){const i=t.children[n];let s;if(e.passKeys){const l=i.type==="element"?i.tagName:i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement"?i.name:void 0;if(l){const u=a.get(l)||0;s=l+"-"+u,a.set(l,u+1)}}const o=Fo(e,i,s);o!==void 0&&r.push(o)}return r}function Qp(e,t,r){const n=Tp(e.schema,t);if(!(r==null||typeof r=="number"&&Number.isNaN(r))){if(Array.isArray(r)&&(r=n.commaSeparated?fp(r):Ap(r)),n.property==="style"){let a=typeof r=="object"?r:Zp(e,String(r));return e.stylePropertyNameCase==="css"&&(a=em(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&n.space?kp[n.property]||n.property:n.attribute,r]}}function Zp(e,t){try{return Op(t,{reactCompat:!0})}catch(r){if(e.ignoreInvalidStyle)return{};const n=r,a=new Ae("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=Oo+"#cannot-parse-style-attribute",a}}function zo(e,t,r){let n;if(!r)n={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let i=-1,s;for(;++i<a.length;){const o=go(a[i])?{type:"Identifier",name:a[i]}:{type:"Literal",value:a[i]};s=s?{type:"MemberExpression",object:s,property:o,computed:!!(i&&o.type==="Literal"),optional:!1}:o}n=s}else n=go(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(n.type==="Literal"){const a=n.value;return fa.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(n);wr(e)}function wr(e,t){const r=new Ae("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw r.file=e.filePath||void 0,r.url=Oo+"#cannot-handle-mdx-estrees-without-createevaluater",r}function em(e){const t={};let r;for(r in e)fa.call(e,r)&&(t[tm(r)]=e[r]);return t}function tm(e){let t=e.replace(zp,rm);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function rm(e){return"-"+e.toLowerCase()}const ga={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},nm={};function ya(e,t){const r=nm,n=typeof r.includeImageAlt=="boolean"?r.includeImageAlt:!0,a=typeof r.includeHtml=="boolean"?r.includeHtml:!0;return Ro(e,n,a)}function Ro(e,t,r){if(am(e)){if("value"in e)return e.type==="html"&&!r?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return jo(e.children,t,r)}return Array.isArray(e)?jo(e,t,r):""}function jo(e,t,r){const n=[];let a=-1;for(;++a<e.length;)n[a]=Ro(e[a],t,r);return n.join("")}function am(e){return!!(e&&typeof e=="object")}const $o=document.createElement("i");function ba(e){const t="&"+e+";";$o.innerHTML=t;const r=$o.textContent;return r.charCodeAt(r.length-1)===59&&e!=="semi"||r===t?!1:r}function Je(e,t,r,n){const a=e.length;let i=0,s;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,r=r>0?r:0,n.length<1e4)s=Array.from(n),s.unshift(t,r),e.splice(...s);else for(r&&e.splice(t,r);i<n.length;)s=n.slice(i,i+1e4),s.unshift(t,0),e.splice(...s),i+=1e4,t+=1e4}function Xe(e,t){return e.length>0?(Je(e,e.length,0,t),e):t}const Uo={}.hasOwnProperty;function Ho(e){const t={};let r=-1;for(;++r<e.length;)im(t,e[r]);return t}function im(e,t){let r;for(r in t){const a=(Uo.call(e,r)?e[r]:void 0)||(e[r]={}),i=t[r];let s;if(i)for(s in i){Uo.call(a,s)||(a[s]=[]);const o=i[s];sm(a[s],Array.isArray(o)?o:o?[o]:[])}}}function sm(e,t){let r=-1;const n=[];for(;++r<t.length;)(t[r].add==="after"?e:n).push(t[r]);Je(e,0,0,n)}function qo(e,t){const r=Number.parseInt(e,t);return r<9||r===11||r>13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function nt(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ze=kt(/[A-Za-z]/),Me=kt(/[\dA-Za-z]/),om=kt(/[#-'*+\--9=?A-Z^-~]/);function nn(e){return e!==null&&(e<32||e===127)}const wa=kt(/\d/),lm=kt(/[\dA-Fa-f]/),um=kt(/[!-/:-@[-`{-~]/);function J(e){return e!==null&&e<-2}function le(e){return e!==null&&(e<0||e===32)}function Z(e){return e===-2||e===-1||e===32}const an=kt(new RegExp("\\p{P}|\\p{S}","u")),Dt=kt(/\s/);function kt(e){return t;function t(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function Gt(e){const t=[];let r=-1,n=0,a=0;for(;++r<e.length;){const i=e.charCodeAt(r);let s="";if(i===37&&Me(e.charCodeAt(r+1))&&Me(e.charCodeAt(r+2)))a=2;else if(i<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(i))||(s=String.fromCharCode(i));else if(i>55295&&i<57344){const o=e.charCodeAt(r+1);i<56320&&o>56319&&o<57344?(s=String.fromCharCode(i,o),a=1):s="�"}else s=String.fromCharCode(i);s&&(t.push(e.slice(n,r),encodeURIComponent(s)),n=r+a+1,s=""),a&&(r+=a,a=0)}return t.join("")+e.slice(n)}function re(e,t,r,n){const a=n?n-1:Number.POSITIVE_INFINITY;let i=0;return s;function s(l){return Z(l)?(e.enter(r),o(l)):t(l)}function o(l){return Z(l)&&i++<a?(e.consume(l),o):(e.exit(r),t(l))}}const cm={tokenize:dm};function dm(e){const t=e.attempt(this.parser.constructs.contentInitial,n,a);let r;return t;function n(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),re(e,t,"linePrefix")}function a(o){return e.enter("paragraph"),i(o)}function i(o){const l=e.enter("chunkText",{contentType:"text",previous:r});return r&&(r.next=l),r=l,s(o)}function s(o){if(o===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(o);return}return J(o)?(e.consume(o),e.exit("chunkText"),i):(e.consume(o),s)}}const hm={tokenize:fm},Vo={tokenize:pm};function fm(e){const t=this,r=[];let n=0,a,i,s;return o;function o(T){if(n<r.length){const D=r[n];return t.containerState=D[1],e.attempt(D[0].continuation,l,u)(T)}return u(T)}function l(T){if(n++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&I();const D=t.events.length;let B=D,_;for(;B--;)if(t.events[B][0]==="exit"&&t.events[B][1].type==="chunkFlow"){_=t.events[B][1].end;break}b(n);let j=D;for(;j<t.events.length;)t.events[j][1].end=m({},_),j++;return Je(t.events,B+1,0,t.events.slice(D)),t.events.length=j,u(T)}return o(T)}function u(T){if(n===r.length){if(!a)return f(T);if(a.currentConstruct&&a.currentConstruct.concrete)return g(T);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Vo,c,d)(T)}function c(T){return a&&I(),b(n),f(T)}function d(T){return t.parser.lazy[t.now().line]=n!==r.length,s=t.now().offset,g(T)}function f(T){return t.containerState={},e.attempt(Vo,h,g)(T)}function h(T){return n++,r.push([t.currentConstruct,t.containerState]),f(T)}function g(T){if(T===null){a&&I(),b(0),e.consume(T);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:i}),v(T)}function v(T){if(T===null){w(e.exit("chunkFlow"),!0),b(0),e.consume(T);return}return J(T)?(e.consume(T),w(e.exit("chunkFlow")),n=0,t.interrupt=void 0,o):(e.consume(T),v)}function w(T,D){const B=t.sliceStream(T);if(D&&B.push(null),T.previous=i,i&&(i.next=T),i=T,a.defineSkip(T.start),a.write(B),t.parser.lazy[T.start.line]){let _=a.events.length;for(;_--;)if(a.events[_][1].start.offset<s&&(!a.events[_][1].end||a.events[_][1].end.offset>s))return;const j=t.events.length;let R=j,U,S;for(;R--;)if(t.events[R][0]==="exit"&&t.events[R][1].type==="chunkFlow"){if(U){S=t.events[R][1].end;break}U=!0}for(b(n),_=j;_<t.events.length;)t.events[_][1].end=m({},S),_++;Je(t.events,R+1,0,t.events.slice(j)),t.events.length=_}}function b(T){let D=r.length;for(;D-- >T;){const B=r[D];t.containerState=B[1],B[0].exit.call(t,e)}r.length=T}function I(){a.write([null]),i=void 0,a=void 0,t.containerState._closeFlow=void 0}}function pm(e,t,r){return re(e,e.attempt(this.parser.constructs.document,t,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Xt(e){if(e===null||le(e)||Dt(e))return 1;if(an(e))return 2}function sn(e,t,r){const n=[];let a=-1;for(;++a<e.length;){const i=e[a].resolveAll;i&&!n.includes(i)&&(t=i(t,r),n.push(i))}return t}const xa={name:"attention",resolveAll:mm,tokenize:gm};function mm(e,t){let r=-1,n,a,i,s,o,l,u,c;for(;++r<e.length;)if(e[r][0]==="enter"&&e[r][1].type==="attentionSequence"&&e[r][1]._close){for(n=r;n--;)if(e[n][0]==="exit"&&e[n][1].type==="attentionSequence"&&e[n][1]._open&&t.sliceSerialize(e[n][1]).charCodeAt(0)===t.sliceSerialize(e[r][1]).charCodeAt(0)){if((e[n][1]._close||e[r][1]._open)&&(e[r][1].end.offset-e[r][1].start.offset)%3&&!((e[n][1].end.offset-e[n][1].start.offset+e[r][1].end.offset-e[r][1].start.offset)%3))continue;l=e[n][1].end.offset-e[n][1].start.offset>1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const d=m({},e[n][1].end),f=m({},e[r][1].start);Wo(d,-l),Wo(f,l),s={type:l>1?"strongSequence":"emphasisSequence",start:d,end:m({},e[n][1].end)},o={type:l>1?"strongSequence":"emphasisSequence",start:m({},e[r][1].start),end:f},i={type:l>1?"strongText":"emphasisText",start:m({},e[n][1].end),end:m({},e[r][1].start)},a={type:l>1?"strong":"emphasis",start:m({},s.start),end:m({},o.end)},e[n][1].end=m({},s.start),e[r][1].start=m({},o.end),u=[],e[n][1].end.offset-e[n][1].start.offset&&(u=Xe(u,[["enter",e[n][1],t],["exit",e[n][1],t]])),u=Xe(u,[["enter",a,t],["enter",s,t],["exit",s,t],["enter",i,t]]),u=Xe(u,sn(t.parser.constructs.insideSpan.null,e.slice(n+1,r),t)),u=Xe(u,[["exit",i,t],["enter",o,t],["exit",o,t],["exit",a,t]]),e[r][1].end.offset-e[r][1].start.offset?(c=2,u=Xe(u,[["enter",e[r][1],t],["exit",e[r][1],t]])):c=0,Je(e,n-1,r-n+3,u),r=n+u.length-c-2;break}}for(r=-1;++r<e.length;)e[r][1].type==="attentionSequence"&&(e[r][1].type="data");return e}function gm(e,t){const r=this.parser.constructs.attentionMarkers.null,n=this.previous,a=Xt(n);let i;return s;function s(l){return i=l,e.enter("attentionSequence"),o(l)}function o(l){if(l===i)return e.consume(l),o;const u=e.exit("attentionSequence"),c=Xt(l),d=!c||c===2&&a||r.includes(l),f=!a||a===2&&c||r.includes(n);return u._open=!!(i===42?d:d&&(a||!f)),u._close=!!(i===42?f:f&&(c||!d)),t(l)}}function Wo(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const ym={name:"autolink",tokenize:bm};function bm(e,t,r){let n=0;return a;function a(h){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),i}function i(h){return ze(h)?(e.consume(h),s):h===64?r(h):u(h)}function s(h){return h===43||h===45||h===46||Me(h)?(n=1,o(h)):u(h)}function o(h){return h===58?(e.consume(h),n=0,l):(h===43||h===45||h===46||Me(h))&&n++<32?(e.consume(h),o):(n=0,u(h))}function l(h){return h===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.exit("autolink"),t):h===null||h===32||h===60||nn(h)?r(h):(e.consume(h),l)}function u(h){return h===64?(e.consume(h),c):om(h)?(e.consume(h),u):r(h)}function c(h){return Me(h)?d(h):r(h)}function d(h){return h===46?(e.consume(h),n=0,c):h===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.exit("autolink"),t):f(h)}function f(h){if((h===45||Me(h))&&n++<63){const g=h===45?f:d;return e.consume(h),g}return r(h)}}const xr={partial:!0,tokenize:wm};function wm(e,t,r){return n;function n(i){return Z(i)?re(e,a,"linePrefix")(i):a(i)}function a(i){return i===null||J(i)?t(i):r(i)}}const Jo={continuation:{tokenize:vm},exit:km,name:"blockQuote",tokenize:xm};function xm(e,t,r){const n=this;return a;function a(s){if(s===62){const o=n.containerState;return o.open||(e.enter("blockQuote",{_container:!0}),o.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(s),e.exit("blockQuoteMarker"),i}return r(s)}function i(s){return Z(s)?(e.enter("blockQuotePrefixWhitespace"),e.consume(s),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(s))}}function vm(e,t,r){const n=this;return a;function a(s){return Z(s)?re(e,i,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s):i(s)}function i(s){return e.attempt(Jo,t,r)(s)}}function km(e){e.exit("blockQuote")}const Ko={name:"characterEscape",tokenize:Sm};function Sm(e,t,r){return n;function n(i){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(i),e.exit("escapeMarker"),a}function a(i){return um(i)?(e.enter("characterEscapeValue"),e.consume(i),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):r(i)}}const Yo={name:"characterReference",tokenize:_m};function _m(e,t,r){const n=this;let a=0,i,s;return o;function o(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),i=31,s=Me,c(d))}function u(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),i=6,s=lm,c):(e.enter("characterReferenceValue"),i=7,s=wa,c(d))}function c(d){if(d===59&&a){const f=e.exit("characterReferenceValue");return s===Me&&!ba(n.sliceSerialize(f))?r(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return s(d)&&a++<i?(e.consume(d),c):r(d)}}const Go={partial:!0,tokenize:Cm},Xo={concrete:!0,name:"codeFenced",tokenize:Tm};function Tm(e,t,r){const n=this,a={partial:!0,tokenize:B};let i=0,s=0,o;return l;function l(_){return u(_)}function u(_){const j=n.events[n.events.length-1];return i=j&&j[1].type==="linePrefix"?j[2].sliceSerialize(j[1],!0).length:0,o=_,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),c(_)}function c(_){return _===o?(s++,e.consume(_),c):s<3?r(_):(e.exit("codeFencedFenceSequence"),Z(_)?re(e,d,"whitespace")(_):d(_))}function d(_){return _===null||J(_)?(e.exit("codeFencedFence"),n.interrupt?t(_):e.check(Go,v,D)(_)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),f(_))}function f(_){return _===null||J(_)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(_)):Z(_)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),re(e,h,"whitespace")(_)):_===96&&_===o?r(_):(e.consume(_),f)}function h(_){return _===null||J(_)?d(_):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),g(_))}function g(_){return _===null||J(_)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(_)):_===96&&_===o?r(_):(e.consume(_),g)}function v(_){return e.attempt(a,D,w)(_)}function w(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),b}function b(_){return i>0&&Z(_)?re(e,I,"linePrefix",i+1)(_):I(_)}function I(_){return _===null||J(_)?e.check(Go,v,D)(_):(e.enter("codeFlowValue"),T(_))}function T(_){return _===null||J(_)?(e.exit("codeFlowValue"),I(_)):(e.consume(_),T)}function D(_){return e.exit("codeFenced"),t(_)}function B(_,j,R){let U=0;return S;function S(O){return _.enter("lineEnding"),_.consume(O),_.exit("lineEnding"),P}function P(O){return _.enter("codeFencedFence"),Z(O)?re(_,N,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(O):N(O)}function N(O){return O===o?(_.enter("codeFencedFenceSequence"),H(O)):R(O)}function H(O){return O===o?(U++,_.consume(O),H):U>=s?(_.exit("codeFencedFenceSequence"),Z(O)?re(_,z,"whitespace")(O):z(O)):R(O)}function z(O){return O===null||J(O)?(_.exit("codeFencedFence"),j(O)):R(O)}}}function Cm(e,t,r){const n=this;return a;function a(s){return s===null?r(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i)}function i(s){return n.parser.lazy[n.now().line]?r(s):t(s)}}const va={name:"codeIndented",tokenize:Em},Im={partial:!0,tokenize:Am};function Em(e,t,r){const n=this;return a;function a(u){return e.enter("codeIndented"),re(e,i,"linePrefix",5)(u)}function i(u){const c=n.events[n.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?s(u):r(u)}function s(u){return u===null?l(u):J(u)?e.attempt(Im,s,l)(u):(e.enter("codeFlowValue"),o(u))}function o(u){return u===null||J(u)?(e.exit("codeFlowValue"),s(u)):(e.consume(u),o)}function l(u){return e.exit("codeIndented"),t(u)}}function Am(e,t,r){const n=this;return a;function a(s){return n.parser.lazy[n.now().line]?r(s):J(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),a):re(e,i,"linePrefix",5)(s)}function i(s){const o=n.events[n.events.length-1];return o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(s):J(s)?a(s):r(s)}}const Mm={name:"codeText",previous:Nm,resolve:Pm,tokenize:Lm};function Pm(e){let t=e.length-4,r=3,n,a;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(n=r;++n<t;)if(e[n][1].type==="codeTextData"){e[r][1].type="codeTextPadding",e[t][1].type="codeTextPadding",r+=2,t-=2;break}}for(n=r-1,t++;++n<=t;)a===void 0?n!==t&&e[n][1].type!=="lineEnding"&&(a=n):(n===t||e[n][1].type==="lineEnding")&&(e[a][1].type="codeTextData",n!==a+2&&(e[a][1].end=e[n-1][1].end,e.splice(a+2,n-a-2),t-=n-a-2,n=a+2),a=void 0);return e}function Nm(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function Lm(e,t,r){let n=0,a,i;return s;function s(d){return e.enter("codeText"),e.enter("codeTextSequence"),o(d)}function o(d){return d===96?(e.consume(d),n++,o):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?r(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(i=e.enter("codeTextSequence"),a=0,c(d)):J(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),u(d))}function u(d){return d===null||d===32||d===96||J(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),u)}function c(d){return d===96?(e.consume(d),a++,c):a===n?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(i.type="codeTextData",u(d))}}class Dm{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,r){const n=r==null?Number.POSITIVE_INFINITY:r;return n<this.left.length?this.left.slice(t,n):t>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(t,r,n){const a=r||0;this.setCursor(Math.trunc(t));const i=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return n&&vr(this.left,n),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),vr(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),vr(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const r=this.left.splice(t,Number.POSITIVE_INFINITY);vr(this.right,r.reverse())}else{const r=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);vr(this.left,r.reverse())}}}function vr(e,t){let r=0;if(t.length<1e4)e.push(...t);else for(;r<t.length;)e.push(...t.slice(r,r+1e4)),r+=1e4}function Qo(e){const t={};let r=-1,n,a,i,s,o,l,u;const c=new Dm(e);for(;++r<c.length;){for(;r in t;)r=t[r];if(n=c.get(r),r&&n[1].type==="chunkFlow"&&c.get(r-1)[1].type==="listItemPrefix"&&(l=n[1]._tokenizer.events,i=0,i<l.length&&l[i][1].type==="lineEndingBlank"&&(i+=2),i<l.length&&l[i][1].type==="content"))for(;++i<l.length&&l[i][1].type!=="content";)l[i][1].type==="chunkText"&&(l[i][1]._isInFirstContentOfListItem=!0,i++);if(n[0]==="enter")n[1].contentType&&(Object.assign(t,Om(c,r)),r=t[r],u=!0);else if(n[1]._container){for(i=r,a=void 0;i--;)if(s=c.get(i),s[1].type==="lineEnding"||s[1].type==="lineEndingBlank")s[0]==="enter"&&(a&&(c.get(a)[1].type="lineEndingBlank"),s[1].type="lineEnding",a=i);else if(!(s[1].type==="linePrefix"||s[1].type==="listItemIndent"))break;a&&(n[1].end=m({},c.get(a)[1].start),o=c.slice(a,r),o.unshift(n),c.splice(a,r-a+1,o))}}return Je(e,0,Number.POSITIVE_INFINITY,c.slice(0)),!u}function Om(e,t){const r=e.get(t)[1],n=e.get(t)[2];let a=t-1;const i=[];let s=r._tokenizer;s||(s=n.parser[r.contentType](r.start),r._contentTypeTextTrailing&&(s._contentTypeTextTrailing=!0));const o=s.events,l=[],u={};let c,d,f=-1,h=r,g=0,v=0;const w=[v];for(;h;){for(;e.get(++a)[1]!==h;);i.push(a),h._tokenizer||(c=n.sliceStream(h),h.next||c.push(null),d&&s.defineSkip(h.start),h._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=!0),s.write(c),h._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=void 0)),d=h,h=h.next}for(h=r;++f<o.length;)o[f][0]==="exit"&&o[f-1][0]==="enter"&&o[f][1].type===o[f-1][1].type&&o[f][1].start.line!==o[f][1].end.line&&(v=f+1,w.push(v),h._tokenizer=void 0,h.previous=void 0,h=h.next);for(s.events=[],h?(h._tokenizer=void 0,h.previous=void 0):w.pop(),f=w.length;f--;){const b=o.slice(w[f],w[f+1]),I=i.pop();l.push([I,I+b.length-1]),e.splice(I,2,b)}for(l.reverse(),f=-1;++f<l.length;)u[g+l[f][0]]=g+l[f][1],g+=l[f][1]-l[f][0]-1;return u}const Fm={resolve:zm,tokenize:Rm},Bm={partial:!0,tokenize:jm};function zm(e){return Qo(e),e}function Rm(e,t){let r;return n;function n(o){return e.enter("content"),r=e.enter("chunkContent",{contentType:"content"}),a(o)}function a(o){return o===null?i(o):J(o)?e.check(Bm,s,i)(o):(e.consume(o),a)}function i(o){return e.exit("chunkContent"),e.exit("content"),t(o)}function s(o){return e.consume(o),e.exit("chunkContent"),r.next=e.enter("chunkContent",{contentType:"content",previous:r}),r=r.next,a}}function jm(e,t,r){const n=this;return a;function a(s){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),re(e,i,"linePrefix")}function i(s){if(s===null||J(s))return r(s);const o=n.events[n.events.length-1];return!n.parser.constructs.disable.null.includes("codeIndented")&&o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(s):e.interrupt(n.parser.constructs.flow,r,t)(s)}}function Zo(e,t,r,n,a,i,s,o,l){const u=l||Number.POSITIVE_INFINITY;let c=0;return d;function d(b){return b===60?(e.enter(n),e.enter(a),e.enter(i),e.consume(b),e.exit(i),f):b===null||b===32||b===41||nn(b)?r(b):(e.enter(n),e.enter(s),e.enter(o),e.enter("chunkString",{contentType:"string"}),v(b))}function f(b){return b===62?(e.enter(i),e.consume(b),e.exit(i),e.exit(a),e.exit(n),t):(e.enter(o),e.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===62?(e.exit("chunkString"),e.exit(o),f(b)):b===null||b===60||J(b)?r(b):(e.consume(b),b===92?g:h)}function g(b){return b===60||b===62||b===92?(e.consume(b),h):h(b)}function v(b){return!c&&(b===null||b===41||le(b))?(e.exit("chunkString"),e.exit(o),e.exit(s),e.exit(n),t(b)):c<u&&b===40?(e.consume(b),c++,v):b===41?(e.consume(b),c--,v):b===null||b===32||b===40||nn(b)?r(b):(e.consume(b),b===92?w:v)}function w(b){return b===40||b===41||b===92?(e.consume(b),v):v(b)}}function el(e,t,r,n,a,i){const s=this;let o=0,l;return u;function u(h){return e.enter(n),e.enter(a),e.consume(h),e.exit(a),e.enter(i),c}function c(h){return o>999||h===null||h===91||h===93&&!l||h===94&&!o&&"_hiddenFootnoteSupport"in s.parser.constructs?r(h):h===93?(e.exit(i),e.enter(a),e.consume(h),e.exit(a),e.exit(n),t):J(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),d(h))}function d(h){return h===null||h===91||h===93||J(h)||o++>999?(e.exit("chunkString"),c(h)):(e.consume(h),l||(l=!Z(h)),h===92?f:d)}function f(h){return h===91||h===92||h===93?(e.consume(h),o++,d):d(h)}}function tl(e,t,r,n,a,i){let s;return o;function o(f){return f===34||f===39||f===40?(e.enter(n),e.enter(a),e.consume(f),e.exit(a),s=f===40?41:f,l):r(f)}function l(f){return f===s?(e.enter(a),e.consume(f),e.exit(a),e.exit(n),t):(e.enter(i),u(f))}function u(f){return f===s?(e.exit(i),l(s)):f===null?r(f):J(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),re(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(f))}function c(f){return f===s||f===null||J(f)?(e.exit("chunkString"),u(f)):(e.consume(f),f===92?d:c)}function d(f){return f===s||f===92?(e.consume(f),c):c(f)}}function kr(e,t){let r;return n;function n(a){return J(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r=!0,n):Z(a)?re(e,n,r?"linePrefix":"lineSuffix")(a):t(a)}}const $m={name:"definition",tokenize:Hm},Um={partial:!0,tokenize:qm};function Hm(e,t,r){const n=this;let a;return i;function i(h){return e.enter("definition"),s(h)}function s(h){return el.call(n,e,o,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function o(h){return a=nt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)),h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),l):r(h)}function l(h){return le(h)?kr(e,u)(h):u(h)}function u(h){return Zo(e,c,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function c(h){return e.attempt(Um,d,d)(h)}function d(h){return Z(h)?re(e,f,"whitespace")(h):f(h)}function f(h){return h===null||J(h)?(e.exit("definition"),n.parser.defined.push(a),t(h)):r(h)}}function qm(e,t,r){return n;function n(o){return le(o)?kr(e,a)(o):r(o)}function a(o){return tl(e,i,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(o)}function i(o){return Z(o)?re(e,s,"whitespace")(o):s(o)}function s(o){return o===null||J(o)?t(o):r(o)}}const Vm={name:"hardBreakEscape",tokenize:Wm};function Wm(e,t,r){return n;function n(i){return e.enter("hardBreakEscape"),e.consume(i),a}function a(i){return J(i)?(e.exit("hardBreakEscape"),t(i)):r(i)}}const Jm={name:"headingAtx",resolve:Km,tokenize:Ym};function Km(e,t){let r=e.length-2,n=3,a,i;return e[n][1].type==="whitespace"&&(n+=2),r-2>n&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(n===r-1||r-4>n&&e[r-2][1].type==="whitespace")&&(r-=n+1===r?2:4),r>n&&(a={type:"atxHeadingText",start:e[n][1].start,end:e[r][1].end},i={type:"chunkText",start:e[n][1].start,end:e[r][1].end,contentType:"text"},Je(e,n,r-n+1,[["enter",a,t],["enter",i,t],["exit",i,t],["exit",a,t]])),e}function Ym(e,t,r){let n=0;return a;function a(c){return e.enter("atxHeading"),i(c)}function i(c){return e.enter("atxHeadingSequence"),s(c)}function s(c){return c===35&&n++<6?(e.consume(c),s):c===null||le(c)?(e.exit("atxHeadingSequence"),o(c)):r(c)}function o(c){return c===35?(e.enter("atxHeadingSequence"),l(c)):c===null||J(c)?(e.exit("atxHeading"),t(c)):Z(c)?re(e,o,"whitespace")(c):(e.enter("atxHeadingText"),u(c))}function l(c){return c===35?(e.consume(c),l):(e.exit("atxHeadingSequence"),o(c))}function u(c){return c===null||c===35||le(c)?(e.exit("atxHeadingText"),o(c)):(e.consume(c),u)}}const Gm=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],rl=["pre","script","style","textarea"],Xm={concrete:!0,name:"htmlFlow",resolveTo:eg,tokenize:tg},Qm={partial:!0,tokenize:ng},Zm={partial:!0,tokenize:rg};function eg(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function tg(e,t,r){const n=this;let a,i,s,o,l;return u;function u(k){return c(k)}function c(k){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(k),d}function d(k){return k===33?(e.consume(k),f):k===47?(e.consume(k),i=!0,v):k===63?(e.consume(k),a=3,n.interrupt?t:x):ze(k)?(e.consume(k),s=String.fromCharCode(k),w):r(k)}function f(k){return k===45?(e.consume(k),a=2,h):k===91?(e.consume(k),a=5,o=0,g):ze(k)?(e.consume(k),a=4,n.interrupt?t:x):r(k)}function h(k){return k===45?(e.consume(k),n.interrupt?t:x):r(k)}function g(k){const Te="CDATA[";return k===Te.charCodeAt(o++)?(e.consume(k),o===Te.length?n.interrupt?t:N:g):r(k)}function v(k){return ze(k)?(e.consume(k),s=String.fromCharCode(k),w):r(k)}function w(k){if(k===null||k===47||k===62||le(k)){const Te=k===47,He=s.toLowerCase();return!Te&&!i&&rl.includes(He)?(a=1,n.interrupt?t(k):N(k)):Gm.includes(s.toLowerCase())?(a=6,Te?(e.consume(k),b):n.interrupt?t(k):N(k)):(a=7,n.interrupt&&!n.parser.lazy[n.now().line]?r(k):i?I(k):T(k))}return k===45||Me(k)?(e.consume(k),s+=String.fromCharCode(k),w):r(k)}function b(k){return k===62?(e.consume(k),n.interrupt?t:N):r(k)}function I(k){return Z(k)?(e.consume(k),I):S(k)}function T(k){return k===47?(e.consume(k),S):k===58||k===95||ze(k)?(e.consume(k),D):Z(k)?(e.consume(k),T):S(k)}function D(k){return k===45||k===46||k===58||k===95||Me(k)?(e.consume(k),D):B(k)}function B(k){return k===61?(e.consume(k),_):Z(k)?(e.consume(k),B):T(k)}function _(k){return k===null||k===60||k===61||k===62||k===96?r(k):k===34||k===39?(e.consume(k),l=k,j):Z(k)?(e.consume(k),_):R(k)}function j(k){return k===l?(e.consume(k),l=null,U):k===null||J(k)?r(k):(e.consume(k),j)}function R(k){return k===null||k===34||k===39||k===47||k===60||k===61||k===62||k===96||le(k)?B(k):(e.consume(k),R)}function U(k){return k===47||k===62||Z(k)?T(k):r(k)}function S(k){return k===62?(e.consume(k),P):r(k)}function P(k){return k===null||J(k)?N(k):Z(k)?(e.consume(k),P):r(k)}function N(k){return k===45&&a===2?(e.consume(k),ee):k===60&&a===1?(e.consume(k),de):k===62&&a===4?(e.consume(k),ie):k===63&&a===3?(e.consume(k),x):k===93&&a===5?(e.consume(k),ue):J(k)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(Qm,_e,H)(k)):k===null||J(k)?(e.exit("htmlFlowData"),H(k)):(e.consume(k),N)}function H(k){return e.check(Zm,z,_e)(k)}function z(k){return e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),O}function O(k){return k===null||J(k)?H(k):(e.enter("htmlFlowData"),N(k))}function ee(k){return k===45?(e.consume(k),x):N(k)}function de(k){return k===47?(e.consume(k),s="",pe):N(k)}function pe(k){if(k===62){const Te=s.toLowerCase();return rl.includes(Te)?(e.consume(k),ie):N(k)}return ze(k)&&s.length<8?(e.consume(k),s+=String.fromCharCode(k),pe):N(k)}function ue(k){return k===93?(e.consume(k),x):N(k)}function x(k){return k===62?(e.consume(k),ie):k===45&&a===2?(e.consume(k),x):N(k)}function ie(k){return k===null||J(k)?(e.exit("htmlFlowData"),_e(k)):(e.consume(k),ie)}function _e(k){return e.exit("htmlFlow"),t(k)}}function rg(e,t,r){const n=this;return a;function a(s){return J(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i):r(s)}function i(s){return n.parser.lazy[n.now().line]?r(s):t(s)}}function ng(e,t,r){return n;function n(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(xr,t,r)}}const ag={name:"htmlText",tokenize:ig};function ig(e,t,r){const n=this;let a,i,s;return o;function o(x){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(x),l}function l(x){return x===33?(e.consume(x),u):x===47?(e.consume(x),B):x===63?(e.consume(x),T):ze(x)?(e.consume(x),R):r(x)}function u(x){return x===45?(e.consume(x),c):x===91?(e.consume(x),i=0,g):ze(x)?(e.consume(x),I):r(x)}function c(x){return x===45?(e.consume(x),h):r(x)}function d(x){return x===null?r(x):x===45?(e.consume(x),f):J(x)?(s=d,de(x)):(e.consume(x),d)}function f(x){return x===45?(e.consume(x),h):d(x)}function h(x){return x===62?ee(x):x===45?f(x):d(x)}function g(x){const ie="CDATA[";return x===ie.charCodeAt(i++)?(e.consume(x),i===ie.length?v:g):r(x)}function v(x){return x===null?r(x):x===93?(e.consume(x),w):J(x)?(s=v,de(x)):(e.consume(x),v)}function w(x){return x===93?(e.consume(x),b):v(x)}function b(x){return x===62?ee(x):x===93?(e.consume(x),b):v(x)}function I(x){return x===null||x===62?ee(x):J(x)?(s=I,de(x)):(e.consume(x),I)}function T(x){return x===null?r(x):x===63?(e.consume(x),D):J(x)?(s=T,de(x)):(e.consume(x),T)}function D(x){return x===62?ee(x):T(x)}function B(x){return ze(x)?(e.consume(x),_):r(x)}function _(x){return x===45||Me(x)?(e.consume(x),_):j(x)}function j(x){return J(x)?(s=j,de(x)):Z(x)?(e.consume(x),j):ee(x)}function R(x){return x===45||Me(x)?(e.consume(x),R):x===47||x===62||le(x)?U(x):r(x)}function U(x){return x===47?(e.consume(x),ee):x===58||x===95||ze(x)?(e.consume(x),S):J(x)?(s=U,de(x)):Z(x)?(e.consume(x),U):ee(x)}function S(x){return x===45||x===46||x===58||x===95||Me(x)?(e.consume(x),S):P(x)}function P(x){return x===61?(e.consume(x),N):J(x)?(s=P,de(x)):Z(x)?(e.consume(x),P):U(x)}function N(x){return x===null||x===60||x===61||x===62||x===96?r(x):x===34||x===39?(e.consume(x),a=x,H):J(x)?(s=N,de(x)):Z(x)?(e.consume(x),N):(e.consume(x),z)}function H(x){return x===a?(e.consume(x),a=void 0,O):x===null?r(x):J(x)?(s=H,de(x)):(e.consume(x),H)}function z(x){return x===null||x===34||x===39||x===60||x===61||x===96?r(x):x===47||x===62||le(x)?U(x):(e.consume(x),z)}function O(x){return x===47||x===62||le(x)?U(x):r(x)}function ee(x){return x===62?(e.consume(x),e.exit("htmlTextData"),e.exit("htmlText"),t):r(x)}function de(x){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),pe}function pe(x){return Z(x)?re(e,ue,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):ue(x)}function ue(x){return e.enter("htmlTextData"),s(x)}}const ka={name:"labelEnd",resolveAll:ug,resolveTo:cg,tokenize:dg},sg={tokenize:hg},og={tokenize:fg},lg={tokenize:pg};function ug(e){let t=-1;const r=[];for(;++t<e.length;){const n=e[t][1];if(r.push(e[t]),n.type==="labelImage"||n.type==="labelLink"||n.type==="labelEnd"){const a=n.type==="labelImage"?4:2;n.type="data",t+=a}}return e.length!==r.length&&Je(e,0,e.length,r),e}function cg(e,t){let r=e.length,n=0,a,i,s,o;for(;r--;)if(a=e[r][1],i){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[r][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(s){if(e[r][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(i=r,a.type!=="labelLink")){n=2;break}}else a.type==="labelEnd"&&(s=r);const l={type:e[i][1].type==="labelLink"?"link":"image",start:m({},e[i][1].start),end:m({},e[e.length-1][1].end)},u={type:"label",start:m({},e[i][1].start),end:m({},e[s][1].end)},c={type:"labelText",start:m({},e[i+n+2][1].end),end:m({},e[s-2][1].start)};return o=[["enter",l,t],["enter",u,t]],o=Xe(o,e.slice(i+1,i+n+3)),o=Xe(o,[["enter",c,t]]),o=Xe(o,sn(t.parser.constructs.insideSpan.null,e.slice(i+n+4,s-3),t)),o=Xe(o,[["exit",c,t],e[s-2],e[s-1],["exit",u,t]]),o=Xe(o,e.slice(s+1)),o=Xe(o,[["exit",l,t]]),Je(e,i,e.length,o),e}function dg(e,t,r){const n=this;let a=n.events.length,i,s;for(;a--;)if((n.events[a][1].type==="labelImage"||n.events[a][1].type==="labelLink")&&!n.events[a][1]._balanced){i=n.events[a][1];break}return o;function o(f){return i?i._inactive?d(f):(s=n.parser.defined.includes(nt(n.sliceSerialize({start:i.end,end:n.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(f),e.exit("labelMarker"),e.exit("labelEnd"),l):r(f)}function l(f){return f===40?e.attempt(sg,c,s?c:d)(f):f===91?e.attempt(og,c,s?u:d)(f):s?c(f):d(f)}function u(f){return e.attempt(lg,c,d)(f)}function c(f){return t(f)}function d(f){return i._balanced=!0,r(f)}}function hg(e,t,r){return n;function n(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),a}function a(d){return le(d)?kr(e,i)(d):i(d)}function i(d){return d===41?c(d):Zo(e,s,o,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function s(d){return le(d)?kr(e,l)(d):c(d)}function o(d){return r(d)}function l(d){return d===34||d===39||d===40?tl(e,u,r,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):c(d)}function u(d){return le(d)?kr(e,c)(d):c(d)}function c(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):r(d)}}function fg(e,t,r){const n=this;return a;function a(o){return el.call(n,e,i,s,"reference","referenceMarker","referenceString")(o)}function i(o){return n.parser.defined.includes(nt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)))?t(o):r(o)}function s(o){return r(o)}}function pg(e,t,r){return n;function n(i){return e.enter("reference"),e.enter("referenceMarker"),e.consume(i),e.exit("referenceMarker"),a}function a(i){return i===93?(e.enter("referenceMarker"),e.consume(i),e.exit("referenceMarker"),e.exit("reference"),t):r(i)}}const mg={name:"labelStartImage",resolveAll:ka.resolveAll,tokenize:gg};function gg(e,t,r){const n=this;return a;function a(o){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(o),e.exit("labelImageMarker"),i}function i(o){return o===91?(e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelImage"),s):r(o)}function s(o){return o===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(o):t(o)}}const yg={name:"labelStartLink",resolveAll:ka.resolveAll,tokenize:bg};function bg(e,t,r){const n=this;return a;function a(s){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelLink"),i}function i(s){return s===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(s):t(s)}}const Sa={name:"lineEnding",tokenize:wg};function wg(e,t){return r;function r(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),re(e,t,"linePrefix")}}const on={name:"thematicBreak",tokenize:xg};function xg(e,t,r){let n=0,a;return i;function i(u){return e.enter("thematicBreak"),s(u)}function s(u){return a=u,o(u)}function o(u){return u===a?(e.enter("thematicBreakSequence"),l(u)):n>=3&&(u===null||J(u))?(e.exit("thematicBreak"),t(u)):r(u)}function l(u){return u===a?(e.consume(u),n++,l):(e.exit("thematicBreakSequence"),Z(u)?re(e,o,"whitespace")(u):o(u))}}const Ue={continuation:{tokenize:_g},exit:Cg,name:"list",tokenize:Sg},vg={partial:!0,tokenize:Ig},kg={partial:!0,tokenize:Tg};function Sg(e,t,r){const n=this,a=n.events[n.events.length-1];let i=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,s=0;return o;function o(h){const g=n.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!n.containerState.marker||h===n.containerState.marker:wa(h)){if(n.containerState.type||(n.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),h===42||h===45?e.check(on,r,u)(h):u(h);if(!n.interrupt||h===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(h)}return r(h)}function l(h){return wa(h)&&++s<10?(e.consume(h),l):(!n.interrupt||s<2)&&(n.containerState.marker?h===n.containerState.marker:h===41||h===46)?(e.exit("listItemValue"),u(h)):r(h)}function u(h){return e.enter("listItemMarker"),e.consume(h),e.exit("listItemMarker"),n.containerState.marker=n.containerState.marker||h,e.check(xr,n.interrupt?r:c,e.attempt(vg,f,d))}function c(h){return n.containerState.initialBlankLine=!0,i++,f(h)}function d(h){return Z(h)?(e.enter("listItemPrefixWhitespace"),e.consume(h),e.exit("listItemPrefixWhitespace"),f):r(h)}function f(h){return n.containerState.size=i+n.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(h)}}function _g(e,t,r){const n=this;return n.containerState._closeFlow=void 0,e.check(xr,a,i);function a(o){return n.containerState.furtherBlankLines=n.containerState.furtherBlankLines||n.containerState.initialBlankLine,re(e,t,"listItemIndent",n.containerState.size+1)(o)}function i(o){return n.containerState.furtherBlankLines||!Z(o)?(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,s(o)):(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,e.attempt(kg,t,s)(o))}function s(o){return n.containerState._closeFlow=!0,n.interrupt=void 0,re(e,e.attempt(Ue,t,r),"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}function Tg(e,t,r){const n=this;return re(e,a,"listItemIndent",n.containerState.size+1);function a(i){const s=n.events[n.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===n.containerState.size?t(i):r(i)}}function Cg(e){e.exit(this.containerState.type)}function Ig(e,t,r){const n=this;return re(e,a,"listItemPrefixWhitespace",n.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(i){const s=n.events[n.events.length-1];return!Z(i)&&s&&s[1].type==="listItemPrefixWhitespace"?t(i):r(i)}}const nl={name:"setextUnderline",resolveTo:Eg,tokenize:Ag};function Eg(e,t){let r=e.length,n,a,i;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){n=r;break}e[r][1].type==="paragraph"&&(a=r)}else e[r][1].type==="content"&&e.splice(r,1),!i&&e[r][1].type==="definition"&&(i=r);const s={type:"setextHeading",start:m({},e[n][1].start),end:m({},e[e.length-1][1].end)};return e[a][1].type="setextHeadingText",i?(e.splice(a,0,["enter",s,t]),e.splice(i+1,0,["exit",e[n][1],t]),e[n][1].end=m({},e[i][1].end)):e[n][1]=s,e.push(["exit",s,t]),e}function Ag(e,t,r){const n=this;let a;return i;function i(u){let c=n.events.length,d;for(;c--;)if(n.events[c][1].type!=="lineEnding"&&n.events[c][1].type!=="linePrefix"&&n.events[c][1].type!=="content"){d=n.events[c][1].type==="paragraph";break}return!n.parser.lazy[n.now().line]&&(n.interrupt||d)?(e.enter("setextHeadingLine"),a=u,s(u)):r(u)}function s(u){return e.enter("setextHeadingLineSequence"),o(u)}function o(u){return u===a?(e.consume(u),o):(e.exit("setextHeadingLineSequence"),Z(u)?re(e,l,"lineSuffix")(u):l(u))}function l(u){return u===null||J(u)?(e.exit("setextHeadingLine"),t(u)):r(u)}}const Mg={tokenize:Pg};function Pg(e){const t=this,r=e.attempt(xr,n,e.attempt(this.parser.constructs.flowInitial,a,re(e,e.attempt(this.parser.constructs.flow,a,e.attempt(Fm,a)),"linePrefix")));return r;function n(i){if(i===null){e.consume(i);return}return e.enter("lineEndingBlank"),e.consume(i),e.exit("lineEndingBlank"),t.currentConstruct=void 0,r}function a(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),t.currentConstruct=void 0,r}}const Ng={resolveAll:il()},Lg=al("string"),Dg=al("text");function al(e){return{resolveAll:il(e==="text"?Og:void 0),tokenize:t};function t(r){const n=this,a=this.parser.constructs[e],i=r.attempt(a,s,o);return s;function s(c){return u(c)?i(c):o(c)}function o(c){if(c===null){r.consume(c);return}return r.enter("data"),r.consume(c),l}function l(c){return u(c)?(r.exit("data"),i(c)):(r.consume(c),l)}function u(c){if(c===null)return!0;const d=a[c];let f=-1;if(d)for(;++f<d.length;){const h=d[f];if(!h.previous||h.previous.call(n,n.previous))return!0}return!1}}}function il(e){return t;function t(r,n){let a=-1,i;for(;++a<=r.length;)i===void 0?r[a]&&r[a][1].type==="data"&&(i=a,a++):(!r[a]||r[a][1].type!=="data")&&(a!==i+2&&(r[i][1].end=r[a-1][1].end,r.splice(i+2,a-i-2),a=i+2),i=void 0);return e?e(r,n):r}}function Og(e,t){let r=0;for(;++r<=e.length;)if((r===e.length||e[r][1].type==="lineEnding")&&e[r-1][1].type==="data"){const n=e[r-1][1],a=t.sliceStream(n);let i=a.length,s=-1,o=0,l;for(;i--;){const u=a[i];if(typeof u=="string"){for(s=u.length;u.charCodeAt(s-1)===32;)o++,s--;if(s)break;s=-1}else if(u===-2)l=!0,o++;else if(u!==-1){i++;break}}if(t._contentTypeTextTrailing&&r===e.length&&(o=0),o){const u={type:r===e.length||l||o<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:i?s:n.start._bufferIndex+s,_index:n.start._index+i,line:n.end.line,column:n.end.column-o,offset:n.end.offset-o},end:m({},n.end)};n.end=m({},u.start),n.start.offset===n.end.offset?Object.assign(n,u):(e.splice(r,0,["enter",u,t],["exit",u,t]),r+=2)}r++}return e}const Fg=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:{91:$m},disable:{null:[]},document:{42:Ue,43:Ue,45:Ue,48:Ue,49:Ue,50:Ue,51:Ue,52:Ue,53:Ue,54:Ue,55:Ue,56:Ue,57:Ue,62:Jo},flow:{35:Jm,42:on,45:[nl,on],60:Xm,61:nl,95:on,96:Xo,126:Xo},flowInitial:{[-2]:va,[-1]:va,32:va},insideSpan:{null:[xa,Ng]},string:{38:Yo,92:Ko},text:{[-5]:Sa,[-4]:Sa,[-3]:Sa,33:mg,38:Yo,42:xa,60:[ym,ag],91:yg,92:[Vm,Ko],93:ka,95:xa,96:Mm}},Symbol.toStringTag,{value:"Module"}));function Bg(e,t,r){let n={_bufferIndex:-1,_index:0,line:r&&r.line||1,column:r&&r.column||1,offset:r&&r.offset||0};const a={},i=[];let s=[],o=[];const l={attempt:j(B),check:j(_),consume:I,enter:T,exit:D,interrupt:j(_,{interrupt:!0})},u={code:null,containerState:{},defineSkip:v,events:[],now:g,parser:e,previous:null,sliceSerialize:f,sliceStream:h,write:d};let c=t.tokenize.call(u,l);return t.resolveAll&&i.push(t),u;function d(P){return s=Xe(s,P),w(),s[s.length-1]!==null?[]:(R(t,0),u.events=sn(i,u.events,u),u.events)}function f(P,N){return Rg(h(P),N)}function h(P){return zg(s,P)}function g(){const{_bufferIndex:P,_index:N,line:H,column:z,offset:O}=n;return{_bufferIndex:P,_index:N,line:H,column:z,offset:O}}function v(P){a[P.line]=P.column,S()}function w(){let P;for(;n._index<s.length;){const N=s[n._index];if(typeof N=="string")for(P=n._index,n._bufferIndex<0&&(n._bufferIndex=0);n._index===P&&n._bufferIndex<N.length;)b(N.charCodeAt(n._bufferIndex));else b(N)}}function b(P){c=c(P)}function I(P){J(P)?(n.line++,n.column=1,n.offset+=P===-3?2:1,S()):P!==-1&&(n.column++,n.offset++),n._bufferIndex<0?n._index++:(n._bufferIndex++,n._bufferIndex===s[n._index].length&&(n._bufferIndex=-1,n._index++)),u.previous=P}function T(P,N){const H=N||{};return H.type=P,H.start=g(),u.events.push(["enter",H,u]),o.push(H),H}function D(P){const N=o.pop();return N.end=g(),u.events.push(["exit",N,u]),N}function B(P,N){R(P,N.from)}function _(P,N){N.restore()}function j(P,N){return H;function H(z,O,ee){let de,pe,ue,x;return Array.isArray(z)?_e(z):"tokenize"in z?_e([z]):ie(z);function ie(we){return W;function W(ne){const me=ne!==null&&we[ne],be=ne!==null&&we.null,Ce=[...Array.isArray(me)?me:me?[me]:[],...Array.isArray(be)?be:be?[be]:[]];return _e(Ce)(ne)}}function _e(we){return de=we,pe=0,we.length===0?ee:k(we[pe])}function k(we){return W;function W(ne){return x=U(),ue=we,we.partial||(u.currentConstruct=we),we.name&&u.parser.constructs.disable.null.includes(we.name)?He():we.tokenize.call(N?Object.assign(Object.create(u),N):u,l,Te,He)(ne)}}function Te(we){return P(ue,x),O}function He(we){return x.restore(),++pe<de.length?k(de[pe]):ee}}}function R(P,N){P.resolveAll&&!i.includes(P)&&i.push(P),P.resolve&&Je(u.events,N,u.events.length-N,P.resolve(u.events.slice(N),u)),P.resolveTo&&(u.events=P.resolveTo(u.events,u))}function U(){const P=g(),N=u.previous,H=u.currentConstruct,z=u.events.length,O=Array.from(o);return{from:z,restore:ee};function ee(){n=P,u.previous=N,u.currentConstruct=H,u.events.length=z,o=O,S()}}function S(){n.line in a&&n.column<2&&(n.column=a[n.line],n.offset+=a[n.line]-1)}}function zg(e,t){const r=t.start._index,n=t.start._bufferIndex,a=t.end._index,i=t.end._bufferIndex;let s;if(r===a)s=[e[r].slice(n,i)];else{if(s=e.slice(r,a),n>-1){const o=s[0];typeof o=="string"?s[0]=o.slice(n):s.shift()}i>0&&s.push(e[a].slice(0,i))}return s}function Rg(e,t){let r=-1;const n=[];let a;for(;++r<e.length;){const i=e[r];let s;if(typeof i=="string")s=i;else switch(i){case-5:{s="\r";break}case-4:{s=`
|
|
7
|
+
`);a=o.pop()||"";for(const l of o)if(l.startsWith("data: ")){const u=l.slice(6);if(u.trim()==="[DONE]"){yield{done:!0};continue}try{yield JSON.parse(u)}catch(c){}}}}finally{r.releaseLock()}})}function sp(e){return e.map(t=>{let r="";if(typeof t.content=="string")r=t.content;else if(Array.isArray(t.content)){const n=t.content.find(a=>a.type==="text");n&&typeof n=="object"&&"text"in n&&(r=n.text)}return{role:t.role,content:r}})}function op(e){return m(m({id:e.id,role:e.role,content:[{type:"text",text:e.content}],createdAt:new Date(e.createdAt),metadata:{custom:{}}},e.role==="assistant"&&{status:{type:"complete",reason:"stop"},metadata:{unstable_state:null,unstable_annotations:[],unstable_data:[],steps:[],custom:{}}}),e.role==="user"&&{attachments:[]})}const tn=new Map;function lp(e,t){return{list(){return M(this,null,function*(){const n=[];let i,s=0;do{const l=yield e.listChats({limit:50,cursor:i}),u=l.items||[];Array.isArray(u)&&u.length>0&&n.push(...u),i=l.nextCursor||void 0,s++}while(i&&s<50);return{threads:n.map(l=>{const u=l.id;return!u||l.deletedAt?null:{status:"regular",remoteId:u,title:l.title||"New Chat",createdAt:l.createdAt?new Date(l.createdAt):new Date,updatedAt:l.updatedAt?new Date(l.updatedAt):new Date}}).filter(l=>l!==null)}})},initialize(n){return M(this,null,function*(){return{remoteId:tn.get(n)||n,externalId:void 0}})},rename(n,a){return M(this,null,function*(){yield e.updateChat(n,{title:a})})},archive(n){return M(this,null,function*(){})},unarchive(n){return M(this,null,function*(){})},delete(n){return M(this,null,function*(){yield e.deleteChat(n)})},generateTitle(n,a){return M(this,null,function*(){return new ReadableStream})},fetch(n){return M(this,null,function*(){try{const a=yield e.getChat(n);return{status:"regular",remoteId:a.id||n,title:a.title||"Chat",createdAt:a.createdAt?new Date(a.createdAt):new Date,updatedAt:a.updatedAt?new Date(a.updatedAt):new Date}}catch(a){return{status:"regular",remoteId:n,createdAt:new Date,updatedAt:new Date}}})},updateRemoteId(n,a){tn.set(n,a),t==null||t(n,a)},unstable_Provider:({children:n})=>{const a=ls(),i=a==null?void 0:a.remoteId,s=y.useMemo(()=>({load(){return M(this,null,function*(){if(!i)return{messages:[]};try{const u=yield e.getChat(i);return!u.messages||u.messages.length===0?{messages:[]}:{messages:u.messages.map(d=>op(d))}}catch(u){return{messages:[]}}})},append(u){return M(this,null,function*(){})}}),[i,e]),o=y.useMemo(()=>({history:s}),[s]);return p.jsx(Fn,{adapters:o,children:n})}}}class up{constructor(){C(this,"messageMetadata",new Map);C(this,"currentMessageId",null);C(this,"listeners",new Set)}setCurrentMessage(t){this.currentMessageId=t}update(t){if(!this.currentMessageId)return;const r=this.messageMetadata.get(this.currentMessageId)||{},n=t.sources;n&&n.length>0&&(this.messageMetadata.set(this.currentMessageId,E(m({},r),{sources:n})),this.notify())}get(){return this.currentMessageId?this.messageMetadata.get(this.currentMessageId)||{}:{}}getForMessage(t){return this.messageMetadata.get(t)||{}}getCurrentMessageId(){return this.currentMessageId}clear(){this.currentMessageId=null}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}notify(){this.listeners.forEach(t=>t())}}const kt=new up,ho=new Map,na=[];let rn=[];function fo(e,t,r=50,n=800){na.push({question:e,response:t,streamingSpeed:r,initialDelay:n})}function po(e,t){const{modelId:r,systemPrompt:n,ephemeral:a,enableReasoning:i,onChatCreated:s,onUserMessage:o,onThreadIdUpdate:l,onBeforeRequest:u,mockResponseOnBlocked:c}=t;let d;return{run(h){return Nr(this,null,function*(){var ue,x,ie,_e;const{messages:g,abortSignal:v,context:w}=h,b=na.shift();if(b){o==null||o();const W=(ue=b.initialDelay)!=null?ue:800;if(W>0&&(yield new Le(new Promise(he=>setTimeout(he,W)))),v!=null&&v.aborted)throw new Error("Request aborted");const ne=b.response.split(" ");let me="";const be=b.streamingSpeed||50,Ce=`premade-${Date.now()}`;a&&(s==null||s(Ce));for(let he=0;he<ne.length;he++){if(v!=null&&v.aborted)throw new Error("Request aborted");me+=(he===0?"":" ")+ne[he],yield{content:[{type:"text",text:me}]},yield new Le(new Promise(Pe=>setTimeout(Pe,be+Math.random()*(be*.5))))}yield{content:[{type:"text",text:me}]},rn.push({role:"user",content:b.question},{role:"assistant",content:b.response});return}const I=w==null?void 0:w.threadId;let T=I;if(!T&&g.length>0){const W=g.find(ne=>ne.role==="user");W&&(T=(typeof W.content=="string"?W.content:Array.isArray(W.content)&&((x=W.content.find(me=>me.type==="text"))==null?void 0:x.text)||"").substring(0,50))}let D;I&&(D=tn.get(I)),!D&&T&&(D=ho.get(T)),!D&&d&&(D=d),o==null||o();let B=g,_=-1;for(let W=g.length-1;W>=0;W--)if(g[W].role==="assistant"){_=W;break}(D||_>=0)&&_>=0&&(B=g.slice(_+1));const j=sp(B);if(rn.length>0&&!D){const W=rn.map(ne=>({role:ne.role,content:ne.content}));j.unshift(...W),rn=[]}const R={messages:j,chatId:D||null,systemPrompt:n,ephemeral:a,enableReasoning:i,stream:!0};if(r&&r.trim()!==""&&(R.modelId=r),u&&!(yield new Le(u()))){if(c){const ne=typeof c=="function"?c():c,me=g.filter(Pe=>Pe.role==="user"),be=me.length>0?me[me.length-1]:void 0;let Ce="Message";if(be){if(typeof be.content=="string")Ce=be.content;else if(Array.isArray(be.content)){const Pe=be.content.find(it=>it.type==="text");Ce=(Pe==null?void 0:Pe.text)||"Message"}}fo(Ce,ne,40,400);const he=na.shift();if(he){o==null||o();const Pe=(ie=he.initialDelay)!=null?ie:400;if(Pe>0&&(yield new Le(new Promise(ht=>setTimeout(ht,Pe)))),v!=null&&v.aborted)throw new Error("Request aborted");const it=he.response.split(" ");let st="";const Tt=he.streamingSpeed||40,Ie=`mock-${Date.now()}`;a&&(s==null||s(Ie));for(let ht=0;ht<it.length;ht++){if(v!=null&&v.aborted)throw new Error("Request aborted");st+=(ht===0?"":" ")+it[ht],yield{content:[{type:"text",text:st}]},yield new Le(new Promise(ft=>setTimeout(ft,Tt+Math.random()*(Tt*.3))))}yield{content:[{type:"text",text:st}]};return}}throw new Error("Request blocked")}const U=yield new Le(e.createOrContinueChat(R,v));let S="",P="",N;const H=[];let z=0,O=!1;const ee=`msg_${Date.now()}_${Math.random().toString(36).substring(2,9)}`;kt.clear(),kt.setCurrentMessage(ee);const de=()=>{H.length!==z&&(z=H.length,kt.update({sources:H.length>0?[...H]:void 0}))},pe=()=>{de();const W=[];return P&&W.push({type:"reasoning",text:P}),S&&W.push({type:"text",text:S}),W.length===0&&W.push({type:"text",text:""}),{content:W}};try{for(var k=zt(ip(U,v)),Te,He,we;Te=!(He=yield new Le(k.next())).done;Te=!1){const W=He.value;if(v!=null&&v.aborted)throw new Error("Request aborted");const ne=W.id||W.chatId||W.messageId;ne&&!N&&(N=ne,d=ne,s==null||s(ne),I&&l&&(l(I,ne),tn.set(I,ne)),T&&ho.set(T,ne));const me=W.sources;if(me&&Array.isArray(me)&&me.length>0)for(const he of me)H.some(Pe=>Pe.sourceId===he.sourceId)||H.push({sourceId:he.sourceId,filename:he.filename||"Unknown",score:(_e=he.score)!=null?_e:1,chunkId:he.chunkId,datasetId:he.datasetId});const be=W.reasoning;if(be&&be.length>0&&(P+=be,yield pe()),W.type)switch(W.type){case"source-document":W.sourceId&&H.push({sourceId:W.sourceId,filename:W.title||"Unknown",score:1});continue;case"reasoning-start":continue;case"reasoning-delta":W.delta&&(P+=W.delta),(S||P)&&(yield pe());continue;case"reasoning-end":(S||P)&&(yield pe());continue;case"text-delta":W.delta&&(P&&!O&&!S&&(O=!0,yield new Le(new Promise(he=>setTimeout(he,400)))),S+=W.delta),S&&(yield pe());continue;case"error":throw new Error(W.errorText||"Stream error");case"text-start":case"text-end":case"start":case"start-step":case"finish-step":case"finish":continue}const Ce=W.delta;if(Ce!=null&&(P&&!O&&!S&&(O=!0,yield new Le(new Promise(he=>setTimeout(he,400)))),S+=Ce),W.content&&(S+=W.content),W.message&&(S+=W.message.content||""),W.finished){(S||P||H.length>0)&&(yield pe());break}(S||P||H.length>0)&&(yield pe())}}catch(He){we=[He]}finally{try{Te&&(He=k.return)&&(yield new Le(He.call(k)))}finally{if(we)throw we[0]}}(S||P||H.length>0)&&(yield pe())})}}}function mo(){return{accept:".pdf,.docx,.txt,.md,.csv,.json,image/*",add(r){return M(this,arguments,function*({file:t}){let n="file";return t.type.startsWith("image/")?n="image":(t.type.includes("pdf")||t.type.includes("document")||t.type.includes("text")||t.name.endsWith(".pdf")||t.name.endsWith(".docx")||t.name.endsWith(".txt")||t.name.endsWith(".md")||t.name.endsWith(".csv")||t.name.endsWith(".json"))&&(n="document"),{id:`${t.name}-${Date.now()}`,type:n,name:t.name,contentType:t.type,file:t,status:{type:"requires-action",reason:"composer-send"}}})},remove(){return M(this,null,function*(){})},send(t){return M(this,null,function*(){if(t.type==="image"&&t.file){const r=yield new Promise((n,a)=>{const i=new FileReader;i.onload=()=>n(i.result),i.onerror=a,i.readAsDataURL(t.file)});return E(m({},t),{status:{type:"complete"},content:[{type:"image",image:r}]})}return E(m({},t),{status:{type:"complete"},content:[]})})}}}function cp({children:e,baseUrl:t,sessionToken:r,isProxyMode:n=!1,mode:a="multiChat",modelId:i,onModelChange:s,ephemeral:o=!1,systemPrompt:l,enableReasoning:u=!1,initialThreadId:c,onError:d,onChatCreated:f,onUserMessage:h,onThreadIdUpdate:g,onChatsLoaded:v,enableAttachments:w=!1,onBeforeRequest:b,mockResponseOnBlocked:I}){const T=y.useMemo(()=>new co(t,r||void 0,n),[t,r,n]),[D,B]=y.useState(i||null);y.useEffect(()=>{i&&B(i)},[i]);const _=y.useCallback(U=>{f==null||f(U)},[f]),j=y.useCallback((U,S)=>{g==null||g(U,S)},[g]),R=y.useMemo(()=>po(T,{modelId:D||void 0,systemPrompt:l,ephemeral:o,enableReasoning:u,onChatCreated:_,onUserMessage:h,onBeforeRequest:b,mockResponseOnBlocked:I}),[T,D,l,o,u,_,h,b,I]);return a==="singleChat"?p.jsx(dp,{modelAdapter:R,enableAttachments:w,children:e}):p.jsx(hp,{client:T,modelAdapterOptions:{modelId:D||void 0,systemPrompt:l,ephemeral:o,enableReasoning:u,onChatCreated:_,onUserMessage:h,onBeforeRequest:b,mockResponseOnBlocked:I},initialThreadId:c,onChatsLoaded:v,onThreadIdUpdate:j,onError:d,enableAttachments:w,children:e})}function dp({modelAdapter:e,enableAttachments:t,children:r}){const n=y.useMemo(()=>t?mo():void 0,[t]),a=bs(e,{adapters:m({},n&&{attachments:n})});return p.jsx(hs,{runtime:a,children:r})}function hp({client:e,modelAdapterOptions:t,initialThreadId:r,onChatsLoaded:n,onThreadIdUpdate:a,onError:i,enableAttachments:s,children:o}){const l=y.useMemo(()=>lp(e,(v,w)=>{a==null||a(v,w)}),[e,a]),u=y.useCallback((v,w)=>{l.updateRemoteId&&l.updateRemoteId(v,w),a==null||a(v,w)},[l,a]),c=y.useMemo(()=>E(m({},l),{list(){return M(this,null,function*(){const w=yield l.list();return n==null||n(),w})}}),[l,n]);y.useEffect(()=>{window.__cuadraThreadListAdapter=c,window.__cuadraThreadListRuntime=null},[c]);const d=y.useMemo(()=>po(e,E(m({},t),{onThreadIdUpdate:u})),[e,t,u]),f=y.useMemo(()=>s?mo():void 0,[s]),h=y.useCallback(()=>bs(d,{adapters:m({},f&&{attachments:f})}),[d,f]),g=Ss({adapter:c,runtimeHook:h});return y.useEffect(()=>{window.__cuadraThreadListRuntime=g},[g]),p.jsx(hs,{runtime:g,children:o})}function Mv(){}function Pv(){}function fp(e,t){const r={};return(e[e.length-1]===""?[...e,""]:e).join((r.padRight?" ":"")+","+(r.padLeft===!1?"":" ")).trim()}const pp=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,mp=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,gp={};function go(e,t){return(gp.jsx?mp:pp).test(e)}const yp=/[ \t\n\f\r]/g;function bp(e){return typeof e=="object"?e.type==="text"?yo(e.value):!1:yo(e)}function yo(e){return e.replace(yp,"")===""}class mr{constructor(t,r,n){this.normal=r,this.property=t,n&&(this.space=n)}}mr.prototype.normal={},mr.prototype.property={},mr.prototype.space=void 0;function bo(e,t){const r={},n={};for(const a of e)Object.assign(r,a.property),Object.assign(n,a.normal);return new mr(r,n,t)}function aa(e){return e.toLowerCase()}class $e{constructor(t,r){this.attribute=r,this.property=t}}$e.prototype.attribute="",$e.prototype.booleanish=!1,$e.prototype.boolean=!1,$e.prototype.commaOrSpaceSeparated=!1,$e.prototype.commaSeparated=!1,$e.prototype.defined=!1,$e.prototype.mustUseProperty=!1,$e.prototype.number=!1,$e.prototype.overloadedBoolean=!1,$e.prototype.property="",$e.prototype.spaceSeparated=!1,$e.prototype.space=void 0;let wp=0;const X=Lt(),ve=Lt(),ia=Lt(),L=Lt(),ce=Lt(),Jt=Lt(),We=Lt();function Lt(){return Mu(2,++wp)}const sa=Object.freeze(Object.defineProperty({__proto__:null,boolean:X,booleanish:ve,commaOrSpaceSeparated:We,commaSeparated:Jt,number:L,overloadedBoolean:ia,spaceSeparated:ce},Symbol.toStringTag,{value:"Module"})),oa=Object.keys(sa);class la extends $e{constructor(t,r,n,a){let i=-1;if(super(t,r),wo(this,"space",a),typeof n=="number")for(;++i<oa.length;){const s=oa[i];wo(this,oa[i],(n&sa[s])===sa[s])}}}la.prototype.defined=!0;function wo(e,t,r){r&&(e[t]=r)}function Kt(e){const t={},r={};for(const[n,a]of Object.entries(e.properties)){const i=new la(n,e.transform(e.attributes||{},n),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(n)&&(i.mustUseProperty=!0),t[n]=i,r[aa(n)]=n,r[aa(i.attribute)]=n}return new mr(t,r,e.space)}const xo=Kt({properties:{ariaActiveDescendant:null,ariaAtomic:ve,ariaAutoComplete:null,ariaBusy:ve,ariaChecked:ve,ariaColCount:L,ariaColIndex:L,ariaColSpan:L,ariaControls:ce,ariaCurrent:null,ariaDescribedBy:ce,ariaDetails:null,ariaDisabled:ve,ariaDropEffect:ce,ariaErrorMessage:null,ariaExpanded:ve,ariaFlowTo:ce,ariaGrabbed:ve,ariaHasPopup:null,ariaHidden:ve,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:ce,ariaLevel:L,ariaLive:null,ariaModal:ve,ariaMultiLine:ve,ariaMultiSelectable:ve,ariaOrientation:null,ariaOwns:ce,ariaPlaceholder:null,ariaPosInSet:L,ariaPressed:ve,ariaReadOnly:ve,ariaRelevant:null,ariaRequired:ve,ariaRoleDescription:ce,ariaRowCount:L,ariaRowIndex:L,ariaRowSpan:L,ariaSelected:ve,ariaSetSize:L,ariaSort:null,ariaValueMax:L,ariaValueMin:L,ariaValueNow:L,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function vo(e,t){return t in e?e[t]:t}function ko(e,t){return vo(e,t.toLowerCase())}const xp=Kt({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Jt,acceptCharset:ce,accessKey:ce,action:null,allow:null,allowFullScreen:X,allowPaymentRequest:X,allowUserMedia:X,alt:null,as:null,async:X,autoCapitalize:null,autoComplete:ce,autoFocus:X,autoPlay:X,blocking:ce,capture:null,charSet:null,checked:X,cite:null,className:ce,cols:L,colSpan:null,content:null,contentEditable:ve,controls:X,controlsList:ce,coords:L|Jt,crossOrigin:null,data:null,dateTime:null,decoding:null,default:X,defer:X,dir:null,dirName:null,disabled:X,download:ia,draggable:ve,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:X,formTarget:null,headers:ce,height:L,hidden:ia,high:L,href:null,hrefLang:null,htmlFor:ce,httpEquiv:ce,id:null,imageSizes:null,imageSrcSet:null,inert:X,inputMode:null,integrity:null,is:null,isMap:X,itemId:null,itemProp:ce,itemRef:ce,itemScope:X,itemType:ce,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:X,low:L,manifest:null,max:null,maxLength:L,media:null,method:null,min:null,minLength:L,multiple:X,muted:X,name:null,nonce:null,noModule:X,noValidate:X,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:X,optimum:L,pattern:null,ping:ce,placeholder:null,playsInline:X,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:X,referrerPolicy:null,rel:ce,required:X,reversed:X,rows:L,rowSpan:L,sandbox:ce,scope:null,scoped:X,seamless:X,selected:X,shadowRootClonable:X,shadowRootDelegatesFocus:X,shadowRootMode:null,shape:null,size:L,sizes:null,slot:null,span:L,spellCheck:ve,src:null,srcDoc:null,srcLang:null,srcSet:null,start:L,step:null,style:null,tabIndex:L,target:null,title:null,translate:null,type:null,typeMustMatch:X,useMap:null,value:ve,width:L,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:ce,axis:null,background:null,bgColor:null,border:L,borderColor:null,bottomMargin:L,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:X,declare:X,event:null,face:null,frame:null,frameBorder:null,hSpace:L,leftMargin:L,link:null,longDesc:null,lowSrc:null,marginHeight:L,marginWidth:L,noResize:X,noHref:X,noShade:X,noWrap:X,object:null,profile:null,prompt:null,rev:null,rightMargin:L,rules:null,scheme:null,scrolling:ve,standby:null,summary:null,text:null,topMargin:L,valueType:null,version:null,vAlign:null,vLink:null,vSpace:L,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:X,disableRemotePlayback:X,prefix:null,property:null,results:L,security:null,unselectable:null},space:"html",transform:ko}),vp=Kt({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:We,accentHeight:L,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:L,amplitude:L,arabicForm:null,ascent:L,attributeName:null,attributeType:null,azimuth:L,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:L,by:null,calcMode:null,capHeight:L,className:ce,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:L,diffuseConstant:L,direction:null,display:null,dur:null,divisor:L,dominantBaseline:null,download:X,dx:null,dy:null,edgeMode:null,editable:null,elevation:L,enableBackground:null,end:null,event:null,exponent:L,externalResourcesRequired:null,fill:null,fillOpacity:L,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Jt,g2:Jt,glyphName:Jt,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:L,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:L,horizOriginX:L,horizOriginY:L,id:null,ideographic:L,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:L,k:L,k1:L,k2:L,k3:L,k4:L,kernelMatrix:We,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:L,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:L,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:L,overlineThickness:L,paintOrder:null,panose1:null,path:null,pathLength:L,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:ce,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:L,pointsAtY:L,pointsAtZ:L,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:We,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:We,rev:We,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:We,requiredFeatures:We,requiredFonts:We,requiredFormats:We,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:L,specularExponent:L,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:L,strikethroughThickness:L,string:null,stroke:null,strokeDashArray:We,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:L,strokeOpacity:L,strokeWidth:null,style:null,surfaceScale:L,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:We,tabIndex:L,tableValues:null,target:null,targetX:L,targetY:L,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:We,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:L,underlineThickness:L,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:L,values:null,vAlphabetic:L,vMathematical:L,vectorEffect:null,vHanging:L,vIdeographic:L,version:null,vertAdvY:L,vertOriginX:L,vertOriginY:L,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:L,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:vo}),So=Kt({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),_o=Kt({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:ko}),To=Kt({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),kp={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Sp=/[A-Z]/g,Co=/-[a-z]/g,_p=/^data[-\w.:]+$/i;function Tp(e,t){const r=aa(t);let n=t,a=$e;if(r in e.normal)return e.property[e.normal[r]];if(r.length>4&&r.slice(0,4)==="data"&&_p.test(t)){if(t.charAt(4)==="-"){const i=t.slice(5).replace(Co,Ip);n="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=t.slice(4);if(!Co.test(i)){let s=i.replace(Sp,Cp);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}a=la}return new a(n,t)}function Cp(e){return"-"+e.toLowerCase()}function Ip(e){return e.charAt(1).toUpperCase()}const Ep=bo([xo,xp,So,_o,To],"html"),ua=bo([xo,vp,So,_o,To],"svg");function Ap(e){return e.join(" ").trim()}var Yt={},ca,Io;function Mp(){if(Io)return ca;Io=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,r=/^\s*/,n=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,i=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,o=/^\s+|\s+$/g,l=`
|
|
8
|
+
`,u="/",c="*",d="",f="comment",h="declaration";function g(w,b){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];b=b||{};var I=1,T=1;function D(z){var O=z.match(t);O&&(I+=O.length);var ee=z.lastIndexOf(l);T=~ee?z.length-ee:T+z.length}function B(){var z={line:I,column:T};return function(O){return O.position=new _(z),U(),O}}function _(z){this.start=z,this.end={line:I,column:T},this.source=b.source}_.prototype.content=w;function j(z){var O=new Error(b.source+":"+I+":"+T+": "+z);if(O.reason=z,O.filename=b.source,O.line=I,O.column=T,O.source=w,!b.silent)throw O}function R(z){var O=z.exec(w);if(O){var ee=O[0];return D(ee),w=w.slice(ee.length),O}}function U(){R(r)}function S(z){var O;for(z=z||[];O=P();)O!==!1&&z.push(O);return z}function P(){var z=B();if(!(u!=w.charAt(0)||c!=w.charAt(1))){for(var O=2;d!=w.charAt(O)&&(c!=w.charAt(O)||u!=w.charAt(O+1));)++O;if(O+=2,d===w.charAt(O-1))return j("End of comment missing");var ee=w.slice(2,O-2);return T+=2,D(ee),w=w.slice(O),T+=2,z({type:f,comment:ee})}}function N(){var z=B(),O=R(n);if(O){if(P(),!R(a))return j("property missing ':'");var ee=R(i),de=z({type:h,property:v(O[0].replace(e,d)),value:ee?v(ee[0].replace(e,d)):d});return R(s),de}}function H(){var z=[];S(z);for(var O;O=N();)O!==!1&&(z.push(O),S(z));return z}return U(),H()}function v(w){return w?w.replace(o,d):d}return ca=g,ca}var Eo;function Pp(){if(Eo)return Yt;Eo=1;var e=Yt&&Yt.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.default=r;const t=e(Mp());function r(n,a){let i=null;if(!n||typeof n!="string")return i;const s=(0,t.default)(n),o=typeof a=="function";return s.forEach(l=>{if(l.type!=="declaration")return;const{property:u,value:c}=l;o?a(u,c,l):c&&(i=i||{},i[u]=c)}),i}return Yt}var gr={},Ao;function Np(){if(Ao)return gr;Ao=1,Object.defineProperty(gr,"__esModule",{value:!0}),gr.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,r=/^[^-]+$/,n=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,i=function(u){return!u||r.test(u)||e.test(u)},s=function(u,c){return c.toUpperCase()},o=function(u,c){return"".concat(c,"-")},l=function(u,c){return c===void 0&&(c={}),i(u)?u:(u=u.toLowerCase(),c.reactCompat?u=u.replace(a,o):u=u.replace(n,o),u.replace(t,s))};return gr.camelCase=l,gr}var yr,Mo;function Lp(){if(Mo)return yr;Mo=1;var e=yr&&yr.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},t=e(Pp()),r=Np();function n(a,i){var s={};return!a||typeof a!="string"||(0,t.default)(a,function(o,l){o&&l&&(s[(0,r.camelCase)(o,i)]=l)}),s}return n.default=n,yr=n,yr}var Dp=Lp();const Op=Lr(Dp),Po=No("end"),da=No("start");function No(e){return t;function t(r){const n=r&&r.position&&r.position[e]||{};if(typeof n.line=="number"&&n.line>0&&typeof n.column=="number"&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset=="number"&&n.offset>-1?n.offset:void 0}}}function Fp(e){const t=da(e),r=Po(e);if(t&&r)return{start:t,end:r}}function br(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Lo(e.position):"start"in e||"end"in e?Lo(e):"line"in e||"column"in e?ha(e):""}function ha(e){return Do(e&&e.line)+":"+Do(e&&e.column)}function Lo(e){return ha(e&&e.start)+"-"+ha(e&&e.end)}function Do(e){return e&&typeof e=="number"?e:1}class Ae extends Error{constructor(t,r,n){super(),typeof r=="string"&&(n=r,r=void 0);let a="",i={},s=!1;if(r&&("line"in r&&"column"in r?i={place:r}:"start"in r&&"end"in r?i={place:r}:"type"in r?i={ancestors:[r],place:r.position}:i=m({},r)),typeof t=="string"?a=t:!i.cause&&t&&(s=!0,a=t.message,i.cause=t),!i.ruleId&&!i.source&&typeof n=="string"){const l=n.indexOf(":");l===-1?i.ruleId=n:(i.source=n.slice(0,l),i.ruleId=n.slice(l+1))}if(!i.place&&i.ancestors&&i.ancestors){const l=i.ancestors[i.ancestors.length-1];l&&(i.place=l.position)}const o=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=o?o.line:void 0,this.name=br(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=s&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Ae.prototype.file="",Ae.prototype.name="",Ae.prototype.reason="",Ae.prototype.message="",Ae.prototype.stack="",Ae.prototype.column=void 0,Ae.prototype.line=void 0,Ae.prototype.ancestors=void 0,Ae.prototype.cause=void 0,Ae.prototype.fatal=void 0,Ae.prototype.place=void 0,Ae.prototype.ruleId=void 0,Ae.prototype.source=void 0;const fa={}.hasOwnProperty,Bp=new Map,zp=/[A-Z]/g,Rp=new Set(["table","tbody","thead","tfoot","tr"]),jp=new Set(["td","th"]),Oo="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function $p(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=t.filePath||void 0;let n;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");n=Yp(r,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");n=Kp(r,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:n,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?ua:Ep,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},i=Fo(a,e,void 0);return i&&typeof i!="string"?i:a.create(e,a.Fragment,{children:i||void 0},void 0)}function Fo(e,t,r){if(t.type==="element")return Up(e,t,r);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return Hp(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return Vp(e,t,r);if(t.type==="mdxjsEsm")return qp(e,t);if(t.type==="root")return Wp(e,t,r);if(t.type==="text")return Jp(e,t)}function Up(e,t,r){const n=e.schema;let a=n;t.tagName.toLowerCase()==="svg"&&n.space==="html"&&(a=ua,e.schema=a),e.ancestors.push(t);const i=zo(e,t.tagName,!1),s=Gp(e,t);let o=ma(e,t);return Rp.has(t.tagName)&&(o=o.filter(function(l){return typeof l=="string"?!bp(l):!0})),Bo(e,s,i,t),pa(s,o),e.ancestors.pop(),e.schema=n,e.create(t,i,s,r)}function Hp(e,t){if(t.data&&t.data.estree&&e.evaluater){const n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}wr(e,t.position)}function qp(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);wr(e,t.position)}function Vp(e,t,r){const n=e.schema;let a=n;t.name==="svg"&&n.space==="html"&&(a=ua,e.schema=a),e.ancestors.push(t);const i=t.name===null?e.Fragment:zo(e,t.name,!0),s=Xp(e,t),o=ma(e,t);return Bo(e,s,i,t),pa(s,o),e.ancestors.pop(),e.schema=n,e.create(t,i,s,r)}function Wp(e,t,r){const n={};return pa(n,ma(e,t)),e.create(t,e.Fragment,n,r)}function Jp(e,t){return t.value}function Bo(e,t,r,n){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(t.node=n)}function pa(e,t){if(t.length>0){const r=t.length>1?t:t[0];r&&(e.children=r)}}function Kp(e,t,r){return n;function n(a,i,s,o){const u=Array.isArray(s.children)?r:t;return o?u(i,s,o):u(i,s)}}function Yp(e,t){return r;function r(n,a,i,s){const o=Array.isArray(i.children),l=da(n);return t(a,i,s,o,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function Gp(e,t){const r={};let n,a;for(a in t.properties)if(a!=="children"&&fa.call(t.properties,a)){const i=Qp(e,a,t.properties[a]);if(i){const[s,o]=i;e.tableCellAlignToStyle&&s==="align"&&typeof o=="string"&&jp.has(t.tagName)?n=o:r[s]=o}}if(n){const i=r.style||(r.style={});i[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=n}return r}function Xp(e,t){const r={};for(const n of t.attributes)if(n.type==="mdxJsxExpressionAttribute")if(n.data&&n.data.estree&&e.evaluater){const i=n.data.estree.body[0];i.type;const s=i.expression;s.type;const o=s.properties[0];o.type,Object.assign(r,e.evaluater.evaluateExpression(o.argument))}else wr(e,t.position);else{const a=n.name;let i;if(n.value&&typeof n.value=="object")if(n.value.data&&n.value.data.estree&&e.evaluater){const o=n.value.data.estree.body[0];o.type,i=e.evaluater.evaluateExpression(o.expression)}else wr(e,t.position);else i=n.value===null?!0:n.value;r[a]=i}return r}function ma(e,t){const r=[];let n=-1;const a=e.passKeys?new Map:Bp;for(;++n<t.children.length;){const i=t.children[n];let s;if(e.passKeys){const l=i.type==="element"?i.tagName:i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement"?i.name:void 0;if(l){const u=a.get(l)||0;s=l+"-"+u,a.set(l,u+1)}}const o=Fo(e,i,s);o!==void 0&&r.push(o)}return r}function Qp(e,t,r){const n=Tp(e.schema,t);if(!(r==null||typeof r=="number"&&Number.isNaN(r))){if(Array.isArray(r)&&(r=n.commaSeparated?fp(r):Ap(r)),n.property==="style"){let a=typeof r=="object"?r:Zp(e,String(r));return e.stylePropertyNameCase==="css"&&(a=em(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&n.space?kp[n.property]||n.property:n.attribute,r]}}function Zp(e,t){try{return Op(t,{reactCompat:!0})}catch(r){if(e.ignoreInvalidStyle)return{};const n=r,a=new Ae("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=Oo+"#cannot-parse-style-attribute",a}}function zo(e,t,r){let n;if(!r)n={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let i=-1,s;for(;++i<a.length;){const o=go(a[i])?{type:"Identifier",name:a[i]}:{type:"Literal",value:a[i]};s=s?{type:"MemberExpression",object:s,property:o,computed:!!(i&&o.type==="Literal"),optional:!1}:o}n=s}else n=go(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(n.type==="Literal"){const a=n.value;return fa.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(n);wr(e)}function wr(e,t){const r=new Ae("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw r.file=e.filePath||void 0,r.url=Oo+"#cannot-handle-mdx-estrees-without-createevaluater",r}function em(e){const t={};let r;for(r in e)fa.call(e,r)&&(t[tm(r)]=e[r]);return t}function tm(e){let t=e.replace(zp,rm);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function rm(e){return"-"+e.toLowerCase()}const ga={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},nm={};function ya(e,t){const r=nm,n=typeof r.includeImageAlt=="boolean"?r.includeImageAlt:!0,a=typeof r.includeHtml=="boolean"?r.includeHtml:!0;return Ro(e,n,a)}function Ro(e,t,r){if(am(e)){if("value"in e)return e.type==="html"&&!r?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return jo(e.children,t,r)}return Array.isArray(e)?jo(e,t,r):""}function jo(e,t,r){const n=[];let a=-1;for(;++a<e.length;)n[a]=Ro(e[a],t,r);return n.join("")}function am(e){return!!(e&&typeof e=="object")}const $o=document.createElement("i");function ba(e){const t="&"+e+";";$o.innerHTML=t;const r=$o.textContent;return r.charCodeAt(r.length-1)===59&&e!=="semi"||r===t?!1:r}function Je(e,t,r,n){const a=e.length;let i=0,s;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,r=r>0?r:0,n.length<1e4)s=Array.from(n),s.unshift(t,r),e.splice(...s);else for(r&&e.splice(t,r);i<n.length;)s=n.slice(i,i+1e4),s.unshift(t,0),e.splice(...s),i+=1e4,t+=1e4}function Xe(e,t){return e.length>0?(Je(e,e.length,0,t),e):t}const Uo={}.hasOwnProperty;function Ho(e){const t={};let r=-1;for(;++r<e.length;)im(t,e[r]);return t}function im(e,t){let r;for(r in t){const a=(Uo.call(e,r)?e[r]:void 0)||(e[r]={}),i=t[r];let s;if(i)for(s in i){Uo.call(a,s)||(a[s]=[]);const o=i[s];sm(a[s],Array.isArray(o)?o:o?[o]:[])}}}function sm(e,t){let r=-1;const n=[];for(;++r<t.length;)(t[r].add==="after"?e:n).push(t[r]);Je(e,0,0,n)}function qo(e,t){const r=Number.parseInt(e,t);return r<9||r===11||r>13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function nt(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const ze=St(/[A-Za-z]/),Me=St(/[\dA-Za-z]/),om=St(/[#-'*+\--9=?A-Z^-~]/);function nn(e){return e!==null&&(e<32||e===127)}const wa=St(/\d/),lm=St(/[\dA-Fa-f]/),um=St(/[!-/:-@[-`{-~]/);function J(e){return e!==null&&e<-2}function le(e){return e!==null&&(e<0||e===32)}function Z(e){return e===-2||e===-1||e===32}const an=St(new RegExp("\\p{P}|\\p{S}","u")),Dt=St(/\s/);function St(e){return t;function t(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function Gt(e){const t=[];let r=-1,n=0,a=0;for(;++r<e.length;){const i=e.charCodeAt(r);let s="";if(i===37&&Me(e.charCodeAt(r+1))&&Me(e.charCodeAt(r+2)))a=2;else if(i<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(i))||(s=String.fromCharCode(i));else if(i>55295&&i<57344){const o=e.charCodeAt(r+1);i<56320&&o>56319&&o<57344?(s=String.fromCharCode(i,o),a=1):s="�"}else s=String.fromCharCode(i);s&&(t.push(e.slice(n,r),encodeURIComponent(s)),n=r+a+1,s=""),a&&(r+=a,a=0)}return t.join("")+e.slice(n)}function re(e,t,r,n){const a=n?n-1:Number.POSITIVE_INFINITY;let i=0;return s;function s(l){return Z(l)?(e.enter(r),o(l)):t(l)}function o(l){return Z(l)&&i++<a?(e.consume(l),o):(e.exit(r),t(l))}}const cm={tokenize:dm};function dm(e){const t=e.attempt(this.parser.constructs.contentInitial,n,a);let r;return t;function n(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),re(e,t,"linePrefix")}function a(o){return e.enter("paragraph"),i(o)}function i(o){const l=e.enter("chunkText",{contentType:"text",previous:r});return r&&(r.next=l),r=l,s(o)}function s(o){if(o===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(o);return}return J(o)?(e.consume(o),e.exit("chunkText"),i):(e.consume(o),s)}}const hm={tokenize:fm},Vo={tokenize:pm};function fm(e){const t=this,r=[];let n=0,a,i,s;return o;function o(T){if(n<r.length){const D=r[n];return t.containerState=D[1],e.attempt(D[0].continuation,l,u)(T)}return u(T)}function l(T){if(n++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&I();const D=t.events.length;let B=D,_;for(;B--;)if(t.events[B][0]==="exit"&&t.events[B][1].type==="chunkFlow"){_=t.events[B][1].end;break}b(n);let j=D;for(;j<t.events.length;)t.events[j][1].end=m({},_),j++;return Je(t.events,B+1,0,t.events.slice(D)),t.events.length=j,u(T)}return o(T)}function u(T){if(n===r.length){if(!a)return f(T);if(a.currentConstruct&&a.currentConstruct.concrete)return g(T);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Vo,c,d)(T)}function c(T){return a&&I(),b(n),f(T)}function d(T){return t.parser.lazy[t.now().line]=n!==r.length,s=t.now().offset,g(T)}function f(T){return t.containerState={},e.attempt(Vo,h,g)(T)}function h(T){return n++,r.push([t.currentConstruct,t.containerState]),f(T)}function g(T){if(T===null){a&&I(),b(0),e.consume(T);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:i}),v(T)}function v(T){if(T===null){w(e.exit("chunkFlow"),!0),b(0),e.consume(T);return}return J(T)?(e.consume(T),w(e.exit("chunkFlow")),n=0,t.interrupt=void 0,o):(e.consume(T),v)}function w(T,D){const B=t.sliceStream(T);if(D&&B.push(null),T.previous=i,i&&(i.next=T),i=T,a.defineSkip(T.start),a.write(B),t.parser.lazy[T.start.line]){let _=a.events.length;for(;_--;)if(a.events[_][1].start.offset<s&&(!a.events[_][1].end||a.events[_][1].end.offset>s))return;const j=t.events.length;let R=j,U,S;for(;R--;)if(t.events[R][0]==="exit"&&t.events[R][1].type==="chunkFlow"){if(U){S=t.events[R][1].end;break}U=!0}for(b(n),_=j;_<t.events.length;)t.events[_][1].end=m({},S),_++;Je(t.events,R+1,0,t.events.slice(j)),t.events.length=_}}function b(T){let D=r.length;for(;D-- >T;){const B=r[D];t.containerState=B[1],B[0].exit.call(t,e)}r.length=T}function I(){a.write([null]),i=void 0,a=void 0,t.containerState._closeFlow=void 0}}function pm(e,t,r){return re(e,e.attempt(this.parser.constructs.document,t,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Xt(e){if(e===null||le(e)||Dt(e))return 1;if(an(e))return 2}function sn(e,t,r){const n=[];let a=-1;for(;++a<e.length;){const i=e[a].resolveAll;i&&!n.includes(i)&&(t=i(t,r),n.push(i))}return t}const xa={name:"attention",resolveAll:mm,tokenize:gm};function mm(e,t){let r=-1,n,a,i,s,o,l,u,c;for(;++r<e.length;)if(e[r][0]==="enter"&&e[r][1].type==="attentionSequence"&&e[r][1]._close){for(n=r;n--;)if(e[n][0]==="exit"&&e[n][1].type==="attentionSequence"&&e[n][1]._open&&t.sliceSerialize(e[n][1]).charCodeAt(0)===t.sliceSerialize(e[r][1]).charCodeAt(0)){if((e[n][1]._close||e[r][1]._open)&&(e[r][1].end.offset-e[r][1].start.offset)%3&&!((e[n][1].end.offset-e[n][1].start.offset+e[r][1].end.offset-e[r][1].start.offset)%3))continue;l=e[n][1].end.offset-e[n][1].start.offset>1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const d=m({},e[n][1].end),f=m({},e[r][1].start);Wo(d,-l),Wo(f,l),s={type:l>1?"strongSequence":"emphasisSequence",start:d,end:m({},e[n][1].end)},o={type:l>1?"strongSequence":"emphasisSequence",start:m({},e[r][1].start),end:f},i={type:l>1?"strongText":"emphasisText",start:m({},e[n][1].end),end:m({},e[r][1].start)},a={type:l>1?"strong":"emphasis",start:m({},s.start),end:m({},o.end)},e[n][1].end=m({},s.start),e[r][1].start=m({},o.end),u=[],e[n][1].end.offset-e[n][1].start.offset&&(u=Xe(u,[["enter",e[n][1],t],["exit",e[n][1],t]])),u=Xe(u,[["enter",a,t],["enter",s,t],["exit",s,t],["enter",i,t]]),u=Xe(u,sn(t.parser.constructs.insideSpan.null,e.slice(n+1,r),t)),u=Xe(u,[["exit",i,t],["enter",o,t],["exit",o,t],["exit",a,t]]),e[r][1].end.offset-e[r][1].start.offset?(c=2,u=Xe(u,[["enter",e[r][1],t],["exit",e[r][1],t]])):c=0,Je(e,n-1,r-n+3,u),r=n+u.length-c-2;break}}for(r=-1;++r<e.length;)e[r][1].type==="attentionSequence"&&(e[r][1].type="data");return e}function gm(e,t){const r=this.parser.constructs.attentionMarkers.null,n=this.previous,a=Xt(n);let i;return s;function s(l){return i=l,e.enter("attentionSequence"),o(l)}function o(l){if(l===i)return e.consume(l),o;const u=e.exit("attentionSequence"),c=Xt(l),d=!c||c===2&&a||r.includes(l),f=!a||a===2&&c||r.includes(n);return u._open=!!(i===42?d:d&&(a||!f)),u._close=!!(i===42?f:f&&(c||!d)),t(l)}}function Wo(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const ym={name:"autolink",tokenize:bm};function bm(e,t,r){let n=0;return a;function a(h){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),i}function i(h){return ze(h)?(e.consume(h),s):h===64?r(h):u(h)}function s(h){return h===43||h===45||h===46||Me(h)?(n=1,o(h)):u(h)}function o(h){return h===58?(e.consume(h),n=0,l):(h===43||h===45||h===46||Me(h))&&n++<32?(e.consume(h),o):(n=0,u(h))}function l(h){return h===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.exit("autolink"),t):h===null||h===32||h===60||nn(h)?r(h):(e.consume(h),l)}function u(h){return h===64?(e.consume(h),c):om(h)?(e.consume(h),u):r(h)}function c(h){return Me(h)?d(h):r(h)}function d(h){return h===46?(e.consume(h),n=0,c):h===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(h),e.exit("autolinkMarker"),e.exit("autolink"),t):f(h)}function f(h){if((h===45||Me(h))&&n++<63){const g=h===45?f:d;return e.consume(h),g}return r(h)}}const xr={partial:!0,tokenize:wm};function wm(e,t,r){return n;function n(i){return Z(i)?re(e,a,"linePrefix")(i):a(i)}function a(i){return i===null||J(i)?t(i):r(i)}}const Jo={continuation:{tokenize:vm},exit:km,name:"blockQuote",tokenize:xm};function xm(e,t,r){const n=this;return a;function a(s){if(s===62){const o=n.containerState;return o.open||(e.enter("blockQuote",{_container:!0}),o.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(s),e.exit("blockQuoteMarker"),i}return r(s)}function i(s){return Z(s)?(e.enter("blockQuotePrefixWhitespace"),e.consume(s),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(s))}}function vm(e,t,r){const n=this;return a;function a(s){return Z(s)?re(e,i,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s):i(s)}function i(s){return e.attempt(Jo,t,r)(s)}}function km(e){e.exit("blockQuote")}const Ko={name:"characterEscape",tokenize:Sm};function Sm(e,t,r){return n;function n(i){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(i),e.exit("escapeMarker"),a}function a(i){return um(i)?(e.enter("characterEscapeValue"),e.consume(i),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):r(i)}}const Yo={name:"characterReference",tokenize:_m};function _m(e,t,r){const n=this;let a=0,i,s;return o;function o(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),i=31,s=Me,c(d))}function u(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),i=6,s=lm,c):(e.enter("characterReferenceValue"),i=7,s=wa,c(d))}function c(d){if(d===59&&a){const f=e.exit("characterReferenceValue");return s===Me&&!ba(n.sliceSerialize(f))?r(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return s(d)&&a++<i?(e.consume(d),c):r(d)}}const Go={partial:!0,tokenize:Cm},Xo={concrete:!0,name:"codeFenced",tokenize:Tm};function Tm(e,t,r){const n=this,a={partial:!0,tokenize:B};let i=0,s=0,o;return l;function l(_){return u(_)}function u(_){const j=n.events[n.events.length-1];return i=j&&j[1].type==="linePrefix"?j[2].sliceSerialize(j[1],!0).length:0,o=_,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),c(_)}function c(_){return _===o?(s++,e.consume(_),c):s<3?r(_):(e.exit("codeFencedFenceSequence"),Z(_)?re(e,d,"whitespace")(_):d(_))}function d(_){return _===null||J(_)?(e.exit("codeFencedFence"),n.interrupt?t(_):e.check(Go,v,D)(_)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),f(_))}function f(_){return _===null||J(_)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(_)):Z(_)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),re(e,h,"whitespace")(_)):_===96&&_===o?r(_):(e.consume(_),f)}function h(_){return _===null||J(_)?d(_):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),g(_))}function g(_){return _===null||J(_)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(_)):_===96&&_===o?r(_):(e.consume(_),g)}function v(_){return e.attempt(a,D,w)(_)}function w(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),b}function b(_){return i>0&&Z(_)?re(e,I,"linePrefix",i+1)(_):I(_)}function I(_){return _===null||J(_)?e.check(Go,v,D)(_):(e.enter("codeFlowValue"),T(_))}function T(_){return _===null||J(_)?(e.exit("codeFlowValue"),I(_)):(e.consume(_),T)}function D(_){return e.exit("codeFenced"),t(_)}function B(_,j,R){let U=0;return S;function S(O){return _.enter("lineEnding"),_.consume(O),_.exit("lineEnding"),P}function P(O){return _.enter("codeFencedFence"),Z(O)?re(_,N,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(O):N(O)}function N(O){return O===o?(_.enter("codeFencedFenceSequence"),H(O)):R(O)}function H(O){return O===o?(U++,_.consume(O),H):U>=s?(_.exit("codeFencedFenceSequence"),Z(O)?re(_,z,"whitespace")(O):z(O)):R(O)}function z(O){return O===null||J(O)?(_.exit("codeFencedFence"),j(O)):R(O)}}}function Cm(e,t,r){const n=this;return a;function a(s){return s===null?r(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i)}function i(s){return n.parser.lazy[n.now().line]?r(s):t(s)}}const va={name:"codeIndented",tokenize:Em},Im={partial:!0,tokenize:Am};function Em(e,t,r){const n=this;return a;function a(u){return e.enter("codeIndented"),re(e,i,"linePrefix",5)(u)}function i(u){const c=n.events[n.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?s(u):r(u)}function s(u){return u===null?l(u):J(u)?e.attempt(Im,s,l)(u):(e.enter("codeFlowValue"),o(u))}function o(u){return u===null||J(u)?(e.exit("codeFlowValue"),s(u)):(e.consume(u),o)}function l(u){return e.exit("codeIndented"),t(u)}}function Am(e,t,r){const n=this;return a;function a(s){return n.parser.lazy[n.now().line]?r(s):J(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),a):re(e,i,"linePrefix",5)(s)}function i(s){const o=n.events[n.events.length-1];return o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(s):J(s)?a(s):r(s)}}const Mm={name:"codeText",previous:Nm,resolve:Pm,tokenize:Lm};function Pm(e){let t=e.length-4,r=3,n,a;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(n=r;++n<t;)if(e[n][1].type==="codeTextData"){e[r][1].type="codeTextPadding",e[t][1].type="codeTextPadding",r+=2,t-=2;break}}for(n=r-1,t++;++n<=t;)a===void 0?n!==t&&e[n][1].type!=="lineEnding"&&(a=n):(n===t||e[n][1].type==="lineEnding")&&(e[a][1].type="codeTextData",n!==a+2&&(e[a][1].end=e[n-1][1].end,e.splice(a+2,n-a-2),t-=n-a-2,n=a+2),a=void 0);return e}function Nm(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function Lm(e,t,r){let n=0,a,i;return s;function s(d){return e.enter("codeText"),e.enter("codeTextSequence"),o(d)}function o(d){return d===96?(e.consume(d),n++,o):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?r(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(i=e.enter("codeTextSequence"),a=0,c(d)):J(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),u(d))}function u(d){return d===null||d===32||d===96||J(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),u)}function c(d){return d===96?(e.consume(d),a++,c):a===n?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(i.type="codeTextData",u(d))}}class Dm{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,r){const n=r==null?Number.POSITIVE_INFINITY:r;return n<this.left.length?this.left.slice(t,n):t>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(t,r,n){const a=r||0;this.setCursor(Math.trunc(t));const i=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return n&&vr(this.left,n),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),vr(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),vr(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const r=this.left.splice(t,Number.POSITIVE_INFINITY);vr(this.right,r.reverse())}else{const r=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);vr(this.left,r.reverse())}}}function vr(e,t){let r=0;if(t.length<1e4)e.push(...t);else for(;r<t.length;)e.push(...t.slice(r,r+1e4)),r+=1e4}function Qo(e){const t={};let r=-1,n,a,i,s,o,l,u;const c=new Dm(e);for(;++r<c.length;){for(;r in t;)r=t[r];if(n=c.get(r),r&&n[1].type==="chunkFlow"&&c.get(r-1)[1].type==="listItemPrefix"&&(l=n[1]._tokenizer.events,i=0,i<l.length&&l[i][1].type==="lineEndingBlank"&&(i+=2),i<l.length&&l[i][1].type==="content"))for(;++i<l.length&&l[i][1].type!=="content";)l[i][1].type==="chunkText"&&(l[i][1]._isInFirstContentOfListItem=!0,i++);if(n[0]==="enter")n[1].contentType&&(Object.assign(t,Om(c,r)),r=t[r],u=!0);else if(n[1]._container){for(i=r,a=void 0;i--;)if(s=c.get(i),s[1].type==="lineEnding"||s[1].type==="lineEndingBlank")s[0]==="enter"&&(a&&(c.get(a)[1].type="lineEndingBlank"),s[1].type="lineEnding",a=i);else if(!(s[1].type==="linePrefix"||s[1].type==="listItemIndent"))break;a&&(n[1].end=m({},c.get(a)[1].start),o=c.slice(a,r),o.unshift(n),c.splice(a,r-a+1,o))}}return Je(e,0,Number.POSITIVE_INFINITY,c.slice(0)),!u}function Om(e,t){const r=e.get(t)[1],n=e.get(t)[2];let a=t-1;const i=[];let s=r._tokenizer;s||(s=n.parser[r.contentType](r.start),r._contentTypeTextTrailing&&(s._contentTypeTextTrailing=!0));const o=s.events,l=[],u={};let c,d,f=-1,h=r,g=0,v=0;const w=[v];for(;h;){for(;e.get(++a)[1]!==h;);i.push(a),h._tokenizer||(c=n.sliceStream(h),h.next||c.push(null),d&&s.defineSkip(h.start),h._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=!0),s.write(c),h._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=void 0)),d=h,h=h.next}for(h=r;++f<o.length;)o[f][0]==="exit"&&o[f-1][0]==="enter"&&o[f][1].type===o[f-1][1].type&&o[f][1].start.line!==o[f][1].end.line&&(v=f+1,w.push(v),h._tokenizer=void 0,h.previous=void 0,h=h.next);for(s.events=[],h?(h._tokenizer=void 0,h.previous=void 0):w.pop(),f=w.length;f--;){const b=o.slice(w[f],w[f+1]),I=i.pop();l.push([I,I+b.length-1]),e.splice(I,2,b)}for(l.reverse(),f=-1;++f<l.length;)u[g+l[f][0]]=g+l[f][1],g+=l[f][1]-l[f][0]-1;return u}const Fm={resolve:zm,tokenize:Rm},Bm={partial:!0,tokenize:jm};function zm(e){return Qo(e),e}function Rm(e,t){let r;return n;function n(o){return e.enter("content"),r=e.enter("chunkContent",{contentType:"content"}),a(o)}function a(o){return o===null?i(o):J(o)?e.check(Bm,s,i)(o):(e.consume(o),a)}function i(o){return e.exit("chunkContent"),e.exit("content"),t(o)}function s(o){return e.consume(o),e.exit("chunkContent"),r.next=e.enter("chunkContent",{contentType:"content",previous:r}),r=r.next,a}}function jm(e,t,r){const n=this;return a;function a(s){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),re(e,i,"linePrefix")}function i(s){if(s===null||J(s))return r(s);const o=n.events[n.events.length-1];return!n.parser.constructs.disable.null.includes("codeIndented")&&o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(s):e.interrupt(n.parser.constructs.flow,r,t)(s)}}function Zo(e,t,r,n,a,i,s,o,l){const u=l||Number.POSITIVE_INFINITY;let c=0;return d;function d(b){return b===60?(e.enter(n),e.enter(a),e.enter(i),e.consume(b),e.exit(i),f):b===null||b===32||b===41||nn(b)?r(b):(e.enter(n),e.enter(s),e.enter(o),e.enter("chunkString",{contentType:"string"}),v(b))}function f(b){return b===62?(e.enter(i),e.consume(b),e.exit(i),e.exit(a),e.exit(n),t):(e.enter(o),e.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===62?(e.exit("chunkString"),e.exit(o),f(b)):b===null||b===60||J(b)?r(b):(e.consume(b),b===92?g:h)}function g(b){return b===60||b===62||b===92?(e.consume(b),h):h(b)}function v(b){return!c&&(b===null||b===41||le(b))?(e.exit("chunkString"),e.exit(o),e.exit(s),e.exit(n),t(b)):c<u&&b===40?(e.consume(b),c++,v):b===41?(e.consume(b),c--,v):b===null||b===32||b===40||nn(b)?r(b):(e.consume(b),b===92?w:v)}function w(b){return b===40||b===41||b===92?(e.consume(b),v):v(b)}}function el(e,t,r,n,a,i){const s=this;let o=0,l;return u;function u(h){return e.enter(n),e.enter(a),e.consume(h),e.exit(a),e.enter(i),c}function c(h){return o>999||h===null||h===91||h===93&&!l||h===94&&!o&&"_hiddenFootnoteSupport"in s.parser.constructs?r(h):h===93?(e.exit(i),e.enter(a),e.consume(h),e.exit(a),e.exit(n),t):J(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),d(h))}function d(h){return h===null||h===91||h===93||J(h)||o++>999?(e.exit("chunkString"),c(h)):(e.consume(h),l||(l=!Z(h)),h===92?f:d)}function f(h){return h===91||h===92||h===93?(e.consume(h),o++,d):d(h)}}function tl(e,t,r,n,a,i){let s;return o;function o(f){return f===34||f===39||f===40?(e.enter(n),e.enter(a),e.consume(f),e.exit(a),s=f===40?41:f,l):r(f)}function l(f){return f===s?(e.enter(a),e.consume(f),e.exit(a),e.exit(n),t):(e.enter(i),u(f))}function u(f){return f===s?(e.exit(i),l(s)):f===null?r(f):J(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),re(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(f))}function c(f){return f===s||f===null||J(f)?(e.exit("chunkString"),u(f)):(e.consume(f),f===92?d:c)}function d(f){return f===s||f===92?(e.consume(f),c):c(f)}}function kr(e,t){let r;return n;function n(a){return J(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r=!0,n):Z(a)?re(e,n,r?"linePrefix":"lineSuffix")(a):t(a)}}const $m={name:"definition",tokenize:Hm},Um={partial:!0,tokenize:qm};function Hm(e,t,r){const n=this;let a;return i;function i(h){return e.enter("definition"),s(h)}function s(h){return el.call(n,e,o,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function o(h){return a=nt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)),h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),l):r(h)}function l(h){return le(h)?kr(e,u)(h):u(h)}function u(h){return Zo(e,c,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function c(h){return e.attempt(Um,d,d)(h)}function d(h){return Z(h)?re(e,f,"whitespace")(h):f(h)}function f(h){return h===null||J(h)?(e.exit("definition"),n.parser.defined.push(a),t(h)):r(h)}}function qm(e,t,r){return n;function n(o){return le(o)?kr(e,a)(o):r(o)}function a(o){return tl(e,i,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(o)}function i(o){return Z(o)?re(e,s,"whitespace")(o):s(o)}function s(o){return o===null||J(o)?t(o):r(o)}}const Vm={name:"hardBreakEscape",tokenize:Wm};function Wm(e,t,r){return n;function n(i){return e.enter("hardBreakEscape"),e.consume(i),a}function a(i){return J(i)?(e.exit("hardBreakEscape"),t(i)):r(i)}}const Jm={name:"headingAtx",resolve:Km,tokenize:Ym};function Km(e,t){let r=e.length-2,n=3,a,i;return e[n][1].type==="whitespace"&&(n+=2),r-2>n&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(n===r-1||r-4>n&&e[r-2][1].type==="whitespace")&&(r-=n+1===r?2:4),r>n&&(a={type:"atxHeadingText",start:e[n][1].start,end:e[r][1].end},i={type:"chunkText",start:e[n][1].start,end:e[r][1].end,contentType:"text"},Je(e,n,r-n+1,[["enter",a,t],["enter",i,t],["exit",i,t],["exit",a,t]])),e}function Ym(e,t,r){let n=0;return a;function a(c){return e.enter("atxHeading"),i(c)}function i(c){return e.enter("atxHeadingSequence"),s(c)}function s(c){return c===35&&n++<6?(e.consume(c),s):c===null||le(c)?(e.exit("atxHeadingSequence"),o(c)):r(c)}function o(c){return c===35?(e.enter("atxHeadingSequence"),l(c)):c===null||J(c)?(e.exit("atxHeading"),t(c)):Z(c)?re(e,o,"whitespace")(c):(e.enter("atxHeadingText"),u(c))}function l(c){return c===35?(e.consume(c),l):(e.exit("atxHeadingSequence"),o(c))}function u(c){return c===null||c===35||le(c)?(e.exit("atxHeadingText"),o(c)):(e.consume(c),u)}}const Gm=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],rl=["pre","script","style","textarea"],Xm={concrete:!0,name:"htmlFlow",resolveTo:eg,tokenize:tg},Qm={partial:!0,tokenize:ng},Zm={partial:!0,tokenize:rg};function eg(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function tg(e,t,r){const n=this;let a,i,s,o,l;return u;function u(k){return c(k)}function c(k){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(k),d}function d(k){return k===33?(e.consume(k),f):k===47?(e.consume(k),i=!0,v):k===63?(e.consume(k),a=3,n.interrupt?t:x):ze(k)?(e.consume(k),s=String.fromCharCode(k),w):r(k)}function f(k){return k===45?(e.consume(k),a=2,h):k===91?(e.consume(k),a=5,o=0,g):ze(k)?(e.consume(k),a=4,n.interrupt?t:x):r(k)}function h(k){return k===45?(e.consume(k),n.interrupt?t:x):r(k)}function g(k){const Te="CDATA[";return k===Te.charCodeAt(o++)?(e.consume(k),o===Te.length?n.interrupt?t:N:g):r(k)}function v(k){return ze(k)?(e.consume(k),s=String.fromCharCode(k),w):r(k)}function w(k){if(k===null||k===47||k===62||le(k)){const Te=k===47,He=s.toLowerCase();return!Te&&!i&&rl.includes(He)?(a=1,n.interrupt?t(k):N(k)):Gm.includes(s.toLowerCase())?(a=6,Te?(e.consume(k),b):n.interrupt?t(k):N(k)):(a=7,n.interrupt&&!n.parser.lazy[n.now().line]?r(k):i?I(k):T(k))}return k===45||Me(k)?(e.consume(k),s+=String.fromCharCode(k),w):r(k)}function b(k){return k===62?(e.consume(k),n.interrupt?t:N):r(k)}function I(k){return Z(k)?(e.consume(k),I):S(k)}function T(k){return k===47?(e.consume(k),S):k===58||k===95||ze(k)?(e.consume(k),D):Z(k)?(e.consume(k),T):S(k)}function D(k){return k===45||k===46||k===58||k===95||Me(k)?(e.consume(k),D):B(k)}function B(k){return k===61?(e.consume(k),_):Z(k)?(e.consume(k),B):T(k)}function _(k){return k===null||k===60||k===61||k===62||k===96?r(k):k===34||k===39?(e.consume(k),l=k,j):Z(k)?(e.consume(k),_):R(k)}function j(k){return k===l?(e.consume(k),l=null,U):k===null||J(k)?r(k):(e.consume(k),j)}function R(k){return k===null||k===34||k===39||k===47||k===60||k===61||k===62||k===96||le(k)?B(k):(e.consume(k),R)}function U(k){return k===47||k===62||Z(k)?T(k):r(k)}function S(k){return k===62?(e.consume(k),P):r(k)}function P(k){return k===null||J(k)?N(k):Z(k)?(e.consume(k),P):r(k)}function N(k){return k===45&&a===2?(e.consume(k),ee):k===60&&a===1?(e.consume(k),de):k===62&&a===4?(e.consume(k),ie):k===63&&a===3?(e.consume(k),x):k===93&&a===5?(e.consume(k),ue):J(k)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(Qm,_e,H)(k)):k===null||J(k)?(e.exit("htmlFlowData"),H(k)):(e.consume(k),N)}function H(k){return e.check(Zm,z,_e)(k)}function z(k){return e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),O}function O(k){return k===null||J(k)?H(k):(e.enter("htmlFlowData"),N(k))}function ee(k){return k===45?(e.consume(k),x):N(k)}function de(k){return k===47?(e.consume(k),s="",pe):N(k)}function pe(k){if(k===62){const Te=s.toLowerCase();return rl.includes(Te)?(e.consume(k),ie):N(k)}return ze(k)&&s.length<8?(e.consume(k),s+=String.fromCharCode(k),pe):N(k)}function ue(k){return k===93?(e.consume(k),x):N(k)}function x(k){return k===62?(e.consume(k),ie):k===45&&a===2?(e.consume(k),x):N(k)}function ie(k){return k===null||J(k)?(e.exit("htmlFlowData"),_e(k)):(e.consume(k),ie)}function _e(k){return e.exit("htmlFlow"),t(k)}}function rg(e,t,r){const n=this;return a;function a(s){return J(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i):r(s)}function i(s){return n.parser.lazy[n.now().line]?r(s):t(s)}}function ng(e,t,r){return n;function n(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(xr,t,r)}}const ag={name:"htmlText",tokenize:ig};function ig(e,t,r){const n=this;let a,i,s;return o;function o(x){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(x),l}function l(x){return x===33?(e.consume(x),u):x===47?(e.consume(x),B):x===63?(e.consume(x),T):ze(x)?(e.consume(x),R):r(x)}function u(x){return x===45?(e.consume(x),c):x===91?(e.consume(x),i=0,g):ze(x)?(e.consume(x),I):r(x)}function c(x){return x===45?(e.consume(x),h):r(x)}function d(x){return x===null?r(x):x===45?(e.consume(x),f):J(x)?(s=d,de(x)):(e.consume(x),d)}function f(x){return x===45?(e.consume(x),h):d(x)}function h(x){return x===62?ee(x):x===45?f(x):d(x)}function g(x){const ie="CDATA[";return x===ie.charCodeAt(i++)?(e.consume(x),i===ie.length?v:g):r(x)}function v(x){return x===null?r(x):x===93?(e.consume(x),w):J(x)?(s=v,de(x)):(e.consume(x),v)}function w(x){return x===93?(e.consume(x),b):v(x)}function b(x){return x===62?ee(x):x===93?(e.consume(x),b):v(x)}function I(x){return x===null||x===62?ee(x):J(x)?(s=I,de(x)):(e.consume(x),I)}function T(x){return x===null?r(x):x===63?(e.consume(x),D):J(x)?(s=T,de(x)):(e.consume(x),T)}function D(x){return x===62?ee(x):T(x)}function B(x){return ze(x)?(e.consume(x),_):r(x)}function _(x){return x===45||Me(x)?(e.consume(x),_):j(x)}function j(x){return J(x)?(s=j,de(x)):Z(x)?(e.consume(x),j):ee(x)}function R(x){return x===45||Me(x)?(e.consume(x),R):x===47||x===62||le(x)?U(x):r(x)}function U(x){return x===47?(e.consume(x),ee):x===58||x===95||ze(x)?(e.consume(x),S):J(x)?(s=U,de(x)):Z(x)?(e.consume(x),U):ee(x)}function S(x){return x===45||x===46||x===58||x===95||Me(x)?(e.consume(x),S):P(x)}function P(x){return x===61?(e.consume(x),N):J(x)?(s=P,de(x)):Z(x)?(e.consume(x),P):U(x)}function N(x){return x===null||x===60||x===61||x===62||x===96?r(x):x===34||x===39?(e.consume(x),a=x,H):J(x)?(s=N,de(x)):Z(x)?(e.consume(x),N):(e.consume(x),z)}function H(x){return x===a?(e.consume(x),a=void 0,O):x===null?r(x):J(x)?(s=H,de(x)):(e.consume(x),H)}function z(x){return x===null||x===34||x===39||x===60||x===61||x===96?r(x):x===47||x===62||le(x)?U(x):(e.consume(x),z)}function O(x){return x===47||x===62||le(x)?U(x):r(x)}function ee(x){return x===62?(e.consume(x),e.exit("htmlTextData"),e.exit("htmlText"),t):r(x)}function de(x){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),pe}function pe(x){return Z(x)?re(e,ue,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):ue(x)}function ue(x){return e.enter("htmlTextData"),s(x)}}const ka={name:"labelEnd",resolveAll:ug,resolveTo:cg,tokenize:dg},sg={tokenize:hg},og={tokenize:fg},lg={tokenize:pg};function ug(e){let t=-1;const r=[];for(;++t<e.length;){const n=e[t][1];if(r.push(e[t]),n.type==="labelImage"||n.type==="labelLink"||n.type==="labelEnd"){const a=n.type==="labelImage"?4:2;n.type="data",t+=a}}return e.length!==r.length&&Je(e,0,e.length,r),e}function cg(e,t){let r=e.length,n=0,a,i,s,o;for(;r--;)if(a=e[r][1],i){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[r][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(s){if(e[r][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(i=r,a.type!=="labelLink")){n=2;break}}else a.type==="labelEnd"&&(s=r);const l={type:e[i][1].type==="labelLink"?"link":"image",start:m({},e[i][1].start),end:m({},e[e.length-1][1].end)},u={type:"label",start:m({},e[i][1].start),end:m({},e[s][1].end)},c={type:"labelText",start:m({},e[i+n+2][1].end),end:m({},e[s-2][1].start)};return o=[["enter",l,t],["enter",u,t]],o=Xe(o,e.slice(i+1,i+n+3)),o=Xe(o,[["enter",c,t]]),o=Xe(o,sn(t.parser.constructs.insideSpan.null,e.slice(i+n+4,s-3),t)),o=Xe(o,[["exit",c,t],e[s-2],e[s-1],["exit",u,t]]),o=Xe(o,e.slice(s+1)),o=Xe(o,[["exit",l,t]]),Je(e,i,e.length,o),e}function dg(e,t,r){const n=this;let a=n.events.length,i,s;for(;a--;)if((n.events[a][1].type==="labelImage"||n.events[a][1].type==="labelLink")&&!n.events[a][1]._balanced){i=n.events[a][1];break}return o;function o(f){return i?i._inactive?d(f):(s=n.parser.defined.includes(nt(n.sliceSerialize({start:i.end,end:n.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(f),e.exit("labelMarker"),e.exit("labelEnd"),l):r(f)}function l(f){return f===40?e.attempt(sg,c,s?c:d)(f):f===91?e.attempt(og,c,s?u:d)(f):s?c(f):d(f)}function u(f){return e.attempt(lg,c,d)(f)}function c(f){return t(f)}function d(f){return i._balanced=!0,r(f)}}function hg(e,t,r){return n;function n(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),a}function a(d){return le(d)?kr(e,i)(d):i(d)}function i(d){return d===41?c(d):Zo(e,s,o,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function s(d){return le(d)?kr(e,l)(d):c(d)}function o(d){return r(d)}function l(d){return d===34||d===39||d===40?tl(e,u,r,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):c(d)}function u(d){return le(d)?kr(e,c)(d):c(d)}function c(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):r(d)}}function fg(e,t,r){const n=this;return a;function a(o){return el.call(n,e,i,s,"reference","referenceMarker","referenceString")(o)}function i(o){return n.parser.defined.includes(nt(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)))?t(o):r(o)}function s(o){return r(o)}}function pg(e,t,r){return n;function n(i){return e.enter("reference"),e.enter("referenceMarker"),e.consume(i),e.exit("referenceMarker"),a}function a(i){return i===93?(e.enter("referenceMarker"),e.consume(i),e.exit("referenceMarker"),e.exit("reference"),t):r(i)}}const mg={name:"labelStartImage",resolveAll:ka.resolveAll,tokenize:gg};function gg(e,t,r){const n=this;return a;function a(o){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(o),e.exit("labelImageMarker"),i}function i(o){return o===91?(e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelImage"),s):r(o)}function s(o){return o===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(o):t(o)}}const yg={name:"labelStartLink",resolveAll:ka.resolveAll,tokenize:bg};function bg(e,t,r){const n=this;return a;function a(s){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelLink"),i}function i(s){return s===94&&"_hiddenFootnoteSupport"in n.parser.constructs?r(s):t(s)}}const Sa={name:"lineEnding",tokenize:wg};function wg(e,t){return r;function r(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),re(e,t,"linePrefix")}}const on={name:"thematicBreak",tokenize:xg};function xg(e,t,r){let n=0,a;return i;function i(u){return e.enter("thematicBreak"),s(u)}function s(u){return a=u,o(u)}function o(u){return u===a?(e.enter("thematicBreakSequence"),l(u)):n>=3&&(u===null||J(u))?(e.exit("thematicBreak"),t(u)):r(u)}function l(u){return u===a?(e.consume(u),n++,l):(e.exit("thematicBreakSequence"),Z(u)?re(e,o,"whitespace")(u):o(u))}}const Ue={continuation:{tokenize:_g},exit:Cg,name:"list",tokenize:Sg},vg={partial:!0,tokenize:Ig},kg={partial:!0,tokenize:Tg};function Sg(e,t,r){const n=this,a=n.events[n.events.length-1];let i=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,s=0;return o;function o(h){const g=n.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!n.containerState.marker||h===n.containerState.marker:wa(h)){if(n.containerState.type||(n.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),h===42||h===45?e.check(on,r,u)(h):u(h);if(!n.interrupt||h===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(h)}return r(h)}function l(h){return wa(h)&&++s<10?(e.consume(h),l):(!n.interrupt||s<2)&&(n.containerState.marker?h===n.containerState.marker:h===41||h===46)?(e.exit("listItemValue"),u(h)):r(h)}function u(h){return e.enter("listItemMarker"),e.consume(h),e.exit("listItemMarker"),n.containerState.marker=n.containerState.marker||h,e.check(xr,n.interrupt?r:c,e.attempt(vg,f,d))}function c(h){return n.containerState.initialBlankLine=!0,i++,f(h)}function d(h){return Z(h)?(e.enter("listItemPrefixWhitespace"),e.consume(h),e.exit("listItemPrefixWhitespace"),f):r(h)}function f(h){return n.containerState.size=i+n.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(h)}}function _g(e,t,r){const n=this;return n.containerState._closeFlow=void 0,e.check(xr,a,i);function a(o){return n.containerState.furtherBlankLines=n.containerState.furtherBlankLines||n.containerState.initialBlankLine,re(e,t,"listItemIndent",n.containerState.size+1)(o)}function i(o){return n.containerState.furtherBlankLines||!Z(o)?(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,s(o)):(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,e.attempt(kg,t,s)(o))}function s(o){return n.containerState._closeFlow=!0,n.interrupt=void 0,re(e,e.attempt(Ue,t,r),"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}function Tg(e,t,r){const n=this;return re(e,a,"listItemIndent",n.containerState.size+1);function a(i){const s=n.events[n.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===n.containerState.size?t(i):r(i)}}function Cg(e){e.exit(this.containerState.type)}function Ig(e,t,r){const n=this;return re(e,a,"listItemPrefixWhitespace",n.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(i){const s=n.events[n.events.length-1];return!Z(i)&&s&&s[1].type==="listItemPrefixWhitespace"?t(i):r(i)}}const nl={name:"setextUnderline",resolveTo:Eg,tokenize:Ag};function Eg(e,t){let r=e.length,n,a,i;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){n=r;break}e[r][1].type==="paragraph"&&(a=r)}else e[r][1].type==="content"&&e.splice(r,1),!i&&e[r][1].type==="definition"&&(i=r);const s={type:"setextHeading",start:m({},e[n][1].start),end:m({},e[e.length-1][1].end)};return e[a][1].type="setextHeadingText",i?(e.splice(a,0,["enter",s,t]),e.splice(i+1,0,["exit",e[n][1],t]),e[n][1].end=m({},e[i][1].end)):e[n][1]=s,e.push(["exit",s,t]),e}function Ag(e,t,r){const n=this;let a;return i;function i(u){let c=n.events.length,d;for(;c--;)if(n.events[c][1].type!=="lineEnding"&&n.events[c][1].type!=="linePrefix"&&n.events[c][1].type!=="content"){d=n.events[c][1].type==="paragraph";break}return!n.parser.lazy[n.now().line]&&(n.interrupt||d)?(e.enter("setextHeadingLine"),a=u,s(u)):r(u)}function s(u){return e.enter("setextHeadingLineSequence"),o(u)}function o(u){return u===a?(e.consume(u),o):(e.exit("setextHeadingLineSequence"),Z(u)?re(e,l,"lineSuffix")(u):l(u))}function l(u){return u===null||J(u)?(e.exit("setextHeadingLine"),t(u)):r(u)}}const Mg={tokenize:Pg};function Pg(e){const t=this,r=e.attempt(xr,n,e.attempt(this.parser.constructs.flowInitial,a,re(e,e.attempt(this.parser.constructs.flow,a,e.attempt(Fm,a)),"linePrefix")));return r;function n(i){if(i===null){e.consume(i);return}return e.enter("lineEndingBlank"),e.consume(i),e.exit("lineEndingBlank"),t.currentConstruct=void 0,r}function a(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),t.currentConstruct=void 0,r}}const Ng={resolveAll:il()},Lg=al("string"),Dg=al("text");function al(e){return{resolveAll:il(e==="text"?Og:void 0),tokenize:t};function t(r){const n=this,a=this.parser.constructs[e],i=r.attempt(a,s,o);return s;function s(c){return u(c)?i(c):o(c)}function o(c){if(c===null){r.consume(c);return}return r.enter("data"),r.consume(c),l}function l(c){return u(c)?(r.exit("data"),i(c)):(r.consume(c),l)}function u(c){if(c===null)return!0;const d=a[c];let f=-1;if(d)for(;++f<d.length;){const h=d[f];if(!h.previous||h.previous.call(n,n.previous))return!0}return!1}}}function il(e){return t;function t(r,n){let a=-1,i;for(;++a<=r.length;)i===void 0?r[a]&&r[a][1].type==="data"&&(i=a,a++):(!r[a]||r[a][1].type!=="data")&&(a!==i+2&&(r[i][1].end=r[a-1][1].end,r.splice(i+2,a-i-2),a=i+2),i=void 0);return e?e(r,n):r}}function Og(e,t){let r=0;for(;++r<=e.length;)if((r===e.length||e[r][1].type==="lineEnding")&&e[r-1][1].type==="data"){const n=e[r-1][1],a=t.sliceStream(n);let i=a.length,s=-1,o=0,l;for(;i--;){const u=a[i];if(typeof u=="string"){for(s=u.length;u.charCodeAt(s-1)===32;)o++,s--;if(s)break;s=-1}else if(u===-2)l=!0,o++;else if(u!==-1){i++;break}}if(t._contentTypeTextTrailing&&r===e.length&&(o=0),o){const u={type:r===e.length||l||o<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:i?s:n.start._bufferIndex+s,_index:n.start._index+i,line:n.end.line,column:n.end.column-o,offset:n.end.offset-o},end:m({},n.end)};n.end=m({},u.start),n.start.offset===n.end.offset?Object.assign(n,u):(e.splice(r,0,["enter",u,t],["exit",u,t]),r+=2)}r++}return e}const Fg=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:{91:$m},disable:{null:[]},document:{42:Ue,43:Ue,45:Ue,48:Ue,49:Ue,50:Ue,51:Ue,52:Ue,53:Ue,54:Ue,55:Ue,56:Ue,57:Ue,62:Jo},flow:{35:Jm,42:on,45:[nl,on],60:Xm,61:nl,95:on,96:Xo,126:Xo},flowInitial:{[-2]:va,[-1]:va,32:va},insideSpan:{null:[xa,Ng]},string:{38:Yo,92:Ko},text:{[-5]:Sa,[-4]:Sa,[-3]:Sa,33:mg,38:Yo,42:xa,60:[ym,ag],91:yg,92:[Vm,Ko],93:ka,95:xa,96:Mm}},Symbol.toStringTag,{value:"Module"}));function Bg(e,t,r){let n={_bufferIndex:-1,_index:0,line:r&&r.line||1,column:r&&r.column||1,offset:r&&r.offset||0};const a={},i=[];let s=[],o=[];const l={attempt:j(B),check:j(_),consume:I,enter:T,exit:D,interrupt:j(_,{interrupt:!0})},u={code:null,containerState:{},defineSkip:v,events:[],now:g,parser:e,previous:null,sliceSerialize:f,sliceStream:h,write:d};let c=t.tokenize.call(u,l);return t.resolveAll&&i.push(t),u;function d(P){return s=Xe(s,P),w(),s[s.length-1]!==null?[]:(R(t,0),u.events=sn(i,u.events,u),u.events)}function f(P,N){return Rg(h(P),N)}function h(P){return zg(s,P)}function g(){const{_bufferIndex:P,_index:N,line:H,column:z,offset:O}=n;return{_bufferIndex:P,_index:N,line:H,column:z,offset:O}}function v(P){a[P.line]=P.column,S()}function w(){let P;for(;n._index<s.length;){const N=s[n._index];if(typeof N=="string")for(P=n._index,n._bufferIndex<0&&(n._bufferIndex=0);n._index===P&&n._bufferIndex<N.length;)b(N.charCodeAt(n._bufferIndex));else b(N)}}function b(P){c=c(P)}function I(P){J(P)?(n.line++,n.column=1,n.offset+=P===-3?2:1,S()):P!==-1&&(n.column++,n.offset++),n._bufferIndex<0?n._index++:(n._bufferIndex++,n._bufferIndex===s[n._index].length&&(n._bufferIndex=-1,n._index++)),u.previous=P}function T(P,N){const H=N||{};return H.type=P,H.start=g(),u.events.push(["enter",H,u]),o.push(H),H}function D(P){const N=o.pop();return N.end=g(),u.events.push(["exit",N,u]),N}function B(P,N){R(P,N.from)}function _(P,N){N.restore()}function j(P,N){return H;function H(z,O,ee){let de,pe,ue,x;return Array.isArray(z)?_e(z):"tokenize"in z?_e([z]):ie(z);function ie(we){return W;function W(ne){const me=ne!==null&&we[ne],be=ne!==null&&we.null,Ce=[...Array.isArray(me)?me:me?[me]:[],...Array.isArray(be)?be:be?[be]:[]];return _e(Ce)(ne)}}function _e(we){return de=we,pe=0,we.length===0?ee:k(we[pe])}function k(we){return W;function W(ne){return x=U(),ue=we,we.partial||(u.currentConstruct=we),we.name&&u.parser.constructs.disable.null.includes(we.name)?He():we.tokenize.call(N?Object.assign(Object.create(u),N):u,l,Te,He)(ne)}}function Te(we){return P(ue,x),O}function He(we){return x.restore(),++pe<de.length?k(de[pe]):ee}}}function R(P,N){P.resolveAll&&!i.includes(P)&&i.push(P),P.resolve&&Je(u.events,N,u.events.length-N,P.resolve(u.events.slice(N),u)),P.resolveTo&&(u.events=P.resolveTo(u.events,u))}function U(){const P=g(),N=u.previous,H=u.currentConstruct,z=u.events.length,O=Array.from(o);return{from:z,restore:ee};function ee(){n=P,u.previous=N,u.currentConstruct=H,u.events.length=z,o=O,S()}}function S(){n.line in a&&n.column<2&&(n.column=a[n.line],n.offset+=a[n.line]-1)}}function zg(e,t){const r=t.start._index,n=t.start._bufferIndex,a=t.end._index,i=t.end._bufferIndex;let s;if(r===a)s=[e[r].slice(n,i)];else{if(s=e.slice(r,a),n>-1){const o=s[0];typeof o=="string"?s[0]=o.slice(n):s.shift()}i>0&&s.push(e[a].slice(0,i))}return s}function Rg(e,t){let r=-1;const n=[];let a;for(;++r<e.length;){const i=e[r];let s;if(typeof i=="string")s=i;else switch(i){case-5:{s="\r";break}case-4:{s=`
|
|
9
9
|
`;break}case-3:{s=`\r
|
|
10
|
-
`;break}case-2:{s=t?" ":" ";break}case-1:{if(!t&&a)continue;s=" ";break}default:s=String.fromCharCode(i)}a=i===-2,n.push(s)}return n.join("")}function jg(e){const n={constructs:Ho([Fg,...(e||{}).extensions||[]]),content:a(cm),defined:[],document:a(hm),flow:a(Mg),lazy:{},string:a(Lg),text:a(Dg)};return n;function a(i){return s;function s(o){return Bg(n,i,o)}}}function $g(e){for(;!Qo(e););return e}const sl=/[\0\t\n\r]/g;function Ug(){let e=1,t="",r=!0,n;return a;function a(i,s,o){const l=[];let u,c,d,f,h;for(i=t+(typeof i=="string"?i.toString():new TextDecoder(s||void 0).decode(i)),d=0,t="",r&&(i.charCodeAt(0)===65279&&d++,r=void 0);d<i.length;){if(sl.lastIndex=d,u=sl.exec(i),f=u&&u.index!==void 0?u.index:i.length,h=i.charCodeAt(f),!u){t=i.slice(d);break}if(h===10&&d===f&&n)l.push(-3),n=void 0;else switch(n&&(l.push(-5),n=void 0),d<f&&(l.push(i.slice(d,f)),e+=f-d),h){case 0:{l.push(65533),e++;break}case 9:{for(c=Math.ceil(e/4)*4,l.push(-2);e++<c;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:n=!0,e=1}d=f+1}return o&&(n&&l.push(-5),t&&l.push(t),l.push(null)),l}}const Hg=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function qg(e){return e.replace(Hg,Vg)}function Vg(e,t,r){if(t)return t;if(r.charCodeAt(0)===35){const a=r.charCodeAt(1),i=a===120||a===88;return qo(r.slice(i?2:1),i?16:10)}return ba(r)||e}const ol={}.hasOwnProperty;function Wg(e,t,r){return typeof t!="string"&&(r=t,t=void 0),Jg(r)($g(jg(r).document().write(Ug()(e,t,!0))))}function Jg(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:i(ft),autolinkProtocol:U,autolinkEmail:U,atxHeading:i(st),blockQuote:i(be),characterEscape:U,characterReference:U,codeFenced:i(Ce),codeFencedFenceInfo:s,codeFencedFenceMeta:s,codeIndented:i(Ce,s),codeText:i(he,s),codeTextData:U,data:U,codeFlowValue:U,definition:i(Pe),definitionDestinationString:s,definitionLabelString:s,definitionTitleString:s,emphasis:i(it),hardBreakEscape:i(_t),hardBreakTrailing:i(_t),htmlFlow:i(Ie,s),htmlFlowData:U,htmlText:i(Ie,s),htmlTextData:U,image:i(ht),label:s,link:i(ft),listItem:i(Bt),listItemValue:f,listOrdered:i(Pr,d),listUnordered:i(Pr),paragraph:i(wn),reference:k,referenceString:s,resourceDestinationString:s,resourceTitleString:s,setextHeading:i(st),strong:i(ni),thematicBreak:i(Tt)},exit:{atxHeading:l(),atxHeadingSequence:B,autolink:l(),autolinkEmail:me,autolinkProtocol:ne,blockQuote:l(),characterEscapeValue:S,characterReferenceMarkerHexadecimal:He,characterReferenceMarkerNumeric:He,characterReferenceValue:we,characterReference:W,codeFenced:l(w),codeFencedFence:v,codeFencedFenceInfo:h,codeFencedFenceMeta:g,codeFlowValue:S,codeIndented:l(b),codeText:l(O),codeTextData:S,data:S,definition:l(),definitionDestinationString:D,definitionLabelString:I,definitionTitleString:T,emphasis:l(),hardBreakEscape:l(N),hardBreakTrailing:l(N),htmlFlow:l(H),htmlFlowData:S,htmlText:l(z),htmlTextData:S,image:l(de),label:ue,labelText:pe,lineEnding:P,link:l(ee),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:Te,resourceDestinationString:x,resourceTitleString:ie,resource:_e,setextHeading:l(R),setextHeadingLineSequence:j,setextHeadingText:_,strong:l(),thematicBreak:l()}};ll(t,(e||{}).mdastExtensions||[]);const r={};return n;function n(A){let F={type:"root",children:[]};const K={stack:[F],tokenStack:[],config:t,enter:o,exit:u,buffer:s,resume:c,data:r},Q=[];let se=-1;for(;++se<A.length;)if(A[se][1].type==="listOrdered"||A[se][1].type==="listUnordered")if(A[se][0]==="enter")Q.push(se);else{const Ne=Q.pop();se=a(A,Ne,se)}for(se=-1;++se<A.length;){const Ne=t[A[se][0]];ol.call(Ne,A[se][1].type)&&Ne[A[se][1].type].call(Object.assign({sliceSerialize:A[se][2].sliceSerialize},K),A[se][1])}if(K.tokenStack.length>0){const Ne=K.tokenStack[K.tokenStack.length-1];(Ne[1]||ul).call(K,void 0,Ne[0])}for(F.position={start:St(A.length>0?A[0][1].start:{line:1,column:1,offset:0}),end:St(A.length>0?A[A.length-2][1].end:{line:1,column:1,offset:0})},se=-1;++se<t.transforms.length;)F=t.transforms[se](F)||F;return F}function a(A,F,K){let Q=F-1,se=-1,Ne=!1,ot,pt,q,ae;for(;++Q<=K;){const G=A[Q];switch(G[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{G[0]==="enter"?se++:se--,ae=void 0;break}case"lineEndingBlank":{G[0]==="enter"&&(ot&&!ae&&!se&&!q&&(q=Q),ae=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:ae=void 0}if(!se&&G[0]==="enter"&&G[1].type==="listItemPrefix"||se===-1&&G[0]==="exit"&&(G[1].type==="listUnordered"||G[1].type==="listOrdered")){if(ot){let Ke=Q;for(pt=void 0;Ke--;){const je=A[Ke];if(je[1].type==="lineEnding"||je[1].type==="lineEndingBlank"){if(je[0]==="exit")continue;pt&&(A[pt][1].type="lineEndingBlank",Ne=!0),je[1].type="lineEnding",pt=Ke}else if(!(je[1].type==="linePrefix"||je[1].type==="blockQuotePrefix"||je[1].type==="blockQuotePrefixWhitespace"||je[1].type==="blockQuoteMarker"||je[1].type==="listItemIndent"))break}q&&(!pt||q<pt)&&(ot._spread=!0),ot.end=Object.assign({},pt?A[pt][1].start:G[1].end),A.splice(pt||Q,0,["exit",ot,G[2]]),Q++,K++}if(G[1].type==="listItemPrefix"){const Ke={type:"listItem",_spread:!1,start:Object.assign({},G[1].start),end:void 0};ot=Ke,A.splice(Q,0,["enter",Ke,G[2]]),Q++,K++,q=void 0,ae=!0}}}return A[F][1]._spread=Ne,K}function i(A,F){return K;function K(Q){o.call(this,A(Q),Q),F&&F.call(this,Q)}}function s(){this.stack.push({type:"fragment",children:[]})}function o(A,F,K){this.stack[this.stack.length-1].children.push(A),this.stack.push(A),this.tokenStack.push([F,K||void 0]),A.position={start:St(F.start),end:void 0}}function l(A){return F;function F(K){A&&A.call(this,K),u.call(this,K)}}function u(A,F){const K=this.stack.pop(),Q=this.tokenStack.pop();if(Q)Q[0].type!==A.type&&(F?F.call(this,A,Q[0]):(Q[1]||ul).call(this,A,Q[0]));else throw new Error("Cannot close `"+A.type+"` ("+br({start:A.start,end:A.end})+"): it’s not open");K.position.end=St(A.end)}function c(){return ya(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(A){if(this.data.expectingFirstListItemValue){const F=this.stack[this.stack.length-2];F.start=Number.parseInt(this.sliceSerialize(A),10),this.data.expectingFirstListItemValue=void 0}}function h(){const A=this.resume(),F=this.stack[this.stack.length-1];F.lang=A}function g(){const A=this.resume(),F=this.stack[this.stack.length-1];F.meta=A}function v(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function w(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function b(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A.replace(/(\r?\n|\r)$/g,"")}function I(A){const F=this.resume(),K=this.stack[this.stack.length-1];K.label=F,K.identifier=nt(this.sliceSerialize(A)).toLowerCase()}function T(){const A=this.resume(),F=this.stack[this.stack.length-1];F.title=A}function D(){const A=this.resume(),F=this.stack[this.stack.length-1];F.url=A}function B(A){const F=this.stack[this.stack.length-1];if(!F.depth){const K=this.sliceSerialize(A).length;F.depth=K}}function _(){this.data.setextHeadingSlurpLineEnding=!0}function j(A){const F=this.stack[this.stack.length-1];F.depth=this.sliceSerialize(A).codePointAt(0)===61?1:2}function R(){this.data.setextHeadingSlurpLineEnding=void 0}function U(A){const K=this.stack[this.stack.length-1].children;let Q=K[K.length-1];(!Q||Q.type!=="text")&&(Q=xn(),Q.position={start:St(A.start),end:void 0},K.push(Q)),this.stack.push(Q)}function S(A){const F=this.stack.pop();F.value+=this.sliceSerialize(A),F.position.end=St(A.end)}function P(A){const F=this.stack[this.stack.length-1];if(this.data.atHardBreak){const K=F.children[F.children.length-1];K.position.end=St(A.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(F.type)&&(U.call(this,A),S.call(this,A))}function N(){this.data.atHardBreak=!0}function H(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function z(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function O(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function ee(){const A=this.stack[this.stack.length-1];if(this.data.inReference){const F=this.data.referenceType||"shortcut";A.type+="Reference",A.referenceType=F,delete A.url,delete A.title}else delete A.identifier,delete A.label;this.data.referenceType=void 0}function de(){const A=this.stack[this.stack.length-1];if(this.data.inReference){const F=this.data.referenceType||"shortcut";A.type+="Reference",A.referenceType=F,delete A.url,delete A.title}else delete A.identifier,delete A.label;this.data.referenceType=void 0}function pe(A){const F=this.sliceSerialize(A),K=this.stack[this.stack.length-2];K.label=qg(F),K.identifier=nt(F).toLowerCase()}function ue(){const A=this.stack[this.stack.length-1],F=this.resume(),K=this.stack[this.stack.length-1];if(this.data.inReference=!0,K.type==="link"){const Q=A.children;K.children=Q}else K.alt=F}function x(){const A=this.resume(),F=this.stack[this.stack.length-1];F.url=A}function ie(){const A=this.resume(),F=this.stack[this.stack.length-1];F.title=A}function _e(){this.data.inReference=void 0}function k(){this.data.referenceType="collapsed"}function Te(A){const F=this.resume(),K=this.stack[this.stack.length-1];K.label=F,K.identifier=nt(this.sliceSerialize(A)).toLowerCase(),this.data.referenceType="full"}function He(A){this.data.characterReferenceType=A.type}function we(A){const F=this.sliceSerialize(A),K=this.data.characterReferenceType;let Q;K?(Q=qo(F,K==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Q=ba(F);const se=this.stack[this.stack.length-1];se.value+=Q}function W(A){const F=this.stack.pop();F.position.end=St(A.end)}function ne(A){S.call(this,A);const F=this.stack[this.stack.length-1];F.url=this.sliceSerialize(A)}function me(A){S.call(this,A);const F=this.stack[this.stack.length-1];F.url="mailto:"+this.sliceSerialize(A)}function be(){return{type:"blockquote",children:[]}}function Ce(){return{type:"code",lang:null,meta:null,value:""}}function he(){return{type:"inlineCode",value:""}}function Pe(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function it(){return{type:"emphasis",children:[]}}function st(){return{type:"heading",depth:0,children:[]}}function _t(){return{type:"break"}}function Ie(){return{type:"html",value:""}}function ht(){return{type:"image",title:null,url:"",alt:null}}function ft(){return{type:"link",title:null,url:"",children:[]}}function Pr(A){return{type:"list",ordered:A.type==="listOrdered",start:null,spread:A._spread,children:[]}}function Bt(A){return{type:"listItem",spread:A._spread,checked:null,children:[]}}function wn(){return{type:"paragraph",children:[]}}function ni(){return{type:"strong",children:[]}}function xn(){return{type:"text",value:""}}function Tt(){return{type:"thematicBreak"}}}function St(e){return{line:e.line,column:e.column,offset:e.offset}}function ll(e,t){let r=-1;for(;++r<t.length;){const n=t[r];Array.isArray(n)?ll(e,n):Kg(e,n)}}function Kg(e,t){let r;for(r in t)if(ol.call(t,r))switch(r){case"canContainEols":{const n=t[r];n&&e[r].push(...n);break}case"transforms":{const n=t[r];n&&e[r].push(...n);break}case"enter":case"exit":{const n=t[r];n&&Object.assign(e[r],n);break}}}function ul(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+br({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+br({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+br({start:t.start,end:t.end})+") is still open")}function Yg(e){const t=this;t.parser=r;function r(n){return Wg(n,E(m(m({},t.data("settings")),e),{extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]}))}}function Gg(e,t){const r={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,r),e.applyData(t,r)}function Xg(e,t){const r={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,r),[e.applyData(t,r),{type:"text",value:`
|
|
10
|
+
`;break}case-2:{s=t?" ":" ";break}case-1:{if(!t&&a)continue;s=" ";break}default:s=String.fromCharCode(i)}a=i===-2,n.push(s)}return n.join("")}function jg(e){const n={constructs:Ho([Fg,...(e||{}).extensions||[]]),content:a(cm),defined:[],document:a(hm),flow:a(Mg),lazy:{},string:a(Lg),text:a(Dg)};return n;function a(i){return s;function s(o){return Bg(n,i,o)}}}function $g(e){for(;!Qo(e););return e}const sl=/[\0\t\n\r]/g;function Ug(){let e=1,t="",r=!0,n;return a;function a(i,s,o){const l=[];let u,c,d,f,h;for(i=t+(typeof i=="string"?i.toString():new TextDecoder(s||void 0).decode(i)),d=0,t="",r&&(i.charCodeAt(0)===65279&&d++,r=void 0);d<i.length;){if(sl.lastIndex=d,u=sl.exec(i),f=u&&u.index!==void 0?u.index:i.length,h=i.charCodeAt(f),!u){t=i.slice(d);break}if(h===10&&d===f&&n)l.push(-3),n=void 0;else switch(n&&(l.push(-5),n=void 0),d<f&&(l.push(i.slice(d,f)),e+=f-d),h){case 0:{l.push(65533),e++;break}case 9:{for(c=Math.ceil(e/4)*4,l.push(-2);e++<c;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:n=!0,e=1}d=f+1}return o&&(n&&l.push(-5),t&&l.push(t),l.push(null)),l}}const Hg=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function qg(e){return e.replace(Hg,Vg)}function Vg(e,t,r){if(t)return t;if(r.charCodeAt(0)===35){const a=r.charCodeAt(1),i=a===120||a===88;return qo(r.slice(i?2:1),i?16:10)}return ba(r)||e}const ol={}.hasOwnProperty;function Wg(e,t,r){return typeof t!="string"&&(r=t,t=void 0),Jg(r)($g(jg(r).document().write(Ug()(e,t,!0))))}function Jg(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:i(ft),autolinkProtocol:U,autolinkEmail:U,atxHeading:i(st),blockQuote:i(be),characterEscape:U,characterReference:U,codeFenced:i(Ce),codeFencedFenceInfo:s,codeFencedFenceMeta:s,codeIndented:i(Ce,s),codeText:i(he,s),codeTextData:U,data:U,codeFlowValue:U,definition:i(Pe),definitionDestinationString:s,definitionLabelString:s,definitionTitleString:s,emphasis:i(it),hardBreakEscape:i(Tt),hardBreakTrailing:i(Tt),htmlFlow:i(Ie,s),htmlFlowData:U,htmlText:i(Ie,s),htmlTextData:U,image:i(ht),label:s,link:i(ft),listItem:i(Bt),listItemValue:f,listOrdered:i(Pr,d),listUnordered:i(Pr),paragraph:i(wn),reference:k,referenceString:s,resourceDestinationString:s,resourceTitleString:s,setextHeading:i(st),strong:i(ni),thematicBreak:i(Ct)},exit:{atxHeading:l(),atxHeadingSequence:B,autolink:l(),autolinkEmail:me,autolinkProtocol:ne,blockQuote:l(),characterEscapeValue:S,characterReferenceMarkerHexadecimal:He,characterReferenceMarkerNumeric:He,characterReferenceValue:we,characterReference:W,codeFenced:l(w),codeFencedFence:v,codeFencedFenceInfo:h,codeFencedFenceMeta:g,codeFlowValue:S,codeIndented:l(b),codeText:l(O),codeTextData:S,data:S,definition:l(),definitionDestinationString:D,definitionLabelString:I,definitionTitleString:T,emphasis:l(),hardBreakEscape:l(N),hardBreakTrailing:l(N),htmlFlow:l(H),htmlFlowData:S,htmlText:l(z),htmlTextData:S,image:l(de),label:ue,labelText:pe,lineEnding:P,link:l(ee),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:Te,resourceDestinationString:x,resourceTitleString:ie,resource:_e,setextHeading:l(R),setextHeadingLineSequence:j,setextHeadingText:_,strong:l(),thematicBreak:l()}};ll(t,(e||{}).mdastExtensions||[]);const r={};return n;function n(A){let F={type:"root",children:[]};const K={stack:[F],tokenStack:[],config:t,enter:o,exit:u,buffer:s,resume:c,data:r},Q=[];let se=-1;for(;++se<A.length;)if(A[se][1].type==="listOrdered"||A[se][1].type==="listUnordered")if(A[se][0]==="enter")Q.push(se);else{const Ne=Q.pop();se=a(A,Ne,se)}for(se=-1;++se<A.length;){const Ne=t[A[se][0]];ol.call(Ne,A[se][1].type)&&Ne[A[se][1].type].call(Object.assign({sliceSerialize:A[se][2].sliceSerialize},K),A[se][1])}if(K.tokenStack.length>0){const Ne=K.tokenStack[K.tokenStack.length-1];(Ne[1]||ul).call(K,void 0,Ne[0])}for(F.position={start:_t(A.length>0?A[0][1].start:{line:1,column:1,offset:0}),end:_t(A.length>0?A[A.length-2][1].end:{line:1,column:1,offset:0})},se=-1;++se<t.transforms.length;)F=t.transforms[se](F)||F;return F}function a(A,F,K){let Q=F-1,se=-1,Ne=!1,ot,pt,q,ae;for(;++Q<=K;){const G=A[Q];switch(G[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{G[0]==="enter"?se++:se--,ae=void 0;break}case"lineEndingBlank":{G[0]==="enter"&&(ot&&!ae&&!se&&!q&&(q=Q),ae=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:ae=void 0}if(!se&&G[0]==="enter"&&G[1].type==="listItemPrefix"||se===-1&&G[0]==="exit"&&(G[1].type==="listUnordered"||G[1].type==="listOrdered")){if(ot){let Ke=Q;for(pt=void 0;Ke--;){const je=A[Ke];if(je[1].type==="lineEnding"||je[1].type==="lineEndingBlank"){if(je[0]==="exit")continue;pt&&(A[pt][1].type="lineEndingBlank",Ne=!0),je[1].type="lineEnding",pt=Ke}else if(!(je[1].type==="linePrefix"||je[1].type==="blockQuotePrefix"||je[1].type==="blockQuotePrefixWhitespace"||je[1].type==="blockQuoteMarker"||je[1].type==="listItemIndent"))break}q&&(!pt||q<pt)&&(ot._spread=!0),ot.end=Object.assign({},pt?A[pt][1].start:G[1].end),A.splice(pt||Q,0,["exit",ot,G[2]]),Q++,K++}if(G[1].type==="listItemPrefix"){const Ke={type:"listItem",_spread:!1,start:Object.assign({},G[1].start),end:void 0};ot=Ke,A.splice(Q,0,["enter",Ke,G[2]]),Q++,K++,q=void 0,ae=!0}}}return A[F][1]._spread=Ne,K}function i(A,F){return K;function K(Q){o.call(this,A(Q),Q),F&&F.call(this,Q)}}function s(){this.stack.push({type:"fragment",children:[]})}function o(A,F,K){this.stack[this.stack.length-1].children.push(A),this.stack.push(A),this.tokenStack.push([F,K||void 0]),A.position={start:_t(F.start),end:void 0}}function l(A){return F;function F(K){A&&A.call(this,K),u.call(this,K)}}function u(A,F){const K=this.stack.pop(),Q=this.tokenStack.pop();if(Q)Q[0].type!==A.type&&(F?F.call(this,A,Q[0]):(Q[1]||ul).call(this,A,Q[0]));else throw new Error("Cannot close `"+A.type+"` ("+br({start:A.start,end:A.end})+"): it’s not open");K.position.end=_t(A.end)}function c(){return ya(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(A){if(this.data.expectingFirstListItemValue){const F=this.stack[this.stack.length-2];F.start=Number.parseInt(this.sliceSerialize(A),10),this.data.expectingFirstListItemValue=void 0}}function h(){const A=this.resume(),F=this.stack[this.stack.length-1];F.lang=A}function g(){const A=this.resume(),F=this.stack[this.stack.length-1];F.meta=A}function v(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function w(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function b(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A.replace(/(\r?\n|\r)$/g,"")}function I(A){const F=this.resume(),K=this.stack[this.stack.length-1];K.label=F,K.identifier=nt(this.sliceSerialize(A)).toLowerCase()}function T(){const A=this.resume(),F=this.stack[this.stack.length-1];F.title=A}function D(){const A=this.resume(),F=this.stack[this.stack.length-1];F.url=A}function B(A){const F=this.stack[this.stack.length-1];if(!F.depth){const K=this.sliceSerialize(A).length;F.depth=K}}function _(){this.data.setextHeadingSlurpLineEnding=!0}function j(A){const F=this.stack[this.stack.length-1];F.depth=this.sliceSerialize(A).codePointAt(0)===61?1:2}function R(){this.data.setextHeadingSlurpLineEnding=void 0}function U(A){const K=this.stack[this.stack.length-1].children;let Q=K[K.length-1];(!Q||Q.type!=="text")&&(Q=xn(),Q.position={start:_t(A.start),end:void 0},K.push(Q)),this.stack.push(Q)}function S(A){const F=this.stack.pop();F.value+=this.sliceSerialize(A),F.position.end=_t(A.end)}function P(A){const F=this.stack[this.stack.length-1];if(this.data.atHardBreak){const K=F.children[F.children.length-1];K.position.end=_t(A.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(F.type)&&(U.call(this,A),S.call(this,A))}function N(){this.data.atHardBreak=!0}function H(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function z(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function O(){const A=this.resume(),F=this.stack[this.stack.length-1];F.value=A}function ee(){const A=this.stack[this.stack.length-1];if(this.data.inReference){const F=this.data.referenceType||"shortcut";A.type+="Reference",A.referenceType=F,delete A.url,delete A.title}else delete A.identifier,delete A.label;this.data.referenceType=void 0}function de(){const A=this.stack[this.stack.length-1];if(this.data.inReference){const F=this.data.referenceType||"shortcut";A.type+="Reference",A.referenceType=F,delete A.url,delete A.title}else delete A.identifier,delete A.label;this.data.referenceType=void 0}function pe(A){const F=this.sliceSerialize(A),K=this.stack[this.stack.length-2];K.label=qg(F),K.identifier=nt(F).toLowerCase()}function ue(){const A=this.stack[this.stack.length-1],F=this.resume(),K=this.stack[this.stack.length-1];if(this.data.inReference=!0,K.type==="link"){const Q=A.children;K.children=Q}else K.alt=F}function x(){const A=this.resume(),F=this.stack[this.stack.length-1];F.url=A}function ie(){const A=this.resume(),F=this.stack[this.stack.length-1];F.title=A}function _e(){this.data.inReference=void 0}function k(){this.data.referenceType="collapsed"}function Te(A){const F=this.resume(),K=this.stack[this.stack.length-1];K.label=F,K.identifier=nt(this.sliceSerialize(A)).toLowerCase(),this.data.referenceType="full"}function He(A){this.data.characterReferenceType=A.type}function we(A){const F=this.sliceSerialize(A),K=this.data.characterReferenceType;let Q;K?(Q=qo(F,K==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Q=ba(F);const se=this.stack[this.stack.length-1];se.value+=Q}function W(A){const F=this.stack.pop();F.position.end=_t(A.end)}function ne(A){S.call(this,A);const F=this.stack[this.stack.length-1];F.url=this.sliceSerialize(A)}function me(A){S.call(this,A);const F=this.stack[this.stack.length-1];F.url="mailto:"+this.sliceSerialize(A)}function be(){return{type:"blockquote",children:[]}}function Ce(){return{type:"code",lang:null,meta:null,value:""}}function he(){return{type:"inlineCode",value:""}}function Pe(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function it(){return{type:"emphasis",children:[]}}function st(){return{type:"heading",depth:0,children:[]}}function Tt(){return{type:"break"}}function Ie(){return{type:"html",value:""}}function ht(){return{type:"image",title:null,url:"",alt:null}}function ft(){return{type:"link",title:null,url:"",children:[]}}function Pr(A){return{type:"list",ordered:A.type==="listOrdered",start:null,spread:A._spread,children:[]}}function Bt(A){return{type:"listItem",spread:A._spread,checked:null,children:[]}}function wn(){return{type:"paragraph",children:[]}}function ni(){return{type:"strong",children:[]}}function xn(){return{type:"text",value:""}}function Ct(){return{type:"thematicBreak"}}}function _t(e){return{line:e.line,column:e.column,offset:e.offset}}function ll(e,t){let r=-1;for(;++r<t.length;){const n=t[r];Array.isArray(n)?ll(e,n):Kg(e,n)}}function Kg(e,t){let r;for(r in t)if(ol.call(t,r))switch(r){case"canContainEols":{const n=t[r];n&&e[r].push(...n);break}case"transforms":{const n=t[r];n&&e[r].push(...n);break}case"enter":case"exit":{const n=t[r];n&&Object.assign(e[r],n);break}}}function ul(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+br({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+br({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+br({start:t.start,end:t.end})+") is still open")}function Yg(e){const t=this;t.parser=r;function r(n){return Wg(n,E(m(m({},t.data("settings")),e),{extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]}))}}function Gg(e,t){const r={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,r),e.applyData(t,r)}function Xg(e,t){const r={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,r),[e.applyData(t,r),{type:"text",value:`
|
|
11
11
|
`}]}function Qg(e,t){const r=t.value?t.value+`
|
|
12
12
|
`:"",n={},a=t.lang?t.lang.split(/\s+/):[];a.length>0&&(n.className=["language-"+a[0]]);let i={type:"element",tagName:"code",properties:n,children:[{type:"text",value:r}]};return t.meta&&(i.data={meta:t.meta}),e.patch(t,i),i=e.applyData(t,i),i={type:"element",tagName:"pre",properties:{},children:[i]},e.patch(t,i),i}function Zg(e,t){const r={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function ey(e,t){const r={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function ty(e,t){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=String(t.identifier).toUpperCase(),a=Gt(n.toLowerCase()),i=e.footnoteOrder.indexOf(n);let s,o=e.footnoteCounts.get(n);o===void 0?(o=0,e.footnoteOrder.push(n),s=e.footnoteOrder.length):s=i+1,o+=1,e.footnoteCounts.set(n,o);const l={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+a,id:r+"fnref-"+a+(o>1?"-"+o:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(s)}]};e.patch(t,l);const u={type:"element",tagName:"sup",properties:{},children:[l]};return e.patch(t,u),e.applyData(t,u)}function ry(e,t){const r={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function ny(e,t){if(e.options.allowDangerousHtml){const r={type:"raw",value:t.value};return e.patch(t,r),e.applyData(t,r)}}function cl(e,t){const r=t.referenceType;let n="]";if(r==="collapsed"?n+="[]":r==="full"&&(n+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+n}];const a=e.all(t),i=a[0];i&&i.type==="text"?i.value="["+i.value:a.unshift({type:"text",value:"["});const s=a[a.length-1];return s&&s.type==="text"?s.value+=n:a.push({type:"text",value:n}),a}function ay(e,t){const r=String(t.identifier).toUpperCase(),n=e.definitionById.get(r);if(!n)return cl(e,t);const a={src:Gt(n.url||""),alt:t.alt};n.title!==null&&n.title!==void 0&&(a.title=n.title);const i={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,i),e.applyData(t,i)}function iy(e,t){const r={src:Gt(t.url)};t.alt!==null&&t.alt!==void 0&&(r.alt=t.alt),t.title!==null&&t.title!==void 0&&(r.title=t.title);const n={type:"element",tagName:"img",properties:r,children:[]};return e.patch(t,n),e.applyData(t,n)}function sy(e,t){const r={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,r);const n={type:"element",tagName:"code",properties:{},children:[r]};return e.patch(t,n),e.applyData(t,n)}function oy(e,t){const r=String(t.identifier).toUpperCase(),n=e.definitionById.get(r);if(!n)return cl(e,t);const a={href:Gt(n.url||"")};n.title!==null&&n.title!==void 0&&(a.title=n.title);const i={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,i),e.applyData(t,i)}function ly(e,t){const r={href:Gt(t.url)};t.title!==null&&t.title!==void 0&&(r.title=t.title);const n={type:"element",tagName:"a",properties:r,children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function uy(e,t,r){const n=e.all(t),a=r?cy(r):dl(t),i={},s=[];if(typeof t.checked=="boolean"){const c=n[0];let d;c&&c.type==="element"&&c.tagName==="p"?d=c:(d={type:"element",tagName:"p",properties:{},children:[]},n.unshift(d)),d.children.length>0&&d.children.unshift({type:"text",value:" "}),d.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),i.className=["task-list-item"]}let o=-1;for(;++o<n.length;){const c=n[o];(a||o!==0||c.type!=="element"||c.tagName!=="p")&&s.push({type:"text",value:`
|
|
13
13
|
`}),c.type==="element"&&c.tagName==="p"&&!a?s.push(...c.children):s.push(c)}const l=n[n.length-1];l&&(a||l.type!=="element"||l.tagName!=="p")&&s.push({type:"text",value:`
|
|
@@ -17,7 +17,7 @@ ${n.system}`:r.system=n.system),n.tools)for(const[i,s]of Object.entries(n.tools)
|
|
|
17
17
|
`});++n<e.length;)n&&r.push({type:"text",value:`
|
|
18
18
|
`}),r.push(e[n]);return t&&e.length>0&&r.push({type:"text",value:`
|
|
19
19
|
`}),r}function Sl(e){let t=0,r=e.charCodeAt(t);for(;r===9||r===32;)t++,r=e.charCodeAt(t);return e.slice(t)}function _l(e,t){const r=zy(e,t),n=r.one(e,void 0),a=Ey(r),i=Array.isArray(n)?{type:"root",children:n}:n||{type:"root",children:[]};return a&&i.children.push({type:"text",value:`
|
|
20
|
-
`},a),i}function Hy(e,t){return e&&"run"in e?function(r,n){return M(this,null,function*(){const a=_l(r,m({file:n},t));yield e.run(a,n)})}:function(r,n){return _l(r,m({file:n},e||t))}}function Tl(e){if(e)throw e}var Pa,Cl;function qy(){if(Cl)return Pa;Cl=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=function(u){return typeof Array.isArray=="function"?Array.isArray(u):t.call(u)==="[object Array]"},i=function(u){if(!u||t.call(u)!=="[object Object]")return!1;var c=e.call(u,"constructor"),d=u.constructor&&u.constructor.prototype&&e.call(u.constructor.prototype,"isPrototypeOf");if(u.constructor&&!c&&!d)return!1;var f;for(f in u);return typeof f=="undefined"||e.call(u,f)},s=function(u,c){r&&c.name==="__proto__"?r(u,c.name,{enumerable:!0,configurable:!0,value:c.newValue,writable:!0}):u[c.name]=c.newValue},o=function(u,c){if(c==="__proto__")if(e.call(u,c)){if(n)return n(u,c).value}else return;return u[c]};return Pa=function l(){var u,c,d,f,h,g,v=arguments[0],w=1,b=arguments.length,I=!1;for(typeof v=="boolean"&&(I=v,v=arguments[1]||{},w=2),(v==null||typeof v!="object"&&typeof v!="function")&&(v={});w<b;++w)if(u=arguments[w],u!=null)for(c in u)d=o(v,c),f=o(u,c),v!==f&&(I&&f&&(i(f)||(h=a(f)))?(h?(h=!1,g=d&&a(d)?d:[]):g=d&&i(d)?d:{},s(v,{name:c,newValue:l(I,g,f)})):typeof f!="undefined"&&s(v,{name:c,newValue:f}));return v},Pa}var Vy=qy();const Na=Lr(Vy);function La(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Wy(){const e=[],t={run:r,use:n};return t;function r(...a){let i=-1;const s=a.pop();if(typeof s!="function")throw new TypeError("Expected function as last argument, not "+s);o(null,...a);function o(l,...u){const c=e[++i];let d=-1;if(l){s(l);return}for(;++d<a.length;)(u[d]===null||u[d]===void 0)&&(u[d]=a[d]);a=u,c?Jy(c,o)(...u):s(null,...u)}}function n(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function Jy(e,t){let r;return n;function n(...s){const o=e.length>s.length;let l;o&&s.push(a);try{l=e.apply(this,s)}catch(u){const c=u;if(o&&r)throw c;return a(c)}o||(l&&l.then&&typeof l.then=="function"?l.then(i,a):l instanceof Error?a(l):i(l))}function a(s,...o){r||(r=!0,t(s,...o))}function i(s){a(null,s)}}const ct={basename:Ky,dirname:Yy,extname:Gy,join:Xy,sep:"/"};function Ky(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Tr(e);let r=0,n=-1,a=e.length,i;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(i){r=a+1;break}}else n<0&&(i=!0,n=a+1);return n<0?"":e.slice(r,n)}if(t===e)return"";let s=-1,o=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(i){r=a+1;break}}else s<0&&(i=!0,s=a+1),o>-1&&(e.codePointAt(a)===t.codePointAt(o--)?o<0&&(n=a):(o=-1,n=s));return r===n?n=s:n<0&&(n=e.length),e.slice(r,n)}function Yy(e){if(Tr(e),e.length===0)return".";let t=-1,r=e.length,n;for(;--r;)if(e.codePointAt(r)===47){if(n){t=r;break}}else n||(n=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function Gy(e){Tr(e);let t=e.length,r=-1,n=0,a=-1,i=0,s;for(;t--;){const o=e.codePointAt(t);if(o===47){if(s){n=t+1;break}continue}r<0&&(s=!0,r=t+1),o===46?a<0?a=t:i!==1&&(i=1):a>-1&&(i=-1)}return a<0||r<0||i===0||i===1&&a===r-1&&a===n+1?"":e.slice(a,r)}function Xy(...e){let t=-1,r;for(;++t<e.length;)Tr(e[t]),e[t]&&(r=r===void 0?e[t]:r+"/"+e[t]);return r===void 0?".":Qy(r)}function Qy(e){Tr(e);const t=e.codePointAt(0)===47;let r=Zy(e,!t);return r.length===0&&!t&&(r="."),r.length>0&&e.codePointAt(e.length-1)===47&&(r+="/"),t?"/"+r:r}function Zy(e,t){let r="",n=0,a=-1,i=0,s=-1,o,l;for(;++s<=e.length;){if(s<e.length)o=e.codePointAt(s);else{if(o===47)break;o=47}if(o===47){if(!(a===s-1||i===1))if(a!==s-1&&i===2){if(r.length<2||n!==2||r.codePointAt(r.length-1)!==46||r.codePointAt(r.length-2)!==46){if(r.length>2){if(l=r.lastIndexOf("/"),l!==r.length-1){l<0?(r="",n=0):(r=r.slice(0,l),n=r.length-1-r.lastIndexOf("/")),a=s,i=0;continue}}else if(r.length>0){r="",n=0,a=s,i=0;continue}}t&&(r=r.length>0?r+"/..":"..",n=2)}else r.length>0?r+="/"+e.slice(a+1,s):r=e.slice(a+1,s),n=s-a-1;a=s,i=0}else o===46&&i>-1?i++:i=-1}return r}function Tr(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const eb={cwd:tb};function tb(){return"/"}function Da(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function rb(e){if(typeof e=="string")e=new URL(e);else if(!Da(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return nb(e)}function nb(e){if(e.hostname!==""){const n=new TypeError('File URL host must be "localhost" or empty on darwin');throw n.code="ERR_INVALID_FILE_URL_HOST",n}const t=e.pathname;let r=-1;for(;++r<t.length;)if(t.codePointAt(r)===37&&t.codePointAt(r+1)===50){const n=t.codePointAt(r+2);if(n===70||n===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(t)}const Oa=["history","path","basename","stem","extname","dirname"];class Il{constructor(t){let r;t?Da(t)?r={path:t}:typeof t=="string"||ab(t)?r={value:t}:r=t:r={},this.cwd="cwd"in r?"":eb.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let n=-1;for(;++n<Oa.length;){const i=Oa[n];i in r&&r[i]!==void 0&&r[i]!==null&&(this[i]=i==="history"?[...r[i]]:r[i])}let a;for(a in r)Oa.includes(a)||(this[a]=r[a])}get basename(){return typeof this.path=="string"?ct.basename(this.path):void 0}set basename(t){Ba(t,"basename"),Fa(t,"basename"),this.path=ct.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?ct.dirname(this.path):void 0}set dirname(t){El(this.basename,"dirname"),this.path=ct.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?ct.extname(this.path):void 0}set extname(t){if(Fa(t,"extname"),El(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=ct.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Da(t)&&(t=rb(t)),Ba(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?ct.basename(this.path,this.extname):void 0}set stem(t){Ba(t,"stem"),Fa(t,"stem"),this.path=ct.join(this.dirname||"",t+(this.extname||""))}fail(t,r,n){const a=this.message(t,r,n);throw a.fatal=!0,a}info(t,r,n){const a=this.message(t,r,n);return a.fatal=void 0,a}message(t,r,n){const a=new Ae(t,r,n);return this.path&&(a.name=this.path+":"+a.name,a.file=this.path),a.fatal=!1,this.messages.push(a),a}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Fa(e,t){if(e&&e.includes(ct.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+ct.sep+"`")}function Ba(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function El(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function ab(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const ib=(function(e){const n=this.constructor.prototype,a=n[e],i=function(){return a.apply(i,arguments)};return Object.setPrototypeOf(i,n),i}),sb={}.hasOwnProperty;class za extends ib{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Wy()}copy(){const t=new za;let r=-1;for(;++r<this.attachers.length;){const n=this.attachers[r];t.use(...n)}return t.data(Na(!0,{},this.namespace)),t}data(t,r){return typeof t=="string"?arguments.length===2?($a("data",this.frozen),this.namespace[t]=r,this):sb.call(this.namespace,t)&&this.namespace[t]||void 0:t?($a("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[r,...n]=this.attachers[this.freezeIndex];if(n[0]===!1)continue;n[0]===!0&&(n[0]=void 0);const a=r.call(t,...n);typeof a=="function"&&this.transformers.use(a)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const r=mn(t),n=this.parser||this.Parser;return Ra("parse",n),n(String(r),r)}process(t,r){const n=this;return this.freeze(),Ra("process",this.parser||this.Parser),ja("process",this.compiler||this.Compiler),r?a(void 0,r):new Promise(a);function a(i,s){const o=mn(t),l=n.parse(o);n.run(l,o,function(c,d,f){if(c||!d||!f)return u(c);const h=d,g=n.stringify(h,f);ub(g)?f.value=g:f.result=g,u(c,f)});function u(c,d){c||!d?s(c):i?i(d):r(void 0,d)}}}processSync(t){let r=!1,n;return this.freeze(),Ra("processSync",this.parser||this.Parser),ja("processSync",this.compiler||this.Compiler),this.process(t,a),Ml("processSync","process",r),n;function a(i,s){r=!0,Tl(i),n=s}}run(t,r,n){Al(t),this.freeze();const a=this.transformers;return!n&&typeof r=="function"&&(n=r,r=void 0),n?i(void 0,n):new Promise(i);function i(s,o){const l=mn(r);a.run(t,l,u);function u(c,d,f){const h=d||t;c?o(c):s?s(h):n(void 0,h,f)}}}runSync(t,r){let n=!1,a;return this.run(t,r,i),Ml("runSync","run",n),a;function i(s,o){Tl(s),a=o,n=!0}}stringify(t,r){this.freeze();const n=mn(r),a=this.compiler||this.Compiler;return ja("stringify",a),Al(t),a(t,n)}use(t,...r){const n=this.attachers,a=this.namespace;if($a("use",this.frozen),t!=null)if(typeof t=="function")l(t,r);else if(typeof t=="object")Array.isArray(t)?o(t):s(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function i(u){if(typeof u=="function")l(u,[]);else if(typeof u=="object")if(Array.isArray(u)){const[c,...d]=u;l(c,d)}else s(u);else throw new TypeError("Expected usable value, not `"+u+"`")}function s(u){if(!("plugins"in u)&&!("settings"in u))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");o(u.plugins),u.settings&&(a.settings=Na(!0,a.settings,u.settings))}function o(u){let c=-1;if(u!=null)if(Array.isArray(u))for(;++c<u.length;){const d=u[c];i(d)}else throw new TypeError("Expected a list of plugins, not `"+u+"`")}function l(u,c){let d=-1,f=-1;for(;++d<n.length;)if(n[d][0]===u){f=d;break}if(f===-1)n.push([u,...c]);else if(c.length>0){let[h,...g]=c;const v=n[f][1];La(v)&&La(h)&&(h=Na(!0,v,h)),n[f]=[u,h,...g]}}}}const ob=new za().freeze();function Ra(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function ja(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function $a(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Al(e){if(!La(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Ml(e,t,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function mn(e){return lb(e)?e:new Il(e)}function lb(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function ub(e){return typeof e=="string"||cb(e)}function cb(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const db="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",Pl=[],Nl={allowDangerousHtml:!0},hb=/^(https?|ircs?|mailto|xmpp)$/i,fb=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function pb(e){const t=mb(e),r=gb(e);return yb(t.runSync(t.parse(r),r),e)}function mb(e){const t=e.rehypePlugins||Pl,r=e.remarkPlugins||Pl,n=e.remarkRehypeOptions?m(m({},e.remarkRehypeOptions),Nl):Nl;return ob().use(Yg).use(r).use(Hy,n).use(t)}function gb(e){const t=e.children||"",r=new Il;return typeof t=="string"&&(r.value=t),r}function yb(e,t){const r=t.allowedElements,n=t.allowElement,a=t.components,i=t.disallowedElements,s=t.skipHtml,o=t.unwrapDisallowed,l=t.urlTransform||bb;for(const c of fb)Object.hasOwn(t,c.from)&&(""+c.from+(c.to?"use `"+c.to+"` instead":"remove it")+db+c.id,void 0);return Aa(e,u),$p(e,{Fragment:p.Fragment,components:a,ignoreInvalidStyle:!0,jsx:p.jsx,jsxs:p.jsxs,passKeys:!0,passNode:!0});function u(c,d,f){if(c.type==="raw"&&f&&typeof d=="number")return s?f.children.splice(d,1):f.children[d]={type:"text",value:c.value},d;if(c.type==="element"){let h;for(h in ga)if(Object.hasOwn(ga,h)&&Object.hasOwn(c.properties,h)){const g=c.properties[h],v=ga[h];(v===null||v.includes(c.tagName))&&(c.properties[h]=l(String(g||""),h,c))}}if(c.type==="element"){let h=r?!r.includes(c.tagName):i?i.includes(c.tagName):!1;if(!h&&n&&typeof d=="number"&&(h=!n(c,d,f)),h&&f&&typeof d=="number")return o&&c.children?f.children.splice(d,1,...c.children):f.children.splice(d,1),d}}}function bb(e){const t=e.indexOf(":"),r=e.indexOf("?"),n=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||r!==-1&&t>r||n!==-1&&t>n||hb.test(e.slice(0,t))?e:""}var wb=(e,t)=>typeof e=="string"?e===t:JSON.stringify(e)===JSON.stringify(t),xb=(e,t)=>{if(!e||!t)return!1;const r=n=>{const o=n||{},{position:a,data:i}=o;return V(o,["position","data"])};return JSON.stringify(r(e.properties))===JSON.stringify(r(t.properties))&&wb(e.children,t.children)},Ua=(e,t)=>xb(e.node,t.node),vb=(e={})=>Object.fromEntries(Object.entries(e!=null?e:{}).map(([t,r])=>{if(!r)return[t,r];const n=r,a=o=>{var l=o,{node:i}=l,s=V(l,["node"]);return p.jsx(n,m({},s))};return[t,y.memo(a,Ua)]})),Ha=y.createContext(null),Ll=()=>y.useContext(Ha)!==null,kb=r=>{var n=r,{children:e}=n,t=V(n,["children"]);return p.jsx(Ha.Provider,{value:t,children:e})},Sb=y.memo(kb,Ua),_b=r=>{var n=r,{node:e}=n,t=V(n,["node"]);return p.jsx("pre",m({},t))},Tb=r=>{var n=r,{node:e}=n,t=V(n,["node"]);return p.jsx("code",m({},t))},qa=({node:e,components:{Pre:t,Code:r},code:n})=>p.jsx(t,{children:p.jsx(r,{node:e,children:n})}),Cb=()=>null,Ib=({node:e,components:{Pre:t,Code:r,SyntaxHighlighter:n,CodeHeader:a},language:i,code:s})=>{const o=y.useMemo(()=>({Pre:t,Code:r}),[t,r]),l=i?n:qa;return p.jsxs(p.Fragment,{children:[p.jsx(a,{node:e,language:i,code:s}),p.jsx(l,{node:e,components:o,language:i!=null?i:"unknown",code:s})]})},Va={exports:{}};var Dl;function Eb(){return Dl||(Dl=1,(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var i="",s=0;s<arguments.length;s++){var o=arguments[s];o&&(i=a(i,n(o)))}return i}function n(i){if(typeof i=="string"||typeof i=="number")return i;if(typeof i!="object")return"";if(Array.isArray(i))return r.apply(null,i);if(i.toString!==Object.prototype.toString&&!i.toString.toString().includes("[native code]"))return i.toString();var s="";for(var o in i)t.call(i,o)&&i[o]&&(s=a(s,o));return s}function a(i,s){return s?i?i+" "+s:i+s:i}e.exports?(r.default=r,e.exports=r):window.classNames=r})()})(Va)),Va.exports}var Ab=Eb();const Ol=Lr(Ab);var Fl=r=>{var n=r,{className:e}=n,t=V(n,["className"]);return s=>{var o=s,{className:a}=o,i=V(o,["className"]);return m(m({className:Ol(e,a)},t),i)}},Mb=l=>{var u=l,{node:e,components:{Pre:t,Code:r,SyntaxHighlighter:n,CodeHeader:a},componentsByLanguage:i={},children:s}=u,o=V(u,["node","components","componentsByLanguage","children"]);var I,T,D,B,_,j;const c=y.useContext(Ha),d=Fl(c),f=Pt(R=>p.jsx(t,m({},d(R)))),h=Fl(o),g=Pt(R=>p.jsx(r,m({},h(R)))),v=(T=(I=/language-(\w+)/.exec(o.className||""))==null?void 0:I[1])!=null?T:"";if(typeof s!="string")return p.jsx(qa,{node:e,components:{Pre:f,Code:g},code:s});const w=(B=(D=i[v])==null?void 0:D.SyntaxHighlighter)!=null?B:n,b=(j=(_=i[v])==null?void 0:_.CodeHeader)!=null?j:a;return p.jsx(Ib,{node:e,components:{Pre:f,Code:g,SyntaxHighlighter:w,CodeHeader:b},language:v||"unknown",code:s})},Pb=a=>{var i=a,{node:e,components:t,componentsByLanguage:r}=i,n=V(i,["node","components","componentsByLanguage"]);return Ll()?p.jsx(Mb,m({node:e,components:t,componentsByLanguage:r},n)):p.jsx(t.Code,m({},n))},Nb=y.memo(Pb,(e,t)=>e.components===t.components&&e.componentsByLanguage===t.componentsByLanguage&&Ua(e,t)),{useSmooth:Lb,useSmoothStatus:Db,withSmoothContextProvider:Ob}=Vh,Fb=i=>{var s=i,{components:e,componentsByLanguage:t,smooth:r=!0,preprocess:n}=s,a=V(s,["components","componentsByLanguage","smooth","preprocess"]);const o=Ps(),l=y.useMemo(()=>n?E(m({},o),{text:n(o.text)}):o,[o,n]),{text:u}=Lb(l,r),{pre:c=_b,code:d=Tb,SyntaxHighlighter:f=qa,CodeHeader:h=Cb}=e!=null?e:{},g=y.useMemo(()=>({Pre:c,Code:d,SyntaxHighlighter:f,CodeHeader:h}),[c,d,f,h]),v=Pt(b=>p.jsx(Nb,m({components:g,componentsByLanguage:t},b))),w=y.useMemo(()=>{const _=e!=null?e:{},{pre:b,code:I,SyntaxHighlighter:T,CodeHeader:D}=_,B=V(_,["pre","code","SyntaxHighlighter","CodeHeader"]);return E(m({},B),{pre:Sb,code:v})},[v,e]);return p.jsx(pb,E(m({components:w},a),{children:u}))},Bl=y.forwardRef((i,a)=>{var s=i,{className:e,containerProps:t,containerComponent:r="div"}=s,n=V(s,["className","containerProps","containerComponent"]);const o=Db();return p.jsx(r,E(m({"data-status":o.type},t),{className:Ol(e,t==null?void 0:t.className),ref:a,children:p.jsx(Fb,m({},n))}))});Bl.displayName="MarkdownTextPrimitive";var Bb=Ob(Bl);function zl(e,t){const r=String(e);if(typeof t!="string")throw new TypeError("Expected character");let n=0,a=r.indexOf(t);for(;a!==-1;)n++,a=r.indexOf(t,a+t.length);return n}function zb(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Rb(e,t,r){const a=fn((r||{}).ignore||[]),i=jb(t);let s=-1;for(;++s<i.length;)kl(e,"text",o);function o(u,c){let d=-1,f;for(;++d<c.length;){const h=c[d],g=f?f.children:void 0;if(a(h,g?g.indexOf(h):void 0,f))return;f=h}if(f)return l(u,c)}function l(u,c){const d=c[c.length-1],f=i[s][0],h=i[s][1];let g=0;const w=d.children.indexOf(u);let b=!1,I=[];f.lastIndex=0;let T=f.exec(u.value);for(;T;){const D=T.index,B={index:T.index,input:T.input,stack:[...c,u]};let _=h(...T,B);if(typeof _=="string"&&(_=_.length>0?{type:"text",value:_}:void 0),_===!1?f.lastIndex=D+1:(g!==D&&I.push({type:"text",value:u.value.slice(g,D)}),Array.isArray(_)?I.push(..._):_&&I.push(_),g=D+T[0].length,b=!0),!f.global)break;T=f.exec(u.value)}return b?(g<u.value.length&&I.push({type:"text",value:u.value.slice(g)}),d.children.splice(w,1,...I)):I=[u],w+I.length}}function jb(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const r=!e[0]||Array.isArray(e[0])?e:[e];let n=-1;for(;++n<r.length;){const a=r[n];t.push([$b(a[0]),Ub(a[1])])}return t}function $b(e){return typeof e=="string"?new RegExp(zb(e),"g"):e}function Ub(e){return typeof e=="function"?e:function(){return e}}const Wa="phrasing",Ja=["autolink","link","image","label"];function Hb(){return{transforms:[Gb],enter:{literalAutolink:Vb,literalAutolinkEmail:Ka,literalAutolinkHttp:Ka,literalAutolinkWww:Ka},exit:{literalAutolink:Yb,literalAutolinkEmail:Kb,literalAutolinkHttp:Wb,literalAutolinkWww:Jb}}}function qb(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Wa,notInConstruct:Ja},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Wa,notInConstruct:Ja},{character:":",before:"[ps]",after:"\\/",inConstruct:Wa,notInConstruct:Ja}]}}function Vb(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function Ka(e){this.config.enter.autolinkProtocol.call(this,e)}function Wb(e){this.config.exit.autolinkProtocol.call(this,e)}function Jb(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function Kb(e){this.config.exit.autolinkEmail.call(this,e)}function Yb(e){this.exit(e)}function Gb(e){Rb(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,Xb],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),Qb]],{ignore:["link","linkReference"]})}function Xb(e,t,r,n,a){let i="";if(!Rl(a)||(/^w/i.test(t)&&(r=t+r,t="",i="http://"),!Zb(r)))return!1;const s=ew(r+n);if(!s[0])return!1;const o={type:"link",title:null,url:i+t+s[0],children:[{type:"text",value:t+s[0]}]};return s[1]?[o,{type:"text",value:s[1]}]:o}function Qb(e,t,r,n){return!Rl(n,!0)||/[-\d_]$/.test(r)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+r,children:[{type:"text",value:t+"@"+r}]}}function Zb(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function ew(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let r=t[0],n=r.indexOf(")");const a=zl(e,"(");let i=zl(e,")");for(;n!==-1&&a>i;)e+=r.slice(0,n+1),r=r.slice(n+1),n=r.indexOf(")"),i++;return[e,r]}function Rl(e,t){const r=e.input.charCodeAt(e.index-1);return(e.index===0||Dt(r)||an(r))&&(!t||r!==47)}jl.peek=uw;function tw(){this.buffer()}function rw(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function nw(){this.buffer()}function aw(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function iw(e){const t=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=nt(this.sliceSerialize(e)).toLowerCase(),r.label=t}function sw(e){this.exit(e)}function ow(e){const t=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=nt(this.sliceSerialize(e)).toLowerCase(),r.label=t}function lw(e){this.exit(e)}function uw(){return"["}function jl(e,t,r,n){const a=r.createTracker(n);let i=a.move("[^");const s=r.enter("footnoteReference"),o=r.enter("reference");return i+=a.move(r.safe(r.associationId(e),{after:"]",before:i})),o(),s(),i+=a.move("]"),i}function cw(){return{enter:{gfmFootnoteCallString:tw,gfmFootnoteCall:rw,gfmFootnoteDefinitionLabelString:nw,gfmFootnoteDefinition:aw},exit:{gfmFootnoteCallString:iw,gfmFootnoteCall:sw,gfmFootnoteDefinitionLabelString:ow,gfmFootnoteDefinition:lw}}}function dw(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:r,footnoteReference:jl},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function r(n,a,i,s){const o=i.createTracker(s);let l=o.move("[^");const u=i.enter("footnoteDefinition"),c=i.enter("label");return l+=o.move(i.safe(i.associationId(n),{before:l,after:"]"})),c(),l+=o.move("]:"),n.children&&n.children.length>0&&(o.shift(4),l+=o.move((t?`
|
|
20
|
+
`},a),i}function Hy(e,t){return e&&"run"in e?function(r,n){return M(this,null,function*(){const a=_l(r,m({file:n},t));yield e.run(a,n)})}:function(r,n){return _l(r,m({file:n},e||t))}}function Tl(e){if(e)throw e}var Pa,Cl;function qy(){if(Cl)return Pa;Cl=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=function(u){return typeof Array.isArray=="function"?Array.isArray(u):t.call(u)==="[object Array]"},i=function(u){if(!u||t.call(u)!=="[object Object]")return!1;var c=e.call(u,"constructor"),d=u.constructor&&u.constructor.prototype&&e.call(u.constructor.prototype,"isPrototypeOf");if(u.constructor&&!c&&!d)return!1;var f;for(f in u);return typeof f=="undefined"||e.call(u,f)},s=function(u,c){r&&c.name==="__proto__"?r(u,c.name,{enumerable:!0,configurable:!0,value:c.newValue,writable:!0}):u[c.name]=c.newValue},o=function(u,c){if(c==="__proto__")if(e.call(u,c)){if(n)return n(u,c).value}else return;return u[c]};return Pa=function l(){var u,c,d,f,h,g,v=arguments[0],w=1,b=arguments.length,I=!1;for(typeof v=="boolean"&&(I=v,v=arguments[1]||{},w=2),(v==null||typeof v!="object"&&typeof v!="function")&&(v={});w<b;++w)if(u=arguments[w],u!=null)for(c in u)d=o(v,c),f=o(u,c),v!==f&&(I&&f&&(i(f)||(h=a(f)))?(h?(h=!1,g=d&&a(d)?d:[]):g=d&&i(d)?d:{},s(v,{name:c,newValue:l(I,g,f)})):typeof f!="undefined"&&s(v,{name:c,newValue:f}));return v},Pa}var Vy=qy();const Na=Lr(Vy);function La(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Wy(){const e=[],t={run:r,use:n};return t;function r(...a){let i=-1;const s=a.pop();if(typeof s!="function")throw new TypeError("Expected function as last argument, not "+s);o(null,...a);function o(l,...u){const c=e[++i];let d=-1;if(l){s(l);return}for(;++d<a.length;)(u[d]===null||u[d]===void 0)&&(u[d]=a[d]);a=u,c?Jy(c,o)(...u):s(null,...u)}}function n(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function Jy(e,t){let r;return n;function n(...s){const o=e.length>s.length;let l;o&&s.push(a);try{l=e.apply(this,s)}catch(u){const c=u;if(o&&r)throw c;return a(c)}o||(l&&l.then&&typeof l.then=="function"?l.then(i,a):l instanceof Error?a(l):i(l))}function a(s,...o){r||(r=!0,t(s,...o))}function i(s){a(null,s)}}const ct={basename:Ky,dirname:Yy,extname:Gy,join:Xy,sep:"/"};function Ky(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Tr(e);let r=0,n=-1,a=e.length,i;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(i){r=a+1;break}}else n<0&&(i=!0,n=a+1);return n<0?"":e.slice(r,n)}if(t===e)return"";let s=-1,o=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(i){r=a+1;break}}else s<0&&(i=!0,s=a+1),o>-1&&(e.codePointAt(a)===t.codePointAt(o--)?o<0&&(n=a):(o=-1,n=s));return r===n?n=s:n<0&&(n=e.length),e.slice(r,n)}function Yy(e){if(Tr(e),e.length===0)return".";let t=-1,r=e.length,n;for(;--r;)if(e.codePointAt(r)===47){if(n){t=r;break}}else n||(n=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function Gy(e){Tr(e);let t=e.length,r=-1,n=0,a=-1,i=0,s;for(;t--;){const o=e.codePointAt(t);if(o===47){if(s){n=t+1;break}continue}r<0&&(s=!0,r=t+1),o===46?a<0?a=t:i!==1&&(i=1):a>-1&&(i=-1)}return a<0||r<0||i===0||i===1&&a===r-1&&a===n+1?"":e.slice(a,r)}function Xy(...e){let t=-1,r;for(;++t<e.length;)Tr(e[t]),e[t]&&(r=r===void 0?e[t]:r+"/"+e[t]);return r===void 0?".":Qy(r)}function Qy(e){Tr(e);const t=e.codePointAt(0)===47;let r=Zy(e,!t);return r.length===0&&!t&&(r="."),r.length>0&&e.codePointAt(e.length-1)===47&&(r+="/"),t?"/"+r:r}function Zy(e,t){let r="",n=0,a=-1,i=0,s=-1,o,l;for(;++s<=e.length;){if(s<e.length)o=e.codePointAt(s);else{if(o===47)break;o=47}if(o===47){if(!(a===s-1||i===1))if(a!==s-1&&i===2){if(r.length<2||n!==2||r.codePointAt(r.length-1)!==46||r.codePointAt(r.length-2)!==46){if(r.length>2){if(l=r.lastIndexOf("/"),l!==r.length-1){l<0?(r="",n=0):(r=r.slice(0,l),n=r.length-1-r.lastIndexOf("/")),a=s,i=0;continue}}else if(r.length>0){r="",n=0,a=s,i=0;continue}}t&&(r=r.length>0?r+"/..":"..",n=2)}else r.length>0?r+="/"+e.slice(a+1,s):r=e.slice(a+1,s),n=s-a-1;a=s,i=0}else o===46&&i>-1?i++:i=-1}return r}function Tr(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const eb={cwd:tb};function tb(){return"/"}function Da(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function rb(e){if(typeof e=="string")e=new URL(e);else if(!Da(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return nb(e)}function nb(e){if(e.hostname!==""){const n=new TypeError('File URL host must be "localhost" or empty on darwin');throw n.code="ERR_INVALID_FILE_URL_HOST",n}const t=e.pathname;let r=-1;for(;++r<t.length;)if(t.codePointAt(r)===37&&t.codePointAt(r+1)===50){const n=t.codePointAt(r+2);if(n===70||n===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(t)}const Oa=["history","path","basename","stem","extname","dirname"];class Il{constructor(t){let r;t?Da(t)?r={path:t}:typeof t=="string"||ab(t)?r={value:t}:r=t:r={},this.cwd="cwd"in r?"":eb.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let n=-1;for(;++n<Oa.length;){const i=Oa[n];i in r&&r[i]!==void 0&&r[i]!==null&&(this[i]=i==="history"?[...r[i]]:r[i])}let a;for(a in r)Oa.includes(a)||(this[a]=r[a])}get basename(){return typeof this.path=="string"?ct.basename(this.path):void 0}set basename(t){Ba(t,"basename"),Fa(t,"basename"),this.path=ct.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?ct.dirname(this.path):void 0}set dirname(t){El(this.basename,"dirname"),this.path=ct.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?ct.extname(this.path):void 0}set extname(t){if(Fa(t,"extname"),El(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=ct.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Da(t)&&(t=rb(t)),Ba(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?ct.basename(this.path,this.extname):void 0}set stem(t){Ba(t,"stem"),Fa(t,"stem"),this.path=ct.join(this.dirname||"",t+(this.extname||""))}fail(t,r,n){const a=this.message(t,r,n);throw a.fatal=!0,a}info(t,r,n){const a=this.message(t,r,n);return a.fatal=void 0,a}message(t,r,n){const a=new Ae(t,r,n);return this.path&&(a.name=this.path+":"+a.name,a.file=this.path),a.fatal=!1,this.messages.push(a),a}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Fa(e,t){if(e&&e.includes(ct.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+ct.sep+"`")}function Ba(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function El(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function ab(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const ib=(function(e){const n=this.constructor.prototype,a=n[e],i=function(){return a.apply(i,arguments)};return Object.setPrototypeOf(i,n),i}),sb={}.hasOwnProperty;class za extends ib{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Wy()}copy(){const t=new za;let r=-1;for(;++r<this.attachers.length;){const n=this.attachers[r];t.use(...n)}return t.data(Na(!0,{},this.namespace)),t}data(t,r){return typeof t=="string"?arguments.length===2?($a("data",this.frozen),this.namespace[t]=r,this):sb.call(this.namespace,t)&&this.namespace[t]||void 0:t?($a("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[r,...n]=this.attachers[this.freezeIndex];if(n[0]===!1)continue;n[0]===!0&&(n[0]=void 0);const a=r.call(t,...n);typeof a=="function"&&this.transformers.use(a)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const r=mn(t),n=this.parser||this.Parser;return Ra("parse",n),n(String(r),r)}process(t,r){const n=this;return this.freeze(),Ra("process",this.parser||this.Parser),ja("process",this.compiler||this.Compiler),r?a(void 0,r):new Promise(a);function a(i,s){const o=mn(t),l=n.parse(o);n.run(l,o,function(c,d,f){if(c||!d||!f)return u(c);const h=d,g=n.stringify(h,f);ub(g)?f.value=g:f.result=g,u(c,f)});function u(c,d){c||!d?s(c):i?i(d):r(void 0,d)}}}processSync(t){let r=!1,n;return this.freeze(),Ra("processSync",this.parser||this.Parser),ja("processSync",this.compiler||this.Compiler),this.process(t,a),Ml("processSync","process",r),n;function a(i,s){r=!0,Tl(i),n=s}}run(t,r,n){Al(t),this.freeze();const a=this.transformers;return!n&&typeof r=="function"&&(n=r,r=void 0),n?i(void 0,n):new Promise(i);function i(s,o){const l=mn(r);a.run(t,l,u);function u(c,d,f){const h=d||t;c?o(c):s?s(h):n(void 0,h,f)}}}runSync(t,r){let n=!1,a;return this.run(t,r,i),Ml("runSync","run",n),a;function i(s,o){Tl(s),a=o,n=!0}}stringify(t,r){this.freeze();const n=mn(r),a=this.compiler||this.Compiler;return ja("stringify",a),Al(t),a(t,n)}use(t,...r){const n=this.attachers,a=this.namespace;if($a("use",this.frozen),t!=null)if(typeof t=="function")l(t,r);else if(typeof t=="object")Array.isArray(t)?o(t):s(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function i(u){if(typeof u=="function")l(u,[]);else if(typeof u=="object")if(Array.isArray(u)){const[c,...d]=u;l(c,d)}else s(u);else throw new TypeError("Expected usable value, not `"+u+"`")}function s(u){if(!("plugins"in u)&&!("settings"in u))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");o(u.plugins),u.settings&&(a.settings=Na(!0,a.settings,u.settings))}function o(u){let c=-1;if(u!=null)if(Array.isArray(u))for(;++c<u.length;){const d=u[c];i(d)}else throw new TypeError("Expected a list of plugins, not `"+u+"`")}function l(u,c){let d=-1,f=-1;for(;++d<n.length;)if(n[d][0]===u){f=d;break}if(f===-1)n.push([u,...c]);else if(c.length>0){let[h,...g]=c;const v=n[f][1];La(v)&&La(h)&&(h=Na(!0,v,h)),n[f]=[u,h,...g]}}}}const ob=new za().freeze();function Ra(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function ja(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function $a(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Al(e){if(!La(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Ml(e,t,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function mn(e){return lb(e)?e:new Il(e)}function lb(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function ub(e){return typeof e=="string"||cb(e)}function cb(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const db="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",Pl=[],Nl={allowDangerousHtml:!0},hb=/^(https?|ircs?|mailto|xmpp)$/i,fb=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function pb(e){const t=mb(e),r=gb(e);return yb(t.runSync(t.parse(r),r),e)}function mb(e){const t=e.rehypePlugins||Pl,r=e.remarkPlugins||Pl,n=e.remarkRehypeOptions?m(m({},e.remarkRehypeOptions),Nl):Nl;return ob().use(Yg).use(r).use(Hy,n).use(t)}function gb(e){const t=e.children||"",r=new Il;return typeof t=="string"&&(r.value=t),r}function yb(e,t){const r=t.allowedElements,n=t.allowElement,a=t.components,i=t.disallowedElements,s=t.skipHtml,o=t.unwrapDisallowed,l=t.urlTransform||bb;for(const c of fb)Object.hasOwn(t,c.from)&&(""+c.from+(c.to?"use `"+c.to+"` instead":"remove it")+db+c.id,void 0);return Aa(e,u),$p(e,{Fragment:p.Fragment,components:a,ignoreInvalidStyle:!0,jsx:p.jsx,jsxs:p.jsxs,passKeys:!0,passNode:!0});function u(c,d,f){if(c.type==="raw"&&f&&typeof d=="number")return s?f.children.splice(d,1):f.children[d]={type:"text",value:c.value},d;if(c.type==="element"){let h;for(h in ga)if(Object.hasOwn(ga,h)&&Object.hasOwn(c.properties,h)){const g=c.properties[h],v=ga[h];(v===null||v.includes(c.tagName))&&(c.properties[h]=l(String(g||""),h,c))}}if(c.type==="element"){let h=r?!r.includes(c.tagName):i?i.includes(c.tagName):!1;if(!h&&n&&typeof d=="number"&&(h=!n(c,d,f)),h&&f&&typeof d=="number")return o&&c.children?f.children.splice(d,1,...c.children):f.children.splice(d,1),d}}}function bb(e){const t=e.indexOf(":"),r=e.indexOf("?"),n=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||r!==-1&&t>r||n!==-1&&t>n||hb.test(e.slice(0,t))?e:""}var wb=(e,t)=>typeof e=="string"?e===t:JSON.stringify(e)===JSON.stringify(t),xb=(e,t)=>{if(!e||!t)return!1;const r=n=>{const o=n||{},{position:a,data:i}=o;return V(o,["position","data"])};return JSON.stringify(r(e.properties))===JSON.stringify(r(t.properties))&&wb(e.children,t.children)},Ua=(e,t)=>xb(e.node,t.node),vb=(e={})=>Object.fromEntries(Object.entries(e!=null?e:{}).map(([t,r])=>{if(!r)return[t,r];const n=r,a=o=>{var l=o,{node:i}=l,s=V(l,["node"]);return p.jsx(n,m({},s))};return[t,y.memo(a,Ua)]})),Ha=y.createContext(null),Ll=()=>y.useContext(Ha)!==null,kb=r=>{var n=r,{children:e}=n,t=V(n,["children"]);return p.jsx(Ha.Provider,{value:t,children:e})},Sb=y.memo(kb,Ua),_b=r=>{var n=r,{node:e}=n,t=V(n,["node"]);return p.jsx("pre",m({},t))},Tb=r=>{var n=r,{node:e}=n,t=V(n,["node"]);return p.jsx("code",m({},t))},qa=({node:e,components:{Pre:t,Code:r},code:n})=>p.jsx(t,{children:p.jsx(r,{node:e,children:n})}),Cb=()=>null,Ib=({node:e,components:{Pre:t,Code:r,SyntaxHighlighter:n,CodeHeader:a},language:i,code:s})=>{const o=y.useMemo(()=>({Pre:t,Code:r}),[t,r]),l=i?n:qa;return p.jsxs(p.Fragment,{children:[p.jsx(a,{node:e,language:i,code:s}),p.jsx(l,{node:e,components:o,language:i!=null?i:"unknown",code:s})]})},Va={exports:{}};var Dl;function Eb(){return Dl||(Dl=1,(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var i="",s=0;s<arguments.length;s++){var o=arguments[s];o&&(i=a(i,n(o)))}return i}function n(i){if(typeof i=="string"||typeof i=="number")return i;if(typeof i!="object")return"";if(Array.isArray(i))return r.apply(null,i);if(i.toString!==Object.prototype.toString&&!i.toString.toString().includes("[native code]"))return i.toString();var s="";for(var o in i)t.call(i,o)&&i[o]&&(s=a(s,o));return s}function a(i,s){return s?i?i+" "+s:i+s:i}e.exports?(r.default=r,e.exports=r):window.classNames=r})()})(Va)),Va.exports}var Ab=Eb();const Ol=Lr(Ab);var Fl=r=>{var n=r,{className:e}=n,t=V(n,["className"]);return s=>{var o=s,{className:a}=o,i=V(o,["className"]);return m(m({className:Ol(e,a)},t),i)}},Mb=l=>{var u=l,{node:e,components:{Pre:t,Code:r,SyntaxHighlighter:n,CodeHeader:a},componentsByLanguage:i={},children:s}=u,o=V(u,["node","components","componentsByLanguage","children"]);var I,T,D,B,_,j;const c=y.useContext(Ha),d=Fl(c),f=Nt(R=>p.jsx(t,m({},d(R)))),h=Fl(o),g=Nt(R=>p.jsx(r,m({},h(R)))),v=(T=(I=/language-(\w+)/.exec(o.className||""))==null?void 0:I[1])!=null?T:"";if(typeof s!="string")return p.jsx(qa,{node:e,components:{Pre:f,Code:g},code:s});const w=(B=(D=i[v])==null?void 0:D.SyntaxHighlighter)!=null?B:n,b=(j=(_=i[v])==null?void 0:_.CodeHeader)!=null?j:a;return p.jsx(Ib,{node:e,components:{Pre:f,Code:g,SyntaxHighlighter:w,CodeHeader:b},language:v||"unknown",code:s})},Pb=a=>{var i=a,{node:e,components:t,componentsByLanguage:r}=i,n=V(i,["node","components","componentsByLanguage"]);return Ll()?p.jsx(Mb,m({node:e,components:t,componentsByLanguage:r},n)):p.jsx(t.Code,m({},n))},Nb=y.memo(Pb,(e,t)=>e.components===t.components&&e.componentsByLanguage===t.componentsByLanguage&&Ua(e,t)),{useSmooth:Lb,useSmoothStatus:Db,withSmoothContextProvider:Ob}=Vh,Fb=i=>{var s=i,{components:e,componentsByLanguage:t,smooth:r=!0,preprocess:n}=s,a=V(s,["components","componentsByLanguage","smooth","preprocess"]);const o=Ps(),l=y.useMemo(()=>n?E(m({},o),{text:n(o.text)}):o,[o,n]),{text:u}=Lb(l,r),{pre:c=_b,code:d=Tb,SyntaxHighlighter:f=qa,CodeHeader:h=Cb}=e!=null?e:{},g=y.useMemo(()=>({Pre:c,Code:d,SyntaxHighlighter:f,CodeHeader:h}),[c,d,f,h]),v=Nt(b=>p.jsx(Nb,m({components:g,componentsByLanguage:t},b))),w=y.useMemo(()=>{const _=e!=null?e:{},{pre:b,code:I,SyntaxHighlighter:T,CodeHeader:D}=_,B=V(_,["pre","code","SyntaxHighlighter","CodeHeader"]);return E(m({},B),{pre:Sb,code:v})},[v,e]);return p.jsx(pb,E(m({components:w},a),{children:u}))},Bl=y.forwardRef((i,a)=>{var s=i,{className:e,containerProps:t,containerComponent:r="div"}=s,n=V(s,["className","containerProps","containerComponent"]);const o=Db();return p.jsx(r,E(m({"data-status":o.type},t),{className:Ol(e,t==null?void 0:t.className),ref:a,children:p.jsx(Fb,m({},n))}))});Bl.displayName="MarkdownTextPrimitive";var Bb=Ob(Bl);function zl(e,t){const r=String(e);if(typeof t!="string")throw new TypeError("Expected character");let n=0,a=r.indexOf(t);for(;a!==-1;)n++,a=r.indexOf(t,a+t.length);return n}function zb(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Rb(e,t,r){const a=fn((r||{}).ignore||[]),i=jb(t);let s=-1;for(;++s<i.length;)kl(e,"text",o);function o(u,c){let d=-1,f;for(;++d<c.length;){const h=c[d],g=f?f.children:void 0;if(a(h,g?g.indexOf(h):void 0,f))return;f=h}if(f)return l(u,c)}function l(u,c){const d=c[c.length-1],f=i[s][0],h=i[s][1];let g=0;const w=d.children.indexOf(u);let b=!1,I=[];f.lastIndex=0;let T=f.exec(u.value);for(;T;){const D=T.index,B={index:T.index,input:T.input,stack:[...c,u]};let _=h(...T,B);if(typeof _=="string"&&(_=_.length>0?{type:"text",value:_}:void 0),_===!1?f.lastIndex=D+1:(g!==D&&I.push({type:"text",value:u.value.slice(g,D)}),Array.isArray(_)?I.push(..._):_&&I.push(_),g=D+T[0].length,b=!0),!f.global)break;T=f.exec(u.value)}return b?(g<u.value.length&&I.push({type:"text",value:u.value.slice(g)}),d.children.splice(w,1,...I)):I=[u],w+I.length}}function jb(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const r=!e[0]||Array.isArray(e[0])?e:[e];let n=-1;for(;++n<r.length;){const a=r[n];t.push([$b(a[0]),Ub(a[1])])}return t}function $b(e){return typeof e=="string"?new RegExp(zb(e),"g"):e}function Ub(e){return typeof e=="function"?e:function(){return e}}const Wa="phrasing",Ja=["autolink","link","image","label"];function Hb(){return{transforms:[Gb],enter:{literalAutolink:Vb,literalAutolinkEmail:Ka,literalAutolinkHttp:Ka,literalAutolinkWww:Ka},exit:{literalAutolink:Yb,literalAutolinkEmail:Kb,literalAutolinkHttp:Wb,literalAutolinkWww:Jb}}}function qb(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Wa,notInConstruct:Ja},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Wa,notInConstruct:Ja},{character:":",before:"[ps]",after:"\\/",inConstruct:Wa,notInConstruct:Ja}]}}function Vb(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function Ka(e){this.config.enter.autolinkProtocol.call(this,e)}function Wb(e){this.config.exit.autolinkProtocol.call(this,e)}function Jb(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function Kb(e){this.config.exit.autolinkEmail.call(this,e)}function Yb(e){this.exit(e)}function Gb(e){Rb(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,Xb],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),Qb]],{ignore:["link","linkReference"]})}function Xb(e,t,r,n,a){let i="";if(!Rl(a)||(/^w/i.test(t)&&(r=t+r,t="",i="http://"),!Zb(r)))return!1;const s=ew(r+n);if(!s[0])return!1;const o={type:"link",title:null,url:i+t+s[0],children:[{type:"text",value:t+s[0]}]};return s[1]?[o,{type:"text",value:s[1]}]:o}function Qb(e,t,r,n){return!Rl(n,!0)||/[-\d_]$/.test(r)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+r,children:[{type:"text",value:t+"@"+r}]}}function Zb(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function ew(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let r=t[0],n=r.indexOf(")");const a=zl(e,"(");let i=zl(e,")");for(;n!==-1&&a>i;)e+=r.slice(0,n+1),r=r.slice(n+1),n=r.indexOf(")"),i++;return[e,r]}function Rl(e,t){const r=e.input.charCodeAt(e.index-1);return(e.index===0||Dt(r)||an(r))&&(!t||r!==47)}jl.peek=uw;function tw(){this.buffer()}function rw(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function nw(){this.buffer()}function aw(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function iw(e){const t=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=nt(this.sliceSerialize(e)).toLowerCase(),r.label=t}function sw(e){this.exit(e)}function ow(e){const t=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=nt(this.sliceSerialize(e)).toLowerCase(),r.label=t}function lw(e){this.exit(e)}function uw(){return"["}function jl(e,t,r,n){const a=r.createTracker(n);let i=a.move("[^");const s=r.enter("footnoteReference"),o=r.enter("reference");return i+=a.move(r.safe(r.associationId(e),{after:"]",before:i})),o(),s(),i+=a.move("]"),i}function cw(){return{enter:{gfmFootnoteCallString:tw,gfmFootnoteCall:rw,gfmFootnoteDefinitionLabelString:nw,gfmFootnoteDefinition:aw},exit:{gfmFootnoteCallString:iw,gfmFootnoteCall:sw,gfmFootnoteDefinitionLabelString:ow,gfmFootnoteDefinition:lw}}}function dw(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:r,footnoteReference:jl},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function r(n,a,i,s){const o=i.createTracker(s);let l=o.move("[^");const u=i.enter("footnoteDefinition"),c=i.enter("label");return l+=o.move(i.safe(i.associationId(n),{before:l,after:"]"})),c(),l+=o.move("]:"),n.children&&n.children.length>0&&(o.shift(4),l+=o.move((t?`
|
|
21
21
|
`:" ")+i.indentLines(i.containerFlow(n,o.current()),t?$l:hw))),u(),l}}function hw(e,t,r){return t===0?e:$l(e,t,r)}function $l(e,t,r){return(r?"":" ")+e}const fw=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Ul.peek=bw;function pw(){return{canContainEols:["delete"],enter:{strikethrough:gw},exit:{strikethrough:yw}}}function mw(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:fw}],handlers:{delete:Ul}}}function gw(e){this.enter({type:"delete",children:[]},e)}function yw(e){this.exit(e)}function Ul(e,t,r,n){const a=r.createTracker(n),i=r.enter("strikethrough");let s=a.move("~~");return s+=r.containerPhrasing(e,E(m({},a.current()),{before:s,after:"~"})),s+=a.move("~~"),i(),s}function bw(){return"~"}function ww(e){return e.length}function xw(e,t){const r=t||{},n=(r.align||[]).concat(),a=r.stringLength||ww,i=[],s=[],o=[],l=[];let u=0,c=-1;for(;++c<e.length;){const v=[],w=[];let b=-1;for(e[c].length>u&&(u=e[c].length);++b<e[c].length;){const I=vw(e[c][b]);if(r.alignDelimiters!==!1){const T=a(I);w[b]=T,(l[b]===void 0||T>l[b])&&(l[b]=T)}v.push(I)}s[c]=v,o[c]=w}let d=-1;if(typeof n=="object"&&"length"in n)for(;++d<u;)i[d]=Hl(n[d]);else{const v=Hl(n);for(;++d<u;)i[d]=v}d=-1;const f=[],h=[];for(;++d<u;){const v=i[d];let w="",b="";v===99?(w=":",b=":"):v===108?w=":":v===114&&(b=":");let I=r.alignDelimiters===!1?1:Math.max(1,l[d]-w.length-b.length);const T=w+"-".repeat(I)+b;r.alignDelimiters!==!1&&(I=w.length+I+b.length,I>l[d]&&(l[d]=I),h[d]=I),f[d]=T}s.splice(1,0,f),o.splice(1,0,h),c=-1;const g=[];for(;++c<s.length;){const v=s[c],w=o[c];d=-1;const b=[];for(;++d<u;){const I=v[d]||"";let T="",D="";if(r.alignDelimiters!==!1){const B=l[d]-(w[d]||0),_=i[d];_===114?T=" ".repeat(B):_===99?B%2?(T=" ".repeat(B/2+.5),D=" ".repeat(B/2-.5)):(T=" ".repeat(B/2),D=T):D=" ".repeat(B)}r.delimiterStart!==!1&&!d&&b.push("|"),r.padding!==!1&&!(r.alignDelimiters===!1&&I==="")&&(r.delimiterStart!==!1||d)&&b.push(" "),r.alignDelimiters!==!1&&b.push(T),b.push(I),r.alignDelimiters!==!1&&b.push(D),r.padding!==!1&&b.push(" "),(r.delimiterEnd!==!1||d!==u-1)&&b.push("|")}g.push(r.delimiterEnd===!1?b.join("").replace(/ +$/,""):b.join(""))}return g.join(`
|
|
22
22
|
`)}function vw(e){return e==null?"":String(e)}function Hl(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function kw(e,t,r,n){const a=r.enter("blockquote"),i=r.createTracker(n);i.move("> "),i.shift(2);const s=r.indentLines(r.containerFlow(e,i.current()),Sw);return a(),s}function Sw(e,t,r){return">"+(r?"":" ")+e}function _w(e,t){return ql(e,t.inConstruct,!0)&&!ql(e,t.notInConstruct,!1)}function ql(e,t,r){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return r;let n=-1;for(;++n<t.length;)if(e.includes(t[n]))return!0;return!1}function Vl(e,t,r,n){let a=-1;for(;++a<r.unsafe.length;)if(r.unsafe[a].character===`
|
|
23
23
|
`&&_w(r.stack,r.unsafe[a]))return/[ \t]/.test(n.before)?"":" ";return`\\
|
|
@@ -32,9 +32,9 @@ ${n.system}`:r.system=n.system),n.tools)for(const[i,s]of Object.entries(n.tools)
|
|
|
32
32
|
`))+1))}const s="#".repeat(a),o=r.enter("headingAtx"),l=r.enter("phrasing");i.move(s+" ");let u=r.containerPhrasing(e,m({before:"# ",after:`
|
|
33
33
|
`},i.current()));return/^[\t ]/.test(u)&&(u=Cr(u.charCodeAt(0))+u.slice(1)),u=u?s+" "+u:s,r.options.closeAtx&&(u+=" "+s),l(),o(),u}Jl.peek=Ow;function Jl(e){return e.value||""}function Ow(){return"<"}Kl.peek=Fw;function Kl(e,t,r,n){const a=Ya(r),i=a==='"'?"Quote":"Apostrophe",s=r.enter("image");let o=r.enter("label");const l=r.createTracker(n);let u=l.move("![");return u+=l.move(r.safe(e.alt,m({before:u,after:"]"},l.current()))),u+=l.move("]("),o(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(o=r.enter("destinationLiteral"),u+=l.move("<"),u+=l.move(r.safe(e.url,m({before:u,after:">"},l.current()))),u+=l.move(">")):(o=r.enter("destinationRaw"),u+=l.move(r.safe(e.url,m({before:u,after:e.title?" ":")"},l.current())))),o(),e.title&&(o=r.enter(`title${i}`),u+=l.move(" "+a),u+=l.move(r.safe(e.title,m({before:u,after:a},l.current()))),u+=l.move(a),o()),u+=l.move(")"),s(),u}function Fw(){return"!"}Yl.peek=Bw;function Yl(e,t,r,n){const a=e.referenceType,i=r.enter("imageReference");let s=r.enter("label");const o=r.createTracker(n);let l=o.move("![");const u=r.safe(e.alt,m({before:l,after:"]"},o.current()));l+=o.move(u+"]["),s();const c=r.stack;r.stack=[],s=r.enter("reference");const d=r.safe(r.associationId(e),m({before:l,after:"]"},o.current()));return s(),r.stack=c,i(),a==="full"||!u||u!==d?l+=o.move(d+"]"):a==="shortcut"?l=l.slice(0,-1):l+=o.move("]"),l}function Bw(){return"!"}Gl.peek=zw;function Gl(e,t,r){let n=e.value||"",a="`",i=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(n);)a+="`";for(/[^ \r\n]/.test(n)&&(/^[ \r\n]/.test(n)&&/[ \r\n]$/.test(n)||/^`|`$/.test(n))&&(n=" "+n+" ");++i<r.unsafe.length;){const s=r.unsafe[i],o=r.compilePattern(s);let l;if(s.atBreak)for(;l=o.exec(n);){let u=l.index;n.charCodeAt(u)===10&&n.charCodeAt(u-1)===13&&u--,n=n.slice(0,u)+" "+n.slice(l.index+1)}}return a+n+a}function zw(){return"`"}function Xl(e,t){const r=ya(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(r===e.url||"mailto:"+r===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}Ql.peek=Rw;function Ql(e,t,r,n){const a=Ya(r),i=a==='"'?"Quote":"Apostrophe",s=r.createTracker(n);let o,l;if(Xl(e,r)){const c=r.stack;r.stack=[],o=r.enter("autolink");let d=s.move("<");return d+=s.move(r.containerPhrasing(e,m({before:d,after:">"},s.current()))),d+=s.move(">"),o(),r.stack=c,d}o=r.enter("link"),l=r.enter("label");let u=s.move("[");return u+=s.move(r.containerPhrasing(e,m({before:u,after:"]("},s.current()))),u+=s.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=r.enter("destinationLiteral"),u+=s.move("<"),u+=s.move(r.safe(e.url,m({before:u,after:">"},s.current()))),u+=s.move(">")):(l=r.enter("destinationRaw"),u+=s.move(r.safe(e.url,m({before:u,after:e.title?" ":")"},s.current())))),l(),e.title&&(l=r.enter(`title${i}`),u+=s.move(" "+a),u+=s.move(r.safe(e.title,m({before:u,after:a},s.current()))),u+=s.move(a),l()),u+=s.move(")"),o(),u}function Rw(e,t,r){return Xl(e,r)?"<":"["}Zl.peek=jw;function Zl(e,t,r,n){const a=e.referenceType,i=r.enter("linkReference");let s=r.enter("label");const o=r.createTracker(n);let l=o.move("[");const u=r.containerPhrasing(e,m({before:l,after:"]"},o.current()));l+=o.move(u+"]["),s();const c=r.stack;r.stack=[],s=r.enter("reference");const d=r.safe(r.associationId(e),m({before:l,after:"]"},o.current()));return s(),r.stack=c,i(),a==="full"||!u||u!==d?l+=o.move(d+"]"):a==="shortcut"?l=l.slice(0,-1):l+=o.move("]"),l}function jw(){return"["}function Ga(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function $w(e){const t=Ga(e),r=e.options.bulletOther;if(!r)return t==="*"?"-":"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(r===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+r+"`) to be different");return r}function Uw(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function eu(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function Hw(e,t,r,n){const a=r.enter("list"),i=r.bulletCurrent;let s=e.ordered?Uw(r):Ga(r);const o=e.ordered?s==="."?")":".":$w(r);let l=t&&r.bulletLastUsed?s===r.bulletLastUsed:!1;if(!e.ordered){const c=e.children?e.children[0]:void 0;if((s==="*"||s==="-")&&c&&(!c.children||!c.children[0])&&r.stack[r.stack.length-1]==="list"&&r.stack[r.stack.length-2]==="listItem"&&r.stack[r.stack.length-3]==="list"&&r.stack[r.stack.length-4]==="listItem"&&r.indexStack[r.indexStack.length-1]===0&&r.indexStack[r.indexStack.length-2]===0&&r.indexStack[r.indexStack.length-3]===0&&(l=!0),eu(r)===s&&c){let d=-1;for(;++d<e.children.length;){const f=e.children[d];if(f&&f.type==="listItem"&&f.children&&f.children[0]&&f.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(s=o),r.bulletCurrent=s;const u=r.containerFlow(e,n);return r.bulletLastUsed=s,r.bulletCurrent=i,a(),u}function qw(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function Vw(e,t,r,n){const a=qw(r);let i=r.bulletCurrent||Ga(r);t&&t.type==="list"&&t.ordered&&(i=(typeof t.start=="number"&&t.start>-1?t.start:1)+(r.options.incrementListMarker===!1?0:t.children.indexOf(e))+i);let s=i.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(s=Math.ceil(s/4)*4);const o=r.createTracker(n);o.move(i+" ".repeat(s-i.length)),o.shift(s);const l=r.enter("listItem"),u=r.indentLines(r.containerFlow(e,o.current()),c);return l(),u;function c(d,f,h){return f?(h?"":" ".repeat(s))+d:(h?i:i+" ".repeat(s-i.length))+d}}function Ww(e,t,r,n){const a=r.enter("paragraph"),i=r.enter("phrasing"),s=r.containerPhrasing(e,n);return i(),a(),s}const Jw=fn(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function Kw(e,t,r,n){return(e.children.some(function(s){return Jw(s)})?r.containerPhrasing:r.containerFlow).call(r,e,n)}function Yw(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}tu.peek=Gw;function tu(e,t,r,n){const a=Yw(r),i=r.enter("strong"),s=r.createTracker(n),o=s.move(a+a);let l=s.move(r.containerPhrasing(e,m({after:a,before:o},s.current())));const u=l.charCodeAt(0),c=gn(n.before.charCodeAt(n.before.length-1),u,a);c.inside&&(l=Cr(u)+l.slice(1));const d=l.charCodeAt(l.length-1),f=gn(n.after.charCodeAt(0),d,a);f.inside&&(l=l.slice(0,-1)+Cr(d));const h=s.move(a+a);return i(),r.attentionEncodeSurroundingInfo={after:f.outside,before:c.outside},o+l+h}function Gw(e,t,r){return r.options.strong||"*"}function Xw(e,t,r,n){return r.safe(e.value,n)}function Qw(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function Zw(e,t,r){const n=(eu(r)+(r.options.ruleSpaces?" ":"")).repeat(Qw(r));return r.options.ruleSpaces?n.slice(0,-1):n}const ru={blockquote:kw,break:Vl,code:Ew,definition:Mw,emphasis:Wl,hardBreak:Vl,heading:Dw,html:Jl,image:Kl,imageReference:Yl,inlineCode:Gl,link:Ql,linkReference:Zl,list:Hw,listItem:Vw,paragraph:Ww,root:Kw,strong:tu,text:Xw,thematicBreak:Zw};function ex(){return{enter:{table:tx,tableData:nu,tableHeader:nu,tableRow:nx},exit:{codeText:ax,table:rx,tableData:Xa,tableHeader:Xa,tableRow:Xa}}}function tx(e){const t=e._align;this.enter({type:"table",align:t.map(function(r){return r==="none"?null:r}),children:[]},e),this.data.inTable=!0}function rx(e){this.exit(e),this.data.inTable=void 0}function nx(e){this.enter({type:"tableRow",children:[]},e)}function Xa(e){this.exit(e)}function nu(e){this.enter({type:"tableCell",children:[]},e)}function ax(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,ix));const r=this.stack[this.stack.length-1];r.type,r.value=t,this.exit(e)}function ix(e,t){return t==="|"?t:e}function sx(e){const t=e||{},r=t.tableCellPadding,n=t.tablePipeAlign,a=t.stringLength,i=r?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
34
34
|
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:f,table:s,tableCell:l,tableRow:o}};function s(h,g,v,w){return u(c(h,v,w),h.align)}function o(h,g,v,w){const b=d(h,v,w),I=u([b]);return I.slice(0,I.indexOf(`
|
|
35
|
-
`))}function l(h,g,v,w){const b=v.enter("tableCell"),I=v.enter("phrasing"),T=v.containerPhrasing(h,E(m({},w),{before:i,after:i}));return I(),b(),T}function u(h,g){return xw(h,{align:g,alignDelimiters:n,padding:r,stringLength:a})}function c(h,g,v){const w=h.children;let b=-1;const I=[],T=g.enter("table");for(;++b<w.length;)I[b]=d(w[b],g,v);return T(),I}function d(h,g,v){const w=h.children;let b=-1;const I=[],T=g.enter("tableRow");for(;++b<w.length;)I[b]=l(w[b],h,g,v);return T(),I}function f(h,g,v){let w=ru.inlineCode(h,g,v);return v.stack.includes("tableCell")&&(w=w.replace(/\|/g,"\\$&")),w}}function ox(){return{exit:{taskListCheckValueChecked:au,taskListCheckValueUnchecked:au,paragraph:ux}}}function lx(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:cx}}}function au(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function ux(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const r=this.stack[this.stack.length-1];r.type;const n=r.children[0];if(n&&n.type==="text"){const a=t.children;let i=-1,s;for(;++i<a.length;){const o=a[i];if(o.type==="paragraph"){s=o;break}}s===r&&(n.value=n.value.slice(1),n.value.length===0?r.children.shift():r.position&&n.position&&typeof n.position.start.offset=="number"&&(n.position.start.column++,n.position.start.offset++,r.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function cx(e,t,r,n){const a=e.children[0],i=typeof e.checked=="boolean"&&a&&a.type==="paragraph",s="["+(e.checked?"x":" ")+"] ",o=r.createTracker(n);i&&o.move(s);let l=ru.listItem(e,t,r,m(m({},n),o.current()));return i&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(c){return c+s}}function dx(){return[Hb(),cw(),pw(),ex(),ox()]}function hx(e){return{extensions:[qb(),dw(e),mw(),sx(e),lx()]}}const fx={tokenize:wx,partial:!0},iu={tokenize:xx,partial:!0},su={tokenize:vx,partial:!0},ou={tokenize:kx,partial:!0},px={tokenize:Sx,partial:!0},lu={name:"wwwAutolink",tokenize:yx,previous:cu},uu={name:"protocolAutolink",tokenize:bx,previous:du},yt={name:"emailAutolink",tokenize:gx,previous:hu},dt={};function mx(){return{text:dt}}let Ot=48;for(;Ot<123;)dt[Ot]=yt,Ot++,Ot===58?Ot=65:Ot===91&&(Ot=97);dt[43]=yt,dt[45]=yt,dt[46]=yt,dt[95]=yt,dt[72]=[yt,uu],dt[104]=[yt,uu],dt[87]=[yt,lu],dt[119]=[yt,lu];function gx(e,t,r){const n=this;let a,i;return s;function s(d){return!Qa(d)||!hu.call(n,n.previous)||Za(n.events)?r(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),o(d))}function o(d){return Qa(d)?(e.consume(d),o):d===64?(e.consume(d),l):r(d)}function l(d){return d===46?e.check(px,c,u)(d):d===45||d===95||Me(d)?(i=!0,e.consume(d),l):c(d)}function u(d){return e.consume(d),a=!0,l}function c(d){return i&&a&&ze(n.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):r(d)}}function yx(e,t,r){const n=this;return a;function a(s){return s!==87&&s!==119||!cu.call(n,n.previous)||Za(n.events)?r(s):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(fx,e.attempt(iu,e.attempt(su,i),r),r)(s))}function i(s){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(s)}}function bx(e,t,r){const n=this;let a="",i=!1;return s;function s(d){return(d===72||d===104)&&du.call(n,n.previous)&&!Za(n.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(d),e.consume(d),o):r(d)}function o(d){if(ze(d)&&a.length<5)return a+=String.fromCodePoint(d),e.consume(d),o;if(d===58){const f=a.toLowerCase();if(f==="http"||f==="https")return e.consume(d),l}return r(d)}function l(d){return d===47?(e.consume(d),i?u:(i=!0,l)):r(d)}function u(d){return d===null||nn(d)||le(d)||Dt(d)||an(d)?r(d):e.attempt(iu,e.attempt(su,c),r)(d)}function c(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function wx(e,t,r){let n=0;return a;function a(s){return(s===87||s===119)&&n<3?(n++,e.consume(s),a):s===46&&n===3?(e.consume(s),i):r(s)}function i(s){return s===null?r(s):t(s)}}function xx(e,t,r){let n,a,i;return s;function s(u){return u===46||u===95?e.check(ou,l,o)(u):u===null||le(u)||Dt(u)||u!==45&&an(u)?l(u):(i=!0,e.consume(u),s)}function o(u){return u===95?n=!0:(a=n,n=void 0),e.consume(u),s}function l(u){return a||n||!i?r(u):t(u)}}function vx(e,t){let r=0,n=0;return a;function a(s){return s===40?(r++,e.consume(s),a):s===41&&n<r?i(s):s===33||s===34||s===38||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===60||s===63||s===93||s===95||s===126?e.check(ou,t,i)(s):s===null||le(s)||Dt(s)?t(s):(e.consume(s),a)}function i(s){return s===41&&n++,e.consume(s),a}}function kx(e,t,r){return n;function n(o){return o===33||o===34||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===63||o===95||o===126?(e.consume(o),n):o===38?(e.consume(o),i):o===93?(e.consume(o),a):o===60||o===null||le(o)||Dt(o)?t(o):r(o)}function a(o){return o===null||o===40||o===91||le(o)||Dt(o)?t(o):n(o)}function i(o){return ze(o)?s(o):r(o)}function s(o){return o===59?(e.consume(o),n):ze(o)?(e.consume(o),s):r(o)}}function Sx(e,t,r){return n;function n(i){return e.consume(i),a}function a(i){return Me(i)?r(i):t(i)}}function cu(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||le(e)}function du(e){return!ze(e)}function hu(e){return!(e===47||Qa(e))}function Qa(e){return e===43||e===45||e===46||e===95||Me(e)}function Za(e){let t=e.length,r=!1;for(;t--;){const n=e[t][1];if((n.type==="labelLink"||n.type==="labelImage")&&!n._balanced){r=!0;break}if(n._gfmAutolinkLiteralWalkedInto){r=!1;break}}return e.length>0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}const _x={tokenize:Nx,partial:!0};function Tx(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Ax,continuation:{tokenize:Mx},exit:Px}},text:{91:{name:"gfmFootnoteCall",tokenize:Ex},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:Cx,resolveTo:Ix}}}}function Cx(e,t,r){const n=this;let a=n.events.length;const i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let s;for(;a--;){const l=n.events[a][1];if(l.type==="labelImage"){s=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return o;function o(l){if(!s||!s._balanced)return r(l);const u=nt(n.sliceSerialize({start:s.end,end:n.now()}));return u.codePointAt(0)!==94||!i.includes(u.slice(1))?r(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function Ix(e,t){let r=e.length;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";const n={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const i={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},o=[e[r+1],e[r+2],["enter",n,t],e[r+3],e[r+4],["enter",a,t],["exit",a,t],["enter",i,t],["enter",s,t],["exit",s,t],["exit",i,t],e[e.length-2],e[e.length-1],["exit",n,t]];return e.splice(r,e.length-r+1,...o),e}function Ex(e,t,r){const n=this,a=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let i=0,s;return o;function o(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?r(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(d){if(i>999||d===93&&!s||d===null||d===91||le(d))return r(d);if(d===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return a.includes(nt(n.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):r(d)}return le(d)||(s=!0),i++,e.consume(d),d===92?c:u}function c(d){return d===91||d===92||d===93?(e.consume(d),i++,u):u(d)}}function Ax(e,t,r){const n=this,a=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let i,s=0,o;return l;function l(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):r(g)}function c(g){if(s>999||g===93&&!o||g===null||g===91||le(g))return r(g);if(g===93){e.exit("chunkString");const v=e.exit("gfmFootnoteDefinitionLabelString");return i=nt(n.sliceSerialize(v)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return le(g)||(o=!0),s++,e.consume(g),g===92?d:c}function d(g){return g===91||g===92||g===93?(e.consume(g),s++,c):c(g)}function f(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),a.includes(i)||a.push(i),re(e,h,"gfmFootnoteDefinitionWhitespace")):r(g)}function h(g){return t(g)}}function Mx(e,t,r){return e.check(xr,t,e.attempt(_x,t,r))}function Px(e){e.exit("gfmFootnoteDefinition")}function Nx(e,t,r){const n=this;return re(e,a,"gfmFootnoteDefinitionIndent",5);function a(i){const s=n.events[n.events.length-1];return s&&s[1].type==="gfmFootnoteDefinitionIndent"&&s[2].sliceSerialize(s[1],!0).length===4?t(i):r(i)}}function Lx(e){let r=(e||{}).singleTilde;const n={name:"strikethrough",tokenize:i,resolveAll:a};return r==null&&(r=!0),{text:{126:n},insideSpan:{null:[n]},attentionMarkers:{null:[126]}};function a(s,o){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";const c={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",c,o],["enter",s[u][1],o],["exit",s[u][1],o],["enter",d,o]],h=o.parser.constructs.insideSpan.null;h&&Je(f,f.length,0,sn(h,s.slice(u+1,l),o)),Je(f,f.length,0,[["exit",d,o],["enter",s[l][1],o],["exit",s[l][1],o],["exit",c,o]]),Je(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type="data");return s}function i(s,o,l){const u=this.previous,c=this.events;let d=0;return f;function f(g){return u===126&&c[c.length-1][1].type!=="characterEscape"?l(g):(s.enter("strikethroughSequenceTemporary"),h(g))}function h(g){const v=Xt(u);if(g===126)return d>1?l(g):(s.consume(g),d++,h);if(d<2&&!r)return l(g);const w=s.exit("strikethroughSequenceTemporary"),b=Xt(g);return w._open=!b||b===2&&!!v,w._close=!v||v===2&&!!b,o(g)}}}class Dx{constructor(){this.map=[]}add(t,r,n){Ox(this,t,r,n)}consume(t){if(this.map.sort(function(i,s){return i[0]-s[0]}),this.map.length===0)return;let r=this.map.length;const n=[];for(;r>0;)r-=1,n.push(t.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),t.length=this.map[r][0];n.push(t.slice()),t.length=0;let a=n.pop();for(;a;){for(const i of a)t.push(i);a=n.pop()}this.map.length=0}}function Ox(e,t,r,n){let a=0;if(!(r===0&&n.length===0)){for(;a<e.map.length;){if(e.map[a][0]===t){e.map[a][1]+=r,e.map[a][2].push(...n);return}a+=1}e.map.push([t,r,n])}}function Fx(e,t){let r=!1;const n=[];for(;t<e.length;){const a=e[t];if(r){if(a[0]==="enter")a[1].type==="tableContent"&&n.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(a[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const i=n.length-1;n[i]=n[i]==="left"?"center":"right"}}else if(a[1].type==="tableDelimiterRow")break}else a[0]==="enter"&&a[1].type==="tableDelimiterRow"&&(r=!0);t+=1}return n}function Bx(){return{flow:{null:{name:"table",tokenize:zx,resolveAll:Rx}}}}function zx(e,t,r){const n=this;let a=0,i=0,s;return o;function o(S){let P=n.events.length-1;for(;P>-1;){const z=n.events[P][1].type;if(z==="lineEnding"||z==="linePrefix")P--;else break}const N=P>-1?n.events[P][1].type:null,H=N==="tableHead"||N==="tableRow"?_:l;return H===_&&n.parser.lazy[n.now().line]?r(S):H(S)}function l(S){return e.enter("tableHead"),e.enter("tableRow"),u(S)}function u(S){return S===124||(s=!0,i+=1),c(S)}function c(S){return S===null?r(S):J(S)?i>1?(i=0,n.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(S),e.exit("lineEnding"),h):r(S):Z(S)?re(e,c,"whitespace")(S):(i+=1,s&&(s=!1,a+=1),S===124?(e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),s=!0,c):(e.enter("data"),d(S)))}function d(S){return S===null||S===124||le(S)?(e.exit("data"),c(S)):(e.consume(S),S===92?f:d)}function f(S){return S===92||S===124?(e.consume(S),d):d(S)}function h(S){return n.interrupt=!1,n.parser.lazy[n.now().line]?r(S):(e.enter("tableDelimiterRow"),s=!1,Z(S)?re(e,g,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(S):g(S))}function g(S){return S===45||S===58?w(S):S===124?(s=!0,e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),v):B(S)}function v(S){return Z(S)?re(e,w,"whitespace")(S):w(S)}function w(S){return S===58?(i+=1,s=!0,e.enter("tableDelimiterMarker"),e.consume(S),e.exit("tableDelimiterMarker"),b):S===45?(i+=1,b(S)):S===null||J(S)?D(S):B(S)}function b(S){return S===45?(e.enter("tableDelimiterFiller"),I(S)):B(S)}function I(S){return S===45?(e.consume(S),I):S===58?(s=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(S),e.exit("tableDelimiterMarker"),T):(e.exit("tableDelimiterFiller"),T(S))}function T(S){return Z(S)?re(e,D,"whitespace")(S):D(S)}function D(S){return S===124?g(S):S===null||J(S)?!s||a!==i?B(S):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(S)):B(S)}function B(S){return r(S)}function _(S){return e.enter("tableRow"),j(S)}function j(S){return S===124?(e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),j):S===null||J(S)?(e.exit("tableRow"),t(S)):Z(S)?re(e,j,"whitespace")(S):(e.enter("data"),R(S))}function R(S){return S===null||S===124||le(S)?(e.exit("data"),j(S)):(e.consume(S),S===92?U:R)}function U(S){return S===92||S===124?(e.consume(S),R):R(S)}}function Rx(e,t){let r=-1,n=!0,a=0,i=[0,0,0,0],s=[0,0,0,0],o=!1,l=0,u,c,d;const f=new Dx;for(;++r<e.length;){const h=e[r],g=h[1];h[0]==="enter"?g.type==="tableHead"?(o=!1,l!==0&&(fu(f,t,l,u,c),c=void 0,l=0),u={type:"table",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(r,0,[["enter",u,t]])):g.type==="tableRow"||g.type==="tableDelimiterRow"?(n=!0,d=void 0,i=[0,0,0,0],s=[0,r+1,0,0],o&&(o=!1,c={type:"tableBody",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(r,0,[["enter",c,t]])),a=g.type==="tableDelimiterRow"?2:c?3:1):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")?(n=!1,s[2]===0&&(i[1]!==0&&(s[0]=s[1],d=yn(f,t,i,a,void 0,d),i=[0,0,0,0]),s[2]=r)):g.type==="tableCellDivider"&&(n?n=!1:(i[1]!==0&&(s[0]=s[1],d=yn(f,t,i,a,void 0,d)),i=s,s=[i[1],r,0,0])):g.type==="tableHead"?(o=!0,l=r):g.type==="tableRow"||g.type==="tableDelimiterRow"?(l=r,i[1]!==0?(s[0]=s[1],d=yn(f,t,i,a,r,d)):s[1]!==0&&(d=yn(f,t,s,a,r,d)),a=0):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")&&(s[3]=r)}for(l!==0&&fu(f,t,l,u,c),f.consume(t.events),r=-1;++r<t.events.length;){const h=t.events[r];h[0]==="enter"&&h[1].type==="table"&&(h[1]._align=Fx(t.events,r))}return e}function yn(e,t,r,n,a,i){const s=n===1?"tableHeader":n===2?"tableDelimiter":"tableData",o="tableContent";r[0]!==0&&(i.end=Object.assign({},Zt(t.events,r[0])),e.add(r[0],0,[["exit",i,t]]));const l=Zt(t.events,r[1]);if(i={type:s,start:Object.assign({},l),end:Object.assign({},l)},e.add(r[1],0,[["enter",i,t]]),r[2]!==0){const u=Zt(t.events,r[2]),c=Zt(t.events,r[3]),d={type:o,start:Object.assign({},u),end:Object.assign({},c)};if(e.add(r[2],0,[["enter",d,t]]),n!==2){const f=t.events[r[2]],h=t.events[r[3]];if(f[1].end=Object.assign({},h[1].end),f[1].type="chunkText",f[1].contentType="text",r[3]>r[2]+1){const g=r[2]+1,v=r[3]-r[2]-1;e.add(g,v,[])}}e.add(r[3]+1,0,[["exit",d,t]])}return a!==void 0&&(i.end=Object.assign({},Zt(t.events,a)),e.add(a,0,[["exit",i,t]]),i=void 0),i}function fu(e,t,r,n,a){const i=[],s=Zt(t.events,r);a&&(a.end=Object.assign({},s),i.push(["exit",a,t])),n.end=Object.assign({},s),i.push(["exit",n,t]),e.add(r+1,0,i)}function Zt(e,t){const r=e[t],n=r[0]==="enter"?"start":"end";return r[1][n]}const jx={name:"tasklistCheck",tokenize:Ux};function $x(){return{text:{91:jx}}}function Ux(e,t,r){const n=this;return a;function a(l){return n.previous!==null||!n._gfmTasklistFirstContentOfListItem?r(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),i)}function i(l){return le(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),s):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),s):r(l)}function s(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),o):r(l)}function o(l){return J(l)?t(l):Z(l)?e.check({tokenize:Hx},t,r)(l):r(l)}}function Hx(e,t,r){return re(e,n,"whitespace");function n(a){return a===null?r(a):t(a)}}function qx(e){return Ho([mx(),Tx(),Lx(e),Bx(),$x()])}const Vx={};function Wx(e){const t=this,r=e||Vx,n=t.data(),a=n.micromarkExtensions||(n.micromarkExtensions=[]),i=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),s=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);a.push(qx(r)),i.push(dx()),s.push(hx(r))}function ke(...e){return e.filter(Boolean).join(" ")}const Jx=({content:e})=>p.jsx(Bb,{remarkPlugins:[Wx],className:"cuadra-aui-md",components:Gx,children:e}),ei=y.memo(Jx),Kx=({language:e,code:t})=>{const{isCopied:r,copyToClipboard:n}=Yx(),a=()=>{!t||r||n(t)};return p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-between cuadra-gap-4 cuadra-mt-4 cuadra-rounded-t-lg cuadra-bg-muted/50 cuadra-border-b cuadra-border-border cuadra-px-4 cuadra-py-2 cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-font-brand",children:[p.jsx("span",{className:"cuadra-lowercase [&>span]:cuadra-text-xs cuadra-font-brand",children:e}),p.jsxs("button",{onClick:a,className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-muted cuadra-transition-colors","aria-label":"Copy code",children:[!r&&p.jsx(Bu,{className:"cuadra-h-4 cuadra-w-4"}),r&&p.jsx(Ou,{className:"cuadra-h-4 cuadra-w-4"})]})]})},Yx=({copiedDuration:e=3e3}={})=>{const[t,r]=y.useState(!1);return{isCopied:t,copyToClipboard:a=>{a&&navigator.clipboard.writeText(a).then(()=>{r(!0),setTimeout(()=>r(!1),e)})}}},Gx=vb({h1:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h1",m({className:ke("cuadra-mb-6 cuadra-scroll-m-20 cuadra-text-2xl cuadra-font-normal cuadra-tracking-tight last:cuadra-mb-0 font-brand",e)},t))},h2:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h2",m({className:ke("cuadra-mb-4 cuadra-mt-6 cuadra-scroll-m-20 cuadra-text-xl cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h3:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h3",m({className:ke("cuadra-mb-3 cuadra-mt-5 cuadra-scroll-m-20 cuadra-text-lg cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h4:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h4",m({className:ke("cuadra-mb-4 cuadra-mt-6 cuadra-scroll-m-20 cuadra-text-xl cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h5:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h5",m({className:ke("cuadra-my-4 cuadra-text-lg cuadra-font-normal first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h6:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h6",m({className:ke("cuadra-my-4 cuadra-font-normal first:cuadra-mb-0 font-brand",e)},t))},p:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("p",m({className:ke("cuadra-mb-5 cuadra-mt-5 cuadra-leading-7 first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},a:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("a",m({className:ke("cuadra-text-primary cuadra-font-medium cuadra-underline cuadra-underline-offset-4 font-brand",e)},t))},blockquote:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("blockquote",m({className:ke("cuadra-border-l-2 cuadra-pl-6 cuadra-italic font-brand",e)},t))},ul:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("ul",m({className:ke("cuadra-my-5 cuadra-ml-6 cuadra-list-disc [&>li]:cuadra-mt-2 font-brand",e)},t))},ol:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("ol",m({className:ke("cuadra-my-5 cuadra-ml-6 cuadra-list-decimal [&>li]:cuadra-mt-2 font-brand",e)},t))},hr:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("hr",m({className:ke("cuadra-my-5 cuadra-border-b",e)},t))},table:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("table",m({className:ke("cuadra-my-5 cuadra-w-full cuadra-border-separate cuadra-border-spacing-0 cuadra-overflow-y-auto font-brand",e)},t))},th:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("th",m({className:ke("cuadra-bg-muted cuadra-px-4 cuadra-py-2 cuadra-text-left cuadra-font-normal first:cuadra-rounded-tl-lg last:cuadra-rounded-tr-lg [&[align=center]]:cuadra-text-center [&[align=right]]:cuadra-text-right font-brand",e)},t))},td:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("td",m({className:ke("cuadra-border-b cuadra-border-l cuadra-px-4 cuadra-py-2 cuadra-text-left last:cuadra-border-r [&[align=center]]:cuadra-text-center [&[align=right]]:cuadra-text-right font-brand",e)},t))},tr:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("tr",m({className:ke("cuadra-m-0 cuadra-border-b cuadra-p-0 first:cuadra-border-t [&:last-child>td:first-child]:cuadra-rounded-bl-lg [&:last-child>td:last-child]:cuadra-rounded-br-lg",e)},t))},sup:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("sup",m({className:ke("[&>a]:cuadra-text-xs [&>a]:cuadra-no-underline font-brand",e)},t))},pre:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("pre",m({className:ke("cuadra-overflow-x-auto cuadra-rounded-b-lg !cuadra-rounded-t-none cuadra-bg-muted cuadra-p-4 cuadra-text-foreground font-brand",e)},t))},code:function(n){var a=n,{className:t}=a,r=V(a,["className"]);const i=Ll();return p.jsx("code",m({className:ke(!i&&"cuadra-bg-muted cuadra-rounded cuadra-border cuadra-font-normal font-brand",t)},r))},CodeHeader:Kx});function pu(n){var a=n,{className:e="",variant:t="default"}=a,r=V(a,["className","variant"]);const i="cuadra-inline-flex cuadra-items-center cuadra-rounded-md cuadra-px-3 cuadra-py-1.5 cuadra-text-xs cuadra-font-medium font-brand",s={default:"cuadra-border cuadra-border-border cuadra-bg-muted cuadra-text-muted-foreground",subtle:"cuadra-border cuadra-border-border/50 cuadra-bg-muted/50 cuadra-text-muted-foreground",outline:"cuadra-border cuadra-border-border cuadra-bg-background cuadra-text-foreground",ghost:"cuadra-text-muted-foreground"};return p.jsx("div",m({className:`${i} ${s[t]||s.default} ${e}`},r))}function Xx(e){const t=new Map;for(const r of e){const n=t.get(r.filename);(!n||r.score>n.score)&&t.set(r.filename,r)}return Array.from(t.values()).sort((r,n)=>n.score-r.score)}function Qx({sources:e,maxVisible:t=3}){if(!e||e.length===0)return null;const r=Xx(e),n=r.slice(0,t),a=r.length-t;return p.jsxs("div",{className:"cuadra-mt-4 cuadra-pt-3 cuadra-border-t cuadra-border-border",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-1.5 cuadra-mb-2.5",children:[p.jsx(oi,{className:"cuadra-h-3.5 cuadra-w-3.5 cuadra-text-muted-foreground"}),p.jsx("span",{className:"cuadra-text-xs cuadra-font-medium cuadra-text-muted-foreground font-brand",children:"Sources"})]}),p.jsxs("div",{className:"cuadra-flex cuadra-flex-wrap cuadra-gap-2",children:[n.map((i,s)=>p.jsx(ev,{source:i},i.sourceId||s)),a>0&&p.jsxs(pu,{variant:"subtle",children:["+",a," more"]})]})]})}function Zx(e){var r;switch((r=e.split(".").pop())==null?void 0:r.toLowerCase()){case"csv":case"xlsx":case"xls":return Ru;case"md":case"txt":return ju;default:return oi}}function ev({source:e}){const{filename:t,score:r}=e,n=Zx(t);return p.jsxs(pu,{className:"cuadra-gap-2 cuadra-cursor-default",title:r<1?`${Math.round(r*100)}% relevant`:void 0,children:[p.jsx(n,{className:"cuadra-h-3.5 cuadra-w-3.5 cuadra-shrink-0 cuadra-opacity-60"}),p.jsx("span",{className:"cuadra-truncate cuadra-max-w-[180px]",children:t}),r<1&&r>0&&p.jsxs("span",{className:"cuadra-opacity-50 cuadra-text-[10px] cuadra-tabular-nums",children:[Math.round(r*100),"%"]})]})}const mu=y.forwardRef(function({welcomeTitle:t="Hi, how can I help you today?",welcomeSubtitle:r="Start exploring our platform and discover what you can build.",extraTopPadding:n,suggestions:a,inputPlaceholder:i="Type your message...",enableAttachments:s=!1,preMadeResponseDelay:o=1e3,streamingSpeed:l=50},u){const c=os(),d=fe(),[f,h]=y.useState(!1),[g,v]=y.useState(null),[w,b]=y.useState(!1),I=y.useCallback((_,j,R)=>{var U,S;if(!w)try{const P=(U=R==null?void 0:R.streamingSpeed)!=null?U:l,N=(S=R==null?void 0:R.delay)!=null?S:o;fo(_,j,P,N),d.composer().setText(_),setTimeout(()=>{d.composer().send()},10)}catch(P){}},[w,l,o,d]),T=y.useCallback(_=>{try{d.composer().setText(_),setTimeout(()=>{d.composer().send()},10)}catch(j){}},[d]),D=y.useCallback(_=>M(null,null,function*(){var j;if(!(w||!c))try{if(_.response){const R=(j=_.responseDelay)!=null?j:o;yield I(_.prompt,_.response,{delay:R,streamingSpeed:l})}else T(_.prompt)}catch(R){}}),[c,w,o,l,I,T]),B=y.useCallback(()=>{try{const _=window.__cuadraThreadListRuntime;_!=null&&_.switchToNewThread&&_.switchToNewThread()}catch(_){}},[]);return y.useImperativeHandle(u,()=>({sendMessage:T,sendPreMadeQA:I,clearChat:B}),[T,I,B]),y.useEffect(()=>{var _,j;if(!c){h(!1);return}try{const R=c==null?void 0:c.store;if(!R){h(!1);return}const U=(_=R.subscribe)==null?void 0:_.call(R,P=>{const N=P==null?void 0:P.threadId,H=(P==null?void 0:P.messages)||[],z=(P==null?void 0:P.isLoadingHistory)||!1,O=H.length;N&&N!==g&&v(N),h(z&&O===0)}),S=(j=R.getState)==null?void 0:j.call(R);if(S){const P=S==null?void 0:S.threadId,N=(S==null?void 0:S.messages)||[],H=(S==null?void 0:S.isLoadingHistory)||!1,z=N.length;P&&P!==g&&v(P),h(H&&z===0)}return()=>{U&&U()}}catch(R){h(!1)}},[c,g]),p.jsxs(Qs,{className:"cuadra-bg-inherit cuadra-flex cuadra-flex-col cuadra-w-full cuadra-h-full",children:[p.jsx(to,{className:"cuadra-w-full cuadra-bg-inherit cuadra-px-4 cuadra-flex-1 cuadra-min-h-0 cuadra-overflow-y-auto cuadra-relative scrollbar-thin cuadra-pt-4",style:n?{paddingTop:n}:void 0,children:f?p.jsx("div",{className:"cuadra-absolute cuadra-inset-0 cuadra-flex cuadra-items-center cuadra-justify-center",children:p.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:[p.jsx(li,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"}),p.jsx("p",{className:"cuadra-text-sm cuadra-text-muted-foreground font-brand",children:"Loading messages..."})]})}):p.jsxs(p.Fragment,{children:[p.jsx(Zs,{children:p.jsx(tv,{title:t,subtitle:r,suggestions:a,onSuggestionClick:D,isProcessing:w})}),p.jsx(ep,{components:{UserMessage:rv,AssistantMessage:iv}})]})}),p.jsxs("div",{className:"cuadra-w-full cuadra-mt-3 cuadra-border-t cuadra-border-border cuadra-pt-4",children:[s&&p.jsx(Xs,{components:{Attachment:()=>{const _=te(({attachment:j})=>j);return _?p.jsxs("div",{className:"cuadra-relative cuadra-inline-flex cuadra-items-center cuadra-gap-2 cuadra-mb-2 cuadra-px-2 cuadra-py-1 cuadra-rounded-md cuadra-bg-muted cuadra-border cuadra-border-border",children:[p.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground font-brand",children:_.name||"Attachment"}),p.jsx(uf,{asChild:!0,children:p.jsx("button",{type:"button",className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-size-4 cuadra-rounded hover:cuadra-bg-background cuadra-transition-colors","aria-label":"Remove attachment",children:p.jsx(Cn,{className:"cuadra-h-3 cuadra-w-3 cuadra-text-muted-foreground"})})})]}):null}}}),p.jsxs(Us,{className:"cuadra-relative !cuadra-relative cuadra-flex-1 cuadra-w-full",children:[p.jsx(Ys,{asChild:!0,children:p.jsx("textarea",{rows:3,placeholder:i,className:"cuadra-flex cuadra-min-h-[80px] cuadra-w-full cuadra-rounded-md cuadra-border cuadra-border-border cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-base cuadra-text-foreground placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-resize-none font-brand",style:{paddingRight:s?"5rem":"3rem",fontSize:"1rem",borderWidth:"1px"}})}),s&&p.jsx(Vf,{multiple:!0,asChild:!0,children:p.jsx("button",{type:"button",className:"!cuadra-absolute !cuadra-bottom-2 !cuadra-right-12 cuadra-size-8 cuadra-rounded-md hover:cuadra-bg-muted cuadra-transition-colors cuadra-flex cuadra-items-center cuadra-justify-center cuadra-border cuadra-border-border",style:{position:"absolute",bottom:"0.5rem",right:"3rem"},"aria-label":"Attach file",children:p.jsx(ui,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground",strokeWidth:1.5})})}),p.jsx(Cf,{asChild:!0,children:p.jsx("button",{className:"!cuadra-absolute !cuadra-bottom-2 !cuadra-right-2 cuadra-size-8 cuadra-rounded-md cuadra-shadow-sm hover:cuadra-opacity-90 disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed cuadra-flex cuadra-items-center cuadra-justify-center",style:{position:"absolute",bottom:"0.5rem",right:"0.5rem",backgroundColor:"var(--cuadra-primary)",color:"hsl(var(--cuadra-primary-foreground))"},"aria-label":"Send message",type:"button",children:p.jsx(Du,{className:"cuadra-h-4 cuadra-w-4"})})})]})]})]})});function tv({title:e,subtitle:t,suggestions:r,onSuggestionClick:n,isProcessing:a}){return p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-h-full cuadra-py-12 cuadra-px-4 cuadra-overflow-y-auto scrollbar-hide",children:p.jsxs("div",{className:"cuadra-text-center cuadra-max-w-3xl cuadra-w-full cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-min-h-full",children:[p.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-mb-8",children:[p.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground cuadra-mb-2 font-brand",children:e}),p.jsx("p",{className:"cuadra-text-muted-foreground font-brand",children:t})]}),r&&r.length>0&&p.jsx("div",{className:"cuadra-grid cuadra-grid-cols-2 cuadra-gap-2 cuadra-pb-4 cuadra-w-full cuadra-max-w-2xl",children:r.map((i,s)=>p.jsx("button",{type:"button",onClick:()=>n(i),disabled:a,className:"cuadra-w-full cuadra-text-center cuadra-px-4 cuadra-py-3 cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-bg-background cuadra-text-sm cuadra-text-foreground font-brand cuadra-cursor-pointer focus:cuadra-outline-none focus:cuadra-ring-0 disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed",style:{borderWidth:"1px"},children:i.prompt},`suggestion-${s}`))})]})})}function rv(){return p.jsxs(Zn,{className:"cuadra-grid cuadra-w-full cuadra-auto-rows-auto cuadra-grid-cols-[minmax(72px,1fr)_auto] cuadra-gap-y-2 cuadra-py-3 [&:where(>*)]:cuadra-col-start-2",children:[p.jsx(js,{components:{Attachment:()=>{var i;const e=te(({attachment:s})=>s);if(!e)return null;const t=e.type==="image",r=e.file,n=(i=e.content)==null?void 0:i.find(s=>s.type==="image"),a=r?URL.createObjectURL(r):n==null?void 0:n.image;return p.jsx("div",{className:"cuadra-col-start-2 cuadra-row-start-1 cuadra-mb-2 cuadra-max-w-[calc(42rem*0.8)]",children:t&&a?p.jsx("img",{src:a,alt:e.name||"Attachment",className:"cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-max-h-64 cuadra-max-w-full cuadra-object-contain",style:{borderWidth:"1px"}}):p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-bg-muted cuadra-px-3 cuadra-py-2",children:[p.jsx(ui,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),p.jsx("span",{className:"cuadra-text-sm cuadra-text-foreground font-brand",children:e.name||"Attachment"})]})})}}}),p.jsx("div",{className:"cuadra-bg-muted cuadra-text-foreground cuadra-col-start-2 cuadra-row-start-2 cuadra-max-w-[calc(42rem*0.8)] cuadra-break-words cuadra-rounded-3xl cuadra-border cuadra-border-border cuadra-px-5 cuadra-py-2.5 font-brand",style:{maxWidth:"calc(42rem * 0.8)",borderRadius:"1.5rem",backgroundColor:"var(--cuadra-muted)",color:"hsl(var(--cuadra-foreground))",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",wordBreak:"break-word",borderWidth:"1px"},children:p.jsx(ea,{components:{Text:({text:e})=>p.jsx(ei,{content:e||""})}})})]})}function nv({text:e}){const[t,r]=y.useState(!1),n=te(({message:a})=>{var i;return((i=a==null?void 0:a.status)==null?void 0:i.type)==="running"});return e?n?p.jsx("div",{className:"cuadra-mb-3 cuadra-py-1",children:p.jsx("div",{className:"cuadra-text-sm cuadra-text-muted-foreground cuadra-leading-relaxed font-brand cuadra-animate-text-shimmer",children:e})}):p.jsxs("div",{className:"cuadra-mb-3",children:[p.jsxs("button",{type:"button",onClick:()=>r(!t),className:"cuadra-flex cuadra-items-center cuadra-gap-1.5 cuadra-py-1 cuadra-text-sm cuadra-text-muted-foreground hover:cuadra-text-foreground cuadra-transition-colors font-brand",children:[p.jsx(Tn,{className:`cuadra-h-3.5 cuadra-w-3.5 cuadra-shrink-0 cuadra-transition-transform cuadra-duration-200 ${t?"":"cuadra--rotate-90"}`}),p.jsx("span",{children:"Reasoning"})]}),p.jsx("div",{className:`cuadra-overflow-hidden cuadra-transition-all cuadra-duration-200 cuadra-ease-out ${t?"cuadra-max-h-[2000px] cuadra-opacity-100":"cuadra-max-h-0 cuadra-opacity-0"}`,children:p.jsx("div",{className:"cuadra-pl-5 cuadra-pt-2 cuadra-text-sm cuadra-text-muted-foreground cuadra-leading-relaxed font-brand",children:p.jsx(ei,{content:e})})})]}):null}function av(){return p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 cuadra-text-muted-foreground cuadra-text-sm font-brand cuadra-py-2",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-1",children:[p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"0ms"}}),p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"150ms"}}),p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"300ms"}})]}),p.jsx("span",{children:"Thinking..."})]})}function iv(){const[e]=y.useState(()=>Nt.getCurrentMessageId()),t=te(({message:a})=>{var i;return((i=a==null?void 0:a.status)==null?void 0:i.type)==="running"}),r=te(({message:a})=>{const i=a==null?void 0:a.content;return!i||!Array.isArray(i)?!1:i.some(s=>!!(s.type==="text"&&s.text&&s.text.length>0||s.type==="reasoning"&&s.text&&s.text.length>0))}),n=y.useSyncExternalStore(a=>Nt.subscribe(a),()=>{var a;if(e){const i=Nt.getForMessage(e);if((a=i.sources)!=null&&a.length)return i.sources}return Nt.get().sources||null},()=>null);return p.jsx(Zn,{className:"cuadra-relative cuadra-grid cuadra-w-full cuadra-grid-cols-[auto_auto_1fr] cuadra-grid-rows-[auto_1fr] cuadra-py-3",children:p.jsxs("div",{className:"cuadra-text-foreground cuadra-col-span-2 cuadra-col-start-2 cuadra-row-start-1 cuadra-my-1.5 cuadra-max-w-[90%] cuadra-break-words cuadra-leading-7 font-brand",style:{maxWidth:"90%",marginTop:"0.375rem",marginBottom:"0.375rem"},children:[p.jsx(ea,{components:{Text:({text:a})=>p.jsx(ei,{content:a||""}),Reasoning:({text:a})=>p.jsx(nv,{text:a||""})}}),t&&!r&&p.jsx(av,{}),n&&n.length>0&&p.jsx(Qx,{sources:n})]})})}const gu=({className:e="",theme:t="system"})=>{const r=()=>{if(typeof window=="undefined")return"light";if(t==="system"){const s=localStorage.getItem("theme");return s||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")}return t},[n,a]=y.useState(r);y.useEffect(()=>{t!=="system"&&a(t)},[t]),y.useEffect(()=>{const s=document.documentElement;s.classList.remove("light","dark"),s.classList.add(n),t==="system"&&localStorage.setItem("theme",n)},[n,t]);const i=()=>{t==="system"&&a(s=>s==="light"?"dark":"light")};return p.jsx("button",{type:"button","aria-label":"Toggle theme",onClick:i,disabled:t!=="system",className:`cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed ${e}`,children:p.jsx(Fu,{className:`cuadra-h-4 cuadra-w-4 cuadra-transition-colors ${n==="dark"?"cuadra-text-primary":"cuadra-text-gray-400"}`})})};function sv({onThreadSelect:e}){var w,b;const t=ls(),r=Wd(I=>I.threadId),[n,a]=y.useState(null),i=(t==null?void 0:t.id)===r,s=n===(t==null?void 0:t.id),[o,l]=y.useState(!1),[u,c]=y.useState((t==null?void 0:t.title)||""),[d,f]=y.useState(!1),[h,g]=y.useState(!1),v=()=>M(null,null,function*(){if(!(t!=null&&t.remoteId)||!u||u===t.title){l(!1);return}try{g(!0);const I=window.__cuadraThreadListAdapter;I&&typeof I.rename=="function"&&(yield I.rename(t.remoteId,u)),l(!1),f(!1)}catch(I){l(!1),f(!1)}finally{g(!1)}});return y.useEffect(()=>{t!=null&&t.title&&!o&&c(t.title)},[t==null?void 0:t.title,o]),t?p.jsxs(uo,{className:`group cuadra-relative cuadra-flex cuadra-items-center cuadra-rounded-lg cuadra-transition-colors cuadra-cursor-pointer cuadra-border cuadra-mb-2 ${i?"cuadra-bg-muted cuadra-border-border":"cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border"}`,style:{marginBottom:"0.5rem"},onMouseEnter:()=>a(t.id),onMouseLeave:()=>a(null),children:[p.jsx(ap,{className:"cuadra-p-3 cuadra-flex-1 cuadra-flex cuadra-items-center cuadra-min-w-0 cuadra-cursor-pointer",onClick:()=>e==null?void 0:e(),children:p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-min-w-0 cuadra-flex-1 cuadra-items-start cuadra-text-left",children:o?p.jsx("input",{className:"cuadra-flex cuadra-w-full cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 font-brand",value:u,onChange:I=>c(I.target.value),onKeyDown:I=>{I.key==="Enter"&&v(),I.key==="Escape"&&(l(!1),c(t.title||""))},disabled:h,autoFocus:!0,onClick:I=>I.stopPropagation()}):p.jsxs(p.Fragment,{children:[p.jsx("span",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-truncate font-brand",children:(((w=t.title)==null?void 0:w.length)||0)>60?`${(b=t.title)==null?void 0:b.slice(0,60)}…`:t.title||"Chat"}),t.updatedAt&&p.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-mt-1 font-brand",children:new Date(t.updatedAt).toLocaleDateString()})]})})}),p.jsx("div",{className:"cuadra-mr-2 cuadra-flex-shrink-0 cuadra-w-6 cuadra-h-6 cuadra-flex cuadra-items-center cuadra-justify-center",children:(s||i||d)&&p.jsxs("div",{className:"cuadra-relative",children:[p.jsx("button",{type:"button",className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-background/50 cuadra-transition-colors",onClick:I=>{I.stopPropagation(),f(!d)},"aria-label":"Thread options",children:p.jsx(zu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"})}),d&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-40",onClick:()=>f(!1)}),p.jsx("div",{className:"cuadra-absolute cuadra-right-0 cuadra-top-8 cuadra-z-50 cuadra-bg-background cuadra-border cuadra-border-border cuadra-rounded-lg cuadra-shadow-lg cuadra-min-w-[120px] cuadra-overflow-hidden",children:o?p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),v()},disabled:h,children:"Save"}):p.jsxs(p.Fragment,{children:[p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),l(!0),c(t.title||""),f(!1)},children:"Rename"}),p.jsx("div",{className:"cuadra-border-t cuadra-border-border"}),p.jsx(rp,{asChild:!0,children:p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left cuadra-text-destructive hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),f(!1)},children:"Delete"})})]})})]})]})})]}):null}function yu({onThreadSelect:e,showThemeToggle:t,theme:r,onLogout:n}){return p.jsxs(lo,{className:"!cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-transition-all cuadra-duration-300 cuadra-ease-in-out cuadra-h-full cuadra-w-80",style:{borderRightWidth:"1px"},children:[p.jsx("div",{className:"cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-end cuadra-transition-all cuadra-duration-300 cuadra-h-16 cuadra-px-4",children:p.jsx("button",{type:"button",onClick:e,className:"cuadra-flex md:cuadra-hidden cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Close",children:p.jsx(Cn,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})})}),p.jsxs("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-2 scrollbar-thin",children:[p.jsx(io,{className:"group cuadra-relative cuadra-flex cuadra-items-center cuadra-gap-3 cuadra-p-3 cuadra-rounded-lg cuadra-cursor-pointer cuadra-transition-colors cuadra-border cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border",onClick:()=>e==null?void 0:e(),children:p.jsx("div",{className:"cuadra-flex-1 cuadra-min-w-0",children:p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[p.jsx(Hu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),p.jsx("h4",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground font-brand",children:"New Chat"})]})})}),p.jsx("div",{className:"cuadra-my-2 cuadra-border-t cuadra-border-border"}),p.jsx(oo,{components:{ThreadListItem:a=>p.jsx(sv,E(m({},a),{onThreadSelect:e}))}})]}),(t||n)&&p.jsxs("div",{className:"cuadra-border-t cuadra-border-border cuadra-flex md:cuadra-hidden cuadra-items-center cuadra-justify-between cuadra-px-4 cuadra-py-4",children:[n&&p.jsx("button",{type:"button",onClick:n,className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Logout",children:p.jsx($u,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),t&&p.jsx(gu,{theme:r})]})]})}const ov=`
|
|
35
|
+
`))}function l(h,g,v,w){const b=v.enter("tableCell"),I=v.enter("phrasing"),T=v.containerPhrasing(h,E(m({},w),{before:i,after:i}));return I(),b(),T}function u(h,g){return xw(h,{align:g,alignDelimiters:n,padding:r,stringLength:a})}function c(h,g,v){const w=h.children;let b=-1;const I=[],T=g.enter("table");for(;++b<w.length;)I[b]=d(w[b],g,v);return T(),I}function d(h,g,v){const w=h.children;let b=-1;const I=[],T=g.enter("tableRow");for(;++b<w.length;)I[b]=l(w[b],h,g,v);return T(),I}function f(h,g,v){let w=ru.inlineCode(h,g,v);return v.stack.includes("tableCell")&&(w=w.replace(/\|/g,"\\$&")),w}}function ox(){return{exit:{taskListCheckValueChecked:au,taskListCheckValueUnchecked:au,paragraph:ux}}}function lx(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:cx}}}function au(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function ux(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const r=this.stack[this.stack.length-1];r.type;const n=r.children[0];if(n&&n.type==="text"){const a=t.children;let i=-1,s;for(;++i<a.length;){const o=a[i];if(o.type==="paragraph"){s=o;break}}s===r&&(n.value=n.value.slice(1),n.value.length===0?r.children.shift():r.position&&n.position&&typeof n.position.start.offset=="number"&&(n.position.start.column++,n.position.start.offset++,r.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function cx(e,t,r,n){const a=e.children[0],i=typeof e.checked=="boolean"&&a&&a.type==="paragraph",s="["+(e.checked?"x":" ")+"] ",o=r.createTracker(n);i&&o.move(s);let l=ru.listItem(e,t,r,m(m({},n),o.current()));return i&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(c){return c+s}}function dx(){return[Hb(),cw(),pw(),ex(),ox()]}function hx(e){return{extensions:[qb(),dw(e),mw(),sx(e),lx()]}}const fx={tokenize:wx,partial:!0},iu={tokenize:xx,partial:!0},su={tokenize:vx,partial:!0},ou={tokenize:kx,partial:!0},px={tokenize:Sx,partial:!0},lu={name:"wwwAutolink",tokenize:yx,previous:cu},uu={name:"protocolAutolink",tokenize:bx,previous:du},yt={name:"emailAutolink",tokenize:gx,previous:hu},dt={};function mx(){return{text:dt}}let Ot=48;for(;Ot<123;)dt[Ot]=yt,Ot++,Ot===58?Ot=65:Ot===91&&(Ot=97);dt[43]=yt,dt[45]=yt,dt[46]=yt,dt[95]=yt,dt[72]=[yt,uu],dt[104]=[yt,uu],dt[87]=[yt,lu],dt[119]=[yt,lu];function gx(e,t,r){const n=this;let a,i;return s;function s(d){return!Qa(d)||!hu.call(n,n.previous)||Za(n.events)?r(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),o(d))}function o(d){return Qa(d)?(e.consume(d),o):d===64?(e.consume(d),l):r(d)}function l(d){return d===46?e.check(px,c,u)(d):d===45||d===95||Me(d)?(i=!0,e.consume(d),l):c(d)}function u(d){return e.consume(d),a=!0,l}function c(d){return i&&a&&ze(n.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):r(d)}}function yx(e,t,r){const n=this;return a;function a(s){return s!==87&&s!==119||!cu.call(n,n.previous)||Za(n.events)?r(s):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(fx,e.attempt(iu,e.attempt(su,i),r),r)(s))}function i(s){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(s)}}function bx(e,t,r){const n=this;let a="",i=!1;return s;function s(d){return(d===72||d===104)&&du.call(n,n.previous)&&!Za(n.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(d),e.consume(d),o):r(d)}function o(d){if(ze(d)&&a.length<5)return a+=String.fromCodePoint(d),e.consume(d),o;if(d===58){const f=a.toLowerCase();if(f==="http"||f==="https")return e.consume(d),l}return r(d)}function l(d){return d===47?(e.consume(d),i?u:(i=!0,l)):r(d)}function u(d){return d===null||nn(d)||le(d)||Dt(d)||an(d)?r(d):e.attempt(iu,e.attempt(su,c),r)(d)}function c(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function wx(e,t,r){let n=0;return a;function a(s){return(s===87||s===119)&&n<3?(n++,e.consume(s),a):s===46&&n===3?(e.consume(s),i):r(s)}function i(s){return s===null?r(s):t(s)}}function xx(e,t,r){let n,a,i;return s;function s(u){return u===46||u===95?e.check(ou,l,o)(u):u===null||le(u)||Dt(u)||u!==45&&an(u)?l(u):(i=!0,e.consume(u),s)}function o(u){return u===95?n=!0:(a=n,n=void 0),e.consume(u),s}function l(u){return a||n||!i?r(u):t(u)}}function vx(e,t){let r=0,n=0;return a;function a(s){return s===40?(r++,e.consume(s),a):s===41&&n<r?i(s):s===33||s===34||s===38||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===60||s===63||s===93||s===95||s===126?e.check(ou,t,i)(s):s===null||le(s)||Dt(s)?t(s):(e.consume(s),a)}function i(s){return s===41&&n++,e.consume(s),a}}function kx(e,t,r){return n;function n(o){return o===33||o===34||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===63||o===95||o===126?(e.consume(o),n):o===38?(e.consume(o),i):o===93?(e.consume(o),a):o===60||o===null||le(o)||Dt(o)?t(o):r(o)}function a(o){return o===null||o===40||o===91||le(o)||Dt(o)?t(o):n(o)}function i(o){return ze(o)?s(o):r(o)}function s(o){return o===59?(e.consume(o),n):ze(o)?(e.consume(o),s):r(o)}}function Sx(e,t,r){return n;function n(i){return e.consume(i),a}function a(i){return Me(i)?r(i):t(i)}}function cu(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||le(e)}function du(e){return!ze(e)}function hu(e){return!(e===47||Qa(e))}function Qa(e){return e===43||e===45||e===46||e===95||Me(e)}function Za(e){let t=e.length,r=!1;for(;t--;){const n=e[t][1];if((n.type==="labelLink"||n.type==="labelImage")&&!n._balanced){r=!0;break}if(n._gfmAutolinkLiteralWalkedInto){r=!1;break}}return e.length>0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}const _x={tokenize:Nx,partial:!0};function Tx(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Ax,continuation:{tokenize:Mx},exit:Px}},text:{91:{name:"gfmFootnoteCall",tokenize:Ex},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:Cx,resolveTo:Ix}}}}function Cx(e,t,r){const n=this;let a=n.events.length;const i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let s;for(;a--;){const l=n.events[a][1];if(l.type==="labelImage"){s=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return o;function o(l){if(!s||!s._balanced)return r(l);const u=nt(n.sliceSerialize({start:s.end,end:n.now()}));return u.codePointAt(0)!==94||!i.includes(u.slice(1))?r(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function Ix(e,t){let r=e.length;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";const n={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const i={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},o=[e[r+1],e[r+2],["enter",n,t],e[r+3],e[r+4],["enter",a,t],["exit",a,t],["enter",i,t],["enter",s,t],["exit",s,t],["exit",i,t],e[e.length-2],e[e.length-1],["exit",n,t]];return e.splice(r,e.length-r+1,...o),e}function Ex(e,t,r){const n=this,a=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let i=0,s;return o;function o(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?r(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(d){if(i>999||d===93&&!s||d===null||d===91||le(d))return r(d);if(d===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return a.includes(nt(n.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):r(d)}return le(d)||(s=!0),i++,e.consume(d),d===92?c:u}function c(d){return d===91||d===92||d===93?(e.consume(d),i++,u):u(d)}}function Ax(e,t,r){const n=this,a=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let i,s=0,o;return l;function l(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):r(g)}function c(g){if(s>999||g===93&&!o||g===null||g===91||le(g))return r(g);if(g===93){e.exit("chunkString");const v=e.exit("gfmFootnoteDefinitionLabelString");return i=nt(n.sliceSerialize(v)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return le(g)||(o=!0),s++,e.consume(g),g===92?d:c}function d(g){return g===91||g===92||g===93?(e.consume(g),s++,c):c(g)}function f(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),a.includes(i)||a.push(i),re(e,h,"gfmFootnoteDefinitionWhitespace")):r(g)}function h(g){return t(g)}}function Mx(e,t,r){return e.check(xr,t,e.attempt(_x,t,r))}function Px(e){e.exit("gfmFootnoteDefinition")}function Nx(e,t,r){const n=this;return re(e,a,"gfmFootnoteDefinitionIndent",5);function a(i){const s=n.events[n.events.length-1];return s&&s[1].type==="gfmFootnoteDefinitionIndent"&&s[2].sliceSerialize(s[1],!0).length===4?t(i):r(i)}}function Lx(e){let r=(e||{}).singleTilde;const n={name:"strikethrough",tokenize:i,resolveAll:a};return r==null&&(r=!0),{text:{126:n},insideSpan:{null:[n]},attentionMarkers:{null:[126]}};function a(s,o){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";const c={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",c,o],["enter",s[u][1],o],["exit",s[u][1],o],["enter",d,o]],h=o.parser.constructs.insideSpan.null;h&&Je(f,f.length,0,sn(h,s.slice(u+1,l),o)),Je(f,f.length,0,[["exit",d,o],["enter",s[l][1],o],["exit",s[l][1],o],["exit",c,o]]),Je(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type="data");return s}function i(s,o,l){const u=this.previous,c=this.events;let d=0;return f;function f(g){return u===126&&c[c.length-1][1].type!=="characterEscape"?l(g):(s.enter("strikethroughSequenceTemporary"),h(g))}function h(g){const v=Xt(u);if(g===126)return d>1?l(g):(s.consume(g),d++,h);if(d<2&&!r)return l(g);const w=s.exit("strikethroughSequenceTemporary"),b=Xt(g);return w._open=!b||b===2&&!!v,w._close=!v||v===2&&!!b,o(g)}}}class Dx{constructor(){this.map=[]}add(t,r,n){Ox(this,t,r,n)}consume(t){if(this.map.sort(function(i,s){return i[0]-s[0]}),this.map.length===0)return;let r=this.map.length;const n=[];for(;r>0;)r-=1,n.push(t.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),t.length=this.map[r][0];n.push(t.slice()),t.length=0;let a=n.pop();for(;a;){for(const i of a)t.push(i);a=n.pop()}this.map.length=0}}function Ox(e,t,r,n){let a=0;if(!(r===0&&n.length===0)){for(;a<e.map.length;){if(e.map[a][0]===t){e.map[a][1]+=r,e.map[a][2].push(...n);return}a+=1}e.map.push([t,r,n])}}function Fx(e,t){let r=!1;const n=[];for(;t<e.length;){const a=e[t];if(r){if(a[0]==="enter")a[1].type==="tableContent"&&n.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(a[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const i=n.length-1;n[i]=n[i]==="left"?"center":"right"}}else if(a[1].type==="tableDelimiterRow")break}else a[0]==="enter"&&a[1].type==="tableDelimiterRow"&&(r=!0);t+=1}return n}function Bx(){return{flow:{null:{name:"table",tokenize:zx,resolveAll:Rx}}}}function zx(e,t,r){const n=this;let a=0,i=0,s;return o;function o(S){let P=n.events.length-1;for(;P>-1;){const z=n.events[P][1].type;if(z==="lineEnding"||z==="linePrefix")P--;else break}const N=P>-1?n.events[P][1].type:null,H=N==="tableHead"||N==="tableRow"?_:l;return H===_&&n.parser.lazy[n.now().line]?r(S):H(S)}function l(S){return e.enter("tableHead"),e.enter("tableRow"),u(S)}function u(S){return S===124||(s=!0,i+=1),c(S)}function c(S){return S===null?r(S):J(S)?i>1?(i=0,n.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(S),e.exit("lineEnding"),h):r(S):Z(S)?re(e,c,"whitespace")(S):(i+=1,s&&(s=!1,a+=1),S===124?(e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),s=!0,c):(e.enter("data"),d(S)))}function d(S){return S===null||S===124||le(S)?(e.exit("data"),c(S)):(e.consume(S),S===92?f:d)}function f(S){return S===92||S===124?(e.consume(S),d):d(S)}function h(S){return n.interrupt=!1,n.parser.lazy[n.now().line]?r(S):(e.enter("tableDelimiterRow"),s=!1,Z(S)?re(e,g,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(S):g(S))}function g(S){return S===45||S===58?w(S):S===124?(s=!0,e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),v):B(S)}function v(S){return Z(S)?re(e,w,"whitespace")(S):w(S)}function w(S){return S===58?(i+=1,s=!0,e.enter("tableDelimiterMarker"),e.consume(S),e.exit("tableDelimiterMarker"),b):S===45?(i+=1,b(S)):S===null||J(S)?D(S):B(S)}function b(S){return S===45?(e.enter("tableDelimiterFiller"),I(S)):B(S)}function I(S){return S===45?(e.consume(S),I):S===58?(s=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(S),e.exit("tableDelimiterMarker"),T):(e.exit("tableDelimiterFiller"),T(S))}function T(S){return Z(S)?re(e,D,"whitespace")(S):D(S)}function D(S){return S===124?g(S):S===null||J(S)?!s||a!==i?B(S):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(S)):B(S)}function B(S){return r(S)}function _(S){return e.enter("tableRow"),j(S)}function j(S){return S===124?(e.enter("tableCellDivider"),e.consume(S),e.exit("tableCellDivider"),j):S===null||J(S)?(e.exit("tableRow"),t(S)):Z(S)?re(e,j,"whitespace")(S):(e.enter("data"),R(S))}function R(S){return S===null||S===124||le(S)?(e.exit("data"),j(S)):(e.consume(S),S===92?U:R)}function U(S){return S===92||S===124?(e.consume(S),R):R(S)}}function Rx(e,t){let r=-1,n=!0,a=0,i=[0,0,0,0],s=[0,0,0,0],o=!1,l=0,u,c,d;const f=new Dx;for(;++r<e.length;){const h=e[r],g=h[1];h[0]==="enter"?g.type==="tableHead"?(o=!1,l!==0&&(fu(f,t,l,u,c),c=void 0,l=0),u={type:"table",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(r,0,[["enter",u,t]])):g.type==="tableRow"||g.type==="tableDelimiterRow"?(n=!0,d=void 0,i=[0,0,0,0],s=[0,r+1,0,0],o&&(o=!1,c={type:"tableBody",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(r,0,[["enter",c,t]])),a=g.type==="tableDelimiterRow"?2:c?3:1):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")?(n=!1,s[2]===0&&(i[1]!==0&&(s[0]=s[1],d=yn(f,t,i,a,void 0,d),i=[0,0,0,0]),s[2]=r)):g.type==="tableCellDivider"&&(n?n=!1:(i[1]!==0&&(s[0]=s[1],d=yn(f,t,i,a,void 0,d)),i=s,s=[i[1],r,0,0])):g.type==="tableHead"?(o=!0,l=r):g.type==="tableRow"||g.type==="tableDelimiterRow"?(l=r,i[1]!==0?(s[0]=s[1],d=yn(f,t,i,a,r,d)):s[1]!==0&&(d=yn(f,t,s,a,r,d)),a=0):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")&&(s[3]=r)}for(l!==0&&fu(f,t,l,u,c),f.consume(t.events),r=-1;++r<t.events.length;){const h=t.events[r];h[0]==="enter"&&h[1].type==="table"&&(h[1]._align=Fx(t.events,r))}return e}function yn(e,t,r,n,a,i){const s=n===1?"tableHeader":n===2?"tableDelimiter":"tableData",o="tableContent";r[0]!==0&&(i.end=Object.assign({},Zt(t.events,r[0])),e.add(r[0],0,[["exit",i,t]]));const l=Zt(t.events,r[1]);if(i={type:s,start:Object.assign({},l),end:Object.assign({},l)},e.add(r[1],0,[["enter",i,t]]),r[2]!==0){const u=Zt(t.events,r[2]),c=Zt(t.events,r[3]),d={type:o,start:Object.assign({},u),end:Object.assign({},c)};if(e.add(r[2],0,[["enter",d,t]]),n!==2){const f=t.events[r[2]],h=t.events[r[3]];if(f[1].end=Object.assign({},h[1].end),f[1].type="chunkText",f[1].contentType="text",r[3]>r[2]+1){const g=r[2]+1,v=r[3]-r[2]-1;e.add(g,v,[])}}e.add(r[3]+1,0,[["exit",d,t]])}return a!==void 0&&(i.end=Object.assign({},Zt(t.events,a)),e.add(a,0,[["exit",i,t]]),i=void 0),i}function fu(e,t,r,n,a){const i=[],s=Zt(t.events,r);a&&(a.end=Object.assign({},s),i.push(["exit",a,t])),n.end=Object.assign({},s),i.push(["exit",n,t]),e.add(r+1,0,i)}function Zt(e,t){const r=e[t],n=r[0]==="enter"?"start":"end";return r[1][n]}const jx={name:"tasklistCheck",tokenize:Ux};function $x(){return{text:{91:jx}}}function Ux(e,t,r){const n=this;return a;function a(l){return n.previous!==null||!n._gfmTasklistFirstContentOfListItem?r(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),i)}function i(l){return le(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),s):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),s):r(l)}function s(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),o):r(l)}function o(l){return J(l)?t(l):Z(l)?e.check({tokenize:Hx},t,r)(l):r(l)}}function Hx(e,t,r){return re(e,n,"whitespace");function n(a){return a===null?r(a):t(a)}}function qx(e){return Ho([mx(),Tx(),Lx(e),Bx(),$x()])}const Vx={};function Wx(e){const t=this,r=e||Vx,n=t.data(),a=n.micromarkExtensions||(n.micromarkExtensions=[]),i=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),s=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);a.push(qx(r)),i.push(dx()),s.push(hx(r))}function ke(...e){return e.filter(Boolean).join(" ")}const Jx=({content:e})=>p.jsx(Bb,{remarkPlugins:[Wx],className:"cuadra-aui-md",components:Gx,children:e}),ei=y.memo(Jx),Kx=({language:e,code:t})=>{const{isCopied:r,copyToClipboard:n}=Yx(),a=()=>{!t||r||n(t)};return p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-between cuadra-gap-4 cuadra-mt-4 cuadra-rounded-t-lg cuadra-bg-muted/50 cuadra-border-b cuadra-border-border cuadra-px-4 cuadra-py-2 cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-font-brand",children:[p.jsx("span",{className:"cuadra-lowercase [&>span]:cuadra-text-xs cuadra-font-brand",children:e}),p.jsxs("button",{onClick:a,className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-muted cuadra-transition-colors","aria-label":"Copy code",children:[!r&&p.jsx(Bu,{className:"cuadra-h-4 cuadra-w-4"}),r&&p.jsx(Ou,{className:"cuadra-h-4 cuadra-w-4"})]})]})},Yx=({copiedDuration:e=3e3}={})=>{const[t,r]=y.useState(!1);return{isCopied:t,copyToClipboard:a=>{a&&navigator.clipboard.writeText(a).then(()=>{r(!0),setTimeout(()=>r(!1),e)})}}},Gx=vb({h1:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h1",m({className:ke("cuadra-mb-6 cuadra-scroll-m-20 cuadra-text-2xl cuadra-font-normal cuadra-tracking-tight last:cuadra-mb-0 font-brand",e)},t))},h2:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h2",m({className:ke("cuadra-mb-4 cuadra-mt-6 cuadra-scroll-m-20 cuadra-text-xl cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h3:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h3",m({className:ke("cuadra-mb-3 cuadra-mt-5 cuadra-scroll-m-20 cuadra-text-lg cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h4:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h4",m({className:ke("cuadra-mb-4 cuadra-mt-6 cuadra-scroll-m-20 cuadra-text-xl cuadra-font-normal cuadra-tracking-tight first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h5:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h5",m({className:ke("cuadra-my-4 cuadra-text-lg cuadra-font-normal first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},h6:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("h6",m({className:ke("cuadra-my-4 cuadra-font-normal first:cuadra-mb-0 font-brand",e)},t))},p:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("p",m({className:ke("cuadra-mb-5 cuadra-mt-5 cuadra-leading-7 first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e)},t))},a:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("a",m({className:ke("cuadra-text-primary cuadra-font-medium cuadra-underline cuadra-underline-offset-4 font-brand",e)},t))},blockquote:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("blockquote",m({className:ke("cuadra-border-l-2 cuadra-pl-6 cuadra-italic font-brand",e)},t))},ul:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("ul",m({className:ke("cuadra-my-5 cuadra-ml-6 cuadra-list-disc [&>li]:cuadra-mt-2 font-brand",e)},t))},ol:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("ol",m({className:ke("cuadra-my-5 cuadra-ml-6 cuadra-list-decimal [&>li]:cuadra-mt-2 font-brand",e)},t))},hr:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("hr",m({className:ke("cuadra-my-5 cuadra-border-b",e)},t))},table:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("table",m({className:ke("cuadra-my-5 cuadra-w-full cuadra-border-separate cuadra-border-spacing-0 cuadra-overflow-y-auto font-brand",e)},t))},th:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("th",m({className:ke("cuadra-bg-muted cuadra-px-4 cuadra-py-2 cuadra-text-left cuadra-font-normal first:cuadra-rounded-tl-lg last:cuadra-rounded-tr-lg [&[align=center]]:cuadra-text-center [&[align=right]]:cuadra-text-right font-brand",e)},t))},td:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("td",m({className:ke("cuadra-border-b cuadra-border-l cuadra-px-4 cuadra-py-2 cuadra-text-left last:cuadra-border-r [&[align=center]]:cuadra-text-center [&[align=right]]:cuadra-text-right font-brand",e)},t))},tr:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("tr",m({className:ke("cuadra-m-0 cuadra-border-b cuadra-p-0 first:cuadra-border-t [&:last-child>td:first-child]:cuadra-rounded-bl-lg [&:last-child>td:last-child]:cuadra-rounded-br-lg",e)},t))},sup:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("sup",m({className:ke("[&>a]:cuadra-text-xs [&>a]:cuadra-no-underline font-brand",e)},t))},pre:r=>{var n=r,{className:e}=n,t=V(n,["className"]);return p.jsx("pre",m({className:ke("cuadra-overflow-x-auto cuadra-rounded-b-lg !cuadra-rounded-t-none cuadra-bg-muted cuadra-p-4 cuadra-text-foreground font-brand",e)},t))},code:function(n){var a=n,{className:t}=a,r=V(a,["className"]);const i=Ll();return p.jsx("code",m({className:ke(!i&&"cuadra-bg-muted cuadra-rounded cuadra-border cuadra-font-normal font-brand",t)},r))},CodeHeader:Kx});function pu(n){var a=n,{className:e="",variant:t="default"}=a,r=V(a,["className","variant"]);const i="cuadra-inline-flex cuadra-items-center cuadra-rounded-md cuadra-px-3 cuadra-py-1.5 cuadra-text-xs cuadra-font-medium font-brand",s={default:"cuadra-border cuadra-border-border cuadra-bg-muted cuadra-text-muted-foreground",subtle:"cuadra-border cuadra-border-border/50 cuadra-bg-muted/50 cuadra-text-muted-foreground",outline:"cuadra-border cuadra-border-border cuadra-bg-background cuadra-text-foreground",ghost:"cuadra-text-muted-foreground"};return p.jsx("div",m({className:`${i} ${s[t]||s.default} ${e}`},r))}function Xx(e){const t=new Map;for(const r of e){const n=t.get(r.filename);(!n||r.score>n.score)&&t.set(r.filename,r)}return Array.from(t.values()).sort((r,n)=>n.score-r.score)}function Qx({sources:e,maxVisible:t=3}){if(!e||e.length===0)return null;const r=Xx(e),n=r.slice(0,t),a=r.length-t;return p.jsxs("div",{className:"cuadra-mt-4 cuadra-pt-3 cuadra-border-t cuadra-border-border",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-1.5 cuadra-mb-2.5",children:[p.jsx(oi,{className:"cuadra-h-3.5 cuadra-w-3.5 cuadra-text-muted-foreground"}),p.jsx("span",{className:"cuadra-text-xs cuadra-font-medium cuadra-text-muted-foreground font-brand",children:"Sources"})]}),p.jsxs("div",{className:"cuadra-flex cuadra-flex-wrap cuadra-gap-2",children:[n.map((i,s)=>p.jsx(ev,{source:i},i.sourceId||s)),a>0&&p.jsxs(pu,{variant:"subtle",children:["+",a," more"]})]})]})}function Zx(e){var r;switch((r=e.split(".").pop())==null?void 0:r.toLowerCase()){case"csv":case"xlsx":case"xls":return Ru;case"md":case"txt":return ju;default:return oi}}function ev({source:e}){const{filename:t,score:r}=e,n=Zx(t);return p.jsxs(pu,{className:"cuadra-gap-2 cuadra-cursor-default",title:r<1?`${Math.round(r*100)}% relevant`:void 0,children:[p.jsx(n,{className:"cuadra-h-3.5 cuadra-w-3.5 cuadra-shrink-0 cuadra-opacity-60"}),p.jsx("span",{className:"cuadra-truncate cuadra-max-w-[180px]",children:t}),r<1&&r>0&&p.jsxs("span",{className:"cuadra-opacity-50 cuadra-text-[10px] cuadra-tabular-nums",children:[Math.round(r*100),"%"]})]})}const mu=y.forwardRef(function({welcomeTitle:t="Hi, how can I help you today?",welcomeSubtitle:r="Start exploring our platform and discover what you can build.",extraTopPadding:n,suggestions:a,inputPlaceholder:i="Type your message...",enableAttachments:s=!1,preMadeResponseDelay:o=1e3,streamingSpeed:l=50},u){const c=os(),d=fe(),[f,h]=y.useState(!1),[g,v]=y.useState(null),[w,b]=y.useState(!1),I=y.useCallback((_,j,R)=>{var U,S;if(!w)try{const P=(U=R==null?void 0:R.streamingSpeed)!=null?U:l,N=(S=R==null?void 0:R.delay)!=null?S:o;fo(_,j,P,N),d.composer().setText(_),setTimeout(()=>{d.composer().send()},10)}catch(P){}},[w,l,o,d]),T=y.useCallback(_=>{try{d.composer().setText(_),setTimeout(()=>{d.composer().send()},10)}catch(j){}},[d]),D=y.useCallback(_=>M(null,null,function*(){var j;if(!(w||!c))try{if(_.response){const R=(j=_.responseDelay)!=null?j:o;yield I(_.prompt,_.response,{delay:R,streamingSpeed:l})}else T(_.prompt)}catch(R){}}),[c,w,o,l,I,T]),B=y.useCallback(()=>{try{const _=window.__cuadraThreadListRuntime;_!=null&&_.switchToNewThread&&_.switchToNewThread()}catch(_){}},[]);return y.useImperativeHandle(u,()=>({sendMessage:T,sendPreMadeQA:I,clearChat:B}),[T,I,B]),y.useEffect(()=>{var _,j;if(!c){h(!1);return}try{const R=c==null?void 0:c.store;if(!R){h(!1);return}const U=(_=R.subscribe)==null?void 0:_.call(R,P=>{const N=P==null?void 0:P.threadId,H=(P==null?void 0:P.messages)||[],z=(P==null?void 0:P.isLoadingHistory)||!1,O=H.length;N&&N!==g&&v(N),h(z&&O===0)}),S=(j=R.getState)==null?void 0:j.call(R);if(S){const P=S==null?void 0:S.threadId,N=(S==null?void 0:S.messages)||[],H=(S==null?void 0:S.isLoadingHistory)||!1,z=N.length;P&&P!==g&&v(P),h(H&&z===0)}return()=>{U&&U()}}catch(R){h(!1)}},[c,g]),p.jsxs(Qs,{className:"cuadra-bg-inherit cuadra-flex cuadra-flex-col cuadra-w-full cuadra-h-full",children:[p.jsx(to,{className:"cuadra-w-full cuadra-bg-inherit cuadra-px-4 cuadra-flex-1 cuadra-min-h-0 cuadra-overflow-y-auto cuadra-relative scrollbar-thin cuadra-pt-4",style:n?{paddingTop:n}:void 0,children:f?p.jsx("div",{className:"cuadra-absolute cuadra-inset-0 cuadra-flex cuadra-items-center cuadra-justify-center",children:p.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:[p.jsx(li,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"}),p.jsx("p",{className:"cuadra-text-sm cuadra-text-muted-foreground font-brand",children:"Loading messages..."})]})}):p.jsxs(p.Fragment,{children:[p.jsx(Zs,{children:p.jsx(tv,{title:t,subtitle:r,suggestions:a,onSuggestionClick:D,isProcessing:w})}),p.jsx(ep,{components:{UserMessage:rv,AssistantMessage:iv}})]})}),p.jsxs("div",{className:"cuadra-w-full cuadra-mt-3 cuadra-border-t cuadra-border-border cuadra-pt-4",children:[s&&p.jsx(Xs,{components:{Attachment:()=>{const _=te(({attachment:j})=>j);return _?p.jsxs("div",{className:"cuadra-relative cuadra-inline-flex cuadra-items-center cuadra-gap-2 cuadra-mb-2 cuadra-px-2 cuadra-py-1 cuadra-rounded-md cuadra-bg-muted cuadra-border cuadra-border-border",children:[p.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground font-brand",children:_.name||"Attachment"}),p.jsx(uf,{asChild:!0,children:p.jsx("button",{type:"button",className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-size-4 cuadra-rounded hover:cuadra-bg-background cuadra-transition-colors","aria-label":"Remove attachment",children:p.jsx(Cn,{className:"cuadra-h-3 cuadra-w-3 cuadra-text-muted-foreground"})})})]}):null}}}),p.jsxs(Us,{className:"cuadra-relative !cuadra-relative cuadra-flex-1 cuadra-w-full",children:[p.jsx(Ys,{asChild:!0,children:p.jsx("textarea",{rows:3,placeholder:i,className:"cuadra-flex cuadra-min-h-[80px] cuadra-w-full cuadra-rounded-md cuadra-border cuadra-border-border cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-base cuadra-text-foreground placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-resize-none font-brand",style:{paddingRight:s?"5rem":"3rem",fontSize:"1rem",borderWidth:"1px"}})}),s&&p.jsx(Vf,{multiple:!0,asChild:!0,children:p.jsx("button",{type:"button",className:"!cuadra-absolute !cuadra-bottom-2 !cuadra-right-12 cuadra-size-8 cuadra-rounded-md hover:cuadra-bg-muted cuadra-transition-colors cuadra-flex cuadra-items-center cuadra-justify-center cuadra-border cuadra-border-border",style:{position:"absolute",bottom:"0.5rem",right:"3rem"},"aria-label":"Attach file",children:p.jsx(ui,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground",strokeWidth:1.5})})}),p.jsx(Cf,{asChild:!0,children:p.jsx("button",{className:"!cuadra-absolute !cuadra-bottom-2 !cuadra-right-2 cuadra-size-8 cuadra-rounded-md cuadra-shadow-sm hover:cuadra-opacity-90 disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed cuadra-flex cuadra-items-center cuadra-justify-center",style:{position:"absolute",bottom:"0.5rem",right:"0.5rem",backgroundColor:"var(--cuadra-primary)",color:"hsl(var(--cuadra-primary-foreground))"},"aria-label":"Send message",type:"button",children:p.jsx(Du,{className:"cuadra-h-4 cuadra-w-4"})})})]})]})]})});function tv({title:e,subtitle:t,suggestions:r,onSuggestionClick:n,isProcessing:a}){return p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-h-full cuadra-py-12 cuadra-px-4 cuadra-overflow-y-auto scrollbar-hide",children:p.jsxs("div",{className:"cuadra-text-center cuadra-max-w-3xl cuadra-w-full cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-min-h-full",children:[p.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-mb-8",children:[p.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground cuadra-mb-2 font-brand",children:e}),p.jsx("p",{className:"cuadra-text-muted-foreground font-brand",children:t})]}),r&&r.length>0&&p.jsx("div",{className:"cuadra-grid cuadra-grid-cols-2 cuadra-gap-2 cuadra-pb-4 cuadra-w-full cuadra-max-w-2xl",children:r.map((i,s)=>p.jsx("button",{type:"button",onClick:()=>n(i),disabled:a,className:"cuadra-w-full cuadra-text-center cuadra-px-4 cuadra-py-3 cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-bg-background cuadra-text-sm cuadra-text-foreground font-brand cuadra-cursor-pointer focus:cuadra-outline-none focus:cuadra-ring-0 disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed",style:{borderWidth:"1px"},children:i.prompt},`suggestion-${s}`))})]})})}function rv(){return p.jsxs(Zn,{className:"cuadra-grid cuadra-w-full cuadra-auto-rows-auto cuadra-grid-cols-[minmax(72px,1fr)_auto] cuadra-gap-y-2 cuadra-py-3 [&:where(>*)]:cuadra-col-start-2",children:[p.jsx(js,{components:{Attachment:()=>{var i;const e=te(({attachment:s})=>s);if(!e)return null;const t=e.type==="image",r=e.file,n=(i=e.content)==null?void 0:i.find(s=>s.type==="image"),a=r?URL.createObjectURL(r):n==null?void 0:n.image;return p.jsx("div",{className:"cuadra-col-start-2 cuadra-row-start-1 cuadra-mb-2 cuadra-max-w-[calc(42rem*0.8)]",children:t&&a?p.jsx("img",{src:a,alt:e.name||"Attachment",className:"cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-max-h-64 cuadra-max-w-full cuadra-object-contain",style:{borderWidth:"1px"}}):p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 cuadra-rounded-lg cuadra-border cuadra-border-border cuadra-bg-muted cuadra-px-3 cuadra-py-2",children:[p.jsx(ui,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),p.jsx("span",{className:"cuadra-text-sm cuadra-text-foreground font-brand",children:e.name||"Attachment"})]})})}}}),p.jsx("div",{className:"cuadra-bg-muted cuadra-text-foreground cuadra-col-start-2 cuadra-row-start-2 cuadra-max-w-[calc(42rem*0.8)] cuadra-break-words cuadra-rounded-3xl cuadra-border cuadra-border-border cuadra-px-5 cuadra-py-2.5 font-brand",style:{maxWidth:"calc(42rem * 0.8)",borderRadius:"1.5rem",backgroundColor:"var(--cuadra-muted)",color:"hsl(var(--cuadra-foreground))",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",wordBreak:"break-word",borderWidth:"1px"},children:p.jsx(ea,{components:{Text:({text:e})=>p.jsx(ei,{content:e||""})}})})]})}function nv({text:e}){const[t,r]=y.useState(!1),n=te(({message:a})=>{var i;return((i=a==null?void 0:a.status)==null?void 0:i.type)==="running"});return e?n?p.jsx("div",{className:"cuadra-mb-3 cuadra-py-1",children:p.jsx("div",{className:"cuadra-text-sm cuadra-text-muted-foreground cuadra-leading-relaxed font-brand cuadra-animate-text-shimmer",children:e})}):p.jsxs("div",{className:"cuadra-mb-3",children:[p.jsxs("button",{type:"button",onClick:()=>r(!t),className:"cuadra-flex cuadra-items-center cuadra-gap-1.5 cuadra-py-1 cuadra-text-sm cuadra-text-muted-foreground hover:cuadra-text-foreground cuadra-transition-colors font-brand",children:[p.jsx(Tn,{className:`cuadra-h-3.5 cuadra-w-3.5 cuadra-shrink-0 cuadra-transition-transform cuadra-duration-200 ${t?"":"cuadra--rotate-90"}`}),p.jsx("span",{children:"Reasoning"})]}),p.jsx("div",{className:`cuadra-overflow-hidden cuadra-transition-all cuadra-duration-200 cuadra-ease-out ${t?"cuadra-max-h-[2000px] cuadra-opacity-100":"cuadra-max-h-0 cuadra-opacity-0"}`,children:p.jsx("div",{className:"cuadra-pl-5 cuadra-pt-2 cuadra-text-sm cuadra-text-muted-foreground cuadra-leading-relaxed font-brand",children:p.jsx(ei,{content:e})})})]}):null}function av(){return p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 cuadra-text-muted-foreground cuadra-text-sm font-brand cuadra-py-2",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-1",children:[p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"0ms"}}),p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"150ms"}}),p.jsx("span",{className:"cuadra-inline-block cuadra-w-1.5 cuadra-h-1.5 cuadra-bg-current cuadra-rounded-full cuadra-animate-bounce",style:{animationDelay:"300ms"}})]}),p.jsx("span",{children:"Thinking..."})]})}function iv(){const[e]=y.useState(()=>kt.getCurrentMessageId()),t=te(({message:a})=>{var i;return((i=a==null?void 0:a.status)==null?void 0:i.type)==="running"}),r=te(({message:a})=>{const i=a==null?void 0:a.content;return!i||!Array.isArray(i)?!1:i.some(s=>!!(s.type==="text"&&s.text&&s.text.length>0||s.type==="reasoning"&&s.text&&s.text.length>0))}),n=y.useSyncExternalStore(a=>kt.subscribe(a),()=>{var i,s;if(e){const o=kt.getForMessage(e);return(i=o.sources)!=null&&i.length?o.sources:null}const a=kt.getCurrentMessageId();if(a){const o=kt.getForMessage(a);return(s=o.sources)!=null&&s.length?o.sources:null}return null},()=>null);return p.jsx(Zn,{className:"cuadra-relative cuadra-grid cuadra-w-full cuadra-grid-cols-[auto_auto_1fr] cuadra-grid-rows-[auto_1fr] cuadra-py-3",children:p.jsxs("div",{className:"cuadra-text-foreground cuadra-col-span-2 cuadra-col-start-2 cuadra-row-start-1 cuadra-my-1.5 cuadra-max-w-[90%] cuadra-break-words cuadra-leading-7 font-brand",style:{maxWidth:"90%",marginTop:"0.375rem",marginBottom:"0.375rem"},children:[p.jsx(ea,{components:{Text:({text:a})=>p.jsx(ei,{content:a||""}),Reasoning:({text:a})=>p.jsx(nv,{text:a||""})}}),t&&!r&&p.jsx(av,{}),n&&n.length>0&&p.jsx(Qx,{sources:n})]})})}const gu=({className:e="",theme:t="system"})=>{const r=()=>{if(typeof window=="undefined")return"light";if(t==="system"){const s=localStorage.getItem("theme");return s||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")}return t},[n,a]=y.useState(r);y.useEffect(()=>{t!=="system"&&a(t)},[t]),y.useEffect(()=>{const s=document.documentElement;s.classList.remove("light","dark"),s.classList.add(n),t==="system"&&localStorage.setItem("theme",n)},[n,t]);const i=()=>{t==="system"&&a(s=>s==="light"?"dark":"light")};return p.jsx("button",{type:"button","aria-label":"Toggle theme",onClick:i,disabled:t!=="system",className:`cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed ${e}`,children:p.jsx(Fu,{className:`cuadra-h-4 cuadra-w-4 cuadra-transition-colors ${n==="dark"?"cuadra-text-primary":"cuadra-text-gray-400"}`})})};function sv({onThreadSelect:e}){var w,b;const t=ls(),r=Wd(I=>I.threadId),[n,a]=y.useState(null),i=(t==null?void 0:t.id)===r,s=n===(t==null?void 0:t.id),[o,l]=y.useState(!1),[u,c]=y.useState((t==null?void 0:t.title)||""),[d,f]=y.useState(!1),[h,g]=y.useState(!1),v=()=>M(null,null,function*(){if(!(t!=null&&t.remoteId)||!u||u===t.title){l(!1);return}try{g(!0);const I=window.__cuadraThreadListAdapter;I&&typeof I.rename=="function"&&(yield I.rename(t.remoteId,u)),l(!1),f(!1)}catch(I){l(!1),f(!1)}finally{g(!1)}});return y.useEffect(()=>{t!=null&&t.title&&!o&&c(t.title)},[t==null?void 0:t.title,o]),t?p.jsxs(uo,{className:`group cuadra-relative cuadra-flex cuadra-items-center cuadra-rounded-lg cuadra-transition-colors cuadra-cursor-pointer cuadra-border cuadra-mb-2 ${i?"cuadra-bg-muted cuadra-border-border":"cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border"}`,style:{marginBottom:"0.5rem"},onMouseEnter:()=>a(t.id),onMouseLeave:()=>a(null),children:[p.jsx(ap,{className:"cuadra-p-3 cuadra-flex-1 cuadra-flex cuadra-items-center cuadra-min-w-0 cuadra-cursor-pointer",onClick:()=>e==null?void 0:e(),children:p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-min-w-0 cuadra-flex-1 cuadra-items-start cuadra-text-left",children:o?p.jsx("input",{className:"cuadra-flex cuadra-w-full cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 font-brand",value:u,onChange:I=>c(I.target.value),onKeyDown:I=>{I.key==="Enter"&&v(),I.key==="Escape"&&(l(!1),c(t.title||""))},disabled:h,autoFocus:!0,onClick:I=>I.stopPropagation()}):p.jsxs(p.Fragment,{children:[p.jsx("span",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-truncate font-brand",children:(((w=t.title)==null?void 0:w.length)||0)>60?`${(b=t.title)==null?void 0:b.slice(0,60)}…`:t.title||"Chat"}),t.updatedAt&&p.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-mt-1 font-brand",children:new Date(t.updatedAt).toLocaleDateString()})]})})}),p.jsx("div",{className:"cuadra-mr-2 cuadra-flex-shrink-0 cuadra-w-6 cuadra-h-6 cuadra-flex cuadra-items-center cuadra-justify-center",children:(s||i||d)&&p.jsxs("div",{className:"cuadra-relative",children:[p.jsx("button",{type:"button",className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-background/50 cuadra-transition-colors",onClick:I=>{I.stopPropagation(),f(!d)},"aria-label":"Thread options",children:p.jsx(zu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"})}),d&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-40",onClick:()=>f(!1)}),p.jsx("div",{className:"cuadra-absolute cuadra-right-0 cuadra-top-8 cuadra-z-50 cuadra-bg-background cuadra-border cuadra-border-border cuadra-rounded-lg cuadra-shadow-lg cuadra-min-w-[120px] cuadra-overflow-hidden",children:o?p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),v()},disabled:h,children:"Save"}):p.jsxs(p.Fragment,{children:[p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),l(!0),c(t.title||""),f(!1)},children:"Rename"}),p.jsx("div",{className:"cuadra-border-t cuadra-border-border"}),p.jsx(rp,{asChild:!0,children:p.jsx("button",{type:"button",className:"cuadra-w-full cuadra-px-3 cuadra-py-2 cuadra-text-sm cuadra-text-left cuadra-text-destructive hover:cuadra-bg-muted cuadra-transition-colors font-brand",onClick:I=>{I.stopPropagation(),f(!1)},children:"Delete"})})]})})]})]})})]}):null}function yu({onThreadSelect:e,showThemeToggle:t,theme:r,onLogout:n}){return p.jsxs(lo,{className:"!cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-transition-all cuadra-duration-300 cuadra-ease-in-out cuadra-h-full cuadra-w-80",style:{borderRightWidth:"1px"},children:[p.jsx("div",{className:"cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-end cuadra-transition-all cuadra-duration-300 cuadra-h-16 cuadra-px-4",children:p.jsx("button",{type:"button",onClick:e,className:"cuadra-flex md:cuadra-hidden cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Close",children:p.jsx(Cn,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})})}),p.jsxs("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-2 scrollbar-thin",children:[p.jsx(io,{className:"group cuadra-relative cuadra-flex cuadra-items-center cuadra-gap-3 cuadra-p-3 cuadra-rounded-lg cuadra-cursor-pointer cuadra-transition-colors cuadra-border cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border",onClick:()=>e==null?void 0:e(),children:p.jsx("div",{className:"cuadra-flex-1 cuadra-min-w-0",children:p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[p.jsx(Hu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),p.jsx("h4",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground font-brand",children:"New Chat"})]})})}),p.jsx("div",{className:"cuadra-my-2 cuadra-border-t cuadra-border-border"}),p.jsx(oo,{components:{ThreadListItem:a=>p.jsx(sv,E(m({},a),{onThreadSelect:e}))}})]}),(t||n)&&p.jsxs("div",{className:"cuadra-border-t cuadra-border-border cuadra-flex md:cuadra-hidden cuadra-items-center cuadra-justify-between cuadra-px-4 cuadra-py-4",children:[n&&p.jsx("button",{type:"button",onClick:n,className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Logout",children:p.jsx($u,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),t&&p.jsx(gu,{theme:r})]})]})}const ov=`
|
|
36
36
|
@keyframes rotate {
|
|
37
37
|
100% { transform: rotate(1turn); }
|
|
38
38
|
}
|
|
39
|
-
`,ti=({children:e,className:t="",paddingX:r="px-0",paddingY:n="py-0",borderSizePx:a=4,style:i,contentStyle:s,rotating:o=!1})=>p.jsxs(p.Fragment,{children:[p.jsx("style",{children:ov}),p.jsxs("div",{className:`cuadra-relative cuadra-bg-background md:cuadra-rounded-xl cuadra-overflow-hidden ${t}`,style:m({padding:a},i),children:[p.jsx("div",{className:`cuadra-absolute md:cuadra-rounded-xl cuadra-textured-card-border ${o?"cuadra-textured-card-border-rotating":""}`,style:o?{left:"-100%",top:"-100%",width:"300%",height:"300%",backgroundRepeat:"no-repeat",backgroundSize:"cover",backgroundPosition:"center",animation:"rotate 4s linear infinite"}:{backgroundSize:"cover",backgroundPosition:"center",backgroundRepeat:"no-repeat",top:"0",left:"0",width:"100%",height:"100%"}}),p.jsx("div",{className:`cuadra-relative cuadra-bg-background cuadra-h-full cuadra-z-10 cuadra-flex cuadra-flex-col cuadra-overflow-hidden ${r} ${n}`,style:m({borderRadius:"calc(0.75rem - 4px)"},s),children:e})]})]}),bu=({currentModel:e,models:t,modelsLoading:r,modelsError:n,onModelChange:a,hideModelSelector:i=!1,showThemeToggle:s=!0,theme:o="system",onMobileMenuClick:l,showMobileMenuButton:u=!1})=>{const[c,d]=y.useState(!1),[f,h]=y.useState(!1),g=y.useRef(null);y.useEffect(()=>{const b=I=>{g.current&&!g.current.contains(I.target)&&d(!1)};return c&&document.addEventListener("mousedown",b),()=>{document.removeEventListener("mousedown",b)}},[c]);const v=t.find(b=>b.id===e),w=b=>{a(b),d(!1),h(!1)};return p.jsxs("div",{className:"cuadra-h-16 cuadra-px-4 cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-between cuadra-bg-background",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[u&&p.jsx("button",{type:"button",onClick:l,className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed md:cuadra-hidden","aria-label":"Toggle thread list",children:p.jsx(Uu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),s&&p.jsx("div",{className:"cuadra-hidden md:cuadra-flex cuadra-items-center cuadra-gap-2",children:p.jsx(gu,{theme:o})})]}),p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 md:cuadra-ml-0 cuadra-ml-auto",children:[!i&&p.jsx("label",{className:"cuadra-hidden md:cuadra-inline cuadra-text-sm cuadra-text-muted-foreground cuadra-font-brand",children:"Model"}),i?null:r?p.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-border cuadra-px-3 cuadra-py-2 cuadra-bg-muted",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading..."})}):n?p.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-destructive cuadra-px-3 cuadra-py-2 cuadra-bg-destructive/10",children:p.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):p.jsxs(p.Fragment,{children:[p.jsxs("div",{ref:g,className:"cuadra-hidden md:cuadra-block cuadra-relative cuadra-w-48",children:[p.jsxs("button",{type:"button",onClick:()=>d(!c),disabled:r||t.length===0||!!n,className:"cuadra-flex cuadra-h-10 cuadra-w-full cuadra-items-center cuadra-justify-between cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-font-brand",children:[p.jsx("span",{className:v?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:(v==null?void 0:v.name)||"Select model"}),p.jsx(Tn,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),c&&t.length>0&&p.jsx("div",{className:"cuadra-absolute cuadra-z-50 cuadra-mt-1 cuadra-w-full cuadra-min-w-[8rem] cuadra-overflow-hidden cuadra-rounded-md glass-popover cuadra-text-popover-foreground cuadra-animate-in fade-in-80 cuadra-border cuadra-border-border cuadra-bg-popover cuadra-shadow-md",children:p.jsx("div",{className:"cuadra-p-1",children:t.map(b=>p.jsxs("button",{type:"button",onClick:()=>w(b.id),className:`cuadra-relative cuadra-flex cuadra-w-full cuadra-cursor-pointer cuadra-select-none cuadra-items-center cuadra-rounded-sm cuadra-py-1.5 cuadra-pl-8 cuadra-pr-2 cuadra-text-sm cuadra-outline-none focus:cuadra-bg-secondary focus:cuadra-text-secondary-foreground font-brand cuadra-transition-colors ${e===b.id?"cuadra-bg-secondary cuadra-text-secondary-foreground":"hover:cuadra-bg-secondary/50"}`,children:[e===b.id&&p.jsx("span",{className:"cuadra-absolute cuadra-left-2 cuadra-flex cuadra-h-3.5 cuadra-w-3.5 cuadra-items-center cuadra-justify-center",children:p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"none",viewBox:"0 0 16 16",children:p.jsx("path",{fill:"currentColor",fillRule:"evenodd",d:"M6.47 10.03a.75.75 0 0 1-1.06-1.06l2-2a.75.75 0 0 1 1.06 0l2 2a.75.75 0 1 1-1.06 1.06L8 9.06l-1.53 1.53Z",clipRule:"evenodd"})})}),p.jsx("span",{children:b.name})]},b.id))})})]}),p.jsxs("button",{type:"button",onClick:()=>h(!0),disabled:r||t.length===0||!!n,className:"cuadra-flex md:cuadra-hidden cuadra-h-10 cuadra-w-full cuadra-items-center cuadra-justify-between cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-font-brand",children:[p.jsx("span",{className:v?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:(v==null?void 0:v.name)||"Select model"}),p.jsx(Tn,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),f&&typeof document!="undefined"&&qe.createPortal(p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-bg-black/50 cuadra-z-50 md:cuadra-hidden",onClick:()=>h(!1)}),p.jsxs("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-50 cuadra-flex cuadra-flex-col cuadra-bg-background md:cuadra-hidden",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-between cuadra-border-b cuadra-border-border cuadra-px-4 cuadra-py-4",children:[p.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground font-brand",children:"Select Model"}),p.jsx("button",{type:"button",onClick:()=>h(!1),className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Close",children:p.jsx(Cn,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})})]}),p.jsx("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-4",children:r?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading models..."})}):n?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):t.length===0?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"No models available"})}):p.jsx("div",{className:"cuadra-space-y-2",children:t.map(b=>p.jsxs("button",{type:"button",onClick:()=>w(b.id),className:`cuadra-w-full cuadra-flex cuadra-items-center cuadra-justify-between cuadra-rounded-lg cuadra-border cuadra-px-4 cuadra-py-4 cuadra-text-left cuadra-transition-colors font-brand cuadra-bg-background cuadra-text-foreground cuadra-border-border hover:cuadra-bg-muted ${e===b.id?"cuadra-border-primary":""}`,children:[p.jsx("span",{className:"cuadra-text-base cuadra-font-normal",children:b.name}),e===b.id&&p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",fill:"none",viewBox:"0 0 20 20",className:"cuadra-text-primary",children:p.jsx("path",{fill:"currentColor",fillRule:"evenodd",d:"M16.707 5.293a1 1 0 0 1 0 1.414l-8 8a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 1.414-1.414L8 12.586l7.293-7.293a1 1 0 0 1 1.414 0Z",clipRule:"evenodd"})})]},b.id))})})]})]}),document.body)]})]})]})},lv=y.createContext(void 0),ri=({children:e,value:t})=>p.jsx(lv.Provider,{value:t,children:e});function uv(){y.useEffect(()=>{if(document.querySelector("style[data-cuadra-uikit]"))return;const t=document.createElement("div");t.className="cuadra-flex",document.body.appendChild(t);const r=window.getComputedStyle(t).display==="flex";if(document.body.removeChild(t),r)return;const n=document.createElement("link");n.setAttribute("data-cuadra-uikit","true"),n.rel="stylesheet",n.type="text/css";const a=["/node_modules/@cuadra-ai/uikit/dist/uikit.css",new URL("../dist/uikit.css",typeof document=="undefined"&&typeof location=="undefined"?require("url").pathToFileURL(__filename).href:typeof document=="undefined"?location.href:De&&De.tagName.toUpperCase()==="SCRIPT"&&De.src||new URL("cuadra-uikit.umd.js",document.baseURI).href).href];let i=!1;for(const s of a)if(n.href=s,n.onload=()=>{i=!0},n.onerror=()=>{},document.head.appendChild(n),i)break},[])}const wu=y.forwardRef(function({config:t},r){uv();const n=y.useRef(null),a=y.useRef(!1),{baseUrl:i,proxyUrl:s,sessionToken:o,mode:l="multiChat",modelMode:u="fixed",modelId:c,onModelChange:d,ephemeral:f=!1,systemPrompt:h,enableReasoning:g=!1,initialThreadId:v,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,preMadeResponseDelay:B=1e3,streamingSpeed:_=50,showThemeToggle:j=!0,initialMessage:R,initialPreMadeQA:U,theme:S="system",onError:P,onChatCreated:N,onUserMessage:H,onThreadIdUpdate:z,onLogout:O,enableAttachments:ee=!1,onBeforeRequest:de,mockResponseOnBlocked:pe}=t;y.useImperativeHandle(r,()=>({sendMessage:q=>{var ae;(ae=n.current)==null||ae.sendMessage(q)},sendPreMadeQA:(q,ae,G)=>{var Ke;(Ke=n.current)==null||Ke.sendPreMadeQA(q,ae,G)},clearChat:()=>{var q;(q=n.current)==null||q.clearChat()}}),[]),y.useEffect(()=>{if(a.current)return;const q=setTimeout(()=>{var ae,G;U?(a.current=!0,(ae=n.current)==null||ae.sendPreMadeQA(U.question,U.answer,{delay:B,streamingSpeed:_})):R&&(a.current=!0,(G=n.current)==null||G.sendMessage(R))},500);return()=>clearTimeout(q)},[R,U,B,_]);const[ue,x]=y.useState(!1),[ie,_e]=y.useState(null),[k,Te]=y.useState(null),[He,we]=y.useState(!1),W=y.useRef(null),ne=q=>{if(q<30)return!0;if(W.current){const ae=W.current.getBoundingClientRect();if(q-ae.left<30)return!0}return!1},me=q=>{const G=q.touches[0].clientX;(ne(G)||ue)&&(_e(G),Te(G),we(!0))},be=q=>{if(ie===null||!He)return;const ae=q.touches[0];Te(ae.clientX)},Ce=()=>{if(ie===null||k===null){we(!1);return}const q=k-ie,ae=50,G=.3,je=Math.abs(q)/300;q>ae&&!ue&&ie!==null?ne(ie)&&x(!0):((q<-ae||q<0&&je>G)&&ue||ue&&q<-20&&je>G)&&x(!1),_e(null),Te(null),we(!1)},he=()=>{if(He&&ie!==null&&k!==null){const q=k-ie;if(ue)return`translateX(${Math.min(0,q)}px)`;if(ie!==null&&ne(ie))return`translateX(${Math.min(0,-320+q)}px)`}return ue?"translateX(0)":"translateX(-100%)"},Pe=()=>{if(!He||ie===null||k===null)return ue?.5:0;const ae=k-ie;return ue?Math.max(0,Math.min(1,(320+ae)/320))*.5:ie!==null&&ne(ie)?Math.max(0,Math.min(1,(ae+320)/320))*.5:0},it=s||i||"",st=!!s,_t=y.useMemo(()=>new co(it,o||void 0,st),[it,o,st]),[Ie,ht]=y.useState(null),[ft,Pr]=y.useState(!1),[Bt,wn]=y.useState(null),[ni,xn]=y.useState(!1);y.useEffect(()=>{l==="multiChat"&&xn(!0)},[l]);const Tt=y.useCallback(()=>M(null,null,function*(){if(u==="selector"){Pr(!0),wn(null);try{const q=yield _t.listModels();ht(q)}catch(q){wn(q instanceof Error?q:new Error("Failed to load models"))}finally{Pr(!1)}}}),[_t,u]);y.useEffect(()=>{u==="selector"&&Tt()},[u,Tt]),y.useEffect(()=>(typeof window!="undefined"&&(window.__cuadraUIKitRefetchModels=Tt),()=>{typeof window!="undefined"&&delete window.__cuadraUIKitRefetchModels}),[Tt]);const[A,F]=y.useState(u==="fixed"&&c||null),K=y.useRef(A),Q=y.useCallback(q=>{const ae=K.current;F(q),K.current=q,d==null||d(q),ae!==null&&ae!==q&&l==="multiChat"&&setTimeout(()=>{var Ke,je;const G=window.__cuadraThreadListRuntime;if((Ke=G==null?void 0:G.threads)!=null&&Ke.switchToNewThread)try{G.threads.switchToNewThread()}catch(Cu){}else if((je=G==null?void 0:G.threads)!=null&&je.createThread)try{G.threads.createThread()}catch(Cu){}else if(G!=null&&G.switchToNewThread)try{G.switchToNewThread()}catch(Cu){}},100)},[d,l]);y.useEffect(()=>{if(u==="selector"&&(Ie!=null&&Ie.items)&&Ie.items.length>0&&!A){const q=Ie.items[0];if(q!=null&&q.id){const ae=q.id;F(ae),d==null||d(ae)}}},[u,Ie==null?void 0:Ie.items,A,d]);const se=u==="fixed"?!!c:!!A,Ne=y.useMemo(()=>((Ie==null?void 0:Ie.items)||[]).filter(q=>(q==null?void 0:q.id)&&(q==null?void 0:q.displayName)).map(q=>({id:q.id,name:q.displayName})),[Ie]),ot=y.useMemo(()=>({currentModelId:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,refetchModels:Tt}),[A,Ne,ft,Bt,Q,Tt]);return u==="selector"&&ft||l==="multiChat"&&ni?p.jsx(ri,{value:ot,children:p.jsx(ti,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:p.jsx(li,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"})})})}):u==="selector"&&!se&&Bt?p.jsx(ri,{value:ot,children:p.jsx(ti,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:p.jsx("p",{className:"cuadra-text-sm cuadra-text-destructive font-brand",children:"Failed to load models"})})})})}):p.jsx("div",{className:"cuadra-uikit cuadra-h-full cuadra-w-full",style:{height:"100%",width:"100%"},children:p.jsx(ri,{value:ot,children:p.jsx(cp,{baseUrl:st?it:i||it,sessionToken:o,isProxyMode:st,mode:l,modelMode:u,modelId:A||c||void 0,onModelChange:Q,ephemeral:f,systemPrompt:h,enableReasoning:g,initialThreadId:v,enableAttachments:ee,onError:P,onChatCreated:N,onUserMessage:H,onThreadIdUpdate:z,onBeforeRequest:de,mockResponseOnBlocked:pe,onChatsLoaded:()=>{l==="multiChat"&&xn(!1)},children:p.jsx(ti,{paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",className:`cuadra-h-full ${t.containerClass||""}`,borderSizePx:4,style:{height:"100%"},children:p.jsx("div",{className:"cuadra-h-full cuadra-flex cuadra-relative",style:{height:"100%"},onTouchStart:me,onTouchMove:be,onTouchEnd:Ce,children:l==="multiChat"?p.jsxs(p.Fragment,{children:[typeof document!="undefined"&&qe.createPortal(p.jsx("div",{className:`cuadra-fixed cuadra-inset-0 cuadra-bg-black cuadra-z-40 md:cuadra-hidden cuadra-transition-opacity cuadra-duration-300 ${ue||He?"":"cuadra-pointer-events-none"}`,style:{opacity:Pe()},onClick:()=>x(!1)}),document.body),typeof document!="undefined"&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-hidden md:cuadra-block !cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-transition-all cuadra-duration-300 cuadra-ease-in-out cuadra-h-full cuadra-w-80 cuadra-relative",style:{borderRightWidth:"1px",height:"100%"},children:p.jsx(yu,{onThreadSelect:()=>x(!1),showThemeToggle:j,theme:S,onLogout:O})}),typeof document!="undefined"&&qe.createPortal(p.jsx("div",{className:`cuadra-block md:cuadra-hidden !cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-h-screen cuadra-w-80 cuadra-fixed cuadra-z-50 cuadra-top-0 cuadra-left-0 ${ue||He?"":"cuadra-pointer-events-none"}`,style:{borderRightWidth:"1px",transform:he(),transition:He?"none":"transform 0.3s ease-in-out"},onTouchStart:me,onTouchMove:be,onTouchEnd:Ce,children:p.jsx(yu,{onThreadSelect:()=>x(!1),showThemeToggle:j,theme:S,onLogout:O})}),document.body)]}),p.jsxs("div",{ref:W,className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[u==="selector"&&p.jsx(bu,{currentModel:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,showThemeToggle:j,theme:S,onMobileMenuClick:()=>x(!ue),showMobileMenuButton:l==="multiChat"}),p.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:p.jsx(mu,{ref:n,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,enableAttachments:ee,preMadeResponseDelay:B,streamingSpeed:_})})]})]}):p.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[u==="selector"&&p.jsx(bu,{currentModel:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,showThemeToggle:j,theme:S}),p.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:p.jsx(mu,{ref:n,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,preMadeResponseDelay:B,streamingSpeed:_})})]})})})})})})});class bn{constructor(){C(this,"config",null);C(this,"root",null);C(this,"container",null);C(this,"instances",new Map)}init(t){if(!t.baseUrl&&!t.proxyUrl)throw new Error("Either baseUrl or proxyUrl is required");if(t.modelMode==="fixed"&&t.modelId!==void 0&&(!t.modelId||t.modelId.trim()===""))throw new Error("modelId cannot be empty when explicitly provided. Omit modelId to let backend resolve it.");const r=t.containerId||"cuadra-chat";let n=document.getElementById(r);n||(n=document.createElement("div"),n.id=r,document.body.appendChild(n)),t.containerClass&&n.classList.add(...t.containerClass.split(" ")),this.config=E(m({},t),{containerId:r}),this.container=n,this.root=ge.createRoot(n),this.root.render(y.createElement(xu,{config:this.config})),this.instances.set(r,this)}destroy(t){var a;const r=t||((a=this.config)==null?void 0:a.containerId);if(!r)return;const n=this.instances.get(r);n!=null&&n.root&&(n.root.unmount(),n.root=null),n!=null&&n.container&&n.container.parentNode&&n.container.parentNode.removeChild(n.container),this.instances.delete(r)}updateConfig(t,r){var s;const n=r||((s=this.config)==null?void 0:s.containerId);if(!n)return;const a=this.instances.get(n);if(!(a!=null&&a.config))return;const i=m(m({},a.config),t);a.config=i,a.root&&a.container&&a.root.render(y.createElement(xu,{config:i}))}getInstance(t){var n;const r=t||((n=this.config)==null?void 0:n.containerId);return r&&this.instances.get(r)||null}static parseConfigFromAttributes(t,r){const n={};return t.dataset.baseUrl&&(n.baseUrl=t.dataset.baseUrl),t.dataset.proxyUrl&&(n.proxyUrl=t.dataset.proxyUrl),t.dataset.sessionToken&&(n.sessionToken=t.dataset.sessionToken),t.dataset.containerId&&(n.containerId=t.dataset.containerId),t.dataset.containerClass&&(n.containerClass=t.dataset.containerClass),t.dataset.mode&&(n.mode=t.dataset.mode),t.dataset.modelMode&&(n.modelMode=t.dataset.modelMode),t.dataset.modelId&&(n.modelId=t.dataset.modelId),t.dataset.ephemeral&&(n.ephemeral=t.dataset.ephemeral==="true"),t.dataset.systemPrompt&&(n.systemPrompt=t.dataset.systemPrompt),r&&(r.dataset.baseUrl&&(n.baseUrl=r.dataset.baseUrl),r.dataset.proxyUrl&&(n.proxyUrl=r.dataset.proxyUrl),r.dataset.sessionToken&&(n.sessionToken=r.dataset.sessionToken),r.dataset.mode&&(n.mode=r.dataset.mode),r.dataset.modelMode&&(n.modelMode=r.dataset.modelMode),r.dataset.modelId&&(n.modelId=r.dataset.modelId)),n}}const xu=({config:e})=>p.jsx(wu,{config:e});let Re=null;typeof window!="undefined"&&(Re=new bn);const vu={init:e=>(Re||(Re=new bn),Re.init(e)),destroy:e=>Re==null?void 0:Re.destroy(e),updateConfig:(e,t)=>Re==null?void 0:Re.updateConfig(e,t),getInstance:e=>Re==null?void 0:Re.getInstance(e),refetchModels:()=>{if(typeof window!="undefined"){const e=window.__cuadraUIKitRefetchModels;e&&e()}},version:"0.1.0"};if(typeof window!="undefined"){window.CuadraUIKit=vu;const e=()=>{const t=document.querySelectorAll('script[src*="cuadra-uikit"]'),r=Array.from(t).find(n=>(n.getAttribute("src")||"").includes("cuadra-uikit.umd.js"));r&&r.dataset.autoInit!=="false"&&cv(r)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):setTimeout(e,0)}function cv(e){if(!e||!Re)return;const t=bn.parseConfigFromAttributes(e),r=t.containerId||"cuadra-chat",n=document.getElementById(r);if(n){const a=bn.parseConfigFromAttributes(e,n);Object.assign(t,a)}(t.baseUrl||t.proxyUrl)&&Re.init(t)}$.WidgetContent=wu,$.default=vu,Object.defineProperties($,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
39
|
+
`,ti=({children:e,className:t="",paddingX:r="px-0",paddingY:n="py-0",borderSizePx:a=4,style:i,contentStyle:s,rotating:o=!1})=>p.jsxs(p.Fragment,{children:[p.jsx("style",{children:ov}),p.jsxs("div",{className:`cuadra-relative cuadra-bg-background md:cuadra-rounded-xl cuadra-overflow-hidden ${t}`,style:m({padding:a},i),children:[p.jsx("div",{className:`cuadra-absolute md:cuadra-rounded-xl cuadra-textured-card-border ${o?"cuadra-textured-card-border-rotating":""}`,style:o?{left:"-100%",top:"-100%",width:"300%",height:"300%",backgroundRepeat:"no-repeat",backgroundSize:"cover",backgroundPosition:"center",animation:"rotate 4s linear infinite"}:{backgroundSize:"cover",backgroundPosition:"center",backgroundRepeat:"no-repeat",top:"0",left:"0",width:"100%",height:"100%"}}),p.jsx("div",{className:`cuadra-relative cuadra-bg-background cuadra-h-full cuadra-z-10 cuadra-flex cuadra-flex-col cuadra-overflow-hidden ${r} ${n}`,style:m({borderRadius:"calc(0.75rem - 4px)"},s),children:e})]})]}),bu=({currentModel:e,models:t,modelsLoading:r,modelsError:n,onModelChange:a,hideModelSelector:i=!1,showThemeToggle:s=!0,theme:o="system",onMobileMenuClick:l,showMobileMenuButton:u=!1})=>{const[c,d]=y.useState(!1),[f,h]=y.useState(!1),g=y.useRef(null);y.useEffect(()=>{const b=I=>{g.current&&!g.current.contains(I.target)&&d(!1)};return c&&document.addEventListener("mousedown",b),()=>{document.removeEventListener("mousedown",b)}},[c]);const v=t.find(b=>b.id===e),w=b=>{a(b),d(!1),h(!1)};return p.jsxs("div",{className:"cuadra-h-16 cuadra-px-4 cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-between cuadra-bg-background",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[u&&p.jsx("button",{type:"button",onClick:l,className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors disabled:cuadra-opacity-50 disabled:cuadra-cursor-not-allowed md:cuadra-hidden","aria-label":"Toggle thread list",children:p.jsx(Uu,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),s&&p.jsx("div",{className:"cuadra-hidden md:cuadra-flex cuadra-items-center cuadra-gap-2",children:p.jsx(gu,{theme:o})})]}),p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 md:cuadra-ml-0 cuadra-ml-auto",children:[!i&&p.jsx("label",{className:"cuadra-hidden md:cuadra-inline cuadra-text-sm cuadra-text-muted-foreground cuadra-font-brand",children:"Model"}),i?null:r?p.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-border cuadra-px-3 cuadra-py-2 cuadra-bg-muted",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading..."})}):n?p.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-destructive cuadra-px-3 cuadra-py-2 cuadra-bg-destructive/10",children:p.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):p.jsxs(p.Fragment,{children:[p.jsxs("div",{ref:g,className:"cuadra-hidden md:cuadra-block cuadra-relative cuadra-w-48",children:[p.jsxs("button",{type:"button",onClick:()=>d(!c),disabled:r||t.length===0||!!n,className:"cuadra-flex cuadra-h-10 cuadra-w-full cuadra-items-center cuadra-justify-between cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-font-brand",children:[p.jsx("span",{className:v?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:(v==null?void 0:v.name)||"Select model"}),p.jsx(Tn,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),c&&t.length>0&&p.jsx("div",{className:"cuadra-absolute cuadra-z-50 cuadra-mt-1 cuadra-w-full cuadra-min-w-[8rem] cuadra-overflow-hidden cuadra-rounded-md glass-popover cuadra-text-popover-foreground cuadra-animate-in fade-in-80 cuadra-border cuadra-border-border cuadra-bg-popover cuadra-shadow-md",children:p.jsx("div",{className:"cuadra-p-1",children:t.map(b=>p.jsxs("button",{type:"button",onClick:()=>w(b.id),className:`cuadra-relative cuadra-flex cuadra-w-full cuadra-cursor-pointer cuadra-select-none cuadra-items-center cuadra-rounded-sm cuadra-py-1.5 cuadra-pl-8 cuadra-pr-2 cuadra-text-sm cuadra-outline-none focus:cuadra-bg-secondary focus:cuadra-text-secondary-foreground font-brand cuadra-transition-colors ${e===b.id?"cuadra-bg-secondary cuadra-text-secondary-foreground":"hover:cuadra-bg-secondary/50"}`,children:[e===b.id&&p.jsx("span",{className:"cuadra-absolute cuadra-left-2 cuadra-flex cuadra-h-3.5 cuadra-w-3.5 cuadra-items-center cuadra-justify-center",children:p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"none",viewBox:"0 0 16 16",children:p.jsx("path",{fill:"currentColor",fillRule:"evenodd",d:"M6.47 10.03a.75.75 0 0 1-1.06-1.06l2-2a.75.75 0 0 1 1.06 0l2 2a.75.75 0 1 1-1.06 1.06L8 9.06l-1.53 1.53Z",clipRule:"evenodd"})})}),p.jsx("span",{children:b.name})]},b.id))})})]}),p.jsxs("button",{type:"button",onClick:()=>h(!0),disabled:r||t.length===0||!!n,className:"cuadra-flex md:cuadra-hidden cuadra-h-10 cuadra-w-full cuadra-items-center cuadra-justify-between cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-sm placeholder:cuadra-text-muted-foreground focus:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-font-brand",children:[p.jsx("span",{className:v?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:(v==null?void 0:v.name)||"Select model"}),p.jsx(Tn,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),f&&typeof document!="undefined"&&qe.createPortal(p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-bg-black/50 cuadra-z-50 md:cuadra-hidden",onClick:()=>h(!1)}),p.jsxs("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-50 cuadra-flex cuadra-flex-col cuadra-bg-background md:cuadra-hidden",children:[p.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-between cuadra-border-b cuadra-border-border cuadra-px-4 cuadra-py-4",children:[p.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground font-brand",children:"Select Model"}),p.jsx("button",{type:"button",onClick:()=>h(!1),className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-8 cuadra-w-8 cuadra-rounded-full cuadra-bg-muted hover:cuadra-bg-muted/80 cuadra-transition-colors","aria-label":"Close",children:p.jsx(Cn,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})})]}),p.jsx("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-4",children:r?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading models..."})}):n?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):t.length===0?p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-py-8",children:p.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"No models available"})}):p.jsx("div",{className:"cuadra-space-y-2",children:t.map(b=>p.jsxs("button",{type:"button",onClick:()=>w(b.id),className:`cuadra-w-full cuadra-flex cuadra-items-center cuadra-justify-between cuadra-rounded-lg cuadra-border cuadra-px-4 cuadra-py-4 cuadra-text-left cuadra-transition-colors font-brand cuadra-bg-background cuadra-text-foreground cuadra-border-border hover:cuadra-bg-muted ${e===b.id?"cuadra-border-primary":""}`,children:[p.jsx("span",{className:"cuadra-text-base cuadra-font-normal",children:b.name}),e===b.id&&p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",fill:"none",viewBox:"0 0 20 20",className:"cuadra-text-primary",children:p.jsx("path",{fill:"currentColor",fillRule:"evenodd",d:"M16.707 5.293a1 1 0 0 1 0 1.414l-8 8a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 1.414-1.414L8 12.586l7.293-7.293a1 1 0 0 1 1.414 0Z",clipRule:"evenodd"})})]},b.id))})})]})]}),document.body)]})]})]})},lv=y.createContext(void 0),ri=({children:e,value:t})=>p.jsx(lv.Provider,{value:t,children:e});function uv(){y.useEffect(()=>{if(document.querySelector("style[data-cuadra-uikit]"))return;const t=document.createElement("div");t.className="cuadra-flex",document.body.appendChild(t);const r=window.getComputedStyle(t).display==="flex";if(document.body.removeChild(t),r)return;const n=document.createElement("link");n.setAttribute("data-cuadra-uikit","true"),n.rel="stylesheet",n.type="text/css";const a=["/node_modules/@cuadra-ai/uikit/dist/uikit.css",new URL("../dist/uikit.css",typeof document=="undefined"&&typeof location=="undefined"?require("url").pathToFileURL(__filename).href:typeof document=="undefined"?location.href:De&&De.tagName.toUpperCase()==="SCRIPT"&&De.src||new URL("cuadra-uikit.umd.js",document.baseURI).href).href];let i=!1;for(const s of a)if(n.href=s,n.onload=()=>{i=!0},n.onerror=()=>{},document.head.appendChild(n),i)break},[])}const wu=y.forwardRef(function({config:t},r){uv();const n=y.useRef(null),a=y.useRef(!1),{baseUrl:i,proxyUrl:s,sessionToken:o,mode:l="multiChat",modelMode:u="fixed",modelId:c,onModelChange:d,ephemeral:f=!1,systemPrompt:h,enableReasoning:g=!1,initialThreadId:v,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,preMadeResponseDelay:B=1e3,streamingSpeed:_=50,showThemeToggle:j=!0,initialMessage:R,initialPreMadeQA:U,theme:S="system",onError:P,onChatCreated:N,onUserMessage:H,onThreadIdUpdate:z,onLogout:O,enableAttachments:ee=!1,onBeforeRequest:de,mockResponseOnBlocked:pe}=t;y.useImperativeHandle(r,()=>({sendMessage:q=>{var ae;(ae=n.current)==null||ae.sendMessage(q)},sendPreMadeQA:(q,ae,G)=>{var Ke;(Ke=n.current)==null||Ke.sendPreMadeQA(q,ae,G)},clearChat:()=>{var q;(q=n.current)==null||q.clearChat()}}),[]),y.useEffect(()=>{if(a.current)return;const q=setTimeout(()=>{var ae,G;U?(a.current=!0,(ae=n.current)==null||ae.sendPreMadeQA(U.question,U.answer,{delay:B,streamingSpeed:_})):R&&(a.current=!0,(G=n.current)==null||G.sendMessage(R))},500);return()=>clearTimeout(q)},[R,U,B,_]);const[ue,x]=y.useState(!1),[ie,_e]=y.useState(null),[k,Te]=y.useState(null),[He,we]=y.useState(!1),W=y.useRef(null),ne=q=>{if(q<30)return!0;if(W.current){const ae=W.current.getBoundingClientRect();if(q-ae.left<30)return!0}return!1},me=q=>{const G=q.touches[0].clientX;(ne(G)||ue)&&(_e(G),Te(G),we(!0))},be=q=>{if(ie===null||!He)return;const ae=q.touches[0];Te(ae.clientX)},Ce=()=>{if(ie===null||k===null){we(!1);return}const q=k-ie,ae=50,G=.3,je=Math.abs(q)/300;q>ae&&!ue&&ie!==null?ne(ie)&&x(!0):((q<-ae||q<0&&je>G)&&ue||ue&&q<-20&&je>G)&&x(!1),_e(null),Te(null),we(!1)},he=()=>{if(He&&ie!==null&&k!==null){const q=k-ie;if(ue)return`translateX(${Math.min(0,q)}px)`;if(ie!==null&&ne(ie))return`translateX(${Math.min(0,-320+q)}px)`}return ue?"translateX(0)":"translateX(-100%)"},Pe=()=>{if(!He||ie===null||k===null)return ue?.5:0;const ae=k-ie;return ue?Math.max(0,Math.min(1,(320+ae)/320))*.5:ie!==null&&ne(ie)?Math.max(0,Math.min(1,(ae+320)/320))*.5:0},it=s||i||"",st=!!s,Tt=y.useMemo(()=>new co(it,o||void 0,st),[it,o,st]),[Ie,ht]=y.useState(null),[ft,Pr]=y.useState(!1),[Bt,wn]=y.useState(null),[ni,xn]=y.useState(!1);y.useEffect(()=>{l==="multiChat"&&xn(!0)},[l]);const Ct=y.useCallback(()=>M(null,null,function*(){if(u==="selector"){Pr(!0),wn(null);try{const q=yield Tt.listModels();ht(q)}catch(q){wn(q instanceof Error?q:new Error("Failed to load models"))}finally{Pr(!1)}}}),[Tt,u]);y.useEffect(()=>{u==="selector"&&Ct()},[u,Ct]),y.useEffect(()=>(typeof window!="undefined"&&(window.__cuadraUIKitRefetchModels=Ct),()=>{typeof window!="undefined"&&delete window.__cuadraUIKitRefetchModels}),[Ct]);const[A,F]=y.useState(u==="fixed"&&c||null),K=y.useRef(A),Q=y.useCallback(q=>{const ae=K.current;F(q),K.current=q,d==null||d(q),ae!==null&&ae!==q&&l==="multiChat"&&setTimeout(()=>{var Ke,je;const G=window.__cuadraThreadListRuntime;if((Ke=G==null?void 0:G.threads)!=null&&Ke.switchToNewThread)try{G.threads.switchToNewThread()}catch(Cu){}else if((je=G==null?void 0:G.threads)!=null&&je.createThread)try{G.threads.createThread()}catch(Cu){}else if(G!=null&&G.switchToNewThread)try{G.switchToNewThread()}catch(Cu){}},100)},[d,l]);y.useEffect(()=>{if(u==="selector"&&(Ie!=null&&Ie.items)&&Ie.items.length>0&&!A){const q=Ie.items[0];if(q!=null&&q.id){const ae=q.id;F(ae),d==null||d(ae)}}},[u,Ie==null?void 0:Ie.items,A,d]);const se=u==="fixed"?!!c:!!A,Ne=y.useMemo(()=>((Ie==null?void 0:Ie.items)||[]).filter(q=>(q==null?void 0:q.id)&&(q==null?void 0:q.displayName)).map(q=>({id:q.id,name:q.displayName})),[Ie]),ot=y.useMemo(()=>({currentModelId:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,refetchModels:Ct}),[A,Ne,ft,Bt,Q,Ct]);return u==="selector"&&ft||l==="multiChat"&&ni?p.jsx(ri,{value:ot,children:p.jsx(ti,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:p.jsx(li,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"})})})}):u==="selector"&&!se&&Bt?p.jsx(ri,{value:ot,children:p.jsx(ti,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:p.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:p.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:p.jsx("p",{className:"cuadra-text-sm cuadra-text-destructive font-brand",children:"Failed to load models"})})})})}):p.jsx("div",{className:"cuadra-uikit cuadra-h-full cuadra-w-full",style:{height:"100%",width:"100%"},children:p.jsx(ri,{value:ot,children:p.jsx(cp,{baseUrl:st?it:i||it,sessionToken:o,isProxyMode:st,mode:l,modelMode:u,modelId:A||c||void 0,onModelChange:Q,ephemeral:f,systemPrompt:h,enableReasoning:g,initialThreadId:v,enableAttachments:ee,onError:P,onChatCreated:N,onUserMessage:H,onThreadIdUpdate:z,onBeforeRequest:de,mockResponseOnBlocked:pe,onChatsLoaded:()=>{l==="multiChat"&&xn(!1)},children:p.jsx(ti,{paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",className:`cuadra-h-full ${t.containerClass||""}`,borderSizePx:4,style:{height:"100%"},children:p.jsx("div",{className:"cuadra-h-full cuadra-flex cuadra-relative",style:{height:"100%"},onTouchStart:me,onTouchMove:be,onTouchEnd:Ce,children:l==="multiChat"?p.jsxs(p.Fragment,{children:[typeof document!="undefined"&&qe.createPortal(p.jsx("div",{className:`cuadra-fixed cuadra-inset-0 cuadra-bg-black cuadra-z-40 md:cuadra-hidden cuadra-transition-opacity cuadra-duration-300 ${ue||He?"":"cuadra-pointer-events-none"}`,style:{opacity:Pe()},onClick:()=>x(!1)}),document.body),typeof document!="undefined"&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"cuadra-hidden md:cuadra-block !cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-transition-all cuadra-duration-300 cuadra-ease-in-out cuadra-h-full cuadra-w-80 cuadra-relative",style:{borderRightWidth:"1px",height:"100%"},children:p.jsx(yu,{onThreadSelect:()=>x(!1),showThemeToggle:j,theme:S,onLogout:O})}),typeof document!="undefined"&&qe.createPortal(p.jsx("div",{className:`cuadra-block md:cuadra-hidden !cuadra-border-r cuadra-border-border cuadra-flex cuadra-flex-col cuadra-bg-background cuadra-h-screen cuadra-w-80 cuadra-fixed cuadra-z-50 cuadra-top-0 cuadra-left-0 ${ue||He?"":"cuadra-pointer-events-none"}`,style:{borderRightWidth:"1px",transform:he(),transition:He?"none":"transform 0.3s ease-in-out"},onTouchStart:me,onTouchMove:be,onTouchEnd:Ce,children:p.jsx(yu,{onThreadSelect:()=>x(!1),showThemeToggle:j,theme:S,onLogout:O})}),document.body)]}),p.jsxs("div",{ref:W,className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[u==="selector"&&p.jsx(bu,{currentModel:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,showThemeToggle:j,theme:S,onMobileMenuClick:()=>x(!ue),showMobileMenuButton:l==="multiChat"}),p.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:p.jsx(mu,{ref:n,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,enableAttachments:ee,preMadeResponseDelay:B,streamingSpeed:_})})]})]}):p.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[u==="selector"&&p.jsx(bu,{currentModel:A||"",models:Ne,modelsLoading:ft,modelsError:Bt,onModelChange:Q,showThemeToggle:j,theme:S}),p.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:p.jsx(mu,{ref:n,welcomeTitle:w,welcomeSubtitle:b,extraTopPadding:I,suggestions:T,inputPlaceholder:D,preMadeResponseDelay:B,streamingSpeed:_})})]})})})})})})});class bn{constructor(){C(this,"config",null);C(this,"root",null);C(this,"container",null);C(this,"instances",new Map)}init(t){if(!t.baseUrl&&!t.proxyUrl)throw new Error("Either baseUrl or proxyUrl is required");if(t.modelMode==="fixed"&&t.modelId!==void 0&&(!t.modelId||t.modelId.trim()===""))throw new Error("modelId cannot be empty when explicitly provided. Omit modelId to let backend resolve it.");const r=t.containerId||"cuadra-chat";let n=document.getElementById(r);n||(n=document.createElement("div"),n.id=r,document.body.appendChild(n)),t.containerClass&&n.classList.add(...t.containerClass.split(" ")),this.config=E(m({},t),{containerId:r}),this.container=n,this.root=ge.createRoot(n),this.root.render(y.createElement(xu,{config:this.config})),this.instances.set(r,this)}destroy(t){var a;const r=t||((a=this.config)==null?void 0:a.containerId);if(!r)return;const n=this.instances.get(r);n!=null&&n.root&&(n.root.unmount(),n.root=null),n!=null&&n.container&&n.container.parentNode&&n.container.parentNode.removeChild(n.container),this.instances.delete(r)}updateConfig(t,r){var s;const n=r||((s=this.config)==null?void 0:s.containerId);if(!n)return;const a=this.instances.get(n);if(!(a!=null&&a.config))return;const i=m(m({},a.config),t);a.config=i,a.root&&a.container&&a.root.render(y.createElement(xu,{config:i}))}getInstance(t){var n;const r=t||((n=this.config)==null?void 0:n.containerId);return r&&this.instances.get(r)||null}static parseConfigFromAttributes(t,r){const n={};return t.dataset.baseUrl&&(n.baseUrl=t.dataset.baseUrl),t.dataset.proxyUrl&&(n.proxyUrl=t.dataset.proxyUrl),t.dataset.sessionToken&&(n.sessionToken=t.dataset.sessionToken),t.dataset.containerId&&(n.containerId=t.dataset.containerId),t.dataset.containerClass&&(n.containerClass=t.dataset.containerClass),t.dataset.mode&&(n.mode=t.dataset.mode),t.dataset.modelMode&&(n.modelMode=t.dataset.modelMode),t.dataset.modelId&&(n.modelId=t.dataset.modelId),t.dataset.ephemeral&&(n.ephemeral=t.dataset.ephemeral==="true"),t.dataset.systemPrompt&&(n.systemPrompt=t.dataset.systemPrompt),r&&(r.dataset.baseUrl&&(n.baseUrl=r.dataset.baseUrl),r.dataset.proxyUrl&&(n.proxyUrl=r.dataset.proxyUrl),r.dataset.sessionToken&&(n.sessionToken=r.dataset.sessionToken),r.dataset.mode&&(n.mode=r.dataset.mode),r.dataset.modelMode&&(n.modelMode=r.dataset.modelMode),r.dataset.modelId&&(n.modelId=r.dataset.modelId)),n}}const xu=({config:e})=>p.jsx(wu,{config:e});let Re=null;typeof window!="undefined"&&(Re=new bn);const vu={init:e=>(Re||(Re=new bn),Re.init(e)),destroy:e=>Re==null?void 0:Re.destroy(e),updateConfig:(e,t)=>Re==null?void 0:Re.updateConfig(e,t),getInstance:e=>Re==null?void 0:Re.getInstance(e),refetchModels:()=>{if(typeof window!="undefined"){const e=window.__cuadraUIKitRefetchModels;e&&e()}},version:"0.1.0"};if(typeof window!="undefined"){window.CuadraUIKit=vu;const e=()=>{const t=document.querySelectorAll('script[src*="cuadra-uikit"]'),r=Array.from(t).find(n=>(n.getAttribute("src")||"").includes("cuadra-uikit.umd.js"));r&&r.dataset.autoInit!=="false"&&cv(r)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e):setTimeout(e,0)}function cv(e){if(!e||!Re)return;const t=bn.parseConfigFromAttributes(e),r=t.containerId||"cuadra-chat",n=document.getElementById(r);if(n){const a=bn.parseConfigFromAttributes(e,n);Object.assign(t,a)}(t.baseUrl||t.proxyUrl)&&Re.init(t)}$.WidgetContent=wu,$.default=vu,Object.defineProperties($,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
40
40
|
//# sourceMappingURL=cuadra-uikit.umd.js.map
|