@cuadra-ai/uikit 0.1.13 → 0.1.15
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/adapters/chatModelAdapter.d.ts +1 -0
- package/dist/adapters/chatModelAdapter.d.ts.map +1 -1
- package/dist/adapters/threadListAdapter.d.ts.map +1 -1
- package/dist/components/CuadraRuntimeProvider.d.ts.map +1 -1
- package/dist/components/SimpleThread.d.ts.map +1 -1
- package/dist/index.cjs +15 -15
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +1021 -941
- package/dist/index.mjs.map +1 -1
- package/dist/uikit.css +1 -1
- package/dist/widget/cuadra-uikit.css +1 -1
- package/dist/widget/cuadra-uikit.umd.js +34 -34
- package/dist/widget/cuadra-uikit.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ export interface ChatModelAdapterOptions {
|
|
|
6
6
|
ephemeral?: boolean;
|
|
7
7
|
onChatCreated?: (chatId: string) => void;
|
|
8
8
|
onUserMessage?: () => void;
|
|
9
|
+
onThreadIdUpdate?: (localThreadId: string, serverChatId: string) => void;
|
|
9
10
|
}
|
|
10
11
|
/**
|
|
11
12
|
* Creates a ChatModelAdapter for LocalRuntime that connects to Cuadra API
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatModelAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/chatModelAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAuB,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAiC,MAAM,yBAAyB,CAAC;AAG1F,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"chatModelAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/chatModelAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAuB,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAiC,MAAM,yBAAyB,CAAC;AAG1F,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1E;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,CAoHlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threadListAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/threadListAdapter.
|
|
1
|
+
{"version":3,"file":"threadListAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/threadListAdapter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gCAAgC,IAAI,uBAAuB,EAG5D,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAK3D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,qBAA4B,CAAC;AAE5D;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,gBAAgB,EACxB,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,GACvE,uBAAuB,GAAG;IAC3B,cAAc,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACvE,CA8JA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuadraRuntimeProvider.d.ts","sourceRoot":"","sources":["../../src/components/CuadraRuntimeProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAUzE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,IAAI,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC;IAGlC,SAAS,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAG1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,WAAmB,EACnB,IAAkB,EAClB,OAAO,EACP,aAAa,EAAE,cAAc,EAC7B,SAAiB,EACjB,YAAY,EACZ,eAAe,EACf,OAAO,EACP,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,aAAa,GACd,EAAE,0BAA0B,
|
|
1
|
+
{"version":3,"file":"CuadraRuntimeProvider.d.ts","sourceRoot":"","sources":["../../src/components/CuadraRuntimeProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAUzE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,IAAI,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC;IAGlC,SAAS,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAG1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,WAAmB,EACnB,IAAkB,EAClB,OAAO,EACP,aAAa,EAAE,cAAc,EAC7B,SAAiB,EACjB,YAAY,EACZ,eAAe,EACf,OAAO,EACP,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,aAAa,GACd,EAAE,0BAA0B,2CAwE5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleThread.d.ts","sourceRoot":"","sources":["../../src/components/SimpleThread.tsx"],"names":[],"mappings":"AAKA,OAAO,6CAA6C,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,2BAA2B;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,6BAA6B;QAC7B,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,YAA8C,EAC9C,eAAiF,EACjF,eAAe,EACf,WAAW,EACX,gBAAyC,GAC1C,GAAE,iBAAsB,
|
|
1
|
+
{"version":3,"file":"SimpleThread.d.ts","sourceRoot":"","sources":["../../src/components/SimpleThread.tsx"],"names":[],"mappings":"AAKA,OAAO,6CAA6C,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,2BAA2B;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,6BAA6B;QAC7B,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,YAA8C,EAC9C,eAAiF,EACjF,eAAe,EACf,WAAW,EACX,gBAAyC,GAC1C,GAAE,iBAAsB,2CA6KxB"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var It=Object.defineProperty;var St=(e,r,t)=>r in e?It(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var re=(e,r,t)=>St(e,typeof r!="symbol"?r+"":r,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),w=require("react"),Le=require("react-dom"),T=require("@assistant-ui/react"),ke=require("@assistant-ui/react-markdown");var fe=typeof document<"u"?document.currentScript:null;const Nt=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Mt=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(r,t,n)=>n?n.toUpperCase():t.toLowerCase()),Pe=e=>{const r=Mt(e);return r.charAt(0).toUpperCase()+r.slice(1)},Ve=(...e)=>e.filter((r,t,n)=>!!r&&r.trim()!==""&&n.indexOf(r)===t).join(" ").trim(),Lt=e=>{for(const r in e)if(r.startsWith("aria-")||r==="role"||r==="title")return!0};var Pt={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 Dt=w.forwardRef(({color:e="currentColor",size:r=24,strokeWidth:t=2,absoluteStrokeWidth:n,className:i="",children:o,iconNode:a,...l},s)=>w.createElement("svg",{ref:s,...Pt,width:r,height:r,stroke:e,strokeWidth:n?Number(t)*24/Number(r):t,className:Ve("lucide",i),...!o&&!Lt(l)&&{"aria-hidden":"true"},...l},[...a.map(([u,f])=>w.createElement(u,f)),...Array.isArray(o)?o:[o]]));const _=(e,r)=>{const t=w.forwardRef(({className:n,...i},o)=>w.createElement(Dt,{ref:o,iconNode:r,className:Ve(`lucide-${Nt(Pe(e))}`,`lucide-${e}`,n),...i}));return t.displayName=Pe(e),t};const Rt=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Ft=_("arrow-up",Rt);const Et=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],_t=_("check",Et);const zt=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],$t=_("chevron-down",zt);const Ot=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 18a6 6 0 0 0 0-12v12z",key:"j4l70d"}]],Ut=_("contrast",Ot);const Bt=[["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"}]],Wt=_("copy",Bt);const Ht=[["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"}]],qt=_("ellipsis-vertical",Ht);const Kt=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],Ge=_("loader-circle",Kt);const Vt=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],Gt=_("menu",Vt);const Zt=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Jt=_("plus",Zt);class Ze{constructor(r,t,n=!1){re(this,"baseUrl");re(this,"sessionToken",null);re(this,"isProxyMode",!1);this.baseUrl=r.replace(/\/$/,""),this.isProxyMode=n,t&&(this.sessionToken=t)}setSessionToken(r){this.sessionToken=r}getUrl(r){if(this.isProxyMode){const t=`${this.baseUrl}${r.replace("/v1","")}`;return t.startsWith("/")||t.startsWith("./"),t}return`${this.baseUrl}${r}`}async createOrContinueChat(r,t){const n=this.getUrl("/v1/chats"),o={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(o.Authorization=`Bearer ${this.sessionToken}`);const a={...r,stream:!0},l=await fetch(n,{method:"POST",headers:o,body:JSON.stringify(a),signal:t});if(!l.ok){const s=await l.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${l.status} ${l.statusText}`)}if(!l.body)throw new Error("Response body is null");return l.body}async getChat(r){const t=this.getUrl(`/v1/chats/${r}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const i=await fetch(t,{method:"GET",headers:n});if(!i.ok){const o=await i.json().catch(()=>({}));throw new Error(o.detail||o.message||`API error: ${i.status} ${i.statusText}`)}return i.json()}async listChats(r){const t=this.getUrl("/v1/chats"),n=t.startsWith("/")||t.startsWith("./")?new URL(t,window.location.origin):new URL(t);r?.limit&&n.searchParams.set("limit",r.limit.toString()),r?.cursor&&n.searchParams.set("cursor",r.cursor),r?.["expand[]"]&&r["expand[]"].forEach(a=>{n.searchParams.append("expand[]",a)});const i={"Content-Type":"application/json"};this.sessionToken&&(i.Authorization=`Bearer ${this.sessionToken}`);const o=await fetch(n.toString(),{method:"GET",headers:i});if(!o.ok){const a=await o.json().catch(()=>({}));throw new Error(a.detail||a.message||`API error: ${o.status} ${o.statusText}`)}return o.json()}generateIdempotencyKey(){try{if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID()}catch{}const r=n=>Array.from({length:n},()=>Math.floor(Math.random()*16).toString(16)).join(""),t=()=>{const n=["8","9","a","b"];return n[Math.floor(Math.random()*n.length)]};return`${r(8)}-${r(4)}-4${r(3)}-${t()}${r(3)}-${r(12)}`}async updateChat(r,t){const n=`/v1/chats/${r}`,i=this.getUrl(n),o=i.startsWith("/")||i.startsWith("./")?new URL(i,window.location.origin):new URL(i),l={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(l.Authorization=`Bearer ${this.sessionToken}`);const s=await fetch(o.toString(),{method:"PATCH",headers:l,body:JSON.stringify(t)});if(!s.ok){const f=await s.text();let c={};try{c=JSON.parse(f)}catch{c={detail:f}}throw new Error(c.detail||c.message||`API error: ${s.status} ${s.statusText}`)}if(s.status===204)return{};const u=await s.text();if(!u)return{};try{return JSON.parse(u)}catch{return{}}}async deleteChat(r){const t=`/v1/chats/${r}`,n=this.getUrl(t),i=n.startsWith("/")||n.startsWith("./")?new URL(n,window.location.origin):new URL(n),a={"Content-Type":"application/json","Idempotency-Key":this.generateIdempotencyKey()};this.sessionToken&&(a.Authorization=`Bearer ${this.sessionToken}`);const l=await fetch(i.toString(),{method:"DELETE",headers:a});if(!l.ok){const s=await l.json().catch(()=>({}));throw new Error(s.detail||s.message||`API error: ${l.status} ${l.statusText}`)}}async listModels(r){const t=this.getUrl("/v1/models"),n=t.startsWith("/")||t.startsWith("./")?new URL(t,window.location.origin):new URL(t);r?.limit&&n.searchParams.set("limit",r.limit.toString()),r?.cursor&&n.searchParams.set("cursor",r.cursor),r?.["expand[]"]&&r["expand[]"].forEach(a=>{n.searchParams.append("expand[]",a)});const i={"Content-Type":"application/json"};this.sessionToken&&(i.Authorization=`Bearer ${this.sessionToken}`);const o=await fetch(n.toString(),{method:"GET",headers:i});if(!o.ok){const a=await o.json().catch(()=>({}));throw new Error(a.detail||a.message||`API error: ${o.status} ${o.statusText}`)}return o.json()}async getModel(r){const t=this.getUrl(`/v1/models/${r}`),n={"Content-Type":"application/json"};this.sessionToken&&(n.Authorization=`Bearer ${this.sessionToken}`);const i=await fetch(t,{method:"GET",headers:n});if(!i.ok){const o=await i.json().catch(()=>({}));throw new Error(o.detail||o.message||`API error: ${i.status} ${i.statusText}`)}return i.json()}}async function*Qt(e,r){const t=e.getReader(),n=new TextDecoder;let i="";try{for(;;){if(r?.aborted){t.cancel();break}const{done:o,value:a}=await t.read();if(o)break;i+=n.decode(a,{stream:!0});const l=i.split(`
|
|
2
2
|
|
|
3
|
-
`);i=l.pop()||"";for(const s of l)if(s.startsWith("data: ")){const c=s.slice(6);if(c.trim()==="[DONE]"){yield{done:!0};continue}try{yield JSON.parse(c)}catch{}}}}finally{t.releaseLock()}}function Qt(e){return e.map(r=>{let t="";if(typeof r.content=="string")t=r.content;else if(Array.isArray(r.content)){const n=r.content.find(i=>i.type==="text");n&&typeof n=="object"&&"text"in n&&(t=n.text)}return{role:r.role,content:t}})}function Xt(e,r){const{modelId:t,systemPrompt:n,ephemeral:i,onChatCreated:o,onUserMessage:a}=r;return{async*run(l){const{messages:s,abortSignal:c}=l;a?.();const u={messages:Qt(s),chatId:null,systemPrompt:n,ephemeral:i,stream:!0};t&&t.trim()!==""&&(u.modelId=t);const p=await e.createOrContinueChat(u,c);let g="",h;for await(const b of Jt(p,c)){if(c?.aborted)throw new Error("Request aborted");const x=b.id;x&&!h&&(h=x,o?.(x));const k=b.delta;if(k!=null&&(g+=k),b.type==="message"||b.content){const C=b.content||"";g+=C}if(b.message&&(g+=b.message.content||""),b.tool_calls,b.finished){g&&(yield{content:[{type:"text",text:g}]});break}g&&(yield{content:[{type:"text",text:g}]})}g&&(yield{content:[{type:"text",text:g}]})}}}const De=new Map;function Yt(e,r){return{async list(){const t=[];let i,o=0;do{const l=await e.listChats({limit:50,cursor:i}),s=l.items||[];Array.isArray(s)&&s.length>0&&t.push(...s),i=l.nextCursor||void 0,o++}while(i&&o<50);return{threads:t.map(l=>{const s=l.id;return!s||l.deletedAt?null:{status:"regular",remoteId:s,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)}},async initialize(t){return{remoteId:De.get(t)||t,externalId:void 0}},async rename(t,n){await e.updateChat(t,{title:n})},async archive(t){},async unarchive(t){},async delete(t){await e.deleteChat(t)},async generateTitle(t,n){return new ReadableStream},async fetch(t){try{const n=await e.getChat(t);return{status:"regular",remoteId:n.id||t,title:n.title||"Chat",createdAt:n.createdAt?new Date(n.createdAt):new Date,updatedAt:n.updatedAt?new Date(n.updatedAt):new Date}}catch{return{status:"regular",remoteId:t,createdAt:new Date,updatedAt:new Date}}},updateRemoteId(t,n){De.set(t,n),r?.(t,n)}}}function er({children:e,baseUrl:r,sessionToken:t,isProxyMode:n=!1,mode:i="multiChat",modelId:o,onModelChange:a,ephemeral:l=!1,systemPrompt:s,initialThreadId:c,onError:f,onChatCreated:u,onUserMessage:p,onThreadIdUpdate:g,onChatsLoaded:h}){const b=w.useMemo(()=>new Ze(r,t||void 0,n),[r,t,n]),[x,k]=w.useState(o||null);w.useEffect(()=>{o&&k(o)},[o]);const y=w.useCallback(v=>{u?.(v)},[u]),C=w.useCallback((v,N)=>{g?.(v,N)},[g]),A=w.useMemo(()=>Xt(b,{modelId:x||void 0,systemPrompt:s,ephemeral:l,onChatCreated:y,onUserMessage:p}),[b,x,s,l,y,p]),j=T.useLocalRuntime(A);return i==="singleChat"?d.jsx(T.AssistantRuntimeProvider,{runtime:j,children:e}):d.jsx(tr,{client:b,modelAdapter:A,initialThreadId:c,onChatsLoaded:h,onThreadIdUpdate:C,onError:f,children:e})}function tr({client:e,modelAdapter:r,initialThreadId:t,onChatsLoaded:n,onThreadIdUpdate:i,onError:o,children:a}){const l=w.useMemo(()=>Yt(e,(u,p)=>{i?.(u,p)}),[e,i]),s=w.useMemo(()=>({...l,async list(){const u=await l.list();return n?.(),u}}),[l,n]);w.useEffect(()=>{window.__cuadraThreadListAdapter=s,window.__cuadraThreadListRuntime=null},[s]);const c=w.useCallback(()=>T.useLocalRuntime(r),[r]),f=T.unstable_useRemoteThreadListRuntime({adapter:s,runtimeHook:c});return w.useEffect(()=>{window.__cuadraThreadListRuntime=f},[f]),d.jsx(T.AssistantRuntimeProvider,{runtime:f,children:a})}function Ee(e,r){const t=String(e);if(typeof r!="string")throw new TypeError("Expected character");let n=0,i=t.indexOf(r);for(;i!==-1;)n++,i=t.indexOf(r,i+r.length);return n}const Q=le(/[A-Za-z]/),Ce=le(/[\dA-Za-z]/);function rr(e){return e!==null&&(e<32||e===127)}function K(e){return e!==null&&e<-2}function M(e){return e!==null&&(e<0||e===32)}function R(e){return e===-2||e===-1||e===32}const se=le(/\p{P}|\p{S}/u),U=le(/\s/);function le(e){return r;function r(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function nr(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const ue=(function(e){if(e==null)return sr;if(typeof e=="function")return ce(e);if(typeof e=="object")return Array.isArray(e)?ar(e):ir(e);if(typeof e=="string")return or(e);throw new Error("Expected function, string, or object as test")});function ar(e){const r=[];let t=-1;for(;++t<e.length;)r[t]=ue(e[t]);return ce(n);function n(...i){let o=-1;for(;++o<r.length;)if(r[o].apply(this,i))return!0;return!1}}function ir(e){const r=e;return ce(t);function t(n){const i=n;let o;for(o in e)if(i[o]!==r[o])return!1;return!0}}function or(e){return ce(r);function r(t){return t&&t.type===e}}function ce(e){return r;function r(t,n,i){return!!(lr(t)&&e.call(this,t,typeof n=="number"?n:void 0,i||void 0))}}function sr(){return!0}function lr(e){return e!==null&&typeof e=="object"&&"type"in e}const Je=[],ur=!0,we=!1,cr="skip";function Qe(e,r,t,n){let i;typeof r=="function"&&typeof t!="function"?(n=t,t=r):i=r;const o=ue(i),a=n?-1:1;l(e,void 0,[])();function l(s,c,f){const u=s&&typeof s=="object"?s:{};if(typeof u.type=="string"){const g=typeof u.tagName=="string"?u.tagName:typeof u.name=="string"?u.name:void 0;Object.defineProperty(p,"name",{value:"node ("+(s.type+(g?"<"+g+">":""))+")"})}return p;function p(){let g=Je,h,b,x;if((!r||o(s,c,f[f.length-1]||void 0))&&(g=dr(t(s,f)),g[0]===we))return g;if("children"in s&&s.children){const k=s;if(k.children&&g[0]!==cr)for(b=(n?k.children.length:-1)+a,x=f.concat(k);b>-1&&b<k.children.length;){const y=k.children[b];if(h=l(y,b,x)(),h[0]===we)return h;b=typeof h[1]=="number"?h[1]:b+a}}return g}}}function dr(e){return Array.isArray(e)?e:typeof e=="number"?[ur,e]:e==null?Je:[e]}function fr(e,r,t){const i=ue((t||{}).ignore||[]),o=hr(r);let a=-1;for(;++a<o.length;)Qe(e,"text",l);function l(c,f){let u=-1,p;for(;++u<f.length;){const g=f[u],h=p?p.children:void 0;if(i(g,h?h.indexOf(g):void 0,p))return;p=g}if(p)return s(c,f)}function s(c,f){const u=f[f.length-1],p=o[a][0],g=o[a][1];let h=0;const x=u.children.indexOf(c);let k=!1,y=[];p.lastIndex=0;let C=p.exec(c.value);for(;C;){const A=C.index,j={index:C.index,input:C.input,stack:[...f,c]};let v=g(...C,j);if(typeof v=="string"&&(v=v.length>0?{type:"text",value:v}:void 0),v===!1?p.lastIndex=A+1:(h!==A&&y.push({type:"text",value:c.value.slice(h,A)}),Array.isArray(v)?y.push(...v):v&&y.push(v),h=A+C[0].length,k=!0),!p.global)break;C=p.exec(c.value)}return k?(h<c.value.length&&y.push({type:"text",value:c.value.slice(h)}),u.children.splice(x,1,...y)):y=[c],x+y.length}}function hr(e){const r=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const t=!e[0]||Array.isArray(e[0])?e:[e];let n=-1;for(;++n<t.length;){const i=t[n];r.push([mr(i[0]),pr(i[1])])}return r}function mr(e){return typeof e=="string"?new RegExp(nr(e),"g"):e}function pr(e){return typeof e=="function"?e:function(){return e}}const he="phrasing",me=["autolink","link","image","label"];function gr(){return{transforms:[vr],enter:{literalAutolink:br,literalAutolinkEmail:pe,literalAutolinkHttp:pe,literalAutolinkWww:pe},exit:{literalAutolink:Cr,literalAutolinkEmail:yr,literalAutolinkHttp:kr,literalAutolinkWww:wr}}}function xr(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:he,notInConstruct:me},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:he,notInConstruct:me},{character:":",before:"[ps]",after:"\\/",inConstruct:he,notInConstruct:me}]}}function br(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function pe(e){this.config.enter.autolinkProtocol.call(this,e)}function kr(e){this.config.exit.autolinkProtocol.call(this,e)}function wr(e){this.config.exit.data.call(this,e);const r=this.stack[this.stack.length-1];r.type,r.url="http://"+this.sliceSerialize(e)}function yr(e){this.config.exit.autolinkEmail.call(this,e)}function Cr(e){this.exit(e)}function vr(e){fr(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,jr],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,Tr]],{ignore:["link","linkReference"]})}function jr(e,r,t,n,i){let o="";if(!Xe(i)||(/^w/i.test(r)&&(t=r+t,r="",o="http://"),!Ar(t)))return!1;const a=Sr(t+n);if(!a[0])return!1;const l={type:"link",title:null,url:o+r+a[0],children:[{type:"text",value:r+a[0]}]};return a[1]?[l,{type:"text",value:a[1]}]:l}function Tr(e,r,t,n){return!Xe(n,!0)||/[-\d_]$/.test(t)?!1:{type:"link",title:null,url:"mailto:"+r+"@"+t,children:[{type:"text",value:r+"@"+t}]}}function Ar(e){const r=e.split(".");return!(r.length<2||r[r.length-1]&&(/_/.test(r[r.length-1])||!/[a-zA-Z\d]/.test(r[r.length-1]))||r[r.length-2]&&(/_/.test(r[r.length-2])||!/[a-zA-Z\d]/.test(r[r.length-2])))}function Sr(e){const r=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let t=r[0],n=t.indexOf(")");const i=Ee(e,"(");let o=Ee(e,")");for(;n!==-1&&i>o;)e+=t.slice(0,n+1),t=t.slice(n+1),n=t.indexOf(")"),o++;return[e,t]}function Xe(e,r){const t=e.input.charCodeAt(e.index-1);return(e.index===0||U(t)||se(t))&&(!r||t!==47)}function Y(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}Ye.peek=_r;function Ir(){this.buffer()}function Nr(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function Mr(){this.buffer()}function Lr(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function Pr(e){const r=this.resume(),t=this.stack[this.stack.length-1];t.type,t.identifier=Y(this.sliceSerialize(e)).toLowerCase(),t.label=r}function Dr(e){this.exit(e)}function Er(e){const r=this.resume(),t=this.stack[this.stack.length-1];t.type,t.identifier=Y(this.sliceSerialize(e)).toLowerCase(),t.label=r}function Rr(e){this.exit(e)}function _r(){return"["}function Ye(e,r,t,n){const i=t.createTracker(n);let o=i.move("[^");const a=t.enter("footnoteReference"),l=t.enter("reference");return o+=i.move(t.safe(t.associationId(e),{after:"]",before:o})),l(),a(),o+=i.move("]"),o}function Fr(){return{enter:{gfmFootnoteCallString:Ir,gfmFootnoteCall:Nr,gfmFootnoteDefinitionLabelString:Mr,gfmFootnoteDefinition:Lr},exit:{gfmFootnoteCallString:Pr,gfmFootnoteCall:Dr,gfmFootnoteDefinitionLabelString:Er,gfmFootnoteDefinition:Rr}}}function zr(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:t,footnoteReference:Ye},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function t(n,i,o,a){const l=o.createTracker(a);let s=l.move("[^");const c=o.enter("footnoteDefinition"),f=o.enter("label");return s+=l.move(o.safe(o.associationId(n),{before:s,after:"]"})),f(),s+=l.move("]:"),n.children&&n.children.length>0&&(l.shift(4),s+=l.move((r?`
|
|
4
|
-
`:" ")+o.indentLines(o.containerFlow(n,l.current()),r?
|
|
5
|
-
`)}function
|
|
6
|
-
`&&
|
|
7
|
-
`}function
|
|
8
|
-
`,encode:["`"],...l.current()})),
|
|
3
|
+
`);i=l.pop()||"";for(const s of l)if(s.startsWith("data: ")){const u=s.slice(6);if(u.trim()==="[DONE]"){yield{done:!0};continue}try{yield JSON.parse(u)}catch{}}}}finally{t.releaseLock()}}function Xt(e){return e.map(r=>{let t="";if(typeof r.content=="string")t=r.content;else if(Array.isArray(r.content)){const n=r.content.find(i=>i.type==="text");n&&typeof n=="object"&&"text"in n&&(t=n.text)}return{role:r.role,content:t}})}function Yt(e){return{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:[]}}}function Je(e,r){const{modelId:t,systemPrompt:n,ephemeral:i,onChatCreated:o,onUserMessage:a,onThreadIdUpdate:l}=r;return{async*run(s){const{messages:u,abortSignal:f,context:c}=s,p=c?.threadId;a?.();const h={messages:Xt(u),chatId:null,systemPrompt:n,ephemeral:i,stream:!0};t&&t.trim()!==""&&(h.modelId=t);const b=await e.createOrContinueChat(h,f);let g="",k;for await(const y of Qt(b,f)){if(f?.aborted)throw new Error("Request aborted");const C=y.id;C&&!k&&(k=C,o?.(C),p&&l&&l(p,C));const A=y.delta;if(A!=null&&(g+=A),y.type==="message"||y.content){const v=y.content||"";g+=v}if(y.message&&(g+=y.message.content||""),y.tool_calls,y.finished){g&&(yield{content:[{type:"text",text:g}]});break}g&&(yield{content:[{type:"text",text:g}]})}g&&(yield{content:[{type:"text",text:g}]})}}}const De=new Map;function er(e,r){return{async list(){const t=[];let i,o=0;do{const l=await e.listChats({limit:50,cursor:i}),s=l.items||[];Array.isArray(s)&&s.length>0&&t.push(...s),i=l.nextCursor||void 0,o++}while(i&&o<50);return{threads:t.map(l=>{const s=l.id;return!s||l.deletedAt?null:{status:"regular",remoteId:s,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)}},async initialize(t){return{remoteId:De.get(t)||t,externalId:void 0}},async rename(t,n){await e.updateChat(t,{title:n})},async archive(t){},async unarchive(t){},async delete(t){await e.deleteChat(t)},async generateTitle(t,n){return new ReadableStream},async fetch(t){try{const n=await e.getChat(t);return{status:"regular",remoteId:n.id||t,title:n.title||"Chat",createdAt:n.createdAt?new Date(n.createdAt):new Date,updatedAt:n.updatedAt?new Date(n.updatedAt):new Date}}catch{return{status:"regular",remoteId:t,createdAt:new Date,updatedAt:new Date}}},updateRemoteId(t,n){De.set(t,n),r?.(t,n)},unstable_Provider:({children:t})=>{const i=T.useThreadListItem()?.remoteId,o=w.useMemo(()=>({async load(){if(!i)return{messages:[]};try{const l=await e.getChat(i);return!l.messages||l.messages.length===0?{messages:[]}:{messages:l.messages.map(u=>Yt(u))}}catch(l){return console.error("Failed to load messages for thread:",i,l),{messages:[]}}},async append(l){}}),[i,e]),a=w.useMemo(()=>({history:o}),[o]);return d.jsx(T.RuntimeAdapterProvider,{adapters:a,children:t})}}}function tr({children:e,baseUrl:r,sessionToken:t,isProxyMode:n=!1,mode:i="multiChat",modelId:o,onModelChange:a,ephemeral:l=!1,systemPrompt:s,initialThreadId:u,onError:f,onChatCreated:c,onUserMessage:p,onThreadIdUpdate:x,onChatsLoaded:h}){const b=w.useMemo(()=>new Ze(r,t||void 0,n),[r,t,n]),[g,k]=w.useState(o||null);w.useEffect(()=>{o&&k(o)},[o]);const y=w.useCallback(j=>{c?.(j)},[c]),C=w.useCallback((j,v)=>{x?.(j,v)},[x]),A=w.useMemo(()=>Je(b,{modelId:g||void 0,systemPrompt:s,ephemeral:l,onChatCreated:y,onUserMessage:p}),[b,g,s,l,y,p]);return i==="singleChat"?d.jsx(rr,{modelAdapter:A,children:e}):d.jsx(nr,{client:b,modelAdapterOptions:{modelId:g||void 0,systemPrompt:s,ephemeral:l,onChatCreated:y,onUserMessage:p},initialThreadId:u,onChatsLoaded:h,onThreadIdUpdate:C,onError:f,children:e})}function rr({modelAdapter:e,children:r}){const t=T.useLocalRuntime(e);return d.jsx(T.AssistantRuntimeProvider,{runtime:t,children:r})}function nr({client:e,modelAdapterOptions:r,initialThreadId:t,onChatsLoaded:n,onThreadIdUpdate:i,onError:o,children:a}){const l=w.useMemo(()=>er(e,(x,h)=>{i?.(x,h)}),[e,i]),s=w.useCallback((x,h)=>{l.updateRemoteId&&l.updateRemoteId(x,h),i?.(x,h)},[l,i]),u=w.useMemo(()=>({...l,async list(){const x=await l.list();return n?.(),x}}),[l,n]);w.useEffect(()=>{window.__cuadraThreadListAdapter=u,window.__cuadraThreadListRuntime=null},[u]);const f=w.useMemo(()=>Je(e,{...r,onThreadIdUpdate:s}),[e,r,s]),c=w.useCallback(()=>T.useLocalRuntime(f),[f]),p=T.unstable_useRemoteThreadListRuntime({adapter:u,runtimeHook:c});return w.useEffect(()=>{window.__cuadraThreadListRuntime=p},[p]),d.jsx(T.AssistantRuntimeProvider,{runtime:p,children:a})}function Re(e,r){const t=String(e);if(typeof r!="string")throw new TypeError("Expected character");let n=0,i=t.indexOf(r);for(;i!==-1;)n++,i=t.indexOf(r,i+r.length);return n}const Q=le(/[A-Za-z]/),Ce=le(/[\dA-Za-z]/);function ar(e){return e!==null&&(e<32||e===127)}function K(e){return e!==null&&e<-2}function N(e){return e!==null&&(e<0||e===32)}function F(e){return e===-2||e===-1||e===32}const se=le(/\p{P}|\p{S}/u),U=le(/\s/);function le(e){return r;function r(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function ir(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const ue=(function(e){if(e==null)return ur;if(typeof e=="function")return ce(e);if(typeof e=="object")return Array.isArray(e)?or(e):sr(e);if(typeof e=="string")return lr(e);throw new Error("Expected function, string, or object as test")});function or(e){const r=[];let t=-1;for(;++t<e.length;)r[t]=ue(e[t]);return ce(n);function n(...i){let o=-1;for(;++o<r.length;)if(r[o].apply(this,i))return!0;return!1}}function sr(e){const r=e;return ce(t);function t(n){const i=n;let o;for(o in e)if(i[o]!==r[o])return!1;return!0}}function lr(e){return ce(r);function r(t){return t&&t.type===e}}function ce(e){return r;function r(t,n,i){return!!(cr(t)&&e.call(this,t,typeof n=="number"?n:void 0,i||void 0))}}function ur(){return!0}function cr(e){return e!==null&&typeof e=="object"&&"type"in e}const Qe=[],dr=!0,we=!1,fr="skip";function Xe(e,r,t,n){let i;typeof r=="function"&&typeof t!="function"?(n=t,t=r):i=r;const o=ue(i),a=n?-1:1;l(e,void 0,[])();function l(s,u,f){const c=s&&typeof s=="object"?s:{};if(typeof c.type=="string"){const x=typeof c.tagName=="string"?c.tagName:typeof c.name=="string"?c.name:void 0;Object.defineProperty(p,"name",{value:"node ("+(s.type+(x?"<"+x+">":""))+")"})}return p;function p(){let x=Qe,h,b,g;if((!r||o(s,u,f[f.length-1]||void 0))&&(x=hr(t(s,f)),x[0]===we))return x;if("children"in s&&s.children){const k=s;if(k.children&&x[0]!==fr)for(b=(n?k.children.length:-1)+a,g=f.concat(k);b>-1&&b<k.children.length;){const y=k.children[b];if(h=l(y,b,g)(),h[0]===we)return h;b=typeof h[1]=="number"?h[1]:b+a}}return x}}}function hr(e){return Array.isArray(e)?e:typeof e=="number"?[dr,e]:e==null?Qe:[e]}function mr(e,r,t){const i=ue((t||{}).ignore||[]),o=pr(r);let a=-1;for(;++a<o.length;)Xe(e,"text",l);function l(u,f){let c=-1,p;for(;++c<f.length;){const x=f[c],h=p?p.children:void 0;if(i(x,h?h.indexOf(x):void 0,p))return;p=x}if(p)return s(u,f)}function s(u,f){const c=f[f.length-1],p=o[a][0],x=o[a][1];let h=0;const g=c.children.indexOf(u);let k=!1,y=[];p.lastIndex=0;let C=p.exec(u.value);for(;C;){const A=C.index,j={index:C.index,input:C.input,stack:[...f,u]};let v=x(...C,j);if(typeof v=="string"&&(v=v.length>0?{type:"text",value:v}:void 0),v===!1?p.lastIndex=A+1:(h!==A&&y.push({type:"text",value:u.value.slice(h,A)}),Array.isArray(v)?y.push(...v):v&&y.push(v),h=A+C[0].length,k=!0),!p.global)break;C=p.exec(u.value)}return k?(h<u.value.length&&y.push({type:"text",value:u.value.slice(h)}),c.children.splice(g,1,...y)):y=[u],g+y.length}}function pr(e){const r=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const t=!e[0]||Array.isArray(e[0])?e:[e];let n=-1;for(;++n<t.length;){const i=t[n];r.push([gr(i[0]),xr(i[1])])}return r}function gr(e){return typeof e=="string"?new RegExp(ir(e),"g"):e}function xr(e){return typeof e=="function"?e:function(){return e}}const he="phrasing",me=["autolink","link","image","label"];function br(){return{transforms:[Tr],enter:{literalAutolink:wr,literalAutolinkEmail:pe,literalAutolinkHttp:pe,literalAutolinkWww:pe},exit:{literalAutolink:jr,literalAutolinkEmail:vr,literalAutolinkHttp:yr,literalAutolinkWww:Cr}}}function kr(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:he,notInConstruct:me},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:he,notInConstruct:me},{character:":",before:"[ps]",after:"\\/",inConstruct:he,notInConstruct:me}]}}function wr(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function pe(e){this.config.enter.autolinkProtocol.call(this,e)}function yr(e){this.config.exit.autolinkProtocol.call(this,e)}function Cr(e){this.config.exit.data.call(this,e);const r=this.stack[this.stack.length-1];r.type,r.url="http://"+this.sliceSerialize(e)}function vr(e){this.config.exit.autolinkEmail.call(this,e)}function jr(e){this.exit(e)}function Tr(e){mr(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,Ar],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,Ir]],{ignore:["link","linkReference"]})}function Ar(e,r,t,n,i){let o="";if(!Ye(i)||(/^w/i.test(r)&&(t=r+t,r="",o="http://"),!Sr(t)))return!1;const a=Nr(t+n);if(!a[0])return!1;const l={type:"link",title:null,url:o+r+a[0],children:[{type:"text",value:r+a[0]}]};return a[1]?[l,{type:"text",value:a[1]}]:l}function Ir(e,r,t,n){return!Ye(n,!0)||/[-\d_]$/.test(t)?!1:{type:"link",title:null,url:"mailto:"+r+"@"+t,children:[{type:"text",value:r+"@"+t}]}}function Sr(e){const r=e.split(".");return!(r.length<2||r[r.length-1]&&(/_/.test(r[r.length-1])||!/[a-zA-Z\d]/.test(r[r.length-1]))||r[r.length-2]&&(/_/.test(r[r.length-2])||!/[a-zA-Z\d]/.test(r[r.length-2])))}function Nr(e){const r=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let t=r[0],n=t.indexOf(")");const i=Re(e,"(");let o=Re(e,")");for(;n!==-1&&i>o;)e+=t.slice(0,n+1),t=t.slice(n+1),n=t.indexOf(")"),o++;return[e,t]}function Ye(e,r){const t=e.input.charCodeAt(e.index-1);return(e.index===0||U(t)||se(t))&&(!r||t!==47)}function Y(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}et.peek=zr;function Mr(){this.buffer()}function Lr(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function Pr(){this.buffer()}function Dr(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function Rr(e){const r=this.resume(),t=this.stack[this.stack.length-1];t.type,t.identifier=Y(this.sliceSerialize(e)).toLowerCase(),t.label=r}function Fr(e){this.exit(e)}function Er(e){const r=this.resume(),t=this.stack[this.stack.length-1];t.type,t.identifier=Y(this.sliceSerialize(e)).toLowerCase(),t.label=r}function _r(e){this.exit(e)}function zr(){return"["}function et(e,r,t,n){const i=t.createTracker(n);let o=i.move("[^");const a=t.enter("footnoteReference"),l=t.enter("reference");return o+=i.move(t.safe(t.associationId(e),{after:"]",before:o})),l(),a(),o+=i.move("]"),o}function $r(){return{enter:{gfmFootnoteCallString:Mr,gfmFootnoteCall:Lr,gfmFootnoteDefinitionLabelString:Pr,gfmFootnoteDefinition:Dr},exit:{gfmFootnoteCallString:Rr,gfmFootnoteCall:Fr,gfmFootnoteDefinitionLabelString:Er,gfmFootnoteDefinition:_r}}}function Or(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:t,footnoteReference:et},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function t(n,i,o,a){const l=o.createTracker(a);let s=l.move("[^");const u=o.enter("footnoteDefinition"),f=o.enter("label");return s+=l.move(o.safe(o.associationId(n),{before:s,after:"]"})),f(),s+=l.move("]:"),n.children&&n.children.length>0&&(l.shift(4),s+=l.move((r?`
|
|
4
|
+
`:" ")+o.indentLines(o.containerFlow(n,l.current()),r?tt:Ur))),u(),s}}function Ur(e,r,t){return r===0?e:tt(e,r,t)}function tt(e,r,t){return(t?"":" ")+e}const Br=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];rt.peek=Vr;function Wr(){return{canContainEols:["delete"],enter:{strikethrough:qr},exit:{strikethrough:Kr}}}function Hr(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Br}],handlers:{delete:rt}}}function qr(e){this.enter({type:"delete",children:[]},e)}function Kr(e){this.exit(e)}function rt(e,r,t,n){const i=t.createTracker(n),o=t.enter("strikethrough");let a=i.move("~~");return a+=t.containerPhrasing(e,{...i.current(),before:a,after:"~"}),a+=i.move("~~"),o(),a}function Vr(){return"~"}function Gr(e){return e.length}function Zr(e,r){const t=r||{},n=(t.align||[]).concat(),i=t.stringLength||Gr,o=[],a=[],l=[],s=[];let u=0,f=-1;for(;++f<e.length;){const b=[],g=[];let k=-1;for(e[f].length>u&&(u=e[f].length);++k<e[f].length;){const y=Jr(e[f][k]);if(t.alignDelimiters!==!1){const C=i(y);g[k]=C,(s[k]===void 0||C>s[k])&&(s[k]=C)}b.push(y)}a[f]=b,l[f]=g}let c=-1;if(typeof n=="object"&&"length"in n)for(;++c<u;)o[c]=Fe(n[c]);else{const b=Fe(n);for(;++c<u;)o[c]=b}c=-1;const p=[],x=[];for(;++c<u;){const b=o[c];let g="",k="";b===99?(g=":",k=":"):b===108?g=":":b===114&&(k=":");let y=t.alignDelimiters===!1?1:Math.max(1,s[c]-g.length-k.length);const C=g+"-".repeat(y)+k;t.alignDelimiters!==!1&&(y=g.length+y+k.length,y>s[c]&&(s[c]=y),x[c]=y),p[c]=C}a.splice(1,0,p),l.splice(1,0,x),f=-1;const h=[];for(;++f<a.length;){const b=a[f],g=l[f];c=-1;const k=[];for(;++c<u;){const y=b[c]||"";let C="",A="";if(t.alignDelimiters!==!1){const j=s[c]-(g[c]||0),v=o[c];v===114?C=" ".repeat(j):v===99?j%2?(C=" ".repeat(j/2+.5),A=" ".repeat(j/2-.5)):(C=" ".repeat(j/2),A=C):A=" ".repeat(j)}t.delimiterStart!==!1&&!c&&k.push("|"),t.padding!==!1&&!(t.alignDelimiters===!1&&y==="")&&(t.delimiterStart!==!1||c)&&k.push(" "),t.alignDelimiters!==!1&&k.push(C),k.push(y),t.alignDelimiters!==!1&&k.push(A),t.padding!==!1&&k.push(" "),(t.delimiterEnd!==!1||c!==u-1)&&k.push("|")}h.push(t.delimiterEnd===!1?k.join("").replace(/ +$/,""):k.join(""))}return h.join(`
|
|
5
|
+
`)}function Jr(e){return e==null?"":String(e)}function Fe(e){const r=typeof e=="string"?e.codePointAt(0):0;return r===67||r===99?99:r===76||r===108?108:r===82||r===114?114:0}function Qr(e,r,t,n){const i=t.enter("blockquote"),o=t.createTracker(n);o.move("> "),o.shift(2);const a=t.indentLines(t.containerFlow(e,o.current()),Xr);return i(),a}function Xr(e,r,t){return">"+(t?"":" ")+e}function Yr(e,r){return Ee(e,r.inConstruct,!0)&&!Ee(e,r.notInConstruct,!1)}function Ee(e,r,t){if(typeof r=="string"&&(r=[r]),!r||r.length===0)return t;let n=-1;for(;++n<r.length;)if(e.includes(r[n]))return!0;return!1}function _e(e,r,t,n){let i=-1;for(;++i<t.unsafe.length;)if(t.unsafe[i].character===`
|
|
6
|
+
`&&Yr(t.stack,t.unsafe[i]))return/[ \t]/.test(n.before)?"":" ";return`\\
|
|
7
|
+
`}function en(e,r){const t=String(e);let n=t.indexOf(r),i=n,o=0,a=0;if(typeof r!="string")throw new TypeError("Expected substring");for(;n!==-1;)n===i?++o>a&&(a=o):o=1,i=n+r.length,n=t.indexOf(r,i);return a}function tn(e,r){return!!(r.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function rn(e){const r=e.options.fence||"`";if(r!=="`"&&r!=="~")throw new Error("Cannot serialize code with `"+r+"` for `options.fence`, expected `` ` `` or `~`");return r}function nn(e,r,t,n){const i=rn(t),o=e.value||"",a=i==="`"?"GraveAccent":"Tilde";if(tn(e,t)){const c=t.enter("codeIndented"),p=t.indentLines(o,an);return c(),p}const l=t.createTracker(n),s=i.repeat(Math.max(en(o,i)+1,3)),u=t.enter("codeFenced");let f=l.move(s);if(e.lang){const c=t.enter(`codeFencedLang${a}`);f+=l.move(t.safe(e.lang,{before:f,after:" ",encode:["`"],...l.current()})),c()}if(e.lang&&e.meta){const c=t.enter(`codeFencedMeta${a}`);f+=l.move(" "),f+=l.move(t.safe(e.meta,{before:f,after:`
|
|
8
|
+
`,encode:["`"],...l.current()})),c()}return f+=l.move(`
|
|
9
9
|
`),o&&(f+=l.move(o+`
|
|
10
|
-
`)),f+=l.move(s),
|
|
11
|
-
`,...s.current()}))),l(),e.title&&(l=t.enter(`title${o}`),
|
|
10
|
+
`)),f+=l.move(s),u(),f}function an(e,r,t){return(t?"":" ")+e}function ve(e){const r=e.options.quote||'"';if(r!=='"'&&r!=="'")throw new Error("Cannot serialize title with `"+r+"` for `options.quote`, expected `\"`, or `'`");return r}function on(e,r,t,n){const i=ve(t),o=i==='"'?"Quote":"Apostrophe",a=t.enter("definition");let l=t.enter("label");const s=t.createTracker(n);let u=s.move("[");return u+=s.move(t.safe(t.associationId(e),{before:u,after:"]",...s.current()})),u+=s.move("]: "),l(),!e.url||/[\0- \u007F]/.test(e.url)?(l=t.enter("destinationLiteral"),u+=s.move("<"),u+=s.move(t.safe(e.url,{before:u,after:">",...s.current()})),u+=s.move(">")):(l=t.enter("destinationRaw"),u+=s.move(t.safe(e.url,{before:u,after:e.title?" ":`
|
|
11
|
+
`,...s.current()}))),l(),e.title&&(l=t.enter(`title${o}`),u+=s.move(" "+i),u+=s.move(t.safe(e.title,{before:u,after:i,...s.current()})),u+=s.move(i),l()),a(),u}function sn(e){const r=e.options.emphasis||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize emphasis with `"+r+"` for `options.emphasis`, expected `*`, or `_`");return r}function X(e){return"&#x"+e.toString(16).toUpperCase()+";"}function ie(e){if(e===null||N(e)||U(e))return 1;if(se(e))return 2}function oe(e,r,t){const n=ie(e),i=ie(r);return n===void 0?i===void 0?t==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:n===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}nt.peek=ln;function nt(e,r,t,n){const i=sn(t),o=t.enter("emphasis"),a=t.createTracker(n),l=a.move(i);let s=a.move(t.containerPhrasing(e,{after:i,before:l,...a.current()}));const u=s.charCodeAt(0),f=oe(n.before.charCodeAt(n.before.length-1),u,i);f.inside&&(s=X(u)+s.slice(1));const c=s.charCodeAt(s.length-1),p=oe(n.after.charCodeAt(0),c,i);p.inside&&(s=s.slice(0,-1)+X(c));const x=a.move(i);return o(),t.attentionEncodeSurroundingInfo={after:p.outside,before:f.outside},l+s+x}function ln(e,r,t){return t.options.emphasis||"*"}function un(e,r,t,n){let i,o,a;typeof r=="function"&&typeof t!="function"?(o=void 0,a=r,i=t):(o=r,a=t,i=n),Xe(e,o,l,i);function l(s,u){const f=u[u.length-1],c=f?f.children.indexOf(s):void 0;return a(s,c,f)}}const cn={};function at(e,r){const t=cn,n=typeof t.includeImageAlt=="boolean"?t.includeImageAlt:!0,i=typeof t.includeHtml=="boolean"?t.includeHtml:!0;return it(e,n,i)}function it(e,r,t){if(dn(e)){if("value"in e)return e.type==="html"&&!t?"":e.value;if(r&&"alt"in e&&e.alt)return e.alt;if("children"in e)return ze(e.children,r,t)}return Array.isArray(e)?ze(e,r,t):""}function ze(e,r,t){const n=[];let i=-1;for(;++i<e.length;)n[i]=it(e[i],r,t);return n.join("")}function dn(e){return!!(e&&typeof e=="object")}function fn(e,r){let t=!1;return un(e,function(n){if("value"in n&&/\r?\n|\r/.test(n.value)||n.type==="break")return t=!0,we}),!!((!e.depth||e.depth<3)&&at(e)&&(r.options.setext||t))}function hn(e,r,t,n){const i=Math.max(Math.min(6,e.depth||1),1),o=t.createTracker(n);if(fn(e,t)){const f=t.enter("headingSetext"),c=t.enter("phrasing"),p=t.containerPhrasing(e,{...o.current(),before:`
|
|
12
12
|
`,after:`
|
|
13
|
-
`});return
|
|
13
|
+
`});return c(),f(),p+`
|
|
14
14
|
`+(i===1?"=":"-").repeat(p.length-(Math.max(p.lastIndexOf("\r"),p.lastIndexOf(`
|
|
15
|
-
`))+1))}const a="#".repeat(i),l=t.enter("headingAtx"),s=t.enter("phrasing");o.move(a+" ");let
|
|
16
|
-
`,...o.current()});return/^[\t ]/.test(
|
|
17
|
-
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:p,table:a,tableCell:s,tableRow:l}};function a(
|
|
18
|
-
`))}function s(g,h,b,x){const k=b.enter("tableCell"),y=b.enter("phrasing"),C=b.containerPhrasing(g,{...x,before:o,after:o});return y(),k(),C}function c(g,h){return Vr(g,{align:h,alignDelimiters:n,padding:t,stringLength:i})}function f(g,h,b){const x=g.children;let k=-1;const y=[],C=h.enter("table");for(;++k<x.length;)y[k]=u(x[k],h,b);return C(),y}function u(g,h,b){const x=g.children;let k=-1;const y=[],C=h.enter("tableRow");for(;++k<x.length;)y[k]=s(x[k],g,h,b);return C(),y}function p(g,h,b){let x=mt.inlineCode(g,h,b);return b.stack.includes("tableCell")&&(x=x.replace(/\|/g,"\\$&")),x}}function zn(){return{exit:{taskListCheckValueChecked:Oe,taskListCheckValueUnchecked:Oe,paragraph:On}}}function $n(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Un}}}function Oe(e){const r=this.stack[this.stack.length-2];r.type,r.checked=e.type==="taskListCheckValueChecked"}function On(e){const r=this.stack[this.stack.length-2];if(r&&r.type==="listItem"&&typeof r.checked=="boolean"){const t=this.stack[this.stack.length-1];t.type;const n=t.children[0];if(n&&n.type==="text"){const i=r.children;let o=-1,a;for(;++o<i.length;){const l=i[o];if(l.type==="paragraph"){a=l;break}}a===t&&(n.value=n.value.slice(1),n.value.length===0?t.children.shift():t.position&&n.position&&typeof n.position.start.offset=="number"&&(n.position.start.column++,n.position.start.offset++,t.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function Un(e,r,t,n){const i=e.children[0],o=typeof e.checked=="boolean"&&i&&i.type==="paragraph",a="["+(e.checked?"x":" ")+"] ",l=t.createTracker(n);o&&l.move(a);let s=mt.listItem(e,r,t,{...n,...l.current()});return o&&(s=s.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,c)),s;function c(f){return f+a}}function Bn(){return[gr(),Fr(),Ur(),Ln(),zn()]}function Wn(e){return{extensions:[xr(),zr(e),Br(),Fn(e),$n()]}}function ae(e,r,t,n){const i=e.length;let o=0,a;if(r<0?r=-r>i?0:i+r:r=r>i?i:r,t=t>0?t:0,n.length<1e4)a=Array.from(n),a.unshift(r,t),e.splice(...a);else for(t&&e.splice(r,t);o<n.length;)a=n.slice(o,o+1e4),a.unshift(r,0),e.splice(...a),o+=1e4,r+=1e4}const Ue={}.hasOwnProperty;function Hn(e){const r={};let t=-1;for(;++t<e.length;)qn(r,e[t]);return r}function qn(e,r){let t;for(t in r){const i=(Ue.call(e,t)?e[t]:void 0)||(e[t]={}),o=r[t];let a;if(o)for(a in o){Ue.call(i,a)||(i[a]=[]);const l=o[a];Kn(i[a],Array.isArray(l)?l:l?[l]:[])}}}function Kn(e,r){let t=-1;const n=[];for(;++t<r.length;)(r[t].add==="after"?e:n).push(r[t]);ae(e,0,0,n)}const Vn={tokenize:Yn,partial:!0},pt={tokenize:ea,partial:!0},gt={tokenize:ta,partial:!0},xt={tokenize:ra,partial:!0},Gn={tokenize:na,partial:!0},bt={name:"wwwAutolink",tokenize:Qn,previous:wt},kt={name:"protocolAutolink",tokenize:Xn,previous:yt},z={name:"emailAutolink",tokenize:Jn,previous:Ct},P={};function Zn(){return{text:P}}let O=48;for(;O<123;)P[O]=z,O++,O===58?O=65:O===91&&(O=97);P[43]=z;P[45]=z;P[46]=z;P[95]=z;P[72]=[z,kt];P[104]=[z,kt];P[87]=[z,bt];P[119]=[z,bt];function Jn(e,r,t){const n=this;let i,o;return a;function a(u){return!ye(u)||!Ct.call(n,n.previous)||Te(n.events)?t(u):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),l(u))}function l(u){return ye(u)?(e.consume(u),l):u===64?(e.consume(u),s):t(u)}function s(u){return u===46?e.check(Gn,f,c)(u):u===45||u===95||Ce(u)?(o=!0,e.consume(u),s):f(u)}function c(u){return e.consume(u),i=!0,s}function f(u){return o&&i&&Q(n.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),r(u)):t(u)}}function Qn(e,r,t){const n=this;return i;function i(a){return a!==87&&a!==119||!wt.call(n,n.previous)||Te(n.events)?t(a):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Vn,e.attempt(pt,e.attempt(gt,o),t),t)(a))}function o(a){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),r(a)}}function Xn(e,r,t){const n=this;let i="",o=!1;return a;function a(u){return(u===72||u===104)&&yt.call(n,n.previous)&&!Te(n.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(u),e.consume(u),l):t(u)}function l(u){if(Q(u)&&i.length<5)return i+=String.fromCodePoint(u),e.consume(u),l;if(u===58){const p=i.toLowerCase();if(p==="http"||p==="https")return e.consume(u),s}return t(u)}function s(u){return u===47?(e.consume(u),o?c:(o=!0,s)):t(u)}function c(u){return u===null||rr(u)||M(u)||U(u)||se(u)?t(u):e.attempt(pt,e.attempt(gt,f),t)(u)}function f(u){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),r(u)}}function Yn(e,r,t){let n=0;return i;function i(a){return(a===87||a===119)&&n<3?(n++,e.consume(a),i):a===46&&n===3?(e.consume(a),o):t(a)}function o(a){return a===null?t(a):r(a)}}function ea(e,r,t){let n,i,o;return a;function a(c){return c===46||c===95?e.check(xt,s,l)(c):c===null||M(c)||U(c)||c!==45&&se(c)?s(c):(o=!0,e.consume(c),a)}function l(c){return c===95?n=!0:(i=n,n=void 0),e.consume(c),a}function s(c){return i||n||!o?t(c):r(c)}}function ta(e,r){let t=0,n=0;return i;function i(a){return a===40?(t++,e.consume(a),i):a===41&&n<t?o(a):a===33||a===34||a===38||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===60||a===63||a===93||a===95||a===126?e.check(xt,r,o)(a):a===null||M(a)||U(a)?r(a):(e.consume(a),i)}function o(a){return a===41&&n++,e.consume(a),i}}function ra(e,r,t){return n;function n(l){return l===33||l===34||l===39||l===41||l===42||l===44||l===46||l===58||l===59||l===63||l===95||l===126?(e.consume(l),n):l===38?(e.consume(l),o):l===93?(e.consume(l),i):l===60||l===null||M(l)||U(l)?r(l):t(l)}function i(l){return l===null||l===40||l===91||M(l)||U(l)?r(l):n(l)}function o(l){return Q(l)?a(l):t(l)}function a(l){return l===59?(e.consume(l),n):Q(l)?(e.consume(l),a):t(l)}}function na(e,r,t){return n;function n(o){return e.consume(o),i}function i(o){return Ce(o)?t(o):r(o)}}function wt(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||M(e)}function yt(e){return!Q(e)}function Ct(e){return!(e===47||ye(e))}function ye(e){return e===43||e===45||e===46||e===95||Ce(e)}function Te(e){let r=e.length,t=!1;for(;r--;){const n=e[r][1];if((n.type==="labelLink"||n.type==="labelImage")&&!n._balanced){t=!0;break}if(n._gfmAutolinkLiteralWalkedInto){t=!1;break}}return e.length>0&&!t&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),t}function aa(e,r,t){const n=[];let i=-1;for(;++i<e.length;){const o=e[i].resolveAll;o&&!n.includes(o)&&(r=o(r,t),n.push(o))}return r}function _(e,r,t,n){const i=n?n-1:Number.POSITIVE_INFINITY;let o=0;return a;function a(s){return R(s)?(e.enter(t),l(s)):r(s)}function l(s){return R(s)&&o++<i?(e.consume(s),l):(e.exit(t),r(s))}}const ia={partial:!0,tokenize:oa};function oa(e,r,t){return n;function n(o){return R(o)?_(e,i,"linePrefix")(o):i(o)}function i(o){return o===null||K(o)?r(o):t(o)}}const sa={tokenize:pa,partial:!0};function la(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:fa,continuation:{tokenize:ha},exit:ma}},text:{91:{name:"gfmFootnoteCall",tokenize:da},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:ua,resolveTo:ca}}}}function ua(e,r,t){const n=this;let i=n.events.length;const o=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let a;for(;i--;){const s=n.events[i][1];if(s.type==="labelImage"){a=s;break}if(s.type==="gfmFootnoteCall"||s.type==="labelLink"||s.type==="label"||s.type==="image"||s.type==="link")break}return l;function l(s){if(!a||!a._balanced)return t(s);const c=Y(n.sliceSerialize({start:a.end,end:n.now()}));return c.codePointAt(0)!==94||!o.includes(c.slice(1))?t(s):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(s),e.exit("gfmFootnoteCallLabelMarker"),r(s))}}function ca(e,r){let t=e.length;for(;t--;)if(e[t][1].type==="labelImage"&&e[t][0]==="enter"){e[t][1];break}e[t+1][1].type="data",e[t+3][1].type="gfmFootnoteCallLabelMarker";const n={type:"gfmFootnoteCall",start:Object.assign({},e[t+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[t+3][1].end),end:Object.assign({},e[t+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const o={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},a={type:"chunkString",contentType:"string",start:Object.assign({},o.start),end:Object.assign({},o.end)},l=[e[t+1],e[t+2],["enter",n,r],e[t+3],e[t+4],["enter",i,r],["exit",i,r],["enter",o,r],["enter",a,r],["exit",a,r],["exit",o,r],e[e.length-2],e[e.length-1],["exit",n,r]];return e.splice(t,e.length-t+1,...l),e}function da(e,r,t){const n=this,i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let o=0,a;return l;function l(u){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(u),e.exit("gfmFootnoteCallLabelMarker"),s}function s(u){return u!==94?t(u):(e.enter("gfmFootnoteCallMarker"),e.consume(u),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",c)}function c(u){if(o>999||u===93&&!a||u===null||u===91||M(u))return t(u);if(u===93){e.exit("chunkString");const p=e.exit("gfmFootnoteCallString");return i.includes(Y(n.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(u),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):t(u)}return M(u)||(a=!0),o++,e.consume(u),u===92?f:c}function f(u){return u===91||u===92||u===93?(e.consume(u),o++,c):c(u)}}function fa(e,r,t){const n=this,i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let o,a=0,l;return s;function s(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),c}function c(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",f):t(h)}function f(h){if(a>999||h===93&&!l||h===null||h===91||M(h))return t(h);if(h===93){e.exit("chunkString");const b=e.exit("gfmFootnoteDefinitionLabelString");return o=Y(n.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return M(h)||(l=!0),a++,e.consume(h),h===92?u:f}function u(h){return h===91||h===92||h===93?(e.consume(h),a++,f):f(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),i.includes(o)||i.push(o),_(e,g,"gfmFootnoteDefinitionWhitespace")):t(h)}function g(h){return r(h)}}function ha(e,r,t){return e.check(ia,r,e.attempt(sa,r,t))}function ma(e){e.exit("gfmFootnoteDefinition")}function pa(e,r,t){const n=this;return _(e,i,"gfmFootnoteDefinitionIndent",5);function i(o){const a=n.events[n.events.length-1];return a&&a[1].type==="gfmFootnoteDefinitionIndent"&&a[2].sliceSerialize(a[1],!0).length===4?r(o):t(o)}}function ga(e){let t=(e||{}).singleTilde;const n={name:"strikethrough",tokenize:o,resolveAll:i};return t==null&&(t=!0),{text:{126:n},insideSpan:{null:[n]},attentionMarkers:{null:[126]}};function i(a,l){let s=-1;for(;++s<a.length;)if(a[s][0]==="enter"&&a[s][1].type==="strikethroughSequenceTemporary"&&a[s][1]._close){let c=s;for(;c--;)if(a[c][0]==="exit"&&a[c][1].type==="strikethroughSequenceTemporary"&&a[c][1]._open&&a[s][1].end.offset-a[s][1].start.offset===a[c][1].end.offset-a[c][1].start.offset){a[s][1].type="strikethroughSequence",a[c][1].type="strikethroughSequence";const f={type:"strikethrough",start:Object.assign({},a[c][1].start),end:Object.assign({},a[s][1].end)},u={type:"strikethroughText",start:Object.assign({},a[c][1].end),end:Object.assign({},a[s][1].start)},p=[["enter",f,l],["enter",a[c][1],l],["exit",a[c][1],l],["enter",u,l]],g=l.parser.constructs.insideSpan.null;g&&ae(p,p.length,0,aa(g,a.slice(c+1,s),l)),ae(p,p.length,0,[["exit",u,l],["enter",a[s][1],l],["exit",a[s][1],l],["exit",f,l]]),ae(a,c-1,s-c+3,p),s=c+p.length-2;break}}for(s=-1;++s<a.length;)a[s][1].type==="strikethroughSequenceTemporary"&&(a[s][1].type="data");return a}function o(a,l,s){const c=this.previous,f=this.events;let u=0;return p;function p(h){return c===126&&f[f.length-1][1].type!=="characterEscape"?s(h):(a.enter("strikethroughSequenceTemporary"),g(h))}function g(h){const b=ie(c);if(h===126)return u>1?s(h):(a.consume(h),u++,g);if(u<2&&!t)return s(h);const x=a.exit("strikethroughSequenceTemporary"),k=ie(h);return x._open=!k||k===2&&!!b,x._close=!b||b===2&&!!k,l(h)}}}class xa{constructor(){this.map=[]}add(r,t,n){ba(this,r,t,n)}consume(r){if(this.map.sort(function(o,a){return o[0]-a[0]}),this.map.length===0)return;let t=this.map.length;const n=[];for(;t>0;)t-=1,n.push(r.slice(this.map[t][0]+this.map[t][1]),this.map[t][2]),r.length=this.map[t][0];n.push(r.slice()),r.length=0;let i=n.pop();for(;i;){for(const o of i)r.push(o);i=n.pop()}this.map.length=0}}function ba(e,r,t,n){let i=0;if(!(t===0&&n.length===0)){for(;i<e.map.length;){if(e.map[i][0]===r){e.map[i][1]+=t,e.map[i][2].push(...n);return}i+=1}e.map.push([r,t,n])}}function ka(e,r){let t=!1;const n=[];for(;r<e.length;){const i=e[r];if(t){if(i[0]==="enter")i[1].type==="tableContent"&&n.push(e[r+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[r-1][1].type==="tableDelimiterMarker"){const o=n.length-1;n[o]=n[o]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(t=!0);r+=1}return n}function wa(){return{flow:{null:{name:"table",tokenize:ya,resolveAll:Ca}}}}function ya(e,r,t){const n=this;let i=0,o=0,a;return l;function l(m){let L=n.events.length-1;for(;L>-1;){const V=n.events[L][1].type;if(V==="lineEnding"||V==="linePrefix")L--;else break}const ee=L>-1?n.events[L][1].type:null,$=ee==="tableHead"||ee==="tableRow"?v:s;return $===v&&n.parser.lazy[n.now().line]?t(m):$(m)}function s(m){return e.enter("tableHead"),e.enter("tableRow"),c(m)}function c(m){return m===124||(a=!0,o+=1),f(m)}function f(m){return m===null?t(m):K(m)?o>1?(o=0,n.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),g):t(m):R(m)?_(e,f,"whitespace")(m):(o+=1,a&&(a=!1,i+=1),m===124?(e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),a=!0,f):(e.enter("data"),u(m)))}function u(m){return m===null||m===124||M(m)?(e.exit("data"),f(m)):(e.consume(m),m===92?p:u)}function p(m){return m===92||m===124?(e.consume(m),u):u(m)}function g(m){return n.interrupt=!1,n.parser.lazy[n.now().line]?t(m):(e.enter("tableDelimiterRow"),a=!1,R(m)?_(e,h,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(m):h(m))}function h(m){return m===45||m===58?x(m):m===124?(a=!0,e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),b):j(m)}function b(m){return R(m)?_(e,x,"whitespace")(m):x(m)}function x(m){return m===58?(o+=1,a=!0,e.enter("tableDelimiterMarker"),e.consume(m),e.exit("tableDelimiterMarker"),k):m===45?(o+=1,k(m)):m===null||K(m)?A(m):j(m)}function k(m){return m===45?(e.enter("tableDelimiterFiller"),y(m)):j(m)}function y(m){return m===45?(e.consume(m),y):m===58?(a=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(m),e.exit("tableDelimiterMarker"),C):(e.exit("tableDelimiterFiller"),C(m))}function C(m){return R(m)?_(e,A,"whitespace")(m):A(m)}function A(m){return m===124?h(m):m===null||K(m)?!a||i!==o?j(m):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(m)):j(m)}function j(m){return t(m)}function v(m){return e.enter("tableRow"),N(m)}function N(m){return m===124?(e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),N):m===null||K(m)?(e.exit("tableRow"),r(m)):R(m)?_(e,N,"whitespace")(m):(e.enter("data"),D(m))}function D(m){return m===null||m===124||M(m)?(e.exit("data"),N(m)):(e.consume(m),m===92?B:D)}function B(m){return m===92||m===124?(e.consume(m),D):D(m)}}function Ca(e,r){let t=-1,n=!0,i=0,o=[0,0,0,0],a=[0,0,0,0],l=!1,s=0,c,f,u;const p=new xa;for(;++t<e.length;){const g=e[t],h=g[1];g[0]==="enter"?h.type==="tableHead"?(l=!1,s!==0&&(Be(p,r,s,c,f),f=void 0,s=0),c={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(t,0,[["enter",c,r]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(n=!0,u=void 0,o=[0,0,0,0],a=[0,t+1,0,0],l&&(l=!1,f={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(t,0,[["enter",f,r]])),i=h.type==="tableDelimiterRow"?2:f?3:1):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(n=!1,a[2]===0&&(o[1]!==0&&(a[0]=a[1],u=ne(p,r,o,i,void 0,u),o=[0,0,0,0]),a[2]=t)):h.type==="tableCellDivider"&&(n?n=!1:(o[1]!==0&&(a[0]=a[1],u=ne(p,r,o,i,void 0,u)),o=a,a=[o[1],t,0,0])):h.type==="tableHead"?(l=!0,s=t):h.type==="tableRow"||h.type==="tableDelimiterRow"?(s=t,o[1]!==0?(a[0]=a[1],u=ne(p,r,o,i,t,u)):a[1]!==0&&(u=ne(p,r,a,i,t,u)),i=0):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(a[3]=t)}for(s!==0&&Be(p,r,s,c,f),p.consume(r.events),t=-1;++t<r.events.length;){const g=r.events[t];g[0]==="enter"&&g[1].type==="table"&&(g[1]._align=ka(r.events,t))}return e}function ne(e,r,t,n,i,o){const a=n===1?"tableHeader":n===2?"tableDelimiter":"tableData",l="tableContent";t[0]!==0&&(o.end=Object.assign({},q(r.events,t[0])),e.add(t[0],0,[["exit",o,r]]));const s=q(r.events,t[1]);if(o={type:a,start:Object.assign({},s),end:Object.assign({},s)},e.add(t[1],0,[["enter",o,r]]),t[2]!==0){const c=q(r.events,t[2]),f=q(r.events,t[3]),u={type:l,start:Object.assign({},c),end:Object.assign({},f)};if(e.add(t[2],0,[["enter",u,r]]),n!==2){const p=r.events[t[2]],g=r.events[t[3]];if(p[1].end=Object.assign({},g[1].end),p[1].type="chunkText",p[1].contentType="text",t[3]>t[2]+1){const h=t[2]+1,b=t[3]-t[2]-1;e.add(h,b,[])}}e.add(t[3]+1,0,[["exit",u,r]])}return i!==void 0&&(o.end=Object.assign({},q(r.events,i)),e.add(i,0,[["exit",o,r]]),o=void 0),o}function Be(e,r,t,n,i){const o=[],a=q(r.events,t);i&&(i.end=Object.assign({},a),o.push(["exit",i,r])),n.end=Object.assign({},a),o.push(["exit",n,r]),e.add(t+1,0,o)}function q(e,r){const t=e[r],n=t[0]==="enter"?"start":"end";return t[1][n]}const va={name:"tasklistCheck",tokenize:Ta};function ja(){return{text:{91:va}}}function Ta(e,r,t){const n=this;return i;function i(s){return n.previous!==null||!n._gfmTasklistFirstContentOfListItem?t(s):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(s),e.exit("taskListCheckMarker"),o)}function o(s){return M(s)?(e.enter("taskListCheckValueUnchecked"),e.consume(s),e.exit("taskListCheckValueUnchecked"),a):s===88||s===120?(e.enter("taskListCheckValueChecked"),e.consume(s),e.exit("taskListCheckValueChecked"),a):t(s)}function a(s){return s===93?(e.enter("taskListCheckMarker"),e.consume(s),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),l):t(s)}function l(s){return K(s)?r(s):R(s)?e.check({tokenize:Aa},r,t)(s):t(s)}}function Aa(e,r,t){return _(e,n,"whitespace");function n(i){return i===null?t(i):r(i)}}function Sa(e){return Hn([Zn(),la(),ga(e),wa(),ja()])}const Ia={};function Na(e){const r=this,t=e||Ia,n=r.data(),i=n.micromarkExtensions||(n.micromarkExtensions=[]),o=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),a=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);i.push(Sa(t)),o.push(Bn()),a.push(Wn(t))}function S(...e){return e.filter(Boolean).join(" ")}const Ma=({content:e})=>d.jsx(ke.MarkdownTextPrimitive,{remarkPlugins:[Na],className:"cuadra-aui-md",components:Da,children:e}),vt=w.memo(Ma),La=({language:e,code:r})=>{const{isCopied:t,copyToClipboard:n}=Pa(),i=()=>{!r||t||n(r)};return d.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:[d.jsx("span",{className:"cuadra-lowercase [&>span]:cuadra-text-xs cuadra-font-brand",children:e}),d.jsxs("button",{onClick:i,className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-muted cuadra-transition-colors","aria-label":"Copy code",children:[!t&&d.jsx(Bt,{className:"cuadra-h-4 cuadra-w-4"}),t&&d.jsx(_t,{className:"cuadra-h-4 cuadra-w-4"})]})]})},Pa=({copiedDuration:e=3e3}={})=>{const[r,t]=w.useState(!1);return{isCopied:r,copyToClipboard:i=>{i&&navigator.clipboard.writeText(i).then(()=>{t(!0),setTimeout(()=>t(!1),e)})}}},Da=ke.unstable_memoizeMarkdownComponents({h1:({className:e,...r})=>d.jsx("h1",{className:S("cuadra-mb-6 cuadra-scroll-m-20 cuadra-text-2xl cuadra-font-normal cuadra-tracking-tight last:cuadra-mb-0 font-brand",e),...r}),h2:({className:e,...r})=>d.jsx("h2",{className:S("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),...r}),h3:({className:e,...r})=>d.jsx("h3",{className:S("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),...r}),h4:({className:e,...r})=>d.jsx("h4",{className:S("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),...r}),h5:({className:e,...r})=>d.jsx("h5",{className:S("cuadra-my-4 cuadra-text-lg cuadra-font-normal first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e),...r}),h6:({className:e,...r})=>d.jsx("h6",{className:S("cuadra-my-4 cuadra-font-normal first:cuadra-mb-0 font-brand",e),...r}),p:({className:e,...r})=>d.jsx("p",{className:S("cuadra-mb-5 cuadra-mt-5 cuadra-leading-7 first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e),...r}),a:({className:e,...r})=>d.jsx("a",{className:S("cuadra-text-primary cuadra-font-medium cuadra-underline cuadra-underline-offset-4 font-brand",e),...r}),blockquote:({className:e,...r})=>d.jsx("blockquote",{className:S("cuadra-border-l-2 cuadra-pl-6 cuadra-italic font-brand",e),...r}),ul:({className:e,...r})=>d.jsx("ul",{className:S("cuadra-my-5 cuadra-ml-6 cuadra-list-disc [&>li]:cuadra-mt-2 font-brand",e),...r}),ol:({className:e,...r})=>d.jsx("ol",{className:S("cuadra-my-5 cuadra-ml-6 cuadra-list-decimal [&>li]:cuadra-mt-2 font-brand",e),...r}),hr:({className:e,...r})=>d.jsx("hr",{className:S("cuadra-my-5 cuadra-border-b",e),...r}),table:({className:e,...r})=>d.jsx("table",{className:S("cuadra-my-5 cuadra-w-full cuadra-border-separate cuadra-border-spacing-0 cuadra-overflow-y-auto font-brand",e),...r}),th:({className:e,...r})=>d.jsx("th",{className:S("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),...r}),td:({className:e,...r})=>d.jsx("td",{className:S("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),...r}),tr:({className:e,...r})=>d.jsx("tr",{className:S("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),...r}),sup:({className:e,...r})=>d.jsx("sup",{className:S("[&>a]:cuadra-text-xs [&>a]:cuadra-no-underline font-brand",e),...r}),pre:({className:e,...r})=>d.jsx("pre",{className:S("cuadra-overflow-x-auto cuadra-rounded-b-lg !cuadra-rounded-t-none cuadra-bg-muted cuadra-p-4 cuadra-text-foreground font-brand",e),...r}),code:function({className:r,...t}){const n=ke.useIsMarkdownCodeBlock();return d.jsx("code",{className:S(!n&&"cuadra-bg-muted cuadra-rounded cuadra-border cuadra-font-normal font-brand",r),...t})},CodeHeader:La}),We=["Sending question…","Understanding your need…","Scanning data…","Comparing results…","Composing answer…"];function Ea({active:e}){const[r,t]=w.useState(0);return w.useEffect(()=>{if(!e){t(0);return}const n=window.setInterval(()=>{t(i=>i>=We.length-1?(window.clearInterval(n),i):i+1)},2500);return()=>window.clearInterval(n)},[e]),e?d.jsxs("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-font-brand",children:["Thinking… ",We[r]]}):null}function He({welcomeTitle:e="Hi, how can I help you today?",welcomeSubtitle:r="Start exploring our platform and discover what you can build.",extraTopPadding:t,suggestions:n,inputPlaceholder:i="Type your message..."}={}){const o=T.useThreadRuntime(),[a,l]=w.useState(!1),[s,c]=w.useState(null),[f,u]=w.useState(!1);return w.useEffect(()=>{if(!o){l(!1);return}try{const p=o?.store;if(!p){l(!1);return}const g=p.subscribe?.(b=>{const x=b?.threadId,k=b?.messages||[],y=b?.isLoadingHistory||!1,C=k.length;x&&x!==s&&c(x),l(y&&C===0);const j=k.some(v=>v.role==="assistant"&&!!v.content&&(Array.isArray(v.content)?v.content.some(N=>typeof N=="object"&&N?.text?N.text.trim().length>0:!1):typeof v.content=="string"?v.content.trim().length>0:!1));u(j)}),h=p.getState?.();if(h){const b=h?.threadId,x=h?.messages||[],k=h?.isLoadingHistory||!1,y=x.length;b&&b!==s&&c(b),l(k&&y===0);const A=x.some(j=>j.role==="assistant"&&!!j.content&&(Array.isArray(j.content)?j.content.some(v=>typeof v=="object"&&v?.text?v.text.trim().length>0:!1):typeof j.content=="string"?j.content.trim().length>0:!1));u(A)}return()=>{g&&g()}}catch{l(!1)}},[o,s]),d.jsxs(T.ThreadPrimitive.Root,{className:"cuadra-bg-inherit cuadra-flex cuadra-flex-col cuadra-w-full cuadra-h-full",children:[d.jsx(T.ThreadPrimitive.Viewport,{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:t?{paddingTop:t}:void 0,children:a?d.jsx("div",{className:"cuadra-absolute cuadra-inset-0 cuadra-flex cuadra-items-center cuadra-justify-center",children:d.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:[d.jsx(Ge,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"}),d.jsx("p",{className:"cuadra-text-sm cuadra-text-muted-foreground font-brand",children:"Loading messages..."})]})}):d.jsxs(d.Fragment,{children:[d.jsx(T.ThreadPrimitive.Empty,{children:d.jsx(Ra,{title:e,subtitle:r,suggestions:n})}),d.jsx(T.ThreadPrimitive.Messages,{components:{UserMessage:_a,AssistantMessage:Fa}}),d.jsx(T.ThreadPrimitive.If,{running:!0,children:!f&&d.jsx("div",{className:"cuadra-mt-2 cuadra-max-w-2xl",children:d.jsx(Ea,{active:!0})})})]})}),d.jsx("div",{className:"cuadra-w-full cuadra-mt-3 cuadra-border-t cuadra-border-border cuadra-pt-4",children:d.jsxs(T.ComposerPrimitive.Root,{className:"cuadra-relative !cuadra-relative cuadra-flex-1 cuadra-w-full",children:[d.jsx(T.ComposerPrimitive.Input,{asChild:!0,children:d.jsx("textarea",{rows:3,placeholder:i,className:"cuadra-flex cuadra-min-h-[80px] cuadra-w-full cuadra-rounded-md cuadra-border cuadra-border-input cuadra-bg-background cuadra-px-3 cuadra-py-2 cuadra-text-base placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-resize-none cuadra-pr-10 font-brand",style:{paddingRight:"2.5rem",fontSize:"1rem"}})}),d.jsx(T.ComposerPrimitive.Send,{asChild:!0,children:d.jsx("button",{className:"!cuadra-absolute !cuadra-bottom-2 !cuadra-right-2 cuadra-size-8 cuadra-bg-secondary cuadra-text-secondary-foreground cuadra-rounded-md cuadra-shadow-sm hover:cuadra-bg-secondary/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"},"aria-label":"Send message",type:"button",children:d.jsx(Et,{className:"cuadra-h-4 cuadra-w-4"})})})]})})]})}function Ra({title:e,subtitle:r,suggestions:t}){const n=T.useAssistantApi(),i=async o=>{try{n.composer().setText(o),await new Promise(a=>setTimeout(a,10)),n.composer().send()}catch{}};return d.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:d.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:[d.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-mb-8",children:[d.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground cuadra-mb-2 font-brand",children:e}),d.jsx("p",{className:"cuadra-text-muted-foreground font-brand",children:r})]}),t&&t.length>0&&d.jsx("div",{className:"cuadra-grid cuadra-grid-cols-2 cuadra-gap-2 cuadra-pb-4 cuadra-w-full cuadra-max-w-2xl",children:t.map((o,a)=>d.jsx("button",{type:"button",onClick:()=>i(o.prompt),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 font-brand cuadra-cursor-pointer focus:cuadra-outline-none focus:cuadra-ring-0",style:{borderWidth:"1px"},children:o.prompt},`suggestion-${a}`))})]})})}function _a(){return d.jsx(T.MessagePrimitive.Root,{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:d.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-px-5 cuadra-py-2.5 font-brand",style:{maxWidth:"calc(42rem * 0.8)",borderRadius:"1.5rem",backgroundColor:"hsl(var(--muted))",color:"hsl(var(--foreground))",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",wordBreak:"break-word"},children:d.jsx(T.MessagePrimitive.Parts,{components:{Text:({text:e})=>d.jsx(vt,{content:e||""})}})})})}function Fa(){return d.jsx(T.MessagePrimitive.Root,{className:"cuadra-relative cuadra-grid cuadra-w-full cuadra-grid-cols-[auto_auto_1fr] cuadra-grid-rows-[auto_1fr] cuadra-py-3",children:d.jsx("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:d.jsx(T.MessagePrimitive.Parts,{components:{Text:({text:e})=>d.jsx(vt,{content:e||""})}})})})}function za({onThreadSelect:e}){const r=T.useThreadListItem(),t=T.useThread(x=>x.threadId),[n,i]=w.useState(null),o=r?.id===t,a=n===r?.id,[l,s]=w.useState(!1),[c,f]=w.useState(r?.title||""),[u,p]=w.useState(!1),[g,h]=w.useState(!1),b=async()=>{if(!r?.remoteId||!c||c===r.title){s(!1);return}try{h(!0);const x=window.__cuadraThreadListAdapter;x&&typeof x.rename=="function"&&await x.rename(r.remoteId,c),s(!1),p(!1)}catch{s(!1),p(!1)}finally{h(!1)}};return w.useEffect(()=>{r?.title&&!l&&f(r.title)},[r?.title,l]),r?d.jsx(T.ThreadListItemPrimitive.Root,{className:`group cuadra-relative cuadra-flex cuadra-items-center cuadra-gap-3 cuadra-rounded-lg cuadra-transition-colors cuadra-cursor-pointer cuadra-border cuadra-mb-2 ${o?"cuadra-bg-muted cuadra-border-border":"cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border"}`,style:{marginBottom:"0.5rem"},onMouseEnter:()=>i(r.id),onMouseLeave:()=>i(null),children:d.jsxs(T.ThreadListItemPrimitive.Trigger,{className:"cuadra-p-3 cuadra-flex-1 cuadra-flex cuadra-items-center cuadra-justify-between cuadra-w-full cuadra-min-w-0 cuadra-cursor-pointer",onClick:()=>e?.(),children:[d.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-min-w-0 cuadra-flex-1 cuadra-items-start cuadra-text-left",children:l?d.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:c,onChange:x=>f(x.target.value),onKeyDown:x=>{x.key==="Enter"&&b(),x.key==="Escape"&&(s(!1),f(r.title||""))},disabled:g,autoFocus:!0,onClick:x=>x.stopPropagation()}):d.jsxs(d.Fragment,{children:[d.jsx("span",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-truncate font-brand",children:(r.title?.length||0)>60?`${r.title?.slice(0,60)}…`:r.title||"Chat"}),r.updatedAt&&d.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-mt-1 font-brand",children:new Date(r.updatedAt).toLocaleDateString()})]})}),d.jsx("div",{className:"cuadra-ml-2 cuadra-flex-shrink-0 cuadra-w-6 cuadra-h-6 cuadra-flex cuadra-items-center cuadra-justify-center",children:(a||o||u)&&d.jsxs("div",{className:"cuadra-relative",children:[d.jsx("button",{className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-background/50 cuadra-transition-colors",onClick:x=>{x.stopPropagation(),p(!u)},"aria-label":"Thread options",children:d.jsx(Ht,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"})}),u&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-40",onClick:()=>p(!1)}),d.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:l?d.jsx("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:x=>{x.stopPropagation(),b()},disabled:g,children:"Save"}):d.jsxs(d.Fragment,{children:[d.jsx("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:x=>{x.stopPropagation(),s(!0),f(r.title||""),p(!1)},children:"Rename"}),d.jsx("div",{className:"cuadra-border-t cuadra-border-border"}),d.jsx(T.ThreadListItemPrimitive.Delete,{asChild:!0,children:d.jsx("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:x=>{x.stopPropagation(),p(!1)},children:"Delete"})})]})})]})]})})]})}):null}function qe({onThreadSelect:e}){return d.jsxs(T.ThreadListPrimitive.Root,{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:[d.jsx("div",{className:"cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-between cuadra-transition-all cuadra-duration-300 cuadra-h-16 cuadra-px-4",children:d.jsx("h3",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-text-nowrap font-brand",children:"Chat History"})}),d.jsxs("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-2 scrollbar-thin",children:[d.jsx(T.ThreadListPrimitive.New,{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?.(),children:d.jsx("div",{className:"cuadra-flex-1 cuadra-min-w-0",children:d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[d.jsx(Zt,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),d.jsx("h4",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground font-brand",children:"New Chat"})]})})}),d.jsx("div",{className:"cuadra-my-2 cuadra-border-t cuadra-border-border"}),d.jsx(T.ThreadListPrimitive.Items,{components:{ThreadListItem:r=>d.jsx(za,{...r,onThreadSelect:e})}})]})]})}const $a=`
|
|
15
|
+
`))+1))}const a="#".repeat(i),l=t.enter("headingAtx"),s=t.enter("phrasing");o.move(a+" ");let u=t.containerPhrasing(e,{before:"# ",after:`
|
|
16
|
+
`,...o.current()});return/^[\t ]/.test(u)&&(u=X(u.charCodeAt(0))+u.slice(1)),u=u?a+" "+u:a,t.options.closeAtx&&(u+=" "+a),s(),l(),u}ot.peek=mn;function ot(e){return e.value||""}function mn(){return"<"}st.peek=pn;function st(e,r,t,n){const i=ve(t),o=i==='"'?"Quote":"Apostrophe",a=t.enter("image");let l=t.enter("label");const s=t.createTracker(n);let u=s.move("![");return u+=s.move(t.safe(e.alt,{before:u,after:"]",...s.current()})),u+=s.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=t.enter("destinationLiteral"),u+=s.move("<"),u+=s.move(t.safe(e.url,{before:u,after:">",...s.current()})),u+=s.move(">")):(l=t.enter("destinationRaw"),u+=s.move(t.safe(e.url,{before:u,after:e.title?" ":")",...s.current()}))),l(),e.title&&(l=t.enter(`title${o}`),u+=s.move(" "+i),u+=s.move(t.safe(e.title,{before:u,after:i,...s.current()})),u+=s.move(i),l()),u+=s.move(")"),a(),u}function pn(){return"!"}lt.peek=gn;function lt(e,r,t,n){const i=e.referenceType,o=t.enter("imageReference");let a=t.enter("label");const l=t.createTracker(n);let s=l.move("![");const u=t.safe(e.alt,{before:s,after:"]",...l.current()});s+=l.move(u+"]["),a();const f=t.stack;t.stack=[],a=t.enter("reference");const c=t.safe(t.associationId(e),{before:s,after:"]",...l.current()});return a(),t.stack=f,o(),i==="full"||!u||u!==c?s+=l.move(c+"]"):i==="shortcut"?s=s.slice(0,-1):s+=l.move("]"),s}function gn(){return"!"}ut.peek=xn;function ut(e,r,t){let n=e.value||"",i="`",o=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(n);)i+="`";for(/[^ \r\n]/.test(n)&&(/^[ \r\n]/.test(n)&&/[ \r\n]$/.test(n)||/^`|`$/.test(n))&&(n=" "+n+" ");++o<t.unsafe.length;){const a=t.unsafe[o],l=t.compilePattern(a);let s;if(a.atBreak)for(;s=l.exec(n);){let u=s.index;n.charCodeAt(u)===10&&n.charCodeAt(u-1)===13&&u--,n=n.slice(0,u)+" "+n.slice(s.index+1)}}return i+n+i}function xn(){return"`"}function ct(e,r){const t=at(e);return!!(!r.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(t===e.url||"mailto:"+t===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}dt.peek=bn;function dt(e,r,t,n){const i=ve(t),o=i==='"'?"Quote":"Apostrophe",a=t.createTracker(n);let l,s;if(ct(e,t)){const f=t.stack;t.stack=[],l=t.enter("autolink");let c=a.move("<");return c+=a.move(t.containerPhrasing(e,{before:c,after:">",...a.current()})),c+=a.move(">"),l(),t.stack=f,c}l=t.enter("link"),s=t.enter("label");let u=a.move("[");return u+=a.move(t.containerPhrasing(e,{before:u,after:"](",...a.current()})),u+=a.move("]("),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=t.enter("destinationLiteral"),u+=a.move("<"),u+=a.move(t.safe(e.url,{before:u,after:">",...a.current()})),u+=a.move(">")):(s=t.enter("destinationRaw"),u+=a.move(t.safe(e.url,{before:u,after:e.title?" ":")",...a.current()}))),s(),e.title&&(s=t.enter(`title${o}`),u+=a.move(" "+i),u+=a.move(t.safe(e.title,{before:u,after:i,...a.current()})),u+=a.move(i),s()),u+=a.move(")"),l(),u}function bn(e,r,t){return ct(e,t)?"<":"["}ft.peek=kn;function ft(e,r,t,n){const i=e.referenceType,o=t.enter("linkReference");let a=t.enter("label");const l=t.createTracker(n);let s=l.move("[");const u=t.containerPhrasing(e,{before:s,after:"]",...l.current()});s+=l.move(u+"]["),a();const f=t.stack;t.stack=[],a=t.enter("reference");const c=t.safe(t.associationId(e),{before:s,after:"]",...l.current()});return a(),t.stack=f,o(),i==="full"||!u||u!==c?s+=l.move(c+"]"):i==="shortcut"?s=s.slice(0,-1):s+=l.move("]"),s}function kn(){return"["}function je(e){const r=e.options.bullet||"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bullet`, expected `*`, `+`, or `-`");return r}function wn(e){const r=je(e),t=e.options.bulletOther;if(!t)return r==="*"?"-":"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(t===r)throw new Error("Expected `bullet` (`"+r+"`) and `bulletOther` (`"+t+"`) to be different");return t}function yn(e){const r=e.options.bulletOrdered||".";if(r!=="."&&r!==")")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOrdered`, expected `.` or `)`");return r}function ht(e){const r=e.options.rule||"*";if(r!=="*"&&r!=="-"&&r!=="_")throw new Error("Cannot serialize rules with `"+r+"` for `options.rule`, expected `*`, `-`, or `_`");return r}function Cn(e,r,t,n){const i=t.enter("list"),o=t.bulletCurrent;let a=e.ordered?yn(t):je(t);const l=e.ordered?a==="."?")":".":wn(t);let s=r&&t.bulletLastUsed?a===t.bulletLastUsed:!1;if(!e.ordered){const f=e.children?e.children[0]:void 0;if((a==="*"||a==="-")&&f&&(!f.children||!f.children[0])&&t.stack[t.stack.length-1]==="list"&&t.stack[t.stack.length-2]==="listItem"&&t.stack[t.stack.length-3]==="list"&&t.stack[t.stack.length-4]==="listItem"&&t.indexStack[t.indexStack.length-1]===0&&t.indexStack[t.indexStack.length-2]===0&&t.indexStack[t.indexStack.length-3]===0&&(s=!0),ht(t)===a&&f){let c=-1;for(;++c<e.children.length;){const p=e.children[c];if(p&&p.type==="listItem"&&p.children&&p.children[0]&&p.children[0].type==="thematicBreak"){s=!0;break}}}}s&&(a=l),t.bulletCurrent=a;const u=t.containerFlow(e,n);return t.bulletLastUsed=a,t.bulletCurrent=o,i(),u}function vn(e){const r=e.options.listItemIndent||"one";if(r!=="tab"&&r!=="one"&&r!=="mixed")throw new Error("Cannot serialize items with `"+r+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return r}function jn(e,r,t,n){const i=vn(t);let o=t.bulletCurrent||je(t);r&&r.type==="list"&&r.ordered&&(o=(typeof r.start=="number"&&r.start>-1?r.start:1)+(t.options.incrementListMarker===!1?0:r.children.indexOf(e))+o);let a=o.length+1;(i==="tab"||i==="mixed"&&(r&&r.type==="list"&&r.spread||e.spread))&&(a=Math.ceil(a/4)*4);const l=t.createTracker(n);l.move(o+" ".repeat(a-o.length)),l.shift(a);const s=t.enter("listItem"),u=t.indentLines(t.containerFlow(e,l.current()),f);return s(),u;function f(c,p,x){return p?(x?"":" ".repeat(a))+c:(x?o:o+" ".repeat(a-o.length))+c}}function Tn(e,r,t,n){const i=t.enter("paragraph"),o=t.enter("phrasing"),a=t.containerPhrasing(e,n);return o(),i(),a}const An=ue(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function In(e,r,t,n){return(e.children.some(function(a){return An(a)})?t.containerPhrasing:t.containerFlow).call(t,e,n)}function Sn(e){const r=e.options.strong||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize strong with `"+r+"` for `options.strong`, expected `*`, or `_`");return r}mt.peek=Nn;function mt(e,r,t,n){const i=Sn(t),o=t.enter("strong"),a=t.createTracker(n),l=a.move(i+i);let s=a.move(t.containerPhrasing(e,{after:i,before:l,...a.current()}));const u=s.charCodeAt(0),f=oe(n.before.charCodeAt(n.before.length-1),u,i);f.inside&&(s=X(u)+s.slice(1));const c=s.charCodeAt(s.length-1),p=oe(n.after.charCodeAt(0),c,i);p.inside&&(s=s.slice(0,-1)+X(c));const x=a.move(i+i);return o(),t.attentionEncodeSurroundingInfo={after:p.outside,before:f.outside},l+s+x}function Nn(e,r,t){return t.options.strong||"*"}function Mn(e,r,t,n){return t.safe(e.value,n)}function Ln(e){const r=e.options.ruleRepetition||3;if(r<3)throw new Error("Cannot serialize rules with repetition `"+r+"` for `options.ruleRepetition`, expected `3` or more");return r}function Pn(e,r,t){const n=(ht(t)+(t.options.ruleSpaces?" ":"")).repeat(Ln(t));return t.options.ruleSpaces?n.slice(0,-1):n}const pt={blockquote:Qr,break:_e,code:nn,definition:on,emphasis:nt,hardBreak:_e,heading:hn,html:ot,image:st,imageReference:lt,inlineCode:ut,link:dt,linkReference:ft,list:Cn,listItem:jn,paragraph:Tn,root:In,strong:mt,text:Mn,thematicBreak:Pn};function Dn(){return{enter:{table:Rn,tableData:$e,tableHeader:$e,tableRow:En},exit:{codeText:_n,table:Fn,tableData:ge,tableHeader:ge,tableRow:ge}}}function Rn(e){const r=e._align;this.enter({type:"table",align:r.map(function(t){return t==="none"?null:t}),children:[]},e),this.data.inTable=!0}function Fn(e){this.exit(e),this.data.inTable=void 0}function En(e){this.enter({type:"tableRow",children:[]},e)}function ge(e){this.exit(e)}function $e(e){this.enter({type:"tableCell",children:[]},e)}function _n(e){let r=this.resume();this.data.inTable&&(r=r.replace(/\\([\\|])/g,zn));const t=this.stack[this.stack.length-1];t.type,t.value=r,this.exit(e)}function zn(e,r){return r==="|"?r:e}function $n(e){const r=e||{},t=r.tableCellPadding,n=r.tablePipeAlign,i=r.stringLength,o=t?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
17
|
+
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:p,table:a,tableCell:s,tableRow:l}};function a(x,h,b,g){return u(f(x,b,g),x.align)}function l(x,h,b,g){const k=c(x,b,g),y=u([k]);return y.slice(0,y.indexOf(`
|
|
18
|
+
`))}function s(x,h,b,g){const k=b.enter("tableCell"),y=b.enter("phrasing"),C=b.containerPhrasing(x,{...g,before:o,after:o});return y(),k(),C}function u(x,h){return Zr(x,{align:h,alignDelimiters:n,padding:t,stringLength:i})}function f(x,h,b){const g=x.children;let k=-1;const y=[],C=h.enter("table");for(;++k<g.length;)y[k]=c(g[k],h,b);return C(),y}function c(x,h,b){const g=x.children;let k=-1;const y=[],C=h.enter("tableRow");for(;++k<g.length;)y[k]=s(g[k],x,h,b);return C(),y}function p(x,h,b){let g=pt.inlineCode(x,h,b);return b.stack.includes("tableCell")&&(g=g.replace(/\|/g,"\\$&")),g}}function On(){return{exit:{taskListCheckValueChecked:Oe,taskListCheckValueUnchecked:Oe,paragraph:Bn}}}function Un(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Wn}}}function Oe(e){const r=this.stack[this.stack.length-2];r.type,r.checked=e.type==="taskListCheckValueChecked"}function Bn(e){const r=this.stack[this.stack.length-2];if(r&&r.type==="listItem"&&typeof r.checked=="boolean"){const t=this.stack[this.stack.length-1];t.type;const n=t.children[0];if(n&&n.type==="text"){const i=r.children;let o=-1,a;for(;++o<i.length;){const l=i[o];if(l.type==="paragraph"){a=l;break}}a===t&&(n.value=n.value.slice(1),n.value.length===0?t.children.shift():t.position&&n.position&&typeof n.position.start.offset=="number"&&(n.position.start.column++,n.position.start.offset++,t.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function Wn(e,r,t,n){const i=e.children[0],o=typeof e.checked=="boolean"&&i&&i.type==="paragraph",a="["+(e.checked?"x":" ")+"] ",l=t.createTracker(n);o&&l.move(a);let s=pt.listItem(e,r,t,{...n,...l.current()});return o&&(s=s.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),s;function u(f){return f+a}}function Hn(){return[br(),$r(),Wr(),Dn(),On()]}function qn(e){return{extensions:[kr(),Or(e),Hr(),$n(e),Un()]}}function ae(e,r,t,n){const i=e.length;let o=0,a;if(r<0?r=-r>i?0:i+r:r=r>i?i:r,t=t>0?t:0,n.length<1e4)a=Array.from(n),a.unshift(r,t),e.splice(...a);else for(t&&e.splice(r,t);o<n.length;)a=n.slice(o,o+1e4),a.unshift(r,0),e.splice(...a),o+=1e4,r+=1e4}const Ue={}.hasOwnProperty;function Kn(e){const r={};let t=-1;for(;++t<e.length;)Vn(r,e[t]);return r}function Vn(e,r){let t;for(t in r){const i=(Ue.call(e,t)?e[t]:void 0)||(e[t]={}),o=r[t];let a;if(o)for(a in o){Ue.call(i,a)||(i[a]=[]);const l=o[a];Gn(i[a],Array.isArray(l)?l:l?[l]:[])}}}function Gn(e,r){let t=-1;const n=[];for(;++t<r.length;)(r[t].add==="after"?e:n).push(r[t]);ae(e,0,0,n)}const Zn={tokenize:ta,partial:!0},gt={tokenize:ra,partial:!0},xt={tokenize:na,partial:!0},bt={tokenize:aa,partial:!0},Jn={tokenize:ia,partial:!0},kt={name:"wwwAutolink",tokenize:Yn,previous:yt},wt={name:"protocolAutolink",tokenize:ea,previous:Ct},z={name:"emailAutolink",tokenize:Xn,previous:vt},P={};function Qn(){return{text:P}}let O=48;for(;O<123;)P[O]=z,O++,O===58?O=65:O===91&&(O=97);P[43]=z;P[45]=z;P[46]=z;P[95]=z;P[72]=[z,wt];P[104]=[z,wt];P[87]=[z,kt];P[119]=[z,kt];function Xn(e,r,t){const n=this;let i,o;return a;function a(c){return!ye(c)||!vt.call(n,n.previous)||Te(n.events)?t(c):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),l(c))}function l(c){return ye(c)?(e.consume(c),l):c===64?(e.consume(c),s):t(c)}function s(c){return c===46?e.check(Jn,f,u)(c):c===45||c===95||Ce(c)?(o=!0,e.consume(c),s):f(c)}function u(c){return e.consume(c),i=!0,s}function f(c){return o&&i&&Q(n.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),r(c)):t(c)}}function Yn(e,r,t){const n=this;return i;function i(a){return a!==87&&a!==119||!yt.call(n,n.previous)||Te(n.events)?t(a):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Zn,e.attempt(gt,e.attempt(xt,o),t),t)(a))}function o(a){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),r(a)}}function ea(e,r,t){const n=this;let i="",o=!1;return a;function a(c){return(c===72||c===104)&&Ct.call(n,n.previous)&&!Te(n.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(c),e.consume(c),l):t(c)}function l(c){if(Q(c)&&i.length<5)return i+=String.fromCodePoint(c),e.consume(c),l;if(c===58){const p=i.toLowerCase();if(p==="http"||p==="https")return e.consume(c),s}return t(c)}function s(c){return c===47?(e.consume(c),o?u:(o=!0,s)):t(c)}function u(c){return c===null||ar(c)||N(c)||U(c)||se(c)?t(c):e.attempt(gt,e.attempt(xt,f),t)(c)}function f(c){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),r(c)}}function ta(e,r,t){let n=0;return i;function i(a){return(a===87||a===119)&&n<3?(n++,e.consume(a),i):a===46&&n===3?(e.consume(a),o):t(a)}function o(a){return a===null?t(a):r(a)}}function ra(e,r,t){let n,i,o;return a;function a(u){return u===46||u===95?e.check(bt,s,l)(u):u===null||N(u)||U(u)||u!==45&&se(u)?s(u):(o=!0,e.consume(u),a)}function l(u){return u===95?n=!0:(i=n,n=void 0),e.consume(u),a}function s(u){return i||n||!o?t(u):r(u)}}function na(e,r){let t=0,n=0;return i;function i(a){return a===40?(t++,e.consume(a),i):a===41&&n<t?o(a):a===33||a===34||a===38||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===60||a===63||a===93||a===95||a===126?e.check(bt,r,o)(a):a===null||N(a)||U(a)?r(a):(e.consume(a),i)}function o(a){return a===41&&n++,e.consume(a),i}}function aa(e,r,t){return n;function n(l){return l===33||l===34||l===39||l===41||l===42||l===44||l===46||l===58||l===59||l===63||l===95||l===126?(e.consume(l),n):l===38?(e.consume(l),o):l===93?(e.consume(l),i):l===60||l===null||N(l)||U(l)?r(l):t(l)}function i(l){return l===null||l===40||l===91||N(l)||U(l)?r(l):n(l)}function o(l){return Q(l)?a(l):t(l)}function a(l){return l===59?(e.consume(l),n):Q(l)?(e.consume(l),a):t(l)}}function ia(e,r,t){return n;function n(o){return e.consume(o),i}function i(o){return Ce(o)?t(o):r(o)}}function yt(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||N(e)}function Ct(e){return!Q(e)}function vt(e){return!(e===47||ye(e))}function ye(e){return e===43||e===45||e===46||e===95||Ce(e)}function Te(e){let r=e.length,t=!1;for(;r--;){const n=e[r][1];if((n.type==="labelLink"||n.type==="labelImage")&&!n._balanced){t=!0;break}if(n._gfmAutolinkLiteralWalkedInto){t=!1;break}}return e.length>0&&!t&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),t}function oa(e,r,t){const n=[];let i=-1;for(;++i<e.length;){const o=e[i].resolveAll;o&&!n.includes(o)&&(r=o(r,t),n.push(o))}return r}function E(e,r,t,n){const i=n?n-1:Number.POSITIVE_INFINITY;let o=0;return a;function a(s){return F(s)?(e.enter(t),l(s)):r(s)}function l(s){return F(s)&&o++<i?(e.consume(s),l):(e.exit(t),r(s))}}const sa={partial:!0,tokenize:la};function la(e,r,t){return n;function n(o){return F(o)?E(e,i,"linePrefix")(o):i(o)}function i(o){return o===null||K(o)?r(o):t(o)}}const ua={tokenize:xa,partial:!0};function ca(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:ma,continuation:{tokenize:pa},exit:ga}},text:{91:{name:"gfmFootnoteCall",tokenize:ha},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:da,resolveTo:fa}}}}function da(e,r,t){const n=this;let i=n.events.length;const o=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let a;for(;i--;){const s=n.events[i][1];if(s.type==="labelImage"){a=s;break}if(s.type==="gfmFootnoteCall"||s.type==="labelLink"||s.type==="label"||s.type==="image"||s.type==="link")break}return l;function l(s){if(!a||!a._balanced)return t(s);const u=Y(n.sliceSerialize({start:a.end,end:n.now()}));return u.codePointAt(0)!==94||!o.includes(u.slice(1))?t(s):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(s),e.exit("gfmFootnoteCallLabelMarker"),r(s))}}function fa(e,r){let t=e.length;for(;t--;)if(e[t][1].type==="labelImage"&&e[t][0]==="enter"){e[t][1];break}e[t+1][1].type="data",e[t+3][1].type="gfmFootnoteCallLabelMarker";const n={type:"gfmFootnoteCall",start:Object.assign({},e[t+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[t+3][1].end),end:Object.assign({},e[t+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const o={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},a={type:"chunkString",contentType:"string",start:Object.assign({},o.start),end:Object.assign({},o.end)},l=[e[t+1],e[t+2],["enter",n,r],e[t+3],e[t+4],["enter",i,r],["exit",i,r],["enter",o,r],["enter",a,r],["exit",a,r],["exit",o,r],e[e.length-2],e[e.length-1],["exit",n,r]];return e.splice(t,e.length-t+1,...l),e}function ha(e,r,t){const n=this,i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let o=0,a;return l;function l(c){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),s}function s(c){return c!==94?t(c):(e.enter("gfmFootnoteCallMarker"),e.consume(c),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(c){if(o>999||c===93&&!a||c===null||c===91||N(c))return t(c);if(c===93){e.exit("chunkString");const p=e.exit("gfmFootnoteCallString");return i.includes(Y(n.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):t(c)}return N(c)||(a=!0),o++,e.consume(c),c===92?f:u}function f(c){return c===91||c===92||c===93?(e.consume(c),o++,u):u(c)}}function ma(e,r,t){const n=this,i=n.parser.gfmFootnotes||(n.parser.gfmFootnotes=[]);let o,a=0,l;return s;function s(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",f):t(h)}function f(h){if(a>999||h===93&&!l||h===null||h===91||N(h))return t(h);if(h===93){e.exit("chunkString");const b=e.exit("gfmFootnoteDefinitionLabelString");return o=Y(n.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return N(h)||(l=!0),a++,e.consume(h),h===92?c:f}function c(h){return h===91||h===92||h===93?(e.consume(h),a++,f):f(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),i.includes(o)||i.push(o),E(e,x,"gfmFootnoteDefinitionWhitespace")):t(h)}function x(h){return r(h)}}function pa(e,r,t){return e.check(sa,r,e.attempt(ua,r,t))}function ga(e){e.exit("gfmFootnoteDefinition")}function xa(e,r,t){const n=this;return E(e,i,"gfmFootnoteDefinitionIndent",5);function i(o){const a=n.events[n.events.length-1];return a&&a[1].type==="gfmFootnoteDefinitionIndent"&&a[2].sliceSerialize(a[1],!0).length===4?r(o):t(o)}}function ba(e){let t=(e||{}).singleTilde;const n={name:"strikethrough",tokenize:o,resolveAll:i};return t==null&&(t=!0),{text:{126:n},insideSpan:{null:[n]},attentionMarkers:{null:[126]}};function i(a,l){let s=-1;for(;++s<a.length;)if(a[s][0]==="enter"&&a[s][1].type==="strikethroughSequenceTemporary"&&a[s][1]._close){let u=s;for(;u--;)if(a[u][0]==="exit"&&a[u][1].type==="strikethroughSequenceTemporary"&&a[u][1]._open&&a[s][1].end.offset-a[s][1].start.offset===a[u][1].end.offset-a[u][1].start.offset){a[s][1].type="strikethroughSequence",a[u][1].type="strikethroughSequence";const f={type:"strikethrough",start:Object.assign({},a[u][1].start),end:Object.assign({},a[s][1].end)},c={type:"strikethroughText",start:Object.assign({},a[u][1].end),end:Object.assign({},a[s][1].start)},p=[["enter",f,l],["enter",a[u][1],l],["exit",a[u][1],l],["enter",c,l]],x=l.parser.constructs.insideSpan.null;x&&ae(p,p.length,0,oa(x,a.slice(u+1,s),l)),ae(p,p.length,0,[["exit",c,l],["enter",a[s][1],l],["exit",a[s][1],l],["exit",f,l]]),ae(a,u-1,s-u+3,p),s=u+p.length-2;break}}for(s=-1;++s<a.length;)a[s][1].type==="strikethroughSequenceTemporary"&&(a[s][1].type="data");return a}function o(a,l,s){const u=this.previous,f=this.events;let c=0;return p;function p(h){return u===126&&f[f.length-1][1].type!=="characterEscape"?s(h):(a.enter("strikethroughSequenceTemporary"),x(h))}function x(h){const b=ie(u);if(h===126)return c>1?s(h):(a.consume(h),c++,x);if(c<2&&!t)return s(h);const g=a.exit("strikethroughSequenceTemporary"),k=ie(h);return g._open=!k||k===2&&!!b,g._close=!b||b===2&&!!k,l(h)}}}class ka{constructor(){this.map=[]}add(r,t,n){wa(this,r,t,n)}consume(r){if(this.map.sort(function(o,a){return o[0]-a[0]}),this.map.length===0)return;let t=this.map.length;const n=[];for(;t>0;)t-=1,n.push(r.slice(this.map[t][0]+this.map[t][1]),this.map[t][2]),r.length=this.map[t][0];n.push(r.slice()),r.length=0;let i=n.pop();for(;i;){for(const o of i)r.push(o);i=n.pop()}this.map.length=0}}function wa(e,r,t,n){let i=0;if(!(t===0&&n.length===0)){for(;i<e.map.length;){if(e.map[i][0]===r){e.map[i][1]+=t,e.map[i][2].push(...n);return}i+=1}e.map.push([r,t,n])}}function ya(e,r){let t=!1;const n=[];for(;r<e.length;){const i=e[r];if(t){if(i[0]==="enter")i[1].type==="tableContent"&&n.push(e[r+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[r-1][1].type==="tableDelimiterMarker"){const o=n.length-1;n[o]=n[o]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(t=!0);r+=1}return n}function Ca(){return{flow:{null:{name:"table",tokenize:va,resolveAll:ja}}}}function va(e,r,t){const n=this;let i=0,o=0,a;return l;function l(m){let L=n.events.length-1;for(;L>-1;){const V=n.events[L][1].type;if(V==="lineEnding"||V==="linePrefix")L--;else break}const ee=L>-1?n.events[L][1].type:null,$=ee==="tableHead"||ee==="tableRow"?v:s;return $===v&&n.parser.lazy[n.now().line]?t(m):$(m)}function s(m){return e.enter("tableHead"),e.enter("tableRow"),u(m)}function u(m){return m===124||(a=!0,o+=1),f(m)}function f(m){return m===null?t(m):K(m)?o>1?(o=0,n.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),x):t(m):F(m)?E(e,f,"whitespace")(m):(o+=1,a&&(a=!1,i+=1),m===124?(e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),a=!0,f):(e.enter("data"),c(m)))}function c(m){return m===null||m===124||N(m)?(e.exit("data"),f(m)):(e.consume(m),m===92?p:c)}function p(m){return m===92||m===124?(e.consume(m),c):c(m)}function x(m){return n.interrupt=!1,n.parser.lazy[n.now().line]?t(m):(e.enter("tableDelimiterRow"),a=!1,F(m)?E(e,h,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(m):h(m))}function h(m){return m===45||m===58?g(m):m===124?(a=!0,e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),b):j(m)}function b(m){return F(m)?E(e,g,"whitespace")(m):g(m)}function g(m){return m===58?(o+=1,a=!0,e.enter("tableDelimiterMarker"),e.consume(m),e.exit("tableDelimiterMarker"),k):m===45?(o+=1,k(m)):m===null||K(m)?A(m):j(m)}function k(m){return m===45?(e.enter("tableDelimiterFiller"),y(m)):j(m)}function y(m){return m===45?(e.consume(m),y):m===58?(a=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(m),e.exit("tableDelimiterMarker"),C):(e.exit("tableDelimiterFiller"),C(m))}function C(m){return F(m)?E(e,A,"whitespace")(m):A(m)}function A(m){return m===124?h(m):m===null||K(m)?!a||i!==o?j(m):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(m)):j(m)}function j(m){return t(m)}function v(m){return e.enter("tableRow"),M(m)}function M(m){return m===124?(e.enter("tableCellDivider"),e.consume(m),e.exit("tableCellDivider"),M):m===null||K(m)?(e.exit("tableRow"),r(m)):F(m)?E(e,M,"whitespace")(m):(e.enter("data"),D(m))}function D(m){return m===null||m===124||N(m)?(e.exit("data"),M(m)):(e.consume(m),m===92?B:D)}function B(m){return m===92||m===124?(e.consume(m),D):D(m)}}function ja(e,r){let t=-1,n=!0,i=0,o=[0,0,0,0],a=[0,0,0,0],l=!1,s=0,u,f,c;const p=new ka;for(;++t<e.length;){const x=e[t],h=x[1];x[0]==="enter"?h.type==="tableHead"?(l=!1,s!==0&&(Be(p,r,s,u,f),f=void 0,s=0),u={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(t,0,[["enter",u,r]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(n=!0,c=void 0,o=[0,0,0,0],a=[0,t+1,0,0],l&&(l=!1,f={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(t,0,[["enter",f,r]])),i=h.type==="tableDelimiterRow"?2:f?3:1):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(n=!1,a[2]===0&&(o[1]!==0&&(a[0]=a[1],c=ne(p,r,o,i,void 0,c),o=[0,0,0,0]),a[2]=t)):h.type==="tableCellDivider"&&(n?n=!1:(o[1]!==0&&(a[0]=a[1],c=ne(p,r,o,i,void 0,c)),o=a,a=[o[1],t,0,0])):h.type==="tableHead"?(l=!0,s=t):h.type==="tableRow"||h.type==="tableDelimiterRow"?(s=t,o[1]!==0?(a[0]=a[1],c=ne(p,r,o,i,t,c)):a[1]!==0&&(c=ne(p,r,a,i,t,c)),i=0):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(a[3]=t)}for(s!==0&&Be(p,r,s,u,f),p.consume(r.events),t=-1;++t<r.events.length;){const x=r.events[t];x[0]==="enter"&&x[1].type==="table"&&(x[1]._align=ya(r.events,t))}return e}function ne(e,r,t,n,i,o){const a=n===1?"tableHeader":n===2?"tableDelimiter":"tableData",l="tableContent";t[0]!==0&&(o.end=Object.assign({},q(r.events,t[0])),e.add(t[0],0,[["exit",o,r]]));const s=q(r.events,t[1]);if(o={type:a,start:Object.assign({},s),end:Object.assign({},s)},e.add(t[1],0,[["enter",o,r]]),t[2]!==0){const u=q(r.events,t[2]),f=q(r.events,t[3]),c={type:l,start:Object.assign({},u),end:Object.assign({},f)};if(e.add(t[2],0,[["enter",c,r]]),n!==2){const p=r.events[t[2]],x=r.events[t[3]];if(p[1].end=Object.assign({},x[1].end),p[1].type="chunkText",p[1].contentType="text",t[3]>t[2]+1){const h=t[2]+1,b=t[3]-t[2]-1;e.add(h,b,[])}}e.add(t[3]+1,0,[["exit",c,r]])}return i!==void 0&&(o.end=Object.assign({},q(r.events,i)),e.add(i,0,[["exit",o,r]]),o=void 0),o}function Be(e,r,t,n,i){const o=[],a=q(r.events,t);i&&(i.end=Object.assign({},a),o.push(["exit",i,r])),n.end=Object.assign({},a),o.push(["exit",n,r]),e.add(t+1,0,o)}function q(e,r){const t=e[r],n=t[0]==="enter"?"start":"end";return t[1][n]}const Ta={name:"tasklistCheck",tokenize:Ia};function Aa(){return{text:{91:Ta}}}function Ia(e,r,t){const n=this;return i;function i(s){return n.previous!==null||!n._gfmTasklistFirstContentOfListItem?t(s):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(s),e.exit("taskListCheckMarker"),o)}function o(s){return N(s)?(e.enter("taskListCheckValueUnchecked"),e.consume(s),e.exit("taskListCheckValueUnchecked"),a):s===88||s===120?(e.enter("taskListCheckValueChecked"),e.consume(s),e.exit("taskListCheckValueChecked"),a):t(s)}function a(s){return s===93?(e.enter("taskListCheckMarker"),e.consume(s),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),l):t(s)}function l(s){return K(s)?r(s):F(s)?e.check({tokenize:Sa},r,t)(s):t(s)}}function Sa(e,r,t){return E(e,n,"whitespace");function n(i){return i===null?t(i):r(i)}}function Na(e){return Kn([Qn(),ca(),ba(e),Ca(),Aa()])}const Ma={};function La(e){const r=this,t=e||Ma,n=r.data(),i=n.micromarkExtensions||(n.micromarkExtensions=[]),o=n.fromMarkdownExtensions||(n.fromMarkdownExtensions=[]),a=n.toMarkdownExtensions||(n.toMarkdownExtensions=[]);i.push(Na(t)),o.push(Hn()),a.push(qn(t))}function I(...e){return e.filter(Boolean).join(" ")}const Pa=({content:e})=>d.jsx(ke.MarkdownTextPrimitive,{remarkPlugins:[La],className:"cuadra-aui-md",components:Fa,children:e}),jt=w.memo(Pa),Da=({language:e,code:r})=>{const{isCopied:t,copyToClipboard:n}=Ra(),i=()=>{!r||t||n(r)};return d.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:[d.jsx("span",{className:"cuadra-lowercase [&>span]:cuadra-text-xs cuadra-font-brand",children:e}),d.jsxs("button",{onClick:i,className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-muted cuadra-transition-colors","aria-label":"Copy code",children:[!t&&d.jsx(Wt,{className:"cuadra-h-4 cuadra-w-4"}),t&&d.jsx(_t,{className:"cuadra-h-4 cuadra-w-4"})]})]})},Ra=({copiedDuration:e=3e3}={})=>{const[r,t]=w.useState(!1);return{isCopied:r,copyToClipboard:i=>{i&&navigator.clipboard.writeText(i).then(()=>{t(!0),setTimeout(()=>t(!1),e)})}}},Fa=ke.unstable_memoizeMarkdownComponents({h1:({className:e,...r})=>d.jsx("h1",{className:I("cuadra-mb-6 cuadra-scroll-m-20 cuadra-text-2xl cuadra-font-normal cuadra-tracking-tight last:cuadra-mb-0 font-brand",e),...r}),h2:({className:e,...r})=>d.jsx("h2",{className:I("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),...r}),h3:({className:e,...r})=>d.jsx("h3",{className:I("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),...r}),h4:({className:e,...r})=>d.jsx("h4",{className:I("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),...r}),h5:({className:e,...r})=>d.jsx("h5",{className:I("cuadra-my-4 cuadra-text-lg cuadra-font-normal first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e),...r}),h6:({className:e,...r})=>d.jsx("h6",{className:I("cuadra-my-4 cuadra-font-normal first:cuadra-mb-0 font-brand",e),...r}),p:({className:e,...r})=>d.jsx("p",{className:I("cuadra-mb-5 cuadra-mt-5 cuadra-leading-7 first:cuadra-mt-0 last:cuadra-mb-0 font-brand",e),...r}),a:({className:e,...r})=>d.jsx("a",{className:I("cuadra-text-primary cuadra-font-medium cuadra-underline cuadra-underline-offset-4 font-brand",e),...r}),blockquote:({className:e,...r})=>d.jsx("blockquote",{className:I("cuadra-border-l-2 cuadra-pl-6 cuadra-italic font-brand",e),...r}),ul:({className:e,...r})=>d.jsx("ul",{className:I("cuadra-my-5 cuadra-ml-6 cuadra-list-disc [&>li]:cuadra-mt-2 font-brand",e),...r}),ol:({className:e,...r})=>d.jsx("ol",{className:I("cuadra-my-5 cuadra-ml-6 cuadra-list-decimal [&>li]:cuadra-mt-2 font-brand",e),...r}),hr:({className:e,...r})=>d.jsx("hr",{className:I("cuadra-my-5 cuadra-border-b",e),...r}),table:({className:e,...r})=>d.jsx("table",{className:I("cuadra-my-5 cuadra-w-full cuadra-border-separate cuadra-border-spacing-0 cuadra-overflow-y-auto font-brand",e),...r}),th:({className:e,...r})=>d.jsx("th",{className:I("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),...r}),td:({className:e,...r})=>d.jsx("td",{className:I("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),...r}),tr:({className:e,...r})=>d.jsx("tr",{className:I("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),...r}),sup:({className:e,...r})=>d.jsx("sup",{className:I("[&>a]:cuadra-text-xs [&>a]:cuadra-no-underline font-brand",e),...r}),pre:({className:e,...r})=>d.jsx("pre",{className:I("cuadra-overflow-x-auto cuadra-rounded-b-lg !cuadra-rounded-t-none cuadra-bg-muted cuadra-p-4 cuadra-text-foreground font-brand",e),...r}),code:function({className:r,...t}){const n=ke.useIsMarkdownCodeBlock();return d.jsx("code",{className:I(!n&&"cuadra-bg-muted cuadra-rounded cuadra-border cuadra-font-normal font-brand",r),...t})},CodeHeader:Da}),We=["Sending question…","Understanding your need…","Scanning data…","Comparing results…","Composing answer…"];function Ea({active:e}){const[r,t]=w.useState(0);return w.useEffect(()=>{if(!e){t(0);return}const n=window.setInterval(()=>{t(i=>i>=We.length-1?(window.clearInterval(n),i):i+1)},2500);return()=>window.clearInterval(n)},[e]),e?d.jsxs("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-font-brand",children:["Thinking… ",We[r]]}):null}function He({welcomeTitle:e="Hi, how can I help you today?",welcomeSubtitle:r="Start exploring our platform and discover what you can build.",extraTopPadding:t,suggestions:n,inputPlaceholder:i="Type your message..."}={}){const o=T.useThreadRuntime(),[a,l]=w.useState(!1),[s,u]=w.useState(null),[f,c]=w.useState(!1);return w.useEffect(()=>{if(!o){l(!1);return}try{const p=o?.store;if(!p){l(!1);return}const x=p.subscribe?.(b=>{const g=b?.threadId,k=b?.messages||[],y=b?.isLoadingHistory||!1,C=k.length;g&&g!==s&&u(g),l(y&&C===0);const j=k.some(v=>v.role==="assistant"&&!!v.content&&(Array.isArray(v.content)?v.content.some(M=>typeof M=="object"&&M?.text?M.text.trim().length>0:!1):typeof v.content=="string"?v.content.trim().length>0:!1));c(j)}),h=p.getState?.();if(h){const b=h?.threadId,g=h?.messages||[],k=h?.isLoadingHistory||!1,y=g.length;b&&b!==s&&u(b),l(k&&y===0);const A=g.some(j=>j.role==="assistant"&&!!j.content&&(Array.isArray(j.content)?j.content.some(v=>typeof v=="object"&&v?.text?v.text.trim().length>0:!1):typeof j.content=="string"?j.content.trim().length>0:!1));c(A)}return()=>{x&&x()}}catch{l(!1)}},[o,s]),d.jsxs(T.ThreadPrimitive.Root,{className:"cuadra-bg-inherit cuadra-flex cuadra-flex-col cuadra-w-full cuadra-h-full",children:[d.jsx(T.ThreadPrimitive.Viewport,{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:t?{paddingTop:t}:void 0,children:a?d.jsx("div",{className:"cuadra-absolute cuadra-inset-0 cuadra-flex cuadra-items-center cuadra-justify-center",children:d.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:[d.jsx(Ge,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"}),d.jsx("p",{className:"cuadra-text-sm cuadra-text-muted-foreground font-brand",children:"Loading messages..."})]})}):d.jsxs(d.Fragment,{children:[d.jsx(T.ThreadPrimitive.Empty,{children:d.jsx(_a,{title:e,subtitle:r,suggestions:n})}),d.jsx(T.ThreadPrimitive.Messages,{components:{UserMessage:za,AssistantMessage:$a}}),d.jsx(T.ThreadPrimitive.If,{running:!0,children:!f&&d.jsx("div",{className:"cuadra-mt-2 cuadra-max-w-2xl",children:d.jsx(Ea,{active:!0})})})]})}),d.jsx("div",{className:"cuadra-w-full cuadra-mt-3 cuadra-border-t cuadra-border-border cuadra-pt-4",children:d.jsxs(T.ComposerPrimitive.Root,{className:"cuadra-relative !cuadra-relative cuadra-flex-1 cuadra-w-full",children:[d.jsx(T.ComposerPrimitive.Input,{asChild:!0,children:d.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 placeholder:cuadra-text-muted-foreground focus-visible:cuadra-outline-none disabled:cuadra-cursor-not-allowed disabled:cuadra-opacity-50 cuadra-resize-none cuadra-pr-10 font-brand",style:{paddingRight:"2.5rem",fontSize:"1rem",borderWidth:"1px"}})}),d.jsx(T.ComposerPrimitive.Send,{asChild:!0,children:d.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(--primary)",color:"hsl(var(--primary-foreground))"},"aria-label":"Send message",type:"button",children:d.jsx(Ft,{className:"cuadra-h-4 cuadra-w-4"})})})]})})]})}function _a({title:e,subtitle:r,suggestions:t}){const n=T.useAssistantApi(),i=async o=>{try{n.composer().setText(o),await new Promise(a=>setTimeout(a,10)),n.composer().send()}catch{}};return d.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:d.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:[d.jsxs("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-justify-center cuadra-mb-8",children:[d.jsx("h2",{className:"cuadra-text-lg cuadra-font-normal cuadra-text-foreground cuadra-mb-2 font-brand",children:e}),d.jsx("p",{className:"cuadra-text-muted-foreground font-brand",children:r})]}),t&&t.length>0&&d.jsx("div",{className:"cuadra-grid cuadra-grid-cols-2 cuadra-gap-2 cuadra-pb-4 cuadra-w-full cuadra-max-w-2xl",children:t.map((o,a)=>d.jsx("button",{type:"button",onClick:()=>i(o.prompt),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 font-brand cuadra-cursor-pointer focus:cuadra-outline-none focus:cuadra-ring-0",style:{borderWidth:"1px"},children:o.prompt},`suggestion-${a}`))})]})})}function za(){return d.jsx(T.MessagePrimitive.Root,{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:d.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:"hsl(var(--muted))",color:"hsl(var(--foreground))",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",wordBreak:"break-word",borderWidth:"1px"},children:d.jsx(T.MessagePrimitive.Parts,{components:{Text:({text:e})=>d.jsx(jt,{content:e||""})}})})})}function $a(){return d.jsx(T.MessagePrimitive.Root,{className:"cuadra-relative cuadra-grid cuadra-w-full cuadra-grid-cols-[auto_auto_1fr] cuadra-grid-rows-[auto_1fr] cuadra-py-3",children:d.jsx("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:d.jsx(T.MessagePrimitive.Parts,{components:{Text:({text:e})=>d.jsx(jt,{content:e||""})}})})})}function Oa({onThreadSelect:e}){const r=T.useThreadListItem(),t=T.useThread(g=>g.threadId),[n,i]=w.useState(null),o=r?.id===t,a=n===r?.id,[l,s]=w.useState(!1),[u,f]=w.useState(r?.title||""),[c,p]=w.useState(!1),[x,h]=w.useState(!1),b=async()=>{if(!r?.remoteId||!u||u===r.title){s(!1);return}try{h(!0);const g=window.__cuadraThreadListAdapter;g&&typeof g.rename=="function"&&await g.rename(r.remoteId,u),s(!1),p(!1)}catch{s(!1),p(!1)}finally{h(!1)}};return w.useEffect(()=>{r?.title&&!l&&f(r.title)},[r?.title,l]),r?d.jsx(T.ThreadListItemPrimitive.Root,{className:`group cuadra-relative cuadra-flex cuadra-items-center cuadra-gap-3 cuadra-rounded-lg cuadra-transition-colors cuadra-cursor-pointer cuadra-border cuadra-mb-2 ${o?"cuadra-bg-muted cuadra-border-border":"cuadra-border-transparent hover:cuadra-bg-muted hover:cuadra-border-border"}`,style:{marginBottom:"0.5rem"},onMouseEnter:()=>i(r.id),onMouseLeave:()=>i(null),children:d.jsxs(T.ThreadListItemPrimitive.Trigger,{className:"cuadra-p-3 cuadra-flex-1 cuadra-flex cuadra-items-center cuadra-justify-between cuadra-w-full cuadra-min-w-0 cuadra-cursor-pointer",onClick:()=>e?.(),children:[d.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-min-w-0 cuadra-flex-1 cuadra-items-start cuadra-text-left",children:l?d.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:g=>f(g.target.value),onKeyDown:g=>{g.key==="Enter"&&b(),g.key==="Escape"&&(s(!1),f(r.title||""))},disabled:x,autoFocus:!0,onClick:g=>g.stopPropagation()}):d.jsxs(d.Fragment,{children:[d.jsx("span",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-truncate font-brand",children:(r.title?.length||0)>60?`${r.title?.slice(0,60)}…`:r.title||"Chat"}),r.updatedAt&&d.jsx("span",{className:"cuadra-text-xs cuadra-text-muted-foreground cuadra-mt-1 font-brand",children:new Date(r.updatedAt).toLocaleDateString()})]})}),d.jsx("div",{className:"cuadra-ml-2 cuadra-flex-shrink-0 cuadra-w-6 cuadra-h-6 cuadra-flex cuadra-items-center cuadra-justify-center",children:(a||o||c)&&d.jsxs("div",{className:"cuadra-relative",children:[d.jsx("button",{className:"cuadra-p-1 cuadra-rounded hover:cuadra-bg-background/50 cuadra-transition-colors",onClick:g=>{g.stopPropagation(),p(!c)},"aria-label":"Thread options",children:d.jsx(qt,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"})}),c&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-z-40",onClick:()=>p(!1)}),d.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:l?d.jsx("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:g=>{g.stopPropagation(),b()},disabled:x,children:"Save"}):d.jsxs(d.Fragment,{children:[d.jsx("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:g=>{g.stopPropagation(),s(!0),f(r.title||""),p(!1)},children:"Rename"}),d.jsx("div",{className:"cuadra-border-t cuadra-border-border"}),d.jsx(T.ThreadListItemPrimitive.Delete,{asChild:!0,children:d.jsx("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:g=>{g.stopPropagation(),p(!1)},children:"Delete"})})]})})]})]})})]})}):null}function qe({onThreadSelect:e}){return d.jsxs(T.ThreadListPrimitive.Root,{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:[d.jsx("div",{className:"cuadra-border-b cuadra-border-border cuadra-flex cuadra-items-center cuadra-justify-between cuadra-transition-all cuadra-duration-300 cuadra-h-16 cuadra-px-4",children:d.jsx("h3",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground cuadra-text-nowrap font-brand",children:"Chat History"})}),d.jsxs("div",{className:"cuadra-flex-1 cuadra-overflow-y-auto cuadra-p-2 scrollbar-thin",children:[d.jsx(T.ThreadListPrimitive.New,{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?.(),children:d.jsx("div",{className:"cuadra-flex-1 cuadra-min-w-0",children:d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[d.jsx(Jt,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-muted-foreground"}),d.jsx("h4",{className:"cuadra-text-sm cuadra-font-normal cuadra-text-foreground font-brand",children:"New Chat"})]})})}),d.jsx("div",{className:"cuadra-my-2 cuadra-border-t cuadra-border-border"}),d.jsx(T.ThreadListPrimitive.Items,{components:{ThreadListItem:r=>d.jsx(Oa,{...r,onThreadSelect:e})}})]})]})}const Ua=`
|
|
19
19
|
@keyframes rotate {
|
|
20
20
|
100% { transform: rotate(1turn); }
|
|
21
21
|
}
|
|
22
|
-
`,xe=({children:e,className:r="",paddingX:t="px-0",paddingY:n="py-0",borderSizePx:i=4,style:o,contentStyle:a,rotating:l=!1})=>d.jsxs(d.Fragment,{children:[d.jsx("style",{children:$a}),d.jsxs("div",{className:`cuadra-relative cuadra-bg-background md:cuadra-rounded-xl cuadra-overflow-hidden ${r}`,style:{padding:i,...o},children:[d.jsx("div",{className:"cuadra-absolute md:cuadra-rounded-xl",style:l?{left:"-100%",top:"-100%",width:"300%",height:"300%",backgroundImage:"conic-gradient(#ff8308, #ff5043, #392bd5, #ff8308)",backgroundRepeat:"no-repeat",backgroundSize:"cover",backgroundPosition:"center",animation:"rotate 4s linear infinite"}:{backgroundImage:"linear-gradient(to right, #ff8308, #ff5043, #392bd5)",backgroundSize:"cover",backgroundPosition:"center",backgroundRepeat:"no-repeat",top:"0",left:"0",width:"100%",height:"100%"}}),d.jsx("div",{className:`cuadra-relative cuadra-bg-background cuadra-h-full cuadra-z-10 cuadra-flex cuadra-flex-col cuadra-overflow-hidden ${t} ${n}`,style:{borderRadius:"calc(0.75rem - 4px)",...a},children:e})]})]}),Oa=({className:e="",theme:r="system"})=>{const t=()=>{if(typeof window>"u")return"light";if(r==="system"){const a=localStorage.getItem("theme");return a||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")}return r},[n,i]=w.useState(t);w.useEffect(()=>{r!=="system"&&i(r)},[r]),w.useEffect(()=>{const a=document.documentElement;a.classList.remove("light","dark"),a.classList.add(n),r==="system"&&localStorage.setItem("theme",n)},[n,r]);const o=()=>{r==="system"&&i(a=>a==="light"?"dark":"light")};return d.jsx("button",{type:"button","aria-label":"Toggle theme",onClick:o,disabled:r!=="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:d.jsx(Ot,{className:`cuadra-h-4 cuadra-w-4 cuadra-transition-colors ${n==="dark"?"cuadra-text-primary":"cuadra-text-gray-400"}`})})},Ke=({currentModel:e,models:r,modelsLoading:t,modelsError:n,onModelChange:i,hideModelSelector:o=!1,showThemeToggle:a=!0,theme:l="system",onMobileMenuClick:s,showMobileMenuButton:c=!1})=>{const[f,u]=w.useState(!1),p=w.useRef(null);w.useEffect(()=>{const h=b=>{p.current&&!p.current.contains(b.target)&&u(!1)};return f&&document.addEventListener("mousedown",h),()=>{document.removeEventListener("mousedown",h)}},[f]);const g=r.find(h=>h.id===e);return d.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:[d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[c&&d.jsx("button",{type:"button",onClick:s,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:d.jsx(Vt,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),a&&d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:d.jsx(Oa,{theme:l})})]}),d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 md:cuadra-ml-0 cuadra-ml-auto",children:[!o&&d.jsx("label",{className:"cuadra-hidden md:cuadra-inline cuadra-text-sm cuadra-text-muted-foreground cuadra-font-brand",children:"Model"}),o?null:t?d.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-border cuadra-px-3 cuadra-py-2 cuadra-bg-muted",children:d.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading..."})}):n?d.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:d.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):d.jsxs("div",{ref:p,className:"cuadra-relative cuadra-w-48",children:[d.jsxs("button",{type:"button",onClick:()=>u(!f),disabled:t||r.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:[d.jsx("span",{className:g?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:g?.name||"Select model"}),d.jsx(zt,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),f&&r.length>0&&d.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:d.jsx("div",{className:"cuadra-p-1",children:r.map(h=>d.jsxs("button",{type:"button",onClick:()=>{i(h.id),u(!1)},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===h.id?"cuadra-bg-secondary cuadra-text-secondary-foreground":"hover:cuadra-bg-secondary/50"}`,children:[e===h.id&&d.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:d.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"none",viewBox:"0 0 16 16",children:d.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"})})}),d.jsx("span",{children:h.name})]},h.id))})})]})]})]})},Ua=w.createContext(void 0),be=({children:e,value:r})=>d.jsx(Ua.Provider,{value:r,children:e});function Ba(){w.useEffect(()=>{if(document.querySelector("style[data-cuadra-uikit]"))return;const r=document.createElement("div");r.className="cuadra-flex",document.body.appendChild(r);const t=window.getComputedStyle(r).display==="flex";if(document.body.removeChild(r),t)return;const n=document.createElement("link");n.setAttribute("data-cuadra-uikit","true"),n.rel="stylesheet",n.type="text/css";const i=["/node_modules/@cuadra-ai/uikit/dist/uikit.css",new URL("../dist/uikit.css",typeof document>"u"?require("url").pathToFileURL(__filename).href:fe&&fe.tagName.toUpperCase()==="SCRIPT"&&fe.src||new URL("index.cjs",document.baseURI).href).href];let o=!1;for(const a of i)if(n.href=a,n.onload=()=>{o=!0},n.onerror=()=>{},document.head.appendChild(n),o)break},[])}const Wa=({config:e})=>{Ba();const{baseUrl:r,proxyUrl:t,sessionToken:n,mode:i="multiChat",modelMode:o="fixed",modelId:a,onModelChange:l,ephemeral:s=!1,systemPrompt:c,initialThreadId:f,welcomeTitle:u,welcomeSubtitle:p,extraTopPadding:g,suggestions:h,inputPlaceholder:b,showThemeToggle:x=!0,theme:k="system",onError:y,onChatCreated:C,onUserMessage:A,onThreadIdUpdate:j}=e,[v,N]=w.useState(!1),D=t||r||"",B=!!t,m=w.useMemo(()=>new Ze(D,n||void 0,B),[D,n,B]),[L,ee]=w.useState(null),[$,V]=w.useState(!1),[G,Ae]=w.useState(null),[jt,Se]=w.useState(!1);w.useEffect(()=>{i==="multiChat"&&Se(!0)},[i]);const W=w.useCallback(async()=>{if(o==="selector"){V(!0),Ae(null);try{const I=await m.listModels();ee(I)}catch(I){Ae(I instanceof Error?I:new Error("Failed to load models"))}finally{V(!1)}}},[m,o]);w.useEffect(()=>{o==="selector"&&W()},[o,W]),w.useEffect(()=>(typeof window<"u"&&(window.__cuadraUIKitRefetchModels=W),()=>{typeof window<"u"&&delete window.__cuadraUIKitRefetchModels}),[W]);const[E,Ie]=w.useState(o==="fixed"&&a||null),Ne=w.useRef(E),Z=w.useCallback(I=>{const J=Ne.current;Ie(I),Ne.current=I,l?.(I),J!==null&&J!==I&&i==="multiChat"&&setTimeout(()=>{const H=window.__cuadraThreadListRuntime;if(H?.threads?.switchToNewThread)try{H.threads.switchToNewThread()}catch{}else if(H?.threads?.createThread)try{H.threads.createThread()}catch{}else if(H?.switchToNewThread)try{H.switchToNewThread()}catch{}},100)},[l,i]);w.useEffect(()=>{if(o==="selector"&&L?.items&&L.items.length>0&&!E){const I=L.items[0];if(I?.id){const J=I.id;Ie(J),l?.(J)}}},[o,L?.items,E,l]);const Tt=o==="fixed"?!!a:!!E,te=w.useMemo(()=>(L?.items||[]).filter(I=>I?.id&&I?.displayName).map(I=>({id:I.id,name:I.displayName})),[L]),de=w.useMemo(()=>({currentModelId:E||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,refetchModels:W}),[E,te,$,G,Z,W]);return o==="selector"&&$||i==="multiChat"&&jt?d.jsx(be,{value:de,children:d.jsx(xe,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:d.jsx(Ge,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"})})})}):o==="selector"&&!Tt&&G?d.jsx(be,{value:de,children:d.jsx(xe,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:d.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:d.jsx("p",{className:"cuadra-text-sm cuadra-text-destructive font-brand",children:"Failed to load models"})})})})}):d.jsx("div",{className:"cuadra-uikit cuadra-h-full cuadra-w-full",style:{height:"100%",width:"100%"},children:d.jsx(be,{value:de,children:d.jsx(er,{baseUrl:B?D:r||D,sessionToken:n,isProxyMode:B,mode:i,modelMode:o,modelId:E||a||void 0,onModelChange:Z,ephemeral:s,systemPrompt:c,initialThreadId:f,onError:y,onChatCreated:C,onUserMessage:A,onThreadIdUpdate:j,onChatsLoaded:()=>{i==="multiChat"&&Se(!1)},children:d.jsx(xe,{paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",className:`cuadra-h-full ${e.containerClass||""}`,borderSizePx:4,style:{height:"100%"},children:d.jsx("div",{className:"cuadra-h-full cuadra-flex cuadra-relative",style:{height:"100%"},children:i==="multiChat"?d.jsxs(d.Fragment,{children:[v&&typeof document<"u"&&Le.createPortal(d.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-bg-black/50 cuadra-z-40 md:cuadra-hidden",onClick:()=>N(!1)}),document.body),typeof document<"u"&&d.jsxs(d.Fragment,{children:[d.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:d.jsx(qe,{onThreadSelect:()=>N(!1)})}),v&&Le.createPortal(d.jsx("div",{className:"cuadra-block md:cuadra-hidden !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-screen cuadra-w-80 cuadra-fixed cuadra-z-50 cuadra-top-0 cuadra-left-0 cuadra-translate-x-0",style:{borderRightWidth:"1px"},children:d.jsx(qe,{onThreadSelect:()=>N(!1)})}),document.body)]}),d.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[o==="selector"&&d.jsx(Ke,{currentModel:E||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,showThemeToggle:x,theme:k,onMobileMenuClick:()=>N(!v),showMobileMenuButton:i==="multiChat"}),d.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:d.jsx(He,{welcomeTitle:u,welcomeSubtitle:p,extraTopPadding:g,suggestions:h,inputPlaceholder:b})})]})]}):d.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[o==="selector"&&d.jsx(Ke,{currentModel:E||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,showThemeToggle:x,theme:k}),d.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:d.jsx(He,{welcomeTitle:u,welcomeSubtitle:p,extraTopPadding:g,suggestions:h})})]})})})})})})};function Ha(e){const r={baseUrl:e.baseUrl,proxyUrl:e.proxyUrl,sessionToken:e.sessionToken||null,mode:e.mode||"multiChat",modelMode:e.modelMode||"fixed",modelId:e.modelId,onModelChange:e.onModelChange,ephemeral:e.ephemeral,systemPrompt:e.systemPrompt,initialThreadId:e.initialThreadId,language:e.language,welcomeTitle:e.welcomeTitle,welcomeSubtitle:e.welcomeSubtitle,extraTopPadding:e.extraTopPadding,suggestions:e.suggestions,inputPlaceholder:e.inputPlaceholder,onError:e.onError,onChatCreated:e.onChatCreated,onUserMessage:e.onUserMessage,onThreadIdUpdate:e.onThreadIdUpdate,showThemeToggle:e.showThemeToggle,theme:e.theme,containerClass:e.className};return d.jsx(Wa,{config:r})}exports.CuadraChat=Ha;
|
|
22
|
+
`,xe=({children:e,className:r="",paddingX:t="px-0",paddingY:n="py-0",borderSizePx:i=4,style:o,contentStyle:a,rotating:l=!1})=>d.jsxs(d.Fragment,{children:[d.jsx("style",{children:Ua}),d.jsxs("div",{className:`cuadra-relative cuadra-bg-background md:cuadra-rounded-xl cuadra-overflow-hidden ${r}`,style:{padding:i,...o},children:[d.jsx("div",{className:"cuadra-absolute md:cuadra-rounded-xl",style:l?{left:"-100%",top:"-100%",width:"300%",height:"300%",backgroundImage:"conic-gradient(#F4633A, #FF7A4D, #FF8C5C, #F4633A, #FF7A4D, #FF8C5C)",backgroundRepeat:"no-repeat",backgroundSize:"cover",backgroundPosition:"center",animation:"rotate 4s linear infinite"}:{backgroundImage:"linear-gradient(to right, #F4633A, #FF7A4D, #FF8C5C, #F4633A)",backgroundSize:"cover",backgroundPosition:"center",backgroundRepeat:"no-repeat",top:"0",left:"0",width:"100%",height:"100%"}}),d.jsx("div",{className:`cuadra-relative cuadra-bg-background cuadra-h-full cuadra-z-10 cuadra-flex cuadra-flex-col cuadra-overflow-hidden ${t} ${n}`,style:{borderRadius:"calc(0.75rem - 4px)",...a},children:e})]})]}),Ba=({className:e="",theme:r="system"})=>{const t=()=>{if(typeof window>"u")return"light";if(r==="system"){const a=localStorage.getItem("theme");return a||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")}return r},[n,i]=w.useState(t);w.useEffect(()=>{r!=="system"&&i(r)},[r]),w.useEffect(()=>{const a=document.documentElement;a.classList.remove("light","dark"),a.classList.add(n),r==="system"&&localStorage.setItem("theme",n)},[n,r]);const o=()=>{r==="system"&&i(a=>a==="light"?"dark":"light")};return d.jsx("button",{type:"button","aria-label":"Toggle theme",onClick:o,disabled:r!=="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:d.jsx(Ut,{className:`cuadra-h-4 cuadra-w-4 cuadra-transition-colors ${n==="dark"?"cuadra-text-primary":"cuadra-text-gray-400"}`})})},Ke=({currentModel:e,models:r,modelsLoading:t,modelsError:n,onModelChange:i,hideModelSelector:o=!1,showThemeToggle:a=!0,theme:l="system",onMobileMenuClick:s,showMobileMenuButton:u=!1})=>{const[f,c]=w.useState(!1),p=w.useRef(null);w.useEffect(()=>{const h=b=>{p.current&&!p.current.contains(b.target)&&c(!1)};return f&&document.addEventListener("mousedown",h),()=>{document.removeEventListener("mousedown",h)}},[f]);const x=r.find(h=>h.id===e);return d.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:[d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:[u&&d.jsx("button",{type:"button",onClick:s,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:d.jsx(Gt,{className:"cuadra-h-4 cuadra-w-4 cuadra-text-foreground"})}),a&&d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2",children:d.jsx(Ba,{theme:l})})]}),d.jsxs("div",{className:"cuadra-flex cuadra-items-center cuadra-gap-2 md:cuadra-ml-0 cuadra-ml-auto",children:[!o&&d.jsx("label",{className:"cuadra-hidden md:cuadra-inline cuadra-text-sm cuadra-text-muted-foreground cuadra-font-brand",children:"Model"}),o?null:t?d.jsx("div",{className:"cuadra-w-48 cuadra-rounded-md cuadra-border cuadra-border-border cuadra-px-3 cuadra-py-2 cuadra-bg-muted",children:d.jsx("span",{className:"cuadra-text-muted-foreground cuadra-text-sm cuadra-font-brand",children:"Loading..."})}):n?d.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:d.jsx("span",{className:"cuadra-text-destructive cuadra-text-sm cuadra-font-brand",children:"Failed to load models"})}):d.jsxs("div",{ref:p,className:"cuadra-relative cuadra-w-48",children:[d.jsxs("button",{type:"button",onClick:()=>c(!f),disabled:t||r.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:[d.jsx("span",{className:x?"cuadra-text-foreground":"cuadra-text-muted-foreground",children:x?.name||"Select model"}),d.jsx($t,{className:"cuadra-ml-2 cuadra-h-4 cuadra-w-4 cuadra-opacity-50"})]}),f&&r.length>0&&d.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:d.jsx("div",{className:"cuadra-p-1",children:r.map(h=>d.jsxs("button",{type:"button",onClick:()=>{i(h.id),c(!1)},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===h.id?"cuadra-bg-secondary cuadra-text-secondary-foreground":"hover:cuadra-bg-secondary/50"}`,children:[e===h.id&&d.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:d.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"none",viewBox:"0 0 16 16",children:d.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"})})}),d.jsx("span",{children:h.name})]},h.id))})})]})]})]})},Wa=w.createContext(void 0),be=({children:e,value:r})=>d.jsx(Wa.Provider,{value:r,children:e});function Ha(){w.useEffect(()=>{if(document.querySelector("style[data-cuadra-uikit]"))return;const r=document.createElement("div");r.className="cuadra-flex",document.body.appendChild(r);const t=window.getComputedStyle(r).display==="flex";if(document.body.removeChild(r),t)return;const n=document.createElement("link");n.setAttribute("data-cuadra-uikit","true"),n.rel="stylesheet",n.type="text/css";const i=["/node_modules/@cuadra-ai/uikit/dist/uikit.css",new URL("../dist/uikit.css",typeof document>"u"?require("url").pathToFileURL(__filename).href:fe&&fe.tagName.toUpperCase()==="SCRIPT"&&fe.src||new URL("index.cjs",document.baseURI).href).href];let o=!1;for(const a of i)if(n.href=a,n.onload=()=>{o=!0},n.onerror=()=>{},document.head.appendChild(n),o)break},[])}const qa=({config:e})=>{Ha();const{baseUrl:r,proxyUrl:t,sessionToken:n,mode:i="multiChat",modelMode:o="fixed",modelId:a,onModelChange:l,ephemeral:s=!1,systemPrompt:u,initialThreadId:f,welcomeTitle:c,welcomeSubtitle:p,extraTopPadding:x,suggestions:h,inputPlaceholder:b,showThemeToggle:g=!0,theme:k="system",onError:y,onChatCreated:C,onUserMessage:A,onThreadIdUpdate:j}=e,[v,M]=w.useState(!1),D=t||r||"",B=!!t,m=w.useMemo(()=>new Ze(D,n||void 0,B),[D,n,B]),[L,ee]=w.useState(null),[$,V]=w.useState(!1),[G,Ae]=w.useState(null),[Tt,Ie]=w.useState(!1);w.useEffect(()=>{i==="multiChat"&&Ie(!0)},[i]);const W=w.useCallback(async()=>{if(o==="selector"){V(!0),Ae(null);try{const S=await m.listModels();ee(S)}catch(S){Ae(S instanceof Error?S:new Error("Failed to load models"))}finally{V(!1)}}},[m,o]);w.useEffect(()=>{o==="selector"&&W()},[o,W]),w.useEffect(()=>(typeof window<"u"&&(window.__cuadraUIKitRefetchModels=W),()=>{typeof window<"u"&&delete window.__cuadraUIKitRefetchModels}),[W]);const[R,Se]=w.useState(o==="fixed"&&a||null),Ne=w.useRef(R),Z=w.useCallback(S=>{const J=Ne.current;Se(S),Ne.current=S,l?.(S),J!==null&&J!==S&&i==="multiChat"&&setTimeout(()=>{const H=window.__cuadraThreadListRuntime;if(H?.threads?.switchToNewThread)try{H.threads.switchToNewThread()}catch{}else if(H?.threads?.createThread)try{H.threads.createThread()}catch{}else if(H?.switchToNewThread)try{H.switchToNewThread()}catch{}},100)},[l,i]);w.useEffect(()=>{if(o==="selector"&&L?.items&&L.items.length>0&&!R){const S=L.items[0];if(S?.id){const J=S.id;Se(J),l?.(J)}}},[o,L?.items,R,l]);const At=o==="fixed"?!!a:!!R,te=w.useMemo(()=>(L?.items||[]).filter(S=>S?.id&&S?.displayName).map(S=>({id:S.id,name:S.displayName})),[L]),de=w.useMemo(()=>({currentModelId:R||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,refetchModels:W}),[R,te,$,G,Z,W]);return o==="selector"&&$||i==="multiChat"&&Tt?d.jsx(be,{value:de,children:d.jsx(xe,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:d.jsx(Ge,{className:"cuadra-h-6 cuadra-w-6 cuadra-animate-spin cuadra-text-muted-foreground"})})})}):o==="selector"&&!At&&G?d.jsx(be,{value:de,children:d.jsx(xe,{className:"cuadra-h-full",paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",children:d.jsx("div",{className:"cuadra-flex cuadra-items-center cuadra-justify-center cuadra-h-full",children:d.jsx("div",{className:"cuadra-flex cuadra-flex-col cuadra-items-center cuadra-gap-2",children:d.jsx("p",{className:"cuadra-text-sm cuadra-text-destructive font-brand",children:"Failed to load models"})})})})}):d.jsx("div",{className:"cuadra-uikit cuadra-h-full cuadra-w-full",style:{height:"100%",width:"100%"},children:d.jsx(be,{value:de,children:d.jsx(tr,{baseUrl:B?D:r||D,sessionToken:n,isProxyMode:B,mode:i,modelMode:o,modelId:R||a||void 0,onModelChange:Z,ephemeral:s,systemPrompt:u,initialThreadId:f,onError:y,onChatCreated:C,onUserMessage:A,onThreadIdUpdate:j,onChatsLoaded:()=>{i==="multiChat"&&Ie(!1)},children:d.jsx(xe,{paddingX:"cuadra-px-0",paddingY:"cuadra-py-0",className:`cuadra-h-full ${e.containerClass||""}`,borderSizePx:4,style:{height:"100%"},children:d.jsx("div",{className:"cuadra-h-full cuadra-flex cuadra-relative",style:{height:"100%"},children:i==="multiChat"?d.jsxs(d.Fragment,{children:[v&&typeof document<"u"&&Le.createPortal(d.jsx("div",{className:"cuadra-fixed cuadra-inset-0 cuadra-bg-black/50 cuadra-z-40 md:cuadra-hidden",onClick:()=>M(!1)}),document.body),typeof document<"u"&&d.jsxs(d.Fragment,{children:[d.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:d.jsx(qe,{onThreadSelect:()=>M(!1)})}),v&&Le.createPortal(d.jsx("div",{className:"cuadra-block md:cuadra-hidden !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-screen cuadra-w-80 cuadra-fixed cuadra-z-50 cuadra-top-0 cuadra-left-0 cuadra-translate-x-0",style:{borderRightWidth:"1px"},children:d.jsx(qe,{onThreadSelect:()=>M(!1)})}),document.body)]}),d.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[o==="selector"&&d.jsx(Ke,{currentModel:R||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,showThemeToggle:g,theme:k,onMobileMenuClick:()=>M(!v),showMobileMenuButton:i==="multiChat"}),d.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:d.jsx(He,{welcomeTitle:c,welcomeSubtitle:p,extraTopPadding:x,suggestions:h,inputPlaceholder:b})})]})]}):d.jsxs("div",{className:"cuadra-flex-1 cuadra-flex cuadra-flex-col",children:[o==="selector"&&d.jsx(Ke,{currentModel:R||"",models:te,modelsLoading:$,modelsError:G,onModelChange:Z,showThemeToggle:g,theme:k}),d.jsx("div",{className:"cuadra-flex-1 cuadra-relative cuadra-min-h-0 cuadra-space-y-4 cuadra-p-4",children:d.jsx(He,{welcomeTitle:c,welcomeSubtitle:p,extraTopPadding:x,suggestions:h})})]})})})})})})};function Ka(e){const r={baseUrl:e.baseUrl,proxyUrl:e.proxyUrl,sessionToken:e.sessionToken||null,mode:e.mode||"multiChat",modelMode:e.modelMode||"fixed",modelId:e.modelId,onModelChange:e.onModelChange,ephemeral:e.ephemeral,systemPrompt:e.systemPrompt,initialThreadId:e.initialThreadId,language:e.language,welcomeTitle:e.welcomeTitle,welcomeSubtitle:e.welcomeSubtitle,extraTopPadding:e.extraTopPadding,suggestions:e.suggestions,inputPlaceholder:e.inputPlaceholder,onError:e.onError,onChatCreated:e.onChatCreated,onUserMessage:e.onUserMessage,onThreadIdUpdate:e.onThreadIdUpdate,showThemeToggle:e.showThemeToggle,theme:e.theme,containerClass:e.className};return d.jsx(qa,{config:r})}exports.CuadraChat=Ka;
|
|
23
23
|
//# sourceMappingURL=index.cjs.map
|