teodor-new-chat-ui 3.0.2 → 3.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -1,13 +1,13 @@
1
- (function(ne,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("react/jsx-runtime"),require("react"),require("lucide-react"),require("@radix-ui/react-slot"),require("class-variance-authority"),require("clsx"),require("tailwind-merge"),require("react-dom"),require("react-markdown"),require("remark-gfm")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","lucide-react","@radix-ui/react-slot","class-variance-authority","clsx","tailwind-merge","react-dom","react-markdown","remark-gfm"],i):(ne=typeof globalThis<"u"?globalThis:ne||self,i(ne.NewChatUI={},ne.jsxRuntime,ne.React,ne.LucideReact,ne.reactSlot,ne.classVarianceAuthority,ne.clsx,ne.tailwindMerge,ne.ReactDOM,ne.ReactMarkdown,ne.remarkGfm))})(this,function(ne,i,T,J,Ie,Ht,jd,Kd,ms,Rd,Gd){"use strict";var Mn=typeof document<"u"?document.currentScript:null;function bs(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const d=bs(T),hr=bs(ms);function vs(e,t){return function(){return e.apply(t,arguments)}}const{toString:qd}=Object.prototype,{getPrototypeOf:Dn}=Object,{iterator:gr,toStringTag:ws}=Symbol,mr=(e=>t=>{const r=qd.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Le=e=>(e=e.toLowerCase(),t=>mr(t)===e),br=e=>t=>typeof t===e,{isArray:Ct}=Array,Et=br("undefined");function zt(e){return e!==null&&!Et(e)&&e.constructor!==null&&!Et(e.constructor)&&Ce(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const ys=Le("ArrayBuffer");function Xd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ys(e.buffer),t}const Yd=br("string"),Ce=br("function"),xs=br("number"),Wt=e=>e!==null&&typeof e=="object",Jd=e=>e===!0||e===!1,vr=e=>{if(mr(e)!=="object")return!1;const t=Dn(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(ws in e)&&!(gr in e)},Zd=e=>{if(!Wt(e)||zt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Qd=Le("Date"),eu=Le("File"),tu=Le("Blob"),ru=Le("FileList"),nu=e=>Wt(e)&&Ce(e.pipe),ou=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ce(e.append)&&((t=mr(e))==="formdata"||t==="object"&&Ce(e.toString)&&e.toString()==="[object FormData]"))},su=Le("URLSearchParams"),[au,iu,cu,lu]=["ReadableStream","Request","Response","Headers"].map(Le),du=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Vt(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),Ct(e))for(n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else{if(zt(e))return;const s=r?Object.getOwnPropertyNames(e):Object.keys(e),a=s.length;let c;for(n=0;n<a;n++)c=s[n],t.call(null,e[c],c,e)}}function Ss(e,t){if(zt(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,o;for(;n-- >0;)if(o=r[n],t===o.toLowerCase())return o;return null}const ft=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Cs=e=>!Et(e)&&e!==ft;function Ln(){const{caseless:e,skipUndefined:t}=Cs(this)&&this||{},r={},n=(o,s)=>{const a=e&&Ss(r,s)||s;vr(r[a])&&vr(o)?r[a]=Ln(r[a],o):vr(o)?r[a]=Ln({},o):Ct(o)?r[a]=o.slice():(!t||!Et(o))&&(r[a]=o)};for(let o=0,s=arguments.length;o<s;o++)arguments[o]&&Vt(arguments[o],n);return r}const uu=(e,t,r,{allOwnKeys:n}={})=>(Vt(t,(o,s)=>{r&&Ce(o)?e[s]=vs(o,r):e[s]=o},{allOwnKeys:n}),e),fu=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),pu=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},hu=(e,t,r,n)=>{let o,s,a;const c={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],(!n||n(a,e,t))&&!c[a]&&(t[a]=e[a],c[a]=!0);e=r!==!1&&Dn(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},gu=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},mu=e=>{if(!e)return null;if(Ct(e))return e;let t=e.length;if(!xs(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},bu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Dn(Uint8Array)),vu=(e,t)=>{const n=(e&&e[gr]).call(e);let o;for(;(o=n.next())&&!o.done;){const s=o.value;t.call(e,s[0],s[1])}},wu=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},yu=Le("HTMLFormElement"),xu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),Es=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Su=Le("RegExp"),Ns=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Vt(r,(o,s)=>{let a;(a=t(o,s,e))!==!1&&(n[s]=a||o)}),Object.defineProperties(e,n)},Cu=e=>{Ns(e,(t,r)=>{if(Ce(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(Ce(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Eu=(e,t)=>{const r={},n=o=>{o.forEach(s=>{r[s]=!0})};return Ct(e)?n(e):n(String(e).split(t)),r},Nu=()=>{},Tu=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Au(e){return!!(e&&Ce(e.append)&&e[ws]==="FormData"&&e[gr])}const Pu=e=>{const t=new Array(10),r=(n,o)=>{if(Wt(n)){if(t.indexOf(n)>=0)return;if(zt(n))return n;if(!("toJSON"in n)){t[o]=n;const s=Ct(n)?[]:{};return Vt(n,(a,c)=>{const l=r(a,o+1);!Et(l)&&(s[c]=l)}),t[o]=void 0,s}}return n};return r(e,0)},Iu=Le("AsyncFunction"),_u=e=>e&&(Wt(e)||Ce(e))&&Ce(e.then)&&Ce(e.catch),Ts=((e,t)=>e?setImmediate:t?((r,n)=>(ft.addEventListener("message",({source:o,data:s})=>{o===ft&&s===r&&n.length&&n.shift()()},!1),o=>{n.push(o),ft.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",Ce(ft.postMessage)),Ou=typeof queueMicrotask<"u"?queueMicrotask.bind(ft):typeof process<"u"&&process.nextTick||Ts,S={isArray:Ct,isArrayBuffer:ys,isBuffer:zt,isFormData:ou,isArrayBufferView:Xd,isString:Yd,isNumber:xs,isBoolean:Jd,isObject:Wt,isPlainObject:vr,isEmptyObject:Zd,isReadableStream:au,isRequest:iu,isResponse:cu,isHeaders:lu,isUndefined:Et,isDate:Qd,isFile:eu,isBlob:tu,isRegExp:Su,isFunction:Ce,isStream:nu,isURLSearchParams:su,isTypedArray:bu,isFileList:ru,forEach:Vt,merge:Ln,extend:uu,trim:du,stripBOM:fu,inherits:pu,toFlatObject:hu,kindOf:mr,kindOfTest:Le,endsWith:gu,toArray:mu,forEachEntry:vu,matchAll:wu,isHTMLForm:yu,hasOwnProperty:Es,hasOwnProp:Es,reduceDescriptors:Ns,freezeMethods:Cu,toObjectSet:Eu,toCamelCase:xu,noop:Nu,toFiniteNumber:Tu,findKey:Ss,global:ft,isContextDefined:Cs,isSpecCompliantForm:Au,toJSONObject:Pu,isAsyncFn:Iu,isThenable:_u,setImmediate:Ts,asap:Ou,isIterable:e=>e!=null&&Ce(e[gr])};function oe(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o,this.status=o.status?o.status:null)}S.inherits(oe,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:S.toJSONObject(this.config),code:this.code,status:this.status}}});const As=oe.prototype,Ps={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Ps[e]={value:e}}),Object.defineProperties(oe,Ps),Object.defineProperty(As,"isAxiosError",{value:!0}),oe.from=(e,t,r,n,o,s)=>{const a=Object.create(As);S.toFlatObject(e,a,function(u){return u!==Error.prototype},f=>f!=="isAxiosError");const c=e&&e.message?e.message:"Error",l=t==null&&e?e.code:t;return oe.call(a,c,l,r,n,o),e&&a.cause==null&&Object.defineProperty(a,"cause",{value:e,configurable:!0}),a.name=e&&e.name||"Error",s&&Object.assign(a,s),a};const ku=null;function Fn(e){return S.isPlainObject(e)||S.isArray(e)}function Is(e){return S.endsWith(e,"[]")?e.slice(0,-2):e}function _s(e,t,r){return e?e.concat(t).map(function(o,s){return o=Is(o),!r&&s?"["+o+"]":o}).join(r?".":""):t}function Mu(e){return S.isArray(e)&&!e.some(Fn)}const Du=S.toFlatObject(S,{},null,function(t){return/^is[A-Z]/.test(t)});function wr(e,t,r){if(!S.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=S.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,b){return!S.isUndefined(b[h])});const n=r.metaTokens,o=r.visitor||u,s=r.dots,a=r.indexes,l=(r.Blob||typeof Blob<"u"&&Blob)&&S.isSpecCompliantForm(t);if(!S.isFunction(o))throw new TypeError("visitor must be a function");function f(m){if(m===null)return"";if(S.isDate(m))return m.toISOString();if(S.isBoolean(m))return m.toString();if(!l&&S.isBlob(m))throw new oe("Blob is not supported. Use a Buffer instead.");return S.isArrayBuffer(m)||S.isTypedArray(m)?l&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function u(m,h,b){let w=m;if(m&&!b&&typeof m=="object"){if(S.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(S.isArray(m)&&Mu(m)||(S.isFileList(m)||S.endsWith(h,"[]"))&&(w=S.toArray(m)))return h=Is(h),w.forEach(function(y,C){!(S.isUndefined(y)||y===null)&&t.append(a===!0?_s([h],C,s):a===null?h:h+"[]",f(y))}),!1}return Fn(m)?!0:(t.append(_s(b,h,s),f(m)),!1)}const p=[],g=Object.assign(Du,{defaultVisitor:u,convertValue:f,isVisitable:Fn});function v(m,h){if(!S.isUndefined(m)){if(p.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));p.push(m),S.forEach(m,function(w,x){(!(S.isUndefined(w)||w===null)&&o.call(t,w,S.isString(x)?x.trim():x,h,g))===!0&&v(w,h?h.concat(x):[x])}),p.pop()}}if(!S.isObject(e))throw new TypeError("data must be an object");return v(e),t}function Os(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function $n(e,t){this._pairs=[],e&&wr(e,this,t)}const ks=$n.prototype;ks.append=function(t,r){this._pairs.push([t,r])},ks.toString=function(t){const r=t?function(n){return t.call(this,n,Os)}:Os;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};function Lu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ms(e,t,r){if(!t)return e;const n=r&&r.encode||Lu;S.isFunction(r)&&(r={serialize:r});const o=r&&r.serialize;let s;if(o?s=o(t,r):s=S.isURLSearchParams(t)?t.toString():new $n(t,r).toString(n),s){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}class Ds{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){S.forEach(this.handlers,function(n){n!==null&&t(n)})}}const Ls={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Fu={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:$n,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Bn=typeof window<"u"&&typeof document<"u",Un=typeof navigator=="object"&&navigator||void 0,$u=Bn&&(!Un||["ReactNative","NativeScript","NS"].indexOf(Un.product)<0),Bu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Uu=Bn&&window.location.href||"http://localhost",we={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Bn,hasStandardBrowserEnv:$u,hasStandardBrowserWebWorkerEnv:Bu,navigator:Un,origin:Uu},Symbol.toStringTag,{value:"Module"})),...Fu};function Hu(e,t){return wr(e,new we.classes.URLSearchParams,{visitor:function(r,n,o,s){return we.isNode&&S.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function zu(e){return S.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Wu(e){const t={},r=Object.keys(e);let n;const o=r.length;let s;for(n=0;n<o;n++)s=r[n],t[s]=e[s];return t}function Fs(e){function t(r,n,o,s){let a=r[s++];if(a==="__proto__")return!0;const c=Number.isFinite(+a),l=s>=r.length;return a=!a&&S.isArray(o)?o.length:a,l?(S.hasOwnProp(o,a)?o[a]=[o[a],n]:o[a]=n,!c):((!o[a]||!S.isObject(o[a]))&&(o[a]=[]),t(r,n,o[a],s)&&S.isArray(o[a])&&(o[a]=Wu(o[a])),!c)}if(S.isFormData(e)&&S.isFunction(e.entries)){const r={};return S.forEachEntry(e,(n,o)=>{t(zu(n),o,r,0)}),r}return null}function Vu(e,t,r){if(S.isString(e))try{return(t||JSON.parse)(e),S.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const jt={transitional:Ls,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",o=n.indexOf("application/json")>-1,s=S.isObject(t);if(s&&S.isHTMLForm(t)&&(t=new FormData(t)),S.isFormData(t))return o?JSON.stringify(Fs(t)):t;if(S.isArrayBuffer(t)||S.isBuffer(t)||S.isStream(t)||S.isFile(t)||S.isBlob(t)||S.isReadableStream(t))return t;if(S.isArrayBufferView(t))return t.buffer;if(S.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Hu(t,this.formSerializer).toString();if((c=S.isFileList(t))||n.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return wr(c?{"files[]":t}:t,l&&new l,this.formSerializer)}}return s||o?(r.setContentType("application/json",!1),Vu(t)):t}],transformResponse:[function(t){const r=this.transitional||jt.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(S.isResponse(t)||S.isReadableStream(t))return t;if(t&&S.isString(t)&&(n&&!this.responseType||o)){const a=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(c){if(a)throw c.name==="SyntaxError"?oe.from(c,oe.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:we.classes.FormData,Blob:we.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};S.forEach(["delete","get","head","post","put","patch"],e=>{jt.headers[e]={}});const ju=S.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Ku=e=>{const t={};let r,n,o;return e&&e.split(`
2
- `).forEach(function(a){o=a.indexOf(":"),r=a.substring(0,o).trim().toLowerCase(),n=a.substring(o+1).trim(),!(!r||t[r]&&ju[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},$s=Symbol("internals");function Kt(e){return e&&String(e).trim().toLowerCase()}function yr(e){return e===!1||e==null?e:S.isArray(e)?e.map(yr):String(e)}function Ru(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Gu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Hn(e,t,r,n,o){if(S.isFunction(n))return n.call(this,t,r);if(o&&(t=r),!!S.isString(t)){if(S.isString(n))return t.indexOf(n)!==-1;if(S.isRegExp(n))return n.test(t)}}function qu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Xu(e,t){const r=S.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(o,s,a){return this[n].call(this,t,o,s,a)},configurable:!0})})}let Ee=class{constructor(t){t&&this.set(t)}set(t,r,n){const o=this;function s(c,l,f){const u=Kt(l);if(!u)throw new Error("header name must be a non-empty string");const p=S.findKey(o,u);(!p||o[p]===void 0||f===!0||f===void 0&&o[p]!==!1)&&(o[p||l]=yr(c))}const a=(c,l)=>S.forEach(c,(f,u)=>s(f,u,l));if(S.isPlainObject(t)||t instanceof this.constructor)a(t,r);else if(S.isString(t)&&(t=t.trim())&&!Gu(t))a(Ku(t),r);else if(S.isObject(t)&&S.isIterable(t)){let c={},l,f;for(const u of t){if(!S.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[f=u[0]]=(l=c[f])?S.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1]}a(c,r)}else t!=null&&s(r,t,n);return this}get(t,r){if(t=Kt(t),t){const n=S.findKey(this,t);if(n){const o=this[n];if(!r)return o;if(r===!0)return Ru(o);if(S.isFunction(r))return r.call(this,o,n);if(S.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Kt(t),t){const n=S.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Hn(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let o=!1;function s(a){if(a=Kt(a),a){const c=S.findKey(n,a);c&&(!r||Hn(n,n[c],c,r))&&(delete n[c],o=!0)}}return S.isArray(t)?t.forEach(s):s(t),o}clear(t){const r=Object.keys(this);let n=r.length,o=!1;for(;n--;){const s=r[n];(!t||Hn(this,this[s],s,t,!0))&&(delete this[s],o=!0)}return o}normalize(t){const r=this,n={};return S.forEach(this,(o,s)=>{const a=S.findKey(n,s);if(a){r[a]=yr(o),delete r[s];return}const c=t?qu(s):String(s).trim();c!==s&&delete r[s],r[c]=yr(o),n[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return S.forEach(this,(n,o)=>{n!=null&&n!==!1&&(r[o]=t&&S.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
- `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){const n=(this[$s]=this[$s]={accessors:{}}).accessors,o=this.prototype;function s(a){const c=Kt(a);n[c]||(Xu(o,a),n[c]=!0)}return S.isArray(t)?t.forEach(s):s(t),this}};Ee.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),S.reduceDescriptors(Ee.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),S.freezeMethods(Ee);function zn(e,t){const r=this||jt,n=t||r,o=Ee.from(n.headers);let s=n.data;return S.forEach(e,function(c){s=c.call(r,s,o.normalize(),t?t.status:void 0)}),o.normalize(),s}function Bs(e){return!!(e&&e.__CANCEL__)}function Nt(e,t,r){oe.call(this,e??"canceled",oe.ERR_CANCELED,t,r),this.name="CanceledError"}S.inherits(Nt,oe,{__CANCEL__:!0});function Us(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new oe("Request failed with status code "+r.status,[oe.ERR_BAD_REQUEST,oe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Yu(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Ju(e,t){e=e||10;const r=new Array(e),n=new Array(e);let o=0,s=0,a;return t=t!==void 0?t:1e3,function(l){const f=Date.now(),u=n[s];a||(a=f),r[o]=l,n[o]=f;let p=s,g=0;for(;p!==o;)g+=r[p++],p=p%e;if(o=(o+1)%e,o===s&&(s=(s+1)%e),f-a<t)return;const v=u&&f-u;return v?Math.round(g*1e3/v):void 0}}function Zu(e,t){let r=0,n=1e3/t,o,s;const a=(f,u=Date.now())=>{r=u,o=null,s&&(clearTimeout(s),s=null),e(...f)};return[(...f)=>{const u=Date.now(),p=u-r;p>=n?a(f,u):(o=f,s||(s=setTimeout(()=>{s=null,a(o)},n-p)))},()=>o&&a(o)]}const xr=(e,t,r=3)=>{let n=0;const o=Ju(50,250);return Zu(s=>{const a=s.loaded,c=s.lengthComputable?s.total:void 0,l=a-n,f=o(l),u=a<=c;n=a;const p={loaded:a,total:c,progress:c?a/c:void 0,bytes:l,rate:f||void 0,estimated:f&&c&&u?(c-a)/f:void 0,event:s,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(p)},r)},Hs=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},zs=e=>(...t)=>S.asap(()=>e(...t)),Qu=we.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,we.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(we.origin),we.navigator&&/(msie|trident)/i.test(we.navigator.userAgent)):()=>!0,ef=we.hasStandardBrowserEnv?{write(e,t,r,n,o,s){const a=[e+"="+encodeURIComponent(t)];S.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),S.isString(n)&&a.push("path="+n),S.isString(o)&&a.push("domain="+o),s===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function tf(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function rf(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Ws(e,t,r){let n=!tf(t);return e&&(n||r==!1)?rf(e,t):t}const Vs=e=>e instanceof Ee?{...e}:e;function pt(e,t){t=t||{};const r={};function n(f,u,p,g){return S.isPlainObject(f)&&S.isPlainObject(u)?S.merge.call({caseless:g},f,u):S.isPlainObject(u)?S.merge({},u):S.isArray(u)?u.slice():u}function o(f,u,p,g){if(S.isUndefined(u)){if(!S.isUndefined(f))return n(void 0,f,p,g)}else return n(f,u,p,g)}function s(f,u){if(!S.isUndefined(u))return n(void 0,u)}function a(f,u){if(S.isUndefined(u)){if(!S.isUndefined(f))return n(void 0,f)}else return n(void 0,u)}function c(f,u,p){if(p in t)return n(f,u);if(p in e)return n(void 0,f)}const l={url:s,method:s,data:s,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:c,headers:(f,u,p)=>o(Vs(f),Vs(u),p,!0)};return S.forEach(Object.keys({...e,...t}),function(u){const p=l[u]||o,g=p(e[u],t[u],u);S.isUndefined(g)&&p!==c||(r[u]=g)}),r}const js=e=>{const t=pt({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:o,xsrfCookieName:s,headers:a,auth:c}=t;if(t.headers=a=Ee.from(a),t.url=Ms(Ws(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&a.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),S.isFormData(r)){if(we.hasStandardBrowserEnv||we.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(S.isFunction(r.getHeaders)){const l=r.getHeaders(),f=["content-type","content-length"];Object.entries(l).forEach(([u,p])=>{f.includes(u.toLowerCase())&&a.set(u,p)})}}if(we.hasStandardBrowserEnv&&(n&&S.isFunction(n)&&(n=n(t)),n||n!==!1&&Qu(t.url))){const l=o&&s&&ef.read(s);l&&a.set(o,l)}return t},nf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const o=js(e);let s=o.data;const a=Ee.from(o.headers).normalize();let{responseType:c,onUploadProgress:l,onDownloadProgress:f}=o,u,p,g,v,m;function h(){v&&v(),m&&m(),o.cancelToken&&o.cancelToken.unsubscribe(u),o.signal&&o.signal.removeEventListener("abort",u)}let b=new XMLHttpRequest;b.open(o.method.toUpperCase(),o.url,!0),b.timeout=o.timeout;function w(){if(!b)return;const y=Ee.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),N={data:!c||c==="text"||c==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:y,config:e,request:b};Us(function(E){r(E),h()},function(E){n(E),h()},N),b=null}"onloadend"in b?b.onloadend=w:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(w)},b.onabort=function(){b&&(n(new oe("Request aborted",oe.ECONNABORTED,e,b)),b=null)},b.onerror=function(C){const N=C&&C.message?C.message:"Network Error",O=new oe(N,oe.ERR_NETWORK,e,b);O.event=C||null,n(O),b=null},b.ontimeout=function(){let C=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const N=o.transitional||Ls;o.timeoutErrorMessage&&(C=o.timeoutErrorMessage),n(new oe(C,N.clarifyTimeoutError?oe.ETIMEDOUT:oe.ECONNABORTED,e,b)),b=null},s===void 0&&a.setContentType(null),"setRequestHeader"in b&&S.forEach(a.toJSON(),function(C,N){b.setRequestHeader(N,C)}),S.isUndefined(o.withCredentials)||(b.withCredentials=!!o.withCredentials),c&&c!=="json"&&(b.responseType=o.responseType),f&&([g,m]=xr(f,!0),b.addEventListener("progress",g)),l&&b.upload&&([p,v]=xr(l),b.upload.addEventListener("progress",p),b.upload.addEventListener("loadend",v)),(o.cancelToken||o.signal)&&(u=y=>{b&&(n(!y||y.type?new Nt(null,e,b):y),b.abort(),b=null)},o.cancelToken&&o.cancelToken.subscribe(u),o.signal&&(o.signal.aborted?u():o.signal.addEventListener("abort",u)));const x=Yu(o.url);if(x&&we.protocols.indexOf(x)===-1){n(new oe("Unsupported protocol "+x+":",oe.ERR_BAD_REQUEST,e));return}b.send(s||null)})},of=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,o;const s=function(f){if(!o){o=!0,c();const u=f instanceof Error?f:this.reason;n.abort(u instanceof oe?u:new Nt(u instanceof Error?u.message:u))}};let a=t&&setTimeout(()=>{a=null,s(new oe(`timeout ${t} of ms exceeded`,oe.ETIMEDOUT))},t);const c=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(f=>{f.unsubscribe?f.unsubscribe(s):f.removeEventListener("abort",s)}),e=null)};e.forEach(f=>f.addEventListener("abort",s));const{signal:l}=n;return l.unsubscribe=()=>S.asap(c),l}},sf=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,o;for(;n<r;)o=n+t,yield e.slice(n,o),n=o},af=async function*(e,t){for await(const r of cf(e))yield*sf(r,t)},cf=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},Ks=(e,t,r,n)=>{const o=af(e,t);let s=0,a,c=l=>{a||(a=!0,n&&n(l))};return new ReadableStream({async pull(l){try{const{done:f,value:u}=await o.next();if(f){c(),l.close();return}let p=u.byteLength;if(r){let g=s+=p;r(g)}l.enqueue(new Uint8Array(u))}catch(f){throw c(f),f}},cancel(l){return c(l),o.return()}},{highWaterMark:2})},Rs=64*1024,{isFunction:Sr}=S,lf=(({Request:e,Response:t})=>({Request:e,Response:t}))(S.global),{ReadableStream:Gs,TextEncoder:qs}=S.global,Xs=(e,...t)=>{try{return!!e(...t)}catch{return!1}},df=e=>{e=S.merge.call({skipUndefined:!0},lf,e);const{fetch:t,Request:r,Response:n}=e,o=t?Sr(t):typeof fetch=="function",s=Sr(r),a=Sr(n);if(!o)return!1;const c=o&&Sr(Gs),l=o&&(typeof qs=="function"?(m=>h=>m.encode(h))(new qs):async m=>new Uint8Array(await new r(m).arrayBuffer())),f=s&&c&&Xs(()=>{let m=!1;const h=new r(we.origin,{body:new Gs,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!h}),u=a&&c&&Xs(()=>S.isReadableStream(new n("").body)),p={stream:u&&(m=>m.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!p[m]&&(p[m]=(h,b)=>{let w=h&&h[m];if(w)return w.call(h);throw new oe(`Response type '${m}' is not supported`,oe.ERR_NOT_SUPPORT,b)})});const g=async m=>{if(m==null)return 0;if(S.isBlob(m))return m.size;if(S.isSpecCompliantForm(m))return(await new r(we.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(S.isArrayBufferView(m)||S.isArrayBuffer(m))return m.byteLength;if(S.isURLSearchParams(m)&&(m=m+""),S.isString(m))return(await l(m)).byteLength},v=async(m,h)=>{const b=S.toFiniteNumber(m.getContentLength());return b??g(h)};return async m=>{let{url:h,method:b,data:w,signal:x,cancelToken:y,timeout:C,onDownloadProgress:N,onUploadProgress:O,responseType:E,headers:M,withCredentials:F="same-origin",fetchOptions:I}=js(m),B=t||fetch;E=E?(E+"").toLowerCase():"text";let R=of([x,y&&y.toAbortSignal()],C),U=null;const D=R&&R.unsubscribe&&(()=>{R.unsubscribe()});let z;try{if(O&&f&&b!=="get"&&b!=="head"&&(z=await v(M,w))!==0){let q=new r(h,{method:"POST",body:w,duplex:"half"}),ce;if(S.isFormData(w)&&(ce=q.headers.get("content-type"))&&M.setContentType(ce),q.body){const[$,K]=Hs(z,xr(zs(O)));w=Ks(q.body,Rs,$,K)}}S.isString(F)||(F=F?"include":"omit");const k=s&&"credentials"in r.prototype,G={...I,signal:R,method:b.toUpperCase(),headers:M.normalize().toJSON(),body:w,duplex:"half",credentials:k?F:void 0};U=s&&new r(h,G);let L=await(s?B(U,I):B(h,G));const A=u&&(E==="stream"||E==="response");if(u&&(N||A&&D)){const q={};["status","statusText","headers"].forEach(le=>{q[le]=L[le]});const ce=S.toFiniteNumber(L.headers.get("content-length")),[$,K]=N&&Hs(ce,xr(zs(N),!0))||[];L=new n(Ks(L.body,Rs,$,()=>{K&&K(),D&&D()}),q)}E=E||"text";let ee=await p[S.findKey(p,E)||"text"](L,m);return!A&&D&&D(),await new Promise((q,ce)=>{Us(q,ce,{data:ee,headers:Ee.from(L.headers),status:L.status,statusText:L.statusText,config:m,request:U})})}catch(k){throw D&&D(),k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)?Object.assign(new oe("Network Error",oe.ERR_NETWORK,m,U),{cause:k.cause||k}):oe.from(k,k&&k.code,m,U)}}},uf=new Map,Ys=e=>{let t=e?e.env:{};const{fetch:r,Request:n,Response:o}=t,s=[n,o,r];let a=s.length,c=a,l,f,u=uf;for(;c--;)l=s[c],f=u.get(l),f===void 0&&u.set(l,f=c?new Map:df(t)),u=f;return f};Ys();const Wn={http:ku,xhr:nf,fetch:{get:Ys}};S.forEach(Wn,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Js=e=>`- ${e}`,ff=e=>S.isFunction(e)||e===null||e===!1,Zs={getAdapter:(e,t)=>{e=S.isArray(e)?e:[e];const{length:r}=e;let n,o;const s={};for(let a=0;a<r;a++){n=e[a];let c;if(o=n,!ff(n)&&(o=Wn[(c=String(n)).toLowerCase()],o===void 0))throw new oe(`Unknown adapter '${c}'`);if(o&&(S.isFunction(o)||(o=o.get(t))))break;s[c||"#"+a]=o}if(!o){const a=Object.entries(s).map(([l,f])=>`adapter ${l} `+(f===!1?"is not supported by the environment":"is not available in the build"));let c=r?a.length>1?`since :
4
- `+a.map(Js).join(`
5
- `):" "+Js(a[0]):"as no adapter specified";throw new oe("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return o},adapters:Wn};function Vn(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Nt(null,e)}function Qs(e){return Vn(e),e.headers=Ee.from(e.headers),e.data=zn.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Zs.getAdapter(e.adapter||jt.adapter,e)(e).then(function(n){return Vn(e),n.data=zn.call(e,e.transformResponse,n),n.headers=Ee.from(n.headers),n},function(n){return Bs(n)||(Vn(e),n&&n.response&&(n.response.data=zn.call(e,e.transformResponse,n.response),n.response.headers=Ee.from(n.response.headers))),Promise.reject(n)})}const ea="1.12.2",Cr={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Cr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const ta={};Cr.transitional=function(t,r,n){function o(s,a){return"[Axios v"+ea+"] Transitional option '"+s+"'"+a+(n?". "+n:"")}return(s,a,c)=>{if(t===!1)throw new oe(o(a," has been removed"+(r?" in "+r:"")),oe.ERR_DEPRECATED);return r&&!ta[a]&&(ta[a]=!0,console.warn(o(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(s,a,c):!0}},Cr.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function pf(e,t,r){if(typeof e!="object")throw new oe("options must be an object",oe.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let o=n.length;for(;o-- >0;){const s=n[o],a=t[s];if(a){const c=e[s],l=c===void 0||a(c,s,e);if(l!==!0)throw new oe("option "+s+" must be "+l,oe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new oe("Unknown option "+s,oe.ERR_BAD_OPTION)}}const Er={assertOptions:pf,validators:Cr},Ke=Er.validators;let ht=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ds,response:new Ds}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const s=o.stack?o.stack.replace(/^.+\n/,""):"";try{n.stack?s&&!String(n.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
- `+s):n.stack=s}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=pt(this.defaults,r);const{transitional:n,paramsSerializer:o,headers:s}=r;n!==void 0&&Er.assertOptions(n,{silentJSONParsing:Ke.transitional(Ke.boolean),forcedJSONParsing:Ke.transitional(Ke.boolean),clarifyTimeoutError:Ke.transitional(Ke.boolean)},!1),o!=null&&(S.isFunction(o)?r.paramsSerializer={serialize:o}:Er.assertOptions(o,{encode:Ke.function,serialize:Ke.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),Er.assertOptions(r,{baseUrl:Ke.spelling("baseURL"),withXsrfToken:Ke.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=s&&S.merge(s.common,s[r.method]);s&&S.forEach(["delete","get","head","post","put","patch","common"],m=>{delete s[m]}),r.headers=Ee.concat(a,s);const c=[];let l=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(l=l&&h.synchronous,c.unshift(h.fulfilled,h.rejected))});const f=[];this.interceptors.response.forEach(function(h){f.push(h.fulfilled,h.rejected)});let u,p=0,g;if(!l){const m=[Qs.bind(this),void 0];for(m.unshift(...c),m.push(...f),g=m.length,u=Promise.resolve(r);p<g;)u=u.then(m[p++],m[p++]);return u}g=c.length;let v=r;for(;p<g;){const m=c[p++],h=c[p++];try{v=m(v)}catch(b){h.call(this,b);break}}try{u=Qs.call(this,v)}catch(m){return Promise.reject(m)}for(p=0,g=f.length;p<g;)u=u.then(f[p++],f[p++]);return u}getUri(t){t=pt(this.defaults,t);const r=Ws(t.baseURL,t.url,t.allowAbsoluteUrls);return Ms(r,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){ht.prototype[t]=function(r,n){return this.request(pt(n||{},{method:t,url:r,data:(n||{}).data}))}}),S.forEach(["post","put","patch"],function(t){function r(n){return function(s,a,c){return this.request(pt(c||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:s,data:a}))}}ht.prototype[t]=r(),ht.prototype[t+"Form"]=r(!0)});let hf=class Vd{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(s){r=s});const n=this;this.promise.then(o=>{if(!n._listeners)return;let s=n._listeners.length;for(;s-- >0;)n._listeners[s](o);n._listeners=null}),this.promise.then=o=>{let s;const a=new Promise(c=>{n.subscribe(c),s=c}).then(o);return a.cancel=function(){n.unsubscribe(s)},a},t(function(s,a,c){n.reason||(n.reason=new Nt(s,a,c),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Vd(function(o){t=o}),cancel:t}}};function gf(e){return function(r){return e.apply(null,r)}}function mf(e){return S.isObject(e)&&e.isAxiosError===!0}const jn={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(jn).forEach(([e,t])=>{jn[t]=e});function ra(e){const t=new ht(e),r=vs(ht.prototype.request,t);return S.extend(r,ht.prototype,t,{allOwnKeys:!0}),S.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return ra(pt(e,o))},r}const me=ra(jt);me.Axios=ht,me.CanceledError=Nt,me.CancelToken=hf,me.isCancel=Bs,me.VERSION=ea,me.toFormData=wr,me.AxiosError=oe,me.Cancel=me.CanceledError,me.all=function(t){return Promise.all(t)},me.spread=gf,me.isAxiosError=mf,me.mergeConfig=pt,me.AxiosHeaders=Ee,me.formToJSON=e=>Fs(S.isHTMLForm(e)?new FormData(e):e),me.getAdapter=Zs.getAdapter,me.HttpStatusCode=jn,me.default=me;const{Axios:Iw,AxiosError:_w,CanceledError:Ow,isCancel:kw,CancelToken:Mw,VERSION:Dw,all:Lw,Cancel:Fw,isAxiosError:$w,spread:Bw,toFormData:Uw,AxiosHeaders:Hw,HttpStatusCode:zw,formToJSON:Ww,getAdapter:Vw,mergeConfig:jw}=me,Kn={};function Nr(){var e;try{return typeof window<"u"&&((e=window.localStorage)==null?void 0:e.getItem("chat-debug"))==="1"}catch{return!1}}const na=Kn==null?void 0:Kn.VITE_API_BASE_URL,oa=na?na.replace(/\/+$/,""):void 0;!oa&&typeof window<"u"&&console.warn("VITE_API_BASE_URL is not set. The API client will need to be configured via apiConfig prop.");let Tr=null;const Rn=new Set;function sa(){return Tr}function Gn(e){Tr=e,Rn.forEach(t=>t(e))}function aa(e){return Rn.add(e),()=>Rn.delete(e)}const nt=me.create({baseURL:oa||"http://localhost:8000",timeout:3e4,withCredentials:!0});nt.interceptors.request.use(e=>(Tr&&(e.headers.Authorization=`Bearer ${Tr}`),e)),nt.interceptors.response.use(e=>e,e=>Promise.reject(e));async function Re(e,t){return(await nt.get(e,t)).data}async function Ar(e,t,r){return(await nt.post(e,t,r)).data}async function ia(e,t,r){return(await nt.put(e,t,r)).data}async function ca(e,t){return(await nt.delete(e,t)).data}function Ne(e){return e&&typeof e=="object"&&"data"in e?e.data:e}class Pr{get baseUrl(){const t=nt.defaults.baseURL||"";return String(t).replace(/\/+$|^\s+|\s+$/g,"")}updateConfig(t){t.baseUrl&&(nt.defaults.baseURL=String(t.baseUrl).replace(/\/+$/g,"")),t.authToken!==void 0&&Gn(t.authToken)}getAuthToken(){return sa()}setAuthToken(t){Gn(t)}onTokenChange(t){return aa(t)}async listThreads(){const t=await Re("/chat/threads"),r=Ne(t);return(r==null?void 0:r.items)??(t==null?void 0:t.items)??[]}async createThread(t){const n=await Ar("/chat/threads",t?{title:t}:void 0);return Ne(n)}async updateThread(t,r){const n=await ia(`/chat/threads/${t}`,{title:r});return Ne(n)}async deleteThread(t){const r=await ca(`/chat/threads/${t}`);return Ne(r)}async threadInfo(t){const r=await Re(`/chat/threads/${t}/info`);return Ne(r)}async listAgents(){const t=await Re("/chat/agents"),r=Ne(t);return(r==null?void 0:r.items)??[]}async getAgent(t){const r=await Re(`/chat/agents/${t}`);return Ne(r)}async getAgentSchema(t){const r=await Re(`/chat/agents/${t}/schema`);return Ne(r)}async getMessages(t){const r=await Re(`/chat/threads/${t.threadId}/messages`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs,limit:t.limit,before_id:t.beforeId??void 0}});return Ne(r)}async getState(t){const r=await Re(`/chat/threads/${t.threadId}/state`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs}});return Ne(r)}async getStateHistory(t){const r=await Re(`/chat/threads/${t.threadId}/state/history`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs}});return Ne(r)}async listCheckpoints(t){const r=await Re(`/chat/threads/${t}/checkpoints`,{params:{thread_id:t}});return Ne(r)}async uploadExcel(t,r="/upload_excel",n={}){const o=new FormData,s=t.name.replace(/\.[^.]+$/,"").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")||`excel_${Date.now()}`,a=(n.tableName??s).trim();o.append("file",t,t.name),o.append("table_name",a),n.sheetName&&o.append("sheet_name",n.sheetName),Nr()&&console.debug("[api.uploadExcel] ->",r,{name:t.name,size:t.size,tableName:a,sheetName:n.sheetName});const c=await Ar(r,o,{headers:{Accept:"application/json"},maxBodyLength:1/0}),l=Ne(c);return Nr()&&console.debug("[api.uploadExcel] <-",l),l}async uploadImage(t,r="/upload"){const n=new FormData;n.append("file",t,t.name),Nr()&&console.debug("[api.uploadImage] ->",r,{name:t.name,type:t.type,size:t.size});const o=await Ar(r,n,{headers:{Accept:"application/json"},maxBodyLength:1/0}),s=Ne(o);if(Nr()&&console.debug("[api.uploadImage] <-",s),!(s!=null&&s.url))throw new Error("Invalid upload response: missing url");return{url:s.url,mimeType:s.mimeType??t.type,name:s.name??t.name,size:s.size??t.size}}}const Qe=new Pr;function la(e={}){const t=e.baseUrl??"/api/chat",r=e.streamPath??"/runs/stream",[n,o]=T.useState(e.token??null),s=T.useRef(e.headers??{}),[a,c]=T.useState(!1),[l,f]=T.useState(null),[u,p]=T.useState(""),[g,v]=T.useState(null),m=T.useRef(null),h=T.useCallback(y=>{o(y)},[]),b=T.useCallback(()=>{var y;(y=m.current)==null||y.abort(),m.current=null,c(!1)},[]),w=T.useCallback(()=>{p(""),v(null),f(null)},[]),x=T.useCallback((y,C,N)=>{m.current&&(m.current.abort(),m.current=null),c(!0),f(null),e.autoAppendAssistant!==!1&&p("");const O=new AbortController;return m.current=O,(async()=>{var F,I,B,R,U;const E=(()=>{var D;try{return typeof window<"u"&&((D=window.localStorage)==null?void 0:D.getItem("chat-debug"))==="1"}catch{return!1}})(),M=D=>{var z;try{const k=JSON.parse(JSON.stringify(D));return(z=k==null?void 0:k.payload)!=null&&z.files_info&&Array.isArray(k.payload.files_info)&&(k.payload.files_info=k.payload.files_info.map(G=>({...G,data:G!=null&&G.data?`<base64 ${String(G.data).length} chars>`:G==null?void 0:G.data}))),k}catch{return D}};try{let D={};try{if(n)D={Authorization:`Bearer ${n}`};else if(typeof window<"u"){const ee=window.__AUTH_TOKEN__,q=((F=window.localStorage)==null?void 0:F.getItem("authToken"))||null;let ce=null;try{const K=(I=window.localStorage)==null?void 0:I.getItem("chat-settings");K&&(ce=((B=JSON.parse(K))==null?void 0:B.apiKey)||null)}catch{}const $=ee||q||ce||null;$&&(D={Authorization:`Bearer ${$}`})}}catch{}E&&console.debug("[use-chat] POST",t+r,M(y));const z=await fetch(t+r,{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream",...D,...s.current},body:JSON.stringify(y),signal:O.signal});if(!z.ok||!z.body){const A=await z.text().catch(()=>"");throw E&&console.debug("[use-chat] non-OK response",z.status,A==null?void 0:A.slice(0,500)),new Error(`stream ${z.status}${A?": "+A:""}`)}try{const A=z.headers.get("X-Thread-Id")||z.headers.get("x-thread-id"),ee=z.headers.get("X-Thread-Created")||z.headers.get("x-thread-created"),q=A??null,ce=String(ee??"").toLowerCase()==="true";try{(R=N==null?void 0:N.onOpen)==null||R.call(N,{threadId:q,created:ce})}catch($){E&&console.debug("[use-chat] onOpen handler threw:",$)}}catch(A){E&&console.debug("[use-chat] failed to read headers:",A)}const k=z.body.getReader(),G=new TextDecoder;let L="";for(;;){const{value:A,done:ee}=await k.read();if(ee)break;L+=G.decode(A,{stream:!0});let q;for(;(q=L.indexOf(`
1
+ (function(re,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("react/jsx-runtime"),require("react"),require("lucide-react"),require("@radix-ui/react-slot"),require("class-variance-authority"),require("clsx"),require("tailwind-merge"),require("react-dom"),require("react-markdown"),require("remark-gfm")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","lucide-react","@radix-ui/react-slot","class-variance-authority","clsx","tailwind-merge","react-dom","react-markdown","remark-gfm"],i):(re=typeof globalThis<"u"?globalThis:re||self,i(re.NewChatUI={},re.jsxRuntime,re.React,re.LucideReact,re.reactSlot,re.classVarianceAuthority,re.clsx,re.tailwindMerge,re.ReactDOM,re.ReactMarkdown,re.remarkGfm))})(this,function(re,i,T,X,Ie,Wt,Rd,Gd,vs,qd,Xd){"use strict";var Dn=typeof document<"u"?document.currentScript:null;function ws(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const d=ws(T),gr=ws(vs);function ys(e,t){return function(){return e.apply(t,arguments)}}const{toString:Yd}=Object.prototype,{getPrototypeOf:Ln}=Object,{iterator:mr,toStringTag:xs}=Symbol,br=(e=>t=>{const r=Yd.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Fe=e=>(e=e.toLowerCase(),t=>br(t)===e),vr=e=>t=>typeof t===e,{isArray:Ct}=Array,Et=vr("undefined");function Vt(e){return e!==null&&!Et(e)&&e.constructor!==null&&!Et(e.constructor)&&Ee(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Ss=Fe("ArrayBuffer");function Jd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Ss(e.buffer),t}const Zd=vr("string"),Ee=vr("function"),Cs=vr("number"),jt=e=>e!==null&&typeof e=="object",Qd=e=>e===!0||e===!1,wr=e=>{if(br(e)!=="object")return!1;const t=Ln(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(xs in e)&&!(mr in e)},eu=e=>{if(!jt(e)||Vt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},tu=Fe("Date"),ru=Fe("File"),nu=Fe("Blob"),ou=Fe("FileList"),su=e=>jt(e)&&Ee(e.pipe),au=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ee(e.append)&&((t=br(e))==="formdata"||t==="object"&&Ee(e.toString)&&e.toString()==="[object FormData]"))},iu=Fe("URLSearchParams"),[cu,lu,du,uu]=["ReadableStream","Request","Response","Headers"].map(Fe),fu=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Kt(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),Ct(e))for(n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else{if(Vt(e))return;const s=r?Object.getOwnPropertyNames(e):Object.keys(e),a=s.length;let c;for(n=0;n<a;n++)c=s[n],t.call(null,e[c],c,e)}}function Es(e,t){if(Vt(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,o;for(;n-- >0;)if(o=r[n],t===o.toLowerCase())return o;return null}const pt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ns=e=>!Et(e)&&e!==pt;function Fn(){const{caseless:e,skipUndefined:t}=Ns(this)&&this||{},r={},n=(o,s)=>{const a=e&&Es(r,s)||s;wr(r[a])&&wr(o)?r[a]=Fn(r[a],o):wr(o)?r[a]=Fn({},o):Ct(o)?r[a]=o.slice():(!t||!Et(o))&&(r[a]=o)};for(let o=0,s=arguments.length;o<s;o++)arguments[o]&&Kt(arguments[o],n);return r}const pu=(e,t,r,{allOwnKeys:n}={})=>(Kt(t,(o,s)=>{r&&Ee(o)?e[s]=ys(o,r):e[s]=o},{allOwnKeys:n}),e),hu=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),gu=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},mu=(e,t,r,n)=>{let o,s,a;const c={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],(!n||n(a,e,t))&&!c[a]&&(t[a]=e[a],c[a]=!0);e=r!==!1&&Ln(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},bu=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},vu=e=>{if(!e)return null;if(Ct(e))return e;let t=e.length;if(!Cs(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},wu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Ln(Uint8Array)),yu=(e,t)=>{const n=(e&&e[mr]).call(e);let o;for(;(o=n.next())&&!o.done;){const s=o.value;t.call(e,s[0],s[1])}},xu=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},Su=Fe("HTMLFormElement"),Cu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),Ts=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Eu=Fe("RegExp"),As=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Kt(r,(o,s)=>{let a;(a=t(o,s,e))!==!1&&(n[s]=a||o)}),Object.defineProperties(e,n)},Nu=e=>{As(e,(t,r)=>{if(Ee(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(Ee(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Tu=(e,t)=>{const r={},n=o=>{o.forEach(s=>{r[s]=!0})};return Ct(e)?n(e):n(String(e).split(t)),r},Au=()=>{},Pu=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Iu(e){return!!(e&&Ee(e.append)&&e[xs]==="FormData"&&e[mr])}const _u=e=>{const t=new Array(10),r=(n,o)=>{if(jt(n)){if(t.indexOf(n)>=0)return;if(Vt(n))return n;if(!("toJSON"in n)){t[o]=n;const s=Ct(n)?[]:{};return Kt(n,(a,c)=>{const l=r(a,o+1);!Et(l)&&(s[c]=l)}),t[o]=void 0,s}}return n};return r(e,0)},Ou=Fe("AsyncFunction"),ku=e=>e&&(jt(e)||Ee(e))&&Ee(e.then)&&Ee(e.catch),Ps=((e,t)=>e?setImmediate:t?((r,n)=>(pt.addEventListener("message",({source:o,data:s})=>{o===pt&&s===r&&n.length&&n.shift()()},!1),o=>{n.push(o),pt.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",Ee(pt.postMessage)),Mu=typeof queueMicrotask<"u"?queueMicrotask.bind(pt):typeof process<"u"&&process.nextTick||Ps,S={isArray:Ct,isArrayBuffer:Ss,isBuffer:Vt,isFormData:au,isArrayBufferView:Jd,isString:Zd,isNumber:Cs,isBoolean:Qd,isObject:jt,isPlainObject:wr,isEmptyObject:eu,isReadableStream:cu,isRequest:lu,isResponse:du,isHeaders:uu,isUndefined:Et,isDate:tu,isFile:ru,isBlob:nu,isRegExp:Eu,isFunction:Ee,isStream:su,isURLSearchParams:iu,isTypedArray:wu,isFileList:ou,forEach:Kt,merge:Fn,extend:pu,trim:fu,stripBOM:hu,inherits:gu,toFlatObject:mu,kindOf:br,kindOfTest:Fe,endsWith:bu,toArray:vu,forEachEntry:yu,matchAll:xu,isHTMLForm:Su,hasOwnProperty:Ts,hasOwnProp:Ts,reduceDescriptors:As,freezeMethods:Nu,toObjectSet:Tu,toCamelCase:Cu,noop:Au,toFiniteNumber:Pu,findKey:Es,global:pt,isContextDefined:Ns,isSpecCompliantForm:Iu,toJSONObject:_u,isAsyncFn:Ou,isThenable:ku,setImmediate:Ps,asap:Mu,isIterable:e=>e!=null&&Ee(e[mr])};function oe(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o,this.status=o.status?o.status:null)}S.inherits(oe,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:S.toJSONObject(this.config),code:this.code,status:this.status}}});const Is=oe.prototype,_s={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{_s[e]={value:e}}),Object.defineProperties(oe,_s),Object.defineProperty(Is,"isAxiosError",{value:!0}),oe.from=(e,t,r,n,o,s)=>{const a=Object.create(Is);S.toFlatObject(e,a,function(u){return u!==Error.prototype},f=>f!=="isAxiosError");const c=e&&e.message?e.message:"Error",l=t==null&&e?e.code:t;return oe.call(a,c,l,r,n,o),e&&a.cause==null&&Object.defineProperty(a,"cause",{value:e,configurable:!0}),a.name=e&&e.name||"Error",s&&Object.assign(a,s),a};const Du=null;function $n(e){return S.isPlainObject(e)||S.isArray(e)}function Os(e){return S.endsWith(e,"[]")?e.slice(0,-2):e}function ks(e,t,r){return e?e.concat(t).map(function(o,s){return o=Os(o),!r&&s?"["+o+"]":o}).join(r?".":""):t}function Lu(e){return S.isArray(e)&&!e.some($n)}const Fu=S.toFlatObject(S,{},null,function(t){return/^is[A-Z]/.test(t)});function yr(e,t,r){if(!S.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=S.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,b){return!S.isUndefined(b[h])});const n=r.metaTokens,o=r.visitor||u,s=r.dots,a=r.indexes,l=(r.Blob||typeof Blob<"u"&&Blob)&&S.isSpecCompliantForm(t);if(!S.isFunction(o))throw new TypeError("visitor must be a function");function f(m){if(m===null)return"";if(S.isDate(m))return m.toISOString();if(S.isBoolean(m))return m.toString();if(!l&&S.isBlob(m))throw new oe("Blob is not supported. Use a Buffer instead.");return S.isArrayBuffer(m)||S.isTypedArray(m)?l&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function u(m,h,b){let w=m;if(m&&!b&&typeof m=="object"){if(S.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(S.isArray(m)&&Lu(m)||(S.isFileList(m)||S.endsWith(h,"[]"))&&(w=S.toArray(m)))return h=Os(h),w.forEach(function(y,C){!(S.isUndefined(y)||y===null)&&t.append(a===!0?ks([h],C,s):a===null?h:h+"[]",f(y))}),!1}return $n(m)?!0:(t.append(ks(b,h,s),f(m)),!1)}const p=[],g=Object.assign(Fu,{defaultVisitor:u,convertValue:f,isVisitable:$n});function v(m,h){if(!S.isUndefined(m)){if(p.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));p.push(m),S.forEach(m,function(w,x){(!(S.isUndefined(w)||w===null)&&o.call(t,w,S.isString(x)?x.trim():x,h,g))===!0&&v(w,h?h.concat(x):[x])}),p.pop()}}if(!S.isObject(e))throw new TypeError("data must be an object");return v(e),t}function Ms(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Bn(e,t){this._pairs=[],e&&yr(e,this,t)}const Ds=Bn.prototype;Ds.append=function(t,r){this._pairs.push([t,r])},Ds.toString=function(t){const r=t?function(n){return t.call(this,n,Ms)}:Ms;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};function $u(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ls(e,t,r){if(!t)return e;const n=r&&r.encode||$u;S.isFunction(r)&&(r={serialize:r});const o=r&&r.serialize;let s;if(o?s=o(t,r):s=S.isURLSearchParams(t)?t.toString():new Bn(t,r).toString(n),s){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}class Fs{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){S.forEach(this.handlers,function(n){n!==null&&t(n)})}}const $s={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Bu={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Bn,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Un=typeof window<"u"&&typeof document<"u",Hn=typeof navigator=="object"&&navigator||void 0,Uu=Un&&(!Hn||["ReactNative","NativeScript","NS"].indexOf(Hn.product)<0),Hu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",zu=Un&&window.location.href||"http://localhost",ye={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Un,hasStandardBrowserEnv:Uu,hasStandardBrowserWebWorkerEnv:Hu,navigator:Hn,origin:zu},Symbol.toStringTag,{value:"Module"})),...Bu};function Wu(e,t){return yr(e,new ye.classes.URLSearchParams,{visitor:function(r,n,o,s){return ye.isNode&&S.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function Vu(e){return S.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function ju(e){const t={},r=Object.keys(e);let n;const o=r.length;let s;for(n=0;n<o;n++)s=r[n],t[s]=e[s];return t}function Bs(e){function t(r,n,o,s){let a=r[s++];if(a==="__proto__")return!0;const c=Number.isFinite(+a),l=s>=r.length;return a=!a&&S.isArray(o)?o.length:a,l?(S.hasOwnProp(o,a)?o[a]=[o[a],n]:o[a]=n,!c):((!o[a]||!S.isObject(o[a]))&&(o[a]=[]),t(r,n,o[a],s)&&S.isArray(o[a])&&(o[a]=ju(o[a])),!c)}if(S.isFormData(e)&&S.isFunction(e.entries)){const r={};return S.forEachEntry(e,(n,o)=>{t(Vu(n),o,r,0)}),r}return null}function Ku(e,t,r){if(S.isString(e))try{return(t||JSON.parse)(e),S.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const Rt={transitional:$s,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",o=n.indexOf("application/json")>-1,s=S.isObject(t);if(s&&S.isHTMLForm(t)&&(t=new FormData(t)),S.isFormData(t))return o?JSON.stringify(Bs(t)):t;if(S.isArrayBuffer(t)||S.isBuffer(t)||S.isStream(t)||S.isFile(t)||S.isBlob(t)||S.isReadableStream(t))return t;if(S.isArrayBufferView(t))return t.buffer;if(S.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Wu(t,this.formSerializer).toString();if((c=S.isFileList(t))||n.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return yr(c?{"files[]":t}:t,l&&new l,this.formSerializer)}}return s||o?(r.setContentType("application/json",!1),Ku(t)):t}],transformResponse:[function(t){const r=this.transitional||Rt.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(S.isResponse(t)||S.isReadableStream(t))return t;if(t&&S.isString(t)&&(n&&!this.responseType||o)){const a=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(c){if(a)throw c.name==="SyntaxError"?oe.from(c,oe.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ye.classes.FormData,Blob:ye.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};S.forEach(["delete","get","head","post","put","patch"],e=>{Rt.headers[e]={}});const Ru=S.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Gu=e=>{const t={};let r,n,o;return e&&e.split(`
2
+ `).forEach(function(a){o=a.indexOf(":"),r=a.substring(0,o).trim().toLowerCase(),n=a.substring(o+1).trim(),!(!r||t[r]&&Ru[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},Us=Symbol("internals");function Gt(e){return e&&String(e).trim().toLowerCase()}function xr(e){return e===!1||e==null?e:S.isArray(e)?e.map(xr):String(e)}function qu(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Xu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function zn(e,t,r,n,o){if(S.isFunction(n))return n.call(this,t,r);if(o&&(t=r),!!S.isString(t)){if(S.isString(n))return t.indexOf(n)!==-1;if(S.isRegExp(n))return n.test(t)}}function Yu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Ju(e,t){const r=S.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(o,s,a){return this[n].call(this,t,o,s,a)},configurable:!0})})}let Ne=class{constructor(t){t&&this.set(t)}set(t,r,n){const o=this;function s(c,l,f){const u=Gt(l);if(!u)throw new Error("header name must be a non-empty string");const p=S.findKey(o,u);(!p||o[p]===void 0||f===!0||f===void 0&&o[p]!==!1)&&(o[p||l]=xr(c))}const a=(c,l)=>S.forEach(c,(f,u)=>s(f,u,l));if(S.isPlainObject(t)||t instanceof this.constructor)a(t,r);else if(S.isString(t)&&(t=t.trim())&&!Xu(t))a(Gu(t),r);else if(S.isObject(t)&&S.isIterable(t)){let c={},l,f;for(const u of t){if(!S.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[f=u[0]]=(l=c[f])?S.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1]}a(c,r)}else t!=null&&s(r,t,n);return this}get(t,r){if(t=Gt(t),t){const n=S.findKey(this,t);if(n){const o=this[n];if(!r)return o;if(r===!0)return qu(o);if(S.isFunction(r))return r.call(this,o,n);if(S.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Gt(t),t){const n=S.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||zn(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let o=!1;function s(a){if(a=Gt(a),a){const c=S.findKey(n,a);c&&(!r||zn(n,n[c],c,r))&&(delete n[c],o=!0)}}return S.isArray(t)?t.forEach(s):s(t),o}clear(t){const r=Object.keys(this);let n=r.length,o=!1;for(;n--;){const s=r[n];(!t||zn(this,this[s],s,t,!0))&&(delete this[s],o=!0)}return o}normalize(t){const r=this,n={};return S.forEach(this,(o,s)=>{const a=S.findKey(n,s);if(a){r[a]=xr(o),delete r[s];return}const c=t?Yu(s):String(s).trim();c!==s&&delete r[s],r[c]=xr(o),n[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return S.forEach(this,(n,o)=>{n!=null&&n!==!1&&(r[o]=t&&S.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){const n=(this[Us]=this[Us]={accessors:{}}).accessors,o=this.prototype;function s(a){const c=Gt(a);n[c]||(Ju(o,a),n[c]=!0)}return S.isArray(t)?t.forEach(s):s(t),this}};Ne.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),S.reduceDescriptors(Ne.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),S.freezeMethods(Ne);function Wn(e,t){const r=this||Rt,n=t||r,o=Ne.from(n.headers);let s=n.data;return S.forEach(e,function(c){s=c.call(r,s,o.normalize(),t?t.status:void 0)}),o.normalize(),s}function Hs(e){return!!(e&&e.__CANCEL__)}function Nt(e,t,r){oe.call(this,e??"canceled",oe.ERR_CANCELED,t,r),this.name="CanceledError"}S.inherits(Nt,oe,{__CANCEL__:!0});function zs(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new oe("Request failed with status code "+r.status,[oe.ERR_BAD_REQUEST,oe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Zu(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Qu(e,t){e=e||10;const r=new Array(e),n=new Array(e);let o=0,s=0,a;return t=t!==void 0?t:1e3,function(l){const f=Date.now(),u=n[s];a||(a=f),r[o]=l,n[o]=f;let p=s,g=0;for(;p!==o;)g+=r[p++],p=p%e;if(o=(o+1)%e,o===s&&(s=(s+1)%e),f-a<t)return;const v=u&&f-u;return v?Math.round(g*1e3/v):void 0}}function ef(e,t){let r=0,n=1e3/t,o,s;const a=(f,u=Date.now())=>{r=u,o=null,s&&(clearTimeout(s),s=null),e(...f)};return[(...f)=>{const u=Date.now(),p=u-r;p>=n?a(f,u):(o=f,s||(s=setTimeout(()=>{s=null,a(o)},n-p)))},()=>o&&a(o)]}const Sr=(e,t,r=3)=>{let n=0;const o=Qu(50,250);return ef(s=>{const a=s.loaded,c=s.lengthComputable?s.total:void 0,l=a-n,f=o(l),u=a<=c;n=a;const p={loaded:a,total:c,progress:c?a/c:void 0,bytes:l,rate:f||void 0,estimated:f&&c&&u?(c-a)/f:void 0,event:s,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(p)},r)},Ws=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},Vs=e=>(...t)=>S.asap(()=>e(...t)),tf=ye.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,ye.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(ye.origin),ye.navigator&&/(msie|trident)/i.test(ye.navigator.userAgent)):()=>!0,rf=ye.hasStandardBrowserEnv?{write(e,t,r,n,o,s){const a=[e+"="+encodeURIComponent(t)];S.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),S.isString(n)&&a.push("path="+n),S.isString(o)&&a.push("domain="+o),s===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function nf(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function of(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function js(e,t,r){let n=!nf(t);return e&&(n||r==!1)?of(e,t):t}const Ks=e=>e instanceof Ne?{...e}:e;function ht(e,t){t=t||{};const r={};function n(f,u,p,g){return S.isPlainObject(f)&&S.isPlainObject(u)?S.merge.call({caseless:g},f,u):S.isPlainObject(u)?S.merge({},u):S.isArray(u)?u.slice():u}function o(f,u,p,g){if(S.isUndefined(u)){if(!S.isUndefined(f))return n(void 0,f,p,g)}else return n(f,u,p,g)}function s(f,u){if(!S.isUndefined(u))return n(void 0,u)}function a(f,u){if(S.isUndefined(u)){if(!S.isUndefined(f))return n(void 0,f)}else return n(void 0,u)}function c(f,u,p){if(p in t)return n(f,u);if(p in e)return n(void 0,f)}const l={url:s,method:s,data:s,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:c,headers:(f,u,p)=>o(Ks(f),Ks(u),p,!0)};return S.forEach(Object.keys({...e,...t}),function(u){const p=l[u]||o,g=p(e[u],t[u],u);S.isUndefined(g)&&p!==c||(r[u]=g)}),r}const Rs=e=>{const t=ht({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:o,xsrfCookieName:s,headers:a,auth:c}=t;if(t.headers=a=Ne.from(a),t.url=Ls(js(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&a.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),S.isFormData(r)){if(ye.hasStandardBrowserEnv||ye.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(S.isFunction(r.getHeaders)){const l=r.getHeaders(),f=["content-type","content-length"];Object.entries(l).forEach(([u,p])=>{f.includes(u.toLowerCase())&&a.set(u,p)})}}if(ye.hasStandardBrowserEnv&&(n&&S.isFunction(n)&&(n=n(t)),n||n!==!1&&tf(t.url))){const l=o&&s&&rf.read(s);l&&a.set(o,l)}return t},sf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const o=Rs(e);let s=o.data;const a=Ne.from(o.headers).normalize();let{responseType:c,onUploadProgress:l,onDownloadProgress:f}=o,u,p,g,v,m;function h(){v&&v(),m&&m(),o.cancelToken&&o.cancelToken.unsubscribe(u),o.signal&&o.signal.removeEventListener("abort",u)}let b=new XMLHttpRequest;b.open(o.method.toUpperCase(),o.url,!0),b.timeout=o.timeout;function w(){if(!b)return;const y=Ne.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),N={data:!c||c==="text"||c==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:y,config:e,request:b};zs(function(E){r(E),h()},function(E){n(E),h()},N),b=null}"onloadend"in b?b.onloadend=w:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(w)},b.onabort=function(){b&&(n(new oe("Request aborted",oe.ECONNABORTED,e,b)),b=null)},b.onerror=function(C){const N=C&&C.message?C.message:"Network Error",O=new oe(N,oe.ERR_NETWORK,e,b);O.event=C||null,n(O),b=null},b.ontimeout=function(){let C=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const N=o.transitional||$s;o.timeoutErrorMessage&&(C=o.timeoutErrorMessage),n(new oe(C,N.clarifyTimeoutError?oe.ETIMEDOUT:oe.ECONNABORTED,e,b)),b=null},s===void 0&&a.setContentType(null),"setRequestHeader"in b&&S.forEach(a.toJSON(),function(C,N){b.setRequestHeader(N,C)}),S.isUndefined(o.withCredentials)||(b.withCredentials=!!o.withCredentials),c&&c!=="json"&&(b.responseType=o.responseType),f&&([g,m]=Sr(f,!0),b.addEventListener("progress",g)),l&&b.upload&&([p,v]=Sr(l),b.upload.addEventListener("progress",p),b.upload.addEventListener("loadend",v)),(o.cancelToken||o.signal)&&(u=y=>{b&&(n(!y||y.type?new Nt(null,e,b):y),b.abort(),b=null)},o.cancelToken&&o.cancelToken.subscribe(u),o.signal&&(o.signal.aborted?u():o.signal.addEventListener("abort",u)));const x=Zu(o.url);if(x&&ye.protocols.indexOf(x)===-1){n(new oe("Unsupported protocol "+x+":",oe.ERR_BAD_REQUEST,e));return}b.send(s||null)})},af=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,o;const s=function(f){if(!o){o=!0,c();const u=f instanceof Error?f:this.reason;n.abort(u instanceof oe?u:new Nt(u instanceof Error?u.message:u))}};let a=t&&setTimeout(()=>{a=null,s(new oe(`timeout ${t} of ms exceeded`,oe.ETIMEDOUT))},t);const c=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(f=>{f.unsubscribe?f.unsubscribe(s):f.removeEventListener("abort",s)}),e=null)};e.forEach(f=>f.addEventListener("abort",s));const{signal:l}=n;return l.unsubscribe=()=>S.asap(c),l}},cf=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,o;for(;n<r;)o=n+t,yield e.slice(n,o),n=o},lf=async function*(e,t){for await(const r of df(e))yield*cf(r,t)},df=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},Gs=(e,t,r,n)=>{const o=lf(e,t);let s=0,a,c=l=>{a||(a=!0,n&&n(l))};return new ReadableStream({async pull(l){try{const{done:f,value:u}=await o.next();if(f){c(),l.close();return}let p=u.byteLength;if(r){let g=s+=p;r(g)}l.enqueue(new Uint8Array(u))}catch(f){throw c(f),f}},cancel(l){return c(l),o.return()}},{highWaterMark:2})},qs=64*1024,{isFunction:Cr}=S,uf=(({Request:e,Response:t})=>({Request:e,Response:t}))(S.global),{ReadableStream:Xs,TextEncoder:Ys}=S.global,Js=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ff=e=>{e=S.merge.call({skipUndefined:!0},uf,e);const{fetch:t,Request:r,Response:n}=e,o=t?Cr(t):typeof fetch=="function",s=Cr(r),a=Cr(n);if(!o)return!1;const c=o&&Cr(Xs),l=o&&(typeof Ys=="function"?(m=>h=>m.encode(h))(new Ys):async m=>new Uint8Array(await new r(m).arrayBuffer())),f=s&&c&&Js(()=>{let m=!1;const h=new r(ye.origin,{body:new Xs,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!h}),u=a&&c&&Js(()=>S.isReadableStream(new n("").body)),p={stream:u&&(m=>m.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!p[m]&&(p[m]=(h,b)=>{let w=h&&h[m];if(w)return w.call(h);throw new oe(`Response type '${m}' is not supported`,oe.ERR_NOT_SUPPORT,b)})});const g=async m=>{if(m==null)return 0;if(S.isBlob(m))return m.size;if(S.isSpecCompliantForm(m))return(await new r(ye.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(S.isArrayBufferView(m)||S.isArrayBuffer(m))return m.byteLength;if(S.isURLSearchParams(m)&&(m=m+""),S.isString(m))return(await l(m)).byteLength},v=async(m,h)=>{const b=S.toFiniteNumber(m.getContentLength());return b??g(h)};return async m=>{let{url:h,method:b,data:w,signal:x,cancelToken:y,timeout:C,onDownloadProgress:N,onUploadProgress:O,responseType:E,headers:M,withCredentials:F="same-origin",fetchOptions:I}=Rs(m),B=t||fetch;E=E?(E+"").toLowerCase():"text";let R=af([x,y&&y.toAbortSignal()],C),U=null;const D=R&&R.unsubscribe&&(()=>{R.unsubscribe()});let z;try{if(O&&f&&b!=="get"&&b!=="head"&&(z=await v(M,w))!==0){let q=new r(h,{method:"POST",body:w,duplex:"half"}),ie;if(S.isFormData(w)&&(ie=q.headers.get("content-type"))&&M.setContentType(ie),q.body){const[$,j]=Ws(z,Sr(Vs(O)));w=Gs(q.body,qs,$,j)}}S.isString(F)||(F=F?"include":"omit");const k=s&&"credentials"in r.prototype,G={...I,signal:R,method:b.toUpperCase(),headers:M.normalize().toJSON(),body:w,duplex:"half",credentials:k?F:void 0};U=s&&new r(h,G);let L=await(s?B(U,I):B(h,G));const A=u&&(E==="stream"||E==="response");if(u&&(N||A&&D)){const q={};["status","statusText","headers"].forEach(le=>{q[le]=L[le]});const ie=S.toFiniteNumber(L.headers.get("content-length")),[$,j]=N&&Ws(ie,Sr(Vs(N),!0))||[];L=new n(Gs(L.body,qs,$,()=>{j&&j(),D&&D()}),q)}E=E||"text";let ee=await p[S.findKey(p,E)||"text"](L,m);return!A&&D&&D(),await new Promise((q,ie)=>{zs(q,ie,{data:ee,headers:Ne.from(L.headers),status:L.status,statusText:L.statusText,config:m,request:U})})}catch(k){throw D&&D(),k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)?Object.assign(new oe("Network Error",oe.ERR_NETWORK,m,U),{cause:k.cause||k}):oe.from(k,k&&k.code,m,U)}}},pf=new Map,Zs=e=>{let t=e?e.env:{};const{fetch:r,Request:n,Response:o}=t,s=[n,o,r];let a=s.length,c=a,l,f,u=pf;for(;c--;)l=s[c],f=u.get(l),f===void 0&&u.set(l,f=c?new Map:ff(t)),u=f;return f};Zs();const Vn={http:Du,xhr:sf,fetch:{get:Zs}};S.forEach(Vn,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Qs=e=>`- ${e}`,hf=e=>S.isFunction(e)||e===null||e===!1,ea={getAdapter:(e,t)=>{e=S.isArray(e)?e:[e];const{length:r}=e;let n,o;const s={};for(let a=0;a<r;a++){n=e[a];let c;if(o=n,!hf(n)&&(o=Vn[(c=String(n)).toLowerCase()],o===void 0))throw new oe(`Unknown adapter '${c}'`);if(o&&(S.isFunction(o)||(o=o.get(t))))break;s[c||"#"+a]=o}if(!o){const a=Object.entries(s).map(([l,f])=>`adapter ${l} `+(f===!1?"is not supported by the environment":"is not available in the build"));let c=r?a.length>1?`since :
4
+ `+a.map(Qs).join(`
5
+ `):" "+Qs(a[0]):"as no adapter specified";throw new oe("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return o},adapters:Vn};function jn(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Nt(null,e)}function ta(e){return jn(e),e.headers=Ne.from(e.headers),e.data=Wn.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ea.getAdapter(e.adapter||Rt.adapter,e)(e).then(function(n){return jn(e),n.data=Wn.call(e,e.transformResponse,n),n.headers=Ne.from(n.headers),n},function(n){return Hs(n)||(jn(e),n&&n.response&&(n.response.data=Wn.call(e,e.transformResponse,n.response),n.response.headers=Ne.from(n.response.headers))),Promise.reject(n)})}const ra="1.12.2",Er={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Er[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const na={};Er.transitional=function(t,r,n){function o(s,a){return"[Axios v"+ra+"] Transitional option '"+s+"'"+a+(n?". "+n:"")}return(s,a,c)=>{if(t===!1)throw new oe(o(a," has been removed"+(r?" in "+r:"")),oe.ERR_DEPRECATED);return r&&!na[a]&&(na[a]=!0,console.warn(o(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(s,a,c):!0}},Er.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function gf(e,t,r){if(typeof e!="object")throw new oe("options must be an object",oe.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let o=n.length;for(;o-- >0;){const s=n[o],a=t[s];if(a){const c=e[s],l=c===void 0||a(c,s,e);if(l!==!0)throw new oe("option "+s+" must be "+l,oe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new oe("Unknown option "+s,oe.ERR_BAD_OPTION)}}const Nr={assertOptions:gf,validators:Er},Ke=Nr.validators;let gt=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Fs,response:new Fs}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const s=o.stack?o.stack.replace(/^.+\n/,""):"";try{n.stack?s&&!String(n.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
+ `+s):n.stack=s}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=ht(this.defaults,r);const{transitional:n,paramsSerializer:o,headers:s}=r;n!==void 0&&Nr.assertOptions(n,{silentJSONParsing:Ke.transitional(Ke.boolean),forcedJSONParsing:Ke.transitional(Ke.boolean),clarifyTimeoutError:Ke.transitional(Ke.boolean)},!1),o!=null&&(S.isFunction(o)?r.paramsSerializer={serialize:o}:Nr.assertOptions(o,{encode:Ke.function,serialize:Ke.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),Nr.assertOptions(r,{baseUrl:Ke.spelling("baseURL"),withXsrfToken:Ke.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=s&&S.merge(s.common,s[r.method]);s&&S.forEach(["delete","get","head","post","put","patch","common"],m=>{delete s[m]}),r.headers=Ne.concat(a,s);const c=[];let l=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(l=l&&h.synchronous,c.unshift(h.fulfilled,h.rejected))});const f=[];this.interceptors.response.forEach(function(h){f.push(h.fulfilled,h.rejected)});let u,p=0,g;if(!l){const m=[ta.bind(this),void 0];for(m.unshift(...c),m.push(...f),g=m.length,u=Promise.resolve(r);p<g;)u=u.then(m[p++],m[p++]);return u}g=c.length;let v=r;for(;p<g;){const m=c[p++],h=c[p++];try{v=m(v)}catch(b){h.call(this,b);break}}try{u=ta.call(this,v)}catch(m){return Promise.reject(m)}for(p=0,g=f.length;p<g;)u=u.then(f[p++],f[p++]);return u}getUri(t){t=ht(this.defaults,t);const r=js(t.baseURL,t.url,t.allowAbsoluteUrls);return Ls(r,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){gt.prototype[t]=function(r,n){return this.request(ht(n||{},{method:t,url:r,data:(n||{}).data}))}}),S.forEach(["post","put","patch"],function(t){function r(n){return function(s,a,c){return this.request(ht(c||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:s,data:a}))}}gt.prototype[t]=r(),gt.prototype[t+"Form"]=r(!0)});let mf=class Kd{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(s){r=s});const n=this;this.promise.then(o=>{if(!n._listeners)return;let s=n._listeners.length;for(;s-- >0;)n._listeners[s](o);n._listeners=null}),this.promise.then=o=>{let s;const a=new Promise(c=>{n.subscribe(c),s=c}).then(o);return a.cancel=function(){n.unsubscribe(s)},a},t(function(s,a,c){n.reason||(n.reason=new Nt(s,a,c),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Kd(function(o){t=o}),cancel:t}}};function bf(e){return function(r){return e.apply(null,r)}}function vf(e){return S.isObject(e)&&e.isAxiosError===!0}const Kn={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Kn).forEach(([e,t])=>{Kn[t]=e});function oa(e){const t=new gt(e),r=ys(gt.prototype.request,t);return S.extend(r,gt.prototype,t,{allOwnKeys:!0}),S.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return oa(ht(e,o))},r}const be=oa(Rt);be.Axios=gt,be.CanceledError=Nt,be.CancelToken=mf,be.isCancel=Hs,be.VERSION=ra,be.toFormData=yr,be.AxiosError=oe,be.Cancel=be.CanceledError,be.all=function(t){return Promise.all(t)},be.spread=bf,be.isAxiosError=vf,be.mergeConfig=ht,be.AxiosHeaders=Ne,be.formToJSON=e=>Bs(S.isHTMLForm(e)?new FormData(e):e),be.getAdapter=ea.getAdapter,be.HttpStatusCode=Kn,be.default=be;const{Axios:Ow,AxiosError:kw,CanceledError:Mw,isCancel:Dw,CancelToken:Lw,VERSION:Fw,all:$w,Cancel:Bw,isAxiosError:Uw,spread:Hw,toFormData:zw,AxiosHeaders:Ww,HttpStatusCode:Vw,formToJSON:jw,getAdapter:Kw,mergeConfig:Rw}=be,Rn={};function Tr(){var e;try{return typeof window<"u"&&((e=window.localStorage)==null?void 0:e.getItem("chat-debug"))==="1"}catch{return!1}}const sa=Rn==null?void 0:Rn.VITE_API_BASE_URL,aa=sa?sa.replace(/\/+$/,""):void 0;!aa&&typeof window<"u"&&console.warn("VITE_API_BASE_URL is not set. The API client will need to be configured via apiConfig prop.");let Ar=null;const Gn=new Set;function ia(){return Ar}function qn(e){Ar=e,Gn.forEach(t=>t(e))}function ca(e){return Gn.add(e),()=>Gn.delete(e)}const nt=be.create({baseURL:aa||"http://localhost:8000",timeout:3e4,withCredentials:!0});nt.interceptors.request.use(e=>(Ar&&(e.headers.Authorization=`Bearer ${Ar}`),e)),nt.interceptors.response.use(e=>e,e=>Promise.reject(e));async function Re(e,t){return(await nt.get(e,t)).data}async function Pr(e,t,r){return(await nt.post(e,t,r)).data}async function la(e,t,r){return(await nt.put(e,t,r)).data}async function da(e,t){return(await nt.delete(e,t)).data}function Te(e){return e&&typeof e=="object"&&"data"in e?e.data:e}class Ir{get baseUrl(){const t=nt.defaults.baseURL||"";return String(t).replace(/\/+$|^\s+|\s+$/g,"")}updateConfig(t){t.baseUrl&&(nt.defaults.baseURL=String(t.baseUrl).replace(/\/+$/g,"")),t.authToken!==void 0&&qn(t.authToken)}getAuthToken(){return ia()}setAuthToken(t){qn(t)}onTokenChange(t){return ca(t)}async listThreads(){const t=await Re("/chat/threads"),r=Te(t);return(r==null?void 0:r.items)??(t==null?void 0:t.items)??[]}async createThread(t){const n=await Pr("/chat/threads",t?{title:t}:void 0);return Te(n)}async updateThread(t,r){const n=await la(`/chat/threads/${t}`,{title:r});return Te(n)}async deleteThread(t){const r=await da(`/chat/threads/${t}`);return Te(r)}async threadInfo(t){const r=await Re(`/chat/threads/${t}/info`);return Te(r)}async listAgents(){const t=await Re("/chat/agents"),r=Te(t);return(r==null?void 0:r.items)??[]}async getAgent(t){const r=await Re(`/chat/agents/${t}`);return Te(r)}async getAgentSchema(t){const r=await Re(`/chat/agents/${t}/schema`);return Te(r)}async getMessages(t){const r=await Re(`/chat/threads/${t.threadId}/messages`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs,limit:t.limit,before_id:t.beforeId??void 0}});return Te(r)}async getState(t){const r=await Re(`/chat/threads/${t.threadId}/state`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs}});return Te(r)}async getStateHistory(t){const r=await Re(`/chat/threads/${t.threadId}/state/history`,{params:{thread_id:t.threadId,checkpoint_id:t.checkpointId,checkpoint_ns:t.checkpointNs}});return Te(r)}async listCheckpoints(t){const r=await Re(`/chat/threads/${t}/checkpoints`,{params:{thread_id:t}});return Te(r)}async uploadExcel(t,r="/upload_excel",n={}){const o=new FormData,s=t.name.replace(/\.[^.]+$/,"").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")||`excel_${Date.now()}`,a=(n.tableName??s).trim();o.append("file",t,t.name),o.append("table_name",a),n.sheetName&&o.append("sheet_name",n.sheetName),Tr()&&console.debug("[api.uploadExcel] ->",r,{name:t.name,size:t.size,tableName:a,sheetName:n.sheetName});const c=await Pr(r,o,{headers:{Accept:"application/json"},maxBodyLength:1/0}),l=Te(c);return Tr()&&console.debug("[api.uploadExcel] <-",l),l}async uploadImage(t,r="/upload"){const n=new FormData;n.append("file",t,t.name),Tr()&&console.debug("[api.uploadImage] ->",r,{name:t.name,type:t.type,size:t.size});const o=await Pr(r,n,{headers:{Accept:"application/json"},maxBodyLength:1/0}),s=Te(o);if(Tr()&&console.debug("[api.uploadImage] <-",s),!(s!=null&&s.url))throw new Error("Invalid upload response: missing url");return{url:s.url,mimeType:s.mimeType??t.type,name:s.name??t.name,size:s.size??t.size}}}const Qe=new Ir;function ua(e={}){const t=e.baseUrl??"/api/chat",r=e.streamPath??"/runs/stream",[n,o]=T.useState(e.token??null),s=T.useRef(e.headers??{}),[a,c]=T.useState(!1),[l,f]=T.useState(null),[u,p]=T.useState(""),[g,v]=T.useState(null),m=T.useRef(null),h=T.useCallback(y=>{o(y)},[]),b=T.useCallback(()=>{var y;(y=m.current)==null||y.abort(),m.current=null,c(!1)},[]),w=T.useCallback(()=>{p(""),v(null),f(null)},[]),x=T.useCallback((y,C,N)=>{m.current&&(m.current.abort(),m.current=null),c(!0),f(null),e.autoAppendAssistant!==!1&&p("");const O=new AbortController;return m.current=O,(async()=>{var F,I,B,R,U;const E=(()=>{var D;try{return typeof window<"u"&&((D=window.localStorage)==null?void 0:D.getItem("chat-debug"))==="1"}catch{return!1}})(),M=D=>{var z;try{const k=JSON.parse(JSON.stringify(D));return(z=k==null?void 0:k.payload)!=null&&z.files_info&&Array.isArray(k.payload.files_info)&&(k.payload.files_info=k.payload.files_info.map(G=>({...G,data:G!=null&&G.data?`<base64 ${String(G.data).length} chars>`:G==null?void 0:G.data}))),k}catch{return D}};try{let D={};try{if(n)D={Authorization:`Bearer ${n}`};else if(typeof window<"u"){const ee=window.__AUTH_TOKEN__,q=((F=window.localStorage)==null?void 0:F.getItem("authToken"))||null;let ie=null;try{const j=(I=window.localStorage)==null?void 0:I.getItem("chat-settings");j&&(ie=((B=JSON.parse(j))==null?void 0:B.apiKey)||null)}catch{}const $=ee||q||ie||null;$&&(D={Authorization:`Bearer ${$}`})}}catch{}E&&console.debug("[use-chat] POST",t+r,M(y));const z=await fetch(t+r,{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream",...D,...s.current},body:JSON.stringify(y),signal:O.signal});if(!z.ok||!z.body){const A=await z.text().catch(()=>"");throw E&&console.debug("[use-chat] non-OK response",z.status,A==null?void 0:A.slice(0,500)),new Error(`stream ${z.status}${A?": "+A:""}`)}try{const A=z.headers.get("X-Thread-Id")||z.headers.get("x-thread-id"),ee=z.headers.get("X-Thread-Created")||z.headers.get("x-thread-created"),q=A??null,ie=String(ee??"").toLowerCase()==="true";try{(R=N==null?void 0:N.onOpen)==null||R.call(N,{threadId:q,created:ie})}catch($){E&&console.debug("[use-chat] onOpen handler threw:",$)}}catch(A){E&&console.debug("[use-chat] failed to read headers:",A)}const k=z.body.getReader(),G=new TextDecoder;let L="";for(;;){const{value:A,done:ee}=await k.read();if(ee)break;L+=G.decode(A,{stream:!0});let q;for(;(q=L.indexOf(`
7
7
 
8
- `))>=0;){const ce=L.slice(0,q);L=L.slice(q+2);const $=vf(ce);if(!$)continue;let K;try{K=JSON.parse($)}catch{E&&console.debug("[use-chat] skip malformed SSE data:",$==null?void 0:$.slice(0,200));continue}const le=bf(K)?K.data:K;if(E&&console.debug("[use-chat] event:",le==null?void 0:le.type,le),C==null||C(le),le.type==="token")e.autoAppendAssistant!==!1&&p(pe=>pe+le.content);else if(le.type==="message_delta"){const pe=le.delta.filter(W=>W.type==="text").map(W=>W.text).join("");pe&&e.autoAppendAssistant!==!1&&p(W=>W+pe)}else le.type==="checkpoint"?v(le.checkpointId):le.type==="error"&&f(le.message)}}}catch(D){if((D==null?void 0:D.name)==="AbortError")return;const z=(D==null?void 0:D.message)||String(D);E&&console.debug("[use-chat] error:",z),f(z),(U=N==null?void 0:N.onError)==null||U.call(N,z)}finally{c(!1),m.current=null}})(),{close:()=>O.abort()}},[t,n,e.autoAppendAssistant]);return T.useEffect(()=>()=>{var y;return(y=m.current)==null?void 0:y.abort()},[]),{isStreaming:a,error:l,assistantText:u,lastCheckpointId:g,stream:x,stop:b,clear:w,setToken:h}}function bf(e){return!!e&&typeof e=="object"&&e.protocolVersion==="v1"&&"data"in e}function vf(e){const t=e.split(/\r?\n/),r=[];for(const n of t)if(n&&!n.startsWith(":")&&n.startsWith("data:")){const o=n.slice(5);r.push(o.startsWith(" ")?o.slice(1):o)}return r.length===0?null:r.join(`
9
- `)}const wf={messages:[],assemblingId:null,lastCheckpointId:null,toolIndex:{},lastBranch:null};function yf(e,t){var r,n;switch(t.type){case"reset":return{messages:qn(((r=t.payload)==null?void 0:r.messages)??[]),assemblingId:null,lastCheckpointId:null,toolIndex:{},lastBranch:null};case"seed":return{...e,messages:qn(t.payload.messages)};case"prepend":{const o=qn(t.payload.messages);if(!o.length)return e;const s=new Set(e.messages.map(c=>c.id)),a=o.filter(c=>!s.has(c.id));return a.length?{...e,messages:[...a,...e.messages]}:e}case"user_message":{const o=t.payload.message;if(e.assemblingId){const s=e.messages.findIndex(a=>a.id===e.assemblingId&&a.role==="assistant");if(s>=0){const a=e.messages.slice(0,s),c=e.messages.slice(s);return{...e,messages:[...a,o,...c]}}}return{...e,messages:[...e.messages,o]}}case"event":{const o=t.payload.ev;if(o.type==="message_start"&&o.role==="assistant"){const s=o.id,a=Ef(o.model),c={id:s,role:"assistant",name:a||void 0,model:o.model,createdAt:new Date().toISOString(),content:[]};return{...e,assemblingId:s,messages:[...e.messages,c]}}if(o.type==="token"){const s=e.assemblingId??Xn(e.messages);return s?{...e,messages:xf(e.messages,s,o.content)}:e}if(o.type==="message_delta"){const s=e.assemblingId??Xn(e.messages);return s?{...e,messages:ua(e.messages,s,o.delta)}:e}if(o.type==="message_end"){const s=e.assemblingId??Xn(e.messages);if(!s)return{...e,assemblingId:null};const a=e.messages,c=a.findIndex(l=>l.id===s&&l.role==="assistant");if(c>=0&&!((n=a[c].content)==null?void 0:n.some(u=>{var p;return(u==null?void 0:u.type)==="text"&&((p=u.text)==null?void 0:p.trim())}))){const u=[...a.slice(0,c),...a.slice(c+1)];return{...e,assemblingId:null,messages:u}}return{...e,assemblingId:null}}if(o.type==="tool_start"){const s=`tool-${o.id}`,a={type:"tool_call",id:o.id,name:o.name,args:o.args},c={id:s,role:"tool",name:o.name,createdAt:new Date().toISOString(),content:[a]};return{...e,messages:[...e.messages,c],toolIndex:{...e.toolIndex,[o.id]:s}}}if(o.type==="tool_result"){const s=e.toolIndex[o.id]??`tool-${o.id}`,a={type:"tool_result",toolCallId:o.id,output:o.output,error:o.error},c=e.messages.find(u=>u.id===s),l={id:s,role:"tool",content:[a],createdAt:new Date().toISOString()},f=c?ua(e.messages,s,[a]):[...e.messages,l];return{...e,messages:f}}if(o.type==="checkpoint"){const s=Cf(e.messages,o.checkpointId);return{...e,lastCheckpointId:o.checkpointId,messages:s}}if(o.type==="branch"){const s=o.checkpointId??e.lastCheckpointId;return{...e,lastBranch:o,lastCheckpointId:s??null}}if(o.type==="error"){const s={id:`err-${Date.now()}`,role:"system",content:[{type:"text",text:`Error: ${o.message}`}],createdAt:new Date().toISOString()};return{...e,messages:[...e.messages,s]}}return e}default:return e}}function da(e=[]){const[t,r]=T.useReducer(yf,{...wf,messages:e}),n=T.useCallback(s=>{r({type:"event",payload:{ev:s}})},[]),o=T.useMemo(()=>({reset:s=>r({type:"reset",payload:{messages:s}}),seed:s=>r({type:"seed",payload:{messages:s}}),prepend:s=>r({type:"prepend",payload:{messages:s}}),pushUser:s=>r({type:"user_message",payload:{message:s}}),onEvent:n}),[n]);return{state:t,dispatch:r,...o}}function qn(e){return e.filter(t=>{if(t.role!=="assistant")return!0;const r=(t.content||[]).some(o=>{var s;return o&&o.type==="text"&&((s=o.text)==null?void 0:s.trim())}),n=(t.content||[]).some(o=>o&&o.type==="image_url");return!!(r||n)})}function Xn(e){for(let t=e.length-1;t>=0;t--)if(e[t].role==="assistant")return e[t].id;return null}function xf(e,t,r){return e.map(n=>{if(n.id!==t)return n;const o=n.content.slice(),s=o[o.length-1];return s&&s.type==="text"?s.text+=r:o.push({type:"text",text:r}),{...n,content:o}})}function ua(e,t,r){return e.map(n=>n.id===t?{...n,content:Sf(n.content,r)}:n)}function Sf(e,t){const r=e.slice();for(const n of t)if(n.type==="text"){const o=r[r.length-1];(o==null?void 0:o.type)==="text"?o.text+=n.text:r.push({type:"text",text:n.text})}else r.push(n);return r}function Cf(e,t){for(let r=e.length-1;r>=0;r--)if(e[r].role==="assistant"){const o={...e[r],checkpointId:t};return[...e.slice(0,r),o,...e.slice(r+1)]}return e}function Ef(e){if(!e)return null;const t=e.split("/");return t[t.length-1]||null}const fa=T.createContext(null);function Rt({children:e,apiConfig:t,onError:r,onThreadChange:n,initialThreadId:o=null,historyPageSize:s,enableFileAgentRouting:a=!1,fileAgentId:c="invoice_reader"}){const l=Qe;T.useEffect(()=>{t&&l.updateConfig({baseUrl:t.baseUrl,authToken:t.apiKey})},[l,t]);const{isStreaming:f,error:u,stream:p,stop:g,setToken:v}=la({baseUrl:l.baseUrl,token:null,headers:t==null?void 0:t.headers,streamPath:"/chat/runs/stream"}),[m,h]=T.useState(()=>typeof l.getAuthToken=="function"?l.getAuthToken():null);T.useEffect(()=>{v(typeof l.getAuthToken=="function"?l.getAuthToken():null);const X=l.onTokenChange(Y=>{h(Y),v(Y)});return()=>{X()}},[l,v]);const b=T.useCallback(X=>{l.setAuthToken(X)},[l]),{state:w,seed:x,prepend:y,pushUser:C,onEvent:N,reset:O}=da(),E=s&&s>0?s:6,[M,F]=T.useState(!1),[I,B]=T.useState(!1),[R,U]=T.useState(null),[D,z]=T.useState(void 0),k=T.useCallback((X,Y)=>{const ge=Array.isArray(X==null?void 0:X.messages)?X.messages:[];Y==="replace"?x(ge):Y==="prepend"&&ge.length&&y(ge),U((X==null?void 0:X.nextCursor)??null),F(!!(X!=null&&X.hasMore)),z(We=>(X==null?void 0:X.checkpointId)??We??void 0)},[x,y]),[G,L]=T.useState([]),[A,ee]=T.useState(null),q=T.useCallback(async()=>{const X=await l.listThreads();L(X)},[l]);T.useEffect(()=>{q().catch(()=>{})},[q]),T.useEffect(()=>{n==null||n(A)},[A,n]);const ce=T.useRef(null);T.useEffect(()=>{o&&ce.current!==o&&(ce.current=o,K(o).catch(()=>{}))},[o]);const $=T.useRef(null),K=T.useCallback(async(X,Y,ge)=>{if($.current!==X){$.current=X;try{F(!1),U(null),z(void 0);const We=await l.getMessages({threadId:X,checkpointId:Y,checkpointNs:ge,limit:E});ee(X),k(We,"replace")}finally{$.current=null}}},[l,k]),le=T.useCallback(async X=>l.listCheckpoints(X),[l]),pe=T.useCallback(async X=>{if(!A)throw new Error("No active thread");F(!1),U(null),z(void 0);const Y=await l.getMessages({threadId:A,checkpointId:X,limit:E});k(Y,"replace")},[l,A,k,E]),W=T.useCallback(async()=>{if(!A)throw new Error("No active thread");await K(A)},[A,K]),V=T.useRef(!1);T.useEffect(()=>{const X=V.current;if(V.current=f,X&&!f&&A){const Y=w.lastCheckpointId??void 0;(async()=>{try{const ge=await l.getMessages({threadId:A,checkpointId:Y,limit:E});k(ge,"replace")}catch{}try{await q()}catch{}})()}},[f,A,w.lastCheckpointId,l,k,q]);const se=T.useCallback(async X=>{const Y=await l.createThread(X);return await q(),await K(Y.threadId),Y.threadId},[l,q,K]),j=T.useCallback(async X=>{await l.deleteThread(X),await q(),A===X&&(ee(null),O([]),F(!1),U(null),z(void 0))},[l,q,A,O]),Q=T.useCallback(async(X,Y)=>{await l.updateThread(X,Y),await q()},[l,q]),Z=T.useCallback(async(X,Y)=>{var _n;async function ge(ae){return await new Promise((ye,Pe)=>{const Ve=new FileReader;Ve.onload=()=>ye(String(Ve.result)),Ve.onerror=rt=>Pe(rt),Ve.readAsDataURL(ae)})}async function We(ae){return await new Promise((ye,Pe)=>{const Ve=new FileReader;Ve.onload=()=>{try{const rt=Ve.result;let On="";const _=new Uint8Array(rt),re=_.byteLength;for(let de=0;de<re;de++)On+=String.fromCharCode(_[de]);ye(btoa(On))}catch(rt){Pe(rt)}},Ve.onerror=rt=>Pe(rt),Ve.readAsArrayBuffer(ae)})}const Ae=[];X&&Ae.push({type:"text",text:X});const An=(Y==null?void 0:Y.attachments)||[];let ur=[];if(An.length>0)for(const ae of An)if(ae.type&&ae.type.startsWith("image/")){let ye=null;try{const Pe=await l.uploadImage(ae,(t==null?void 0:t.uploadPath)||"/upload").catch(()=>null);ye=(Pe==null?void 0:Pe.url)||null}catch{}if(!ye)try{ye=await ge(ae)}catch{ye=null}if(ye){const Pe={type:"image_url",url:ye,mimeType:ae.type,alt:ae.name};Ae.push(Pe)}try{ur.push({filename:ae.name,data:await We(ae),mime_type:ae.type||"application/octet-stream"})}catch{}}else{const ye=await ge(ae).catch(()=>null),Pe={type:"file",url:String(ye),mimeType:ae.type||void 0,name:ae.name,size:ae.size};Ae.push(Pe);try{ur.push({filename:ae.name,data:await We(ae),mime_type:ae.type||"application/octet-stream"})}catch{}}const St={id:((_n=crypto.randomUUID)==null?void 0:_n.call(crypto))||`user-${Date.now()}`,role:"user",content:Ae,createdAt:new Date().toISOString(),checkpointId:(Y==null?void 0:Y.checkpointId)??w.lastCheckpointId??void 0};C(St);const ps={...St,content:St.content.filter(ae=>ae.type==="text"||ae.type==="image_url")},fr={...(Y==null?void 0:Y.payloadExtras)??{}},Pn=!!fr.edit,In=fr.originalMessageId,pr=typeof In=="string"?In:void 0,hs=(Y==null?void 0:Y.attachments)&&Y.attachments.length>0,gs={...A?{threadId:A}:{},payload:{messages:[ps],attachments:St.content.filter(ae=>ae.type==="file").map(ae=>({type:"file",url:ae.url,mimeType:ae.mimeType,name:ae.name,size:ae.size})),files_info:ur,...a&&hs&&c?{agent_id:c}:{},...fr},checkpointId:(Y==null?void 0:Y.checkpointId)??w.lastCheckpointId??void 0,checkpointNs:Y==null?void 0:Y.checkpointNs,nodeFilter:Y==null?void 0:Y.nodeFilter,config:Y==null?void 0:Y.config,edit:Pn,originalMessageId:pr};p(gs,ae=>N(ae),{onError:ae=>console.warn("stream error",ae),onOpen:({threadId:ae,created:ye})=>{!A&&ae&&(ee(ae),ye&&q().catch(()=>{}))}})},[A,C,p,N,w.lastCheckpointId,l,t==null?void 0:t.uploadPath,q,ee]),he=T.useCallback(async X=>{if(!A)throw new Error("No active thread");if(I||!M)return;const Y=R;if(Y){B(!0);try{const ge=await l.getMessages({threadId:A,checkpointId:D,limit:(X==null?void 0:X.limit)??E,beforeId:Y});k(ge,"prepend")}finally{B(!1)}}},[l,A,D,R,M,I,k]),Se={baseUrl:l.baseUrl,token:m,setToken:b,api:l,threads:G,currentThreadId:A,setCurrentThreadId:ee,messages:w.messages,isStreaming:f,error:u,lastCheckpointId:w.lastCheckpointId,streamingAssistantId:w.assemblingId,hasMoreHistory:M,isLoadingHistory:I,loadOlderMessages:he,historyPageSize:E,listCheckpoints:le,navigateToCheckpoint:pe,returnToLatest:W,refreshThreads:q,createThread:se,deleteThread:j,renameThread:Q,loadThread:K,send:Z,stop:g};return i.jsx(fa.Provider,{value:Se,children:e})}function Yn(){const e=T.useContext(fa);if(!e)throw new Error("useChat must be used within ChatProvider");return e}function P(...e){return Kd.twMerge(jd.clsx(e))}const Nf=Ht.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),fe=d.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const a=n?Ie.Slot:"button";return i.jsx(a,{className:P(Nf({variant:t,size:r,className:e})),ref:s,...o})});fe.displayName="Button";const pa=d.forwardRef(({className:e,...t},r)=>i.jsx("textarea",{className:P("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...t}));pa.displayName="Textarea";const Tf=Ht.cva("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function ha({className:e,variant:t,...r}){return i.jsx("div",{className:P(Tf({variant:t}),e),...r})}function H(e,t,{checkForDefaultPrevented:r=!0}={}){return function(o){if(e==null||e(o),r===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function Af(e,t){const r=d.createContext(t),n=s=>{const{children:a,...c}=s,l=d.useMemo(()=>c,Object.values(c));return i.jsx(r.Provider,{value:l,children:a})};n.displayName=e+"Provider";function o(s){const a=d.useContext(r);if(a)return a;if(t!==void 0)return t;throw new Error(`\`${s}\` must be used within \`${e}\``)}return[n,o]}function Fe(e,t=[]){let r=[];function n(s,a){const c=d.createContext(a),l=r.length;r=[...r,a];const f=p=>{var w;const{scope:g,children:v,...m}=p,h=((w=g==null?void 0:g[e])==null?void 0:w[l])||c,b=d.useMemo(()=>m,Object.values(m));return i.jsx(h.Provider,{value:b,children:v})};f.displayName=s+"Provider";function u(p,g){var h;const v=((h=g==null?void 0:g[e])==null?void 0:h[l])||c,m=d.useContext(v);if(m)return m;if(a!==void 0)return a;throw new Error(`\`${p}\` must be used within \`${s}\``)}return[f,u]}const o=()=>{const s=r.map(a=>d.createContext(a));return function(c){const l=(c==null?void 0:c[e])||s;return d.useMemo(()=>({[`__scope${e}`]:{...c,[e]:l}}),[c,l])}};return o.scopeName=e,[n,Pf(o,...t)]}function Pf(...e){const t=e[0];if(e.length===1)return t;const r=()=>{const n=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const a=n.reduce((c,{useScope:l,scopeName:f})=>{const p=l(s)[`__scope${f}`];return{...c,...p}},{});return d.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return r.scopeName=t.scopeName,r}var be=globalThis!=null&&globalThis.document?d.useLayoutEffect:()=>{},If=d[" useInsertionEffect ".trim().toString()]||be;function ot({prop:e,defaultProp:t,onChange:r=()=>{},caller:n}){const[o,s,a]=_f({defaultProp:t,onChange:r}),c=e!==void 0,l=c?e:o;{const u=d.useRef(e!==void 0);d.useEffect(()=>{const p=u.current;p!==c&&console.warn(`${n} is changing from ${p?"controlled":"uncontrolled"} to ${c?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=c},[c,n])}const f=d.useCallback(u=>{var p;if(c){const g=Of(u)?u(e):u;g!==e&&((p=a.current)==null||p.call(a,g))}else s(u)},[c,e,s,a]);return[l,f]}function _f({defaultProp:e,onChange:t}){const[r,n]=d.useState(e),o=d.useRef(r),s=d.useRef(t);return If(()=>{s.current=t},[t]),d.useEffect(()=>{var a;o.current!==r&&((a=s.current)==null||a.call(s,r),o.current=r)},[r,o]),[r,n,s]}function Of(e){return typeof e=="function"}function ga(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Jn(...e){return t=>{let r=!1;const n=e.map(o=>{const s=ga(o,t);return!r&&typeof s=="function"&&(r=!0),s});if(r)return()=>{for(let o=0;o<n.length;o++){const s=n[o];typeof s=="function"?s():ga(e[o],null)}}}}function ie(...e){return d.useCallback(Jn(...e),e)}var kf=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],te=kf.reduce((e,t)=>{const r=Ie.createSlot(`Primitive.${t}`),n=d.forwardRef((o,s)=>{const{asChild:a,...c}=o,l=a?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(l,{...c,ref:s})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function ma(e,t){e&&hr.flushSync(()=>e.dispatchEvent(t))}function Mf(e,t){return d.useReducer((r,n)=>t[r][n]??r,e)}var Te=e=>{const{present:t,children:r}=e,n=Df(t),o=typeof r=="function"?r({present:n.isPresent}):d.Children.only(r),s=ie(n.ref,Lf(o));return typeof r=="function"||n.isPresent?d.cloneElement(o,{ref:s}):null};Te.displayName="Presence";function Df(e){const[t,r]=d.useState(),n=d.useRef(null),o=d.useRef(e),s=d.useRef("none"),a=e?"mounted":"unmounted",[c,l]=Mf(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return d.useEffect(()=>{const f=Ir(n.current);s.current=c==="mounted"?f:"none"},[c]),be(()=>{const f=n.current,u=o.current;if(u!==e){const g=s.current,v=Ir(f);e?l("MOUNT"):v==="none"||(f==null?void 0:f.display)==="none"?l("UNMOUNT"):l(u&&g!==v?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),be(()=>{if(t){let f;const u=t.ownerDocument.defaultView??window,p=v=>{const h=Ir(n.current).includes(CSS.escape(v.animationName));if(v.target===t&&h&&(l("ANIMATION_END"),!o.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",f=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},g=v=>{v.target===t&&(s.current=Ir(n.current))};return t.addEventListener("animationstart",g),t.addEventListener("animationcancel",p),t.addEventListener("animationend",p),()=>{u.clearTimeout(f),t.removeEventListener("animationstart",g),t.removeEventListener("animationcancel",p),t.removeEventListener("animationend",p)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:d.useCallback(f=>{n.current=f?getComputedStyle(f):null,r(f)},[])}}function Ir(e){return(e==null?void 0:e.animationName)||"none"}function Lf(e){var n,o;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var Ff=d[" useId ".trim().toString()]||(()=>{}),$f=0;function $e(e){const[t,r]=d.useState(Ff());return be(()=>{r(n=>n??String($f++))},[e]),t?`radix-${t}`:""}var _r="Collapsible",[Bf,Kw]=Fe(_r),[Uf,Zn]=Bf(_r),ba=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,open:n,defaultOpen:o,disabled:s,onOpenChange:a,...c}=e,[l,f]=ot({prop:n,defaultProp:o??!1,onChange:a,caller:_r});return i.jsx(Uf,{scope:r,disabled:s,contentId:$e(),open:l,onOpenToggle:d.useCallback(()=>f(u=>!u),[f]),children:i.jsx(te.div,{"data-state":eo(l),"data-disabled":s?"":void 0,...c,ref:t})})});ba.displayName=_r;var va="CollapsibleTrigger",wa=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,...n}=e,o=Zn(va,r);return i.jsx(te.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":eo(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...n,ref:t,onClick:H(e.onClick,o.onOpenToggle)})});wa.displayName=va;var Qn="CollapsibleContent",Hf=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Zn(Qn,e.__scopeCollapsible);return i.jsx(Te,{present:r||o.open,children:({present:s})=>i.jsx(zf,{...n,ref:t,present:s})})});Hf.displayName=Qn;var zf=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,present:n,children:o,...s}=e,a=Zn(Qn,r),[c,l]=d.useState(n),f=d.useRef(null),u=ie(t,f),p=d.useRef(0),g=p.current,v=d.useRef(0),m=v.current,h=a.open||c,b=d.useRef(h),w=d.useRef(void 0);return d.useEffect(()=>{const x=requestAnimationFrame(()=>b.current=!1);return()=>cancelAnimationFrame(x)},[]),be(()=>{const x=f.current;if(x){w.current=w.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const y=x.getBoundingClientRect();p.current=y.height,v.current=y.width,b.current||(x.style.transitionDuration=w.current.transitionDuration,x.style.animationName=w.current.animationName),l(n)}},[a.open,n]),i.jsx(te.div,{"data-state":eo(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!h,...s,ref:u,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":m?`${m}px`:void 0,...e.style},children:h&&o})});function eo(e){return e?"open":"closed"}var Wf=ba;const ya=Wf,xa=wa;function Gt({content:e,className:t=""}){const r=T.useMemo(()=>({table:({node:f,className:u,...p})=>i.jsx("div",{className:"max-w-full",children:i.jsx("table",{...p,className:P("w-full table-fixed border-collapse break-words",u)})}),th:({node:f,className:u,...p})=>i.jsx("th",{...p,className:P("break-words whitespace-normal border-b border-border/60 px-3 py-2 text-left align-top",u)}),td:({node:f,className:u,...p})=>i.jsx("td",{...p,className:P("break-words whitespace-normal border-b border-border/30 px-3 py-2 align-top",u)}),pre:({node:f,className:u,...p})=>i.jsx("pre",{...p,className:P("whitespace-pre-wrap break-words",u)}),code:({node:f,className:u,children:p,...g})=>{const{inline:v,...m}=g;return v?i.jsx("code",{...m,className:P("break-words whitespace-normal",u),children:p}):i.jsx("code",{...m,className:P("block break-words whitespace-pre-wrap",u),children:p})}}),[]),n=P("prose prose-sm max-w-none break-words dark:prose-invert leading-relaxed","prose-headings:break-words prose-p:break-words prose-li:break-words prose-td:break-words prose-th:break-words","prose-a:break-all prose-blockquote:break-words prose-strong:break-words prose-em:break-words","prose-code:break-words prose-pre:rounded prose-pre:border prose-pre:bg-background/50","prose-code:bg-background/50 prose-code:px-1 prose-code:py-0.5 prose-code:rounded prose-table:my-4 prose-th:px-2 prose-td:px-2",t);return i.jsx("div",{className:n,style:{wordBreak:"break-word",overflowWrap:"anywhere"},children:i.jsx(Rd,{remarkPlugins:[Gd],components:r,children:e})})}const Or="prose prose-sm max-w-none break-words dark:prose-invert prose-headings:break-words prose-p:break-words prose-li:break-words prose-td:break-words prose-th:break-words prose-a:break-all prose-code:break-words prose-blockquote:break-words";function Vf({className:e}){const[t,r]=T.useState(0);return T.useEffect(()=>{const n=setInterval(()=>r(o=>(o+1)%4),500);return()=>clearInterval(n)},[]),i.jsxs("span",{"aria-live":"polite",className:P("inline-block text-xs opacity-70 ml-1",e),children:["Is thinking",".".repeat(t)]})}function Sa({message:e,messageIndex:t,isStreamingMessage:r=!1,streamingDebounceMs:n=40,isEditing:o=!1,showActions:s=!0,showTimestamp:a=!0,showAgentName:c=!0,layoutSize:l="desktop",truncateToolMessages:f=!0,toolMessagePreviewLength:u=200,truncateUserMessages:p=!0,userMessagePreviewLength:g=200,customStyles:v={},onEdit:m,onRegenerate:h,onCancelEdit:b,onCopy:w}){const[x,y]=T.useState(!1),[C,N]=T.useState(!1),[O,E]=T.useState(!1),[M,F]=T.useState(!1),I=l==="phone"||l==="half-screen",B=e.role,R=B==="tool",U=T.useMemo(()=>{switch(B){case"user":return"text-[hsl(var(--chat-bubble-user-text))]";case"assistant":return"text-[hsl(var(--chat-bubble-ai-text))]";case"tool":return"text-secondary-foreground";case"system":return"text-muted-foreground";default:return"text-foreground"}},[B]),D=T.useMemo(()=>jf(e.content),[e.content]),z=T.useMemo(()=>Yf(e.content),[e.content]),k=T.useMemo(()=>e.content.filter(V=>V.type==="image_url"),[e.content]),G=T.useMemo(()=>e.content.filter(V=>V.type==="file"),[e.content]),L=Zf(D,r?n:0),A=async()=>{try{const V=R?Tt(e.content):D;await navigator.clipboard.writeText(V),y(!0),setTimeout(()=>y(!1),2e3),w==null||w(V)}catch(V){console.error("Failed to copy:",V)}},ee=()=>{if(!m)return;const V=R?Tt(e.content):D;m(e.id,V)},q=()=>h==null?void 0:h(t),ce=()=>{const se=P(I?"h-3 w-3":"h-4 w-4","opacity-60 flex-shrink-0",U);switch(B){case"user":return i.jsx(J.User,{className:se});case"assistant":return i.jsx(J.Bot,{className:se});case"tool":return i.jsx(J.Wrench,{className:se});default:return i.jsx(J.Bot,{className:se})}},$=()=>{const V="group relative mb-4 flex w-full";switch(B){case"user":return P(V,"justify-end");case"assistant":case"tool":case"system":return P(V,"justify-start");default:return V}},K=()=>{const V=P("rounded-lg px-4 py-3 relative transition-all duration-200 min-w-0 max-w-full break-words",I&&"px-3 py-2 text-sm");switch(B){case"user":return P(V,"w-full md:max-w-[95%]","bg-[hsl(var(--chat-bubble-user))] text-[hsl(var(--chat-bubble-user-text))]","border border-transparent");case"assistant":return P(V,"w-full md:max-w-[95%]","bg-[hsl(var(--chat-bubble-ai))] text-[hsl(var(--chat-bubble-ai-text))]","border border-border/60 dark:border-border/40");case"tool":return P(V,"w-full md:max-w-[95%] bg-secondary/50 text-secondary-foreground border border-dashed");case"system":return P(V,"w-full md:max-w-[85%] bg-accent/40 text-muted-foreground border");default:return V}},le=V=>{if(!V)return"";try{return new Date(V).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch{return""}},pe=()=>{if(e.model==="reflection"){const j=D.trim(),Q=to(j);if(Q&&typeof Q=="object")return i.jsx(Qf,{data:Q})}if(R&&z.name==="get_issues"){const j=e.content.find(he=>he.type==="tool_result"),Q=(j==null?void 0:j.output)??Tt(e.content),Z=Ea(Q);if(Z)return i.jsx(ep,{issues:Z})}if(R&&!O){const j=Tt(e.content).slice(0,80).replace(/\s+/g," ");return i.jsx("div",{className:P("text-xs font-mono opacity-70 flex items-center justify-between gap-2 text-current",I&&"text-[10px]"),children:i.jsxs("span",{className:"truncate max-w-full text-current",children:[j,j.length>=80?"…":""]})})}if(R&&f){const j=Tt(e.content),Q=j.length>u;return i.jsx(ya,{open:C,onOpenChange:N,children:i.jsxs("div",{className:"font-mono text-sm text-current",children:[i.jsx("pre",{className:P("whitespace-pre-wrap break-words text-current",I&&"text-xs"),children:Q&&!C?j.substring(0,u)+"...":j}),Q&&i.jsx(xa,{asChild:!0,children:i.jsx(fe,{variant:"ghost",size:"sm",className:"h-6 text-xs text-current",children:C?i.jsxs(i.Fragment,{children:[i.jsx(J.ChevronUp,{className:"h-3 w-3 mr-1"}),"Show less"]}):i.jsxs(i.Fragment,{children:[i.jsx(J.ChevronDown,{className:"h-3 w-3 mr-1"}),"Show more (",j.length-u," chars)"]})})})]})})}if(R&&O&&!f){const j=Xf(e.content);if(j&&Kf(j))return i.jsx(Gt,{content:j.trim()});const Q=Tt(e.content);return i.jsx("div",{className:"font-mono text-sm text-current",children:i.jsx("pre",{className:P("whitespace-pre-wrap break-words text-current",I&&"text-xs"),children:Q})})}const V=k.length>0&&B!=="tool",se=G.length>0&&B!=="tool";return i.jsxs("div",{children:[r?i.jsxs("div",{className:"relative",children:[(()=>{const j=to(L);return j!==null?i.jsx(Ca,{data:j}):i.jsx(Gt,{content:Gf(Rf(L))})})(),i.jsx(Vf,{className:P(U,I?"text-xs":"text-sm")})]}):(()=>{const j=to(D.trim());if(j!==null)return i.jsx(Ca,{data:j});if(B==="user"&&p){const Q=D.trim();if(Q.length>g)return i.jsxs(ya,{open:M,onOpenChange:F,children:[i.jsx("div",{className:P("text-sm text-[hsl(var(--chat-bubble-user-text))]",I&&"text-xs"),children:M?i.jsx(Gt,{content:Q}):i.jsxs("pre",{className:P("font-sans whitespace-pre-wrap break-words bg-transparent p-0 m-0 text-[hsl(var(--chat-bubble-user-text))]",I&&"text-xs"),children:[Q.substring(0,g),"..."]})}),i.jsx(xa,{asChild:!0,children:i.jsx(fe,{variant:"ghost",size:"sm",className:"h-6 text-xs !text-[hsl(var(--chat-bubble-user-text))]",children:M?i.jsxs(i.Fragment,{children:[i.jsx(J.ChevronUp,{className:"h-3 w-3 mr-1"})," Show less"]}):i.jsxs(i.Fragment,{children:[i.jsx(J.ChevronDown,{className:"h-3 w-3 mr-1"})," Show more (",Q.length-g," chars)"]})})})]})}return i.jsx(Gt,{content:D.trim()})})(),V&&i.jsx("div",{className:"mt-2 grid grid-cols-2 gap-2",children:k.map((j,Q)=>i.jsxs("div",{className:"relative border rounded overflow-hidden",children:[i.jsx("img",{src:j.url,alt:j.alt??"image",className:"w-full h-auto"}),i.jsxs("div",{className:"absolute top-1 right-1 bg-background/70 rounded px-1 py-0.5 text-[10px] flex items-center gap-1",children:[i.jsx(J.Image,{className:"h-3 w-3"}),i.jsx("span",{children:"image"})]})]},Q))}),se&&i.jsx("div",{className:"mt-2 flex flex-wrap gap-2",children:G.map((j,Q)=>{const Z=j,he=Z.name||"file";return i.jsxs("a",{href:Z.url,download:he,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-2 bg-gray-100 border border-gray-200 rounded px-2 py-1 text-xs hover:bg-gray-200",title:he,children:[i.jsx("span",{className:"inline-block w-1.5 h-1.5 rounded-full bg-gray-400"}),i.jsx("span",{className:"truncate max-w-[180px]",children:he})]},Q)})})]})},W=T.useMemo(()=>Jf(e),[e]);return i.jsx("div",{className:P($(),v.container),children:i.jsxs("div",{className:P(K(),v.content),children:[(a||c||R)&&i.jsxs("div",{className:P("flex items-center justify-between mb-2 pb-2 border-b border-current/10",I&&"mb-1 pb-1",U,v.header),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[ce(),c&&W&&i.jsx("span",{className:P("font-medium",I?"text-xs":"text-sm"),children:W}),R&&z.name&&i.jsxs(ha,{variant:"outline",className:P("text-xs flex items-center gap-1 cursor-pointer",U,"border border-current/40",I&&"text-xs h-4"),onClick:()=>E(V=>!V),children:[i.jsx("span",{children:z.name}),i.jsx("span",{className:"inline-flex items-center",children:O?i.jsx(J.ChevronUp,{className:"h-3 w-3"}):i.jsx(J.ChevronDown,{className:"h-3 w-3"})})]}),R&&!z.name&&i.jsx(fe,{variant:"ghost",size:"sm",className:P("h-6 px-1",U,"hover:bg-foreground/10"),onClick:()=>E(V=>!V),children:i.jsxs("span",{className:"text-xs flex items-center gap-1",children:["Tool Output ",O?i.jsx(J.ChevronUp,{className:"h-3 w-3"}):i.jsx(J.ChevronDown,{className:"h-3 w-3"})]})})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[a&&i.jsx("span",{className:P("text-xs opacity-60",U,I&&"text-xs"),children:le(e.createdAt)}),s&&!o&&i.jsxs("div",{className:P("opacity-0 group-hover:opacity-100 transition-opacity","flex items-center gap-1",v.actions),children:[i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(J.Copy,{className:P(x?"text-success":U,I?"h-3 w-3":"h-4 w-4")})}),B==="user"&&m&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:ee,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(J.Edit,{className:P(U,I?"h-3 w-3":"h-4 w-4")})}),B==="assistant"&&h&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:q,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(J.RotateCcw,{className:P(U,I?"h-3 w-3":"h-4 w-4")})})]})]})]}),i.jsx("div",{className:"relative",children:pe()}),R&&O&&(z.toolCallId||z.name)&&i.jsxs("div",{className:P("mt-2 pt-2 border-t border-current/10 text-xs opacity-60",I&&"text-xs"),children:[z.name&&i.jsxs("div",{children:["Function: ",z.name]}),z.toolCallId&&i.jsxs("div",{children:["Call ID: ",z.toolCallId]})]}),!(a||c||R)&&s&&!o&&i.jsxs("div",{className:P("absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity","flex items-center gap-1",v.actions),children:[i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(J.Copy,{className:P(x?"text-success":"text-current",I?"h-3 w-3":"h-4 w-4")})}),B==="user"&&m&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:ee,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(J.Edit,{className:P("text-current",I?"h-3 w-3":"h-4 w-4")})}),B==="assistant"&&h&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:q,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(J.RotateCcw,{className:P("text-current",I?"h-3 w-3":"h-4 w-4")})})]})]})})}function jf(e){const t=e.filter(r=>r.type==="text").map(r=>r.text).join("");return t||JSON.stringify(e)}function Kf(e){return e.includes(`
10
- `)||e.includes("```")||/[-*] /.test(e)||/#+\s/.test(e)}function Rf(e){let t=e;try{(t.match(/```/g)||[]).length%2===1&&(t+="\n```"),(t.replace(/```[\s\S]*?```/g,"").match(new RegExp("(?<!`)`(?!`)","g"))||[]).length%2===1&&(t+="`")}catch{}return t}function Gf(e){let t=e;try{const r=[],n=[],o="\0F",s="\0I";let a=t.replace(/```[\s\S]*?```/g,c=>(r.push(c),`${o}${r.length-1}\0`));a=a.replace(/`[^`]*`/g,c=>(n.push(c),`${s}${n.length-1}\0`)),a=a.replace(/\b([A-Za-z0-9_&\/-]+)\b(\s+\1\b)+/g,"$1").replace(/\b([A-Za-z0-9_&\/-]+\s+[A-Za-z0-9_&\/-]+)\b(\s+\1\b)+/g,"$1").replace(/([\.,;:!\?\-])\1+/g,"$1").replace(/([:;!\?\)])([A-Za-z])/g,"$1 $2").replace(/\s{3,}/g," "),a=a.replace(/\u0000F(\d+)\u0000/g,(c,l)=>r[Number(l)]??""),a=a.replace(/\u0000I(\d+)\u0000/g,(c,l)=>n[Number(l)]??""),t=a}catch{}return t}function to(e){const t=e==null?void 0:e.trim();if(!t||!(t.startsWith("{")||t.startsWith("[")))return null;try{return JSON.parse(t)}catch{return null}}function Ca({data:e}){if(Array.isArray(e))return e.every(r=>r===null||["string","number","boolean"].includes(typeof r))?i.jsx("div",{className:Or,children:i.jsx("ul",{className:"list-disc pl-5",children:e.map((r,n)=>i.jsx("li",{children:String(r)},n))})}):i.jsx("pre",{className:"font-mono text-xs bg-background/50 rounded border p-2 whitespace-pre-wrap break-words",children:qt(e)});if(e&&typeof e=="object"){const t=Array.isArray(e.distilled_facts)?e.distilled_facts:null,r=Array.isArray(e.follow_up_queries)?e.follow_up_queries:null,n=typeof e.is_sufficient=="boolean"?e.is_sufficient:void 0;if(t||r||typeof n=="boolean")return i.jsxs("div",{className:Or,children:[typeof n=="boolean"&&i.jsxs("p",{children:[i.jsx("strong",{children:"Is sufficient:"})," ",n?"Yes":"No"]}),r&&r.length>0&&i.jsxs("div",{children:[i.jsx("p",{children:i.jsx("strong",{children:"Follow-up queries:"})}),i.jsx("ul",{className:"list-disc pl-5",children:r.map((s,a)=>i.jsx("li",{children:String(s)},a))})]}),t&&t.length>0&&i.jsxs("div",{children:[i.jsx("p",{children:i.jsx("strong",{children:"Facts:"})}),i.jsx("ul",{className:"list-disc pl-5",children:t.map((s,a)=>i.jsx("li",{children:String(s)},a))})]})]});const o=Object.entries(e);return i.jsx("div",{className:Or,children:i.jsx("dl",{className:"mt-0",children:o.map(([s,a])=>i.jsxs("div",{className:"mb-1",children:[i.jsxs("dt",{className:"inline font-medium mr-1",children:[s,":"]}),i.jsx("dd",{className:"inline",children:qf(a)})]},s))})})}return i.jsx("pre",{className:"font-mono text-xs bg-background/50 rounded border p-2 whitespace-pre-wrap break-words",children:qt(e)})}function qf(e){if(e==null)return String(e);const t=typeof e;if(t==="string"||t==="number"||t==="boolean")return String(e);if(Array.isArray(e)&&e.every(n=>n===null||["string","number","boolean"].includes(typeof n)))return e.join(", ");try{return i.jsx("code",{className:"text-xs",children:JSON.stringify(e)})}catch{return String(e)}}function Tt(e){const t=e.filter(r=>r.type==="tool_result");if(t.length)try{return t.length===1?qt(t[0].output):qt(t.map(r=>({toolCallId:r.toolCallId,output:r.output})))}catch{}return qt(e)}function Xf(e){const t=e.find(n=>n.type==="tool_result");if(!t)return null;const r=t.output;return typeof r=="string"?r:null}function qt(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Yf(e){const t=e.find(n=>n.type==="tool_call"),r=e.find(n=>n.type==="tool_result");return{name:t==null?void 0:t.name,toolCallId:(r==null?void 0:r.toolCallId)??(t==null?void 0:t.id)}}function Jf(e){return e.name&&e.name.trim()?e.name:e.model&&e.model.includes("/")?e.model.split("/").pop()||null:e.model||null}function Zf(e,t){const[r,n]=T.useState(e);return T.useEffect(()=>{if(!t){n(e);return}const o=setTimeout(()=>n(e),t);return()=>clearTimeout(o)},[e,t]),r}function Qf({data:e}){return i.jsx("dl",{className:"grid grid-cols-1 gap-y-2",children:Object.entries(e).map(([t,r])=>i.jsxs("div",{className:"flex",children:[i.jsxs("dt",{className:"font-semibold mr-2",children:[t,":"]}),i.jsx("dd",{className:"flex-1 break-words",children:Array.isArray(r)?r.map((n,o)=>i.jsxs("div",{className:"ml-4 break-words",children:["- ",String(n)]},o)):String(r)})]},t))})}function Ea(e){if(!e)return null;if(typeof e=="object"&&!Array.isArray(e)){if(e.desirability||e.feasibility||e.viability||e.other)return{desirability:Array.isArray(e.desirability)?e.desirability:[],feasibility:Array.isArray(e.feasibility)?e.feasibility:[],viability:Array.isArray(e.viability)?e.viability:[],other:Array.isArray(e.other)?e.other:[]};if(e.output&&typeof e.output!="object")e=e.output;else if(e.output&&typeof e.output=="object")return Ea(e.output)}const t=String(e),r={desirability:[],feasibility:[],viability:[],other:[]};let n=t;const o=Math.min(...["desirability=","feasibility=","viability=","other="].map(a=>{const c=n.toLowerCase().indexOf(a);return c===-1?Number.MAX_SAFE_INTEGER:c}));o!==Number.MAX_SAFE_INTEGER&&(n=n.slice(o));for(const a of Object.keys(r)){const l=new RegExp(a+"\\s*=\\s*\\[([\\s\\S]*?)\\]","i").exec(n);if(!l)continue;const f=l[1],u=/Issue\(([\s\S]*?)\)(?:,|$)/g;let p=null;for(;(p=u.exec(f))!==null;){const g=p[1],v=/title\s*=\s*(['"])([\s\S]*?)\1/.exec(g),m=/description\s*=\s*(['"])([\s\S]*?)\1/.exec(g),h=v?v[2].trim():"",b=m?m[2].trim():"";r[a].push({title:h,description:b})}}return Object.values(r).some(a=>a.length>0)?r:null}function ep({issues:e}){const t=[{key:"desirability",title:"Desirability"},{key:"feasibility",title:"Feasibility"},{key:"viability",title:"Viability"},{key:"other",title:"Other"}];return i.jsx("div",{className:Or,children:t.map(r=>{const n=e[r.key];return!n||!n.length?null:i.jsxs("div",{className:"mb-4",children:[i.jsxs("h4",{className:"font-semibold mb-2",children:[r.title," (",n.length,")"]}),i.jsx("ol",{className:"list-decimal pl-5 space-y-2",children:n.map((o,s)=>i.jsxs("li",{children:[i.jsx("div",{className:"font-medium",children:o.title}),i.jsx("div",{className:"text-sm text-muted-foreground",children:o.description})]},s))})]},r.key)})})}const At=1e4;function tp(e){if(typeof e!="string")return String(e);const t=[/<script[^>]*>.*?<\/script>/gi,/<iframe[^>]*>.*?<\/iframe>/gi,/javascript:/gi,/vbscript:/gi,/on\w+\s*=/gi,/<object[^>]*>.*?<\/object>/gi,/<embed[^>]*>.*?<\/embed>/gi,/<form[^>]*>.*?<\/form>/gi];let r=e;for(const o of t)r=r.replace(o,"");return/<[^>]+>/.test(r)&&!/<(?!\/?(?:code|strong|em|b|i|br|p|ul|ol|li|h[1-6])\b)[^>]+>/i.test(r)?r.replace(/<code>(.*?)<\/code>/gi,"`$1`").replace(/<strong>(.*?)<\/strong>/gi,"**$1**").replace(/<b>(.*?)<\/b>/gi,"**$1**").replace(/<em>(.*?)<\/em>/gi,"*$1*").replace(/<i>(.*?)<\/i>/gi,"*$1*").replace(/<br\s*\/?>/gi,`
8
+ `))>=0;){const ie=L.slice(0,q);L=L.slice(q+2);const $=yf(ie);if(!$)continue;let j;try{j=JSON.parse($)}catch{E&&console.debug("[use-chat] skip malformed SSE data:",$==null?void 0:$.slice(0,200));continue}const le=wf(j)?j.data:j;if(E&&console.debug("[use-chat] event:",le==null?void 0:le.type,le),C==null||C(le),le.type==="token")e.autoAppendAssistant!==!1&&p(he=>he+le.content);else if(le.type==="message_delta"){const he=le.delta.filter(W=>W.type==="text").map(W=>W.text).join("");he&&e.autoAppendAssistant!==!1&&p(W=>W+he)}else le.type==="checkpoint"?v(le.checkpointId):le.type==="error"&&f(le.message)}}}catch(D){if((D==null?void 0:D.name)==="AbortError")return;const z=(D==null?void 0:D.message)||String(D);E&&console.debug("[use-chat] error:",z),f(z),(U=N==null?void 0:N.onError)==null||U.call(N,z)}finally{c(!1),m.current=null}})(),{close:()=>O.abort()}},[t,n,e.autoAppendAssistant]);return T.useEffect(()=>()=>{var y;return(y=m.current)==null?void 0:y.abort()},[]),{isStreaming:a,error:l,assistantText:u,lastCheckpointId:g,stream:x,stop:b,clear:w,setToken:h}}function wf(e){return!!e&&typeof e=="object"&&e.protocolVersion==="v1"&&"data"in e}function yf(e){const t=e.split(/\r?\n/),r=[];for(const n of t)if(n&&!n.startsWith(":")&&n.startsWith("data:")){const o=n.slice(5);r.push(o.startsWith(" ")?o.slice(1):o)}return r.length===0?null:r.join(`
9
+ `)}const xf={messages:[],assemblingId:null,lastCheckpointId:null,toolIndex:{},lastBranch:null};function Sf(e,t){var r,n;switch(t.type){case"reset":return{messages:Xn(((r=t.payload)==null?void 0:r.messages)??[]),assemblingId:null,lastCheckpointId:null,toolIndex:{},lastBranch:null};case"seed":return{...e,messages:Xn(t.payload.messages)};case"prepend":{const o=Xn(t.payload.messages);if(!o.length)return e;const s=new Set(e.messages.map(c=>c.id)),a=o.filter(c=>!s.has(c.id));return a.length?{...e,messages:[...a,...e.messages]}:e}case"user_message":{const o=t.payload.message;if(e.assemblingId){const s=e.messages.findIndex(a=>a.id===e.assemblingId&&a.role==="assistant");if(s>=0){const a=e.messages.slice(0,s),c=e.messages.slice(s);return{...e,messages:[...a,o,...c]}}}return{...e,messages:[...e.messages,o]}}case"event":{const o=t.payload.ev;if(o.type==="message_start"&&o.role==="assistant"){const s=o.id,a=Tf(o.model),c={id:s,role:"assistant",name:a||void 0,model:o.model,createdAt:new Date().toISOString(),content:[]};return{...e,assemblingId:s,messages:[...e.messages,c]}}if(o.type==="token"){const s=e.assemblingId??Yn(e.messages);return s?{...e,messages:Cf(e.messages,s,o.content)}:e}if(o.type==="message_delta"){const s=e.assemblingId??Yn(e.messages);return s?{...e,messages:pa(e.messages,s,o.delta)}:e}if(o.type==="message_end"){const s=e.assemblingId??Yn(e.messages);if(!s)return{...e,assemblingId:null};const a=e.messages,c=a.findIndex(l=>l.id===s&&l.role==="assistant");if(c>=0&&!((n=a[c].content)==null?void 0:n.some(u=>{var p;return(u==null?void 0:u.type)==="text"&&((p=u.text)==null?void 0:p.trim())}))){const u=[...a.slice(0,c),...a.slice(c+1)];return{...e,assemblingId:null,messages:u}}return{...e,assemblingId:null}}if(o.type==="tool_start"){const s=`tool-${o.id}`,a={type:"tool_call",id:o.id,name:o.name,args:o.args},c={id:s,role:"tool",name:o.name,createdAt:new Date().toISOString(),content:[a]};return{...e,messages:[...e.messages,c],toolIndex:{...e.toolIndex,[o.id]:s}}}if(o.type==="tool_result"){const s=e.toolIndex[o.id]??`tool-${o.id}`,a={type:"tool_result",toolCallId:o.id,output:o.output,error:o.error},c=e.messages.find(u=>u.id===s),l={id:s,role:"tool",content:[a],createdAt:new Date().toISOString()},f=c?pa(e.messages,s,[a]):[...e.messages,l];return{...e,messages:f}}if(o.type==="checkpoint"){const s=Nf(e.messages,o.checkpointId);return{...e,lastCheckpointId:o.checkpointId,messages:s}}if(o.type==="branch"){const s=o.checkpointId??e.lastCheckpointId;return{...e,lastBranch:o,lastCheckpointId:s??null}}if(o.type==="error"){const s={id:`err-${Date.now()}`,role:"system",content:[{type:"text",text:`Error: ${o.message}`}],createdAt:new Date().toISOString()};return{...e,messages:[...e.messages,s]}}return e}default:return e}}function fa(e=[]){const[t,r]=T.useReducer(Sf,{...xf,messages:e}),n=T.useCallback(s=>{r({type:"event",payload:{ev:s}})},[]),o=T.useMemo(()=>({reset:s=>r({type:"reset",payload:{messages:s}}),seed:s=>r({type:"seed",payload:{messages:s}}),prepend:s=>r({type:"prepend",payload:{messages:s}}),pushUser:s=>r({type:"user_message",payload:{message:s}}),onEvent:n}),[n]);return{state:t,dispatch:r,...o}}function Xn(e){return e.filter(t=>{if(t.role!=="assistant")return!0;const r=(t.content||[]).some(o=>{var s;return o&&o.type==="text"&&((s=o.text)==null?void 0:s.trim())}),n=(t.content||[]).some(o=>o&&o.type==="image_url");return!!(r||n)})}function Yn(e){for(let t=e.length-1;t>=0;t--)if(e[t].role==="assistant")return e[t].id;return null}function Cf(e,t,r){return e.map(n=>{if(n.id!==t)return n;const o=n.content.slice(),s=o[o.length-1];return s&&s.type==="text"?s.text+=r:o.push({type:"text",text:r}),{...n,content:o}})}function pa(e,t,r){return e.map(n=>n.id===t?{...n,content:Ef(n.content,r)}:n)}function Ef(e,t){const r=e.slice();for(const n of t)if(n.type==="text"){const o=r[r.length-1];(o==null?void 0:o.type)==="text"?o.text+=n.text:r.push({type:"text",text:n.text})}else r.push(n);return r}function Nf(e,t){for(let r=e.length-1;r>=0;r--)if(e[r].role==="assistant"){const o={...e[r],checkpointId:t};return[...e.slice(0,r),o,...e.slice(r+1)]}return e}function Tf(e){if(!e)return null;const t=e.split("/");return t[t.length-1]||null}const ha=T.createContext(null);function qt({children:e,apiConfig:t,onError:r,onThreadChange:n,initialThreadId:o=null,historyPageSize:s,enableFileAgentRouting:a=!1,fileAgentId:c="invoice_reader"}){const l=Qe;T.useEffect(()=>{t&&l.updateConfig({baseUrl:t.baseUrl,authToken:t.apiKey})},[l,t]);const{isStreaming:f,error:u,stream:p,stop:g,setToken:v}=ua({baseUrl:l.baseUrl,token:null,headers:t==null?void 0:t.headers,streamPath:"/chat/runs/stream"}),[m,h]=T.useState(()=>typeof l.getAuthToken=="function"?l.getAuthToken():null);T.useEffect(()=>{v(typeof l.getAuthToken=="function"?l.getAuthToken():null);const Q=l.onTokenChange(J=>{h(J),v(J)});return()=>{Q()}},[l,v]);const b=T.useCallback(Q=>{l.setAuthToken(Q)},[l]),{state:w,seed:x,prepend:y,pushUser:C,onEvent:N,reset:O}=fa(),E=s&&s>0?s:6,[M,F]=T.useState(!1),[I,B]=T.useState(!1),[R,U]=T.useState(null),[D,z]=T.useState(void 0),k=T.useCallback((Q,J)=>{const ge=Array.isArray(Q==null?void 0:Q.messages)?Q.messages:[];J==="replace"?x(ge):J==="prepend"&&ge.length&&y(ge),U((Q==null?void 0:Q.nextCursor)??null),F(!!(Q!=null&&Q.hasMore)),z(ke=>(Q==null?void 0:Q.checkpointId)??ke??void 0)},[x,y]),[G,L]=T.useState([]),[A,ee]=T.useState(null),q=T.useCallback(async()=>{const Q=await l.listThreads();L(Q)},[l]);T.useEffect(()=>{q().catch(()=>{})},[q]),T.useEffect(()=>{n==null||n(A)},[A,n]);const ie=T.useRef(null);T.useEffect(()=>{o&&ie.current!==o&&(ie.current=o,j(o).catch(()=>{}))},[o]);const $=T.useRef(null),j=T.useCallback(async(Q,J,ge)=>{if($.current!==Q){$.current=Q;try{F(!1),U(null),z(void 0);const ke=await l.getMessages({threadId:Q,checkpointId:J,checkpointNs:ge,limit:E});ee(Q),k(ke,"replace")}finally{$.current=null}}},[l,k]),le=T.useCallback(async Q=>l.listCheckpoints(Q),[l]),he=T.useCallback(async Q=>{if(!A)throw new Error("No active thread");F(!1),U(null),z(void 0);const J=await l.getMessages({threadId:A,checkpointId:Q,limit:E});k(J,"replace")},[l,A,k,E]),W=T.useCallback(async()=>{if(!A)throw new Error("No active thread");await j(A)},[A,j]),V=T.useRef(!1);T.useEffect(()=>{const Q=V.current;if(V.current=f,Q&&!f&&A){const J=w.lastCheckpointId??void 0;(async()=>{try{const ge=await l.getMessages({threadId:A,checkpointId:J,limit:E});k(ge,"replace")}catch{}try{await q()}catch{}})()}},[f,A,w.lastCheckpointId,l,k,q]);const ce=T.useCallback(async Q=>{const J=await l.createThread(Q);return await q(),await j(J.threadId),J.threadId},[l,q,j]),K=T.useCallback(async Q=>{await l.deleteThread(Q),await q(),A===Q&&(ee(null),O([]),F(!1),U(null),z(void 0))},[l,q,A,O]),Y=T.useCallback(async(Q,J)=>{await l.updateThread(Q,J),await q()},[l,q]),ne=T.useCallback(async(Q,J)=>{var _n;async function ge(se){return await new Promise((xe,Pe)=>{const Ve=new FileReader;Ve.onload=()=>xe(String(Ve.result)),Ve.onerror=rt=>Pe(rt),Ve.readAsDataURL(se)})}async function ke(se){return await new Promise((xe,Pe)=>{const Ve=new FileReader;Ve.onload=()=>{try{const rt=Ve.result;let On="";const kn=new Uint8Array(rt),bs=kn.byteLength;for(let _=0;_<bs;_++)On+=String.fromCharCode(kn[_]);xe(btoa(On))}catch(rt){Pe(rt)}},Ve.onerror=rt=>Pe(rt),Ve.readAsArrayBuffer(se)})}const Ce=[];Q&&Ce.push({type:"text",text:Q});const pr=(J==null?void 0:J.attachments)||[];let ut=[];if(pr.length>0)for(const se of pr)if(se.type&&se.type.startsWith("image/")){let xe=null;try{const Pe=await l.uploadImage(se,(t==null?void 0:t.uploadPath)||"/upload").catch(()=>null);xe=(Pe==null?void 0:Pe.url)||null}catch{}if(!xe)try{xe=await ge(se)}catch{xe=null}if(xe){const Pe={type:"image_url",url:xe,mimeType:se.type,alt:se.name};Ce.push(Pe)}try{ut.push({filename:se.name,data:await ke(se),mime_type:se.type||"application/octet-stream"})}catch{}}else{const xe=await ge(se).catch(()=>null),Pe={type:"file",url:String(xe),mimeType:se.type||void 0,name:se.name,size:se.size};Ce.push(Pe);try{ut.push({filename:se.name,data:await ke(se),mime_type:se.type||"application/octet-stream"})}catch{}}const Ht={id:((_n=crypto.randomUUID)==null?void 0:_n.call(crypto))||`user-${Date.now()}`,role:"user",content:Ce,createdAt:new Date().toISOString(),checkpointId:(J==null?void 0:J.checkpointId)??w.lastCheckpointId??void 0};C(Ht);const hs={...Ht,content:Ht.content.filter(se=>se.type==="text"||se.type==="image_url")},zt={...(J==null?void 0:J.payloadExtras)??{}},gs=!!zt.edit,Pn=zt.originalMessageId,In=typeof Pn=="string"?Pn:void 0,ms=(J==null?void 0:J.attachments)&&J.attachments.length>0,hr={...A?{threadId:A}:{},payload:{messages:[hs],attachments:Ht.content.filter(se=>se.type==="file").map(se=>({type:"file",url:se.url,mimeType:se.mimeType,name:se.name,size:se.size})),files_info:ut,...a&&ms&&c?{agent_id:c}:{},...zt},checkpointId:(J==null?void 0:J.checkpointId)??w.lastCheckpointId??void 0,checkpointNs:J==null?void 0:J.checkpointNs,nodeFilter:J==null?void 0:J.nodeFilter,config:J==null?void 0:J.config,edit:gs,originalMessageId:In};p(hr,se=>N(se),{onError:se=>console.warn("stream error",se),onOpen:({threadId:se,created:xe})=>{!A&&se&&(ee(se),xe&&q().catch(()=>{}))}})},[A,C,p,N,w.lastCheckpointId,l,t==null?void 0:t.uploadPath,q,ee]),me=T.useCallback(async Q=>{if(!A)throw new Error("No active thread");if(I||!M)return;const J=R;if(J){B(!0);try{const ge=await l.getMessages({threadId:A,checkpointId:D,limit:(Q==null?void 0:Q.limit)??E,beforeId:J});k(ge,"prepend")}finally{B(!1)}}},[l,A,D,R,M,I,k]),pe={baseUrl:l.baseUrl,token:m,setToken:b,api:l,threads:G,currentThreadId:A,setCurrentThreadId:ee,messages:w.messages,isStreaming:f,error:u,lastCheckpointId:w.lastCheckpointId,streamingAssistantId:w.assemblingId,hasMoreHistory:M,isLoadingHistory:I,loadOlderMessages:me,historyPageSize:E,listCheckpoints:le,navigateToCheckpoint:he,returnToLatest:W,refreshThreads:q,createThread:ce,deleteThread:K,renameThread:Y,loadThread:j,send:ne,stop:g};return i.jsx(ha.Provider,{value:pe,children:e})}function Jn(){const e=T.useContext(ha);if(!e)throw new Error("useChat must be used within ChatProvider");return e}function P(...e){return Gd.twMerge(Rd.clsx(e))}const Af=Wt.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),fe=d.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const a=n?Ie.Slot:"button";return i.jsx(a,{className:P(Af({variant:t,size:r,className:e})),ref:s,...o})});fe.displayName="Button";const ga=d.forwardRef(({className:e,...t},r)=>i.jsx("textarea",{className:P("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...t}));ga.displayName="Textarea";const Pf=Wt.cva("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function ma({className:e,variant:t,...r}){return i.jsx("div",{className:P(Pf({variant:t}),e),...r})}function H(e,t,{checkForDefaultPrevented:r=!0}={}){return function(o){if(e==null||e(o),r===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function If(e,t){const r=d.createContext(t),n=s=>{const{children:a,...c}=s,l=d.useMemo(()=>c,Object.values(c));return i.jsx(r.Provider,{value:l,children:a})};n.displayName=e+"Provider";function o(s){const a=d.useContext(r);if(a)return a;if(t!==void 0)return t;throw new Error(`\`${s}\` must be used within \`${e}\``)}return[n,o]}function $e(e,t=[]){let r=[];function n(s,a){const c=d.createContext(a),l=r.length;r=[...r,a];const f=p=>{var w;const{scope:g,children:v,...m}=p,h=((w=g==null?void 0:g[e])==null?void 0:w[l])||c,b=d.useMemo(()=>m,Object.values(m));return i.jsx(h.Provider,{value:b,children:v})};f.displayName=s+"Provider";function u(p,g){var h;const v=((h=g==null?void 0:g[e])==null?void 0:h[l])||c,m=d.useContext(v);if(m)return m;if(a!==void 0)return a;throw new Error(`\`${p}\` must be used within \`${s}\``)}return[f,u]}const o=()=>{const s=r.map(a=>d.createContext(a));return function(c){const l=(c==null?void 0:c[e])||s;return d.useMemo(()=>({[`__scope${e}`]:{...c,[e]:l}}),[c,l])}};return o.scopeName=e,[n,_f(o,...t)]}function _f(...e){const t=e[0];if(e.length===1)return t;const r=()=>{const n=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const a=n.reduce((c,{useScope:l,scopeName:f})=>{const p=l(s)[`__scope${f}`];return{...c,...p}},{});return d.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return r.scopeName=t.scopeName,r}var ve=globalThis!=null&&globalThis.document?d.useLayoutEffect:()=>{},Of=d[" useInsertionEffect ".trim().toString()]||ve;function ot({prop:e,defaultProp:t,onChange:r=()=>{},caller:n}){const[o,s,a]=kf({defaultProp:t,onChange:r}),c=e!==void 0,l=c?e:o;{const u=d.useRef(e!==void 0);d.useEffect(()=>{const p=u.current;p!==c&&console.warn(`${n} is changing from ${p?"controlled":"uncontrolled"} to ${c?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=c},[c,n])}const f=d.useCallback(u=>{var p;if(c){const g=Mf(u)?u(e):u;g!==e&&((p=a.current)==null||p.call(a,g))}else s(u)},[c,e,s,a]);return[l,f]}function kf({defaultProp:e,onChange:t}){const[r,n]=d.useState(e),o=d.useRef(r),s=d.useRef(t);return Of(()=>{s.current=t},[t]),d.useEffect(()=>{var a;o.current!==r&&((a=s.current)==null||a.call(s,r),o.current=r)},[r,o]),[r,n,s]}function Mf(e){return typeof e=="function"}function ba(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Zn(...e){return t=>{let r=!1;const n=e.map(o=>{const s=ba(o,t);return!r&&typeof s=="function"&&(r=!0),s});if(r)return()=>{for(let o=0;o<n.length;o++){const s=n[o];typeof s=="function"?s():ba(e[o],null)}}}}function ae(...e){return d.useCallback(Zn(...e),e)}var Df=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],te=Df.reduce((e,t)=>{const r=Ie.createSlot(`Primitive.${t}`),n=d.forwardRef((o,s)=>{const{asChild:a,...c}=o,l=a?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(l,{...c,ref:s})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function va(e,t){e&&gr.flushSync(()=>e.dispatchEvent(t))}function Lf(e,t){return d.useReducer((r,n)=>t[r][n]??r,e)}var Ae=e=>{const{present:t,children:r}=e,n=Ff(t),o=typeof r=="function"?r({present:n.isPresent}):d.Children.only(r),s=ae(n.ref,$f(o));return typeof r=="function"||n.isPresent?d.cloneElement(o,{ref:s}):null};Ae.displayName="Presence";function Ff(e){const[t,r]=d.useState(),n=d.useRef(null),o=d.useRef(e),s=d.useRef("none"),a=e?"mounted":"unmounted",[c,l]=Lf(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return d.useEffect(()=>{const f=_r(n.current);s.current=c==="mounted"?f:"none"},[c]),ve(()=>{const f=n.current,u=o.current;if(u!==e){const g=s.current,v=_r(f);e?l("MOUNT"):v==="none"||(f==null?void 0:f.display)==="none"?l("UNMOUNT"):l(u&&g!==v?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),ve(()=>{if(t){let f;const u=t.ownerDocument.defaultView??window,p=v=>{const h=_r(n.current).includes(CSS.escape(v.animationName));if(v.target===t&&h&&(l("ANIMATION_END"),!o.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",f=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},g=v=>{v.target===t&&(s.current=_r(n.current))};return t.addEventListener("animationstart",g),t.addEventListener("animationcancel",p),t.addEventListener("animationend",p),()=>{u.clearTimeout(f),t.removeEventListener("animationstart",g),t.removeEventListener("animationcancel",p),t.removeEventListener("animationend",p)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:d.useCallback(f=>{n.current=f?getComputedStyle(f):null,r(f)},[])}}function _r(e){return(e==null?void 0:e.animationName)||"none"}function $f(e){var n,o;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var Bf=d[" useId ".trim().toString()]||(()=>{}),Uf=0;function Be(e){const[t,r]=d.useState(Bf());return ve(()=>{r(n=>n??String(Uf++))},[e]),t?`radix-${t}`:""}var Or="Collapsible",[Hf,Gw]=$e(Or),[zf,Qn]=Hf(Or),wa=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,open:n,defaultOpen:o,disabled:s,onOpenChange:a,...c}=e,[l,f]=ot({prop:n,defaultProp:o??!1,onChange:a,caller:Or});return i.jsx(zf,{scope:r,disabled:s,contentId:Be(),open:l,onOpenToggle:d.useCallback(()=>f(u=>!u),[f]),children:i.jsx(te.div,{"data-state":to(l),"data-disabled":s?"":void 0,...c,ref:t})})});wa.displayName=Or;var ya="CollapsibleTrigger",xa=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,...n}=e,o=Qn(ya,r);return i.jsx(te.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":to(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...n,ref:t,onClick:H(e.onClick,o.onOpenToggle)})});xa.displayName=ya;var eo="CollapsibleContent",Wf=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Qn(eo,e.__scopeCollapsible);return i.jsx(Ae,{present:r||o.open,children:({present:s})=>i.jsx(Vf,{...n,ref:t,present:s})})});Wf.displayName=eo;var Vf=d.forwardRef((e,t)=>{const{__scopeCollapsible:r,present:n,children:o,...s}=e,a=Qn(eo,r),[c,l]=d.useState(n),f=d.useRef(null),u=ae(t,f),p=d.useRef(0),g=p.current,v=d.useRef(0),m=v.current,h=a.open||c,b=d.useRef(h),w=d.useRef(void 0);return d.useEffect(()=>{const x=requestAnimationFrame(()=>b.current=!1);return()=>cancelAnimationFrame(x)},[]),ve(()=>{const x=f.current;if(x){w.current=w.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const y=x.getBoundingClientRect();p.current=y.height,v.current=y.width,b.current||(x.style.transitionDuration=w.current.transitionDuration,x.style.animationName=w.current.animationName),l(n)}},[a.open,n]),i.jsx(te.div,{"data-state":to(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!h,...s,ref:u,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":m?`${m}px`:void 0,...e.style},children:h&&o})});function to(e){return e?"open":"closed"}var jf=wa;const Sa=jf,Ca=xa;function Xt({content:e,className:t=""}){const r=T.useMemo(()=>({table:({node:f,className:u,...p})=>i.jsx("div",{className:"max-w-full",children:i.jsx("table",{...p,className:P("w-full table-fixed border-collapse break-words",u)})}),th:({node:f,className:u,...p})=>i.jsx("th",{...p,className:P("break-words whitespace-normal border-b border-border/60 px-3 py-2 text-left align-top",u)}),td:({node:f,className:u,...p})=>i.jsx("td",{...p,className:P("break-words whitespace-normal border-b border-border/30 px-3 py-2 align-top",u)}),pre:({node:f,className:u,...p})=>i.jsx("pre",{...p,className:P("whitespace-pre-wrap break-words",u)}),code:({node:f,className:u,children:p,...g})=>{const{inline:v,...m}=g;return v?i.jsx("code",{...m,className:P("break-words whitespace-normal",u),children:p}):i.jsx("code",{...m,className:P("block break-words whitespace-pre-wrap",u),children:p})}}),[]),n=P("prose prose-sm max-w-none break-words dark:prose-invert leading-relaxed","prose-headings:break-words prose-p:break-words prose-li:break-words prose-td:break-words prose-th:break-words","prose-a:break-all prose-blockquote:break-words prose-strong:break-words prose-em:break-words","prose-code:break-words prose-pre:rounded prose-pre:border prose-pre:bg-background/50","prose-code:bg-background/50 prose-code:px-1 prose-code:py-0.5 prose-code:rounded prose-table:my-4 prose-th:px-2 prose-td:px-2",t);return i.jsx("div",{className:n,style:{wordBreak:"break-word",overflowWrap:"anywhere"},children:i.jsx(qd,{remarkPlugins:[Xd],components:r,children:e})})}const kr="prose prose-sm max-w-none break-words dark:prose-invert prose-headings:break-words prose-p:break-words prose-li:break-words prose-td:break-words prose-th:break-words prose-a:break-all prose-code:break-words prose-blockquote:break-words";function Kf({className:e}){const[t,r]=T.useState(0);return T.useEffect(()=>{const n=setInterval(()=>r(o=>(o+1)%4),500);return()=>clearInterval(n)},[]),i.jsxs("span",{"aria-live":"polite",className:P("inline-block text-xs opacity-70 ml-1",e),children:["Is thinking",".".repeat(t)]})}function Ea({message:e,messageIndex:t,isStreamingMessage:r=!1,streamingDebounceMs:n=40,isEditing:o=!1,showActions:s=!0,showTimestamp:a=!0,showAgentName:c=!0,layoutSize:l="desktop",truncateToolMessages:f=!0,toolMessagePreviewLength:u=200,truncateUserMessages:p=!0,userMessagePreviewLength:g=200,customStyles:v={},onEdit:m,onRegenerate:h,onCancelEdit:b,onCopy:w}){const[x,y]=T.useState(!1),[C,N]=T.useState(!1),[O,E]=T.useState(!1),[M,F]=T.useState(!1),I=l==="phone"||l==="half-screen",B=e.role,R=B==="tool",U=T.useMemo(()=>{switch(B){case"user":return"text-[hsl(var(--chat-bubble-user-text))]";case"assistant":return"text-[hsl(var(--chat-bubble-ai-text))]";case"tool":return"text-secondary-foreground";case"system":return"text-muted-foreground";default:return"text-foreground"}},[B]),D=T.useMemo(()=>Rf(e.content),[e.content]),z=T.useMemo(()=>Zf(e.content),[e.content]),k=T.useMemo(()=>e.content.filter(V=>V.type==="image_url"),[e.content]),G=T.useMemo(()=>e.content.filter(V=>V.type==="file"),[e.content]),L=ep(D,r?n:0),A=async()=>{try{const V=R?Tt(e.content):D;await navigator.clipboard.writeText(V),y(!0),setTimeout(()=>y(!1),2e3),w==null||w(V)}catch(V){console.error("Failed to copy:",V)}},ee=()=>{if(!m)return;const V=R?Tt(e.content):D;m(e.id,V)},q=()=>h==null?void 0:h(t),ie=()=>{const ce=P(I?"h-3 w-3":"h-4 w-4","opacity-60 flex-shrink-0",U);switch(B){case"user":return i.jsx(X.User,{className:ce});case"assistant":return i.jsx(X.Bot,{className:ce});case"tool":return i.jsx(X.Wrench,{className:ce});default:return i.jsx(X.Bot,{className:ce})}},$=()=>{const V="group relative mb-4 flex w-full";switch(B){case"user":return P(V,"justify-end");case"assistant":case"tool":case"system":return P(V,"justify-start");default:return V}},j=()=>{const V=P("rounded-lg px-4 py-3 relative transition-all duration-200 min-w-0 max-w-full break-words",I&&"px-3 py-2 text-sm");switch(B){case"user":return P(V,"w-full md:max-w-[95%]","bg-[hsl(var(--chat-bubble-user))] text-[hsl(var(--chat-bubble-user-text))]","border border-transparent");case"assistant":return P(V,"w-full md:max-w-[95%]","bg-[hsl(var(--chat-bubble-ai))] text-[hsl(var(--chat-bubble-ai-text))]","border border-border/60 dark:border-border/40");case"tool":return P(V,"w-full md:max-w-[95%] bg-secondary/50 text-secondary-foreground border border-dashed");case"system":return P(V,"w-full md:max-w-[85%] bg-accent/40 text-muted-foreground border");default:return V}},le=V=>{if(!V)return"";try{return new Date(V).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch{return""}},he=()=>{if(e.model==="reflection"){const K=D.trim(),Y=ro(K);if(Y&&typeof Y=="object")return i.jsx(tp,{data:Y})}if(R&&z.name==="get_issues"){const K=e.content.find(me=>me.type==="tool_result"),Y=(K==null?void 0:K.output)??Tt(e.content),ne=Ta(Y);if(ne)return i.jsx(rp,{issues:ne})}if(R&&!O){const K=Tt(e.content).slice(0,80).replace(/\s+/g," ");return i.jsx("div",{className:P("text-xs font-mono opacity-70 flex items-center justify-between gap-2 text-current",I&&"text-[10px]"),children:i.jsxs("span",{className:"truncate max-w-full text-current",children:[K,K.length>=80?"…":""]})})}if(R&&f){const K=Tt(e.content),Y=K.length>u;return i.jsx(Sa,{open:C,onOpenChange:N,children:i.jsxs("div",{className:"font-mono text-sm text-current",children:[i.jsx("pre",{className:P("whitespace-pre-wrap break-words text-current",I&&"text-xs"),children:Y&&!C?K.substring(0,u)+"...":K}),Y&&i.jsx(Ca,{asChild:!0,children:i.jsx(fe,{variant:"ghost",size:"sm",className:"h-6 text-xs text-current",children:C?i.jsxs(i.Fragment,{children:[i.jsx(X.ChevronUp,{className:"h-3 w-3 mr-1"}),"Show less"]}):i.jsxs(i.Fragment,{children:[i.jsx(X.ChevronDown,{className:"h-3 w-3 mr-1"}),"Show more (",K.length-u," chars)"]})})})]})})}if(R&&O&&!f){const K=Jf(e.content);if(K&&Gf(K))return i.jsx(Xt,{content:K.trim()});const Y=Tt(e.content);return i.jsx("div",{className:"font-mono text-sm text-current",children:i.jsx("pre",{className:P("whitespace-pre-wrap break-words text-current",I&&"text-xs"),children:Y})})}const V=k.length>0&&B!=="tool",ce=G.length>0&&B!=="tool";return i.jsxs("div",{children:[r?i.jsxs("div",{className:"relative",children:[(()=>{const K=ro(L);return K!==null?i.jsx(Na,{data:K}):i.jsx(Xt,{content:Xf(qf(L))})})(),i.jsx(Kf,{className:P(U,I?"text-xs":"text-sm")})]}):(()=>{const K=ro(D.trim());if(K!==null)return i.jsx(Na,{data:K});if(B==="user"&&p){const Y=D.trim();if(Y.length>g)return i.jsxs(Sa,{open:M,onOpenChange:F,children:[i.jsx("div",{className:P("text-sm text-[hsl(var(--chat-bubble-user-text))]",I&&"text-xs"),children:M?i.jsx(Xt,{content:Y}):i.jsxs("pre",{className:P("font-sans whitespace-pre-wrap break-words bg-transparent p-0 m-0 text-[hsl(var(--chat-bubble-user-text))]",I&&"text-xs"),children:[Y.substring(0,g),"..."]})}),i.jsx(Ca,{asChild:!0,children:i.jsx(fe,{variant:"ghost",size:"sm",className:"h-6 text-xs !text-[hsl(var(--chat-bubble-user-text))]",children:M?i.jsxs(i.Fragment,{children:[i.jsx(X.ChevronUp,{className:"h-3 w-3 mr-1"})," Show less"]}):i.jsxs(i.Fragment,{children:[i.jsx(X.ChevronDown,{className:"h-3 w-3 mr-1"})," Show more (",Y.length-g," chars)"]})})})]})}return i.jsx(Xt,{content:D.trim()})})(),V&&i.jsx("div",{className:"mt-2 grid grid-cols-2 gap-2",children:k.map((K,Y)=>i.jsxs("div",{className:"relative border rounded overflow-hidden",children:[i.jsx("img",{src:K.url,alt:K.alt??"image",className:"w-full h-auto"}),i.jsxs("div",{className:"absolute top-1 right-1 bg-background/70 rounded px-1 py-0.5 text-[10px] flex items-center gap-1",children:[i.jsx(X.Image,{className:"h-3 w-3"}),i.jsx("span",{children:"image"})]})]},Y))}),ce&&i.jsx("div",{className:"mt-2 flex flex-wrap gap-2",children:G.map((K,Y)=>{const ne=K,me=ne.name||"file";return i.jsxs("a",{href:ne.url,download:me,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-2 bg-gray-100 border border-gray-200 rounded px-2 py-1 text-xs hover:bg-gray-200",title:me,children:[i.jsx("span",{className:"inline-block w-1.5 h-1.5 rounded-full bg-gray-400"}),i.jsx("span",{className:"truncate max-w-[180px]",children:me})]},Y)})})]})},W=T.useMemo(()=>Qf(e),[e]);return i.jsx("div",{className:P($(),v.container),children:i.jsxs("div",{className:P(j(),v.content),children:[(a||c||R)&&i.jsxs("div",{className:P("flex items-center justify-between mb-2 pb-2 border-b border-current/10",I&&"mb-1 pb-1",U,v.header),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[ie(),c&&W&&i.jsx("span",{className:P("font-medium",I?"text-xs":"text-sm"),children:W}),R&&z.name&&i.jsxs(ma,{variant:"outline",className:P("text-xs flex items-center gap-1 cursor-pointer",U,"border border-current/40",I&&"text-xs h-4"),onClick:()=>E(V=>!V),children:[i.jsx("span",{children:z.name}),i.jsx("span",{className:"inline-flex items-center",children:O?i.jsx(X.ChevronUp,{className:"h-3 w-3"}):i.jsx(X.ChevronDown,{className:"h-3 w-3"})})]}),R&&!z.name&&i.jsx(fe,{variant:"ghost",size:"sm",className:P("h-6 px-1",U,"hover:bg-foreground/10"),onClick:()=>E(V=>!V),children:i.jsxs("span",{className:"text-xs flex items-center gap-1",children:["Tool Output ",O?i.jsx(X.ChevronUp,{className:"h-3 w-3"}):i.jsx(X.ChevronDown,{className:"h-3 w-3"})]})})]}),i.jsxs("div",{className:"flex items-center gap-2",children:[a&&i.jsx("span",{className:P("text-xs opacity-60",U,I&&"text-xs"),children:le(e.createdAt)}),s&&!o&&i.jsxs("div",{className:P("opacity-0 group-hover:opacity-100 transition-opacity","flex items-center gap-1",v.actions),children:[i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(X.Copy,{className:P(x?"text-success":U,I?"h-3 w-3":"h-4 w-4")})}),B==="user"&&m&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:ee,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(X.Edit,{className:P(U,I?"h-3 w-3":"h-4 w-4")})}),B==="assistant"&&h&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:q,className:P("h-6 w-6 p-0 hover:bg-foreground/10",U,I&&"h-5 w-5"),children:i.jsx(X.RotateCcw,{className:P(U,I?"h-3 w-3":"h-4 w-4")})})]})]})]}),i.jsx("div",{className:"relative",children:he()}),R&&O&&(z.toolCallId||z.name)&&i.jsxs("div",{className:P("mt-2 pt-2 border-t border-current/10 text-xs opacity-60",I&&"text-xs"),children:[z.name&&i.jsxs("div",{children:["Function: ",z.name]}),z.toolCallId&&i.jsxs("div",{children:["Call ID: ",z.toolCallId]})]}),!(a||c||R)&&s&&!o&&i.jsxs("div",{className:P("absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity","flex items-center gap-1",v.actions),children:[i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(X.Copy,{className:P(x?"text-success":"text-current",I?"h-3 w-3":"h-4 w-4")})}),B==="user"&&m&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:ee,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(X.Edit,{className:P("text-current",I?"h-3 w-3":"h-4 w-4")})}),B==="assistant"&&h&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:q,className:P("h-6 w-6 p-0 hover:bg-background/50 text-current",I&&"h-5 w-5"),children:i.jsx(X.RotateCcw,{className:P("text-current",I?"h-3 w-3":"h-4 w-4")})})]})]})})}function Rf(e){const t=e.filter(r=>r.type==="text").map(r=>r.text).join("");return t||JSON.stringify(e)}function Gf(e){return e.includes(`
10
+ `)||e.includes("```")||/[-*] /.test(e)||/#+\s/.test(e)}function qf(e){let t=e;try{(t.match(/```/g)||[]).length%2===1&&(t+="\n```"),(t.replace(/```[\s\S]*?```/g,"").match(new RegExp("(?<!`)`(?!`)","g"))||[]).length%2===1&&(t+="`")}catch{}return t}function Xf(e){let t=e;try{const r=[],n=[],o="\0F",s="\0I";let a=t.replace(/```[\s\S]*?```/g,c=>(r.push(c),`${o}${r.length-1}\0`));a=a.replace(/`[^`]*`/g,c=>(n.push(c),`${s}${n.length-1}\0`)),a=a.replace(/\b([A-Za-z0-9_&\/-]+)\b(\s+\1\b)+/g,"$1").replace(/\b([A-Za-z0-9_&\/-]+\s+[A-Za-z0-9_&\/-]+)\b(\s+\1\b)+/g,"$1").replace(/([\.,;:!\?\-])\1+/g,"$1").replace(/([:;!\?\)])([A-Za-z])/g,"$1 $2").replace(/\s{3,}/g," "),a=a.replace(/\u0000F(\d+)\u0000/g,(c,l)=>r[Number(l)]??""),a=a.replace(/\u0000I(\d+)\u0000/g,(c,l)=>n[Number(l)]??""),t=a}catch{}return t}function ro(e){const t=e==null?void 0:e.trim();if(!t||!(t.startsWith("{")||t.startsWith("[")))return null;try{return JSON.parse(t)}catch{return null}}function Na({data:e}){if(Array.isArray(e))return e.every(r=>r===null||["string","number","boolean"].includes(typeof r))?i.jsx("div",{className:kr,children:i.jsx("ul",{className:"list-disc pl-5",children:e.map((r,n)=>i.jsx("li",{children:String(r)},n))})}):i.jsx("pre",{className:"font-mono text-xs bg-background/50 rounded border p-2 whitespace-pre-wrap break-words",children:Yt(e)});if(e&&typeof e=="object"){const t=Array.isArray(e.distilled_facts)?e.distilled_facts:null,r=Array.isArray(e.follow_up_queries)?e.follow_up_queries:null,n=typeof e.is_sufficient=="boolean"?e.is_sufficient:void 0;if(t||r||typeof n=="boolean")return i.jsxs("div",{className:kr,children:[typeof n=="boolean"&&i.jsxs("p",{children:[i.jsx("strong",{children:"Is sufficient:"})," ",n?"Yes":"No"]}),r&&r.length>0&&i.jsxs("div",{children:[i.jsx("p",{children:i.jsx("strong",{children:"Follow-up queries:"})}),i.jsx("ul",{className:"list-disc pl-5",children:r.map((s,a)=>i.jsx("li",{children:String(s)},a))})]}),t&&t.length>0&&i.jsxs("div",{children:[i.jsx("p",{children:i.jsx("strong",{children:"Facts:"})}),i.jsx("ul",{className:"list-disc pl-5",children:t.map((s,a)=>i.jsx("li",{children:String(s)},a))})]})]});const o=Object.entries(e);return i.jsx("div",{className:kr,children:i.jsx("dl",{className:"mt-0",children:o.map(([s,a])=>i.jsxs("div",{className:"mb-1",children:[i.jsxs("dt",{className:"inline font-medium mr-1",children:[s,":"]}),i.jsx("dd",{className:"inline",children:Yf(a)})]},s))})})}return i.jsx("pre",{className:"font-mono text-xs bg-background/50 rounded border p-2 whitespace-pre-wrap break-words",children:Yt(e)})}function Yf(e){if(e==null)return String(e);const t=typeof e;if(t==="string"||t==="number"||t==="boolean")return String(e);if(Array.isArray(e)&&e.every(n=>n===null||["string","number","boolean"].includes(typeof n)))return e.join(", ");try{return i.jsx("code",{className:"text-xs",children:JSON.stringify(e)})}catch{return String(e)}}function Tt(e){const t=e.filter(r=>r.type==="tool_result");if(t.length)try{return t.length===1?Yt(t[0].output):Yt(t.map(r=>({toolCallId:r.toolCallId,output:r.output})))}catch{}return Yt(e)}function Jf(e){const t=e.find(n=>n.type==="tool_result");if(!t)return null;const r=t.output;return typeof r=="string"?r:null}function Yt(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Zf(e){const t=e.find(n=>n.type==="tool_call"),r=e.find(n=>n.type==="tool_result");return{name:t==null?void 0:t.name,toolCallId:(r==null?void 0:r.toolCallId)??(t==null?void 0:t.id)}}function Qf(e){return e.name&&e.name.trim()?e.name:e.model&&e.model.includes("/")?e.model.split("/").pop()||null:e.model||null}function ep(e,t){const[r,n]=T.useState(e);return T.useEffect(()=>{if(!t){n(e);return}const o=setTimeout(()=>n(e),t);return()=>clearTimeout(o)},[e,t]),r}function tp({data:e}){return i.jsx("dl",{className:"grid grid-cols-1 gap-y-2",children:Object.entries(e).map(([t,r])=>i.jsxs("div",{className:"flex",children:[i.jsxs("dt",{className:"font-semibold mr-2",children:[t,":"]}),i.jsx("dd",{className:"flex-1 break-words",children:Array.isArray(r)?r.map((n,o)=>i.jsxs("div",{className:"ml-4 break-words",children:["- ",String(n)]},o)):String(r)})]},t))})}function Ta(e){if(!e)return null;if(typeof e=="object"&&!Array.isArray(e)){if(e.desirability||e.feasibility||e.viability||e.other)return{desirability:Array.isArray(e.desirability)?e.desirability:[],feasibility:Array.isArray(e.feasibility)?e.feasibility:[],viability:Array.isArray(e.viability)?e.viability:[],other:Array.isArray(e.other)?e.other:[]};if(e.output&&typeof e.output!="object")e=e.output;else if(e.output&&typeof e.output=="object")return Ta(e.output)}const t=String(e),r={desirability:[],feasibility:[],viability:[],other:[]};let n=t;const o=Math.min(...["desirability=","feasibility=","viability=","other="].map(a=>{const c=n.toLowerCase().indexOf(a);return c===-1?Number.MAX_SAFE_INTEGER:c}));o!==Number.MAX_SAFE_INTEGER&&(n=n.slice(o));for(const a of Object.keys(r)){const l=new RegExp(a+"\\s*=\\s*\\[([\\s\\S]*?)\\]","i").exec(n);if(!l)continue;const f=l[1],u=/Issue\(([\s\S]*?)\)(?:,|$)/g;let p=null;for(;(p=u.exec(f))!==null;){const g=p[1],v=/title\s*=\s*(['"])([\s\S]*?)\1/.exec(g),m=/description\s*=\s*(['"])([\s\S]*?)\1/.exec(g),h=v?v[2].trim():"",b=m?m[2].trim():"";r[a].push({title:h,description:b})}}return Object.values(r).some(a=>a.length>0)?r:null}function rp({issues:e}){const t=[{key:"desirability",title:"Desirability"},{key:"feasibility",title:"Feasibility"},{key:"viability",title:"Viability"},{key:"other",title:"Other"}];return i.jsx("div",{className:kr,children:t.map(r=>{const n=e[r.key];return!n||!n.length?null:i.jsxs("div",{className:"mb-4",children:[i.jsxs("h4",{className:"font-semibold mb-2",children:[r.title," (",n.length,")"]}),i.jsx("ol",{className:"list-decimal pl-5 space-y-2",children:n.map((o,s)=>i.jsxs("li",{children:[i.jsx("div",{className:"font-medium",children:o.title}),i.jsx("div",{className:"text-sm text-muted-foreground",children:o.description})]},s))})]},r.key)})})}const At=1e4;function np(e){if(typeof e!="string")return String(e);const t=[/<script[^>]*>.*?<\/script>/gi,/<iframe[^>]*>.*?<\/iframe>/gi,/javascript:/gi,/vbscript:/gi,/on\w+\s*=/gi,/<object[^>]*>.*?<\/object>/gi,/<embed[^>]*>.*?<\/embed>/gi,/<form[^>]*>.*?<\/form>/gi];let r=e;for(const o of t)r=r.replace(o,"");return/<[^>]+>/.test(r)&&!/<(?!\/?(?:code|strong|em|b|i|br|p|ul|ol|li|h[1-6])\b)[^>]+>/i.test(r)?r.replace(/<code>(.*?)<\/code>/gi,"`$1`").replace(/<strong>(.*?)<\/strong>/gi,"**$1**").replace(/<b>(.*?)<\/b>/gi,"**$1**").replace(/<em>(.*?)<\/em>/gi,"*$1*").replace(/<i>(.*?)<\/i>/gi,"*$1*").replace(/<br\s*\/?>/gi,`
11
11
  `).replace(/<p>(.*?)<\/p>/gi,`$1
12
12
 
13
13
  `).replace(/<h([1-6])>(.*?)<\/h[1-6]>/gi,(o,s,a)=>`${"#".repeat(parseInt(s))} ${a}
@@ -15,8 +15,8 @@
15
15
  `).replace(/<ul>/gi,"").replace(/<\/ul>/gi,`
16
16
  `).replace(/<ol>/gi,"").replace(/<\/ol>/gi,`
17
17
  `).replace(/<li>(.*?)<\/li>/gi,`- $1
18
- `).trim():r.replace(/</g,"&lt;").replace(/>/g,"&gt;").trim()}function rp(e,t=At){if(!e||typeof e!="string")throw new Error("Invalid content: must be a non-empty string");if(e.length>t)throw new Error(`Message exceeds maximum length of ${t} characters`);return e}function np(e){let t;return typeof e=="string"?t=e:typeof e=="object"&&e!==null?t=JSON.stringify(e):t=String(e),rp(t),tp(t)}function ro(e){const t=e+"CollectionProvider",[r,n]=Fe(t),[o,s]=r(t,{collectionRef:{current:null},itemMap:new Map}),a=h=>{const{scope:b,children:w}=h,x=T.useRef(null),y=T.useRef(new Map).current;return i.jsx(o,{scope:b,itemMap:y,collectionRef:x,children:w})};a.displayName=t;const c=e+"CollectionSlot",l=Ie.createSlot(c),f=T.forwardRef((h,b)=>{const{scope:w,children:x}=h,y=s(c,w),C=ie(b,y.collectionRef);return i.jsx(l,{ref:C,children:x})});f.displayName=c;const u=e+"CollectionItemSlot",p="data-radix-collection-item",g=Ie.createSlot(u),v=T.forwardRef((h,b)=>{const{scope:w,children:x,...y}=h,C=T.useRef(null),N=ie(b,C),O=s(u,w);return T.useEffect(()=>(O.itemMap.set(C,{ref:C,...y}),()=>void O.itemMap.delete(C))),i.jsx(g,{[p]:"",ref:N,children:x})});v.displayName=u;function m(h){const b=s(e+"CollectionConsumer",h);return T.useCallback(()=>{const x=b.collectionRef.current;if(!x)return[];const y=Array.from(x.querySelectorAll(`[${p}]`));return Array.from(b.itemMap.values()).sort((O,E)=>y.indexOf(O.ref.current)-y.indexOf(E.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:f,ItemSlot:v},m,n]}var op=d.createContext(void 0);function kr(e){const t=d.useContext(op);return e||t||"ltr"}function ve(e){const t=d.useRef(e);return d.useEffect(()=>{t.current=e}),d.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}function sp(e,t=globalThis==null?void 0:globalThis.document){const r=ve(e);d.useEffect(()=>{const n=o=>{o.key==="Escape"&&r(o)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[r,t])}var ap="DismissableLayer",no="dismissableLayer.update",ip="dismissableLayer.pointerDownOutside",cp="dismissableLayer.focusOutside",Na,Ta=d.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Xt=d.forwardRef((e,t)=>{const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:a,onDismiss:c,...l}=e,f=d.useContext(Ta),[u,p]=d.useState(null),g=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,v]=d.useState({}),m=ie(t,E=>p(E)),h=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),w=h.indexOf(b),x=u?h.indexOf(u):-1,y=f.layersWithOutsidePointerEventsDisabled.size>0,C=x>=w,N=up(E=>{const M=E.target,F=[...f.branches].some(I=>I.contains(M));!C||F||(o==null||o(E),a==null||a(E),E.defaultPrevented||c==null||c())},g),O=fp(E=>{const M=E.target;[...f.branches].some(I=>I.contains(M))||(s==null||s(E),a==null||a(E),E.defaultPrevented||c==null||c())},g);return sp(E=>{x===f.layers.size-1&&(n==null||n(E),!E.defaultPrevented&&c&&(E.preventDefault(),c()))},g),d.useEffect(()=>{if(u)return r&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(Na=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(u)),f.layers.add(u),Aa(),()=>{r&&f.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=Na)}},[u,g,r,f]),d.useEffect(()=>()=>{u&&(f.layers.delete(u),f.layersWithOutsidePointerEventsDisabled.delete(u),Aa())},[u,f]),d.useEffect(()=>{const E=()=>v({});return document.addEventListener(no,E),()=>document.removeEventListener(no,E)},[]),i.jsx(te.div,{...l,ref:m,style:{pointerEvents:y?C?"auto":"none":void 0,...e.style},onFocusCapture:H(e.onFocusCapture,O.onFocusCapture),onBlurCapture:H(e.onBlurCapture,O.onBlurCapture),onPointerDownCapture:H(e.onPointerDownCapture,N.onPointerDownCapture)})});Xt.displayName=ap;var lp="DismissableLayerBranch",dp=d.forwardRef((e,t)=>{const r=d.useContext(Ta),n=d.useRef(null),o=ie(t,n);return d.useEffect(()=>{const s=n.current;if(s)return r.branches.add(s),()=>{r.branches.delete(s)}},[r.branches]),i.jsx(te.div,{...e,ref:o})});dp.displayName=lp;function up(e,t=globalThis==null?void 0:globalThis.document){const r=ve(e),n=d.useRef(!1),o=d.useRef(()=>{});return d.useEffect(()=>{const s=c=>{if(c.target&&!n.current){let l=function(){Pa(ip,r,f,{discrete:!0})};const f={originalEvent:c};c.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=l,t.addEventListener("click",o.current,{once:!0})):l()}else t.removeEventListener("click",o.current);n.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",s),t.removeEventListener("click",o.current)}},[t,r]),{onPointerDownCapture:()=>n.current=!0}}function fp(e,t=globalThis==null?void 0:globalThis.document){const r=ve(e),n=d.useRef(!1);return d.useEffect(()=>{const o=s=>{s.target&&!n.current&&Pa(cp,r,{originalEvent:s},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,r]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function Aa(){const e=new CustomEvent(no);document.dispatchEvent(e)}function Pa(e,t,r,{discrete:n}){const o=r.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&o.addEventListener(e,t,{once:!0}),n?ma(o,s):o.dispatchEvent(s)}var oo=0;function so(){d.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??Ia()),document.body.insertAdjacentElement("beforeend",e[1]??Ia()),oo++,()=>{oo===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),oo--}},[])}function Ia(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var ao="focusScope.autoFocusOnMount",io="focusScope.autoFocusOnUnmount",_a={bubbles:!1,cancelable:!0},pp="FocusScope",Mr=d.forwardRef((e,t)=>{const{loop:r=!1,trapped:n=!1,onMountAutoFocus:o,onUnmountAutoFocus:s,...a}=e,[c,l]=d.useState(null),f=ve(o),u=ve(s),p=d.useRef(null),g=ie(t,h=>l(h)),v=d.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;d.useEffect(()=>{if(n){let h=function(y){if(v.paused||!c)return;const C=y.target;c.contains(C)?p.current=C:st(p.current,{select:!0})},b=function(y){if(v.paused||!c)return;const C=y.relatedTarget;C!==null&&(c.contains(C)||st(p.current,{select:!0}))},w=function(y){if(document.activeElement===document.body)for(const N of y)N.removedNodes.length>0&&st(c)};document.addEventListener("focusin",h),document.addEventListener("focusout",b);const x=new MutationObserver(w);return c&&x.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",h),document.removeEventListener("focusout",b),x.disconnect()}}},[n,c,v.paused]),d.useEffect(()=>{if(c){Ma.add(v);const h=document.activeElement;if(!c.contains(h)){const w=new CustomEvent(ao,_a);c.addEventListener(ao,f),c.dispatchEvent(w),w.defaultPrevented||(hp(wp(Oa(c)),{select:!0}),document.activeElement===h&&st(c))}return()=>{c.removeEventListener(ao,f),setTimeout(()=>{const w=new CustomEvent(io,_a);c.addEventListener(io,u),c.dispatchEvent(w),w.defaultPrevented||st(h??document.body,{select:!0}),c.removeEventListener(io,u),Ma.remove(v)},0)}}},[c,f,u,v]);const m=d.useCallback(h=>{if(!r&&!n||v.paused)return;const b=h.key==="Tab"&&!h.altKey&&!h.ctrlKey&&!h.metaKey,w=document.activeElement;if(b&&w){const x=h.currentTarget,[y,C]=gp(x);y&&C?!h.shiftKey&&w===C?(h.preventDefault(),r&&st(y,{select:!0})):h.shiftKey&&w===y&&(h.preventDefault(),r&&st(C,{select:!0})):w===x&&h.preventDefault()}},[r,n,v.paused]);return i.jsx(te.div,{tabIndex:-1,...a,ref:g,onKeyDown:m})});Mr.displayName=pp;function hp(e,{select:t=!1}={}){const r=document.activeElement;for(const n of e)if(st(n,{select:t}),document.activeElement!==r)return}function gp(e){const t=Oa(e),r=ka(t,e),n=ka(t.reverse(),e);return[r,n]}function Oa(e){const t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{const o=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||o?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)t.push(r.currentNode);return t}function ka(e,t){for(const r of e)if(!mp(r,{upTo:t}))return r}function mp(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function bp(e){return e instanceof HTMLInputElement&&"select"in e}function st(e,{select:t=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&bp(e)&&t&&e.select()}}var Ma=vp();function vp(){let e=[];return{add(t){const r=e[0];t!==r&&(r==null||r.pause()),e=Da(e,t),e.unshift(t)},remove(t){var r;e=Da(e,t),(r=e[0])==null||r.resume()}}}function Da(e,t){const r=[...e],n=r.indexOf(t);return n!==-1&&r.splice(n,1),r}function wp(e){return e.filter(t=>t.tagName!=="A")}const yp=["top","right","bottom","left"],at=Math.min,_e=Math.max,Dr=Math.round,Lr=Math.floor,Ge=e=>({x:e,y:e}),xp={left:"right",right:"left",bottom:"top",top:"bottom"},Sp={start:"end",end:"start"};function co(e,t,r){return _e(e,at(t,r))}function et(e,t){return typeof e=="function"?e(t):e}function tt(e){return e.split("-")[0]}function Pt(e){return e.split("-")[1]}function lo(e){return e==="x"?"y":"x"}function uo(e){return e==="y"?"height":"width"}const Cp=new Set(["top","bottom"]);function qe(e){return Cp.has(tt(e))?"y":"x"}function fo(e){return lo(qe(e))}function Ep(e,t,r){r===void 0&&(r=!1);const n=Pt(e),o=fo(e),s=uo(o);let a=o==="x"?n===(r?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(a=Fr(a)),[a,Fr(a)]}function Np(e){const t=Fr(e);return[po(e),t,po(t)]}function po(e){return e.replace(/start|end/g,t=>Sp[t])}const La=["left","right"],Fa=["right","left"],Tp=["top","bottom"],Ap=["bottom","top"];function Pp(e,t,r){switch(e){case"top":case"bottom":return r?t?Fa:La:t?La:Fa;case"left":case"right":return t?Tp:Ap;default:return[]}}function Ip(e,t,r,n){const o=Pt(e);let s=Pp(tt(e),r==="start",n);return o&&(s=s.map(a=>a+"-"+o),t&&(s=s.concat(s.map(po)))),s}function Fr(e){return e.replace(/left|right|bottom|top/g,t=>xp[t])}function _p(e){return{top:0,right:0,bottom:0,left:0,...e}}function $a(e){return typeof e!="number"?_p(e):{top:e,right:e,bottom:e,left:e}}function $r(e){const{x:t,y:r,width:n,height:o}=e;return{width:n,height:o,top:r,left:t,right:t+n,bottom:r+o,x:t,y:r}}function Ba(e,t,r){let{reference:n,floating:o}=e;const s=qe(t),a=fo(t),c=uo(a),l=tt(t),f=s==="y",u=n.x+n.width/2-o.width/2,p=n.y+n.height/2-o.height/2,g=n[c]/2-o[c]/2;let v;switch(l){case"top":v={x:u,y:n.y-o.height};break;case"bottom":v={x:u,y:n.y+n.height};break;case"right":v={x:n.x+n.width,y:p};break;case"left":v={x:n.x-o.width,y:p};break;default:v={x:n.x,y:n.y}}switch(Pt(t)){case"start":v[a]-=g*(r&&f?-1:1);break;case"end":v[a]+=g*(r&&f?-1:1);break}return v}const Op=async(e,t,r)=>{const{placement:n="bottom",strategy:o="absolute",middleware:s=[],platform:a}=r,c=s.filter(Boolean),l=await(a.isRTL==null?void 0:a.isRTL(t));let f=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:p}=Ba(f,n,l),g=n,v={},m=0;for(let h=0;h<c.length;h++){const{name:b,fn:w}=c[h],{x,y,data:C,reset:N}=await w({x:u,y:p,initialPlacement:n,placement:g,strategy:o,middlewareData:v,rects:f,platform:a,elements:{reference:e,floating:t}});u=x??u,p=y??p,v={...v,[b]:{...v[b],...C}},N&&m<=50&&(m++,typeof N=="object"&&(N.placement&&(g=N.placement),N.rects&&(f=N.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:o}):N.rects),{x:u,y:p}=Ba(f,g,l)),h=-1)}return{x:u,y:p,placement:g,strategy:o,middlewareData:v}};async function Yt(e,t){var r;t===void 0&&(t={});const{x:n,y:o,platform:s,rects:a,elements:c,strategy:l}=e,{boundary:f="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:g=!1,padding:v=0}=et(t,e),m=$a(v),b=c[g?p==="floating"?"reference":"floating":p],w=$r(await s.getClippingRect({element:(r=await(s.isElement==null?void 0:s.isElement(b)))==null||r?b:b.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(c.floating)),boundary:f,rootBoundary:u,strategy:l})),x=p==="floating"?{x:n,y:o,width:a.floating.width,height:a.floating.height}:a.reference,y=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c.floating)),C=await(s.isElement==null?void 0:s.isElement(y))?await(s.getScale==null?void 0:s.getScale(y))||{x:1,y:1}:{x:1,y:1},N=$r(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:x,offsetParent:y,strategy:l}):x);return{top:(w.top-N.top+m.top)/C.y,bottom:(N.bottom-w.bottom+m.bottom)/C.y,left:(w.left-N.left+m.left)/C.x,right:(N.right-w.right+m.right)/C.x}}const kp=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:n,placement:o,rects:s,platform:a,elements:c,middlewareData:l}=t,{element:f,padding:u=0}=et(e,t)||{};if(f==null)return{};const p=$a(u),g={x:r,y:n},v=fo(o),m=uo(v),h=await a.getDimensions(f),b=v==="y",w=b?"top":"left",x=b?"bottom":"right",y=b?"clientHeight":"clientWidth",C=s.reference[m]+s.reference[v]-g[v]-s.floating[m],N=g[v]-s.reference[v],O=await(a.getOffsetParent==null?void 0:a.getOffsetParent(f));let E=O?O[y]:0;(!E||!await(a.isElement==null?void 0:a.isElement(O)))&&(E=c.floating[y]||s.floating[m]);const M=C/2-N/2,F=E/2-h[m]/2-1,I=at(p[w],F),B=at(p[x],F),R=I,U=E-h[m]-B,D=E/2-h[m]/2+M,z=co(R,D,U),k=!l.arrow&&Pt(o)!=null&&D!==z&&s.reference[m]/2-(D<R?I:B)-h[m]/2<0,G=k?D<R?D-R:D-U:0;return{[v]:g[v]+G,data:{[v]:z,centerOffset:D-z-G,...k&&{alignmentOffset:G}},reset:k}}}),Mp=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var r,n;const{placement:o,middlewareData:s,rects:a,initialPlacement:c,platform:l,elements:f}=t,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:g,fallbackStrategy:v="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...b}=et(e,t);if((r=s.arrow)!=null&&r.alignmentOffset)return{};const w=tt(o),x=qe(c),y=tt(c)===c,C=await(l.isRTL==null?void 0:l.isRTL(f.floating)),N=g||(y||!h?[Fr(c)]:Np(c)),O=m!=="none";!g&&O&&N.push(...Ip(c,h,m,C));const E=[c,...N],M=await Yt(t,b),F=[];let I=((n=s.flip)==null?void 0:n.overflows)||[];if(u&&F.push(M[w]),p){const D=Ep(o,a,C);F.push(M[D[0]],M[D[1]])}if(I=[...I,{placement:o,overflows:F}],!F.every(D=>D<=0)){var B,R;const D=(((B=s.flip)==null?void 0:B.index)||0)+1,z=E[D];if(z&&(!(p==="alignment"?x!==qe(z):!1)||I.every(L=>qe(L.placement)===x?L.overflows[0]>0:!0)))return{data:{index:D,overflows:I},reset:{placement:z}};let k=(R=I.filter(G=>G.overflows[0]<=0).sort((G,L)=>G.overflows[1]-L.overflows[1])[0])==null?void 0:R.placement;if(!k)switch(v){case"bestFit":{var U;const G=(U=I.filter(L=>{if(O){const A=qe(L.placement);return A===x||A==="y"}return!0}).map(L=>[L.placement,L.overflows.filter(A=>A>0).reduce((A,ee)=>A+ee,0)]).sort((L,A)=>L[1]-A[1])[0])==null?void 0:U[0];G&&(k=G);break}case"initialPlacement":k=c;break}if(o!==k)return{reset:{placement:k}}}return{}}}};function Ua(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Ha(e){return yp.some(t=>e[t]>=0)}const Dp=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r}=t,{strategy:n="referenceHidden",...o}=et(e,t);switch(n){case"referenceHidden":{const s=await Yt(t,{...o,elementContext:"reference"}),a=Ua(s,r.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Ha(a)}}}case"escaped":{const s=await Yt(t,{...o,altBoundary:!0}),a=Ua(s,r.floating);return{data:{escapedOffsets:a,escaped:Ha(a)}}}default:return{}}}}},za=new Set(["left","top"]);async function Lp(e,t){const{placement:r,platform:n,elements:o}=e,s=await(n.isRTL==null?void 0:n.isRTL(o.floating)),a=tt(r),c=Pt(r),l=qe(r)==="y",f=za.has(a)?-1:1,u=s&&l?-1:1,p=et(t,e);let{mainAxis:g,crossAxis:v,alignmentAxis:m}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return c&&typeof m=="number"&&(v=c==="end"?m*-1:m),l?{x:v*u,y:g*f}:{x:g*f,y:v*u}}const Fp=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var r,n;const{x:o,y:s,placement:a,middlewareData:c}=t,l=await Lp(t,e);return a===((r=c.offset)==null?void 0:r.placement)&&(n=c.arrow)!=null&&n.alignmentOffset?{}:{x:o+l.x,y:s+l.y,data:{...l,placement:a}}}}},$p=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:r,y:n,placement:o}=t,{mainAxis:s=!0,crossAxis:a=!1,limiter:c={fn:b=>{let{x:w,y:x}=b;return{x:w,y:x}}},...l}=et(e,t),f={x:r,y:n},u=await Yt(t,l),p=qe(tt(o)),g=lo(p);let v=f[g],m=f[p];if(s){const b=g==="y"?"top":"left",w=g==="y"?"bottom":"right",x=v+u[b],y=v-u[w];v=co(x,v,y)}if(a){const b=p==="y"?"top":"left",w=p==="y"?"bottom":"right",x=m+u[b],y=m-u[w];m=co(x,m,y)}const h=c.fn({...t,[g]:v,[p]:m});return{...h,data:{x:h.x-r,y:h.y-n,enabled:{[g]:s,[p]:a}}}}}},Bp=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:r,y:n,placement:o,rects:s,middlewareData:a}=t,{offset:c=0,mainAxis:l=!0,crossAxis:f=!0}=et(e,t),u={x:r,y:n},p=qe(o),g=lo(p);let v=u[g],m=u[p];const h=et(c,t),b=typeof h=="number"?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(l){const y=g==="y"?"height":"width",C=s.reference[g]-s.floating[y]+b.mainAxis,N=s.reference[g]+s.reference[y]-b.mainAxis;v<C?v=C:v>N&&(v=N)}if(f){var w,x;const y=g==="y"?"width":"height",C=za.has(tt(o)),N=s.reference[p]-s.floating[y]+(C&&((w=a.offset)==null?void 0:w[p])||0)+(C?0:b.crossAxis),O=s.reference[p]+s.reference[y]+(C?0:((x=a.offset)==null?void 0:x[p])||0)-(C?b.crossAxis:0);m<N?m=N:m>O&&(m=O)}return{[g]:v,[p]:m}}}},Up=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var r,n;const{placement:o,rects:s,platform:a,elements:c}=t,{apply:l=()=>{},...f}=et(e,t),u=await Yt(t,f),p=tt(o),g=Pt(o),v=qe(o)==="y",{width:m,height:h}=s.floating;let b,w;p==="top"||p==="bottom"?(b=p,w=g===(await(a.isRTL==null?void 0:a.isRTL(c.floating))?"start":"end")?"left":"right"):(w=p,b=g==="end"?"top":"bottom");const x=h-u.top-u.bottom,y=m-u.left-u.right,C=at(h-u[b],x),N=at(m-u[w],y),O=!t.middlewareData.shift;let E=C,M=N;if((r=t.middlewareData.shift)!=null&&r.enabled.x&&(M=y),(n=t.middlewareData.shift)!=null&&n.enabled.y&&(E=x),O&&!g){const I=_e(u.left,0),B=_e(u.right,0),R=_e(u.top,0),U=_e(u.bottom,0);v?M=m-2*(I!==0||B!==0?I+B:_e(u.left,u.right)):E=h-2*(R!==0||U!==0?R+U:_e(u.top,u.bottom))}await l({...t,availableWidth:M,availableHeight:E});const F=await a.getDimensions(c.floating);return m!==F.width||h!==F.height?{reset:{rects:!0}}:{}}}};function Br(){return typeof window<"u"}function It(e){return Wa(e)?(e.nodeName||"").toLowerCase():"#document"}function Oe(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Xe(e){var t;return(t=(Wa(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Wa(e){return Br()?e instanceof Node||e instanceof Oe(e).Node:!1}function Be(e){return Br()?e instanceof Element||e instanceof Oe(e).Element:!1}function Ye(e){return Br()?e instanceof HTMLElement||e instanceof Oe(e).HTMLElement:!1}function Va(e){return!Br()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Oe(e).ShadowRoot}const Hp=new Set(["inline","contents"]);function Jt(e){const{overflow:t,overflowX:r,overflowY:n,display:o}=Ue(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+r)&&!Hp.has(o)}const zp=new Set(["table","td","th"]);function Wp(e){return zp.has(It(e))}const Vp=[":popover-open",":modal"];function Ur(e){return Vp.some(t=>{try{return e.matches(t)}catch{return!1}})}const jp=["transform","translate","scale","rotate","perspective"],Kp=["transform","translate","scale","rotate","perspective","filter"],Rp=["paint","layout","strict","content"];function ho(e){const t=go(),r=Be(e)?Ue(e):e;return jp.some(n=>r[n]?r[n]!=="none":!1)||(r.containerType?r.containerType!=="normal":!1)||!t&&(r.backdropFilter?r.backdropFilter!=="none":!1)||!t&&(r.filter?r.filter!=="none":!1)||Kp.some(n=>(r.willChange||"").includes(n))||Rp.some(n=>(r.contain||"").includes(n))}function Gp(e){let t=it(e);for(;Ye(t)&&!_t(t);){if(ho(t))return t;if(Ur(t))return null;t=it(t)}return null}function go(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const qp=new Set(["html","body","#document"]);function _t(e){return qp.has(It(e))}function Ue(e){return Oe(e).getComputedStyle(e)}function Hr(e){return Be(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function it(e){if(It(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Va(e)&&e.host||Xe(e);return Va(t)?t.host:t}function ja(e){const t=it(e);return _t(t)?e.ownerDocument?e.ownerDocument.body:e.body:Ye(t)&&Jt(t)?t:ja(t)}function Zt(e,t,r){var n;t===void 0&&(t=[]),r===void 0&&(r=!0);const o=ja(e),s=o===((n=e.ownerDocument)==null?void 0:n.body),a=Oe(o);if(s){const c=mo(a);return t.concat(a,a.visualViewport||[],Jt(o)?o:[],c&&r?Zt(c):[])}return t.concat(o,Zt(o,[],r))}function mo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ka(e){const t=Ue(e);let r=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const o=Ye(e),s=o?e.offsetWidth:r,a=o?e.offsetHeight:n,c=Dr(r)!==s||Dr(n)!==a;return c&&(r=s,n=a),{width:r,height:n,$:c}}function bo(e){return Be(e)?e:e.contextElement}function Ot(e){const t=bo(e);if(!Ye(t))return Ge(1);const r=t.getBoundingClientRect(),{width:n,height:o,$:s}=Ka(t);let a=(s?Dr(r.width):r.width)/n,c=(s?Dr(r.height):r.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!c||!Number.isFinite(c))&&(c=1),{x:a,y:c}}const Xp=Ge(0);function Ra(e){const t=Oe(e);return!go()||!t.visualViewport?Xp:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Yp(e,t,r){return t===void 0&&(t=!1),!r||t&&r!==Oe(e)?!1:t}function gt(e,t,r,n){t===void 0&&(t=!1),r===void 0&&(r=!1);const o=e.getBoundingClientRect(),s=bo(e);let a=Ge(1);t&&(n?Be(n)&&(a=Ot(n)):a=Ot(e));const c=Yp(s,r,n)?Ra(s):Ge(0);let l=(o.left+c.x)/a.x,f=(o.top+c.y)/a.y,u=o.width/a.x,p=o.height/a.y;if(s){const g=Oe(s),v=n&&Be(n)?Oe(n):n;let m=g,h=mo(m);for(;h&&n&&v!==m;){const b=Ot(h),w=h.getBoundingClientRect(),x=Ue(h),y=w.left+(h.clientLeft+parseFloat(x.paddingLeft))*b.x,C=w.top+(h.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,f*=b.y,u*=b.x,p*=b.y,l+=y,f+=C,m=Oe(h),h=mo(m)}}return $r({width:u,height:p,x:l,y:f})}function zr(e,t){const r=Hr(e).scrollLeft;return t?t.left+r:gt(Xe(e)).left+r}function Ga(e,t){const r=e.getBoundingClientRect(),n=r.left+t.scrollLeft-zr(e,r),o=r.top+t.scrollTop;return{x:n,y:o}}function Jp(e){let{elements:t,rect:r,offsetParent:n,strategy:o}=e;const s=o==="fixed",a=Xe(n),c=t?Ur(t.floating):!1;if(n===a||c&&s)return r;let l={scrollLeft:0,scrollTop:0},f=Ge(1);const u=Ge(0),p=Ye(n);if((p||!p&&!s)&&((It(n)!=="body"||Jt(a))&&(l=Hr(n)),Ye(n))){const v=gt(n);f=Ot(n),u.x=v.x+n.clientLeft,u.y=v.y+n.clientTop}const g=a&&!p&&!s?Ga(a,l):Ge(0);return{width:r.width*f.x,height:r.height*f.y,x:r.x*f.x-l.scrollLeft*f.x+u.x+g.x,y:r.y*f.y-l.scrollTop*f.y+u.y+g.y}}function Zp(e){return Array.from(e.getClientRects())}function Qp(e){const t=Xe(e),r=Hr(e),n=e.ownerDocument.body,o=_e(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),s=_e(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let a=-r.scrollLeft+zr(e);const c=-r.scrollTop;return Ue(n).direction==="rtl"&&(a+=_e(t.clientWidth,n.clientWidth)-o),{width:o,height:s,x:a,y:c}}const qa=25;function eh(e,t){const r=Oe(e),n=Xe(e),o=r.visualViewport;let s=n.clientWidth,a=n.clientHeight,c=0,l=0;if(o){s=o.width,a=o.height;const u=go();(!u||u&&t==="fixed")&&(c=o.offsetLeft,l=o.offsetTop)}const f=zr(n);if(f<=0){const u=n.ownerDocument,p=u.body,g=getComputedStyle(p),v=u.compatMode==="CSS1Compat"&&parseFloat(g.marginLeft)+parseFloat(g.marginRight)||0,m=Math.abs(n.clientWidth-p.clientWidth-v);m<=qa&&(s-=m)}else f<=qa&&(s+=f);return{width:s,height:a,x:c,y:l}}const th=new Set(["absolute","fixed"]);function rh(e,t){const r=gt(e,!0,t==="fixed"),n=r.top+e.clientTop,o=r.left+e.clientLeft,s=Ye(e)?Ot(e):Ge(1),a=e.clientWidth*s.x,c=e.clientHeight*s.y,l=o*s.x,f=n*s.y;return{width:a,height:c,x:l,y:f}}function Xa(e,t,r){let n;if(t==="viewport")n=eh(e,r);else if(t==="document")n=Qp(Xe(e));else if(Be(t))n=rh(t,r);else{const o=Ra(e);n={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return $r(n)}function Ya(e,t){const r=it(e);return r===t||!Be(r)||_t(r)?!1:Ue(r).position==="fixed"||Ya(r,t)}function nh(e,t){const r=t.get(e);if(r)return r;let n=Zt(e,[],!1).filter(c=>Be(c)&&It(c)!=="body"),o=null;const s=Ue(e).position==="fixed";let a=s?it(e):e;for(;Be(a)&&!_t(a);){const c=Ue(a),l=ho(a);!l&&c.position==="fixed"&&(o=null),(s?!l&&!o:!l&&c.position==="static"&&!!o&&th.has(o.position)||Jt(a)&&!l&&Ya(e,a))?n=n.filter(u=>u!==a):o=c,a=it(a)}return t.set(e,n),n}function oh(e){let{element:t,boundary:r,rootBoundary:n,strategy:o}=e;const a=[...r==="clippingAncestors"?Ur(t)?[]:nh(t,this._c):[].concat(r),n],c=a[0],l=a.reduce((f,u)=>{const p=Xa(t,u,o);return f.top=_e(p.top,f.top),f.right=at(p.right,f.right),f.bottom=at(p.bottom,f.bottom),f.left=_e(p.left,f.left),f},Xa(t,c,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function sh(e){const{width:t,height:r}=Ka(e);return{width:t,height:r}}function ah(e,t,r){const n=Ye(t),o=Xe(t),s=r==="fixed",a=gt(e,!0,s,t);let c={scrollLeft:0,scrollTop:0};const l=Ge(0);function f(){l.x=zr(o)}if(n||!n&&!s)if((It(t)!=="body"||Jt(o))&&(c=Hr(t)),n){const v=gt(t,!0,s,t);l.x=v.x+t.clientLeft,l.y=v.y+t.clientTop}else o&&f();s&&!n&&o&&f();const u=o&&!n&&!s?Ga(o,c):Ge(0),p=a.left+c.scrollLeft-l.x-u.x,g=a.top+c.scrollTop-l.y-u.y;return{x:p,y:g,width:a.width,height:a.height}}function vo(e){return Ue(e).position==="static"}function Ja(e,t){if(!Ye(e)||Ue(e).position==="fixed")return null;if(t)return t(e);let r=e.offsetParent;return Xe(e)===r&&(r=r.ownerDocument.body),r}function Za(e,t){const r=Oe(e);if(Ur(e))return r;if(!Ye(e)){let o=it(e);for(;o&&!_t(o);){if(Be(o)&&!vo(o))return o;o=it(o)}return r}let n=Ja(e,t);for(;n&&Wp(n)&&vo(n);)n=Ja(n,t);return n&&_t(n)&&vo(n)&&!ho(n)?r:n||Gp(e)||r}const ih=async function(e){const t=this.getOffsetParent||Za,r=this.getDimensions,n=await r(e.floating);return{reference:ah(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function ch(e){return Ue(e).direction==="rtl"}const lh={convertOffsetParentRelativeRectToViewportRelativeRect:Jp,getDocumentElement:Xe,getClippingRect:oh,getOffsetParent:Za,getElementRects:ih,getClientRects:Zp,getDimensions:sh,getScale:Ot,isElement:Be,isRTL:ch};function Qa(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function dh(e,t){let r=null,n;const o=Xe(e);function s(){var c;clearTimeout(n),(c=r)==null||c.disconnect(),r=null}function a(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),s();const f=e.getBoundingClientRect(),{left:u,top:p,width:g,height:v}=f;if(c||t(),!g||!v)return;const m=Lr(p),h=Lr(o.clientWidth-(u+g)),b=Lr(o.clientHeight-(p+v)),w=Lr(u),y={rootMargin:-m+"px "+-h+"px "+-b+"px "+-w+"px",threshold:_e(0,at(1,l))||1};let C=!0;function N(O){const E=O[0].intersectionRatio;if(E!==l){if(!C)return a();E?a(!1,E):n=setTimeout(()=>{a(!1,1e-7)},1e3)}E===1&&!Qa(f,e.getBoundingClientRect())&&a(),C=!1}try{r=new IntersectionObserver(N,{...y,root:o.ownerDocument})}catch{r=new IntersectionObserver(N,y)}r.observe(e)}return a(!0),s}function uh(e,t,r,n){n===void 0&&(n={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,f=bo(e),u=o||s?[...f?Zt(f):[],...Zt(t)]:[];u.forEach(w=>{o&&w.addEventListener("scroll",r,{passive:!0}),s&&w.addEventListener("resize",r)});const p=f&&c?dh(f,r):null;let g=-1,v=null;a&&(v=new ResizeObserver(w=>{let[x]=w;x&&x.target===f&&v&&(v.unobserve(t),cancelAnimationFrame(g),g=requestAnimationFrame(()=>{var y;(y=v)==null||y.observe(t)})),r()}),f&&!l&&v.observe(f),v.observe(t));let m,h=l?gt(e):null;l&&b();function b(){const w=gt(e);h&&!Qa(h,w)&&r(),h=w,m=requestAnimationFrame(b)}return r(),()=>{var w;u.forEach(x=>{o&&x.removeEventListener("scroll",r),s&&x.removeEventListener("resize",r)}),p==null||p(),(w=v)==null||w.disconnect(),v=null,l&&cancelAnimationFrame(m)}}const fh=Fp,ph=$p,hh=Mp,gh=Up,mh=Dp,ei=kp,bh=Bp,vh=(e,t,r)=>{const n=new Map,o={platform:lh,...r},s={...o.platform,_c:n};return Op(e,t,{...o,platform:s})};var wh=typeof document<"u",yh=function(){},Wr=wh?T.useLayoutEffect:yh;function Vr(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let r,n,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(n=r;n--!==0;)if(!Vr(e[n],t[n]))return!1;return!0}if(o=Object.keys(e),r=o.length,r!==Object.keys(t).length)return!1;for(n=r;n--!==0;)if(!{}.hasOwnProperty.call(t,o[n]))return!1;for(n=r;n--!==0;){const s=o[n];if(!(s==="_owner"&&e.$$typeof)&&!Vr(e[s],t[s]))return!1}return!0}return e!==e&&t!==t}function ti(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function ri(e,t){const r=ti(e);return Math.round(t*r)/r}function wo(e){const t=d.useRef(e);return Wr(()=>{t.current=e}),t}function xh(e){e===void 0&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:n=[],platform:o,elements:{reference:s,floating:a}={},transform:c=!0,whileElementsMounted:l,open:f}=e,[u,p]=d.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[g,v]=d.useState(n);Vr(g,n)||v(n);const[m,h]=d.useState(null),[b,w]=d.useState(null),x=d.useCallback(L=>{L!==O.current&&(O.current=L,h(L))},[]),y=d.useCallback(L=>{L!==E.current&&(E.current=L,w(L))},[]),C=s||m,N=a||b,O=d.useRef(null),E=d.useRef(null),M=d.useRef(u),F=l!=null,I=wo(l),B=wo(o),R=wo(f),U=d.useCallback(()=>{if(!O.current||!E.current)return;const L={placement:t,strategy:r,middleware:g};B.current&&(L.platform=B.current),vh(O.current,E.current,L).then(A=>{const ee={...A,isPositioned:R.current!==!1};D.current&&!Vr(M.current,ee)&&(M.current=ee,hr.flushSync(()=>{p(ee)}))})},[g,t,r,B,R]);Wr(()=>{f===!1&&M.current.isPositioned&&(M.current.isPositioned=!1,p(L=>({...L,isPositioned:!1})))},[f]);const D=d.useRef(!1);Wr(()=>(D.current=!0,()=>{D.current=!1}),[]),Wr(()=>{if(C&&(O.current=C),N&&(E.current=N),C&&N){if(I.current)return I.current(C,N,U);U()}},[C,N,U,I,F]);const z=d.useMemo(()=>({reference:O,floating:E,setReference:x,setFloating:y}),[x,y]),k=d.useMemo(()=>({reference:C,floating:N}),[C,N]),G=d.useMemo(()=>{const L={position:r,left:0,top:0};if(!k.floating)return L;const A=ri(k.floating,u.x),ee=ri(k.floating,u.y);return c?{...L,transform:"translate("+A+"px, "+ee+"px)",...ti(k.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:A,top:ee}},[r,c,k.floating,u.x,u.y]);return d.useMemo(()=>({...u,update:U,refs:z,elements:k,floatingStyles:G}),[u,U,z,k,G])}const Sh=e=>{function t(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:n,padding:o}=typeof e=="function"?e(r):e;return n&&t(n)?n.current!=null?ei({element:n.current,padding:o}).fn(r):{}:n?ei({element:n,padding:o}).fn(r):{}}}},Ch=(e,t)=>({...fh(e),options:[e,t]}),Eh=(e,t)=>({...ph(e),options:[e,t]}),Nh=(e,t)=>({...bh(e),options:[e,t]}),Th=(e,t)=>({...hh(e),options:[e,t]}),Ah=(e,t)=>({...gh(e),options:[e,t]}),Ph=(e,t)=>({...mh(e),options:[e,t]}),Ih=(e,t)=>({...Sh(e),options:[e,t]});var _h="Arrow",ni=d.forwardRef((e,t)=>{const{children:r,width:n=10,height:o=5,...s}=e;return i.jsx(te.svg,{...s,ref:t,width:n,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?r:i.jsx("polygon",{points:"0,0 30,0 15,10"})})});ni.displayName=_h;var Oh=ni;function oi(e){const[t,r]=d.useState(void 0);return be(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const n=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const s=o[0];let a,c;if("borderBoxSize"in s){const l=s.borderBoxSize,f=Array.isArray(l)?l[0]:l;a=f.inlineSize,c=f.blockSize}else a=e.offsetWidth,c=e.offsetHeight;r({width:a,height:c})});return n.observe(e,{box:"border-box"}),()=>n.unobserve(e)}else r(void 0)},[e]),t}var yo="Popper",[si,kt]=Fe(yo),[kh,ai]=si(yo),ii=e=>{const{__scopePopper:t,children:r}=e,[n,o]=d.useState(null);return i.jsx(kh,{scope:t,anchor:n,onAnchorChange:o,children:r})};ii.displayName=yo;var ci="PopperAnchor",li=d.forwardRef((e,t)=>{const{__scopePopper:r,virtualRef:n,...o}=e,s=ai(ci,r),a=d.useRef(null),c=ie(t,a),l=d.useRef(null);return d.useEffect(()=>{const f=l.current;l.current=(n==null?void 0:n.current)||a.current,f!==l.current&&s.onAnchorChange(l.current)}),n?null:i.jsx(te.div,{...o,ref:c})});li.displayName=ci;var xo="PopperContent",[Mh,Dh]=si(xo),di=d.forwardRef((e,t)=>{var W,V,se,j,Q,Z;const{__scopePopper:r,side:n="bottom",sideOffset:o=0,align:s="center",alignOffset:a=0,arrowPadding:c=0,avoidCollisions:l=!0,collisionBoundary:f=[],collisionPadding:u=0,sticky:p="partial",hideWhenDetached:g=!1,updatePositionStrategy:v="optimized",onPlaced:m,...h}=e,b=ai(xo,r),[w,x]=d.useState(null),y=ie(t,he=>x(he)),[C,N]=d.useState(null),O=oi(C),E=(O==null?void 0:O.width)??0,M=(O==null?void 0:O.height)??0,F=n+(s!=="center"?"-"+s:""),I=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},B=Array.isArray(f)?f:[f],R=B.length>0,U={padding:I,boundary:B.filter(Fh),altBoundary:R},{refs:D,floatingStyles:z,placement:k,isPositioned:G,middlewareData:L}=xh({strategy:"fixed",placement:F,whileElementsMounted:(...he)=>uh(...he,{animationFrame:v==="always"}),elements:{reference:b.anchor},middleware:[Ch({mainAxis:o+M,alignmentAxis:a}),l&&Eh({mainAxis:!0,crossAxis:!1,limiter:p==="partial"?Nh():void 0,...U}),l&&Th({...U}),Ah({...U,apply:({elements:he,rects:Se,availableWidth:X,availableHeight:Y})=>{const{width:ge,height:We}=Se.reference,Ae=he.floating.style;Ae.setProperty("--radix-popper-available-width",`${X}px`),Ae.setProperty("--radix-popper-available-height",`${Y}px`),Ae.setProperty("--radix-popper-anchor-width",`${ge}px`),Ae.setProperty("--radix-popper-anchor-height",`${We}px`)}}),C&&Ih({element:C,padding:c}),$h({arrowWidth:E,arrowHeight:M}),g&&Ph({strategy:"referenceHidden",...U})]}),[A,ee]=pi(k),q=ve(m);be(()=>{G&&(q==null||q())},[G,q]);const ce=(W=L.arrow)==null?void 0:W.x,$=(V=L.arrow)==null?void 0:V.y,K=((se=L.arrow)==null?void 0:se.centerOffset)!==0,[le,pe]=d.useState();return be(()=>{w&&pe(window.getComputedStyle(w).zIndex)},[w]),i.jsx("div",{ref:D.setFloating,"data-radix-popper-content-wrapper":"",style:{...z,transform:G?z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:le,"--radix-popper-transform-origin":[(j=L.transformOrigin)==null?void 0:j.x,(Q=L.transformOrigin)==null?void 0:Q.y].join(" "),...((Z=L.hide)==null?void 0:Z.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:i.jsx(Mh,{scope:r,placedSide:A,onArrowChange:N,arrowX:ce,arrowY:$,shouldHideArrow:K,children:i.jsx(te.div,{"data-side":A,"data-align":ee,...h,ref:y,style:{...h.style,animation:G?void 0:"none"}})})})});di.displayName=xo;var ui="PopperArrow",Lh={top:"bottom",right:"left",bottom:"top",left:"right"},fi=d.forwardRef(function(t,r){const{__scopePopper:n,...o}=t,s=Dh(ui,n),a=Lh[s.placedSide];return i.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:i.jsx(Oh,{...o,ref:r,style:{...o.style,display:"block"}})})});fi.displayName=ui;function Fh(e){return e!==null}var $h=e=>({name:"transformOrigin",options:e,fn(t){var b,w,x;const{placement:r,rects:n,middlewareData:o}=t,a=((b=o.arrow)==null?void 0:b.centerOffset)!==0,c=a?0:e.arrowWidth,l=a?0:e.arrowHeight,[f,u]=pi(r),p={start:"0%",center:"50%",end:"100%"}[u],g=(((w=o.arrow)==null?void 0:w.x)??0)+c/2,v=(((x=o.arrow)==null?void 0:x.y)??0)+l/2;let m="",h="";return f==="bottom"?(m=a?p:`${g}px`,h=`${-l}px`):f==="top"?(m=a?p:`${g}px`,h=`${n.floating.height+l}px`):f==="right"?(m=`${-l}px`,h=a?p:`${v}px`):f==="left"&&(m=`${n.floating.width+l}px`,h=a?p:`${v}px`),{data:{x:m,y:h}}}});function pi(e){const[t,r="center"]=e.split("-");return[t,r]}var So=ii,Co=li,Eo=di,No=fi,Bh="Portal",jr=d.forwardRef((e,t)=>{var c;const{container:r,...n}=e,[o,s]=d.useState(!1);be(()=>s(!0),[]);const a=r||o&&((c=globalThis==null?void 0:globalThis.document)==null?void 0:c.body);return a?ms.createPortal(i.jsx(te.div,{...n,ref:t}),a):null});jr.displayName=Bh;var To="rovingFocusGroup.onEntryFocus",Uh={bubbles:!1,cancelable:!0},Qt="RovingFocusGroup",[Ao,hi,Hh]=ro(Qt),[zh,gi]=Fe(Qt,[Hh]),[Wh,Vh]=zh(Qt),mi=d.forwardRef((e,t)=>i.jsx(Ao.Provider,{scope:e.__scopeRovingFocusGroup,children:i.jsx(Ao.Slot,{scope:e.__scopeRovingFocusGroup,children:i.jsx(jh,{...e,ref:t})})}));mi.displayName=Qt;var jh=d.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,orientation:n,loop:o=!1,dir:s,currentTabStopId:a,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:f,preventScrollOnEntryFocus:u=!1,...p}=e,g=d.useRef(null),v=ie(t,g),m=kr(s),[h,b]=ot({prop:a,defaultProp:c??null,onChange:l,caller:Qt}),[w,x]=d.useState(!1),y=ve(f),C=hi(r),N=d.useRef(!1),[O,E]=d.useState(0);return d.useEffect(()=>{const M=g.current;if(M)return M.addEventListener(To,y),()=>M.removeEventListener(To,y)},[y]),i.jsx(Wh,{scope:r,orientation:n,dir:m,loop:o,currentTabStopId:h,onItemFocus:d.useCallback(M=>b(M),[b]),onItemShiftTab:d.useCallback(()=>x(!0),[]),onFocusableItemAdd:d.useCallback(()=>E(M=>M+1),[]),onFocusableItemRemove:d.useCallback(()=>E(M=>M-1),[]),children:i.jsx(te.div,{tabIndex:w||O===0?-1:0,"data-orientation":n,...p,ref:v,style:{outline:"none",...e.style},onMouseDown:H(e.onMouseDown,()=>{N.current=!0}),onFocus:H(e.onFocus,M=>{const F=!N.current;if(M.target===M.currentTarget&&F&&!w){const I=new CustomEvent(To,Uh);if(M.currentTarget.dispatchEvent(I),!I.defaultPrevented){const B=C().filter(k=>k.focusable),R=B.find(k=>k.active),U=B.find(k=>k.id===h),z=[R,U,...B].filter(Boolean).map(k=>k.ref.current);wi(z,u)}}N.current=!1}),onBlur:H(e.onBlur,()=>x(!1))})})}),bi="RovingFocusGroupItem",vi=d.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,focusable:n=!0,active:o=!1,tabStopId:s,children:a,...c}=e,l=$e(),f=s||l,u=Vh(bi,r),p=u.currentTabStopId===f,g=hi(r),{onFocusableItemAdd:v,onFocusableItemRemove:m,currentTabStopId:h}=u;return d.useEffect(()=>{if(n)return v(),()=>m()},[n,v,m]),i.jsx(Ao.ItemSlot,{scope:r,id:f,focusable:n,active:o,children:i.jsx(te.span,{tabIndex:p?0:-1,"data-orientation":u.orientation,...c,ref:t,onMouseDown:H(e.onMouseDown,b=>{n?u.onItemFocus(f):b.preventDefault()}),onFocus:H(e.onFocus,()=>u.onItemFocus(f)),onKeyDown:H(e.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){u.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const w=Gh(b,u.orientation,u.dir);if(w!==void 0){if(b.metaKey||b.ctrlKey||b.altKey||b.shiftKey)return;b.preventDefault();let y=g().filter(C=>C.focusable).map(C=>C.ref.current);if(w==="last")y.reverse();else if(w==="prev"||w==="next"){w==="prev"&&y.reverse();const C=y.indexOf(b.currentTarget);y=u.loop?qh(y,C+1):y.slice(C+1)}setTimeout(()=>wi(y))}}),children:typeof a=="function"?a({isCurrentTabStop:p,hasTabStop:h!=null}):a})})});vi.displayName=bi;var Kh={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Rh(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function Gh(e,t,r){const n=Rh(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(n))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(n)))return Kh[n]}function wi(e,t=!1){const r=document.activeElement;for(const n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}function qh(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var Xh=mi,Yh=vi,Jh=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Mt=new WeakMap,Kr=new WeakMap,Rr={},Po=0,yi=function(e){return e&&(e.host||yi(e.parentNode))},Zh=function(e,t){return t.map(function(r){if(e.contains(r))return r;var n=yi(r);return n&&e.contains(n)?n:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},Qh=function(e,t,r,n){var o=Zh(t,Array.isArray(e)?e:[e]);Rr[r]||(Rr[r]=new WeakMap);var s=Rr[r],a=[],c=new Set,l=new Set(o),f=function(p){!p||c.has(p)||(c.add(p),f(p.parentNode))};o.forEach(f);var u=function(p){!p||l.has(p)||Array.prototype.forEach.call(p.children,function(g){if(c.has(g))u(g);else try{var v=g.getAttribute(n),m=v!==null&&v!=="false",h=(Mt.get(g)||0)+1,b=(s.get(g)||0)+1;Mt.set(g,h),s.set(g,b),a.push(g),h===1&&m&&Kr.set(g,!0),b===1&&g.setAttribute(r,"true"),m||g.setAttribute(n,"true")}catch(w){console.error("aria-hidden: cannot operate on ",g,w)}})};return u(t),c.clear(),Po++,function(){a.forEach(function(p){var g=Mt.get(p)-1,v=s.get(p)-1;Mt.set(p,g),s.set(p,v),g||(Kr.has(p)||p.removeAttribute(n),Kr.delete(p)),v||p.removeAttribute(r)}),Po--,Po||(Mt=new WeakMap,Mt=new WeakMap,Kr=new WeakMap,Rr={})}},Io=function(e,t,r){r===void 0&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),o=Jh(e);return o?(n.push.apply(n,Array.from(o.querySelectorAll("[aria-live], script"))),Qh(n,o,r,"aria-hidden")):function(){return null}},Je=function(){return Je=Object.assign||function(t){for(var r,n=1,o=arguments.length;n<o;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},Je.apply(this,arguments)};function xi(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]]);return r}function eg(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,s;n<o;n++)(s||!(n in t))&&(s||(s=Array.prototype.slice.call(t,0,n)),s[n]=t[n]);return e.concat(s||Array.prototype.slice.call(t))}typeof SuppressedError=="function"&&SuppressedError;var Gr="right-scroll-bar-position",qr="width-before-scroll-bar",tg="with-scroll-bars-hidden",rg="--removed-body-scroll-bar-size";function _o(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function ng(e,t){var r=T.useState(function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(n){var o=r.value;o!==n&&(r.value=n,r.callback(n,o))}}}})[0];return r.callback=t,r.facade}var og=typeof window<"u"?d.useLayoutEffect:d.useEffect,Si=new WeakMap;function sg(e,t){var r=ng(null,function(n){return e.forEach(function(o){return _o(o,n)})});return og(function(){var n=Si.get(r);if(n){var o=new Set(n),s=new Set(e),a=r.current;o.forEach(function(c){s.has(c)||_o(c,null)}),s.forEach(function(c){o.has(c)||_o(c,a)})}Si.set(r,e)},[e]),r}function ag(e){return e}function ig(e,t){t===void 0&&(t=ag);var r=[],n=!1,o={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(s){var a=t(s,n);return r.push(a),function(){r=r.filter(function(c){return c!==a})}},assignSyncMedium:function(s){for(n=!0;r.length;){var a=r;r=[],a.forEach(s)}r={push:function(c){return s(c)},filter:function(){return r}}},assignMedium:function(s){n=!0;var a=[];if(r.length){var c=r;r=[],c.forEach(s),a=r}var l=function(){var u=a;a=[],u.forEach(s)},f=function(){return Promise.resolve().then(l)};f(),r={push:function(u){a.push(u),f()},filter:function(u){return a=a.filter(u),r}}}};return o}function cg(e){e===void 0&&(e={});var t=ig(null);return t.options=Je({async:!0,ssr:!1},e),t}var Ci=function(e){var t=e.sideCar,r=xi(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw new Error("Sidecar medium not found");return d.createElement(n,Je({},r))};Ci.isSideCarExport=!0;function lg(e,t){return e.useMedium(t),Ci}var Ei=cg(),Oo=function(){},Xr=d.forwardRef(function(e,t){var r=d.useRef(null),n=d.useState({onScrollCapture:Oo,onWheelCapture:Oo,onTouchMoveCapture:Oo}),o=n[0],s=n[1],a=e.forwardProps,c=e.children,l=e.className,f=e.removeScrollBar,u=e.enabled,p=e.shards,g=e.sideCar,v=e.noRelative,m=e.noIsolation,h=e.inert,b=e.allowPinchZoom,w=e.as,x=w===void 0?"div":w,y=e.gapMode,C=xi(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),N=g,O=sg([r,t]),E=Je(Je({},C),o);return d.createElement(d.Fragment,null,u&&d.createElement(N,{sideCar:Ei,removeScrollBar:f,shards:p,noRelative:v,noIsolation:m,inert:h,setCallbacks:s,allowPinchZoom:!!b,lockRef:r,gapMode:y}),a?d.cloneElement(d.Children.only(c),Je(Je({},E),{ref:O})):d.createElement(x,Je({},E,{className:l,ref:O}),c))});Xr.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Xr.classNames={fullWidth:qr,zeroRight:Gr};var dg=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function ug(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=dg();return t&&e.setAttribute("nonce",t),e}function fg(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function pg(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var hg=function(){var e=0,t=null;return{add:function(r){e==0&&(t=ug())&&(fg(t,r),pg(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},gg=function(){var e=hg();return function(t,r){d.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},Ni=function(){var e=gg(),t=function(r){var n=r.styles,o=r.dynamic;return e(n,o),null};return t},mg={left:0,top:0,right:0,gap:0},ko=function(e){return parseInt(e||"",10)||0},bg=function(e){var t=window.getComputedStyle(document.body),r=t[e==="padding"?"paddingLeft":"marginLeft"],n=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[ko(r),ko(n),ko(o)]},vg=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return mg;var t=bg(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},wg=Ni(),Dt="data-scroll-locked",yg=function(e,t,r,n){var o=e.left,s=e.top,a=e.right,c=e.gap;return r===void 0&&(r="margin"),`
19
- .`.concat(tg,` {
18
+ `).trim():r.replace(/</g,"&lt;").replace(/>/g,"&gt;").trim()}function op(e,t=At){if(!e||typeof e!="string")throw new Error("Invalid content: must be a non-empty string");if(e.length>t)throw new Error(`Message exceeds maximum length of ${t} characters`);return e}function sp(e){let t;return typeof e=="string"?t=e:typeof e=="object"&&e!==null?t=JSON.stringify(e):t=String(e),op(t),np(t)}function no(e){const t=e+"CollectionProvider",[r,n]=$e(t),[o,s]=r(t,{collectionRef:{current:null},itemMap:new Map}),a=h=>{const{scope:b,children:w}=h,x=T.useRef(null),y=T.useRef(new Map).current;return i.jsx(o,{scope:b,itemMap:y,collectionRef:x,children:w})};a.displayName=t;const c=e+"CollectionSlot",l=Ie.createSlot(c),f=T.forwardRef((h,b)=>{const{scope:w,children:x}=h,y=s(c,w),C=ae(b,y.collectionRef);return i.jsx(l,{ref:C,children:x})});f.displayName=c;const u=e+"CollectionItemSlot",p="data-radix-collection-item",g=Ie.createSlot(u),v=T.forwardRef((h,b)=>{const{scope:w,children:x,...y}=h,C=T.useRef(null),N=ae(b,C),O=s(u,w);return T.useEffect(()=>(O.itemMap.set(C,{ref:C,...y}),()=>void O.itemMap.delete(C))),i.jsx(g,{[p]:"",ref:N,children:x})});v.displayName=u;function m(h){const b=s(e+"CollectionConsumer",h);return T.useCallback(()=>{const x=b.collectionRef.current;if(!x)return[];const y=Array.from(x.querySelectorAll(`[${p}]`));return Array.from(b.itemMap.values()).sort((O,E)=>y.indexOf(O.ref.current)-y.indexOf(E.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:f,ItemSlot:v},m,n]}var ap=d.createContext(void 0);function Mr(e){const t=d.useContext(ap);return e||t||"ltr"}function we(e){const t=d.useRef(e);return d.useEffect(()=>{t.current=e}),d.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}function ip(e,t=globalThis==null?void 0:globalThis.document){const r=we(e);d.useEffect(()=>{const n=o=>{o.key==="Escape"&&r(o)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[r,t])}var cp="DismissableLayer",oo="dismissableLayer.update",lp="dismissableLayer.pointerDownOutside",dp="dismissableLayer.focusOutside",Aa,Pa=d.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Jt=d.forwardRef((e,t)=>{const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:a,onDismiss:c,...l}=e,f=d.useContext(Pa),[u,p]=d.useState(null),g=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,v]=d.useState({}),m=ae(t,E=>p(E)),h=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),w=h.indexOf(b),x=u?h.indexOf(u):-1,y=f.layersWithOutsidePointerEventsDisabled.size>0,C=x>=w,N=pp(E=>{const M=E.target,F=[...f.branches].some(I=>I.contains(M));!C||F||(o==null||o(E),a==null||a(E),E.defaultPrevented||c==null||c())},g),O=hp(E=>{const M=E.target;[...f.branches].some(I=>I.contains(M))||(s==null||s(E),a==null||a(E),E.defaultPrevented||c==null||c())},g);return ip(E=>{x===f.layers.size-1&&(n==null||n(E),!E.defaultPrevented&&c&&(E.preventDefault(),c()))},g),d.useEffect(()=>{if(u)return r&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(Aa=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(u)),f.layers.add(u),Ia(),()=>{r&&f.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=Aa)}},[u,g,r,f]),d.useEffect(()=>()=>{u&&(f.layers.delete(u),f.layersWithOutsidePointerEventsDisabled.delete(u),Ia())},[u,f]),d.useEffect(()=>{const E=()=>v({});return document.addEventListener(oo,E),()=>document.removeEventListener(oo,E)},[]),i.jsx(te.div,{...l,ref:m,style:{pointerEvents:y?C?"auto":"none":void 0,...e.style},onFocusCapture:H(e.onFocusCapture,O.onFocusCapture),onBlurCapture:H(e.onBlurCapture,O.onBlurCapture),onPointerDownCapture:H(e.onPointerDownCapture,N.onPointerDownCapture)})});Jt.displayName=cp;var up="DismissableLayerBranch",fp=d.forwardRef((e,t)=>{const r=d.useContext(Pa),n=d.useRef(null),o=ae(t,n);return d.useEffect(()=>{const s=n.current;if(s)return r.branches.add(s),()=>{r.branches.delete(s)}},[r.branches]),i.jsx(te.div,{...e,ref:o})});fp.displayName=up;function pp(e,t=globalThis==null?void 0:globalThis.document){const r=we(e),n=d.useRef(!1),o=d.useRef(()=>{});return d.useEffect(()=>{const s=c=>{if(c.target&&!n.current){let l=function(){_a(lp,r,f,{discrete:!0})};const f={originalEvent:c};c.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=l,t.addEventListener("click",o.current,{once:!0})):l()}else t.removeEventListener("click",o.current);n.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",s),t.removeEventListener("click",o.current)}},[t,r]),{onPointerDownCapture:()=>n.current=!0}}function hp(e,t=globalThis==null?void 0:globalThis.document){const r=we(e),n=d.useRef(!1);return d.useEffect(()=>{const o=s=>{s.target&&!n.current&&_a(dp,r,{originalEvent:s},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,r]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function Ia(){const e=new CustomEvent(oo);document.dispatchEvent(e)}function _a(e,t,r,{discrete:n}){const o=r.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&o.addEventListener(e,t,{once:!0}),n?va(o,s):o.dispatchEvent(s)}var so=0;function ao(){d.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??Oa()),document.body.insertAdjacentElement("beforeend",e[1]??Oa()),so++,()=>{so===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),so--}},[])}function Oa(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var io="focusScope.autoFocusOnMount",co="focusScope.autoFocusOnUnmount",ka={bubbles:!1,cancelable:!0},gp="FocusScope",Dr=d.forwardRef((e,t)=>{const{loop:r=!1,trapped:n=!1,onMountAutoFocus:o,onUnmountAutoFocus:s,...a}=e,[c,l]=d.useState(null),f=we(o),u=we(s),p=d.useRef(null),g=ae(t,h=>l(h)),v=d.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;d.useEffect(()=>{if(n){let h=function(y){if(v.paused||!c)return;const C=y.target;c.contains(C)?p.current=C:st(p.current,{select:!0})},b=function(y){if(v.paused||!c)return;const C=y.relatedTarget;C!==null&&(c.contains(C)||st(p.current,{select:!0}))},w=function(y){if(document.activeElement===document.body)for(const N of y)N.removedNodes.length>0&&st(c)};document.addEventListener("focusin",h),document.addEventListener("focusout",b);const x=new MutationObserver(w);return c&&x.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",h),document.removeEventListener("focusout",b),x.disconnect()}}},[n,c,v.paused]),d.useEffect(()=>{if(c){La.add(v);const h=document.activeElement;if(!c.contains(h)){const w=new CustomEvent(io,ka);c.addEventListener(io,f),c.dispatchEvent(w),w.defaultPrevented||(mp(xp(Ma(c)),{select:!0}),document.activeElement===h&&st(c))}return()=>{c.removeEventListener(io,f),setTimeout(()=>{const w=new CustomEvent(co,ka);c.addEventListener(co,u),c.dispatchEvent(w),w.defaultPrevented||st(h??document.body,{select:!0}),c.removeEventListener(co,u),La.remove(v)},0)}}},[c,f,u,v]);const m=d.useCallback(h=>{if(!r&&!n||v.paused)return;const b=h.key==="Tab"&&!h.altKey&&!h.ctrlKey&&!h.metaKey,w=document.activeElement;if(b&&w){const x=h.currentTarget,[y,C]=bp(x);y&&C?!h.shiftKey&&w===C?(h.preventDefault(),r&&st(y,{select:!0})):h.shiftKey&&w===y&&(h.preventDefault(),r&&st(C,{select:!0})):w===x&&h.preventDefault()}},[r,n,v.paused]);return i.jsx(te.div,{tabIndex:-1,...a,ref:g,onKeyDown:m})});Dr.displayName=gp;function mp(e,{select:t=!1}={}){const r=document.activeElement;for(const n of e)if(st(n,{select:t}),document.activeElement!==r)return}function bp(e){const t=Ma(e),r=Da(t,e),n=Da(t.reverse(),e);return[r,n]}function Ma(e){const t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{const o=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||o?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)t.push(r.currentNode);return t}function Da(e,t){for(const r of e)if(!vp(r,{upTo:t}))return r}function vp(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function wp(e){return e instanceof HTMLInputElement&&"select"in e}function st(e,{select:t=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&wp(e)&&t&&e.select()}}var La=yp();function yp(){let e=[];return{add(t){const r=e[0];t!==r&&(r==null||r.pause()),e=Fa(e,t),e.unshift(t)},remove(t){var r;e=Fa(e,t),(r=e[0])==null||r.resume()}}}function Fa(e,t){const r=[...e],n=r.indexOf(t);return n!==-1&&r.splice(n,1),r}function xp(e){return e.filter(t=>t.tagName!=="A")}const Sp=["top","right","bottom","left"],at=Math.min,_e=Math.max,Lr=Math.round,Fr=Math.floor,Ge=e=>({x:e,y:e}),Cp={left:"right",right:"left",bottom:"top",top:"bottom"},Ep={start:"end",end:"start"};function lo(e,t,r){return _e(e,at(t,r))}function et(e,t){return typeof e=="function"?e(t):e}function tt(e){return e.split("-")[0]}function Pt(e){return e.split("-")[1]}function uo(e){return e==="x"?"y":"x"}function fo(e){return e==="y"?"height":"width"}const Np=new Set(["top","bottom"]);function qe(e){return Np.has(tt(e))?"y":"x"}function po(e){return uo(qe(e))}function Tp(e,t,r){r===void 0&&(r=!1);const n=Pt(e),o=po(e),s=fo(o);let a=o==="x"?n===(r?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(a=$r(a)),[a,$r(a)]}function Ap(e){const t=$r(e);return[ho(e),t,ho(t)]}function ho(e){return e.replace(/start|end/g,t=>Ep[t])}const $a=["left","right"],Ba=["right","left"],Pp=["top","bottom"],Ip=["bottom","top"];function _p(e,t,r){switch(e){case"top":case"bottom":return r?t?Ba:$a:t?$a:Ba;case"left":case"right":return t?Pp:Ip;default:return[]}}function Op(e,t,r,n){const o=Pt(e);let s=_p(tt(e),r==="start",n);return o&&(s=s.map(a=>a+"-"+o),t&&(s=s.concat(s.map(ho)))),s}function $r(e){return e.replace(/left|right|bottom|top/g,t=>Cp[t])}function kp(e){return{top:0,right:0,bottom:0,left:0,...e}}function Ua(e){return typeof e!="number"?kp(e):{top:e,right:e,bottom:e,left:e}}function Br(e){const{x:t,y:r,width:n,height:o}=e;return{width:n,height:o,top:r,left:t,right:t+n,bottom:r+o,x:t,y:r}}function Ha(e,t,r){let{reference:n,floating:o}=e;const s=qe(t),a=po(t),c=fo(a),l=tt(t),f=s==="y",u=n.x+n.width/2-o.width/2,p=n.y+n.height/2-o.height/2,g=n[c]/2-o[c]/2;let v;switch(l){case"top":v={x:u,y:n.y-o.height};break;case"bottom":v={x:u,y:n.y+n.height};break;case"right":v={x:n.x+n.width,y:p};break;case"left":v={x:n.x-o.width,y:p};break;default:v={x:n.x,y:n.y}}switch(Pt(t)){case"start":v[a]-=g*(r&&f?-1:1);break;case"end":v[a]+=g*(r&&f?-1:1);break}return v}const Mp=async(e,t,r)=>{const{placement:n="bottom",strategy:o="absolute",middleware:s=[],platform:a}=r,c=s.filter(Boolean),l=await(a.isRTL==null?void 0:a.isRTL(t));let f=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:p}=Ha(f,n,l),g=n,v={},m=0;for(let h=0;h<c.length;h++){const{name:b,fn:w}=c[h],{x,y,data:C,reset:N}=await w({x:u,y:p,initialPlacement:n,placement:g,strategy:o,middlewareData:v,rects:f,platform:a,elements:{reference:e,floating:t}});u=x??u,p=y??p,v={...v,[b]:{...v[b],...C}},N&&m<=50&&(m++,typeof N=="object"&&(N.placement&&(g=N.placement),N.rects&&(f=N.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:o}):N.rects),{x:u,y:p}=Ha(f,g,l)),h=-1)}return{x:u,y:p,placement:g,strategy:o,middlewareData:v}};async function Zt(e,t){var r;t===void 0&&(t={});const{x:n,y:o,platform:s,rects:a,elements:c,strategy:l}=e,{boundary:f="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:g=!1,padding:v=0}=et(t,e),m=Ua(v),b=c[g?p==="floating"?"reference":"floating":p],w=Br(await s.getClippingRect({element:(r=await(s.isElement==null?void 0:s.isElement(b)))==null||r?b:b.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(c.floating)),boundary:f,rootBoundary:u,strategy:l})),x=p==="floating"?{x:n,y:o,width:a.floating.width,height:a.floating.height}:a.reference,y=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c.floating)),C=await(s.isElement==null?void 0:s.isElement(y))?await(s.getScale==null?void 0:s.getScale(y))||{x:1,y:1}:{x:1,y:1},N=Br(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:x,offsetParent:y,strategy:l}):x);return{top:(w.top-N.top+m.top)/C.y,bottom:(N.bottom-w.bottom+m.bottom)/C.y,left:(w.left-N.left+m.left)/C.x,right:(N.right-w.right+m.right)/C.x}}const Dp=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:n,placement:o,rects:s,platform:a,elements:c,middlewareData:l}=t,{element:f,padding:u=0}=et(e,t)||{};if(f==null)return{};const p=Ua(u),g={x:r,y:n},v=po(o),m=fo(v),h=await a.getDimensions(f),b=v==="y",w=b?"top":"left",x=b?"bottom":"right",y=b?"clientHeight":"clientWidth",C=s.reference[m]+s.reference[v]-g[v]-s.floating[m],N=g[v]-s.reference[v],O=await(a.getOffsetParent==null?void 0:a.getOffsetParent(f));let E=O?O[y]:0;(!E||!await(a.isElement==null?void 0:a.isElement(O)))&&(E=c.floating[y]||s.floating[m]);const M=C/2-N/2,F=E/2-h[m]/2-1,I=at(p[w],F),B=at(p[x],F),R=I,U=E-h[m]-B,D=E/2-h[m]/2+M,z=lo(R,D,U),k=!l.arrow&&Pt(o)!=null&&D!==z&&s.reference[m]/2-(D<R?I:B)-h[m]/2<0,G=k?D<R?D-R:D-U:0;return{[v]:g[v]+G,data:{[v]:z,centerOffset:D-z-G,...k&&{alignmentOffset:G}},reset:k}}}),Lp=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var r,n;const{placement:o,middlewareData:s,rects:a,initialPlacement:c,platform:l,elements:f}=t,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:g,fallbackStrategy:v="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...b}=et(e,t);if((r=s.arrow)!=null&&r.alignmentOffset)return{};const w=tt(o),x=qe(c),y=tt(c)===c,C=await(l.isRTL==null?void 0:l.isRTL(f.floating)),N=g||(y||!h?[$r(c)]:Ap(c)),O=m!=="none";!g&&O&&N.push(...Op(c,h,m,C));const E=[c,...N],M=await Zt(t,b),F=[];let I=((n=s.flip)==null?void 0:n.overflows)||[];if(u&&F.push(M[w]),p){const D=Tp(o,a,C);F.push(M[D[0]],M[D[1]])}if(I=[...I,{placement:o,overflows:F}],!F.every(D=>D<=0)){var B,R;const D=(((B=s.flip)==null?void 0:B.index)||0)+1,z=E[D];if(z&&(!(p==="alignment"?x!==qe(z):!1)||I.every(L=>qe(L.placement)===x?L.overflows[0]>0:!0)))return{data:{index:D,overflows:I},reset:{placement:z}};let k=(R=I.filter(G=>G.overflows[0]<=0).sort((G,L)=>G.overflows[1]-L.overflows[1])[0])==null?void 0:R.placement;if(!k)switch(v){case"bestFit":{var U;const G=(U=I.filter(L=>{if(O){const A=qe(L.placement);return A===x||A==="y"}return!0}).map(L=>[L.placement,L.overflows.filter(A=>A>0).reduce((A,ee)=>A+ee,0)]).sort((L,A)=>L[1]-A[1])[0])==null?void 0:U[0];G&&(k=G);break}case"initialPlacement":k=c;break}if(o!==k)return{reset:{placement:k}}}return{}}}};function za(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Wa(e){return Sp.some(t=>e[t]>=0)}const Fp=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r}=t,{strategy:n="referenceHidden",...o}=et(e,t);switch(n){case"referenceHidden":{const s=await Zt(t,{...o,elementContext:"reference"}),a=za(s,r.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Wa(a)}}}case"escaped":{const s=await Zt(t,{...o,altBoundary:!0}),a=za(s,r.floating);return{data:{escapedOffsets:a,escaped:Wa(a)}}}default:return{}}}}},Va=new Set(["left","top"]);async function $p(e,t){const{placement:r,platform:n,elements:o}=e,s=await(n.isRTL==null?void 0:n.isRTL(o.floating)),a=tt(r),c=Pt(r),l=qe(r)==="y",f=Va.has(a)?-1:1,u=s&&l?-1:1,p=et(t,e);let{mainAxis:g,crossAxis:v,alignmentAxis:m}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return c&&typeof m=="number"&&(v=c==="end"?m*-1:m),l?{x:v*u,y:g*f}:{x:g*f,y:v*u}}const Bp=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var r,n;const{x:o,y:s,placement:a,middlewareData:c}=t,l=await $p(t,e);return a===((r=c.offset)==null?void 0:r.placement)&&(n=c.arrow)!=null&&n.alignmentOffset?{}:{x:o+l.x,y:s+l.y,data:{...l,placement:a}}}}},Up=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:r,y:n,placement:o}=t,{mainAxis:s=!0,crossAxis:a=!1,limiter:c={fn:b=>{let{x:w,y:x}=b;return{x:w,y:x}}},...l}=et(e,t),f={x:r,y:n},u=await Zt(t,l),p=qe(tt(o)),g=uo(p);let v=f[g],m=f[p];if(s){const b=g==="y"?"top":"left",w=g==="y"?"bottom":"right",x=v+u[b],y=v-u[w];v=lo(x,v,y)}if(a){const b=p==="y"?"top":"left",w=p==="y"?"bottom":"right",x=m+u[b],y=m-u[w];m=lo(x,m,y)}const h=c.fn({...t,[g]:v,[p]:m});return{...h,data:{x:h.x-r,y:h.y-n,enabled:{[g]:s,[p]:a}}}}}},Hp=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:r,y:n,placement:o,rects:s,middlewareData:a}=t,{offset:c=0,mainAxis:l=!0,crossAxis:f=!0}=et(e,t),u={x:r,y:n},p=qe(o),g=uo(p);let v=u[g],m=u[p];const h=et(c,t),b=typeof h=="number"?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(l){const y=g==="y"?"height":"width",C=s.reference[g]-s.floating[y]+b.mainAxis,N=s.reference[g]+s.reference[y]-b.mainAxis;v<C?v=C:v>N&&(v=N)}if(f){var w,x;const y=g==="y"?"width":"height",C=Va.has(tt(o)),N=s.reference[p]-s.floating[y]+(C&&((w=a.offset)==null?void 0:w[p])||0)+(C?0:b.crossAxis),O=s.reference[p]+s.reference[y]+(C?0:((x=a.offset)==null?void 0:x[p])||0)-(C?b.crossAxis:0);m<N?m=N:m>O&&(m=O)}return{[g]:v,[p]:m}}}},zp=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var r,n;const{placement:o,rects:s,platform:a,elements:c}=t,{apply:l=()=>{},...f}=et(e,t),u=await Zt(t,f),p=tt(o),g=Pt(o),v=qe(o)==="y",{width:m,height:h}=s.floating;let b,w;p==="top"||p==="bottom"?(b=p,w=g===(await(a.isRTL==null?void 0:a.isRTL(c.floating))?"start":"end")?"left":"right"):(w=p,b=g==="end"?"top":"bottom");const x=h-u.top-u.bottom,y=m-u.left-u.right,C=at(h-u[b],x),N=at(m-u[w],y),O=!t.middlewareData.shift;let E=C,M=N;if((r=t.middlewareData.shift)!=null&&r.enabled.x&&(M=y),(n=t.middlewareData.shift)!=null&&n.enabled.y&&(E=x),O&&!g){const I=_e(u.left,0),B=_e(u.right,0),R=_e(u.top,0),U=_e(u.bottom,0);v?M=m-2*(I!==0||B!==0?I+B:_e(u.left,u.right)):E=h-2*(R!==0||U!==0?R+U:_e(u.top,u.bottom))}await l({...t,availableWidth:M,availableHeight:E});const F=await a.getDimensions(c.floating);return m!==F.width||h!==F.height?{reset:{rects:!0}}:{}}}};function Ur(){return typeof window<"u"}function It(e){return ja(e)?(e.nodeName||"").toLowerCase():"#document"}function Oe(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Xe(e){var t;return(t=(ja(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function ja(e){return Ur()?e instanceof Node||e instanceof Oe(e).Node:!1}function Ue(e){return Ur()?e instanceof Element||e instanceof Oe(e).Element:!1}function Ye(e){return Ur()?e instanceof HTMLElement||e instanceof Oe(e).HTMLElement:!1}function Ka(e){return!Ur()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Oe(e).ShadowRoot}const Wp=new Set(["inline","contents"]);function Qt(e){const{overflow:t,overflowX:r,overflowY:n,display:o}=He(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+r)&&!Wp.has(o)}const Vp=new Set(["table","td","th"]);function jp(e){return Vp.has(It(e))}const Kp=[":popover-open",":modal"];function Hr(e){return Kp.some(t=>{try{return e.matches(t)}catch{return!1}})}const Rp=["transform","translate","scale","rotate","perspective"],Gp=["transform","translate","scale","rotate","perspective","filter"],qp=["paint","layout","strict","content"];function go(e){const t=mo(),r=Ue(e)?He(e):e;return Rp.some(n=>r[n]?r[n]!=="none":!1)||(r.containerType?r.containerType!=="normal":!1)||!t&&(r.backdropFilter?r.backdropFilter!=="none":!1)||!t&&(r.filter?r.filter!=="none":!1)||Gp.some(n=>(r.willChange||"").includes(n))||qp.some(n=>(r.contain||"").includes(n))}function Xp(e){let t=it(e);for(;Ye(t)&&!_t(t);){if(go(t))return t;if(Hr(t))return null;t=it(t)}return null}function mo(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const Yp=new Set(["html","body","#document"]);function _t(e){return Yp.has(It(e))}function He(e){return Oe(e).getComputedStyle(e)}function zr(e){return Ue(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function it(e){if(It(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ka(e)&&e.host||Xe(e);return Ka(t)?t.host:t}function Ra(e){const t=it(e);return _t(t)?e.ownerDocument?e.ownerDocument.body:e.body:Ye(t)&&Qt(t)?t:Ra(t)}function er(e,t,r){var n;t===void 0&&(t=[]),r===void 0&&(r=!0);const o=Ra(e),s=o===((n=e.ownerDocument)==null?void 0:n.body),a=Oe(o);if(s){const c=bo(a);return t.concat(a,a.visualViewport||[],Qt(o)?o:[],c&&r?er(c):[])}return t.concat(o,er(o,[],r))}function bo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ga(e){const t=He(e);let r=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const o=Ye(e),s=o?e.offsetWidth:r,a=o?e.offsetHeight:n,c=Lr(r)!==s||Lr(n)!==a;return c&&(r=s,n=a),{width:r,height:n,$:c}}function vo(e){return Ue(e)?e:e.contextElement}function Ot(e){const t=vo(e);if(!Ye(t))return Ge(1);const r=t.getBoundingClientRect(),{width:n,height:o,$:s}=Ga(t);let a=(s?Lr(r.width):r.width)/n,c=(s?Lr(r.height):r.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!c||!Number.isFinite(c))&&(c=1),{x:a,y:c}}const Jp=Ge(0);function qa(e){const t=Oe(e);return!mo()||!t.visualViewport?Jp:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Zp(e,t,r){return t===void 0&&(t=!1),!r||t&&r!==Oe(e)?!1:t}function mt(e,t,r,n){t===void 0&&(t=!1),r===void 0&&(r=!1);const o=e.getBoundingClientRect(),s=vo(e);let a=Ge(1);t&&(n?Ue(n)&&(a=Ot(n)):a=Ot(e));const c=Zp(s,r,n)?qa(s):Ge(0);let l=(o.left+c.x)/a.x,f=(o.top+c.y)/a.y,u=o.width/a.x,p=o.height/a.y;if(s){const g=Oe(s),v=n&&Ue(n)?Oe(n):n;let m=g,h=bo(m);for(;h&&n&&v!==m;){const b=Ot(h),w=h.getBoundingClientRect(),x=He(h),y=w.left+(h.clientLeft+parseFloat(x.paddingLeft))*b.x,C=w.top+(h.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,f*=b.y,u*=b.x,p*=b.y,l+=y,f+=C,m=Oe(h),h=bo(m)}}return Br({width:u,height:p,x:l,y:f})}function Wr(e,t){const r=zr(e).scrollLeft;return t?t.left+r:mt(Xe(e)).left+r}function Xa(e,t){const r=e.getBoundingClientRect(),n=r.left+t.scrollLeft-Wr(e,r),o=r.top+t.scrollTop;return{x:n,y:o}}function Qp(e){let{elements:t,rect:r,offsetParent:n,strategy:o}=e;const s=o==="fixed",a=Xe(n),c=t?Hr(t.floating):!1;if(n===a||c&&s)return r;let l={scrollLeft:0,scrollTop:0},f=Ge(1);const u=Ge(0),p=Ye(n);if((p||!p&&!s)&&((It(n)!=="body"||Qt(a))&&(l=zr(n)),Ye(n))){const v=mt(n);f=Ot(n),u.x=v.x+n.clientLeft,u.y=v.y+n.clientTop}const g=a&&!p&&!s?Xa(a,l):Ge(0);return{width:r.width*f.x,height:r.height*f.y,x:r.x*f.x-l.scrollLeft*f.x+u.x+g.x,y:r.y*f.y-l.scrollTop*f.y+u.y+g.y}}function eh(e){return Array.from(e.getClientRects())}function th(e){const t=Xe(e),r=zr(e),n=e.ownerDocument.body,o=_e(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),s=_e(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let a=-r.scrollLeft+Wr(e);const c=-r.scrollTop;return He(n).direction==="rtl"&&(a+=_e(t.clientWidth,n.clientWidth)-o),{width:o,height:s,x:a,y:c}}const Ya=25;function rh(e,t){const r=Oe(e),n=Xe(e),o=r.visualViewport;let s=n.clientWidth,a=n.clientHeight,c=0,l=0;if(o){s=o.width,a=o.height;const u=mo();(!u||u&&t==="fixed")&&(c=o.offsetLeft,l=o.offsetTop)}const f=Wr(n);if(f<=0){const u=n.ownerDocument,p=u.body,g=getComputedStyle(p),v=u.compatMode==="CSS1Compat"&&parseFloat(g.marginLeft)+parseFloat(g.marginRight)||0,m=Math.abs(n.clientWidth-p.clientWidth-v);m<=Ya&&(s-=m)}else f<=Ya&&(s+=f);return{width:s,height:a,x:c,y:l}}const nh=new Set(["absolute","fixed"]);function oh(e,t){const r=mt(e,!0,t==="fixed"),n=r.top+e.clientTop,o=r.left+e.clientLeft,s=Ye(e)?Ot(e):Ge(1),a=e.clientWidth*s.x,c=e.clientHeight*s.y,l=o*s.x,f=n*s.y;return{width:a,height:c,x:l,y:f}}function Ja(e,t,r){let n;if(t==="viewport")n=rh(e,r);else if(t==="document")n=th(Xe(e));else if(Ue(t))n=oh(t,r);else{const o=qa(e);n={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return Br(n)}function Za(e,t){const r=it(e);return r===t||!Ue(r)||_t(r)?!1:He(r).position==="fixed"||Za(r,t)}function sh(e,t){const r=t.get(e);if(r)return r;let n=er(e,[],!1).filter(c=>Ue(c)&&It(c)!=="body"),o=null;const s=He(e).position==="fixed";let a=s?it(e):e;for(;Ue(a)&&!_t(a);){const c=He(a),l=go(a);!l&&c.position==="fixed"&&(o=null),(s?!l&&!o:!l&&c.position==="static"&&!!o&&nh.has(o.position)||Qt(a)&&!l&&Za(e,a))?n=n.filter(u=>u!==a):o=c,a=it(a)}return t.set(e,n),n}function ah(e){let{element:t,boundary:r,rootBoundary:n,strategy:o}=e;const a=[...r==="clippingAncestors"?Hr(t)?[]:sh(t,this._c):[].concat(r),n],c=a[0],l=a.reduce((f,u)=>{const p=Ja(t,u,o);return f.top=_e(p.top,f.top),f.right=at(p.right,f.right),f.bottom=at(p.bottom,f.bottom),f.left=_e(p.left,f.left),f},Ja(t,c,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function ih(e){const{width:t,height:r}=Ga(e);return{width:t,height:r}}function ch(e,t,r){const n=Ye(t),o=Xe(t),s=r==="fixed",a=mt(e,!0,s,t);let c={scrollLeft:0,scrollTop:0};const l=Ge(0);function f(){l.x=Wr(o)}if(n||!n&&!s)if((It(t)!=="body"||Qt(o))&&(c=zr(t)),n){const v=mt(t,!0,s,t);l.x=v.x+t.clientLeft,l.y=v.y+t.clientTop}else o&&f();s&&!n&&o&&f();const u=o&&!n&&!s?Xa(o,c):Ge(0),p=a.left+c.scrollLeft-l.x-u.x,g=a.top+c.scrollTop-l.y-u.y;return{x:p,y:g,width:a.width,height:a.height}}function wo(e){return He(e).position==="static"}function Qa(e,t){if(!Ye(e)||He(e).position==="fixed")return null;if(t)return t(e);let r=e.offsetParent;return Xe(e)===r&&(r=r.ownerDocument.body),r}function ei(e,t){const r=Oe(e);if(Hr(e))return r;if(!Ye(e)){let o=it(e);for(;o&&!_t(o);){if(Ue(o)&&!wo(o))return o;o=it(o)}return r}let n=Qa(e,t);for(;n&&jp(n)&&wo(n);)n=Qa(n,t);return n&&_t(n)&&wo(n)&&!go(n)?r:n||Xp(e)||r}const lh=async function(e){const t=this.getOffsetParent||ei,r=this.getDimensions,n=await r(e.floating);return{reference:ch(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function dh(e){return He(e).direction==="rtl"}const uh={convertOffsetParentRelativeRectToViewportRelativeRect:Qp,getDocumentElement:Xe,getClippingRect:ah,getOffsetParent:ei,getElementRects:lh,getClientRects:eh,getDimensions:ih,getScale:Ot,isElement:Ue,isRTL:dh};function ti(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function fh(e,t){let r=null,n;const o=Xe(e);function s(){var c;clearTimeout(n),(c=r)==null||c.disconnect(),r=null}function a(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),s();const f=e.getBoundingClientRect(),{left:u,top:p,width:g,height:v}=f;if(c||t(),!g||!v)return;const m=Fr(p),h=Fr(o.clientWidth-(u+g)),b=Fr(o.clientHeight-(p+v)),w=Fr(u),y={rootMargin:-m+"px "+-h+"px "+-b+"px "+-w+"px",threshold:_e(0,at(1,l))||1};let C=!0;function N(O){const E=O[0].intersectionRatio;if(E!==l){if(!C)return a();E?a(!1,E):n=setTimeout(()=>{a(!1,1e-7)},1e3)}E===1&&!ti(f,e.getBoundingClientRect())&&a(),C=!1}try{r=new IntersectionObserver(N,{...y,root:o.ownerDocument})}catch{r=new IntersectionObserver(N,y)}r.observe(e)}return a(!0),s}function ph(e,t,r,n){n===void 0&&(n={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,f=vo(e),u=o||s?[...f?er(f):[],...er(t)]:[];u.forEach(w=>{o&&w.addEventListener("scroll",r,{passive:!0}),s&&w.addEventListener("resize",r)});const p=f&&c?fh(f,r):null;let g=-1,v=null;a&&(v=new ResizeObserver(w=>{let[x]=w;x&&x.target===f&&v&&(v.unobserve(t),cancelAnimationFrame(g),g=requestAnimationFrame(()=>{var y;(y=v)==null||y.observe(t)})),r()}),f&&!l&&v.observe(f),v.observe(t));let m,h=l?mt(e):null;l&&b();function b(){const w=mt(e);h&&!ti(h,w)&&r(),h=w,m=requestAnimationFrame(b)}return r(),()=>{var w;u.forEach(x=>{o&&x.removeEventListener("scroll",r),s&&x.removeEventListener("resize",r)}),p==null||p(),(w=v)==null||w.disconnect(),v=null,l&&cancelAnimationFrame(m)}}const hh=Bp,gh=Up,mh=Lp,bh=zp,vh=Fp,ri=Dp,wh=Hp,yh=(e,t,r)=>{const n=new Map,o={platform:uh,...r},s={...o.platform,_c:n};return Mp(e,t,{...o,platform:s})};var xh=typeof document<"u",Sh=function(){},Vr=xh?T.useLayoutEffect:Sh;function jr(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let r,n,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(n=r;n--!==0;)if(!jr(e[n],t[n]))return!1;return!0}if(o=Object.keys(e),r=o.length,r!==Object.keys(t).length)return!1;for(n=r;n--!==0;)if(!{}.hasOwnProperty.call(t,o[n]))return!1;for(n=r;n--!==0;){const s=o[n];if(!(s==="_owner"&&e.$$typeof)&&!jr(e[s],t[s]))return!1}return!0}return e!==e&&t!==t}function ni(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function oi(e,t){const r=ni(e);return Math.round(t*r)/r}function yo(e){const t=d.useRef(e);return Vr(()=>{t.current=e}),t}function Ch(e){e===void 0&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:n=[],platform:o,elements:{reference:s,floating:a}={},transform:c=!0,whileElementsMounted:l,open:f}=e,[u,p]=d.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[g,v]=d.useState(n);jr(g,n)||v(n);const[m,h]=d.useState(null),[b,w]=d.useState(null),x=d.useCallback(L=>{L!==O.current&&(O.current=L,h(L))},[]),y=d.useCallback(L=>{L!==E.current&&(E.current=L,w(L))},[]),C=s||m,N=a||b,O=d.useRef(null),E=d.useRef(null),M=d.useRef(u),F=l!=null,I=yo(l),B=yo(o),R=yo(f),U=d.useCallback(()=>{if(!O.current||!E.current)return;const L={placement:t,strategy:r,middleware:g};B.current&&(L.platform=B.current),yh(O.current,E.current,L).then(A=>{const ee={...A,isPositioned:R.current!==!1};D.current&&!jr(M.current,ee)&&(M.current=ee,gr.flushSync(()=>{p(ee)}))})},[g,t,r,B,R]);Vr(()=>{f===!1&&M.current.isPositioned&&(M.current.isPositioned=!1,p(L=>({...L,isPositioned:!1})))},[f]);const D=d.useRef(!1);Vr(()=>(D.current=!0,()=>{D.current=!1}),[]),Vr(()=>{if(C&&(O.current=C),N&&(E.current=N),C&&N){if(I.current)return I.current(C,N,U);U()}},[C,N,U,I,F]);const z=d.useMemo(()=>({reference:O,floating:E,setReference:x,setFloating:y}),[x,y]),k=d.useMemo(()=>({reference:C,floating:N}),[C,N]),G=d.useMemo(()=>{const L={position:r,left:0,top:0};if(!k.floating)return L;const A=oi(k.floating,u.x),ee=oi(k.floating,u.y);return c?{...L,transform:"translate("+A+"px, "+ee+"px)",...ni(k.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:A,top:ee}},[r,c,k.floating,u.x,u.y]);return d.useMemo(()=>({...u,update:U,refs:z,elements:k,floatingStyles:G}),[u,U,z,k,G])}const Eh=e=>{function t(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:n,padding:o}=typeof e=="function"?e(r):e;return n&&t(n)?n.current!=null?ri({element:n.current,padding:o}).fn(r):{}:n?ri({element:n,padding:o}).fn(r):{}}}},Nh=(e,t)=>({...hh(e),options:[e,t]}),Th=(e,t)=>({...gh(e),options:[e,t]}),Ah=(e,t)=>({...wh(e),options:[e,t]}),Ph=(e,t)=>({...mh(e),options:[e,t]}),Ih=(e,t)=>({...bh(e),options:[e,t]}),_h=(e,t)=>({...vh(e),options:[e,t]}),Oh=(e,t)=>({...Eh(e),options:[e,t]});var kh="Arrow",si=d.forwardRef((e,t)=>{const{children:r,width:n=10,height:o=5,...s}=e;return i.jsx(te.svg,{...s,ref:t,width:n,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?r:i.jsx("polygon",{points:"0,0 30,0 15,10"})})});si.displayName=kh;var Mh=si;function ai(e){const[t,r]=d.useState(void 0);return ve(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const n=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const s=o[0];let a,c;if("borderBoxSize"in s){const l=s.borderBoxSize,f=Array.isArray(l)?l[0]:l;a=f.inlineSize,c=f.blockSize}else a=e.offsetWidth,c=e.offsetHeight;r({width:a,height:c})});return n.observe(e,{box:"border-box"}),()=>n.unobserve(e)}else r(void 0)},[e]),t}var xo="Popper",[ii,kt]=$e(xo),[Dh,ci]=ii(xo),li=e=>{const{__scopePopper:t,children:r}=e,[n,o]=d.useState(null);return i.jsx(Dh,{scope:t,anchor:n,onAnchorChange:o,children:r})};li.displayName=xo;var di="PopperAnchor",ui=d.forwardRef((e,t)=>{const{__scopePopper:r,virtualRef:n,...o}=e,s=ci(di,r),a=d.useRef(null),c=ae(t,a),l=d.useRef(null);return d.useEffect(()=>{const f=l.current;l.current=(n==null?void 0:n.current)||a.current,f!==l.current&&s.onAnchorChange(l.current)}),n?null:i.jsx(te.div,{...o,ref:c})});ui.displayName=di;var So="PopperContent",[Lh,Fh]=ii(So),fi=d.forwardRef((e,t)=>{var W,V,ce,K,Y,ne;const{__scopePopper:r,side:n="bottom",sideOffset:o=0,align:s="center",alignOffset:a=0,arrowPadding:c=0,avoidCollisions:l=!0,collisionBoundary:f=[],collisionPadding:u=0,sticky:p="partial",hideWhenDetached:g=!1,updatePositionStrategy:v="optimized",onPlaced:m,...h}=e,b=ci(So,r),[w,x]=d.useState(null),y=ae(t,me=>x(me)),[C,N]=d.useState(null),O=ai(C),E=(O==null?void 0:O.width)??0,M=(O==null?void 0:O.height)??0,F=n+(s!=="center"?"-"+s:""),I=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},B=Array.isArray(f)?f:[f],R=B.length>0,U={padding:I,boundary:B.filter(Bh),altBoundary:R},{refs:D,floatingStyles:z,placement:k,isPositioned:G,middlewareData:L}=Ch({strategy:"fixed",placement:F,whileElementsMounted:(...me)=>ph(...me,{animationFrame:v==="always"}),elements:{reference:b.anchor},middleware:[Nh({mainAxis:o+M,alignmentAxis:a}),l&&Th({mainAxis:!0,crossAxis:!1,limiter:p==="partial"?Ah():void 0,...U}),l&&Ph({...U}),Ih({...U,apply:({elements:me,rects:pe,availableWidth:Q,availableHeight:J})=>{const{width:ge,height:ke}=pe.reference,Ce=me.floating.style;Ce.setProperty("--radix-popper-available-width",`${Q}px`),Ce.setProperty("--radix-popper-available-height",`${J}px`),Ce.setProperty("--radix-popper-anchor-width",`${ge}px`),Ce.setProperty("--radix-popper-anchor-height",`${ke}px`)}}),C&&Oh({element:C,padding:c}),Uh({arrowWidth:E,arrowHeight:M}),g&&_h({strategy:"referenceHidden",...U})]}),[A,ee]=gi(k),q=we(m);ve(()=>{G&&(q==null||q())},[G,q]);const ie=(W=L.arrow)==null?void 0:W.x,$=(V=L.arrow)==null?void 0:V.y,j=((ce=L.arrow)==null?void 0:ce.centerOffset)!==0,[le,he]=d.useState();return ve(()=>{w&&he(window.getComputedStyle(w).zIndex)},[w]),i.jsx("div",{ref:D.setFloating,"data-radix-popper-content-wrapper":"",style:{...z,transform:G?z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:le,"--radix-popper-transform-origin":[(K=L.transformOrigin)==null?void 0:K.x,(Y=L.transformOrigin)==null?void 0:Y.y].join(" "),...((ne=L.hide)==null?void 0:ne.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:i.jsx(Lh,{scope:r,placedSide:A,onArrowChange:N,arrowX:ie,arrowY:$,shouldHideArrow:j,children:i.jsx(te.div,{"data-side":A,"data-align":ee,...h,ref:y,style:{...h.style,animation:G?void 0:"none"}})})})});fi.displayName=So;var pi="PopperArrow",$h={top:"bottom",right:"left",bottom:"top",left:"right"},hi=d.forwardRef(function(t,r){const{__scopePopper:n,...o}=t,s=Fh(pi,n),a=$h[s.placedSide];return i.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:i.jsx(Mh,{...o,ref:r,style:{...o.style,display:"block"}})})});hi.displayName=pi;function Bh(e){return e!==null}var Uh=e=>({name:"transformOrigin",options:e,fn(t){var b,w,x;const{placement:r,rects:n,middlewareData:o}=t,a=((b=o.arrow)==null?void 0:b.centerOffset)!==0,c=a?0:e.arrowWidth,l=a?0:e.arrowHeight,[f,u]=gi(r),p={start:"0%",center:"50%",end:"100%"}[u],g=(((w=o.arrow)==null?void 0:w.x)??0)+c/2,v=(((x=o.arrow)==null?void 0:x.y)??0)+l/2;let m="",h="";return f==="bottom"?(m=a?p:`${g}px`,h=`${-l}px`):f==="top"?(m=a?p:`${g}px`,h=`${n.floating.height+l}px`):f==="right"?(m=`${-l}px`,h=a?p:`${v}px`):f==="left"&&(m=`${n.floating.width+l}px`,h=a?p:`${v}px`),{data:{x:m,y:h}}}});function gi(e){const[t,r="center"]=e.split("-");return[t,r]}var Co=li,Eo=ui,No=fi,To=hi,Hh="Portal",Kr=d.forwardRef((e,t)=>{var c;const{container:r,...n}=e,[o,s]=d.useState(!1);ve(()=>s(!0),[]);const a=r||o&&((c=globalThis==null?void 0:globalThis.document)==null?void 0:c.body);return a?vs.createPortal(i.jsx(te.div,{...n,ref:t}),a):null});Kr.displayName=Hh;var Ao="rovingFocusGroup.onEntryFocus",zh={bubbles:!1,cancelable:!0},tr="RovingFocusGroup",[Po,mi,Wh]=no(tr),[Vh,bi]=$e(tr,[Wh]),[jh,Kh]=Vh(tr),vi=d.forwardRef((e,t)=>i.jsx(Po.Provider,{scope:e.__scopeRovingFocusGroup,children:i.jsx(Po.Slot,{scope:e.__scopeRovingFocusGroup,children:i.jsx(Rh,{...e,ref:t})})}));vi.displayName=tr;var Rh=d.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,orientation:n,loop:o=!1,dir:s,currentTabStopId:a,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:f,preventScrollOnEntryFocus:u=!1,...p}=e,g=d.useRef(null),v=ae(t,g),m=Mr(s),[h,b]=ot({prop:a,defaultProp:c??null,onChange:l,caller:tr}),[w,x]=d.useState(!1),y=we(f),C=mi(r),N=d.useRef(!1),[O,E]=d.useState(0);return d.useEffect(()=>{const M=g.current;if(M)return M.addEventListener(Ao,y),()=>M.removeEventListener(Ao,y)},[y]),i.jsx(jh,{scope:r,orientation:n,dir:m,loop:o,currentTabStopId:h,onItemFocus:d.useCallback(M=>b(M),[b]),onItemShiftTab:d.useCallback(()=>x(!0),[]),onFocusableItemAdd:d.useCallback(()=>E(M=>M+1),[]),onFocusableItemRemove:d.useCallback(()=>E(M=>M-1),[]),children:i.jsx(te.div,{tabIndex:w||O===0?-1:0,"data-orientation":n,...p,ref:v,style:{outline:"none",...e.style},onMouseDown:H(e.onMouseDown,()=>{N.current=!0}),onFocus:H(e.onFocus,M=>{const F=!N.current;if(M.target===M.currentTarget&&F&&!w){const I=new CustomEvent(Ao,zh);if(M.currentTarget.dispatchEvent(I),!I.defaultPrevented){const B=C().filter(k=>k.focusable),R=B.find(k=>k.active),U=B.find(k=>k.id===h),z=[R,U,...B].filter(Boolean).map(k=>k.ref.current);xi(z,u)}}N.current=!1}),onBlur:H(e.onBlur,()=>x(!1))})})}),wi="RovingFocusGroupItem",yi=d.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,focusable:n=!0,active:o=!1,tabStopId:s,children:a,...c}=e,l=Be(),f=s||l,u=Kh(wi,r),p=u.currentTabStopId===f,g=mi(r),{onFocusableItemAdd:v,onFocusableItemRemove:m,currentTabStopId:h}=u;return d.useEffect(()=>{if(n)return v(),()=>m()},[n,v,m]),i.jsx(Po.ItemSlot,{scope:r,id:f,focusable:n,active:o,children:i.jsx(te.span,{tabIndex:p?0:-1,"data-orientation":u.orientation,...c,ref:t,onMouseDown:H(e.onMouseDown,b=>{n?u.onItemFocus(f):b.preventDefault()}),onFocus:H(e.onFocus,()=>u.onItemFocus(f)),onKeyDown:H(e.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){u.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const w=Xh(b,u.orientation,u.dir);if(w!==void 0){if(b.metaKey||b.ctrlKey||b.altKey||b.shiftKey)return;b.preventDefault();let y=g().filter(C=>C.focusable).map(C=>C.ref.current);if(w==="last")y.reverse();else if(w==="prev"||w==="next"){w==="prev"&&y.reverse();const C=y.indexOf(b.currentTarget);y=u.loop?Yh(y,C+1):y.slice(C+1)}setTimeout(()=>xi(y))}}),children:typeof a=="function"?a({isCurrentTabStop:p,hasTabStop:h!=null}):a})})});yi.displayName=wi;var Gh={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function qh(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function Xh(e,t,r){const n=qh(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(n))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(n)))return Gh[n]}function xi(e,t=!1){const r=document.activeElement;for(const n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}function Yh(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var Jh=vi,Zh=yi,Qh=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Mt=new WeakMap,Rr=new WeakMap,Gr={},Io=0,Si=function(e){return e&&(e.host||Si(e.parentNode))},eg=function(e,t){return t.map(function(r){if(e.contains(r))return r;var n=Si(r);return n&&e.contains(n)?n:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},tg=function(e,t,r,n){var o=eg(t,Array.isArray(e)?e:[e]);Gr[r]||(Gr[r]=new WeakMap);var s=Gr[r],a=[],c=new Set,l=new Set(o),f=function(p){!p||c.has(p)||(c.add(p),f(p.parentNode))};o.forEach(f);var u=function(p){!p||l.has(p)||Array.prototype.forEach.call(p.children,function(g){if(c.has(g))u(g);else try{var v=g.getAttribute(n),m=v!==null&&v!=="false",h=(Mt.get(g)||0)+1,b=(s.get(g)||0)+1;Mt.set(g,h),s.set(g,b),a.push(g),h===1&&m&&Rr.set(g,!0),b===1&&g.setAttribute(r,"true"),m||g.setAttribute(n,"true")}catch(w){console.error("aria-hidden: cannot operate on ",g,w)}})};return u(t),c.clear(),Io++,function(){a.forEach(function(p){var g=Mt.get(p)-1,v=s.get(p)-1;Mt.set(p,g),s.set(p,v),g||(Rr.has(p)||p.removeAttribute(n),Rr.delete(p)),v||p.removeAttribute(r)}),Io--,Io||(Mt=new WeakMap,Mt=new WeakMap,Rr=new WeakMap,Gr={})}},_o=function(e,t,r){r===void 0&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),o=Qh(e);return o?(n.push.apply(n,Array.from(o.querySelectorAll("[aria-live], script"))),tg(n,o,r,"aria-hidden")):function(){return null}},Je=function(){return Je=Object.assign||function(t){for(var r,n=1,o=arguments.length;n<o;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},Je.apply(this,arguments)};function Ci(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]]);return r}function rg(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,s;n<o;n++)(s||!(n in t))&&(s||(s=Array.prototype.slice.call(t,0,n)),s[n]=t[n]);return e.concat(s||Array.prototype.slice.call(t))}typeof SuppressedError=="function"&&SuppressedError;var qr="right-scroll-bar-position",Xr="width-before-scroll-bar",ng="with-scroll-bars-hidden",og="--removed-body-scroll-bar-size";function Oo(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function sg(e,t){var r=T.useState(function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(n){var o=r.value;o!==n&&(r.value=n,r.callback(n,o))}}}})[0];return r.callback=t,r.facade}var ag=typeof window<"u"?d.useLayoutEffect:d.useEffect,Ei=new WeakMap;function ig(e,t){var r=sg(null,function(n){return e.forEach(function(o){return Oo(o,n)})});return ag(function(){var n=Ei.get(r);if(n){var o=new Set(n),s=new Set(e),a=r.current;o.forEach(function(c){s.has(c)||Oo(c,null)}),s.forEach(function(c){o.has(c)||Oo(c,a)})}Ei.set(r,e)},[e]),r}function cg(e){return e}function lg(e,t){t===void 0&&(t=cg);var r=[],n=!1,o={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(s){var a=t(s,n);return r.push(a),function(){r=r.filter(function(c){return c!==a})}},assignSyncMedium:function(s){for(n=!0;r.length;){var a=r;r=[],a.forEach(s)}r={push:function(c){return s(c)},filter:function(){return r}}},assignMedium:function(s){n=!0;var a=[];if(r.length){var c=r;r=[],c.forEach(s),a=r}var l=function(){var u=a;a=[],u.forEach(s)},f=function(){return Promise.resolve().then(l)};f(),r={push:function(u){a.push(u),f()},filter:function(u){return a=a.filter(u),r}}}};return o}function dg(e){e===void 0&&(e={});var t=lg(null);return t.options=Je({async:!0,ssr:!1},e),t}var Ni=function(e){var t=e.sideCar,r=Ci(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw new Error("Sidecar medium not found");return d.createElement(n,Je({},r))};Ni.isSideCarExport=!0;function ug(e,t){return e.useMedium(t),Ni}var Ti=dg(),ko=function(){},Yr=d.forwardRef(function(e,t){var r=d.useRef(null),n=d.useState({onScrollCapture:ko,onWheelCapture:ko,onTouchMoveCapture:ko}),o=n[0],s=n[1],a=e.forwardProps,c=e.children,l=e.className,f=e.removeScrollBar,u=e.enabled,p=e.shards,g=e.sideCar,v=e.noRelative,m=e.noIsolation,h=e.inert,b=e.allowPinchZoom,w=e.as,x=w===void 0?"div":w,y=e.gapMode,C=Ci(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),N=g,O=ig([r,t]),E=Je(Je({},C),o);return d.createElement(d.Fragment,null,u&&d.createElement(N,{sideCar:Ti,removeScrollBar:f,shards:p,noRelative:v,noIsolation:m,inert:h,setCallbacks:s,allowPinchZoom:!!b,lockRef:r,gapMode:y}),a?d.cloneElement(d.Children.only(c),Je(Je({},E),{ref:O})):d.createElement(x,Je({},E,{className:l,ref:O}),c))});Yr.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Yr.classNames={fullWidth:Xr,zeroRight:qr};var fg=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function pg(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=fg();return t&&e.setAttribute("nonce",t),e}function hg(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function gg(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var mg=function(){var e=0,t=null;return{add:function(r){e==0&&(t=pg())&&(hg(t,r),gg(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},bg=function(){var e=mg();return function(t,r){d.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},Ai=function(){var e=bg(),t=function(r){var n=r.styles,o=r.dynamic;return e(n,o),null};return t},vg={left:0,top:0,right:0,gap:0},Mo=function(e){return parseInt(e||"",10)||0},wg=function(e){var t=window.getComputedStyle(document.body),r=t[e==="padding"?"paddingLeft":"marginLeft"],n=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Mo(r),Mo(n),Mo(o)]},yg=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return vg;var t=wg(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},xg=Ai(),Dt="data-scroll-locked",Sg=function(e,t,r,n){var o=e.left,s=e.top,a=e.right,c=e.gap;return r===void 0&&(r="margin"),`
19
+ .`.concat(ng,` {
20
20
  overflow: hidden `).concat(n,`;
21
21
  padding-right: `).concat(c,"px ").concat(n,`;
22
22
  }
@@ -33,30 +33,30 @@
33
33
  `),r==="padding"&&"padding-right: ".concat(c,"px ").concat(n,";")].filter(Boolean).join(""),`
34
34
  }
35
35
 
36
- .`).concat(Gr,` {
36
+ .`).concat(qr,` {
37
37
  right: `).concat(c,"px ").concat(n,`;
38
38
  }
39
39
 
40
- .`).concat(qr,` {
40
+ .`).concat(Xr,` {
41
41
  margin-right: `).concat(c,"px ").concat(n,`;
42
42
  }
43
43
 
44
- .`).concat(Gr," .").concat(Gr,` {
44
+ .`).concat(qr," .").concat(qr,` {
45
45
  right: 0 `).concat(n,`;
46
46
  }
47
47
 
48
- .`).concat(qr," .").concat(qr,` {
48
+ .`).concat(Xr," .").concat(Xr,` {
49
49
  margin-right: 0 `).concat(n,`;
50
50
  }
51
51
 
52
52
  body[`).concat(Dt,`] {
53
- `).concat(rg,": ").concat(c,`px;
53
+ `).concat(og,": ").concat(c,`px;
54
54
  }
55
- `)},Ti=function(){var e=parseInt(document.body.getAttribute(Dt)||"0",10);return isFinite(e)?e:0},xg=function(){d.useEffect(function(){return document.body.setAttribute(Dt,(Ti()+1).toString()),function(){var e=Ti()-1;e<=0?document.body.removeAttribute(Dt):document.body.setAttribute(Dt,e.toString())}},[])},Sg=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,o=n===void 0?"margin":n;xg();var s=d.useMemo(function(){return vg(o)},[o]);return d.createElement(wg,{styles:yg(s,!t,o,r?"":"!important")})},Mo=!1;if(typeof window<"u")try{var Yr=Object.defineProperty({},"passive",{get:function(){return Mo=!0,!0}});window.addEventListener("test",Yr,Yr),window.removeEventListener("test",Yr,Yr)}catch{Mo=!1}var Lt=Mo?{passive:!1}:!1,Cg=function(e){return e.tagName==="TEXTAREA"},Ai=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!Cg(e)&&r[t]==="visible")},Eg=function(e){return Ai(e,"overflowY")},Ng=function(e){return Ai(e,"overflowX")},Pi=function(e,t){var r=t.ownerDocument,n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var o=Ii(e,n);if(o){var s=_i(e,n),a=s[1],c=s[2];if(a>c)return!0}n=n.parentNode}while(n&&n!==r.body);return!1},Tg=function(e){var t=e.scrollTop,r=e.scrollHeight,n=e.clientHeight;return[t,r,n]},Ag=function(e){var t=e.scrollLeft,r=e.scrollWidth,n=e.clientWidth;return[t,r,n]},Ii=function(e,t){return e==="v"?Eg(t):Ng(t)},_i=function(e,t){return e==="v"?Tg(t):Ag(t)},Pg=function(e,t){return e==="h"&&t==="rtl"?-1:1},Ig=function(e,t,r,n,o){var s=Pg(e,window.getComputedStyle(t).direction),a=s*n,c=r.target,l=t.contains(c),f=!1,u=a>0,p=0,g=0;do{if(!c)break;var v=_i(e,c),m=v[0],h=v[1],b=v[2],w=h-b-s*m;(m||w)&&Ii(e,c)&&(p+=w,g+=m);var x=c.parentNode;c=x&&x.nodeType===Node.DOCUMENT_FRAGMENT_NODE?x.host:x}while(!l&&c!==document.body||l&&(t.contains(c)||t===c));return(u&&Math.abs(p)<1||!u&&Math.abs(g)<1)&&(f=!0),f},Jr=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Oi=function(e){return[e.deltaX,e.deltaY]},ki=function(e){return e&&"current"in e?e.current:e},_g=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Og=function(e){return`
55
+ `)},Pi=function(){var e=parseInt(document.body.getAttribute(Dt)||"0",10);return isFinite(e)?e:0},Cg=function(){d.useEffect(function(){return document.body.setAttribute(Dt,(Pi()+1).toString()),function(){var e=Pi()-1;e<=0?document.body.removeAttribute(Dt):document.body.setAttribute(Dt,e.toString())}},[])},Eg=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,o=n===void 0?"margin":n;Cg();var s=d.useMemo(function(){return yg(o)},[o]);return d.createElement(xg,{styles:Sg(s,!t,o,r?"":"!important")})},Do=!1;if(typeof window<"u")try{var Jr=Object.defineProperty({},"passive",{get:function(){return Do=!0,!0}});window.addEventListener("test",Jr,Jr),window.removeEventListener("test",Jr,Jr)}catch{Do=!1}var Lt=Do?{passive:!1}:!1,Ng=function(e){return e.tagName==="TEXTAREA"},Ii=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!Ng(e)&&r[t]==="visible")},Tg=function(e){return Ii(e,"overflowY")},Ag=function(e){return Ii(e,"overflowX")},_i=function(e,t){var r=t.ownerDocument,n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var o=Oi(e,n);if(o){var s=ki(e,n),a=s[1],c=s[2];if(a>c)return!0}n=n.parentNode}while(n&&n!==r.body);return!1},Pg=function(e){var t=e.scrollTop,r=e.scrollHeight,n=e.clientHeight;return[t,r,n]},Ig=function(e){var t=e.scrollLeft,r=e.scrollWidth,n=e.clientWidth;return[t,r,n]},Oi=function(e,t){return e==="v"?Tg(t):Ag(t)},ki=function(e,t){return e==="v"?Pg(t):Ig(t)},_g=function(e,t){return e==="h"&&t==="rtl"?-1:1},Og=function(e,t,r,n,o){var s=_g(e,window.getComputedStyle(t).direction),a=s*n,c=r.target,l=t.contains(c),f=!1,u=a>0,p=0,g=0;do{if(!c)break;var v=ki(e,c),m=v[0],h=v[1],b=v[2],w=h-b-s*m;(m||w)&&Oi(e,c)&&(p+=w,g+=m);var x=c.parentNode;c=x&&x.nodeType===Node.DOCUMENT_FRAGMENT_NODE?x.host:x}while(!l&&c!==document.body||l&&(t.contains(c)||t===c));return(u&&Math.abs(p)<1||!u&&Math.abs(g)<1)&&(f=!0),f},Zr=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Mi=function(e){return[e.deltaX,e.deltaY]},Di=function(e){return e&&"current"in e?e.current:e},kg=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Mg=function(e){return`
56
56
  .block-interactivity-`.concat(e,` {pointer-events: none;}
57
57
  .allow-interactivity-`).concat(e,` {pointer-events: all;}
58
- `)},kg=0,Ft=[];function Mg(e){var t=d.useRef([]),r=d.useRef([0,0]),n=d.useRef(),o=d.useState(kg++)[0],s=d.useState(Ni)[0],a=d.useRef(e);d.useEffect(function(){a.current=e},[e]),d.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var h=eg([e.lockRef.current],(e.shards||[]).map(ki),!0).filter(Boolean);return h.forEach(function(b){return b.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),h.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var c=d.useCallback(function(h,b){if("touches"in h&&h.touches.length===2||h.type==="wheel"&&h.ctrlKey)return!a.current.allowPinchZoom;var w=Jr(h),x=r.current,y="deltaX"in h?h.deltaX:x[0]-w[0],C="deltaY"in h?h.deltaY:x[1]-w[1],N,O=h.target,E=Math.abs(y)>Math.abs(C)?"h":"v";if("touches"in h&&E==="h"&&O.type==="range")return!1;var M=Pi(E,O);if(!M)return!0;if(M?N=E:(N=E==="v"?"h":"v",M=Pi(E,O)),!M)return!1;if(!n.current&&"changedTouches"in h&&(y||C)&&(n.current=N),!N)return!0;var F=n.current||N;return Ig(F,b,h,F==="h"?y:C)},[]),l=d.useCallback(function(h){var b=h;if(!(!Ft.length||Ft[Ft.length-1]!==s)){var w="deltaY"in b?Oi(b):Jr(b),x=t.current.filter(function(N){return N.name===b.type&&(N.target===b.target||b.target===N.shadowParent)&&_g(N.delta,w)})[0];if(x&&x.should){b.cancelable&&b.preventDefault();return}if(!x){var y=(a.current.shards||[]).map(ki).filter(Boolean).filter(function(N){return N.contains(b.target)}),C=y.length>0?c(b,y[0]):!a.current.noIsolation;C&&b.cancelable&&b.preventDefault()}}},[]),f=d.useCallback(function(h,b,w,x){var y={name:h,delta:b,target:w,should:x,shadowParent:Dg(w)};t.current.push(y),setTimeout(function(){t.current=t.current.filter(function(C){return C!==y})},1)},[]),u=d.useCallback(function(h){r.current=Jr(h),n.current=void 0},[]),p=d.useCallback(function(h){f(h.type,Oi(h),h.target,c(h,e.lockRef.current))},[]),g=d.useCallback(function(h){f(h.type,Jr(h),h.target,c(h,e.lockRef.current))},[]);d.useEffect(function(){return Ft.push(s),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:g}),document.addEventListener("wheel",l,Lt),document.addEventListener("touchmove",l,Lt),document.addEventListener("touchstart",u,Lt),function(){Ft=Ft.filter(function(h){return h!==s}),document.removeEventListener("wheel",l,Lt),document.removeEventListener("touchmove",l,Lt),document.removeEventListener("touchstart",u,Lt)}},[]);var v=e.removeScrollBar,m=e.inert;return d.createElement(d.Fragment,null,m?d.createElement(s,{styles:Og(o)}):null,v?d.createElement(Sg,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Dg(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const Lg=lg(Ei,Mg);var Zr=d.forwardRef(function(e,t){return d.createElement(Xr,Je({},e,{ref:t,sideCar:Lg}))});Zr.classNames=Xr.classNames;var Do=["Enter"," "],Fg=["ArrowDown","PageUp","Home"],Mi=["ArrowUp","PageDown","End"],$g=[...Fg,...Mi],Bg={ltr:[...Do,"ArrowRight"],rtl:[...Do,"ArrowLeft"]},Ug={ltr:["ArrowLeft"],rtl:["ArrowRight"]},er="Menu",[tr,Hg,zg]=ro(er),[mt,Di]=Fe(er,[zg,kt,gi]),Qr=kt(),Li=gi(),[Wg,bt]=mt(er),[Vg,rr]=mt(er),Fi=e=>{const{__scopeMenu:t,open:r=!1,children:n,dir:o,onOpenChange:s,modal:a=!0}=e,c=Qr(t),[l,f]=d.useState(null),u=d.useRef(!1),p=ve(s),g=kr(o);return d.useEffect(()=>{const v=()=>{u.current=!0,document.addEventListener("pointerdown",m,{capture:!0,once:!0}),document.addEventListener("pointermove",m,{capture:!0,once:!0})},m=()=>u.current=!1;return document.addEventListener("keydown",v,{capture:!0}),()=>{document.removeEventListener("keydown",v,{capture:!0}),document.removeEventListener("pointerdown",m,{capture:!0}),document.removeEventListener("pointermove",m,{capture:!0})}},[]),i.jsx(So,{...c,children:i.jsx(Wg,{scope:t,open:r,onOpenChange:p,content:l,onContentChange:f,children:i.jsx(Vg,{scope:t,onClose:d.useCallback(()=>p(!1),[p]),isUsingKeyboardRef:u,dir:g,modal:a,children:n})})})};Fi.displayName=er;var jg="MenuAnchor",Lo=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e,o=Qr(r);return i.jsx(Co,{...o,...n,ref:t})});Lo.displayName=jg;var Fo="MenuPortal",[Kg,$i]=mt(Fo,{forceMount:void 0}),Bi=e=>{const{__scopeMenu:t,forceMount:r,children:n,container:o}=e,s=bt(Fo,t);return i.jsx(Kg,{scope:t,forceMount:r,children:i.jsx(Te,{present:r||s.open,children:i.jsx(jr,{asChild:!0,container:o,children:n})})})};Bi.displayName=Fo;var ke="MenuContent",[Rg,$o]=mt(ke),Ui=d.forwardRef((e,t)=>{const r=$i(ke,e.__scopeMenu),{forceMount:n=r.forceMount,...o}=e,s=bt(ke,e.__scopeMenu),a=rr(ke,e.__scopeMenu);return i.jsx(tr.Provider,{scope:e.__scopeMenu,children:i.jsx(Te,{present:n||s.open,children:i.jsx(tr.Slot,{scope:e.__scopeMenu,children:a.modal?i.jsx(Gg,{...o,ref:t}):i.jsx(qg,{...o,ref:t})})})})}),Gg=d.forwardRef((e,t)=>{const r=bt(ke,e.__scopeMenu),n=d.useRef(null),o=ie(t,n);return d.useEffect(()=>{const s=n.current;if(s)return Io(s)},[]),i.jsx(Bo,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:H(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})}),qg=d.forwardRef((e,t)=>{const r=bt(ke,e.__scopeMenu);return i.jsx(Bo,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>r.onOpenChange(!1)})}),Xg=Ie.createSlot("MenuContent.ScrollLock"),Bo=d.forwardRef((e,t)=>{const{__scopeMenu:r,loop:n=!1,trapFocus:o,onOpenAutoFocus:s,onCloseAutoFocus:a,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:f,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:g,onDismiss:v,disableOutsideScroll:m,...h}=e,b=bt(ke,r),w=rr(ke,r),x=Qr(r),y=Li(r),C=Hg(r),[N,O]=d.useState(null),E=d.useRef(null),M=ie(t,E,b.onContentChange),F=d.useRef(0),I=d.useRef(""),B=d.useRef(0),R=d.useRef(null),U=d.useRef("right"),D=d.useRef(0),z=m?Zr:d.Fragment,k=m?{as:Xg,allowPinchZoom:!0}:void 0,G=A=>{var W,V;const ee=I.current+A,q=C().filter(se=>!se.disabled),ce=document.activeElement,$=(W=q.find(se=>se.ref.current===ce))==null?void 0:W.textValue,K=q.map(se=>se.textValue),le=im(K,ee,$),pe=(V=q.find(se=>se.textValue===le))==null?void 0:V.ref.current;(function se(j){I.current=j,window.clearTimeout(F.current),j!==""&&(F.current=window.setTimeout(()=>se(""),1e3))})(ee),pe&&setTimeout(()=>pe.focus())};d.useEffect(()=>()=>window.clearTimeout(F.current),[]),so();const L=d.useCallback(A=>{var q,ce;return U.current===((q=R.current)==null?void 0:q.side)&&lm(A,(ce=R.current)==null?void 0:ce.area)},[]);return i.jsx(Rg,{scope:r,searchRef:I,onItemEnter:d.useCallback(A=>{L(A)&&A.preventDefault()},[L]),onItemLeave:d.useCallback(A=>{var ee;L(A)||((ee=E.current)==null||ee.focus(),O(null))},[L]),onTriggerLeave:d.useCallback(A=>{L(A)&&A.preventDefault()},[L]),pointerGraceTimerRef:B,onPointerGraceIntentChange:d.useCallback(A=>{R.current=A},[]),children:i.jsx(z,{...k,children:i.jsx(Mr,{asChild:!0,trapped:o,onMountAutoFocus:H(s,A=>{var ee;A.preventDefault(),(ee=E.current)==null||ee.focus({preventScroll:!0})}),onUnmountAutoFocus:a,children:i.jsx(Xt,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:f,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:g,onDismiss:v,children:i.jsx(Xh,{asChild:!0,...y,dir:w.dir,orientation:"vertical",loop:n,currentTabStopId:N,onCurrentTabStopIdChange:O,onEntryFocus:H(l,A=>{w.isUsingKeyboardRef.current||A.preventDefault()}),preventScrollOnEntryFocus:!0,children:i.jsx(Eo,{role:"menu","aria-orientation":"vertical","data-state":rc(b.open),"data-radix-menu-content":"",dir:w.dir,...x,...h,ref:M,style:{outline:"none",...h.style},onKeyDown:H(h.onKeyDown,A=>{const q=A.target.closest("[data-radix-menu-content]")===A.currentTarget,ce=A.ctrlKey||A.altKey||A.metaKey,$=A.key.length===1;q&&(A.key==="Tab"&&A.preventDefault(),!ce&&$&&G(A.key));const K=E.current;if(A.target!==K||!$g.includes(A.key))return;A.preventDefault();const pe=C().filter(W=>!W.disabled).map(W=>W.ref.current);Mi.includes(A.key)&&pe.reverse(),sm(pe)}),onBlur:H(e.onBlur,A=>{A.currentTarget.contains(A.target)||(window.clearTimeout(F.current),I.current="")}),onPointerMove:H(e.onPointerMove,or(A=>{const ee=A.target,q=D.current!==A.clientX;if(A.currentTarget.contains(ee)&&q){const ce=A.clientX>D.current?"right":"left";U.current=ce,D.current=A.clientX}}))})})})})})})});Ui.displayName=ke;var Yg="MenuGroup",Uo=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{role:"group",...n,ref:t})});Uo.displayName=Yg;var Jg="MenuLabel",Hi=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{...n,ref:t})});Hi.displayName=Jg;var en="MenuItem",zi="menu.itemSelect",tn=d.forwardRef((e,t)=>{const{disabled:r=!1,onSelect:n,...o}=e,s=d.useRef(null),a=rr(en,e.__scopeMenu),c=$o(en,e.__scopeMenu),l=ie(t,s),f=d.useRef(!1),u=()=>{const p=s.current;if(!r&&p){const g=new CustomEvent(zi,{bubbles:!0,cancelable:!0});p.addEventListener(zi,v=>n==null?void 0:n(v),{once:!0}),ma(p,g),g.defaultPrevented?f.current=!1:a.onClose()}};return i.jsx(Wi,{...o,ref:l,disabled:r,onClick:H(e.onClick,u),onPointerDown:p=>{var g;(g=e.onPointerDown)==null||g.call(e,p),f.current=!0},onPointerUp:H(e.onPointerUp,p=>{var g;f.current||(g=p.currentTarget)==null||g.click()}),onKeyDown:H(e.onKeyDown,p=>{const g=c.searchRef.current!=="";r||g&&p.key===" "||Do.includes(p.key)&&(p.currentTarget.click(),p.preventDefault())})})});tn.displayName=en;var Wi=d.forwardRef((e,t)=>{const{__scopeMenu:r,disabled:n=!1,textValue:o,...s}=e,a=$o(en,r),c=Li(r),l=d.useRef(null),f=ie(t,l),[u,p]=d.useState(!1),[g,v]=d.useState("");return d.useEffect(()=>{const m=l.current;m&&v((m.textContent??"").trim())},[s.children]),i.jsx(tr.ItemSlot,{scope:r,disabled:n,textValue:o??g,children:i.jsx(Yh,{asChild:!0,...c,focusable:!n,children:i.jsx(te.div,{role:"menuitem","data-highlighted":u?"":void 0,"aria-disabled":n||void 0,"data-disabled":n?"":void 0,...s,ref:f,onPointerMove:H(e.onPointerMove,or(m=>{n?a.onItemLeave(m):(a.onItemEnter(m),m.defaultPrevented||m.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:H(e.onPointerLeave,or(m=>a.onItemLeave(m))),onFocus:H(e.onFocus,()=>p(!0)),onBlur:H(e.onBlur,()=>p(!1))})})})}),Zg="MenuCheckboxItem",Vi=d.forwardRef((e,t)=>{const{checked:r=!1,onCheckedChange:n,...o}=e;return i.jsx(qi,{scope:e.__scopeMenu,checked:r,children:i.jsx(tn,{role:"menuitemcheckbox","aria-checked":rn(r)?"mixed":r,...o,ref:t,"data-state":zo(r),onSelect:H(o.onSelect,()=>n==null?void 0:n(rn(r)?!0:!r),{checkForDefaultPrevented:!1})})})});Vi.displayName=Zg;var ji="MenuRadioGroup",[Qg,em]=mt(ji,{value:void 0,onValueChange:()=>{}}),Ki=d.forwardRef((e,t)=>{const{value:r,onValueChange:n,...o}=e,s=ve(n);return i.jsx(Qg,{scope:e.__scopeMenu,value:r,onValueChange:s,children:i.jsx(Uo,{...o,ref:t})})});Ki.displayName=ji;var Ri="MenuRadioItem",Gi=d.forwardRef((e,t)=>{const{value:r,...n}=e,o=em(Ri,e.__scopeMenu),s=r===o.value;return i.jsx(qi,{scope:e.__scopeMenu,checked:s,children:i.jsx(tn,{role:"menuitemradio","aria-checked":s,...n,ref:t,"data-state":zo(s),onSelect:H(n.onSelect,()=>{var a;return(a=o.onValueChange)==null?void 0:a.call(o,r)},{checkForDefaultPrevented:!1})})})});Gi.displayName=Ri;var Ho="MenuItemIndicator",[qi,tm]=mt(Ho,{checked:!1}),Xi=d.forwardRef((e,t)=>{const{__scopeMenu:r,forceMount:n,...o}=e,s=tm(Ho,r);return i.jsx(Te,{present:n||rn(s.checked)||s.checked===!0,children:i.jsx(te.span,{...o,ref:t,"data-state":zo(s.checked)})})});Xi.displayName=Ho;var rm="MenuSeparator",Yi=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{role:"separator","aria-orientation":"horizontal",...n,ref:t})});Yi.displayName=rm;var nm="MenuArrow",Ji=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e,o=Qr(r);return i.jsx(No,{...o,...n,ref:t})});Ji.displayName=nm;var om="MenuSub",[Rw,Zi]=mt(om),nr="MenuSubTrigger",Qi=d.forwardRef((e,t)=>{const r=bt(nr,e.__scopeMenu),n=rr(nr,e.__scopeMenu),o=Zi(nr,e.__scopeMenu),s=$o(nr,e.__scopeMenu),a=d.useRef(null),{pointerGraceTimerRef:c,onPointerGraceIntentChange:l}=s,f={__scopeMenu:e.__scopeMenu},u=d.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=null},[]);return d.useEffect(()=>u,[u]),d.useEffect(()=>{const p=c.current;return()=>{window.clearTimeout(p),l(null)}},[c,l]),i.jsx(Lo,{asChild:!0,...f,children:i.jsx(Wi,{id:o.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":o.contentId,"data-state":rc(r.open),...e,ref:Jn(t,o.onTriggerChange),onClick:p=>{var g;(g=e.onClick)==null||g.call(e,p),!(e.disabled||p.defaultPrevented)&&(p.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:H(e.onPointerMove,or(p=>{s.onItemEnter(p),!p.defaultPrevented&&!e.disabled&&!r.open&&!a.current&&(s.onPointerGraceIntentChange(null),a.current=window.setTimeout(()=>{r.onOpenChange(!0),u()},100))})),onPointerLeave:H(e.onPointerLeave,or(p=>{var v,m;u();const g=(v=r.content)==null?void 0:v.getBoundingClientRect();if(g){const h=(m=r.content)==null?void 0:m.dataset.side,b=h==="right",w=b?-5:5,x=g[b?"left":"right"],y=g[b?"right":"left"];s.onPointerGraceIntentChange({area:[{x:p.clientX+w,y:p.clientY},{x,y:g.top},{x:y,y:g.top},{x:y,y:g.bottom},{x,y:g.bottom}],side:h}),window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(p),p.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:H(e.onKeyDown,p=>{var v;const g=s.searchRef.current!=="";e.disabled||g&&p.key===" "||Bg[n.dir].includes(p.key)&&(r.onOpenChange(!0),(v=r.content)==null||v.focus(),p.preventDefault())})})})});Qi.displayName=nr;var ec="MenuSubContent",tc=d.forwardRef((e,t)=>{const r=$i(ke,e.__scopeMenu),{forceMount:n=r.forceMount,...o}=e,s=bt(ke,e.__scopeMenu),a=rr(ke,e.__scopeMenu),c=Zi(ec,e.__scopeMenu),l=d.useRef(null),f=ie(t,l);return i.jsx(tr.Provider,{scope:e.__scopeMenu,children:i.jsx(Te,{present:n||s.open,children:i.jsx(tr.Slot,{scope:e.__scopeMenu,children:i.jsx(Bo,{id:c.contentId,"aria-labelledby":c.triggerId,...o,ref:f,align:"start",side:a.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:u=>{var p;a.isUsingKeyboardRef.current&&((p=l.current)==null||p.focus()),u.preventDefault()},onCloseAutoFocus:u=>u.preventDefault(),onFocusOutside:H(e.onFocusOutside,u=>{u.target!==c.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:H(e.onEscapeKeyDown,u=>{a.onClose(),u.preventDefault()}),onKeyDown:H(e.onKeyDown,u=>{var v;const p=u.currentTarget.contains(u.target),g=Ug[a.dir].includes(u.key);p&&g&&(s.onOpenChange(!1),(v=c.trigger)==null||v.focus(),u.preventDefault())})})})})})});tc.displayName=ec;function rc(e){return e?"open":"closed"}function rn(e){return e==="indeterminate"}function zo(e){return rn(e)?"indeterminate":e?"checked":"unchecked"}function sm(e){const t=document.activeElement;for(const r of e)if(r===t||(r.focus(),document.activeElement!==t))return}function am(e,t){return e.map((r,n)=>e[(t+n)%e.length])}function im(e,t,r){const o=t.length>1&&Array.from(t).every(f=>f===t[0])?t[0]:t,s=r?e.indexOf(r):-1;let a=am(e,Math.max(s,0));o.length===1&&(a=a.filter(f=>f!==r));const l=a.find(f=>f.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function cm(e,t){const{x:r,y:n}=e;let o=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],f=c.x,u=c.y,p=l.x,g=l.y;u>n!=g>n&&r<(p-f)*(n-u)/(g-u)+f&&(o=!o)}return o}function lm(e,t){if(!t)return!1;const r={x:e.clientX,y:e.clientY};return cm(r,t)}function or(e){return t=>t.pointerType==="mouse"?e(t):void 0}var dm=Fi,um=Lo,fm=Bi,pm=Ui,hm=Uo,gm=Hi,mm=tn,bm=Vi,vm=Ki,wm=Gi,ym=Xi,xm=Yi,Sm=Ji,Cm=Qi,Em=tc,nn="DropdownMenu",[Nm,Gw]=Fe(nn,[Di]),xe=Di(),[Tm,nc]=Nm(nn),oc=e=>{const{__scopeDropdownMenu:t,children:r,dir:n,open:o,defaultOpen:s,onOpenChange:a,modal:c=!0}=e,l=xe(t),f=d.useRef(null),[u,p]=ot({prop:o,defaultProp:s??!1,onChange:a,caller:nn});return i.jsx(Tm,{scope:t,triggerId:$e(),triggerRef:f,contentId:$e(),open:u,onOpenChange:p,onOpenToggle:d.useCallback(()=>p(g=>!g),[p]),modal:c,children:i.jsx(dm,{...l,open:u,onOpenChange:p,dir:n,modal:c,children:r})})};oc.displayName=nn;var sc="DropdownMenuTrigger",ac=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,disabled:n=!1,...o}=e,s=nc(sc,r),a=xe(r);return i.jsx(um,{asChild:!0,...a,children:i.jsx(te.button,{type:"button",id:s.triggerId,"aria-haspopup":"menu","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":s.open?"open":"closed","data-disabled":n?"":void 0,disabled:n,...o,ref:Jn(t,s.triggerRef),onPointerDown:H(e.onPointerDown,c=>{!n&&c.button===0&&c.ctrlKey===!1&&(s.onOpenToggle(),s.open||c.preventDefault())}),onKeyDown:H(e.onKeyDown,c=>{n||(["Enter"," "].includes(c.key)&&s.onOpenToggle(),c.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(c.key)&&c.preventDefault())})})})});ac.displayName=sc;var Am="DropdownMenuPortal",ic=e=>{const{__scopeDropdownMenu:t,...r}=e,n=xe(t);return i.jsx(fm,{...n,...r})};ic.displayName=Am;var cc="DropdownMenuContent",lc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=nc(cc,r),s=xe(r),a=d.useRef(!1);return i.jsx(pm,{id:o.contentId,"aria-labelledby":o.triggerId,...s,...n,ref:t,onCloseAutoFocus:H(e.onCloseAutoFocus,c=>{var l;a.current||(l=o.triggerRef.current)==null||l.focus(),a.current=!1,c.preventDefault()}),onInteractOutside:H(e.onInteractOutside,c=>{const l=c.detail.originalEvent,f=l.button===0&&l.ctrlKey===!0,u=l.button===2||f;(!o.modal||u)&&(a.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});lc.displayName=cc;var Pm="DropdownMenuGroup",Im=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(hm,{...o,...n,ref:t})});Im.displayName=Pm;var _m="DropdownMenuLabel",dc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(gm,{...o,...n,ref:t})});dc.displayName=_m;var Om="DropdownMenuItem",uc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(mm,{...o,...n,ref:t})});uc.displayName=Om;var km="DropdownMenuCheckboxItem",fc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(bm,{...o,...n,ref:t})});fc.displayName=km;var Mm="DropdownMenuRadioGroup",Dm=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(vm,{...o,...n,ref:t})});Dm.displayName=Mm;var Lm="DropdownMenuRadioItem",pc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(wm,{...o,...n,ref:t})});pc.displayName=Lm;var Fm="DropdownMenuItemIndicator",hc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(ym,{...o,...n,ref:t})});hc.displayName=Fm;var $m="DropdownMenuSeparator",gc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(xm,{...o,...n,ref:t})});gc.displayName=$m;var Bm="DropdownMenuArrow",Um=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(Sm,{...o,...n,ref:t})});Um.displayName=Bm;var Hm="DropdownMenuSubTrigger",mc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(Cm,{...o,...n,ref:t})});mc.displayName=Hm;var zm="DropdownMenuSubContent",bc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=xe(r);return i.jsx(Em,{...o,...n,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});bc.displayName=zm;var Wm=oc,Vm=ac,jm=ic,vc=lc,wc=dc,yc=uc,xc=fc,Sc=pc,Cc=hc,Ec=gc,Nc=mc,Tc=bc;const Km=Wm,Rm=Vm,Gm=d.forwardRef(({className:e,inset:t,children:r,...n},o)=>i.jsxs(Nc,{ref:o,className:P("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...n,children:[r,i.jsx(J.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Gm.displayName=Nc.displayName;const qm=d.forwardRef(({className:e,...t},r)=>i.jsx(Tc,{ref:r,className:P("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));qm.displayName=Tc.displayName;const Ac=d.forwardRef(({className:e,sideOffset:t=4,...r},n)=>i.jsx(jm,{children:i.jsx(vc,{ref:n,sideOffset:t,className:P("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r})}));Ac.displayName=vc.displayName;const Wo=d.forwardRef(({className:e,inset:t,...r},n)=>i.jsx(yc,{ref:n,className:P("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...r}));Wo.displayName=yc.displayName;const Xm=d.forwardRef(({className:e,children:t,checked:r,...n},o)=>i.jsxs(xc,{ref:o,className:P("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:r,...n,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(Cc,{children:i.jsx(J.Check,{className:"h-4 w-4"})})}),t]}));Xm.displayName=xc.displayName;const Ym=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Sc,{ref:n,className:P("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(Cc,{children:i.jsx(J.Circle,{className:"h-2 w-2 fill-current"})})}),t]}));Ym.displayName=Sc.displayName;const Jm=d.forwardRef(({className:e,inset:t,...r},n)=>i.jsx(wc,{ref:n,className:P("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...r}));Jm.displayName=wc.displayName;const Zm=d.forwardRef(({className:e,...t},r)=>i.jsx(Ec,{ref:r,className:P("-mx-1 my-1 h-px bg-muted",e),...t}));Zm.displayName=Ec.displayName;function sr({className:e="",placeholder:t="Type your message...",autoFocus:r=!0,maxHeight:n=void 0,streamingDebounceMs:o=40,enableFileUpload:s=!0,enableExcelUpload:a=!1,enableMessageEditing:c=!0,customStyles:l={},onMessageSent:f,onExcelUploadSuccess:u,onError:p}){const{currentThreadId:g,messages:v,isStreaming:m,streamingAssistantId:h,error:b,send:w,stop:x,lastCheckpointId:y,listCheckpoints:C,navigateToCheckpoint:N,returnToLatest:O,hasMoreHistory:E,isLoadingHistory:M,loadOlderMessages:F,api:I}=Yn(),[B,R]=T.useState(""),[U,D]=T.useState(null),[z,k]=T.useState(null),[G,L]=T.useState([]),[A,ee]=T.useState(!1),[q,ce]=T.useState(null),[$,K]=T.useState(null),[le,pe]=T.useState(!1),[W,V]=T.useState([]),[se,j]=T.useState(null),Q=T.useRef(null),Z=T.useRef(null),he=T.useRef(null),Se=T.useRef(null),X=T.useRef(null),Y=T.useRef(!1),ge=T.useRef(!0),We=T.useRef(0),Ae=T.useRef(null),[An,ur]=T.useState("desktop");T.useEffect(()=>{const _=()=>{const re=window.innerWidth;ur(re<640?"phone":re<1024?"tablet":"desktop")};return _(),window.addEventListener("resize",_),()=>window.removeEventListener("resize",_)},[]),T.useEffect(()=>{let _=!1;if(!g){V([]),j(null),Ae.current=null;return}const re={threadId:g,checkpointId:y??null},de=Ae.current;if(!(de&&de.threadId===re.threadId&&de.checkpointId===re.checkpointId))return Ae.current=re,C(g).then(ue=>{if(_)return;const je=((ue==null?void 0:ue.checkpoints)??[]).slice().sort((ut,kn)=>new Date(kn.createdAt).getTime()-new Date(ut.createdAt).getTime());V(je),j(ut=>{var kn;return ut??((kn=je[0])==null?void 0:kn.checkpointId)??null})}).catch(()=>{_||(V([]),Ae.current=null)}),()=>{_=!0}},[g,y,C]),T.useEffect(()=>{y&&j(y)},[y]);const St=T.useCallback(async()=>{if(!E||M)return;const _=X.current;if(!_)return;const re=_.scrollHeight,de=_.scrollTop;Y.current=!0;try{await F()}catch(ue){console.warn("loadOlderMessages failed",ue)}finally{requestAnimationFrame(()=>{const ue=X.current;if(!ue){Y.current=!1;return}const je=ue.scrollHeight;ue.scrollTop=de+(je-re);const ut=je-ue.scrollTop-ue.clientHeight;ge.current=ut<=32,Y.current=!1})}},[E,M,F]);T.useEffect(()=>{const _=X.current;if(!_)return;const re=()=>{_.scrollTop<=80&&St();const je=_.scrollHeight-_.scrollTop-_.clientHeight;ge.current=je<=80};return _.addEventListener("scroll",re),()=>_.removeEventListener("scroll",re)},[St]),T.useEffect(()=>{v.length<We.current&&(ge.current=!0),We.current=v.length},[v.length]),T.useEffect(()=>{const _=X.current;_&&(Y.current||ge.current&&(_.scrollTop=_.scrollHeight,ge.current=!0))},[v]),T.useEffect(()=>{var _;r&&((_=Z.current)==null||_.focus())},[r]),T.useEffect(()=>{b&&!le&&(p==null||p(b))},[b,le,p]);const ps=_=>{if(_.length>At)return`Message too long (${_.length}/${At} characters)`;try{return np(_),null}catch(re){return(re==null?void 0:re.message)||"Invalid message"}},fr=_=>{const re=_.content||[],de=re.filter(ue=>ue.type==="text").map(ue=>ue.text).join("");if(de)return de;try{return JSON.stringify(re,null,2)}catch{return String(re)}},Pn=async()=>{const _=B.trim();if(!_&&G.length===0)return;const re=ps(_);if(re){k(re);return}try{await w(_,{checkpointId:se||y||void 0,payloadExtras:U?{edit:!0,originalMessageId:U}:void 0,attachments:G}),f==null||f(_),R(""),k(null),L([]),D(null),Z.current&&(Z.current.style.height="auto")}catch(de){const ue=(de==null?void 0:de.message)||"Failed to send message";k(ue),p==null||p(ue)}},In=(_,re)=>{c&&(D(_),R(re),k(null),setTimeout(()=>{Z.current&&(Z.current.focus(),Z.current.style.height="auto",Z.current.style.height=Z.current.scrollHeight+"px")},0))},pr=()=>{D(null),R(""),k(null),Z.current&&(Z.current.style.height="auto")},hs=_=>{_.key==="Enter"&&!_.shiftKey?(_.preventDefault(),Pn()):_.key==="Escape"&&U&&(_.preventDefault(),pr())},gs=_=>{const re=Array.from(_.target.files||[]);L(de=>[...de,...re])},_n=_=>L(re=>re.filter((de,ue)=>_!==ue)),ae=async _=>{const re=(_.target.files||[])[0];if(re){ce(null),K(null),ee(!0);try{const de=await I.uploadExcel(re),ue=de.sheets.map(ut=>`${ut.sheetName} -> ${ut.tableName}`).join(", "),je=ue?`Uploaded ${re.name} (${de.sheets.length} sheet${de.sheets.length===1?"":"s"}: ${ue})`:`Uploaded ${re.name}`;K(je),u==null||u({file:re,response:de})}catch(de){const ue=de instanceof Error?de.message:"Failed to upload Excel file";console.error("Excel upload failed",de),ce(ue),p==null||p(ue)}finally{ee(!1),_.target.value=""}}},ye=_=>{if(!_)return"Unknown";const re=Date.parse(_);return Number.isNaN(re)?_:new Date(re).toLocaleString()},Pe=async _=>{if(g){if(!_){await O(),j(null);return}await N(_),j(_)}},Ve=`flex flex-1 w-full flex-col min-h-0 min-w-0 max-h-full overflow-hidden bg-transparent ${e} ${l.container||""}`,rt=`flex-1 min-h-0 min-w-0 max-h-full w-full overflow-y-auto overflow-x-auto overscroll-contain break-words break-anywhere p-4 space-y-4 bg-transparent ${l.messagesArea||""}`,On=`flex-shrink-0 w-full border-t p-4 bg-transparent ${l.inputArea||""}`;return i.jsxs("div",{className:Ve,children:[!!b&&!le&&i.jsxs("div",{className:"flex-shrink-0 bg-red-50 border border-red-200 text-red-800 px-4 py-2 text-sm flex items-center justify-between",children:[i.jsx("span",{children:b}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>pe(!0),className:"text-red-800 hover:bg-red-100","aria-label":"Dismiss error",children:i.jsx(J.X,{size:16})})]}),g&&W.length>0&&i.jsxs("div",{className:"flex-shrink-0 flex items-center gap-2 px-4 py-2 border-b border-border bg-muted/60 text-xs dark:bg-muted/50",children:[i.jsx("span",{className:"opacity-70",children:"Checkpoint:"}),i.jsxs("select",{className:"border border-border rounded px-2 py-1 text-xs bg-card text-foreground focus:outline-none focus:ring-1 focus:ring-ring dark:bg-secondary",value:se??"",onChange:_=>{const re=_.target.value||null;Pe(re)},children:[i.jsx("option",{value:"",children:"Latest"}),W.map(_=>i.jsxs("option",{value:_.checkpointId,children:[ye(_.createdAt),_.preview?` — ${_.preview.slice(0,40)}`:""]},_.checkpointId))]})]}),i.jsxs("div",{ref:X,className:rt,style:n?{maxHeight:n}:void 0,children:[v.length===0?i.jsx("div",{className:"flex items-center justify-center py-8 text-muted-foreground",children:"No messages yet. Start a conversation!"}):i.jsxs(i.Fragment,{children:[(M||!E)&&i.jsx("div",{className:"flex justify-center py-2 text-xs text-muted-foreground",children:M?i.jsx(J.Loader2,{className:"h-4 w-4 animate-spin"}):"You've reached the beginning"}),v.map((_,re)=>i.jsx(Sa,{message:_,messageIndex:re,isStreamingMessage:m&&h===_.id,streamingDebounceMs:o,isEditing:U===_.id,showActions:c,showTimestamp:!1,showAgentName:!0,layoutSize:An,truncateToolMessages:!1,toolMessagePreviewLength:200,onEdit:(de,ue)=>In(de,ue),onRegenerate:()=>{const de=[...v].reverse().find(je=>je.role==="user"),ue=de?fr(de):"";ue&&w(ue,{checkpointId:se||y||void 0})},onCancelEdit:pr},_.id||re))]}),i.jsx("div",{ref:Q})]}),i.jsxs("div",{className:On,children:[U&&i.jsx("div",{className:"mb-3 p-3 bg-blue-50 border border-blue-200 rounded-lg",children:i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(J.Edit3,{size:16,className:"text-blue-600"}),i.jsx("span",{className:"text-sm font-medium text-blue-800",children:"Editing message"})]}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:pr,className:"text-blue-600 hover:bg-blue-100",children:i.jsx(J.X,{size:16})})]})}),(s||a)&&i.jsxs("div",{className:"mb-3 space-y-3",children:[s&&i.jsxs(i.Fragment,{children:[i.jsx("input",{ref:he,type:"file",multiple:!0,onChange:_=>gs(_),className:"hidden"}),G.length>0&&i.jsx("div",{className:"flex flex-wrap gap-2",children:G.map((_,re)=>i.jsxs("div",{className:"flex items-center gap-2 bg-gray-100 dark:bg-gray-800 rounded-lg px-3 py-2 text-sm text-gray-900 dark:text-gray-100",children:[i.jsx(J.Paperclip,{size:14}),i.jsx("span",{className:"truncate max-w-[150px]",children:_.name}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>_n(re),className:"h-4 w-4 p-0 text-gray-500 dark:text-gray-400 hover:text-red-500 dark:hover:text-red-400","aria-label":`Remove ${_.name}`,children:i.jsx(J.X,{size:12})})]},re))})]}),a&&i.jsxs(i.Fragment,{children:[i.jsx("input",{ref:Se,type:"file",accept:".xls,.xlsx,.xlsm",onChange:ae,className:"hidden"}),A&&i.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[i.jsx(J.Loader2,{className:"h-4 w-4 animate-spin"})," Uploading Excel file..."]}),$&&!A&&i.jsx("div",{className:"text-sm rounded border border-emerald-200 bg-emerald-50 px-3 py-2 text-emerald-700",children:$}),q&&!A&&i.jsx("div",{className:"text-sm rounded border border-red-200 bg-red-50 px-3 py-2 text-red-600",children:q})]})]}),z&&i.jsx("div",{className:"mb-3 text-sm text-red-600 bg-red-50 border border-red-200 rounded px-3 py-2",children:z}),i.jsxs("div",{className:"flex items-end gap-2",children:[(s||a)&&i.jsxs(Km,{children:[i.jsx(Rm,{asChild:!0,children:i.jsx(fe,{type:"button",size:"icon",variant:"outline",disabled:m,title:"More input actions",className:l.moreButton||"",children:i.jsx(J.Plus,{size:16})})}),i.jsxs(Ac,{align:"start",sideOffset:6,className:"w-52",children:[s&&i.jsxs(Wo,{onClick:()=>{var _;return(_=he.current)==null?void 0:_.click()},className:"cursor-pointer",children:[i.jsx(J.Paperclip,{className:"h-4 w-4 mr-2"})," Attach files or images"]}),a&&i.jsxs(Wo,{onClick:()=>{var _;A||(_=Se.current)==null||_.click()},className:`cursor-pointer ${A?"opacity-60 pointer-events-none":""}`,children:[i.jsx(J.FileSpreadsheet,{className:"h-4 w-4 mr-2"})," Upload Excel file"]})]})]}),i.jsx("div",{className:"flex-1",children:i.jsx(pa,{ref:Z,value:B,onChange:_=>{R(_.target.value),k(null),Z.current&&(Z.current.style.height="auto",Z.current.style.height=`${Z.current.scrollHeight}px`)},onKeyDown:hs,placeholder:U?"Edit your message...":t,className:`resize-none min-h-[44px] max-h-[20rem] w-full transition-colors ${U?"border-blue-400 bg-blue-50 text-blue-900 dark:border-blue-500 dark:bg-blue-950/60 dark:text-blue-50":""} ${z?"border-red-400":""} ${l.textarea||""}`,disabled:!1,maxLength:At,rows:1})}),i.jsx("div",{children:m?i.jsx(fe,{type:"button",onClick:x,size:"icon",variant:"outline",className:"shrink-0",title:"Stop generating",children:i.jsx(J.Square,{size:16})}):i.jsx(fe,{type:"button",onClick:Pn,size:"icon",disabled:!B.trim()&&G.length===0,className:`shrink-0 ${G.length>0?"bg-blue-500 hover:bg-blue-600 text-white":""} ${l.sendButton||""}`,title:U?"Save changes":"Send message",children:i.jsx(J.Send,{size:16})})})]}),B.length>At*.8&&i.jsxs("div",{className:"mt-2 text-xs text-gray-500 text-right",children:[B.length,"/",At]})]})]})}const ar=d.forwardRef(({className:e,type:t,...r},n)=>i.jsx("input",{type:t,className:P("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...r}));ar.displayName="Input";function Vo(e,[t,r]){return Math.min(r,Math.max(t,e))}function Qm(e,t){return d.useReducer((r,n)=>t[r][n]??r,e)}var jo="ScrollArea",[Pc,qw]=Fe(jo),[eb,Me]=Pc(jo),Ic=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,type:n="hover",dir:o,scrollHideDelay:s=600,...a}=e,[c,l]=d.useState(null),[f,u]=d.useState(null),[p,g]=d.useState(null),[v,m]=d.useState(null),[h,b]=d.useState(null),[w,x]=d.useState(0),[y,C]=d.useState(0),[N,O]=d.useState(!1),[E,M]=d.useState(!1),F=ie(t,B=>l(B)),I=kr(o);return i.jsx(eb,{scope:r,type:n,dir:I,scrollHideDelay:s,scrollArea:c,viewport:f,onViewportChange:u,content:p,onContentChange:g,scrollbarX:v,onScrollbarXChange:m,scrollbarXEnabled:N,onScrollbarXEnabledChange:O,scrollbarY:h,onScrollbarYChange:b,scrollbarYEnabled:E,onScrollbarYEnabledChange:M,onCornerWidthChange:x,onCornerHeightChange:C,children:i.jsx(te.div,{dir:I,...a,ref:F,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":y+"px",...e.style}})})});Ic.displayName=jo;var _c="ScrollAreaViewport",Oc=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,children:n,nonce:o,...s}=e,a=Me(_c,r),c=d.useRef(null),l=ie(t,c,a.onViewportChange);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),i.jsx(te.div,{"data-radix-scroll-area-viewport":"",...s,ref:l,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:i.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});Oc.displayName=_c;var Ze="ScrollAreaScrollbar",Ko=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Me(Ze,e.__scopeScrollArea),{onScrollbarXEnabledChange:s,onScrollbarYEnabledChange:a}=o,c=e.orientation==="horizontal";return d.useEffect(()=>(c?s(!0):a(!0),()=>{c?s(!1):a(!1)}),[c,s,a]),o.type==="hover"?i.jsx(tb,{...n,ref:t,forceMount:r}):o.type==="scroll"?i.jsx(rb,{...n,ref:t,forceMount:r}):o.type==="auto"?i.jsx(kc,{...n,ref:t,forceMount:r}):o.type==="always"?i.jsx(Ro,{...n,ref:t}):null});Ko.displayName=Ze;var tb=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Me(Ze,e.__scopeScrollArea),[s,a]=d.useState(!1);return d.useEffect(()=>{const c=o.scrollArea;let l=0;if(c){const f=()=>{window.clearTimeout(l),a(!0)},u=()=>{l=window.setTimeout(()=>a(!1),o.scrollHideDelay)};return c.addEventListener("pointerenter",f),c.addEventListener("pointerleave",u),()=>{window.clearTimeout(l),c.removeEventListener("pointerenter",f),c.removeEventListener("pointerleave",u)}}},[o.scrollArea,o.scrollHideDelay]),i.jsx(Te,{present:r||s,children:i.jsx(kc,{"data-state":s?"visible":"hidden",...n,ref:t})})}),rb=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Me(Ze,e.__scopeScrollArea),s=e.orientation==="horizontal",a=cn(()=>l("SCROLL_END"),100),[c,l]=Qm("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return d.useEffect(()=>{if(c==="idle"){const f=window.setTimeout(()=>l("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(f)}},[c,o.scrollHideDelay,l]),d.useEffect(()=>{const f=o.viewport,u=s?"scrollLeft":"scrollTop";if(f){let p=f[u];const g=()=>{const v=f[u];p!==v&&(l("SCROLL"),a()),p=v};return f.addEventListener("scroll",g),()=>f.removeEventListener("scroll",g)}},[o.viewport,s,l,a]),i.jsx(Te,{present:r||c!=="hidden",children:i.jsx(Ro,{"data-state":c==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:H(e.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:H(e.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),kc=d.forwardRef((e,t)=>{const r=Me(Ze,e.__scopeScrollArea),{forceMount:n,...o}=e,[s,a]=d.useState(!1),c=e.orientation==="horizontal",l=cn(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;a(c?f:u)}},10);return $t(r.viewport,l),$t(r.content,l),i.jsx(Te,{present:n||s,children:i.jsx(Ro,{"data-state":s?"visible":"hidden",...o,ref:t})})}),Ro=d.forwardRef((e,t)=>{const{orientation:r="vertical",...n}=e,o=Me(Ze,e.__scopeScrollArea),s=d.useRef(null),a=d.useRef(0),[c,l]=d.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=$c(c.viewport,c.content),u={...n,sizes:c,onSizesChange:l,hasThumb:f>0&&f<1,onThumbChange:g=>s.current=g,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:g=>a.current=g};function p(g,v){return cb(g,a.current,c,v)}return r==="horizontal"?i.jsx(nb,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&s.current){const g=o.viewport.scrollLeft,v=Bc(g,c,o.dir);s.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{o.viewport&&(o.viewport.scrollLeft=g)},onDragScroll:g=>{o.viewport&&(o.viewport.scrollLeft=p(g,o.dir))}}):r==="vertical"?i.jsx(ob,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&s.current){const g=o.viewport.scrollTop,v=Bc(g,c);s.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:g=>{o.viewport&&(o.viewport.scrollTop=g)},onDragScroll:g=>{o.viewport&&(o.viewport.scrollTop=p(g))}}):null}),nb=d.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,s=Me(Ze,e.__scopeScrollArea),[a,c]=d.useState(),l=d.useRef(null),f=ie(t,l,s.onScrollbarXChange);return d.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),i.jsx(Dc,{"data-orientation":"horizontal",...o,ref:f,sizes:r,style:{bottom:0,left:s.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:s.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":an(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,p)=>{if(s.viewport){const g=s.viewport.scrollLeft+u.deltaX;e.onWheelScroll(g),Hc(g,p)&&u.preventDefault()}},onResize:()=>{l.current&&s.viewport&&a&&n({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:l.current.clientWidth,paddingStart:sn(a.paddingLeft),paddingEnd:sn(a.paddingRight)}})}})}),ob=d.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,s=Me(Ze,e.__scopeScrollArea),[a,c]=d.useState(),l=d.useRef(null),f=ie(t,l,s.onScrollbarYChange);return d.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),i.jsx(Dc,{"data-orientation":"vertical",...o,ref:f,sizes:r,style:{top:0,right:s.dir==="ltr"?0:void 0,left:s.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":an(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,p)=>{if(s.viewport){const g=s.viewport.scrollTop+u.deltaY;e.onWheelScroll(g),Hc(g,p)&&u.preventDefault()}},onResize:()=>{l.current&&s.viewport&&a&&n({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:l.current.clientHeight,paddingStart:sn(a.paddingTop),paddingEnd:sn(a.paddingBottom)}})}})}),[sb,Mc]=Pc(Ze),Dc=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:o,onThumbChange:s,onThumbPointerUp:a,onThumbPointerDown:c,onThumbPositionChange:l,onDragScroll:f,onWheelScroll:u,onResize:p,...g}=e,v=Me(Ze,r),[m,h]=d.useState(null),b=ie(t,F=>h(F)),w=d.useRef(null),x=d.useRef(""),y=v.viewport,C=n.content-n.viewport,N=ve(u),O=ve(l),E=cn(p,10);function M(F){if(w.current){const I=F.clientX-w.current.left,B=F.clientY-w.current.top;f({x:I,y:B})}}return d.useEffect(()=>{const F=I=>{const B=I.target;(m==null?void 0:m.contains(B))&&N(I,C)};return document.addEventListener("wheel",F,{passive:!1}),()=>document.removeEventListener("wheel",F,{passive:!1})},[y,m,C,N]),d.useEffect(O,[n,O]),$t(m,E),$t(v.content,E),i.jsx(sb,{scope:r,scrollbar:m,hasThumb:o,onThumbChange:ve(s),onThumbPointerUp:ve(a),onThumbPositionChange:O,onThumbPointerDown:ve(c),children:i.jsx(te.div,{...g,ref:b,style:{position:"absolute",...g.style},onPointerDown:H(e.onPointerDown,F=>{F.button===0&&(F.target.setPointerCapture(F.pointerId),w.current=m.getBoundingClientRect(),x.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",v.viewport&&(v.viewport.style.scrollBehavior="auto"),M(F))}),onPointerMove:H(e.onPointerMove,M),onPointerUp:H(e.onPointerUp,F=>{const I=F.target;I.hasPointerCapture(F.pointerId)&&I.releasePointerCapture(F.pointerId),document.body.style.webkitUserSelect=x.current,v.viewport&&(v.viewport.style.scrollBehavior=""),w.current=null})})})}),on="ScrollAreaThumb",Lc=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Mc(on,e.__scopeScrollArea);return i.jsx(Te,{present:r||o.hasThumb,children:i.jsx(ab,{ref:t,...n})})}),ab=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,style:n,...o}=e,s=Me(on,r),a=Mc(on,r),{onThumbPositionChange:c}=a,l=ie(t,p=>a.onThumbChange(p)),f=d.useRef(void 0),u=cn(()=>{f.current&&(f.current(),f.current=void 0)},100);return d.useEffect(()=>{const p=s.viewport;if(p){const g=()=>{if(u(),!f.current){const v=lb(p,c);f.current=v,c()}};return c(),p.addEventListener("scroll",g),()=>p.removeEventListener("scroll",g)}},[s.viewport,u,c]),i.jsx(te.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:l,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:H(e.onPointerDownCapture,p=>{const v=p.target.getBoundingClientRect(),m=p.clientX-v.left,h=p.clientY-v.top;a.onThumbPointerDown({x:m,y:h})}),onPointerUp:H(e.onPointerUp,a.onThumbPointerUp)})});Lc.displayName=on;var Go="ScrollAreaCorner",Fc=d.forwardRef((e,t)=>{const r=Me(Go,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?i.jsx(ib,{...e,ref:t}):null});Fc.displayName=Go;var ib=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,...n}=e,o=Me(Go,r),[s,a]=d.useState(0),[c,l]=d.useState(0),f=!!(s&&c);return $t(o.scrollbarX,()=>{var p;const u=((p=o.scrollbarX)==null?void 0:p.offsetHeight)||0;o.onCornerHeightChange(u),l(u)}),$t(o.scrollbarY,()=>{var p;const u=((p=o.scrollbarY)==null?void 0:p.offsetWidth)||0;o.onCornerWidthChange(u),a(u)}),f?i.jsx(te.div,{...n,ref:t,style:{width:s,height:c,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function sn(e){return e?parseInt(e,10):0}function $c(e,t){const r=e/t;return isNaN(r)?0:r}function an(e){const t=$c(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function cb(e,t,r,n="ltr"){const o=an(r),s=o/2,a=t||s,c=o-a,l=r.scrollbar.paddingStart+a,f=r.scrollbar.size-r.scrollbar.paddingEnd-c,u=r.content-r.viewport,p=n==="ltr"?[0,u]:[u*-1,0];return Uc([l,f],p)(e)}function Bc(e,t,r="ltr"){const n=an(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,s=t.scrollbar.size-o,a=t.content-t.viewport,c=s-n,l=r==="ltr"?[0,a]:[a*-1,0],f=Vo(e,l);return Uc([0,a],[0,c])(f)}function Uc(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function Hc(e,t){return e>0&&e<t}var lb=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function o(){const s={left:e.scrollLeft,top:e.scrollTop},a=r.left!==s.left,c=r.top!==s.top;(a||c)&&t(),r=s,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function cn(e,t){const r=ve(e),n=d.useRef(0);return d.useEffect(()=>()=>window.clearTimeout(n.current),[]),d.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function $t(e,t){const r=ve(t);be(()=>{let n=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(n),o.unobserve(e)}}},[e,r])}var zc=Ic,db=Oc,ub=Fc;const Wc=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(zc,{ref:n,className:P("relative overflow-hidden",e),...r,children:[i.jsx(db,{className:"h-full w-full rounded-[inherit] overflow-auto",children:t}),i.jsx(Vc,{}),i.jsx(ub,{})]}));Wc.displayName=zc.displayName;const Vc=d.forwardRef(({className:e,orientation:t="vertical",...r},n)=>i.jsx(Ko,{ref:n,orientation:t,className:P("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...r,children:i.jsx(Lc,{className:"relative flex-1 rounded-full bg-border"})}));Vc.displayName=Ko.displayName;function ln({className:e="",showCreateButton:t=!0,showDeleteButton:r=!0,showEditTitle:n=!0,maxHeight:o="400px",customStyles:s={},currentThreadId:a=null,navigateToThread:c,onThreadSelect:l,onThreadCreate:f,onThreadDelete:u}){const{loadThread:p,threads:g,refreshThreads:v,currentThreadId:m,createThread:h,deleteThread:b,renameThread:w}=Yn(),[x,y]=T.useState(g??[]),[C,N]=T.useState(!1),[O,E]=T.useState(null),[M,F]=T.useState(null),[I,B]=T.useState(""),[R,U]=T.useState(!1);T.useEffect(()=>{y(g??[])},[g]);const D=async $=>{try{await p($),c==null||c($),l==null||l($)}catch(K){console.error("Failed to select thread:",K)}},z=async()=>{try{U(!0);const $=await h();f==null||f($),c==null||c($)}catch($){console.error("Failed to create thread:",$)}finally{U(!1)}},k=async($,K)=>{if(K.stopPropagation(),!!confirm("Delete this thread?"))try{await b($),u==null||u($)}catch(le){console.error("Failed to delete thread:",le)}},G=($,K)=>{K.stopPropagation(),F($.threadId),B($.title||`Thread ${$.threadId.slice(0,8)}`)},L=async $=>{if(I.trim())try{await w($,I.trim()),F(null),B("")}catch(K){console.error("Failed to update title:",K)}},A=()=>{F(null),B("")},ee=($,K)=>{$.key==="Enter"?L(K):$.key==="Escape"&&A()},q=$=>{if(!$)return"";try{const K=new Date($),pe=new Date().getTime()-K.getTime(),W=Math.floor(pe/(1e3*60*60*24));return W===0?K.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):W===1?"Yesterday":W<7?`${W} days ago`:K.toLocaleDateString()}catch{return""}},ce=$=>$.title||`Thread ${$.threadId.slice(0,8)}`;return i.jsxs("div",{className:`flex flex-col h-full ${e} ${s.container||""}`,children:[t&&i.jsx("div",{className:s.header||"flex-shrink-0 p-2 border-b bg-slate-800 border-slate-700 text-slate-100 flex justify-end",children:i.jsx(fe,{onClick:z,disabled:R||C,className:s.createButton||"p-2",size:"sm",variant:"ghost",title:R?"Creating...":"New Chat",children:i.jsx(J.MessageSquarePlus,{size:20})})}),i.jsx(Wc,{className:`flex-1 min-h-0 ${s.threadList||""}`,style:o?{maxHeight:o}:void 0,children:i.jsx("div",{className:"p-2 space-y-1 pb-4",children:C?i.jsx("div",{className:"text-center py-8 text-slate-400",children:"Loading…"}):x.length===0?i.jsxs("div",{className:"text-center py-8 text-slate-400",children:[i.jsx(J.MessageSquare,{className:"w-8 h-8 mx-auto mb-2 opacity-40 text-slate-500"}),i.jsx("p",{className:"text-sm text-slate-500",children:"No conversations yet"})]}):x.slice().sort(($,K)=>new Date(K.updatedAt||K.createdAt||"").getTime()-new Date($.updatedAt||$.createdAt||"").getTime()).map($=>i.jsxs("div",{onClick:()=>D($.threadId),className:`group relative p-3 rounded-lg cursor-pointer transition-colors border ${(a??m)===$.threadId?`${s.activeThread||"bg-slate-600 border-slate-500"} `:`${s.threadItem||"bg-slate-700 border-slate-600 hover:bg-slate-600 text-gray-900 dark:text-slate-100"}`} ${s.threadItem||""} text-gray-900 dark:text-slate-100`,children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx("div",{className:"flex-1 min-w-0",children:M===$.threadId?i.jsxs("div",{className:"flex items-center gap-2",onClick:K=>K.stopPropagation(),children:[i.jsx(ar,{value:I,onChange:K=>B(K.target.value),onKeyDown:K=>ee(K,$.threadId),className:"h-6 text-sm",autoFocus:!0}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>L($.threadId),className:"h-6 w-6 p-0",children:i.jsx(J.Check,{size:12})}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:"h-6 w-6 p-0",children:i.jsx(J.X,{size:12})})]}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"font-medium text-sm truncate text-gray-900 dark:text-slate-100",children:ce($)}),i.jsxs("div",{className:"flex items-center gap-2 text-xs text-gray-500 dark:text-slate-400 mt-1",children:[i.jsx(J.Calendar,{size:10}),i.jsx("span",{children:q($.updatedAt||$.createdAt)})]})]})}),i.jsxs("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity ml-2",children:[n&&M!==$.threadId&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:K=>G($,K),className:"h-6 w-6 p-0",title:"Edit title",children:i.jsx(J.Edit3,{size:12})}),r&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:K=>k($.threadId,K),className:"h-6 w-6 p-0 text-red-400 hover:text-red-300 hover:bg-red-900/20",title:"Delete thread",children:i.jsx(J.Trash2,{size:12})})]})]}),a===$.threadId&&i.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-1 h-8 bg-blue-400 rounded-r"})]},$.threadId))})})]})}const jc=T.createContext(null);function fb({children:e,basePath:t="/chat"}){const r=T.useMemo(()=>t?t==="/"?"":t.endsWith("/")?t.slice(0,-1):t:"/chat",[t]),n={basePath:r,buildThreadPath:o=>`${r}/${o}`,buildBasePath:()=>r};return i.jsx(jc.Provider,{value:n,children:e})}function pb(){const e=T.useContext(jc);return e||{basePath:"/chat",buildThreadPath:t=>`/chat/${t}`,buildBasePath:()=>"/chat"}}const Kc={BASE_URL:"/",DEV:!1,MODE:"library",PROD:!0,SSR:!1};function ir(e){var o;const t=typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Mn&&Mn.tagName.toUpperCase()==="SCRIPT"&&Mn.src||new URL("index.umd.js",document.baseURI).href}<"u"&&Kc?Kc[e]:void 0,r=(o=globalThis==null?void 0:globalThis.process)==null?void 0:o.env,n=r?r[e]:void 0;return(t??n)||void 0}function hb(){return ir("VITE_API_BASE_URL")||ir("NEXT_PUBLIC_API_BASE_URL")||void 0}function gb(){return ir("VITE_API_KEY")||ir("NEXT_PUBLIC_API_KEY")||ir("VITE_AUTH_TOKEN")||void 0}function Rc(){const e=hb(),t=gb(),r={};return e&&(r.baseUrl=e),t&&(r.apiKey=t),r}function Gc(){const e=Rc(),t=Qe.getAuthToken();return{apiBaseUrl:e.baseUrl||Qe.baseUrl||"http://localhost:8000",apiKey:t||e.apiKey||"",model:"gpt-4",temperature:.7,maxTokens:4096,layoutSize:"desktop",showThreads:!0,autoScrollMessages:!0,truncateToolMessages:!0,toolMessagePreviewLength:200,darkMode:!1,enableSound:!1,messageHistory:100}}const qc="chat-settings";function mb(){try{const e=localStorage.getItem(qc);return e?JSON.parse(e):{}}catch(e){return console.error("Failed to parse stored settings:",e),{}}}function bb(e){try{localStorage.setItem(qc,JSON.stringify(e)),e.apiKey&&Qe.setAuthToken(e.apiKey)}catch(t){console.error("Failed to save settings:",t)}}function vb(){const e=Gc(),t=mb(),r=Qe.getAuthToken();return{...e,...t,apiKey:r||t.apiKey||e.apiKey,apiBaseUrl:Qe.baseUrl||t.apiBaseUrl||e.apiBaseUrl}}function wb(e){e.apiKey&&Qe.setAuthToken(e.apiKey),bb(e)}const qo=768;function yb(){const[e,t]=d.useState(void 0);return d.useEffect(()=>{const r=window.matchMedia(`(max-width: ${qo-1}px)`),n=()=>{t(window.innerWidth<qo)};return r.addEventListener("change",n),t(window.innerWidth<qo),()=>r.removeEventListener("change",n)},[]),!!e}var xb="Separator",Xc="horizontal",Sb=["horizontal","vertical"],Yc=d.forwardRef((e,t)=>{const{decorative:r,orientation:n=Xc,...o}=e,s=Cb(n)?n:Xc,c=r?{role:"none"}:{"aria-orientation":s==="vertical"?s:void 0,role:"separator"};return i.jsx(te.div,{"data-orientation":s,...c,...o,ref:t})});Yc.displayName=xb;function Cb(e){return Sb.includes(e)}var Jc=Yc;const Xo=d.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...n},o)=>i.jsx(Jc,{ref:o,decorative:r,orientation:t,className:P("shrink-0 bg-border",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...n}));Xo.displayName=Jc.displayName;var dn="Dialog",[Zc,Xw]=Fe(dn),[Eb,He]=Zc(dn),Qc=e=>{const{__scopeDialog:t,children:r,open:n,defaultOpen:o,onOpenChange:s,modal:a=!0}=e,c=d.useRef(null),l=d.useRef(null),[f,u]=ot({prop:n,defaultProp:o??!1,onChange:s,caller:dn});return i.jsx(Eb,{scope:t,triggerRef:c,contentRef:l,contentId:$e(),titleId:$e(),descriptionId:$e(),open:f,onOpenChange:u,onOpenToggle:d.useCallback(()=>u(p=>!p),[u]),modal:a,children:r})};Qc.displayName=dn;var el="DialogTrigger",tl=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=He(el,r),s=ie(t,o.triggerRef);return i.jsx(te.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Zo(o.open),...n,ref:s,onClick:H(e.onClick,o.onOpenToggle)})});tl.displayName=el;var Yo="DialogPortal",[Nb,rl]=Zc(Yo,{forceMount:void 0}),nl=e=>{const{__scopeDialog:t,forceMount:r,children:n,container:o}=e,s=He(Yo,t);return i.jsx(Nb,{scope:t,forceMount:r,children:d.Children.map(n,a=>i.jsx(Te,{present:r||s.open,children:i.jsx(jr,{asChild:!0,container:o,children:a})}))})};nl.displayName=Yo;var un="DialogOverlay",ol=d.forwardRef((e,t)=>{const r=rl(un,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,s=He(un,e.__scopeDialog);return s.modal?i.jsx(Te,{present:n||s.open,children:i.jsx(Ab,{...o,ref:t})}):null});ol.displayName=un;var Tb=Ie.createSlot("DialogOverlay.RemoveScroll"),Ab=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=He(un,r);return i.jsx(Zr,{as:Tb,allowPinchZoom:!0,shards:[o.contentRef],children:i.jsx(te.div,{"data-state":Zo(o.open),...n,ref:t,style:{pointerEvents:"auto",...n.style}})})}),vt="DialogContent",sl=d.forwardRef((e,t)=>{const r=rl(vt,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,s=He(vt,e.__scopeDialog);return i.jsx(Te,{present:n||s.open,children:s.modal?i.jsx(Pb,{...o,ref:t}):i.jsx(Ib,{...o,ref:t})})});sl.displayName=vt;var Pb=d.forwardRef((e,t)=>{const r=He(vt,e.__scopeDialog),n=d.useRef(null),o=ie(t,r.contentRef,n);return d.useEffect(()=>{const s=n.current;if(s)return Io(s)},[]),i.jsx(al,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:H(e.onCloseAutoFocus,s=>{var a;s.preventDefault(),(a=r.triggerRef.current)==null||a.focus()}),onPointerDownOutside:H(e.onPointerDownOutside,s=>{const a=s.detail.originalEvent,c=a.button===0&&a.ctrlKey===!0;(a.button===2||c)&&s.preventDefault()}),onFocusOutside:H(e.onFocusOutside,s=>s.preventDefault())})}),Ib=d.forwardRef((e,t)=>{const r=He(vt,e.__scopeDialog),n=d.useRef(!1),o=d.useRef(!1);return i.jsx(al,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var a,c;(a=e.onCloseAutoFocus)==null||a.call(e,s),s.defaultPrevented||(n.current||(c=r.triggerRef.current)==null||c.focus(),s.preventDefault()),n.current=!1,o.current=!1},onInteractOutside:s=>{var l,f;(l=e.onInteractOutside)==null||l.call(e,s),s.defaultPrevented||(n.current=!0,s.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const a=s.target;((f=r.triggerRef.current)==null?void 0:f.contains(a))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&o.current&&s.preventDefault()}})}),al=d.forwardRef((e,t)=>{const{__scopeDialog:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:s,...a}=e,c=He(vt,r),l=d.useRef(null),f=ie(t,l);return so(),i.jsxs(i.Fragment,{children:[i.jsx(Mr,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:s,children:i.jsx(Xt,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":Zo(c.open),...a,ref:f,onDismiss:()=>c.onOpenChange(!1)})}),i.jsxs(i.Fragment,{children:[i.jsx(_b,{titleId:c.titleId}),i.jsx(kb,{contentRef:l,descriptionId:c.descriptionId})]})]})}),Jo="DialogTitle",il=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=He(Jo,r);return i.jsx(te.h2,{id:o.titleId,...n,ref:t})});il.displayName=Jo;var cl="DialogDescription",ll=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=He(cl,r);return i.jsx(te.p,{id:o.descriptionId,...n,ref:t})});ll.displayName=cl;var dl="DialogClose",ul=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=He(dl,r);return i.jsx(te.button,{type:"button",...n,ref:t,onClick:H(e.onClick,()=>o.onOpenChange(!1))})});ul.displayName=dl;function Zo(e){return e?"open":"closed"}var fl="DialogTitleWarning",[Yw,pl]=Af(fl,{contentName:vt,titleName:Jo,docsSlug:"dialog"}),_b=({titleId:e})=>{const t=pl(fl),r=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
58
+ `)},Dg=0,Ft=[];function Lg(e){var t=d.useRef([]),r=d.useRef([0,0]),n=d.useRef(),o=d.useState(Dg++)[0],s=d.useState(Ai)[0],a=d.useRef(e);d.useEffect(function(){a.current=e},[e]),d.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var h=rg([e.lockRef.current],(e.shards||[]).map(Di),!0).filter(Boolean);return h.forEach(function(b){return b.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),h.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var c=d.useCallback(function(h,b){if("touches"in h&&h.touches.length===2||h.type==="wheel"&&h.ctrlKey)return!a.current.allowPinchZoom;var w=Zr(h),x=r.current,y="deltaX"in h?h.deltaX:x[0]-w[0],C="deltaY"in h?h.deltaY:x[1]-w[1],N,O=h.target,E=Math.abs(y)>Math.abs(C)?"h":"v";if("touches"in h&&E==="h"&&O.type==="range")return!1;var M=_i(E,O);if(!M)return!0;if(M?N=E:(N=E==="v"?"h":"v",M=_i(E,O)),!M)return!1;if(!n.current&&"changedTouches"in h&&(y||C)&&(n.current=N),!N)return!0;var F=n.current||N;return Og(F,b,h,F==="h"?y:C)},[]),l=d.useCallback(function(h){var b=h;if(!(!Ft.length||Ft[Ft.length-1]!==s)){var w="deltaY"in b?Mi(b):Zr(b),x=t.current.filter(function(N){return N.name===b.type&&(N.target===b.target||b.target===N.shadowParent)&&kg(N.delta,w)})[0];if(x&&x.should){b.cancelable&&b.preventDefault();return}if(!x){var y=(a.current.shards||[]).map(Di).filter(Boolean).filter(function(N){return N.contains(b.target)}),C=y.length>0?c(b,y[0]):!a.current.noIsolation;C&&b.cancelable&&b.preventDefault()}}},[]),f=d.useCallback(function(h,b,w,x){var y={name:h,delta:b,target:w,should:x,shadowParent:Fg(w)};t.current.push(y),setTimeout(function(){t.current=t.current.filter(function(C){return C!==y})},1)},[]),u=d.useCallback(function(h){r.current=Zr(h),n.current=void 0},[]),p=d.useCallback(function(h){f(h.type,Mi(h),h.target,c(h,e.lockRef.current))},[]),g=d.useCallback(function(h){f(h.type,Zr(h),h.target,c(h,e.lockRef.current))},[]);d.useEffect(function(){return Ft.push(s),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:g}),document.addEventListener("wheel",l,Lt),document.addEventListener("touchmove",l,Lt),document.addEventListener("touchstart",u,Lt),function(){Ft=Ft.filter(function(h){return h!==s}),document.removeEventListener("wheel",l,Lt),document.removeEventListener("touchmove",l,Lt),document.removeEventListener("touchstart",u,Lt)}},[]);var v=e.removeScrollBar,m=e.inert;return d.createElement(d.Fragment,null,m?d.createElement(s,{styles:Mg(o)}):null,v?d.createElement(Eg,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Fg(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const $g=ug(Ti,Lg);var Qr=d.forwardRef(function(e,t){return d.createElement(Yr,Je({},e,{ref:t,sideCar:$g}))});Qr.classNames=Yr.classNames;var Lo=["Enter"," "],Bg=["ArrowDown","PageUp","Home"],Li=["ArrowUp","PageDown","End"],Ug=[...Bg,...Li],Hg={ltr:[...Lo,"ArrowRight"],rtl:[...Lo,"ArrowLeft"]},zg={ltr:["ArrowLeft"],rtl:["ArrowRight"]},rr="Menu",[nr,Wg,Vg]=no(rr),[bt,Fi]=$e(rr,[Vg,kt,bi]),en=kt(),$i=bi(),[jg,vt]=bt(rr),[Kg,or]=bt(rr),Bi=e=>{const{__scopeMenu:t,open:r=!1,children:n,dir:o,onOpenChange:s,modal:a=!0}=e,c=en(t),[l,f]=d.useState(null),u=d.useRef(!1),p=we(s),g=Mr(o);return d.useEffect(()=>{const v=()=>{u.current=!0,document.addEventListener("pointerdown",m,{capture:!0,once:!0}),document.addEventListener("pointermove",m,{capture:!0,once:!0})},m=()=>u.current=!1;return document.addEventListener("keydown",v,{capture:!0}),()=>{document.removeEventListener("keydown",v,{capture:!0}),document.removeEventListener("pointerdown",m,{capture:!0}),document.removeEventListener("pointermove",m,{capture:!0})}},[]),i.jsx(Co,{...c,children:i.jsx(jg,{scope:t,open:r,onOpenChange:p,content:l,onContentChange:f,children:i.jsx(Kg,{scope:t,onClose:d.useCallback(()=>p(!1),[p]),isUsingKeyboardRef:u,dir:g,modal:a,children:n})})})};Bi.displayName=rr;var Rg="MenuAnchor",Fo=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e,o=en(r);return i.jsx(Eo,{...o,...n,ref:t})});Fo.displayName=Rg;var $o="MenuPortal",[Gg,Ui]=bt($o,{forceMount:void 0}),Hi=e=>{const{__scopeMenu:t,forceMount:r,children:n,container:o}=e,s=vt($o,t);return i.jsx(Gg,{scope:t,forceMount:r,children:i.jsx(Ae,{present:r||s.open,children:i.jsx(Kr,{asChild:!0,container:o,children:n})})})};Hi.displayName=$o;var Me="MenuContent",[qg,Bo]=bt(Me),zi=d.forwardRef((e,t)=>{const r=Ui(Me,e.__scopeMenu),{forceMount:n=r.forceMount,...o}=e,s=vt(Me,e.__scopeMenu),a=or(Me,e.__scopeMenu);return i.jsx(nr.Provider,{scope:e.__scopeMenu,children:i.jsx(Ae,{present:n||s.open,children:i.jsx(nr.Slot,{scope:e.__scopeMenu,children:a.modal?i.jsx(Xg,{...o,ref:t}):i.jsx(Yg,{...o,ref:t})})})})}),Xg=d.forwardRef((e,t)=>{const r=vt(Me,e.__scopeMenu),n=d.useRef(null),o=ae(t,n);return d.useEffect(()=>{const s=n.current;if(s)return _o(s)},[]),i.jsx(Uo,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:H(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})}),Yg=d.forwardRef((e,t)=>{const r=vt(Me,e.__scopeMenu);return i.jsx(Uo,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>r.onOpenChange(!1)})}),Jg=Ie.createSlot("MenuContent.ScrollLock"),Uo=d.forwardRef((e,t)=>{const{__scopeMenu:r,loop:n=!1,trapFocus:o,onOpenAutoFocus:s,onCloseAutoFocus:a,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:f,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:g,onDismiss:v,disableOutsideScroll:m,...h}=e,b=vt(Me,r),w=or(Me,r),x=en(r),y=$i(r),C=Wg(r),[N,O]=d.useState(null),E=d.useRef(null),M=ae(t,E,b.onContentChange),F=d.useRef(0),I=d.useRef(""),B=d.useRef(0),R=d.useRef(null),U=d.useRef("right"),D=d.useRef(0),z=m?Qr:d.Fragment,k=m?{as:Jg,allowPinchZoom:!0}:void 0,G=A=>{var W,V;const ee=I.current+A,q=C().filter(ce=>!ce.disabled),ie=document.activeElement,$=(W=q.find(ce=>ce.ref.current===ie))==null?void 0:W.textValue,j=q.map(ce=>ce.textValue),le=lm(j,ee,$),he=(V=q.find(ce=>ce.textValue===le))==null?void 0:V.ref.current;(function ce(K){I.current=K,window.clearTimeout(F.current),K!==""&&(F.current=window.setTimeout(()=>ce(""),1e3))})(ee),he&&setTimeout(()=>he.focus())};d.useEffect(()=>()=>window.clearTimeout(F.current),[]),ao();const L=d.useCallback(A=>{var q,ie;return U.current===((q=R.current)==null?void 0:q.side)&&um(A,(ie=R.current)==null?void 0:ie.area)},[]);return i.jsx(qg,{scope:r,searchRef:I,onItemEnter:d.useCallback(A=>{L(A)&&A.preventDefault()},[L]),onItemLeave:d.useCallback(A=>{var ee;L(A)||((ee=E.current)==null||ee.focus(),O(null))},[L]),onTriggerLeave:d.useCallback(A=>{L(A)&&A.preventDefault()},[L]),pointerGraceTimerRef:B,onPointerGraceIntentChange:d.useCallback(A=>{R.current=A},[]),children:i.jsx(z,{...k,children:i.jsx(Dr,{asChild:!0,trapped:o,onMountAutoFocus:H(s,A=>{var ee;A.preventDefault(),(ee=E.current)==null||ee.focus({preventScroll:!0})}),onUnmountAutoFocus:a,children:i.jsx(Jt,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:f,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:g,onDismiss:v,children:i.jsx(Jh,{asChild:!0,...y,dir:w.dir,orientation:"vertical",loop:n,currentTabStopId:N,onCurrentTabStopIdChange:O,onEntryFocus:H(l,A=>{w.isUsingKeyboardRef.current||A.preventDefault()}),preventScrollOnEntryFocus:!0,children:i.jsx(No,{role:"menu","aria-orientation":"vertical","data-state":oc(b.open),"data-radix-menu-content":"",dir:w.dir,...x,...h,ref:M,style:{outline:"none",...h.style},onKeyDown:H(h.onKeyDown,A=>{const q=A.target.closest("[data-radix-menu-content]")===A.currentTarget,ie=A.ctrlKey||A.altKey||A.metaKey,$=A.key.length===1;q&&(A.key==="Tab"&&A.preventDefault(),!ie&&$&&G(A.key));const j=E.current;if(A.target!==j||!Ug.includes(A.key))return;A.preventDefault();const he=C().filter(W=>!W.disabled).map(W=>W.ref.current);Li.includes(A.key)&&he.reverse(),im(he)}),onBlur:H(e.onBlur,A=>{A.currentTarget.contains(A.target)||(window.clearTimeout(F.current),I.current="")}),onPointerMove:H(e.onPointerMove,ar(A=>{const ee=A.target,q=D.current!==A.clientX;if(A.currentTarget.contains(ee)&&q){const ie=A.clientX>D.current?"right":"left";U.current=ie,D.current=A.clientX}}))})})})})})})});zi.displayName=Me;var Zg="MenuGroup",Ho=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{role:"group",...n,ref:t})});Ho.displayName=Zg;var Qg="MenuLabel",Wi=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{...n,ref:t})});Wi.displayName=Qg;var tn="MenuItem",Vi="menu.itemSelect",rn=d.forwardRef((e,t)=>{const{disabled:r=!1,onSelect:n,...o}=e,s=d.useRef(null),a=or(tn,e.__scopeMenu),c=Bo(tn,e.__scopeMenu),l=ae(t,s),f=d.useRef(!1),u=()=>{const p=s.current;if(!r&&p){const g=new CustomEvent(Vi,{bubbles:!0,cancelable:!0});p.addEventListener(Vi,v=>n==null?void 0:n(v),{once:!0}),va(p,g),g.defaultPrevented?f.current=!1:a.onClose()}};return i.jsx(ji,{...o,ref:l,disabled:r,onClick:H(e.onClick,u),onPointerDown:p=>{var g;(g=e.onPointerDown)==null||g.call(e,p),f.current=!0},onPointerUp:H(e.onPointerUp,p=>{var g;f.current||(g=p.currentTarget)==null||g.click()}),onKeyDown:H(e.onKeyDown,p=>{const g=c.searchRef.current!=="";r||g&&p.key===" "||Lo.includes(p.key)&&(p.currentTarget.click(),p.preventDefault())})})});rn.displayName=tn;var ji=d.forwardRef((e,t)=>{const{__scopeMenu:r,disabled:n=!1,textValue:o,...s}=e,a=Bo(tn,r),c=$i(r),l=d.useRef(null),f=ae(t,l),[u,p]=d.useState(!1),[g,v]=d.useState("");return d.useEffect(()=>{const m=l.current;m&&v((m.textContent??"").trim())},[s.children]),i.jsx(nr.ItemSlot,{scope:r,disabled:n,textValue:o??g,children:i.jsx(Zh,{asChild:!0,...c,focusable:!n,children:i.jsx(te.div,{role:"menuitem","data-highlighted":u?"":void 0,"aria-disabled":n||void 0,"data-disabled":n?"":void 0,...s,ref:f,onPointerMove:H(e.onPointerMove,ar(m=>{n?a.onItemLeave(m):(a.onItemEnter(m),m.defaultPrevented||m.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:H(e.onPointerLeave,ar(m=>a.onItemLeave(m))),onFocus:H(e.onFocus,()=>p(!0)),onBlur:H(e.onBlur,()=>p(!1))})})})}),em="MenuCheckboxItem",Ki=d.forwardRef((e,t)=>{const{checked:r=!1,onCheckedChange:n,...o}=e;return i.jsx(Yi,{scope:e.__scopeMenu,checked:r,children:i.jsx(rn,{role:"menuitemcheckbox","aria-checked":nn(r)?"mixed":r,...o,ref:t,"data-state":Wo(r),onSelect:H(o.onSelect,()=>n==null?void 0:n(nn(r)?!0:!r),{checkForDefaultPrevented:!1})})})});Ki.displayName=em;var Ri="MenuRadioGroup",[tm,rm]=bt(Ri,{value:void 0,onValueChange:()=>{}}),Gi=d.forwardRef((e,t)=>{const{value:r,onValueChange:n,...o}=e,s=we(n);return i.jsx(tm,{scope:e.__scopeMenu,value:r,onValueChange:s,children:i.jsx(Ho,{...o,ref:t})})});Gi.displayName=Ri;var qi="MenuRadioItem",Xi=d.forwardRef((e,t)=>{const{value:r,...n}=e,o=rm(qi,e.__scopeMenu),s=r===o.value;return i.jsx(Yi,{scope:e.__scopeMenu,checked:s,children:i.jsx(rn,{role:"menuitemradio","aria-checked":s,...n,ref:t,"data-state":Wo(s),onSelect:H(n.onSelect,()=>{var a;return(a=o.onValueChange)==null?void 0:a.call(o,r)},{checkForDefaultPrevented:!1})})})});Xi.displayName=qi;var zo="MenuItemIndicator",[Yi,nm]=bt(zo,{checked:!1}),Ji=d.forwardRef((e,t)=>{const{__scopeMenu:r,forceMount:n,...o}=e,s=nm(zo,r);return i.jsx(Ae,{present:n||nn(s.checked)||s.checked===!0,children:i.jsx(te.span,{...o,ref:t,"data-state":Wo(s.checked)})})});Ji.displayName=zo;var om="MenuSeparator",Zi=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e;return i.jsx(te.div,{role:"separator","aria-orientation":"horizontal",...n,ref:t})});Zi.displayName=om;var sm="MenuArrow",Qi=d.forwardRef((e,t)=>{const{__scopeMenu:r,...n}=e,o=en(r);return i.jsx(To,{...o,...n,ref:t})});Qi.displayName=sm;var am="MenuSub",[qw,ec]=bt(am),sr="MenuSubTrigger",tc=d.forwardRef((e,t)=>{const r=vt(sr,e.__scopeMenu),n=or(sr,e.__scopeMenu),o=ec(sr,e.__scopeMenu),s=Bo(sr,e.__scopeMenu),a=d.useRef(null),{pointerGraceTimerRef:c,onPointerGraceIntentChange:l}=s,f={__scopeMenu:e.__scopeMenu},u=d.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=null},[]);return d.useEffect(()=>u,[u]),d.useEffect(()=>{const p=c.current;return()=>{window.clearTimeout(p),l(null)}},[c,l]),i.jsx(Fo,{asChild:!0,...f,children:i.jsx(ji,{id:o.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":o.contentId,"data-state":oc(r.open),...e,ref:Zn(t,o.onTriggerChange),onClick:p=>{var g;(g=e.onClick)==null||g.call(e,p),!(e.disabled||p.defaultPrevented)&&(p.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:H(e.onPointerMove,ar(p=>{s.onItemEnter(p),!p.defaultPrevented&&!e.disabled&&!r.open&&!a.current&&(s.onPointerGraceIntentChange(null),a.current=window.setTimeout(()=>{r.onOpenChange(!0),u()},100))})),onPointerLeave:H(e.onPointerLeave,ar(p=>{var v,m;u();const g=(v=r.content)==null?void 0:v.getBoundingClientRect();if(g){const h=(m=r.content)==null?void 0:m.dataset.side,b=h==="right",w=b?-5:5,x=g[b?"left":"right"],y=g[b?"right":"left"];s.onPointerGraceIntentChange({area:[{x:p.clientX+w,y:p.clientY},{x,y:g.top},{x:y,y:g.top},{x:y,y:g.bottom},{x,y:g.bottom}],side:h}),window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(p),p.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:H(e.onKeyDown,p=>{var v;const g=s.searchRef.current!=="";e.disabled||g&&p.key===" "||Hg[n.dir].includes(p.key)&&(r.onOpenChange(!0),(v=r.content)==null||v.focus(),p.preventDefault())})})})});tc.displayName=sr;var rc="MenuSubContent",nc=d.forwardRef((e,t)=>{const r=Ui(Me,e.__scopeMenu),{forceMount:n=r.forceMount,...o}=e,s=vt(Me,e.__scopeMenu),a=or(Me,e.__scopeMenu),c=ec(rc,e.__scopeMenu),l=d.useRef(null),f=ae(t,l);return i.jsx(nr.Provider,{scope:e.__scopeMenu,children:i.jsx(Ae,{present:n||s.open,children:i.jsx(nr.Slot,{scope:e.__scopeMenu,children:i.jsx(Uo,{id:c.contentId,"aria-labelledby":c.triggerId,...o,ref:f,align:"start",side:a.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:u=>{var p;a.isUsingKeyboardRef.current&&((p=l.current)==null||p.focus()),u.preventDefault()},onCloseAutoFocus:u=>u.preventDefault(),onFocusOutside:H(e.onFocusOutside,u=>{u.target!==c.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:H(e.onEscapeKeyDown,u=>{a.onClose(),u.preventDefault()}),onKeyDown:H(e.onKeyDown,u=>{var v;const p=u.currentTarget.contains(u.target),g=zg[a.dir].includes(u.key);p&&g&&(s.onOpenChange(!1),(v=c.trigger)==null||v.focus(),u.preventDefault())})})})})})});nc.displayName=rc;function oc(e){return e?"open":"closed"}function nn(e){return e==="indeterminate"}function Wo(e){return nn(e)?"indeterminate":e?"checked":"unchecked"}function im(e){const t=document.activeElement;for(const r of e)if(r===t||(r.focus(),document.activeElement!==t))return}function cm(e,t){return e.map((r,n)=>e[(t+n)%e.length])}function lm(e,t,r){const o=t.length>1&&Array.from(t).every(f=>f===t[0])?t[0]:t,s=r?e.indexOf(r):-1;let a=cm(e,Math.max(s,0));o.length===1&&(a=a.filter(f=>f!==r));const l=a.find(f=>f.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function dm(e,t){const{x:r,y:n}=e;let o=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],f=c.x,u=c.y,p=l.x,g=l.y;u>n!=g>n&&r<(p-f)*(n-u)/(g-u)+f&&(o=!o)}return o}function um(e,t){if(!t)return!1;const r={x:e.clientX,y:e.clientY};return dm(r,t)}function ar(e){return t=>t.pointerType==="mouse"?e(t):void 0}var fm=Bi,pm=Fo,hm=Hi,gm=zi,mm=Ho,bm=Wi,vm=rn,wm=Ki,ym=Gi,xm=Xi,Sm=Ji,Cm=Zi,Em=Qi,Nm=tc,Tm=nc,on="DropdownMenu",[Am,Xw]=$e(on,[Fi]),Se=Fi(),[Pm,sc]=Am(on),ac=e=>{const{__scopeDropdownMenu:t,children:r,dir:n,open:o,defaultOpen:s,onOpenChange:a,modal:c=!0}=e,l=Se(t),f=d.useRef(null),[u,p]=ot({prop:o,defaultProp:s??!1,onChange:a,caller:on});return i.jsx(Pm,{scope:t,triggerId:Be(),triggerRef:f,contentId:Be(),open:u,onOpenChange:p,onOpenToggle:d.useCallback(()=>p(g=>!g),[p]),modal:c,children:i.jsx(fm,{...l,open:u,onOpenChange:p,dir:n,modal:c,children:r})})};ac.displayName=on;var ic="DropdownMenuTrigger",cc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,disabled:n=!1,...o}=e,s=sc(ic,r),a=Se(r);return i.jsx(pm,{asChild:!0,...a,children:i.jsx(te.button,{type:"button",id:s.triggerId,"aria-haspopup":"menu","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":s.open?"open":"closed","data-disabled":n?"":void 0,disabled:n,...o,ref:Zn(t,s.triggerRef),onPointerDown:H(e.onPointerDown,c=>{!n&&c.button===0&&c.ctrlKey===!1&&(s.onOpenToggle(),s.open||c.preventDefault())}),onKeyDown:H(e.onKeyDown,c=>{n||(["Enter"," "].includes(c.key)&&s.onOpenToggle(),c.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(c.key)&&c.preventDefault())})})})});cc.displayName=ic;var Im="DropdownMenuPortal",lc=e=>{const{__scopeDropdownMenu:t,...r}=e,n=Se(t);return i.jsx(hm,{...n,...r})};lc.displayName=Im;var dc="DropdownMenuContent",uc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=sc(dc,r),s=Se(r),a=d.useRef(!1);return i.jsx(gm,{id:o.contentId,"aria-labelledby":o.triggerId,...s,...n,ref:t,onCloseAutoFocus:H(e.onCloseAutoFocus,c=>{var l;a.current||(l=o.triggerRef.current)==null||l.focus(),a.current=!1,c.preventDefault()}),onInteractOutside:H(e.onInteractOutside,c=>{const l=c.detail.originalEvent,f=l.button===0&&l.ctrlKey===!0,u=l.button===2||f;(!o.modal||u)&&(a.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});uc.displayName=dc;var _m="DropdownMenuGroup",Om=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(mm,{...o,...n,ref:t})});Om.displayName=_m;var km="DropdownMenuLabel",fc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(bm,{...o,...n,ref:t})});fc.displayName=km;var Mm="DropdownMenuItem",pc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(vm,{...o,...n,ref:t})});pc.displayName=Mm;var Dm="DropdownMenuCheckboxItem",hc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(wm,{...o,...n,ref:t})});hc.displayName=Dm;var Lm="DropdownMenuRadioGroup",Fm=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(ym,{...o,...n,ref:t})});Fm.displayName=Lm;var $m="DropdownMenuRadioItem",gc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(xm,{...o,...n,ref:t})});gc.displayName=$m;var Bm="DropdownMenuItemIndicator",mc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(Sm,{...o,...n,ref:t})});mc.displayName=Bm;var Um="DropdownMenuSeparator",bc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(Cm,{...o,...n,ref:t})});bc.displayName=Um;var Hm="DropdownMenuArrow",zm=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(Em,{...o,...n,ref:t})});zm.displayName=Hm;var Wm="DropdownMenuSubTrigger",vc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(Nm,{...o,...n,ref:t})});vc.displayName=Wm;var Vm="DropdownMenuSubContent",wc=d.forwardRef((e,t)=>{const{__scopeDropdownMenu:r,...n}=e,o=Se(r);return i.jsx(Tm,{...o,...n,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});wc.displayName=Vm;var jm=ac,Km=cc,Rm=lc,yc=uc,xc=fc,Sc=pc,Cc=hc,Ec=gc,Nc=mc,Tc=bc,Ac=vc,Pc=wc;const Gm=jm,qm=Km,Xm=d.forwardRef(({className:e,inset:t,children:r,...n},o)=>i.jsxs(Ac,{ref:o,className:P("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...n,children:[r,i.jsx(X.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Xm.displayName=Ac.displayName;const Ym=d.forwardRef(({className:e,...t},r)=>i.jsx(Pc,{ref:r,className:P("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));Ym.displayName=Pc.displayName;const Ic=d.forwardRef(({className:e,sideOffset:t=4,...r},n)=>i.jsx(Rm,{children:i.jsx(yc,{ref:n,sideOffset:t,className:P("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r})}));Ic.displayName=yc.displayName;const Vo=d.forwardRef(({className:e,inset:t,...r},n)=>i.jsx(Sc,{ref:n,className:P("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...r}));Vo.displayName=Sc.displayName;const Jm=d.forwardRef(({className:e,children:t,checked:r,...n},o)=>i.jsxs(Cc,{ref:o,className:P("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:r,...n,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(Nc,{children:i.jsx(X.Check,{className:"h-4 w-4"})})}),t]}));Jm.displayName=Cc.displayName;const Zm=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Ec,{ref:n,className:P("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(Nc,{children:i.jsx(X.Circle,{className:"h-2 w-2 fill-current"})})}),t]}));Zm.displayName=Ec.displayName;const Qm=d.forwardRef(({className:e,inset:t,...r},n)=>i.jsx(xc,{ref:n,className:P("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...r}));Qm.displayName=xc.displayName;const eb=d.forwardRef(({className:e,...t},r)=>i.jsx(Tc,{ref:r,className:P("-mx-1 my-1 h-px bg-muted",e),...t}));eb.displayName=Tc.displayName;function ir({className:e="",placeholder:t="Type your message...",autoFocus:r=!0,maxHeight:n=void 0,streamingDebounceMs:o=40,enableFileUpload:s=!0,enableExcelUpload:a=!1,enableMessageEditing:c=!0,customStyles:l={},onMessageSent:f,onExcelUploadSuccess:u,onError:p}){const{currentThreadId:g,messages:v,isStreaming:m,streamingAssistantId:h,error:b,send:w,stop:x,lastCheckpointId:y,listCheckpoints:C,navigateToCheckpoint:N,returnToLatest:O,hasMoreHistory:E,isLoadingHistory:M,loadOlderMessages:F,api:I}=Jn(),[B,R]=T.useState(""),[U,D]=T.useState(null),[z,k]=T.useState(null),[G,L]=T.useState([]),[A,ee]=T.useState(!1),[q,ie]=T.useState(null),[$,j]=T.useState(null),[le,he]=T.useState(!1),[W,V]=T.useState(null),[ce,K]=T.useState([]),[Y,ne]=T.useState(null),me=T.useRef(null),pe=T.useRef(null),Q=T.useRef(null),J=T.useRef(null),ge=T.useRef(null),ke=T.useRef(!1),Ce=T.useRef(!0),pr=T.useRef(0),ut=T.useRef(null),[Ht,hs]=T.useState("desktop");T.useEffect(()=>{const _=()=>{const Z=window.innerWidth;hs(Z<640?"phone":Z<1024?"tablet":"desktop")};return _(),window.addEventListener("resize",_),()=>window.removeEventListener("resize",_)},[]),T.useEffect(()=>{let _=!1;if(!g){K([]),ne(null),ut.current=null;return}const Z={threadId:g,checkpointId:y??null},de=ut.current;if(!(de&&de.threadId===Z.threadId&&de.checkpointId===Z.checkpointId))return ut.current=Z,C(g).then(ue=>{if(_)return;const je=((ue==null?void 0:ue.checkpoints)??[]).slice().sort((ft,Mn)=>new Date(Mn.createdAt).getTime()-new Date(ft.createdAt).getTime());K(je),ne(ft=>{var Mn;return ft??((Mn=je[0])==null?void 0:Mn.checkpointId)??null})}).catch(()=>{_||(K([]),ut.current=null)}),()=>{_=!0}},[g,y,C]),T.useEffect(()=>{y&&ne(y)},[y]);const zt=T.useCallback(async()=>{if(!E||M)return;const _=ge.current;if(!_)return;const Z=_.scrollHeight,de=_.scrollTop;ke.current=!0;try{await F()}catch(ue){console.warn("loadOlderMessages failed",ue)}finally{requestAnimationFrame(()=>{const ue=ge.current;if(!ue){ke.current=!1;return}const je=ue.scrollHeight;ue.scrollTop=de+(je-Z);const ft=je-ue.scrollTop-ue.clientHeight;Ce.current=ft<=32,ke.current=!1})}},[E,M,F]);T.useEffect(()=>{const _=ge.current;if(!_)return;const Z=()=>{_.scrollTop<=80&&zt();const je=_.scrollHeight-_.scrollTop-_.clientHeight;Ce.current=je<=80};return _.addEventListener("scroll",Z),()=>_.removeEventListener("scroll",Z)},[zt]),T.useEffect(()=>{v.length<pr.current&&(Ce.current=!0),pr.current=v.length},[v.length]),T.useEffect(()=>{const _=ge.current;_&&(ke.current||Ce.current&&(_.scrollTop=_.scrollHeight,Ce.current=!0))},[v]),T.useEffect(()=>{var _;r&&((_=pe.current)==null||_.focus())},[r]),T.useEffect(()=>{(async()=>{try{const Z=await I.getAgent("default");V(Z.uiDefaultMessage||null)}catch(Z){console.warn("Failed to fetch default message:",Z),V(null)}})()},[I]),T.useEffect(()=>{b&&!le&&(p==null||p(b))},[b,le,p]);const gs=_=>{if(_.length>At)return`Message too long (${_.length}/${At} characters)`;try{return sp(_),null}catch(Z){return(Z==null?void 0:Z.message)||"Invalid message"}},Pn=_=>{const Z=_.content||[],de=Z.filter(ue=>ue.type==="text").map(ue=>ue.text).join("");if(de)return de;try{return JSON.stringify(Z,null,2)}catch{return String(Z)}},In=async()=>{const _=B.trim();if(!(!_&&G.length===0)){if(_){const Z=gs(_);if(Z){k(Z);return}}try{await w(_,{checkpointId:Y||y||void 0,payloadExtras:U?{edit:!0,originalMessageId:U}:void 0,attachments:G}),f==null||f(_),R(""),k(null),L([]),D(null),pe.current&&(pe.current.style.height="auto")}catch(Z){const de=(Z==null?void 0:Z.message)||"Failed to send message";k(de),p==null||p(de)}}},ms=(_,Z)=>{c&&(D(_),R(Z),k(null),setTimeout(()=>{pe.current&&(pe.current.focus(),pe.current.style.height="auto",pe.current.style.height=pe.current.scrollHeight+"px")},0))},hr=()=>{D(null),R(""),k(null),pe.current&&(pe.current.style.height="auto")},_n=_=>{_.key==="Enter"&&!_.shiftKey?(_.preventDefault(),In()):_.key==="Escape"&&U&&(_.preventDefault(),hr())},se=_=>{const Z=Array.from(_.target.files||[]);L(de=>[...de,...Z])},xe=_=>L(Z=>Z.filter((de,ue)=>_!==ue)),Pe=async _=>{const Z=(_.target.files||[])[0];if(Z){ie(null),j(null),ee(!0);try{const de=await I.uploadExcel(Z),ue=de.sheets.map(ft=>`${ft.sheetName} -> ${ft.tableName}`).join(", "),je=ue?`Uploaded ${Z.name} (${de.sheets.length} sheet${de.sheets.length===1?"":"s"}: ${ue})`:`Uploaded ${Z.name}`;j(je),u==null||u({file:Z,response:de})}catch(de){const ue=de instanceof Error?de.message:"Failed to upload Excel file";console.error("Excel upload failed",de),ie(ue),p==null||p(ue)}finally{ee(!1),_.target.value=""}}},Ve=_=>{if(!_)return"Unknown";const Z=Date.parse(_);return Number.isNaN(Z)?_:new Date(Z).toLocaleString()},rt=async _=>{if(g){if(!_){await O(),ne(null);return}await N(_),ne(_)}},On=`flex flex-1 w-full flex-col min-h-0 min-w-0 max-h-full overflow-hidden bg-transparent ${e} ${l.container||""}`,kn=`flex-1 min-h-0 min-w-0 max-h-full w-full overflow-y-auto overflow-x-auto overscroll-contain break-words break-anywhere p-4 space-y-4 bg-transparent ${l.messagesArea||""}`,bs=`flex-shrink-0 w-full border-t p-4 bg-transparent ${l.inputArea||""}`;return i.jsxs("div",{className:On,children:[!!b&&!le&&i.jsxs("div",{className:"flex-shrink-0 bg-red-50 border border-red-200 text-red-800 px-4 py-2 text-sm flex items-center justify-between",children:[i.jsx("span",{children:b}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>he(!0),className:"text-red-800 hover:bg-red-100","aria-label":"Dismiss error",children:i.jsx(X.X,{size:16})})]}),g&&ce.length>0&&i.jsxs("div",{className:"flex-shrink-0 flex items-center gap-2 px-4 py-2 border-b border-border bg-muted/60 text-xs dark:bg-muted/50",children:[i.jsx("span",{className:"opacity-70",children:"Checkpoint:"}),i.jsxs("select",{className:"border border-border rounded px-2 py-1 text-xs bg-card text-foreground focus:outline-none focus:ring-1 focus:ring-ring dark:bg-secondary",value:Y??"",onChange:_=>{const Z=_.target.value||null;rt(Z)},children:[i.jsx("option",{value:"",children:"Latest"}),ce.map(_=>i.jsxs("option",{value:_.checkpointId,children:[Ve(_.createdAt),_.preview?` — ${_.preview.slice(0,40)}`:""]},_.checkpointId))]})]}),i.jsxs("div",{ref:ge,className:kn,style:n?{maxHeight:n}:void 0,children:[v.length===0?i.jsx("div",{className:"flex items-center justify-center py-8 text-muted-foreground text-center max-w-md mx-auto",children:W||"No messages yet. Start a conversation!"}):i.jsxs(i.Fragment,{children:[(M||!E)&&i.jsx("div",{className:"flex justify-center py-2 text-xs text-muted-foreground",children:M?i.jsx(X.Loader2,{className:"h-4 w-4 animate-spin"}):"You've reached the beginning"}),v.map((_,Z)=>i.jsx(Ea,{message:_,messageIndex:Z,isStreamingMessage:m&&h===_.id,streamingDebounceMs:o,isEditing:U===_.id,showActions:c,showTimestamp:!1,showAgentName:!0,layoutSize:Ht,truncateToolMessages:!1,toolMessagePreviewLength:200,onEdit:(de,ue)=>ms(de,ue),onRegenerate:()=>{const de=[...v].reverse().find(je=>je.role==="user"),ue=de?Pn(de):"";ue&&w(ue,{checkpointId:Y||y||void 0})},onCancelEdit:hr},_.id||Z))]}),i.jsx("div",{ref:me})]}),i.jsxs("div",{className:bs,children:[U&&i.jsx("div",{className:"mb-3 p-3 bg-blue-50 border border-blue-200 rounded-lg",children:i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(X.Edit3,{size:16,className:"text-blue-600"}),i.jsx("span",{className:"text-sm font-medium text-blue-800",children:"Editing message"})]}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:hr,className:"text-blue-600 hover:bg-blue-100",children:i.jsx(X.X,{size:16})})]})}),(s||a)&&i.jsxs("div",{className:"mb-3 space-y-3",children:[s&&i.jsxs(i.Fragment,{children:[i.jsx("input",{ref:Q,type:"file",multiple:!0,onChange:_=>se(_),className:"hidden"}),G.length>0&&i.jsx("div",{className:"flex flex-wrap gap-2",children:G.map((_,Z)=>i.jsxs("div",{className:"flex items-center gap-2 bg-gray-100 dark:bg-gray-800 rounded-lg px-3 py-2 text-sm text-gray-900 dark:text-gray-100",children:[i.jsx(X.Paperclip,{size:14}),i.jsx("span",{className:"truncate max-w-[150px]",children:_.name}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>xe(Z),className:"h-4 w-4 p-0 text-gray-500 dark:text-gray-400 hover:text-red-500 dark:hover:text-red-400","aria-label":`Remove ${_.name}`,children:i.jsx(X.X,{size:12})})]},Z))})]}),a&&i.jsxs(i.Fragment,{children:[i.jsx("input",{ref:J,type:"file",accept:".xls,.xlsx,.xlsm",onChange:Pe,className:"hidden"}),A&&i.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[i.jsx(X.Loader2,{className:"h-4 w-4 animate-spin"})," Uploading Excel file..."]}),$&&!A&&i.jsx("div",{className:"text-sm rounded border border-emerald-200 bg-emerald-50 px-3 py-2 text-emerald-700",children:$}),q&&!A&&i.jsx("div",{className:"text-sm rounded border border-red-200 bg-red-50 px-3 py-2 text-red-600",children:q})]})]}),z&&i.jsx("div",{className:"mb-3 text-sm text-red-600 bg-red-50 border border-red-200 rounded px-3 py-2",children:z}),i.jsxs("div",{className:"flex items-end gap-2",children:[(s||a)&&i.jsxs(Gm,{children:[i.jsx(qm,{asChild:!0,children:i.jsx(fe,{type:"button",size:"icon",variant:"outline",disabled:m,title:"More input actions",className:l.moreButton||"",children:i.jsx(X.Plus,{size:16})})}),i.jsxs(Ic,{align:"start",sideOffset:6,className:"w-52",children:[s&&i.jsxs(Vo,{onClick:()=>{var _;return(_=Q.current)==null?void 0:_.click()},className:"cursor-pointer",children:[i.jsx(X.Paperclip,{className:"h-4 w-4 mr-2"})," Attach files or images"]}),a&&i.jsxs(Vo,{onClick:()=>{var _;A||(_=J.current)==null||_.click()},className:`cursor-pointer ${A?"opacity-60 pointer-events-none":""}`,children:[i.jsx(X.FileSpreadsheet,{className:"h-4 w-4 mr-2"})," Upload Excel file"]})]})]}),i.jsx("div",{className:"flex-1",children:i.jsx(ga,{ref:pe,value:B,onChange:_=>{R(_.target.value),k(null),pe.current&&(pe.current.style.height="auto",pe.current.style.height=`${pe.current.scrollHeight}px`)},onKeyDown:_n,placeholder:U?"Edit your message...":t,className:`resize-none min-h-[44px] max-h-[20rem] w-full transition-colors ${U?"border-blue-400 bg-blue-50 text-blue-900 dark:border-blue-500 dark:bg-blue-950/60 dark:text-blue-50":""} ${z?"border-red-400":""} ${l.textarea||""}`,disabled:!1,maxLength:At,rows:1})}),i.jsx("div",{children:m?i.jsx(fe,{type:"button",onClick:x,size:"icon",variant:"outline",className:"shrink-0",title:"Stop generating",children:i.jsx(X.Square,{size:16})}):i.jsx(fe,{type:"button",onClick:In,size:"icon",disabled:!B.trim()&&G.length===0,className:`shrink-0 ${G.length>0?"bg-blue-500 hover:bg-blue-600 text-white":""} ${l.sendButton||""}`,title:U?"Save changes":"Send message",children:i.jsx(X.Send,{size:16})})})]}),B.length>At*.8&&i.jsxs("div",{className:"mt-2 text-xs text-gray-500 text-right",children:[B.length,"/",At]})]})]})}const cr=d.forwardRef(({className:e,type:t,...r},n)=>i.jsx("input",{type:t,className:P("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...r}));cr.displayName="Input";function jo(e,[t,r]){return Math.min(r,Math.max(t,e))}function tb(e,t){return d.useReducer((r,n)=>t[r][n]??r,e)}var Ko="ScrollArea",[_c,Yw]=$e(Ko),[rb,De]=_c(Ko),Oc=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,type:n="hover",dir:o,scrollHideDelay:s=600,...a}=e,[c,l]=d.useState(null),[f,u]=d.useState(null),[p,g]=d.useState(null),[v,m]=d.useState(null),[h,b]=d.useState(null),[w,x]=d.useState(0),[y,C]=d.useState(0),[N,O]=d.useState(!1),[E,M]=d.useState(!1),F=ae(t,B=>l(B)),I=Mr(o);return i.jsx(rb,{scope:r,type:n,dir:I,scrollHideDelay:s,scrollArea:c,viewport:f,onViewportChange:u,content:p,onContentChange:g,scrollbarX:v,onScrollbarXChange:m,scrollbarXEnabled:N,onScrollbarXEnabledChange:O,scrollbarY:h,onScrollbarYChange:b,scrollbarYEnabled:E,onScrollbarYEnabledChange:M,onCornerWidthChange:x,onCornerHeightChange:C,children:i.jsx(te.div,{dir:I,...a,ref:F,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":y+"px",...e.style}})})});Oc.displayName=Ko;var kc="ScrollAreaViewport",Mc=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,children:n,nonce:o,...s}=e,a=De(kc,r),c=d.useRef(null),l=ae(t,c,a.onViewportChange);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),i.jsx(te.div,{"data-radix-scroll-area-viewport":"",...s,ref:l,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:i.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});Mc.displayName=kc;var Ze="ScrollAreaScrollbar",Ro=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=De(Ze,e.__scopeScrollArea),{onScrollbarXEnabledChange:s,onScrollbarYEnabledChange:a}=o,c=e.orientation==="horizontal";return d.useEffect(()=>(c?s(!0):a(!0),()=>{c?s(!1):a(!1)}),[c,s,a]),o.type==="hover"?i.jsx(nb,{...n,ref:t,forceMount:r}):o.type==="scroll"?i.jsx(ob,{...n,ref:t,forceMount:r}):o.type==="auto"?i.jsx(Dc,{...n,ref:t,forceMount:r}):o.type==="always"?i.jsx(Go,{...n,ref:t}):null});Ro.displayName=Ze;var nb=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=De(Ze,e.__scopeScrollArea),[s,a]=d.useState(!1);return d.useEffect(()=>{const c=o.scrollArea;let l=0;if(c){const f=()=>{window.clearTimeout(l),a(!0)},u=()=>{l=window.setTimeout(()=>a(!1),o.scrollHideDelay)};return c.addEventListener("pointerenter",f),c.addEventListener("pointerleave",u),()=>{window.clearTimeout(l),c.removeEventListener("pointerenter",f),c.removeEventListener("pointerleave",u)}}},[o.scrollArea,o.scrollHideDelay]),i.jsx(Ae,{present:r||s,children:i.jsx(Dc,{"data-state":s?"visible":"hidden",...n,ref:t})})}),ob=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=De(Ze,e.__scopeScrollArea),s=e.orientation==="horizontal",a=ln(()=>l("SCROLL_END"),100),[c,l]=tb("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return d.useEffect(()=>{if(c==="idle"){const f=window.setTimeout(()=>l("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(f)}},[c,o.scrollHideDelay,l]),d.useEffect(()=>{const f=o.viewport,u=s?"scrollLeft":"scrollTop";if(f){let p=f[u];const g=()=>{const v=f[u];p!==v&&(l("SCROLL"),a()),p=v};return f.addEventListener("scroll",g),()=>f.removeEventListener("scroll",g)}},[o.viewport,s,l,a]),i.jsx(Ae,{present:r||c!=="hidden",children:i.jsx(Go,{"data-state":c==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:H(e.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:H(e.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),Dc=d.forwardRef((e,t)=>{const r=De(Ze,e.__scopeScrollArea),{forceMount:n,...o}=e,[s,a]=d.useState(!1),c=e.orientation==="horizontal",l=ln(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;a(c?f:u)}},10);return $t(r.viewport,l),$t(r.content,l),i.jsx(Ae,{present:n||s,children:i.jsx(Go,{"data-state":s?"visible":"hidden",...o,ref:t})})}),Go=d.forwardRef((e,t)=>{const{orientation:r="vertical",...n}=e,o=De(Ze,e.__scopeScrollArea),s=d.useRef(null),a=d.useRef(0),[c,l]=d.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=Uc(c.viewport,c.content),u={...n,sizes:c,onSizesChange:l,hasThumb:f>0&&f<1,onThumbChange:g=>s.current=g,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:g=>a.current=g};function p(g,v){return db(g,a.current,c,v)}return r==="horizontal"?i.jsx(sb,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&s.current){const g=o.viewport.scrollLeft,v=Hc(g,c,o.dir);s.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{o.viewport&&(o.viewport.scrollLeft=g)},onDragScroll:g=>{o.viewport&&(o.viewport.scrollLeft=p(g,o.dir))}}):r==="vertical"?i.jsx(ab,{...u,ref:t,onThumbPositionChange:()=>{if(o.viewport&&s.current){const g=o.viewport.scrollTop,v=Hc(g,c);s.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:g=>{o.viewport&&(o.viewport.scrollTop=g)},onDragScroll:g=>{o.viewport&&(o.viewport.scrollTop=p(g))}}):null}),sb=d.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,s=De(Ze,e.__scopeScrollArea),[a,c]=d.useState(),l=d.useRef(null),f=ae(t,l,s.onScrollbarXChange);return d.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),i.jsx(Fc,{"data-orientation":"horizontal",...o,ref:f,sizes:r,style:{bottom:0,left:s.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:s.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":cn(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,p)=>{if(s.viewport){const g=s.viewport.scrollLeft+u.deltaX;e.onWheelScroll(g),Wc(g,p)&&u.preventDefault()}},onResize:()=>{l.current&&s.viewport&&a&&n({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:l.current.clientWidth,paddingStart:an(a.paddingLeft),paddingEnd:an(a.paddingRight)}})}})}),ab=d.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,s=De(Ze,e.__scopeScrollArea),[a,c]=d.useState(),l=d.useRef(null),f=ae(t,l,s.onScrollbarYChange);return d.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),i.jsx(Fc,{"data-orientation":"vertical",...o,ref:f,sizes:r,style:{top:0,right:s.dir==="ltr"?0:void 0,left:s.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":cn(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,p)=>{if(s.viewport){const g=s.viewport.scrollTop+u.deltaY;e.onWheelScroll(g),Wc(g,p)&&u.preventDefault()}},onResize:()=>{l.current&&s.viewport&&a&&n({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:l.current.clientHeight,paddingStart:an(a.paddingTop),paddingEnd:an(a.paddingBottom)}})}})}),[ib,Lc]=_c(Ze),Fc=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:o,onThumbChange:s,onThumbPointerUp:a,onThumbPointerDown:c,onThumbPositionChange:l,onDragScroll:f,onWheelScroll:u,onResize:p,...g}=e,v=De(Ze,r),[m,h]=d.useState(null),b=ae(t,F=>h(F)),w=d.useRef(null),x=d.useRef(""),y=v.viewport,C=n.content-n.viewport,N=we(u),O=we(l),E=ln(p,10);function M(F){if(w.current){const I=F.clientX-w.current.left,B=F.clientY-w.current.top;f({x:I,y:B})}}return d.useEffect(()=>{const F=I=>{const B=I.target;(m==null?void 0:m.contains(B))&&N(I,C)};return document.addEventListener("wheel",F,{passive:!1}),()=>document.removeEventListener("wheel",F,{passive:!1})},[y,m,C,N]),d.useEffect(O,[n,O]),$t(m,E),$t(v.content,E),i.jsx(ib,{scope:r,scrollbar:m,hasThumb:o,onThumbChange:we(s),onThumbPointerUp:we(a),onThumbPositionChange:O,onThumbPointerDown:we(c),children:i.jsx(te.div,{...g,ref:b,style:{position:"absolute",...g.style},onPointerDown:H(e.onPointerDown,F=>{F.button===0&&(F.target.setPointerCapture(F.pointerId),w.current=m.getBoundingClientRect(),x.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",v.viewport&&(v.viewport.style.scrollBehavior="auto"),M(F))}),onPointerMove:H(e.onPointerMove,M),onPointerUp:H(e.onPointerUp,F=>{const I=F.target;I.hasPointerCapture(F.pointerId)&&I.releasePointerCapture(F.pointerId),document.body.style.webkitUserSelect=x.current,v.viewport&&(v.viewport.style.scrollBehavior=""),w.current=null})})})}),sn="ScrollAreaThumb",$c=d.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Lc(sn,e.__scopeScrollArea);return i.jsx(Ae,{present:r||o.hasThumb,children:i.jsx(cb,{ref:t,...n})})}),cb=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,style:n,...o}=e,s=De(sn,r),a=Lc(sn,r),{onThumbPositionChange:c}=a,l=ae(t,p=>a.onThumbChange(p)),f=d.useRef(void 0),u=ln(()=>{f.current&&(f.current(),f.current=void 0)},100);return d.useEffect(()=>{const p=s.viewport;if(p){const g=()=>{if(u(),!f.current){const v=ub(p,c);f.current=v,c()}};return c(),p.addEventListener("scroll",g),()=>p.removeEventListener("scroll",g)}},[s.viewport,u,c]),i.jsx(te.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:l,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:H(e.onPointerDownCapture,p=>{const v=p.target.getBoundingClientRect(),m=p.clientX-v.left,h=p.clientY-v.top;a.onThumbPointerDown({x:m,y:h})}),onPointerUp:H(e.onPointerUp,a.onThumbPointerUp)})});$c.displayName=sn;var qo="ScrollAreaCorner",Bc=d.forwardRef((e,t)=>{const r=De(qo,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?i.jsx(lb,{...e,ref:t}):null});Bc.displayName=qo;var lb=d.forwardRef((e,t)=>{const{__scopeScrollArea:r,...n}=e,o=De(qo,r),[s,a]=d.useState(0),[c,l]=d.useState(0),f=!!(s&&c);return $t(o.scrollbarX,()=>{var p;const u=((p=o.scrollbarX)==null?void 0:p.offsetHeight)||0;o.onCornerHeightChange(u),l(u)}),$t(o.scrollbarY,()=>{var p;const u=((p=o.scrollbarY)==null?void 0:p.offsetWidth)||0;o.onCornerWidthChange(u),a(u)}),f?i.jsx(te.div,{...n,ref:t,style:{width:s,height:c,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function an(e){return e?parseInt(e,10):0}function Uc(e,t){const r=e/t;return isNaN(r)?0:r}function cn(e){const t=Uc(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function db(e,t,r,n="ltr"){const o=cn(r),s=o/2,a=t||s,c=o-a,l=r.scrollbar.paddingStart+a,f=r.scrollbar.size-r.scrollbar.paddingEnd-c,u=r.content-r.viewport,p=n==="ltr"?[0,u]:[u*-1,0];return zc([l,f],p)(e)}function Hc(e,t,r="ltr"){const n=cn(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,s=t.scrollbar.size-o,a=t.content-t.viewport,c=s-n,l=r==="ltr"?[0,a]:[a*-1,0],f=jo(e,l);return zc([0,a],[0,c])(f)}function zc(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function Wc(e,t){return e>0&&e<t}var ub=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function o(){const s={left:e.scrollLeft,top:e.scrollTop},a=r.left!==s.left,c=r.top!==s.top;(a||c)&&t(),r=s,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function ln(e,t){const r=we(e),n=d.useRef(0);return d.useEffect(()=>()=>window.clearTimeout(n.current),[]),d.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function $t(e,t){const r=we(t);ve(()=>{let n=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(n),o.unobserve(e)}}},[e,r])}var Vc=Oc,fb=Mc,pb=Bc;const jc=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Vc,{ref:n,className:P("relative overflow-hidden",e),...r,children:[i.jsx(fb,{className:"h-full w-full rounded-[inherit] overflow-auto",children:t}),i.jsx(Kc,{}),i.jsx(pb,{})]}));jc.displayName=Vc.displayName;const Kc=d.forwardRef(({className:e,orientation:t="vertical",...r},n)=>i.jsx(Ro,{ref:n,orientation:t,className:P("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...r,children:i.jsx($c,{className:"relative flex-1 rounded-full bg-border"})}));Kc.displayName=Ro.displayName;function dn({className:e="",showCreateButton:t=!0,showDeleteButton:r=!0,showEditTitle:n=!0,maxHeight:o="400px",customStyles:s={},currentThreadId:a=null,navigateToThread:c,onThreadSelect:l,onThreadCreate:f,onThreadDelete:u}){const{loadThread:p,threads:g,refreshThreads:v,currentThreadId:m,createThread:h,deleteThread:b,renameThread:w}=Jn(),[x,y]=T.useState(g??[]),[C,N]=T.useState(!1),[O,E]=T.useState(null),[M,F]=T.useState(null),[I,B]=T.useState(""),[R,U]=T.useState(!1);T.useEffect(()=>{y(g??[])},[g]);const D=async $=>{try{await p($),c==null||c($),l==null||l($)}catch(j){console.error("Failed to select thread:",j)}},z=async()=>{try{U(!0);const $=await h();f==null||f($),c==null||c($)}catch($){console.error("Failed to create thread:",$)}finally{U(!1)}},k=async($,j)=>{if(j.stopPropagation(),!!confirm("Delete this thread?"))try{await b($),u==null||u($)}catch(le){console.error("Failed to delete thread:",le)}},G=($,j)=>{j.stopPropagation(),F($.threadId),B($.title||`Thread ${$.threadId.slice(0,8)}`)},L=async $=>{if(I.trim())try{await w($,I.trim()),F(null),B("")}catch(j){console.error("Failed to update title:",j)}},A=()=>{F(null),B("")},ee=($,j)=>{$.key==="Enter"?L(j):$.key==="Escape"&&A()},q=$=>{if(!$)return"";try{const j=new Date($),he=new Date().getTime()-j.getTime(),W=Math.floor(he/(1e3*60*60*24));return W===0?j.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):W===1?"Yesterday":W<7?`${W} days ago`:j.toLocaleDateString()}catch{return""}},ie=$=>$.title||`Thread ${$.threadId.slice(0,8)}`;return i.jsxs("div",{className:`flex flex-col h-full ${e} ${s.container||""}`,children:[t&&i.jsx("div",{className:s.header||"flex-shrink-0 p-2 border-b bg-slate-800 border-slate-700 text-slate-100 flex justify-end",children:i.jsx(fe,{onClick:z,disabled:R||C,className:s.createButton||"p-2",size:"sm",variant:"ghost",title:R?"Creating...":"New Chat",children:i.jsx(X.MessageSquarePlus,{size:20})})}),i.jsx(jc,{className:`flex-1 min-h-0 ${s.threadList||""}`,style:o?{maxHeight:o}:void 0,children:i.jsx("div",{className:"p-2 space-y-1 pb-4",children:C?i.jsx("div",{className:"text-center py-8 text-slate-400",children:"Loading…"}):x.length===0?i.jsxs("div",{className:"text-center py-8 text-slate-400",children:[i.jsx(X.MessageSquare,{className:"w-8 h-8 mx-auto mb-2 opacity-40 text-slate-500"}),i.jsx("p",{className:"text-sm text-slate-500",children:"No conversations yet"})]}):x.slice().sort(($,j)=>new Date(j.updatedAt||j.createdAt||"").getTime()-new Date($.updatedAt||$.createdAt||"").getTime()).map($=>i.jsxs("div",{onClick:()=>D($.threadId),className:`group relative p-3 rounded-lg cursor-pointer transition-colors border ${(a??m)===$.threadId?`${s.activeThread||"bg-slate-600 border-slate-500"} `:`${s.threadItem||"bg-slate-700 border-slate-600 hover:bg-slate-600 text-gray-900 dark:text-slate-100"}`} ${s.threadItem||""} text-gray-900 dark:text-slate-100`,children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx("div",{className:"flex-1 min-w-0",children:M===$.threadId?i.jsxs("div",{className:"flex items-center gap-2",onClick:j=>j.stopPropagation(),children:[i.jsx(cr,{value:I,onChange:j=>B(j.target.value),onKeyDown:j=>ee(j,$.threadId),className:"h-6 text-sm",autoFocus:!0}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:()=>L($.threadId),className:"h-6 w-6 p-0",children:i.jsx(X.Check,{size:12})}),i.jsx(fe,{variant:"ghost",size:"sm",onClick:A,className:"h-6 w-6 p-0",children:i.jsx(X.X,{size:12})})]}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"font-medium text-sm truncate text-gray-900 dark:text-slate-100",children:ie($)}),i.jsxs("div",{className:"flex items-center gap-2 text-xs text-gray-500 dark:text-slate-400 mt-1",children:[i.jsx(X.Calendar,{size:10}),i.jsx("span",{children:q($.updatedAt||$.createdAt)})]})]})}),i.jsxs("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity ml-2",children:[n&&M!==$.threadId&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:j=>G($,j),className:"h-6 w-6 p-0",title:"Edit title",children:i.jsx(X.Edit3,{size:12})}),r&&i.jsx(fe,{variant:"ghost",size:"sm",onClick:j=>k($.threadId,j),className:"h-6 w-6 p-0 text-red-400 hover:text-red-300 hover:bg-red-900/20",title:"Delete thread",children:i.jsx(X.Trash2,{size:12})})]})]}),a===$.threadId&&i.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-1 h-8 bg-blue-400 rounded-r"})]},$.threadId))})})]})}const Rc=T.createContext(null);function hb({children:e,basePath:t="/chat"}){const r=T.useMemo(()=>t?t==="/"?"":t.endsWith("/")?t.slice(0,-1):t:"/chat",[t]),n={basePath:r,buildThreadPath:o=>`${r}/${o}`,buildBasePath:()=>r};return i.jsx(Rc.Provider,{value:n,children:e})}function gb(){const e=T.useContext(Rc);return e||{basePath:"/chat",buildThreadPath:t=>`/chat/${t}`,buildBasePath:()=>"/chat"}}const Gc={BASE_URL:"/",DEV:!1,MODE:"library",PROD:!0,SSR:!1};function lr(e){var o;const t=typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Dn&&Dn.tagName.toUpperCase()==="SCRIPT"&&Dn.src||new URL("index.umd.js",document.baseURI).href}<"u"&&Gc?Gc[e]:void 0,r=(o=globalThis==null?void 0:globalThis.process)==null?void 0:o.env,n=r?r[e]:void 0;return(t??n)||void 0}function mb(){return lr("VITE_API_BASE_URL")||lr("NEXT_PUBLIC_API_BASE_URL")||void 0}function bb(){return lr("VITE_API_KEY")||lr("NEXT_PUBLIC_API_KEY")||lr("VITE_AUTH_TOKEN")||void 0}function qc(){const e=mb(),t=bb(),r={};return e&&(r.baseUrl=e),t&&(r.apiKey=t),r}function Xc(){const e=qc(),t=Qe.getAuthToken();return{apiBaseUrl:e.baseUrl||Qe.baseUrl||"http://localhost:8000",apiKey:t||e.apiKey||"",model:"gpt-4",temperature:.7,maxTokens:4096,layoutSize:"desktop",showThreads:!0,autoScrollMessages:!0,truncateToolMessages:!0,toolMessagePreviewLength:200,darkMode:!1,enableSound:!1,messageHistory:100}}const Yc="chat-settings";function vb(){try{const e=localStorage.getItem(Yc);return e?JSON.parse(e):{}}catch(e){return console.error("Failed to parse stored settings:",e),{}}}function wb(e){try{localStorage.setItem(Yc,JSON.stringify(e)),e.apiKey&&Qe.setAuthToken(e.apiKey)}catch(t){console.error("Failed to save settings:",t)}}function yb(){const e=Xc(),t=vb(),r=Qe.getAuthToken();return{...e,...t,apiKey:r||t.apiKey||e.apiKey,apiBaseUrl:Qe.baseUrl||t.apiBaseUrl||e.apiBaseUrl}}function xb(e){e.apiKey&&Qe.setAuthToken(e.apiKey),wb(e)}const Xo=768;function Sb(){const[e,t]=d.useState(void 0);return d.useEffect(()=>{const r=window.matchMedia(`(max-width: ${Xo-1}px)`),n=()=>{t(window.innerWidth<Xo)};return r.addEventListener("change",n),t(window.innerWidth<Xo),()=>r.removeEventListener("change",n)},[]),!!e}var Cb="Separator",Jc="horizontal",Eb=["horizontal","vertical"],Zc=d.forwardRef((e,t)=>{const{decorative:r,orientation:n=Jc,...o}=e,s=Nb(n)?n:Jc,c=r?{role:"none"}:{"aria-orientation":s==="vertical"?s:void 0,role:"separator"};return i.jsx(te.div,{"data-orientation":s,...c,...o,ref:t})});Zc.displayName=Cb;function Nb(e){return Eb.includes(e)}var Qc=Zc;const Yo=d.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...n},o)=>i.jsx(Qc,{ref:o,decorative:r,orientation:t,className:P("shrink-0 bg-border",t==="horizontal"?"h-[1px] w-full":"h-full w-[1px]",e),...n}));Yo.displayName=Qc.displayName;var un="Dialog",[el,Jw]=$e(un),[Tb,ze]=el(un),tl=e=>{const{__scopeDialog:t,children:r,open:n,defaultOpen:o,onOpenChange:s,modal:a=!0}=e,c=d.useRef(null),l=d.useRef(null),[f,u]=ot({prop:n,defaultProp:o??!1,onChange:s,caller:un});return i.jsx(Tb,{scope:t,triggerRef:c,contentRef:l,contentId:Be(),titleId:Be(),descriptionId:Be(),open:f,onOpenChange:u,onOpenToggle:d.useCallback(()=>u(p=>!p),[u]),modal:a,children:r})};tl.displayName=un;var rl="DialogTrigger",nl=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=ze(rl,r),s=ae(t,o.triggerRef);return i.jsx(te.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Qo(o.open),...n,ref:s,onClick:H(e.onClick,o.onOpenToggle)})});nl.displayName=rl;var Jo="DialogPortal",[Ab,ol]=el(Jo,{forceMount:void 0}),sl=e=>{const{__scopeDialog:t,forceMount:r,children:n,container:o}=e,s=ze(Jo,t);return i.jsx(Ab,{scope:t,forceMount:r,children:d.Children.map(n,a=>i.jsx(Ae,{present:r||s.open,children:i.jsx(Kr,{asChild:!0,container:o,children:a})}))})};sl.displayName=Jo;var fn="DialogOverlay",al=d.forwardRef((e,t)=>{const r=ol(fn,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,s=ze(fn,e.__scopeDialog);return s.modal?i.jsx(Ae,{present:n||s.open,children:i.jsx(Ib,{...o,ref:t})}):null});al.displayName=fn;var Pb=Ie.createSlot("DialogOverlay.RemoveScroll"),Ib=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=ze(fn,r);return i.jsx(Qr,{as:Pb,allowPinchZoom:!0,shards:[o.contentRef],children:i.jsx(te.div,{"data-state":Qo(o.open),...n,ref:t,style:{pointerEvents:"auto",...n.style}})})}),wt="DialogContent",il=d.forwardRef((e,t)=>{const r=ol(wt,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,s=ze(wt,e.__scopeDialog);return i.jsx(Ae,{present:n||s.open,children:s.modal?i.jsx(_b,{...o,ref:t}):i.jsx(Ob,{...o,ref:t})})});il.displayName=wt;var _b=d.forwardRef((e,t)=>{const r=ze(wt,e.__scopeDialog),n=d.useRef(null),o=ae(t,r.contentRef,n);return d.useEffect(()=>{const s=n.current;if(s)return _o(s)},[]),i.jsx(cl,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:H(e.onCloseAutoFocus,s=>{var a;s.preventDefault(),(a=r.triggerRef.current)==null||a.focus()}),onPointerDownOutside:H(e.onPointerDownOutside,s=>{const a=s.detail.originalEvent,c=a.button===0&&a.ctrlKey===!0;(a.button===2||c)&&s.preventDefault()}),onFocusOutside:H(e.onFocusOutside,s=>s.preventDefault())})}),Ob=d.forwardRef((e,t)=>{const r=ze(wt,e.__scopeDialog),n=d.useRef(!1),o=d.useRef(!1);return i.jsx(cl,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var a,c;(a=e.onCloseAutoFocus)==null||a.call(e,s),s.defaultPrevented||(n.current||(c=r.triggerRef.current)==null||c.focus(),s.preventDefault()),n.current=!1,o.current=!1},onInteractOutside:s=>{var l,f;(l=e.onInteractOutside)==null||l.call(e,s),s.defaultPrevented||(n.current=!0,s.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const a=s.target;((f=r.triggerRef.current)==null?void 0:f.contains(a))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&o.current&&s.preventDefault()}})}),cl=d.forwardRef((e,t)=>{const{__scopeDialog:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:s,...a}=e,c=ze(wt,r),l=d.useRef(null),f=ae(t,l);return ao(),i.jsxs(i.Fragment,{children:[i.jsx(Dr,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:s,children:i.jsx(Jt,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":Qo(c.open),...a,ref:f,onDismiss:()=>c.onOpenChange(!1)})}),i.jsxs(i.Fragment,{children:[i.jsx(kb,{titleId:c.titleId}),i.jsx(Db,{contentRef:l,descriptionId:c.descriptionId})]})]})}),Zo="DialogTitle",ll=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=ze(Zo,r);return i.jsx(te.h2,{id:o.titleId,...n,ref:t})});ll.displayName=Zo;var dl="DialogDescription",ul=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=ze(dl,r);return i.jsx(te.p,{id:o.descriptionId,...n,ref:t})});ul.displayName=dl;var fl="DialogClose",pl=d.forwardRef((e,t)=>{const{__scopeDialog:r,...n}=e,o=ze(fl,r);return i.jsx(te.button,{type:"button",...n,ref:t,onClick:H(e.onClick,()=>o.onOpenChange(!1))})});pl.displayName=fl;function Qo(e){return e?"open":"closed"}var hl="DialogTitleWarning",[Zw,gl]=If(hl,{contentName:wt,titleName:Zo,docsSlug:"dialog"}),kb=({titleId:e})=>{const t=gl(hl),r=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
59
59
 
60
60
  If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
61
61
 
62
- For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return d.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},Ob="DialogDescriptionWarning",kb=({contentRef:e,descriptionId:t})=>{const n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${pl(Ob).contentName}}.`;return d.useEffect(()=>{var s;const o=(s=e.current)==null?void 0:s.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},Mb=Qc,Db=tl,Lb=nl,hl=ol,gl=sl,ml=il,bl=ll,Fb=ul;const vl=Mb,$b=Db,Bb=Lb,wl=d.forwardRef(({className:e,...t},r)=>i.jsx(hl,{className:P("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:r}));wl.displayName=hl.displayName;const Ub=Ht.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Qo=d.forwardRef(({side:e="right",className:t,children:r,...n},o)=>i.jsxs(Bb,{children:[i.jsx(wl,{}),i.jsxs(gl,{ref:o,className:P(Ub({side:e}),t),...n,children:[r,i.jsxs(Fb,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[i.jsx(J.X,{className:"h-4 w-4"}),i.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Qo.displayName=gl.displayName;const yl=({className:e,...t})=>i.jsx("div",{className:P("flex flex-col space-y-2 text-center sm:text-left",e),...t});yl.displayName="SheetHeader";const xl=d.forwardRef(({className:e,...t},r)=>i.jsx(ml,{ref:r,className:P("text-lg font-semibold text-foreground",e),...t}));xl.displayName=ml.displayName;const Sl=d.forwardRef(({className:e,...t},r)=>i.jsx(bl,{ref:r,className:P("text-sm text-muted-foreground",e),...t}));Sl.displayName=bl.displayName;function Cl({className:e,...t}){return i.jsx("div",{className:P("animate-pulse rounded-md bg-muted",e),...t})}var El=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),Hb="VisuallyHidden",Nl=d.forwardRef((e,t)=>i.jsx(te.span,{...e,ref:t,style:{...El,...e.style}}));Nl.displayName=Hb;var zb=Nl,[fn,Jw]=Fe("Tooltip",[kt]),pn=kt(),Tl="TooltipProvider",Wb=700,es="tooltip.open",[Vb,ts]=fn(Tl),Al=e=>{const{__scopeTooltip:t,delayDuration:r=Wb,skipDelayDuration:n=300,disableHoverableContent:o=!1,children:s}=e,a=d.useRef(!0),c=d.useRef(!1),l=d.useRef(0);return d.useEffect(()=>{const f=l.current;return()=>window.clearTimeout(f)},[]),i.jsx(Vb,{scope:t,isOpenDelayedRef:a,delayDuration:r,onOpen:d.useCallback(()=>{window.clearTimeout(l.current),a.current=!1},[]),onClose:d.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>a.current=!0,n)},[n]),isPointerInTransitRef:c,onPointerInTransitChange:d.useCallback(f=>{c.current=f},[]),disableHoverableContent:o,children:s})};Al.displayName=Tl;var cr="Tooltip",[jb,hn]=fn(cr),Pl=e=>{const{__scopeTooltip:t,children:r,open:n,defaultOpen:o,onOpenChange:s,disableHoverableContent:a,delayDuration:c}=e,l=ts(cr,e.__scopeTooltip),f=pn(t),[u,p]=d.useState(null),g=$e(),v=d.useRef(0),m=a??l.disableHoverableContent,h=c??l.delayDuration,b=d.useRef(!1),[w,x]=ot({prop:n,defaultProp:o??!1,onChange:E=>{E?(l.onOpen(),document.dispatchEvent(new CustomEvent(es))):l.onClose(),s==null||s(E)},caller:cr}),y=d.useMemo(()=>w?b.current?"delayed-open":"instant-open":"closed",[w]),C=d.useCallback(()=>{window.clearTimeout(v.current),v.current=0,b.current=!1,x(!0)},[x]),N=d.useCallback(()=>{window.clearTimeout(v.current),v.current=0,x(!1)},[x]),O=d.useCallback(()=>{window.clearTimeout(v.current),v.current=window.setTimeout(()=>{b.current=!0,x(!0),v.current=0},h)},[h,x]);return d.useEffect(()=>()=>{v.current&&(window.clearTimeout(v.current),v.current=0)},[]),i.jsx(So,{...f,children:i.jsx(jb,{scope:t,contentId:g,open:w,stateAttribute:y,trigger:u,onTriggerChange:p,onTriggerEnter:d.useCallback(()=>{l.isOpenDelayedRef.current?O():C()},[l.isOpenDelayedRef,O,C]),onTriggerLeave:d.useCallback(()=>{m?N():(window.clearTimeout(v.current),v.current=0)},[N,m]),onOpen:C,onClose:N,disableHoverableContent:m,children:r})})};Pl.displayName=cr;var rs="TooltipTrigger",Il=d.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=hn(rs,r),s=ts(rs,r),a=pn(r),c=d.useRef(null),l=ie(t,c,o.onTriggerChange),f=d.useRef(!1),u=d.useRef(!1),p=d.useCallback(()=>f.current=!1,[]);return d.useEffect(()=>()=>document.removeEventListener("pointerup",p),[p]),i.jsx(Co,{asChild:!0,...a,children:i.jsx(te.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...n,ref:l,onPointerMove:H(e.onPointerMove,g=>{g.pointerType!=="touch"&&!u.current&&!s.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:H(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:H(e.onPointerDown,()=>{o.open&&o.onClose(),f.current=!0,document.addEventListener("pointerup",p,{once:!0})}),onFocus:H(e.onFocus,()=>{f.current||o.onOpen()}),onBlur:H(e.onBlur,o.onClose),onClick:H(e.onClick,o.onClose)})})});Il.displayName=rs;var Kb="TooltipPortal",[Zw,Rb]=fn(Kb,{forceMount:void 0}),Bt="TooltipContent",_l=d.forwardRef((e,t)=>{const r=Rb(Bt,e.__scopeTooltip),{forceMount:n=r.forceMount,side:o="top",...s}=e,a=hn(Bt,e.__scopeTooltip);return i.jsx(Te,{present:n||a.open,children:a.disableHoverableContent?i.jsx(Ol,{side:o,...s,ref:t}):i.jsx(Gb,{side:o,...s,ref:t})})}),Gb=d.forwardRef((e,t)=>{const r=hn(Bt,e.__scopeTooltip),n=ts(Bt,e.__scopeTooltip),o=d.useRef(null),s=ie(t,o),[a,c]=d.useState(null),{trigger:l,onClose:f}=r,u=o.current,{onPointerInTransitChange:p}=n,g=d.useCallback(()=>{c(null),p(!1)},[p]),v=d.useCallback((m,h)=>{const b=m.currentTarget,w={x:m.clientX,y:m.clientY},x=Zb(w,b.getBoundingClientRect()),y=Qb(w,x),C=ev(h.getBoundingClientRect()),N=rv([...y,...C]);c(N),p(!0)},[p]);return d.useEffect(()=>()=>g(),[g]),d.useEffect(()=>{if(l&&u){const m=b=>v(b,u),h=b=>v(b,l);return l.addEventListener("pointerleave",m),u.addEventListener("pointerleave",h),()=>{l.removeEventListener("pointerleave",m),u.removeEventListener("pointerleave",h)}}},[l,u,v,g]),d.useEffect(()=>{if(a){const m=h=>{const b=h.target,w={x:h.clientX,y:h.clientY},x=(l==null?void 0:l.contains(b))||(u==null?void 0:u.contains(b)),y=!tv(w,a);x?g():y&&(g(),f())};return document.addEventListener("pointermove",m),()=>document.removeEventListener("pointermove",m)}},[l,u,a,f,g]),i.jsx(Ol,{...e,ref:s})}),[qb,Xb]=fn(cr,{isInside:!1}),Yb=Ie.createSlottable("TooltipContent"),Ol=d.forwardRef((e,t)=>{const{__scopeTooltip:r,children:n,"aria-label":o,onEscapeKeyDown:s,onPointerDownOutside:a,...c}=e,l=hn(Bt,r),f=pn(r),{onClose:u}=l;return d.useEffect(()=>(document.addEventListener(es,u),()=>document.removeEventListener(es,u)),[u]),d.useEffect(()=>{if(l.trigger){const p=g=>{const v=g.target;v!=null&&v.contains(l.trigger)&&u()};return window.addEventListener("scroll",p,{capture:!0}),()=>window.removeEventListener("scroll",p,{capture:!0})}},[l.trigger,u]),i.jsx(Xt,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:p=>p.preventDefault(),onDismiss:u,children:i.jsxs(Eo,{"data-state":l.stateAttribute,...f,...c,ref:t,style:{...c.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[i.jsx(Yb,{children:n}),i.jsx(qb,{scope:r,isInside:!0,children:i.jsx(zb,{id:l.contentId,role:"tooltip",children:o||n})})]})})});_l.displayName=Bt;var kl="TooltipArrow",Jb=d.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=pn(r);return Xb(kl,r).isInside?null:i.jsx(No,{...o,...n,ref:t})});Jb.displayName=kl;function Zb(e,t){const r=Math.abs(t.top-e.y),n=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),s=Math.abs(t.left-e.x);switch(Math.min(r,n,o,s)){case s:return"left";case o:return"right";case r:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function Qb(e,t,r=5){const n=[];switch(t){case"top":n.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":n.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":n.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":n.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return n}function ev(e){const{top:t,right:r,bottom:n,left:o}=e;return[{x:o,y:t},{x:r,y:t},{x:r,y:n},{x:o,y:n}]}function tv(e,t){const{x:r,y:n}=e;let o=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],f=c.x,u=c.y,p=l.x,g=l.y;u>n!=g>n&&r<(p-f)*(n-u)/(g-u)+f&&(o=!o)}return o}function rv(e){const t=e.slice();return t.sort((r,n)=>r.x<n.x?-1:r.x>n.x?1:r.y<n.y?-1:r.y>n.y?1:0),nv(t)}function nv(e){if(e.length<=1)return e.slice();const t=[];for(let n=0;n<e.length;n++){const o=e[n];for(;t.length>=2;){const s=t[t.length-1],a=t[t.length-2];if((s.x-a.x)*(o.y-a.y)>=(s.y-a.y)*(o.x-a.x))t.pop();else break}t.push(o)}t.pop();const r=[];for(let n=e.length-1;n>=0;n--){const o=e[n];for(;r.length>=2;){const s=r[r.length-1],a=r[r.length-2];if((s.x-a.x)*(o.y-a.y)>=(s.y-a.y)*(o.x-a.x))r.pop();else break}r.push(o)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}var ov=Al,sv=Pl,av=Il,Ml=_l;const iv=ov,cv=sv,lv=av,Dl=d.forwardRef(({className:e,sideOffset:t=4,...r},n)=>i.jsx(Ml,{ref:n,sideOffset:t,className:P("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r}));Dl.displayName=Ml.displayName;const dv="sidebar:state",uv=60*60*24*7,fv="16rem",pv="18rem",hv="3rem",gv="b",Ll=d.createContext(null);function gn(){const e=d.useContext(Ll);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const Fl=d.forwardRef(({defaultOpen:e=!0,open:t,onOpenChange:r,className:n,style:o,children:s,...a},c)=>{const l=yb(),[f,u]=d.useState(!1),[p,g]=d.useState(e),v=t??p,m=d.useCallback(x=>{const y=typeof x=="function"?x(v):x;r?r(y):g(y),document.cookie=`${dv}=${y}; path=/; max-age=${uv}`},[r,v]),h=d.useCallback(()=>l?u(x=>!x):m(x=>!x),[l,m,u]);d.useEffect(()=>{const x=y=>{y.key===gv&&(y.metaKey||y.ctrlKey)&&(y.preventDefault(),h())};return window.addEventListener("keydown",x),()=>window.removeEventListener("keydown",x)},[h]);const b=v?"expanded":"collapsed",w=d.useMemo(()=>({state:b,open:v,setOpen:m,isMobile:l,openMobile:f,setOpenMobile:u,toggleSidebar:h}),[b,v,m,l,f,u,h]);return i.jsx(Ll.Provider,{value:w,children:i.jsx(iv,{delayDuration:0,children:i.jsx("div",{style:{"--sidebar-width":fv,"--sidebar-width-icon":hv,...o},className:P("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar",n),ref:c,...a,children:s})})})});Fl.displayName="SidebarProvider";const $l=d.forwardRef(({side:e="left",variant:t="sidebar",collapsible:r="offcanvas",className:n,children:o,...s},a)=>{const{isMobile:c,state:l,openMobile:f,setOpenMobile:u}=gn();return r==="none"?i.jsx("div",{className:P("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",n),ref:a,...s,children:o}):c?i.jsx(vl,{open:f,onOpenChange:u,...s,children:i.jsx(Qo,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":pv},side:e,children:i.jsx("div",{className:"flex h-full w-full flex-col",children:o})})}):i.jsxs("div",{ref:a,className:"group peer hidden md:block text-sidebar-foreground","data-state":l,"data-collapsible":l==="collapsed"?r:"","data-variant":t,"data-side":e,children:[i.jsx("div",{className:P("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",t==="floating"||t==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),i.jsx("div",{className:P("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex",e==="left"?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",t==="floating"||t==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",n),...s,children:i.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow",children:o})})]})});$l.displayName="Sidebar";const Bl=d.forwardRef(({className:e,onClick:t,...r},n)=>{const{toggleSidebar:o}=gn();return i.jsxs(fe,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:P("h-7 w-7",e),onClick:s=>{t==null||t(s),o()},...r,children:[i.jsx(J.PanelLeft,{}),i.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Bl.displayName="SidebarTrigger";const mv=d.forwardRef(({className:e,...t},r)=>{const{toggleSidebar:n}=gn();return i.jsx("button",{ref:r,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:n,title:"Toggle Sidebar",className:P("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",e),...t})});mv.displayName="SidebarRail";const Ul=d.forwardRef(({className:e,...t},r)=>i.jsx("main",{ref:r,className:P("relative flex min-h-svh flex-1 flex-col bg-background","peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",e),...t}));Ul.displayName="SidebarInset";const bv=d.forwardRef(({className:e,...t},r)=>i.jsx(ar,{ref:r,"data-sidebar":"input",className:P("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",e),...t}));bv.displayName="SidebarInput";const Hl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"header",className:P("flex flex-col gap-2 p-2",e),...t}));Hl.displayName="SidebarHeader";const vv=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"footer",className:P("flex flex-col gap-2 p-2",e),...t}));vv.displayName="SidebarFooter";const wv=d.forwardRef(({className:e,...t},r)=>i.jsx(Xo,{ref:r,"data-sidebar":"separator",className:P("mx-2 w-auto bg-sidebar-border",e),...t}));wv.displayName="SidebarSeparator";const zl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"content",className:P("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...t}));zl.displayName="SidebarContent";const Wl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"group",className:P("relative flex w-full min-w-0 flex-col p-2",e),...t}));Wl.displayName="SidebarGroup";const Vl=d.forwardRef(({className:e,asChild:t=!1,...r},n)=>{const o=t?Ie.Slot:"div";return i.jsx(o,{ref:n,"data-sidebar":"group-label",className:P("duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",e),...r})});Vl.displayName="SidebarGroupLabel";const yv=d.forwardRef(({className:e,asChild:t=!1,...r},n)=>{const o=t?Ie.Slot:"button";return i.jsx(o,{ref:n,"data-sidebar":"group-action",className:P("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",e),...r})});yv.displayName="SidebarGroupAction";const jl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"group-content",className:P("w-full text-sm",e),...t}));jl.displayName="SidebarGroupContent";const Kl=d.forwardRef(({className:e,...t},r)=>i.jsx("ul",{ref:r,"data-sidebar":"menu",className:P("flex w-full min-w-0 flex-col gap-1",e),...t}));Kl.displayName="SidebarMenu";const Rl=d.forwardRef(({className:e,...t},r)=>i.jsx("li",{ref:r,"data-sidebar":"menu-item",className:P("group/menu-item relative",e),...t}));Rl.displayName="SidebarMenuItem";const xv=Ht.cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0"}},defaultVariants:{variant:"default",size:"default"}}),Gl=d.forwardRef(({asChild:e=!1,isActive:t=!1,variant:r="default",size:n="default",tooltip:o,className:s,...a},c)=>{const l=e?Ie.Slot:"button",{isMobile:f,state:u}=gn(),p=i.jsx(l,{ref:c,"data-sidebar":"menu-button","data-size":n,"data-active":t,className:P(xv({variant:r,size:n}),s),...a});return o?(typeof o=="string"&&(o={children:o}),i.jsxs(cv,{children:[i.jsx(lv,{asChild:!0,children:p}),i.jsx(Dl,{side:"right",align:"center",hidden:u!=="collapsed"||f,...o})]})):p});Gl.displayName="SidebarMenuButton";const Sv=d.forwardRef(({className:e,asChild:t=!1,showOnHover:r=!1,...n},o)=>{const s=t?Ie.Slot:"button";return i.jsx(s,{ref:o,"data-sidebar":"menu-action",className:P("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",r&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",e),...n})});Sv.displayName="SidebarMenuAction";const Cv=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"menu-badge",className:P("absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",e),...t}));Cv.displayName="SidebarMenuBadge";const Ev=d.forwardRef(({className:e,showIcon:t=!1,...r},n)=>{const o=d.useMemo(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return i.jsxs("div",{ref:n,"data-sidebar":"menu-skeleton",className:P("rounded-md h-8 flex gap-2 px-2 items-center",e),...r,children:[t&&i.jsx(Cl,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),i.jsx(Cl,{className:"h-4 flex-1 max-w-[--skeleton-width]","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})});Ev.displayName="SidebarMenuSkeleton";const Nv=d.forwardRef(({className:e,...t},r)=>i.jsx("ul",{ref:r,"data-sidebar":"menu-sub",className:P("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",e),...t}));Nv.displayName="SidebarMenuSub";const Tv=d.forwardRef(({...e},t)=>i.jsx("li",{ref:t,...e}));Tv.displayName="SidebarMenuSubItem";const Av=d.forwardRef(({asChild:e=!1,size:t="md",isActive:r,className:n,...o},s)=>{const a=e?Ie.Slot:"a";return i.jsx(a,{ref:s,"data-sidebar":"menu-sub-button","data-size":t,"data-active":r,className:P("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",t==="sm"&&"text-xs",t==="md"&&"text-sm","group-data-[collapsible=icon]:hidden",n),...o})});Av.displayName="SidebarMenuSubButton";function Pv({header:e,sidebarTitle:t="Threads",showThreads:r=!0,className:n="",sidebarClassName:o="",chatClassName:s="",...a}){return i.jsx(Rt,{...a,children:i.jsxs(Fl,{className:`w-full ${n}`,children:[i.jsxs($l,{className:`border-r ${o}`,children:[i.jsx(Hl,{children:i.jsx(Kl,{children:i.jsx(Rl,{children:i.jsx(Gl,{size:"lg",children:i.jsx("span",{className:"font-semibold",children:t})})})})}),i.jsx(zl,{children:r&&i.jsxs(Wl,{children:[i.jsx(Vl,{children:"Conversations"}),i.jsx(jl,{children:i.jsx("div",{className:"px-2 py-1",children:i.jsx(ln,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-[calc(100vh-12rem)]"})})})]})})]}),i.jsxs(Ul,{children:[i.jsxs("header",{className:"h-14 border-b bg-background/60 backdrop-blur flex items-center gap-2 px-4",children:[i.jsx(Bl,{}),i.jsx("div",{className:"flex-1"}),e]}),i.jsx("main",{className:`flex-1 min-h-0 overflow-hidden ${s}`,children:i.jsx(sr,{})})]})]})})}var Iv="Label",ql=d.forwardRef((e,t)=>i.jsx(te.label,{...e,ref:t,onMouseDown:r=>{var o;r.target.closest("button, input, select, textarea")||((o=e.onMouseDown)==null||o.call(e,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}}));ql.displayName=Iv;var Xl=ql;const _v=Ht.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),De=d.forwardRef(({className:e,...t},r)=>i.jsx(Xl,{ref:r,className:P(_v(),e),...t}));De.displayName=Xl.displayName;function Yl(e){const t=d.useRef({value:e,previous:e});return d.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var mn="Switch",[Ov,Qw]=Fe(mn),[kv,Mv]=Ov(mn),Jl=d.forwardRef((e,t)=>{const{__scopeSwitch:r,name:n,checked:o,defaultChecked:s,required:a,disabled:c,value:l="on",onCheckedChange:f,form:u,...p}=e,[g,v]=d.useState(null),m=ie(t,y=>v(y)),h=d.useRef(!1),b=g?u||!!g.closest("form"):!0,[w,x]=ot({prop:o,defaultProp:s??!1,onChange:f,caller:mn});return i.jsxs(kv,{scope:r,checked:w,disabled:c,children:[i.jsx(te.button,{type:"button",role:"switch","aria-checked":w,"aria-required":a,"data-state":td(w),"data-disabled":c?"":void 0,disabled:c,value:l,...p,ref:m,onClick:H(e.onClick,y=>{x(C=>!C),b&&(h.current=y.isPropagationStopped(),h.current||y.stopPropagation())})}),b&&i.jsx(ed,{control:g,bubbles:!h.current,name:n,value:l,checked:w,required:a,disabled:c,form:u,style:{transform:"translateX(-100%)"}})]})});Jl.displayName=mn;var Zl="SwitchThumb",Ql=d.forwardRef((e,t)=>{const{__scopeSwitch:r,...n}=e,o=Mv(Zl,r);return i.jsx(te.span,{"data-state":td(o.checked),"data-disabled":o.disabled?"":void 0,...n,ref:t})});Ql.displayName=Zl;var Dv="SwitchBubbleInput",ed=d.forwardRef(({__scopeSwitch:e,control:t,checked:r,bubbles:n=!0,...o},s)=>{const a=d.useRef(null),c=ie(a,s),l=Yl(r),f=oi(t);return d.useEffect(()=>{const u=a.current;if(!u)return;const p=window.HTMLInputElement.prototype,v=Object.getOwnPropertyDescriptor(p,"checked").set;if(l!==r&&v){const m=new Event("click",{bubbles:n});v.call(u,r),u.dispatchEvent(m)}},[l,r,n]),i.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:r,...o,tabIndex:-1,ref:c,style:{...o.style,...f,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});ed.displayName=Dv;function td(e){return e?"checked":"unchecked"}var rd=Jl,Lv=Ql;const ct=d.forwardRef(({className:e,...t},r)=>i.jsx(rd,{className:P("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:r,children:i.jsx(Lv,{className:P("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));ct.displayName=rd.displayName;var Fv=[" ","Enter","ArrowUp","ArrowDown"],$v=[" ","Enter"],wt="Select",[bn,vn,Bv]=ro(wt),[Ut,ey]=Fe(wt,[Bv,kt]),wn=kt(),[Uv,lt]=Ut(wt),[Hv,zv]=Ut(wt),nd=e=>{const{__scopeSelect:t,children:r,open:n,defaultOpen:o,onOpenChange:s,value:a,defaultValue:c,onValueChange:l,dir:f,name:u,autoComplete:p,disabled:g,required:v,form:m}=e,h=wn(t),[b,w]=d.useState(null),[x,y]=d.useState(null),[C,N]=d.useState(!1),O=kr(f),[E,M]=ot({prop:n,defaultProp:o??!1,onChange:s,caller:wt}),[F,I]=ot({prop:a,defaultProp:c,onChange:l,caller:wt}),B=d.useRef(null),R=b?m||!!b.closest("form"):!0,[U,D]=d.useState(new Set),z=Array.from(U).map(k=>k.props.value).join(";");return i.jsx(So,{...h,children:i.jsxs(Uv,{required:v,scope:t,trigger:b,onTriggerChange:w,valueNode:x,onValueNodeChange:y,valueNodeHasChildren:C,onValueNodeHasChildrenChange:N,contentId:$e(),value:F,onValueChange:I,open:E,onOpenChange:M,dir:O,triggerPointerDownPosRef:B,disabled:g,children:[i.jsx(bn.Provider,{scope:t,children:i.jsx(Hv,{scope:e.__scopeSelect,onNativeOptionAdd:d.useCallback(k=>{D(G=>new Set(G).add(k))},[]),onNativeOptionRemove:d.useCallback(k=>{D(G=>{const L=new Set(G);return L.delete(k),L})},[]),children:r})}),R?i.jsxs(Ad,{"aria-hidden":!0,required:v,tabIndex:-1,name:u,autoComplete:p,value:F,onChange:k=>I(k.target.value),disabled:g,form:m,children:[F===void 0?i.jsx("option",{value:""}):null,Array.from(U)]},z):null]})})};nd.displayName=wt;var od="SelectTrigger",sd=d.forwardRef((e,t)=>{const{__scopeSelect:r,disabled:n=!1,...o}=e,s=wn(r),a=lt(od,r),c=a.disabled||n,l=ie(t,a.onTriggerChange),f=vn(r),u=d.useRef("touch"),[p,g,v]=Id(h=>{const b=f().filter(y=>!y.disabled),w=b.find(y=>y.value===a.value),x=_d(b,h,w);x!==void 0&&a.onValueChange(x.value)}),m=h=>{c||(a.onOpenChange(!0),v()),h&&(a.triggerPointerDownPosRef.current={x:Math.round(h.pageX),y:Math.round(h.pageY)})};return i.jsx(Co,{asChild:!0,...s,children:i.jsx(te.button,{type:"button",role:"combobox","aria-controls":a.contentId,"aria-expanded":a.open,"aria-required":a.required,"aria-autocomplete":"none",dir:a.dir,"data-state":a.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":Pd(a.value)?"":void 0,...o,ref:l,onClick:H(o.onClick,h=>{h.currentTarget.focus(),u.current!=="mouse"&&m(h)}),onPointerDown:H(o.onPointerDown,h=>{u.current=h.pointerType;const b=h.target;b.hasPointerCapture(h.pointerId)&&b.releasePointerCapture(h.pointerId),h.button===0&&h.ctrlKey===!1&&h.pointerType==="mouse"&&(m(h),h.preventDefault())}),onKeyDown:H(o.onKeyDown,h=>{const b=p.current!=="";!(h.ctrlKey||h.altKey||h.metaKey)&&h.key.length===1&&g(h.key),!(b&&h.key===" ")&&Fv.includes(h.key)&&(m(),h.preventDefault())})})})});sd.displayName=od;var ad="SelectValue",id=d.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,children:s,placeholder:a="",...c}=e,l=lt(ad,r),{onValueNodeHasChildrenChange:f}=l,u=s!==void 0,p=ie(t,l.onValueNodeChange);return be(()=>{f(u)},[f,u]),i.jsx(te.span,{...c,ref:p,style:{pointerEvents:"none"},children:Pd(l.value)?i.jsx(i.Fragment,{children:a}):s})});id.displayName=ad;var Wv="SelectIcon",cd=d.forwardRef((e,t)=>{const{__scopeSelect:r,children:n,...o}=e;return i.jsx(te.span,{"aria-hidden":!0,...o,ref:t,children:n||"▼"})});cd.displayName=Wv;var Vv="SelectPortal",ld=e=>i.jsx(jr,{asChild:!0,...e});ld.displayName=Vv;var yt="SelectContent",dd=d.forwardRef((e,t)=>{const r=lt(yt,e.__scopeSelect),[n,o]=d.useState();if(be(()=>{o(new DocumentFragment)},[]),!r.open){const s=n;return s?hr.createPortal(i.jsx(ud,{scope:e.__scopeSelect,children:i.jsx(bn.Slot,{scope:e.__scopeSelect,children:i.jsx("div",{children:e.children})})}),s):null}return i.jsx(fd,{...e,ref:t})});dd.displayName=yt;var ze=10,[ud,dt]=Ut(yt),jv="SelectContentImpl",Kv=Ie.createSlot("SelectContent.RemoveScroll"),fd=d.forwardRef((e,t)=>{const{__scopeSelect:r,position:n="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:s,onPointerDownOutside:a,side:c,sideOffset:l,align:f,alignOffset:u,arrowPadding:p,collisionBoundary:g,collisionPadding:v,sticky:m,hideWhenDetached:h,avoidCollisions:b,...w}=e,x=lt(yt,r),[y,C]=d.useState(null),[N,O]=d.useState(null),E=ie(t,W=>C(W)),[M,F]=d.useState(null),[I,B]=d.useState(null),R=vn(r),[U,D]=d.useState(!1),z=d.useRef(!1);d.useEffect(()=>{if(y)return Io(y)},[y]),so();const k=d.useCallback(W=>{const[V,...se]=R().map(Z=>Z.ref.current),[j]=se.slice(-1),Q=document.activeElement;for(const Z of W)if(Z===Q||(Z==null||Z.scrollIntoView({block:"nearest"}),Z===V&&N&&(N.scrollTop=0),Z===j&&N&&(N.scrollTop=N.scrollHeight),Z==null||Z.focus(),document.activeElement!==Q))return},[R,N]),G=d.useCallback(()=>k([M,y]),[k,M,y]);d.useEffect(()=>{U&&G()},[U,G]);const{onOpenChange:L,triggerPointerDownPosRef:A}=x;d.useEffect(()=>{if(y){let W={x:0,y:0};const V=j=>{var Q,Z;W={x:Math.abs(Math.round(j.pageX)-(((Q=A.current)==null?void 0:Q.x)??0)),y:Math.abs(Math.round(j.pageY)-(((Z=A.current)==null?void 0:Z.y)??0))}},se=j=>{W.x<=10&&W.y<=10?j.preventDefault():y.contains(j.target)||L(!1),document.removeEventListener("pointermove",V),A.current=null};return A.current!==null&&(document.addEventListener("pointermove",V),document.addEventListener("pointerup",se,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",V),document.removeEventListener("pointerup",se,{capture:!0})}}},[y,L,A]),d.useEffect(()=>{const W=()=>L(!1);return window.addEventListener("blur",W),window.addEventListener("resize",W),()=>{window.removeEventListener("blur",W),window.removeEventListener("resize",W)}},[L]);const[ee,q]=Id(W=>{const V=R().filter(Q=>!Q.disabled),se=V.find(Q=>Q.ref.current===document.activeElement),j=_d(V,W,se);j&&setTimeout(()=>j.ref.current.focus())}),ce=d.useCallback((W,V,se)=>{const j=!z.current&&!se;(x.value!==void 0&&x.value===V||j)&&(F(W),j&&(z.current=!0))},[x.value]),$=d.useCallback(()=>y==null?void 0:y.focus(),[y]),K=d.useCallback((W,V,se)=>{const j=!z.current&&!se;(x.value!==void 0&&x.value===V||j)&&B(W)},[x.value]),le=n==="popper"?ns:pd,pe=le===ns?{side:c,sideOffset:l,align:f,alignOffset:u,arrowPadding:p,collisionBoundary:g,collisionPadding:v,sticky:m,hideWhenDetached:h,avoidCollisions:b}:{};return i.jsx(ud,{scope:r,content:y,viewport:N,onViewportChange:O,itemRefCallback:ce,selectedItem:M,onItemLeave:$,itemTextRefCallback:K,focusSelectedItem:G,selectedItemText:I,position:n,isPositioned:U,searchRef:ee,children:i.jsx(Zr,{as:Kv,allowPinchZoom:!0,children:i.jsx(Mr,{asChild:!0,trapped:x.open,onMountAutoFocus:W=>{W.preventDefault()},onUnmountAutoFocus:H(o,W=>{var V;(V=x.trigger)==null||V.focus({preventScroll:!0}),W.preventDefault()}),children:i.jsx(Xt,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:W=>W.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:i.jsx(le,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:W=>W.preventDefault(),...w,...pe,onPlaced:()=>D(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:H(w.onKeyDown,W=>{const V=W.ctrlKey||W.altKey||W.metaKey;if(W.key==="Tab"&&W.preventDefault(),!V&&W.key.length===1&&q(W.key),["ArrowUp","ArrowDown","Home","End"].includes(W.key)){let j=R().filter(Q=>!Q.disabled).map(Q=>Q.ref.current);if(["ArrowUp","End"].includes(W.key)&&(j=j.slice().reverse()),["ArrowUp","ArrowDown"].includes(W.key)){const Q=W.target,Z=j.indexOf(Q);j=j.slice(Z+1)}setTimeout(()=>k(j)),W.preventDefault()}})})})})})})});fd.displayName=jv;var Rv="SelectItemAlignedPosition",pd=d.forwardRef((e,t)=>{const{__scopeSelect:r,onPlaced:n,...o}=e,s=lt(yt,r),a=dt(yt,r),[c,l]=d.useState(null),[f,u]=d.useState(null),p=ie(t,E=>u(E)),g=vn(r),v=d.useRef(!1),m=d.useRef(!0),{viewport:h,selectedItem:b,selectedItemText:w,focusSelectedItem:x}=a,y=d.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&f&&h&&b&&w){const E=s.trigger.getBoundingClientRect(),M=f.getBoundingClientRect(),F=s.valueNode.getBoundingClientRect(),I=w.getBoundingClientRect();if(s.dir!=="rtl"){const Q=I.left-M.left,Z=F.left-Q,he=E.left-Z,Se=E.width+he,X=Math.max(Se,M.width),Y=window.innerWidth-ze,ge=Vo(Z,[ze,Math.max(ze,Y-X)]);c.style.minWidth=Se+"px",c.style.left=ge+"px"}else{const Q=M.right-I.right,Z=window.innerWidth-F.right-Q,he=window.innerWidth-E.right-Z,Se=E.width+he,X=Math.max(Se,M.width),Y=window.innerWidth-ze,ge=Vo(Z,[ze,Math.max(ze,Y-X)]);c.style.minWidth=Se+"px",c.style.right=ge+"px"}const B=g(),R=window.innerHeight-ze*2,U=h.scrollHeight,D=window.getComputedStyle(f),z=parseInt(D.borderTopWidth,10),k=parseInt(D.paddingTop,10),G=parseInt(D.borderBottomWidth,10),L=parseInt(D.paddingBottom,10),A=z+k+U+L+G,ee=Math.min(b.offsetHeight*5,A),q=window.getComputedStyle(h),ce=parseInt(q.paddingTop,10),$=parseInt(q.paddingBottom,10),K=E.top+E.height/2-ze,le=R-K,pe=b.offsetHeight/2,W=b.offsetTop+pe,V=z+k+W,se=A-V;if(V<=K){const Q=B.length>0&&b===B[B.length-1].ref.current;c.style.bottom="0px";const Z=f.clientHeight-h.offsetTop-h.offsetHeight,he=Math.max(le,pe+(Q?$:0)+Z+G),Se=V+he;c.style.height=Se+"px"}else{const Q=B.length>0&&b===B[0].ref.current;c.style.top="0px";const he=Math.max(K,z+h.offsetTop+(Q?ce:0)+pe)+se;c.style.height=he+"px",h.scrollTop=V-K+h.offsetTop}c.style.margin=`${ze}px 0`,c.style.minHeight=ee+"px",c.style.maxHeight=R+"px",n==null||n(),requestAnimationFrame(()=>v.current=!0)}},[g,s.trigger,s.valueNode,c,f,h,b,w,s.dir,n]);be(()=>y(),[y]);const[C,N]=d.useState();be(()=>{f&&N(window.getComputedStyle(f).zIndex)},[f]);const O=d.useCallback(E=>{E&&m.current===!0&&(y(),x==null||x(),m.current=!1)},[y,x]);return i.jsx(qv,{scope:r,contentWrapper:c,shouldExpandOnScrollRef:v,onScrollButtonChange:O,children:i.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:C},children:i.jsx(te.div,{...o,ref:p,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});pd.displayName=Rv;var Gv="SelectPopperPosition",ns=d.forwardRef((e,t)=>{const{__scopeSelect:r,align:n="start",collisionPadding:o=ze,...s}=e,a=wn(r);return i.jsx(Eo,{...a,...s,ref:t,align:n,collisionPadding:o,style:{boxSizing:"border-box",...s.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ns.displayName=Gv;var[qv,os]=Ut(yt,{}),ss="SelectViewport",hd=d.forwardRef((e,t)=>{const{__scopeSelect:r,nonce:n,...o}=e,s=dt(ss,r),a=os(ss,r),c=ie(t,s.onViewportChange),l=d.useRef(0);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),i.jsx(bn.Slot,{scope:r,children:i.jsx(te.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:H(o.onScroll,f=>{const u=f.currentTarget,{contentWrapper:p,shouldExpandOnScrollRef:g}=a;if(g!=null&&g.current&&p){const v=Math.abs(l.current-u.scrollTop);if(v>0){const m=window.innerHeight-ze*2,h=parseFloat(p.style.minHeight),b=parseFloat(p.style.height),w=Math.max(h,b);if(w<m){const x=w+v,y=Math.min(m,x),C=x-y;p.style.height=y+"px",p.style.bottom==="0px"&&(u.scrollTop=C>0?C:0,p.style.justifyContent="flex-end")}}}l.current=u.scrollTop})})})]})});hd.displayName=ss;var gd="SelectGroup",[Xv,Yv]=Ut(gd),Jv=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=$e();return i.jsx(Xv,{scope:r,id:o,children:i.jsx(te.div,{role:"group","aria-labelledby":o,...n,ref:t})})});Jv.displayName=gd;var md="SelectLabel",bd=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Yv(md,r);return i.jsx(te.div,{id:o.id,...n,ref:t})});bd.displayName=md;var yn="SelectItem",[Zv,vd]=Ut(yn),wd=d.forwardRef((e,t)=>{const{__scopeSelect:r,value:n,disabled:o=!1,textValue:s,...a}=e,c=lt(yn,r),l=dt(yn,r),f=c.value===n,[u,p]=d.useState(s??""),[g,v]=d.useState(!1),m=ie(t,x=>{var y;return(y=l.itemRefCallback)==null?void 0:y.call(l,x,n,o)}),h=$e(),b=d.useRef("touch"),w=()=>{o||(c.onValueChange(n),c.onOpenChange(!1))};if(n==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return i.jsx(Zv,{scope:r,value:n,disabled:o,textId:h,isSelected:f,onItemTextChange:d.useCallback(x=>{p(y=>y||((x==null?void 0:x.textContent)??"").trim())},[]),children:i.jsx(bn.ItemSlot,{scope:r,value:n,disabled:o,textValue:u,children:i.jsx(te.div,{role:"option","aria-labelledby":h,"data-highlighted":g?"":void 0,"aria-selected":f&&g,"data-state":f?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...a,ref:m,onFocus:H(a.onFocus,()=>v(!0)),onBlur:H(a.onBlur,()=>v(!1)),onClick:H(a.onClick,()=>{b.current!=="mouse"&&w()}),onPointerUp:H(a.onPointerUp,()=>{b.current==="mouse"&&w()}),onPointerDown:H(a.onPointerDown,x=>{b.current=x.pointerType}),onPointerMove:H(a.onPointerMove,x=>{var y;b.current=x.pointerType,o?(y=l.onItemLeave)==null||y.call(l):b.current==="mouse"&&x.currentTarget.focus({preventScroll:!0})}),onPointerLeave:H(a.onPointerLeave,x=>{var y;x.currentTarget===document.activeElement&&((y=l.onItemLeave)==null||y.call(l))}),onKeyDown:H(a.onKeyDown,x=>{var C;((C=l.searchRef)==null?void 0:C.current)!==""&&x.key===" "||($v.includes(x.key)&&w(),x.key===" "&&x.preventDefault())})})})})});wd.displayName=yn;var lr="SelectItemText",yd=d.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,...s}=e,a=lt(lr,r),c=dt(lr,r),l=vd(lr,r),f=zv(lr,r),[u,p]=d.useState(null),g=ie(t,w=>p(w),l.onItemTextChange,w=>{var x;return(x=c.itemTextRefCallback)==null?void 0:x.call(c,w,l.value,l.disabled)}),v=u==null?void 0:u.textContent,m=d.useMemo(()=>i.jsx("option",{value:l.value,disabled:l.disabled,children:v},l.value),[l.disabled,l.value,v]),{onNativeOptionAdd:h,onNativeOptionRemove:b}=f;return be(()=>(h(m),()=>b(m)),[h,b,m]),i.jsxs(i.Fragment,{children:[i.jsx(te.span,{id:l.textId,...s,ref:g}),l.isSelected&&a.valueNode&&!a.valueNodeHasChildren?hr.createPortal(s.children,a.valueNode):null]})});yd.displayName=lr;var xd="SelectItemIndicator",Sd=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return vd(xd,r).isSelected?i.jsx(te.span,{"aria-hidden":!0,...n,ref:t}):null});Sd.displayName=xd;var as="SelectScrollUpButton",Cd=d.forwardRef((e,t)=>{const r=dt(as,e.__scopeSelect),n=os(as,e.__scopeSelect),[o,s]=d.useState(!1),a=ie(t,n.onScrollButtonChange);return be(()=>{if(r.viewport&&r.isPositioned){let c=function(){const f=l.scrollTop>0;s(f)};const l=r.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[r.viewport,r.isPositioned]),o?i.jsx(Nd,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=r;c&&l&&(c.scrollTop=c.scrollTop-l.offsetHeight)}}):null});Cd.displayName=as;var is="SelectScrollDownButton",Ed=d.forwardRef((e,t)=>{const r=dt(is,e.__scopeSelect),n=os(is,e.__scopeSelect),[o,s]=d.useState(!1),a=ie(t,n.onScrollButtonChange);return be(()=>{if(r.viewport&&r.isPositioned){let c=function(){const f=l.scrollHeight-l.clientHeight,u=Math.ceil(l.scrollTop)<f;s(u)};const l=r.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[r.viewport,r.isPositioned]),o?i.jsx(Nd,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=r;c&&l&&(c.scrollTop=c.scrollTop+l.offsetHeight)}}):null});Ed.displayName=is;var Nd=d.forwardRef((e,t)=>{const{__scopeSelect:r,onAutoScroll:n,...o}=e,s=dt("SelectScrollButton",r),a=d.useRef(null),c=vn(r),l=d.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return d.useEffect(()=>()=>l(),[l]),be(()=>{var u;const f=c().find(p=>p.ref.current===document.activeElement);(u=f==null?void 0:f.ref.current)==null||u.scrollIntoView({block:"nearest"})},[c]),i.jsx(te.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:H(o.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(n,50))}),onPointerMove:H(o.onPointerMove,()=>{var f;(f=s.onItemLeave)==null||f.call(s),a.current===null&&(a.current=window.setInterval(n,50))}),onPointerLeave:H(o.onPointerLeave,()=>{l()})})}),Qv="SelectSeparator",Td=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return i.jsx(te.div,{"aria-hidden":!0,...n,ref:t})});Td.displayName=Qv;var cs="SelectArrow",ew=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=wn(r),s=lt(cs,r),a=dt(cs,r);return s.open&&a.position==="popper"?i.jsx(No,{...o,...n,ref:t}):null});ew.displayName=cs;var tw="SelectBubbleInput",Ad=d.forwardRef(({__scopeSelect:e,value:t,...r},n)=>{const o=d.useRef(null),s=ie(n,o),a=Yl(t);return d.useEffect(()=>{const c=o.current;if(!c)return;const l=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(a!==t&&u){const p=new Event("change",{bubbles:!0});u.call(c,t),c.dispatchEvent(p)}},[a,t]),i.jsx(te.select,{...r,style:{...El,...r.style},ref:s,defaultValue:t})});Ad.displayName=tw;function Pd(e){return e===""||e===void 0}function Id(e){const t=ve(e),r=d.useRef(""),n=d.useRef(0),o=d.useCallback(a=>{const c=r.current+a;t(c),function l(f){r.current=f,window.clearTimeout(n.current),f!==""&&(n.current=window.setTimeout(()=>l(""),1e3))}(c)},[t]),s=d.useCallback(()=>{r.current="",window.clearTimeout(n.current)},[]);return d.useEffect(()=>()=>window.clearTimeout(n.current),[]),[r,o,s]}function _d(e,t,r){const o=t.length>1&&Array.from(t).every(f=>f===t[0])?t[0]:t,s=r?e.indexOf(r):-1;let a=rw(e,Math.max(s,0));o.length===1&&(a=a.filter(f=>f!==r));const l=a.find(f=>f.textValue.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function rw(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var nw=nd,Od=sd,ow=id,sw=cd,aw=ld,kd=dd,iw=hd,Md=bd,Dd=wd,cw=yd,lw=Sd,Ld=Cd,Fd=Ed,$d=Td;const Bd=nw,Ud=ow,ls=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Od,{ref:n,className:P("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,i.jsx(sw,{asChild:!0,children:i.jsx(J.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));ls.displayName=Od.displayName;const Hd=d.forwardRef(({className:e,...t},r)=>i.jsx(Ld,{ref:r,className:P("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(J.ChevronUp,{className:"h-4 w-4"})}));Hd.displayName=Ld.displayName;const zd=d.forwardRef(({className:e,...t},r)=>i.jsx(Fd,{ref:r,className:P("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(J.ChevronDown,{className:"h-4 w-4"})}));zd.displayName=Fd.displayName;const ds=d.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>i.jsx(aw,{children:i.jsxs(kd,{ref:o,className:P("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:[i.jsx(Hd,{}),i.jsx(iw,{className:P("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),i.jsx(zd,{})]})}));ds.displayName=kd.displayName;const dw=d.forwardRef(({className:e,...t},r)=>i.jsx(Md,{ref:r,className:P("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...t}));dw.displayName=Md.displayName;const xt=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Dd,{ref:n,className:P("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(lw,{children:i.jsx(J.Check,{className:"h-4 w-4"})})}),i.jsx(cw,{children:t})]}));xt.displayName=Dd.displayName;const uw=d.forwardRef(({className:e,...t},r)=>i.jsx($d,{ref:r,className:P("-mx-1 my-1 h-px bg-muted",e),...t}));uw.displayName=$d.displayName;const xn=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));xn.displayName="Card";const Sn=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("flex flex-col space-y-1.5 p-6",e),...t}));Sn.displayName="CardHeader";const Cn=d.forwardRef(({className:e,...t},r)=>i.jsx("h3",{ref:r,className:P("text-2xl font-semibold leading-none tracking-tight",e),...t}));Cn.displayName="CardTitle";const fw=d.forwardRef(({className:e,...t},r)=>i.jsx("p",{ref:r,className:P("text-sm text-muted-foreground",e),...t}));fw.displayName="CardDescription";const En=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("p-6 pt-0",e),...t}));En.displayName="CardContent";const pw=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("flex items-center p-6 pt-0",e),...t}));pw.displayName="CardFooter";const hw=1,gw=1e6;let us=0;function mw(){return us=(us+1)%Number.MAX_SAFE_INTEGER,us.toString()}const fs=new Map,Wd=e=>{if(fs.has(e))return;const t=setTimeout(()=>{fs.delete(e),dr({type:"REMOVE_TOAST",toastId:e})},gw);fs.set(e,t)},bw=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,hw)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(r=>r.id===t.toast.id?{...r,...t.toast}:r)};case"DISMISS_TOAST":{const{toastId:r}=t;return r?Wd(r):e.toasts.forEach(n=>{Wd(n.id)}),{...e,toasts:e.toasts.map(n=>n.id===r||r===void 0?{...n,open:!1}:n)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(r=>r.id!==t.toastId)}}},Nn=[];let Tn={toasts:[]};function dr(e){Tn=bw(Tn,e),Nn.forEach(t=>{t(Tn)})}function vw({...e}){const t=mw(),r=o=>dr({type:"UPDATE_TOAST",toast:{...o,id:t}}),n=()=>dr({type:"DISMISS_TOAST",toastId:t});return dr({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:o=>{o||n()}}}),{id:t,dismiss:n,update:r}}function ww(){const[e,t]=d.useState(Tn);return d.useEffect(()=>(Nn.push(t),()=>{const r=Nn.indexOf(t);r>-1&&Nn.splice(r,1)}),[e]),{...e,toast:vw,dismiss:r=>dr({type:"DISMISS_TOAST",toastId:r})}}const yw={api:{baseUrl:"http://localhost:8000/api",authToken:"",enableAuth:!1},ui:{layout:"sidebar",theme:"light",showTimestamps:!0,showAgentNames:!0,compactMessages:!1},behavior:{autoSave:!0,enableStreaming:!0,showTypingIndicator:!0}};function xw({settings:e,onSettingsChange:t,className:r=""}){const[n,o]=T.useState(!1),[s,a]=T.useState(!1),[c,l]=T.useState(e),[f,u]=T.useState(!1),{toast:p}=ww();T.useEffect(()=>{const b=JSON.stringify(c)!==JSON.stringify(e);u(b)},[c,e]),T.useEffect(()=>{l(e)},[e]);const g=()=>{t(c),u(!1),p({title:"Settings saved",description:"Your chat configuration has been updated successfully."})},v=()=>{l(yw),u(!0),p({title:"Settings reset",description:"Configuration has been reset to defaults."})},m=()=>{l(e),u(!1),o(!1)},h=async()=>{try{const w=await(await fetch(`${c.api.baseUrl}/health`)).json();p({title:"Connection successful",description:`API is ${w.status||"healthy"}`})}catch{p({title:"Connection failed",description:"Unable to connect to the API endpoint.",variant:"destructive"})}};return i.jsxs(vl,{open:n,onOpenChange:o,children:[i.jsx($b,{asChild:!0,children:i.jsxs(fe,{variant:"outline",size:"sm",className:r,children:[i.jsx(J.Settings,{className:"h-4 w-4 mr-2"}),"Settings",f&&i.jsx(ha,{variant:"destructive",className:"ml-2 h-4 w-4 p-0"})]})}),i.jsxs(Qo,{className:"w-[500px] sm:w-[600px] overflow-y-auto",children:[i.jsxs(yl,{children:[i.jsx(xl,{children:"Chat Settings"}),i.jsx(Sl,{children:"Configure your chat interface, API connection, and behavior preferences."})]}),i.jsxs("div",{className:"space-y-6 py-6",children:[i.jsxs(xn,{children:[i.jsx(Sn,{className:"pb-3",children:i.jsxs(Cn,{className:"text-lg flex items-center gap-2",children:[i.jsx(J.Server,{className:"h-5 w-5"}),"API Configuration"]})}),i.jsxs(En,{className:"space-y-4",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx(De,{htmlFor:"api-url",children:"API Base URL"}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(ar,{id:"api-url",value:c.api.baseUrl,onChange:b=>l(w=>({...w,api:{...w.api,baseUrl:b.target.value}})),placeholder:"http://localhost:8000/api"}),i.jsx(fe,{variant:"outline",onClick:h,children:"Test"})]})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(De,{htmlFor:"enable-auth",children:"Enable Authentication"}),i.jsx(ct,{id:"enable-auth",checked:c.api.enableAuth,onCheckedChange:b=>l(w=>({...w,api:{...w.api,enableAuth:b}}))})]}),c.api.enableAuth&&i.jsxs("div",{className:"space-y-2",children:[i.jsx(De,{htmlFor:"auth-token",children:"Authentication Token"}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(ar,{id:"auth-token",type:s?"text":"password",value:c.api.authToken,onChange:b=>l(w=>({...w,api:{...w.api,authToken:b.target.value}})),placeholder:"Enter your Bearer token"}),i.jsx(fe,{variant:"outline",size:"icon",onClick:()=>a(!s),children:s?i.jsx(J.EyeOff,{className:"h-4 w-4"}):i.jsx(J.Eye,{className:"h-4 w-4"})})]})]})]})]}),i.jsxs(xn,{children:[i.jsx(Sn,{className:"pb-3",children:i.jsxs(Cn,{className:"text-lg flex items-center gap-2",children:[i.jsx(J.Layout,{className:"h-5 w-5"}),"Interface Settings"]})}),i.jsxs(En,{className:"space-y-4",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx(De,{htmlFor:"layout",children:"Layout Style"}),i.jsxs(Bd,{value:c.ui.layout,onValueChange:b=>l(w=>({...w,ui:{...w.ui,layout:b}})),children:[i.jsx(ls,{children:i.jsx(Ud,{})}),i.jsxs(ds,{children:[i.jsx(xt,{value:"sidebar",children:"Sidebar Layout"}),i.jsx(xt,{value:"fullscreen",children:"Fullscreen"}),i.jsx(xt,{value:"tabs",children:"Tabbed Interface"})]})]})]}),i.jsxs("div",{className:"space-y-2",children:[i.jsx(De,{htmlFor:"theme",children:"Theme"}),i.jsxs(Bd,{value:c.ui.theme,onValueChange:b=>l(w=>({...w,ui:{...w.ui,theme:b}})),children:[i.jsx(ls,{children:i.jsx(Ud,{})}),i.jsxs(ds,{children:[i.jsx(xt,{value:"light",children:"Light"}),i.jsx(xt,{value:"dark",children:"Dark"}),i.jsx(xt,{value:"system",children:"System"})]})]})]}),i.jsx(Xo,{}),i.jsxs("div",{className:"space-y-3",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(De,{htmlFor:"show-timestamps",children:"Show Timestamps"}),i.jsx(ct,{id:"show-timestamps",checked:c.ui.showTimestamps,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,showTimestamps:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(De,{htmlFor:"show-agent-names",children:"Show Agent Names"}),i.jsx(ct,{id:"show-agent-names",checked:c.ui.showAgentNames,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,showAgentNames:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(De,{htmlFor:"compact-messages",children:"Compact Messages"}),i.jsx(ct,{id:"compact-messages",checked:c.ui.compactMessages,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,compactMessages:b}}))})]})]})]})]}),i.jsxs(xn,{children:[i.jsx(Sn,{className:"pb-3",children:i.jsxs(Cn,{className:"text-lg flex items-center gap-2",children:[i.jsx(J.MessageCircle,{className:"h-5 w-5"}),"Behavior Settings"]})}),i.jsxs(En,{className:"space-y-4",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(De,{htmlFor:"auto-save",children:"Auto-save Conversations"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Automatically save messages to threads"})]}),i.jsx(ct,{id:"auto-save",checked:c.behavior.autoSave,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,autoSave:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(De,{htmlFor:"enable-streaming",children:"Enable Streaming"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Stream responses in real-time"})]}),i.jsx(ct,{id:"enable-streaming",checked:c.behavior.enableStreaming,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,enableStreaming:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(De,{htmlFor:"typing-indicator",children:"Typing Indicator"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Show typing indicator during responses"})]}),i.jsx(ct,{id:"typing-indicator",checked:c.behavior.showTypingIndicator,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,showTypingIndicator:b}}))})]})]})]})]}),i.jsxs("div",{className:"flex items-center justify-between pt-6 border-t",children:[i.jsxs(fe,{variant:"outline",onClick:v,children:[i.jsx(J.RotateCcw,{className:"h-4 w-4 mr-2"}),"Reset"]}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(fe,{variant:"outline",onClick:m,children:"Cancel"}),i.jsxs(fe,{onClick:g,disabled:!f,children:[i.jsx(J.Save,{className:"h-4 w-4 mr-2"}),"Save Changes"]})]})]})]})]})}function Sw({layout:e="sidebar",layoutSize:t="desktop",showThreads:r=!0,className:n="",customStyles:o={},...s}){const a=f=>{const u="h-full";switch(f){case"phone":return`${u} max-w-none`;case"tablet":return`${u} max-w-4xl mx-auto`;case"half-screen":return`${u} max-w-2xl`;case"desktop":default:return`${u} max-w-7xl mx-auto`}},c=f=>({"--chat-sidebar-width":f==="phone"?"100%":f==="tablet"?"280px":f==="half-screen"?"240px":"320px","--chat-message-max-width":f==="phone"?"95%":f==="tablet"?"90%":f==="half-screen"?"85%":"80%","--chat-input-height":f==="phone"?"120px":"100px"}),l=T.useCallback(f=>{var u;(u=s.onThreadChange)==null||u.call(s,f)},[s.onThreadChange]);return e==="fullscreen"?i.jsx(Rt,{...s,onThreadChange:l,children:i.jsx("div",{className:`${a(t)} flex flex-col overflow-hidden ${n} ${o.container||""}`,style:c(t),children:i.jsx(sr,{className:"flex-1",onError:s.onError,enableFileUpload:!0})})}):e==="tabs"?i.jsx(Rt,{...s,onThreadChange:l,children:i.jsx("div",{className:`${a(t)} flex flex-col overflow-hidden ${n} ${o.container||""}`,style:c(t),children:i.jsxs("div",{className:"flex-1 flex min-h-0 overflow-hidden",children:[r&&i.jsx("div",{className:`w-80 border-r flex-shrink-0 overflow-hidden ${o.sidebar||""}`,children:i.jsx(ln,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-full"})}),i.jsx("div",{className:`flex-1 min-w-0 overflow-hidden ${o.chatArea||""}`,children:i.jsx(sr,{onError:s.onError,enableFileUpload:!0})})]})})}):i.jsx(Rt,{...s,onThreadChange:l,children:i.jsxs("div",{className:`${a(t)} flex overflow-hidden ${n} ${o.container||""}`,style:c(t),children:[r&&i.jsx("div",{className:`w-80 border-r bg-gray-50 flex-shrink-0 overflow-hidden ${o.sidebar||""}`,children:i.jsx(ln,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-full"})}),i.jsx("div",{className:`flex-1 min-w-0 overflow-hidden ${o.chatArea||""}`,children:i.jsx(sr,{onError:s.onError,enableFileUpload:!0})})]})})}ne.Api=Pr,ne.ApiClient=Pr,ne.ChatApi=Pr,ne.ChatInterface=sr,ne.ChatMainLayout=Pv,ne.ChatProvider=Rt,ne.ChatRoutingProvider=fb,ne.ChatSettings=xw,ne.MarkdownContent=Gt,ne.MessageComponent=Sa,ne.ThreadManager=ln,ne.apiClient=Qe,ne.applySettings=wb,ne.chatApiClient=Qe,ne.default=Sw,ne.del=ca,ne.get=Re,ne.getChatToken=sa,ne.getCurrentSettings=vb,ne.getDefaultApiConfig=Rc,ne.getDefaultChatSettings=Gc,ne.onChatTokenChanged=aa,ne.post=Ar,ne.put=ia,ne.setChatToken=Gn,ne.useChat=Yn,ne.useChatRouting=pb,ne.useChatStream=la,ne.useMessagesReducer=da,Object.defineProperties(ne,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
62
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return d.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},Mb="DialogDescriptionWarning",Db=({contentRef:e,descriptionId:t})=>{const n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${gl(Mb).contentName}}.`;return d.useEffect(()=>{var s;const o=(s=e.current)==null?void 0:s.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},Lb=tl,Fb=nl,$b=sl,ml=al,bl=il,vl=ll,wl=ul,Bb=pl;const yl=Lb,Ub=Fb,Hb=$b,xl=d.forwardRef(({className:e,...t},r)=>i.jsx(ml,{className:P("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:r}));xl.displayName=ml.displayName;const zb=Wt.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),es=d.forwardRef(({side:e="right",className:t,children:r,...n},o)=>i.jsxs(Hb,{children:[i.jsx(xl,{}),i.jsxs(bl,{ref:o,className:P(zb({side:e}),t),...n,children:[r,i.jsxs(Bb,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[i.jsx(X.X,{className:"h-4 w-4"}),i.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));es.displayName=bl.displayName;const Sl=({className:e,...t})=>i.jsx("div",{className:P("flex flex-col space-y-2 text-center sm:text-left",e),...t});Sl.displayName="SheetHeader";const Cl=d.forwardRef(({className:e,...t},r)=>i.jsx(vl,{ref:r,className:P("text-lg font-semibold text-foreground",e),...t}));Cl.displayName=vl.displayName;const El=d.forwardRef(({className:e,...t},r)=>i.jsx(wl,{ref:r,className:P("text-sm text-muted-foreground",e),...t}));El.displayName=wl.displayName;function Nl({className:e,...t}){return i.jsx("div",{className:P("animate-pulse rounded-md bg-muted",e),...t})}var Tl=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),Wb="VisuallyHidden",Al=d.forwardRef((e,t)=>i.jsx(te.span,{...e,ref:t,style:{...Tl,...e.style}}));Al.displayName=Wb;var Vb=Al,[pn,Qw]=$e("Tooltip",[kt]),hn=kt(),Pl="TooltipProvider",jb=700,ts="tooltip.open",[Kb,rs]=pn(Pl),Il=e=>{const{__scopeTooltip:t,delayDuration:r=jb,skipDelayDuration:n=300,disableHoverableContent:o=!1,children:s}=e,a=d.useRef(!0),c=d.useRef(!1),l=d.useRef(0);return d.useEffect(()=>{const f=l.current;return()=>window.clearTimeout(f)},[]),i.jsx(Kb,{scope:t,isOpenDelayedRef:a,delayDuration:r,onOpen:d.useCallback(()=>{window.clearTimeout(l.current),a.current=!1},[]),onClose:d.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>a.current=!0,n)},[n]),isPointerInTransitRef:c,onPointerInTransitChange:d.useCallback(f=>{c.current=f},[]),disableHoverableContent:o,children:s})};Il.displayName=Pl;var dr="Tooltip",[Rb,gn]=pn(dr),_l=e=>{const{__scopeTooltip:t,children:r,open:n,defaultOpen:o,onOpenChange:s,disableHoverableContent:a,delayDuration:c}=e,l=rs(dr,e.__scopeTooltip),f=hn(t),[u,p]=d.useState(null),g=Be(),v=d.useRef(0),m=a??l.disableHoverableContent,h=c??l.delayDuration,b=d.useRef(!1),[w,x]=ot({prop:n,defaultProp:o??!1,onChange:E=>{E?(l.onOpen(),document.dispatchEvent(new CustomEvent(ts))):l.onClose(),s==null||s(E)},caller:dr}),y=d.useMemo(()=>w?b.current?"delayed-open":"instant-open":"closed",[w]),C=d.useCallback(()=>{window.clearTimeout(v.current),v.current=0,b.current=!1,x(!0)},[x]),N=d.useCallback(()=>{window.clearTimeout(v.current),v.current=0,x(!1)},[x]),O=d.useCallback(()=>{window.clearTimeout(v.current),v.current=window.setTimeout(()=>{b.current=!0,x(!0),v.current=0},h)},[h,x]);return d.useEffect(()=>()=>{v.current&&(window.clearTimeout(v.current),v.current=0)},[]),i.jsx(Co,{...f,children:i.jsx(Rb,{scope:t,contentId:g,open:w,stateAttribute:y,trigger:u,onTriggerChange:p,onTriggerEnter:d.useCallback(()=>{l.isOpenDelayedRef.current?O():C()},[l.isOpenDelayedRef,O,C]),onTriggerLeave:d.useCallback(()=>{m?N():(window.clearTimeout(v.current),v.current=0)},[N,m]),onOpen:C,onClose:N,disableHoverableContent:m,children:r})})};_l.displayName=dr;var ns="TooltipTrigger",Ol=d.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=gn(ns,r),s=rs(ns,r),a=hn(r),c=d.useRef(null),l=ae(t,c,o.onTriggerChange),f=d.useRef(!1),u=d.useRef(!1),p=d.useCallback(()=>f.current=!1,[]);return d.useEffect(()=>()=>document.removeEventListener("pointerup",p),[p]),i.jsx(Eo,{asChild:!0,...a,children:i.jsx(te.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...n,ref:l,onPointerMove:H(e.onPointerMove,g=>{g.pointerType!=="touch"&&!u.current&&!s.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:H(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:H(e.onPointerDown,()=>{o.open&&o.onClose(),f.current=!0,document.addEventListener("pointerup",p,{once:!0})}),onFocus:H(e.onFocus,()=>{f.current||o.onOpen()}),onBlur:H(e.onBlur,o.onClose),onClick:H(e.onClick,o.onClose)})})});Ol.displayName=ns;var Gb="TooltipPortal",[ey,qb]=pn(Gb,{forceMount:void 0}),Bt="TooltipContent",kl=d.forwardRef((e,t)=>{const r=qb(Bt,e.__scopeTooltip),{forceMount:n=r.forceMount,side:o="top",...s}=e,a=gn(Bt,e.__scopeTooltip);return i.jsx(Ae,{present:n||a.open,children:a.disableHoverableContent?i.jsx(Ml,{side:o,...s,ref:t}):i.jsx(Xb,{side:o,...s,ref:t})})}),Xb=d.forwardRef((e,t)=>{const r=gn(Bt,e.__scopeTooltip),n=rs(Bt,e.__scopeTooltip),o=d.useRef(null),s=ae(t,o),[a,c]=d.useState(null),{trigger:l,onClose:f}=r,u=o.current,{onPointerInTransitChange:p}=n,g=d.useCallback(()=>{c(null),p(!1)},[p]),v=d.useCallback((m,h)=>{const b=m.currentTarget,w={x:m.clientX,y:m.clientY},x=ev(w,b.getBoundingClientRect()),y=tv(w,x),C=rv(h.getBoundingClientRect()),N=ov([...y,...C]);c(N),p(!0)},[p]);return d.useEffect(()=>()=>g(),[g]),d.useEffect(()=>{if(l&&u){const m=b=>v(b,u),h=b=>v(b,l);return l.addEventListener("pointerleave",m),u.addEventListener("pointerleave",h),()=>{l.removeEventListener("pointerleave",m),u.removeEventListener("pointerleave",h)}}},[l,u,v,g]),d.useEffect(()=>{if(a){const m=h=>{const b=h.target,w={x:h.clientX,y:h.clientY},x=(l==null?void 0:l.contains(b))||(u==null?void 0:u.contains(b)),y=!nv(w,a);x?g():y&&(g(),f())};return document.addEventListener("pointermove",m),()=>document.removeEventListener("pointermove",m)}},[l,u,a,f,g]),i.jsx(Ml,{...e,ref:s})}),[Yb,Jb]=pn(dr,{isInside:!1}),Zb=Ie.createSlottable("TooltipContent"),Ml=d.forwardRef((e,t)=>{const{__scopeTooltip:r,children:n,"aria-label":o,onEscapeKeyDown:s,onPointerDownOutside:a,...c}=e,l=gn(Bt,r),f=hn(r),{onClose:u}=l;return d.useEffect(()=>(document.addEventListener(ts,u),()=>document.removeEventListener(ts,u)),[u]),d.useEffect(()=>{if(l.trigger){const p=g=>{const v=g.target;v!=null&&v.contains(l.trigger)&&u()};return window.addEventListener("scroll",p,{capture:!0}),()=>window.removeEventListener("scroll",p,{capture:!0})}},[l.trigger,u]),i.jsx(Jt,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:p=>p.preventDefault(),onDismiss:u,children:i.jsxs(No,{"data-state":l.stateAttribute,...f,...c,ref:t,style:{...c.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[i.jsx(Zb,{children:n}),i.jsx(Yb,{scope:r,isInside:!0,children:i.jsx(Vb,{id:l.contentId,role:"tooltip",children:o||n})})]})})});kl.displayName=Bt;var Dl="TooltipArrow",Qb=d.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=hn(r);return Jb(Dl,r).isInside?null:i.jsx(To,{...o,...n,ref:t})});Qb.displayName=Dl;function ev(e,t){const r=Math.abs(t.top-e.y),n=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),s=Math.abs(t.left-e.x);switch(Math.min(r,n,o,s)){case s:return"left";case o:return"right";case r:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function tv(e,t,r=5){const n=[];switch(t){case"top":n.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":n.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":n.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":n.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return n}function rv(e){const{top:t,right:r,bottom:n,left:o}=e;return[{x:o,y:t},{x:r,y:t},{x:r,y:n},{x:o,y:n}]}function nv(e,t){const{x:r,y:n}=e;let o=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],f=c.x,u=c.y,p=l.x,g=l.y;u>n!=g>n&&r<(p-f)*(n-u)/(g-u)+f&&(o=!o)}return o}function ov(e){const t=e.slice();return t.sort((r,n)=>r.x<n.x?-1:r.x>n.x?1:r.y<n.y?-1:r.y>n.y?1:0),sv(t)}function sv(e){if(e.length<=1)return e.slice();const t=[];for(let n=0;n<e.length;n++){const o=e[n];for(;t.length>=2;){const s=t[t.length-1],a=t[t.length-2];if((s.x-a.x)*(o.y-a.y)>=(s.y-a.y)*(o.x-a.x))t.pop();else break}t.push(o)}t.pop();const r=[];for(let n=e.length-1;n>=0;n--){const o=e[n];for(;r.length>=2;){const s=r[r.length-1],a=r[r.length-2];if((s.x-a.x)*(o.y-a.y)>=(s.y-a.y)*(o.x-a.x))r.pop();else break}r.push(o)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}var av=Il,iv=_l,cv=Ol,Ll=kl;const lv=av,dv=iv,uv=cv,Fl=d.forwardRef(({className:e,sideOffset:t=4,...r},n)=>i.jsx(Ll,{ref:n,sideOffset:t,className:P("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r}));Fl.displayName=Ll.displayName;const fv="sidebar:state",pv=60*60*24*7,hv="16rem",gv="18rem",mv="3rem",bv="b",$l=d.createContext(null);function mn(){const e=d.useContext($l);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const Bl=d.forwardRef(({defaultOpen:e=!0,open:t,onOpenChange:r,className:n,style:o,children:s,...a},c)=>{const l=Sb(),[f,u]=d.useState(!1),[p,g]=d.useState(e),v=t??p,m=d.useCallback(x=>{const y=typeof x=="function"?x(v):x;r?r(y):g(y),document.cookie=`${fv}=${y}; path=/; max-age=${pv}`},[r,v]),h=d.useCallback(()=>l?u(x=>!x):m(x=>!x),[l,m,u]);d.useEffect(()=>{const x=y=>{y.key===bv&&(y.metaKey||y.ctrlKey)&&(y.preventDefault(),h())};return window.addEventListener("keydown",x),()=>window.removeEventListener("keydown",x)},[h]);const b=v?"expanded":"collapsed",w=d.useMemo(()=>({state:b,open:v,setOpen:m,isMobile:l,openMobile:f,setOpenMobile:u,toggleSidebar:h}),[b,v,m,l,f,u,h]);return i.jsx($l.Provider,{value:w,children:i.jsx(lv,{delayDuration:0,children:i.jsx("div",{style:{"--sidebar-width":hv,"--sidebar-width-icon":mv,...o},className:P("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar",n),ref:c,...a,children:s})})})});Bl.displayName="SidebarProvider";const Ul=d.forwardRef(({side:e="left",variant:t="sidebar",collapsible:r="offcanvas",className:n,children:o,...s},a)=>{const{isMobile:c,state:l,openMobile:f,setOpenMobile:u}=mn();return r==="none"?i.jsx("div",{className:P("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",n),ref:a,...s,children:o}):c?i.jsx(yl,{open:f,onOpenChange:u,...s,children:i.jsx(es,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":gv},side:e,children:i.jsx("div",{className:"flex h-full w-full flex-col",children:o})})}):i.jsxs("div",{ref:a,className:"group peer hidden md:block text-sidebar-foreground","data-state":l,"data-collapsible":l==="collapsed"?r:"","data-variant":t,"data-side":e,children:[i.jsx("div",{className:P("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",t==="floating"||t==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),i.jsx("div",{className:P("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex",e==="left"?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",t==="floating"||t==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",n),...s,children:i.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow",children:o})})]})});Ul.displayName="Sidebar";const Hl=d.forwardRef(({className:e,onClick:t,...r},n)=>{const{toggleSidebar:o}=mn();return i.jsxs(fe,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:P("h-7 w-7",e),onClick:s=>{t==null||t(s),o()},...r,children:[i.jsx(X.PanelLeft,{}),i.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Hl.displayName="SidebarTrigger";const vv=d.forwardRef(({className:e,...t},r)=>{const{toggleSidebar:n}=mn();return i.jsx("button",{ref:r,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:n,title:"Toggle Sidebar",className:P("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",e),...t})});vv.displayName="SidebarRail";const zl=d.forwardRef(({className:e,...t},r)=>i.jsx("main",{ref:r,className:P("relative flex min-h-svh flex-1 flex-col bg-background","peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",e),...t}));zl.displayName="SidebarInset";const wv=d.forwardRef(({className:e,...t},r)=>i.jsx(cr,{ref:r,"data-sidebar":"input",className:P("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",e),...t}));wv.displayName="SidebarInput";const Wl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"header",className:P("flex flex-col gap-2 p-2",e),...t}));Wl.displayName="SidebarHeader";const yv=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"footer",className:P("flex flex-col gap-2 p-2",e),...t}));yv.displayName="SidebarFooter";const xv=d.forwardRef(({className:e,...t},r)=>i.jsx(Yo,{ref:r,"data-sidebar":"separator",className:P("mx-2 w-auto bg-sidebar-border",e),...t}));xv.displayName="SidebarSeparator";const Vl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"content",className:P("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...t}));Vl.displayName="SidebarContent";const jl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"group",className:P("relative flex w-full min-w-0 flex-col p-2",e),...t}));jl.displayName="SidebarGroup";const Kl=d.forwardRef(({className:e,asChild:t=!1,...r},n)=>{const o=t?Ie.Slot:"div";return i.jsx(o,{ref:n,"data-sidebar":"group-label",className:P("duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",e),...r})});Kl.displayName="SidebarGroupLabel";const Sv=d.forwardRef(({className:e,asChild:t=!1,...r},n)=>{const o=t?Ie.Slot:"button";return i.jsx(o,{ref:n,"data-sidebar":"group-action",className:P("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",e),...r})});Sv.displayName="SidebarGroupAction";const Rl=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"group-content",className:P("w-full text-sm",e),...t}));Rl.displayName="SidebarGroupContent";const Gl=d.forwardRef(({className:e,...t},r)=>i.jsx("ul",{ref:r,"data-sidebar":"menu",className:P("flex w-full min-w-0 flex-col gap-1",e),...t}));Gl.displayName="SidebarMenu";const ql=d.forwardRef(({className:e,...t},r)=>i.jsx("li",{ref:r,"data-sidebar":"menu-item",className:P("group/menu-item relative",e),...t}));ql.displayName="SidebarMenuItem";const Cv=Wt.cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0"}},defaultVariants:{variant:"default",size:"default"}}),Xl=d.forwardRef(({asChild:e=!1,isActive:t=!1,variant:r="default",size:n="default",tooltip:o,className:s,...a},c)=>{const l=e?Ie.Slot:"button",{isMobile:f,state:u}=mn(),p=i.jsx(l,{ref:c,"data-sidebar":"menu-button","data-size":n,"data-active":t,className:P(Cv({variant:r,size:n}),s),...a});return o?(typeof o=="string"&&(o={children:o}),i.jsxs(dv,{children:[i.jsx(uv,{asChild:!0,children:p}),i.jsx(Fl,{side:"right",align:"center",hidden:u!=="collapsed"||f,...o})]})):p});Xl.displayName="SidebarMenuButton";const Ev=d.forwardRef(({className:e,asChild:t=!1,showOnHover:r=!1,...n},o)=>{const s=t?Ie.Slot:"button";return i.jsx(s,{ref:o,"data-sidebar":"menu-action",className:P("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",r&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",e),...n})});Ev.displayName="SidebarMenuAction";const Nv=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,"data-sidebar":"menu-badge",className:P("absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",e),...t}));Nv.displayName="SidebarMenuBadge";const Tv=d.forwardRef(({className:e,showIcon:t=!1,...r},n)=>{const o=d.useMemo(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return i.jsxs("div",{ref:n,"data-sidebar":"menu-skeleton",className:P("rounded-md h-8 flex gap-2 px-2 items-center",e),...r,children:[t&&i.jsx(Nl,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),i.jsx(Nl,{className:"h-4 flex-1 max-w-[--skeleton-width]","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})});Tv.displayName="SidebarMenuSkeleton";const Av=d.forwardRef(({className:e,...t},r)=>i.jsx("ul",{ref:r,"data-sidebar":"menu-sub",className:P("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",e),...t}));Av.displayName="SidebarMenuSub";const Pv=d.forwardRef(({...e},t)=>i.jsx("li",{ref:t,...e}));Pv.displayName="SidebarMenuSubItem";const Iv=d.forwardRef(({asChild:e=!1,size:t="md",isActive:r,className:n,...o},s)=>{const a=e?Ie.Slot:"a";return i.jsx(a,{ref:s,"data-sidebar":"menu-sub-button","data-size":t,"data-active":r,className:P("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",t==="sm"&&"text-xs",t==="md"&&"text-sm","group-data-[collapsible=icon]:hidden",n),...o})});Iv.displayName="SidebarMenuSubButton";function _v({header:e,sidebarTitle:t="Threads",showThreads:r=!0,className:n="",sidebarClassName:o="",chatClassName:s="",...a}){return i.jsx(qt,{...a,children:i.jsxs(Bl,{className:`w-full ${n}`,children:[i.jsxs(Ul,{className:`border-r ${o}`,children:[i.jsx(Wl,{children:i.jsx(Gl,{children:i.jsx(ql,{children:i.jsx(Xl,{size:"lg",children:i.jsx("span",{className:"font-semibold",children:t})})})})}),i.jsx(Vl,{children:r&&i.jsxs(jl,{children:[i.jsx(Kl,{children:"Conversations"}),i.jsx(Rl,{children:i.jsx("div",{className:"px-2 py-1",children:i.jsx(dn,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-[calc(100vh-12rem)]"})})})]})})]}),i.jsxs(zl,{children:[i.jsxs("header",{className:"h-14 border-b bg-background/60 backdrop-blur flex items-center gap-2 px-4",children:[i.jsx(Hl,{}),i.jsx("div",{className:"flex-1"}),e]}),i.jsx("main",{className:`flex-1 min-h-0 overflow-hidden ${s}`,children:i.jsx(ir,{})})]})]})})}var Ov="Label",Yl=d.forwardRef((e,t)=>i.jsx(te.label,{...e,ref:t,onMouseDown:r=>{var o;r.target.closest("button, input, select, textarea")||((o=e.onMouseDown)==null||o.call(e,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}}));Yl.displayName=Ov;var Jl=Yl;const kv=Wt.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Le=d.forwardRef(({className:e,...t},r)=>i.jsx(Jl,{ref:r,className:P(kv(),e),...t}));Le.displayName=Jl.displayName;function Zl(e){const t=d.useRef({value:e,previous:e});return d.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var bn="Switch",[Mv,ty]=$e(bn),[Dv,Lv]=Mv(bn),Ql=d.forwardRef((e,t)=>{const{__scopeSwitch:r,name:n,checked:o,defaultChecked:s,required:a,disabled:c,value:l="on",onCheckedChange:f,form:u,...p}=e,[g,v]=d.useState(null),m=ae(t,y=>v(y)),h=d.useRef(!1),b=g?u||!!g.closest("form"):!0,[w,x]=ot({prop:o,defaultProp:s??!1,onChange:f,caller:bn});return i.jsxs(Dv,{scope:r,checked:w,disabled:c,children:[i.jsx(te.button,{type:"button",role:"switch","aria-checked":w,"aria-required":a,"data-state":nd(w),"data-disabled":c?"":void 0,disabled:c,value:l,...p,ref:m,onClick:H(e.onClick,y=>{x(C=>!C),b&&(h.current=y.isPropagationStopped(),h.current||y.stopPropagation())})}),b&&i.jsx(rd,{control:g,bubbles:!h.current,name:n,value:l,checked:w,required:a,disabled:c,form:u,style:{transform:"translateX(-100%)"}})]})});Ql.displayName=bn;var ed="SwitchThumb",td=d.forwardRef((e,t)=>{const{__scopeSwitch:r,...n}=e,o=Lv(ed,r);return i.jsx(te.span,{"data-state":nd(o.checked),"data-disabled":o.disabled?"":void 0,...n,ref:t})});td.displayName=ed;var Fv="SwitchBubbleInput",rd=d.forwardRef(({__scopeSwitch:e,control:t,checked:r,bubbles:n=!0,...o},s)=>{const a=d.useRef(null),c=ae(a,s),l=Zl(r),f=ai(t);return d.useEffect(()=>{const u=a.current;if(!u)return;const p=window.HTMLInputElement.prototype,v=Object.getOwnPropertyDescriptor(p,"checked").set;if(l!==r&&v){const m=new Event("click",{bubbles:n});v.call(u,r),u.dispatchEvent(m)}},[l,r,n]),i.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:r,...o,tabIndex:-1,ref:c,style:{...o.style,...f,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});rd.displayName=Fv;function nd(e){return e?"checked":"unchecked"}var od=Ql,$v=td;const ct=d.forwardRef(({className:e,...t},r)=>i.jsx(od,{className:P("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:r,children:i.jsx($v,{className:P("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));ct.displayName=od.displayName;var Bv=[" ","Enter","ArrowUp","ArrowDown"],Uv=[" ","Enter"],yt="Select",[vn,wn,Hv]=no(yt),[Ut,ry]=$e(yt,[Hv,kt]),yn=kt(),[zv,lt]=Ut(yt),[Wv,Vv]=Ut(yt),sd=e=>{const{__scopeSelect:t,children:r,open:n,defaultOpen:o,onOpenChange:s,value:a,defaultValue:c,onValueChange:l,dir:f,name:u,autoComplete:p,disabled:g,required:v,form:m}=e,h=yn(t),[b,w]=d.useState(null),[x,y]=d.useState(null),[C,N]=d.useState(!1),O=Mr(f),[E,M]=ot({prop:n,defaultProp:o??!1,onChange:s,caller:yt}),[F,I]=ot({prop:a,defaultProp:c,onChange:l,caller:yt}),B=d.useRef(null),R=b?m||!!b.closest("form"):!0,[U,D]=d.useState(new Set),z=Array.from(U).map(k=>k.props.value).join(";");return i.jsx(Co,{...h,children:i.jsxs(zv,{required:v,scope:t,trigger:b,onTriggerChange:w,valueNode:x,onValueNodeChange:y,valueNodeHasChildren:C,onValueNodeHasChildrenChange:N,contentId:Be(),value:F,onValueChange:I,open:E,onOpenChange:M,dir:O,triggerPointerDownPosRef:B,disabled:g,children:[i.jsx(vn.Provider,{scope:t,children:i.jsx(Wv,{scope:e.__scopeSelect,onNativeOptionAdd:d.useCallback(k=>{D(G=>new Set(G).add(k))},[]),onNativeOptionRemove:d.useCallback(k=>{D(G=>{const L=new Set(G);return L.delete(k),L})},[]),children:r})}),R?i.jsxs(Id,{"aria-hidden":!0,required:v,tabIndex:-1,name:u,autoComplete:p,value:F,onChange:k=>I(k.target.value),disabled:g,form:m,children:[F===void 0?i.jsx("option",{value:""}):null,Array.from(U)]},z):null]})})};sd.displayName=yt;var ad="SelectTrigger",id=d.forwardRef((e,t)=>{const{__scopeSelect:r,disabled:n=!1,...o}=e,s=yn(r),a=lt(ad,r),c=a.disabled||n,l=ae(t,a.onTriggerChange),f=wn(r),u=d.useRef("touch"),[p,g,v]=Od(h=>{const b=f().filter(y=>!y.disabled),w=b.find(y=>y.value===a.value),x=kd(b,h,w);x!==void 0&&a.onValueChange(x.value)}),m=h=>{c||(a.onOpenChange(!0),v()),h&&(a.triggerPointerDownPosRef.current={x:Math.round(h.pageX),y:Math.round(h.pageY)})};return i.jsx(Eo,{asChild:!0,...s,children:i.jsx(te.button,{type:"button",role:"combobox","aria-controls":a.contentId,"aria-expanded":a.open,"aria-required":a.required,"aria-autocomplete":"none",dir:a.dir,"data-state":a.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":_d(a.value)?"":void 0,...o,ref:l,onClick:H(o.onClick,h=>{h.currentTarget.focus(),u.current!=="mouse"&&m(h)}),onPointerDown:H(o.onPointerDown,h=>{u.current=h.pointerType;const b=h.target;b.hasPointerCapture(h.pointerId)&&b.releasePointerCapture(h.pointerId),h.button===0&&h.ctrlKey===!1&&h.pointerType==="mouse"&&(m(h),h.preventDefault())}),onKeyDown:H(o.onKeyDown,h=>{const b=p.current!=="";!(h.ctrlKey||h.altKey||h.metaKey)&&h.key.length===1&&g(h.key),!(b&&h.key===" ")&&Bv.includes(h.key)&&(m(),h.preventDefault())})})})});id.displayName=ad;var cd="SelectValue",ld=d.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,children:s,placeholder:a="",...c}=e,l=lt(cd,r),{onValueNodeHasChildrenChange:f}=l,u=s!==void 0,p=ae(t,l.onValueNodeChange);return ve(()=>{f(u)},[f,u]),i.jsx(te.span,{...c,ref:p,style:{pointerEvents:"none"},children:_d(l.value)?i.jsx(i.Fragment,{children:a}):s})});ld.displayName=cd;var jv="SelectIcon",dd=d.forwardRef((e,t)=>{const{__scopeSelect:r,children:n,...o}=e;return i.jsx(te.span,{"aria-hidden":!0,...o,ref:t,children:n||"▼"})});dd.displayName=jv;var Kv="SelectPortal",ud=e=>i.jsx(Kr,{asChild:!0,...e});ud.displayName=Kv;var xt="SelectContent",fd=d.forwardRef((e,t)=>{const r=lt(xt,e.__scopeSelect),[n,o]=d.useState();if(ve(()=>{o(new DocumentFragment)},[]),!r.open){const s=n;return s?gr.createPortal(i.jsx(pd,{scope:e.__scopeSelect,children:i.jsx(vn.Slot,{scope:e.__scopeSelect,children:i.jsx("div",{children:e.children})})}),s):null}return i.jsx(hd,{...e,ref:t})});fd.displayName=xt;var We=10,[pd,dt]=Ut(xt),Rv="SelectContentImpl",Gv=Ie.createSlot("SelectContent.RemoveScroll"),hd=d.forwardRef((e,t)=>{const{__scopeSelect:r,position:n="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:s,onPointerDownOutside:a,side:c,sideOffset:l,align:f,alignOffset:u,arrowPadding:p,collisionBoundary:g,collisionPadding:v,sticky:m,hideWhenDetached:h,avoidCollisions:b,...w}=e,x=lt(xt,r),[y,C]=d.useState(null),[N,O]=d.useState(null),E=ae(t,W=>C(W)),[M,F]=d.useState(null),[I,B]=d.useState(null),R=wn(r),[U,D]=d.useState(!1),z=d.useRef(!1);d.useEffect(()=>{if(y)return _o(y)},[y]),ao();const k=d.useCallback(W=>{const[V,...ce]=R().map(ne=>ne.ref.current),[K]=ce.slice(-1),Y=document.activeElement;for(const ne of W)if(ne===Y||(ne==null||ne.scrollIntoView({block:"nearest"}),ne===V&&N&&(N.scrollTop=0),ne===K&&N&&(N.scrollTop=N.scrollHeight),ne==null||ne.focus(),document.activeElement!==Y))return},[R,N]),G=d.useCallback(()=>k([M,y]),[k,M,y]);d.useEffect(()=>{U&&G()},[U,G]);const{onOpenChange:L,triggerPointerDownPosRef:A}=x;d.useEffect(()=>{if(y){let W={x:0,y:0};const V=K=>{var Y,ne;W={x:Math.abs(Math.round(K.pageX)-(((Y=A.current)==null?void 0:Y.x)??0)),y:Math.abs(Math.round(K.pageY)-(((ne=A.current)==null?void 0:ne.y)??0))}},ce=K=>{W.x<=10&&W.y<=10?K.preventDefault():y.contains(K.target)||L(!1),document.removeEventListener("pointermove",V),A.current=null};return A.current!==null&&(document.addEventListener("pointermove",V),document.addEventListener("pointerup",ce,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",V),document.removeEventListener("pointerup",ce,{capture:!0})}}},[y,L,A]),d.useEffect(()=>{const W=()=>L(!1);return window.addEventListener("blur",W),window.addEventListener("resize",W),()=>{window.removeEventListener("blur",W),window.removeEventListener("resize",W)}},[L]);const[ee,q]=Od(W=>{const V=R().filter(Y=>!Y.disabled),ce=V.find(Y=>Y.ref.current===document.activeElement),K=kd(V,W,ce);K&&setTimeout(()=>K.ref.current.focus())}),ie=d.useCallback((W,V,ce)=>{const K=!z.current&&!ce;(x.value!==void 0&&x.value===V||K)&&(F(W),K&&(z.current=!0))},[x.value]),$=d.useCallback(()=>y==null?void 0:y.focus(),[y]),j=d.useCallback((W,V,ce)=>{const K=!z.current&&!ce;(x.value!==void 0&&x.value===V||K)&&B(W)},[x.value]),le=n==="popper"?os:gd,he=le===os?{side:c,sideOffset:l,align:f,alignOffset:u,arrowPadding:p,collisionBoundary:g,collisionPadding:v,sticky:m,hideWhenDetached:h,avoidCollisions:b}:{};return i.jsx(pd,{scope:r,content:y,viewport:N,onViewportChange:O,itemRefCallback:ie,selectedItem:M,onItemLeave:$,itemTextRefCallback:j,focusSelectedItem:G,selectedItemText:I,position:n,isPositioned:U,searchRef:ee,children:i.jsx(Qr,{as:Gv,allowPinchZoom:!0,children:i.jsx(Dr,{asChild:!0,trapped:x.open,onMountAutoFocus:W=>{W.preventDefault()},onUnmountAutoFocus:H(o,W=>{var V;(V=x.trigger)==null||V.focus({preventScroll:!0}),W.preventDefault()}),children:i.jsx(Jt,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:W=>W.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:i.jsx(le,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:W=>W.preventDefault(),...w,...he,onPlaced:()=>D(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:H(w.onKeyDown,W=>{const V=W.ctrlKey||W.altKey||W.metaKey;if(W.key==="Tab"&&W.preventDefault(),!V&&W.key.length===1&&q(W.key),["ArrowUp","ArrowDown","Home","End"].includes(W.key)){let K=R().filter(Y=>!Y.disabled).map(Y=>Y.ref.current);if(["ArrowUp","End"].includes(W.key)&&(K=K.slice().reverse()),["ArrowUp","ArrowDown"].includes(W.key)){const Y=W.target,ne=K.indexOf(Y);K=K.slice(ne+1)}setTimeout(()=>k(K)),W.preventDefault()}})})})})})})});hd.displayName=Rv;var qv="SelectItemAlignedPosition",gd=d.forwardRef((e,t)=>{const{__scopeSelect:r,onPlaced:n,...o}=e,s=lt(xt,r),a=dt(xt,r),[c,l]=d.useState(null),[f,u]=d.useState(null),p=ae(t,E=>u(E)),g=wn(r),v=d.useRef(!1),m=d.useRef(!0),{viewport:h,selectedItem:b,selectedItemText:w,focusSelectedItem:x}=a,y=d.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&f&&h&&b&&w){const E=s.trigger.getBoundingClientRect(),M=f.getBoundingClientRect(),F=s.valueNode.getBoundingClientRect(),I=w.getBoundingClientRect();if(s.dir!=="rtl"){const Y=I.left-M.left,ne=F.left-Y,me=E.left-ne,pe=E.width+me,Q=Math.max(pe,M.width),J=window.innerWidth-We,ge=jo(ne,[We,Math.max(We,J-Q)]);c.style.minWidth=pe+"px",c.style.left=ge+"px"}else{const Y=M.right-I.right,ne=window.innerWidth-F.right-Y,me=window.innerWidth-E.right-ne,pe=E.width+me,Q=Math.max(pe,M.width),J=window.innerWidth-We,ge=jo(ne,[We,Math.max(We,J-Q)]);c.style.minWidth=pe+"px",c.style.right=ge+"px"}const B=g(),R=window.innerHeight-We*2,U=h.scrollHeight,D=window.getComputedStyle(f),z=parseInt(D.borderTopWidth,10),k=parseInt(D.paddingTop,10),G=parseInt(D.borderBottomWidth,10),L=parseInt(D.paddingBottom,10),A=z+k+U+L+G,ee=Math.min(b.offsetHeight*5,A),q=window.getComputedStyle(h),ie=parseInt(q.paddingTop,10),$=parseInt(q.paddingBottom,10),j=E.top+E.height/2-We,le=R-j,he=b.offsetHeight/2,W=b.offsetTop+he,V=z+k+W,ce=A-V;if(V<=j){const Y=B.length>0&&b===B[B.length-1].ref.current;c.style.bottom="0px";const ne=f.clientHeight-h.offsetTop-h.offsetHeight,me=Math.max(le,he+(Y?$:0)+ne+G),pe=V+me;c.style.height=pe+"px"}else{const Y=B.length>0&&b===B[0].ref.current;c.style.top="0px";const me=Math.max(j,z+h.offsetTop+(Y?ie:0)+he)+ce;c.style.height=me+"px",h.scrollTop=V-j+h.offsetTop}c.style.margin=`${We}px 0`,c.style.minHeight=ee+"px",c.style.maxHeight=R+"px",n==null||n(),requestAnimationFrame(()=>v.current=!0)}},[g,s.trigger,s.valueNode,c,f,h,b,w,s.dir,n]);ve(()=>y(),[y]);const[C,N]=d.useState();ve(()=>{f&&N(window.getComputedStyle(f).zIndex)},[f]);const O=d.useCallback(E=>{E&&m.current===!0&&(y(),x==null||x(),m.current=!1)},[y,x]);return i.jsx(Yv,{scope:r,contentWrapper:c,shouldExpandOnScrollRef:v,onScrollButtonChange:O,children:i.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:C},children:i.jsx(te.div,{...o,ref:p,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});gd.displayName=qv;var Xv="SelectPopperPosition",os=d.forwardRef((e,t)=>{const{__scopeSelect:r,align:n="start",collisionPadding:o=We,...s}=e,a=yn(r);return i.jsx(No,{...a,...s,ref:t,align:n,collisionPadding:o,style:{boxSizing:"border-box",...s.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});os.displayName=Xv;var[Yv,ss]=Ut(xt,{}),as="SelectViewport",md=d.forwardRef((e,t)=>{const{__scopeSelect:r,nonce:n,...o}=e,s=dt(as,r),a=ss(as,r),c=ae(t,s.onViewportChange),l=d.useRef(0);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),i.jsx(vn.Slot,{scope:r,children:i.jsx(te.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:H(o.onScroll,f=>{const u=f.currentTarget,{contentWrapper:p,shouldExpandOnScrollRef:g}=a;if(g!=null&&g.current&&p){const v=Math.abs(l.current-u.scrollTop);if(v>0){const m=window.innerHeight-We*2,h=parseFloat(p.style.minHeight),b=parseFloat(p.style.height),w=Math.max(h,b);if(w<m){const x=w+v,y=Math.min(m,x),C=x-y;p.style.height=y+"px",p.style.bottom==="0px"&&(u.scrollTop=C>0?C:0,p.style.justifyContent="flex-end")}}}l.current=u.scrollTop})})})]})});md.displayName=as;var bd="SelectGroup",[Jv,Zv]=Ut(bd),Qv=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Be();return i.jsx(Jv,{scope:r,id:o,children:i.jsx(te.div,{role:"group","aria-labelledby":o,...n,ref:t})})});Qv.displayName=bd;var vd="SelectLabel",wd=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Zv(vd,r);return i.jsx(te.div,{id:o.id,...n,ref:t})});wd.displayName=vd;var xn="SelectItem",[ew,yd]=Ut(xn),xd=d.forwardRef((e,t)=>{const{__scopeSelect:r,value:n,disabled:o=!1,textValue:s,...a}=e,c=lt(xn,r),l=dt(xn,r),f=c.value===n,[u,p]=d.useState(s??""),[g,v]=d.useState(!1),m=ae(t,x=>{var y;return(y=l.itemRefCallback)==null?void 0:y.call(l,x,n,o)}),h=Be(),b=d.useRef("touch"),w=()=>{o||(c.onValueChange(n),c.onOpenChange(!1))};if(n==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return i.jsx(ew,{scope:r,value:n,disabled:o,textId:h,isSelected:f,onItemTextChange:d.useCallback(x=>{p(y=>y||((x==null?void 0:x.textContent)??"").trim())},[]),children:i.jsx(vn.ItemSlot,{scope:r,value:n,disabled:o,textValue:u,children:i.jsx(te.div,{role:"option","aria-labelledby":h,"data-highlighted":g?"":void 0,"aria-selected":f&&g,"data-state":f?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...a,ref:m,onFocus:H(a.onFocus,()=>v(!0)),onBlur:H(a.onBlur,()=>v(!1)),onClick:H(a.onClick,()=>{b.current!=="mouse"&&w()}),onPointerUp:H(a.onPointerUp,()=>{b.current==="mouse"&&w()}),onPointerDown:H(a.onPointerDown,x=>{b.current=x.pointerType}),onPointerMove:H(a.onPointerMove,x=>{var y;b.current=x.pointerType,o?(y=l.onItemLeave)==null||y.call(l):b.current==="mouse"&&x.currentTarget.focus({preventScroll:!0})}),onPointerLeave:H(a.onPointerLeave,x=>{var y;x.currentTarget===document.activeElement&&((y=l.onItemLeave)==null||y.call(l))}),onKeyDown:H(a.onKeyDown,x=>{var C;((C=l.searchRef)==null?void 0:C.current)!==""&&x.key===" "||(Uv.includes(x.key)&&w(),x.key===" "&&x.preventDefault())})})})})});xd.displayName=xn;var ur="SelectItemText",Sd=d.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,...s}=e,a=lt(ur,r),c=dt(ur,r),l=yd(ur,r),f=Vv(ur,r),[u,p]=d.useState(null),g=ae(t,w=>p(w),l.onItemTextChange,w=>{var x;return(x=c.itemTextRefCallback)==null?void 0:x.call(c,w,l.value,l.disabled)}),v=u==null?void 0:u.textContent,m=d.useMemo(()=>i.jsx("option",{value:l.value,disabled:l.disabled,children:v},l.value),[l.disabled,l.value,v]),{onNativeOptionAdd:h,onNativeOptionRemove:b}=f;return ve(()=>(h(m),()=>b(m)),[h,b,m]),i.jsxs(i.Fragment,{children:[i.jsx(te.span,{id:l.textId,...s,ref:g}),l.isSelected&&a.valueNode&&!a.valueNodeHasChildren?gr.createPortal(s.children,a.valueNode):null]})});Sd.displayName=ur;var Cd="SelectItemIndicator",Ed=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return yd(Cd,r).isSelected?i.jsx(te.span,{"aria-hidden":!0,...n,ref:t}):null});Ed.displayName=Cd;var is="SelectScrollUpButton",Nd=d.forwardRef((e,t)=>{const r=dt(is,e.__scopeSelect),n=ss(is,e.__scopeSelect),[o,s]=d.useState(!1),a=ae(t,n.onScrollButtonChange);return ve(()=>{if(r.viewport&&r.isPositioned){let c=function(){const f=l.scrollTop>0;s(f)};const l=r.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[r.viewport,r.isPositioned]),o?i.jsx(Ad,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=r;c&&l&&(c.scrollTop=c.scrollTop-l.offsetHeight)}}):null});Nd.displayName=is;var cs="SelectScrollDownButton",Td=d.forwardRef((e,t)=>{const r=dt(cs,e.__scopeSelect),n=ss(cs,e.__scopeSelect),[o,s]=d.useState(!1),a=ae(t,n.onScrollButtonChange);return ve(()=>{if(r.viewport&&r.isPositioned){let c=function(){const f=l.scrollHeight-l.clientHeight,u=Math.ceil(l.scrollTop)<f;s(u)};const l=r.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[r.viewport,r.isPositioned]),o?i.jsx(Ad,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=r;c&&l&&(c.scrollTop=c.scrollTop+l.offsetHeight)}}):null});Td.displayName=cs;var Ad=d.forwardRef((e,t)=>{const{__scopeSelect:r,onAutoScroll:n,...o}=e,s=dt("SelectScrollButton",r),a=d.useRef(null),c=wn(r),l=d.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return d.useEffect(()=>()=>l(),[l]),ve(()=>{var u;const f=c().find(p=>p.ref.current===document.activeElement);(u=f==null?void 0:f.ref.current)==null||u.scrollIntoView({block:"nearest"})},[c]),i.jsx(te.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:H(o.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(n,50))}),onPointerMove:H(o.onPointerMove,()=>{var f;(f=s.onItemLeave)==null||f.call(s),a.current===null&&(a.current=window.setInterval(n,50))}),onPointerLeave:H(o.onPointerLeave,()=>{l()})})}),tw="SelectSeparator",Pd=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return i.jsx(te.div,{"aria-hidden":!0,...n,ref:t})});Pd.displayName=tw;var ls="SelectArrow",rw=d.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=yn(r),s=lt(ls,r),a=dt(ls,r);return s.open&&a.position==="popper"?i.jsx(To,{...o,...n,ref:t}):null});rw.displayName=ls;var nw="SelectBubbleInput",Id=d.forwardRef(({__scopeSelect:e,value:t,...r},n)=>{const o=d.useRef(null),s=ae(n,o),a=Zl(t);return d.useEffect(()=>{const c=o.current;if(!c)return;const l=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(a!==t&&u){const p=new Event("change",{bubbles:!0});u.call(c,t),c.dispatchEvent(p)}},[a,t]),i.jsx(te.select,{...r,style:{...Tl,...r.style},ref:s,defaultValue:t})});Id.displayName=nw;function _d(e){return e===""||e===void 0}function Od(e){const t=we(e),r=d.useRef(""),n=d.useRef(0),o=d.useCallback(a=>{const c=r.current+a;t(c),function l(f){r.current=f,window.clearTimeout(n.current),f!==""&&(n.current=window.setTimeout(()=>l(""),1e3))}(c)},[t]),s=d.useCallback(()=>{r.current="",window.clearTimeout(n.current)},[]);return d.useEffect(()=>()=>window.clearTimeout(n.current),[]),[r,o,s]}function kd(e,t,r){const o=t.length>1&&Array.from(t).every(f=>f===t[0])?t[0]:t,s=r?e.indexOf(r):-1;let a=ow(e,Math.max(s,0));o.length===1&&(a=a.filter(f=>f!==r));const l=a.find(f=>f.textValue.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function ow(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var sw=sd,Md=id,aw=ld,iw=dd,cw=ud,Dd=fd,lw=md,Ld=wd,Fd=xd,dw=Sd,uw=Ed,$d=Nd,Bd=Td,Ud=Pd;const Hd=sw,zd=aw,ds=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Md,{ref:n,className:P("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,i.jsx(iw,{asChild:!0,children:i.jsx(X.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));ds.displayName=Md.displayName;const Wd=d.forwardRef(({className:e,...t},r)=>i.jsx($d,{ref:r,className:P("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(X.ChevronUp,{className:"h-4 w-4"})}));Wd.displayName=$d.displayName;const Vd=d.forwardRef(({className:e,...t},r)=>i.jsx(Bd,{ref:r,className:P("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(X.ChevronDown,{className:"h-4 w-4"})}));Vd.displayName=Bd.displayName;const us=d.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>i.jsx(cw,{children:i.jsxs(Dd,{ref:o,className:P("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:[i.jsx(Wd,{}),i.jsx(lw,{className:P("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),i.jsx(Vd,{})]})}));us.displayName=Dd.displayName;const fw=d.forwardRef(({className:e,...t},r)=>i.jsx(Ld,{ref:r,className:P("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...t}));fw.displayName=Ld.displayName;const St=d.forwardRef(({className:e,children:t,...r},n)=>i.jsxs(Fd,{ref:n,className:P("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[i.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:i.jsx(uw,{children:i.jsx(X.Check,{className:"h-4 w-4"})})}),i.jsx(dw,{children:t})]}));St.displayName=Fd.displayName;const pw=d.forwardRef(({className:e,...t},r)=>i.jsx(Ud,{ref:r,className:P("-mx-1 my-1 h-px bg-muted",e),...t}));pw.displayName=Ud.displayName;const Sn=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));Sn.displayName="Card";const Cn=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("flex flex-col space-y-1.5 p-6",e),...t}));Cn.displayName="CardHeader";const En=d.forwardRef(({className:e,...t},r)=>i.jsx("h3",{ref:r,className:P("text-2xl font-semibold leading-none tracking-tight",e),...t}));En.displayName="CardTitle";const hw=d.forwardRef(({className:e,...t},r)=>i.jsx("p",{ref:r,className:P("text-sm text-muted-foreground",e),...t}));hw.displayName="CardDescription";const Nn=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("p-6 pt-0",e),...t}));Nn.displayName="CardContent";const gw=d.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:P("flex items-center p-6 pt-0",e),...t}));gw.displayName="CardFooter";const mw=1,bw=1e6;let fs=0;function vw(){return fs=(fs+1)%Number.MAX_SAFE_INTEGER,fs.toString()}const ps=new Map,jd=e=>{if(ps.has(e))return;const t=setTimeout(()=>{ps.delete(e),fr({type:"REMOVE_TOAST",toastId:e})},bw);ps.set(e,t)},ww=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,mw)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(r=>r.id===t.toast.id?{...r,...t.toast}:r)};case"DISMISS_TOAST":{const{toastId:r}=t;return r?jd(r):e.toasts.forEach(n=>{jd(n.id)}),{...e,toasts:e.toasts.map(n=>n.id===r||r===void 0?{...n,open:!1}:n)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(r=>r.id!==t.toastId)}}},Tn=[];let An={toasts:[]};function fr(e){An=ww(An,e),Tn.forEach(t=>{t(An)})}function yw({...e}){const t=vw(),r=o=>fr({type:"UPDATE_TOAST",toast:{...o,id:t}}),n=()=>fr({type:"DISMISS_TOAST",toastId:t});return fr({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:o=>{o||n()}}}),{id:t,dismiss:n,update:r}}function xw(){const[e,t]=d.useState(An);return d.useEffect(()=>(Tn.push(t),()=>{const r=Tn.indexOf(t);r>-1&&Tn.splice(r,1)}),[e]),{...e,toast:yw,dismiss:r=>fr({type:"DISMISS_TOAST",toastId:r})}}const Sw={api:{baseUrl:"http://localhost:8000/api",authToken:"",enableAuth:!1},ui:{layout:"sidebar",theme:"light",showTimestamps:!0,showAgentNames:!0,compactMessages:!1},behavior:{autoSave:!0,enableStreaming:!0,showTypingIndicator:!0}};function Cw({settings:e,onSettingsChange:t,className:r=""}){const[n,o]=T.useState(!1),[s,a]=T.useState(!1),[c,l]=T.useState(e),[f,u]=T.useState(!1),{toast:p}=xw();T.useEffect(()=>{const b=JSON.stringify(c)!==JSON.stringify(e);u(b)},[c,e]),T.useEffect(()=>{l(e)},[e]);const g=()=>{t(c),u(!1),p({title:"Settings saved",description:"Your chat configuration has been updated successfully."})},v=()=>{l(Sw),u(!0),p({title:"Settings reset",description:"Configuration has been reset to defaults."})},m=()=>{l(e),u(!1),o(!1)},h=async()=>{try{const w=await(await fetch(`${c.api.baseUrl}/health`)).json();p({title:"Connection successful",description:`API is ${w.status||"healthy"}`})}catch{p({title:"Connection failed",description:"Unable to connect to the API endpoint.",variant:"destructive"})}};return i.jsxs(yl,{open:n,onOpenChange:o,children:[i.jsx(Ub,{asChild:!0,children:i.jsxs(fe,{variant:"outline",size:"sm",className:r,children:[i.jsx(X.Settings,{className:"h-4 w-4 mr-2"}),"Settings",f&&i.jsx(ma,{variant:"destructive",className:"ml-2 h-4 w-4 p-0"})]})}),i.jsxs(es,{className:"w-[500px] sm:w-[600px] overflow-y-auto",children:[i.jsxs(Sl,{children:[i.jsx(Cl,{children:"Chat Settings"}),i.jsx(El,{children:"Configure your chat interface, API connection, and behavior preferences."})]}),i.jsxs("div",{className:"space-y-6 py-6",children:[i.jsxs(Sn,{children:[i.jsx(Cn,{className:"pb-3",children:i.jsxs(En,{className:"text-lg flex items-center gap-2",children:[i.jsx(X.Server,{className:"h-5 w-5"}),"API Configuration"]})}),i.jsxs(Nn,{className:"space-y-4",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx(Le,{htmlFor:"api-url",children:"API Base URL"}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(cr,{id:"api-url",value:c.api.baseUrl,onChange:b=>l(w=>({...w,api:{...w.api,baseUrl:b.target.value}})),placeholder:"http://localhost:8000/api"}),i.jsx(fe,{variant:"outline",onClick:h,children:"Test"})]})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(Le,{htmlFor:"enable-auth",children:"Enable Authentication"}),i.jsx(ct,{id:"enable-auth",checked:c.api.enableAuth,onCheckedChange:b=>l(w=>({...w,api:{...w.api,enableAuth:b}}))})]}),c.api.enableAuth&&i.jsxs("div",{className:"space-y-2",children:[i.jsx(Le,{htmlFor:"auth-token",children:"Authentication Token"}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(cr,{id:"auth-token",type:s?"text":"password",value:c.api.authToken,onChange:b=>l(w=>({...w,api:{...w.api,authToken:b.target.value}})),placeholder:"Enter your Bearer token"}),i.jsx(fe,{variant:"outline",size:"icon",onClick:()=>a(!s),children:s?i.jsx(X.EyeOff,{className:"h-4 w-4"}):i.jsx(X.Eye,{className:"h-4 w-4"})})]})]})]})]}),i.jsxs(Sn,{children:[i.jsx(Cn,{className:"pb-3",children:i.jsxs(En,{className:"text-lg flex items-center gap-2",children:[i.jsx(X.Layout,{className:"h-5 w-5"}),"Interface Settings"]})}),i.jsxs(Nn,{className:"space-y-4",children:[i.jsxs("div",{className:"space-y-2",children:[i.jsx(Le,{htmlFor:"layout",children:"Layout Style"}),i.jsxs(Hd,{value:c.ui.layout,onValueChange:b=>l(w=>({...w,ui:{...w.ui,layout:b}})),children:[i.jsx(ds,{children:i.jsx(zd,{})}),i.jsxs(us,{children:[i.jsx(St,{value:"sidebar",children:"Sidebar Layout"}),i.jsx(St,{value:"fullscreen",children:"Fullscreen"}),i.jsx(St,{value:"tabs",children:"Tabbed Interface"})]})]})]}),i.jsxs("div",{className:"space-y-2",children:[i.jsx(Le,{htmlFor:"theme",children:"Theme"}),i.jsxs(Hd,{value:c.ui.theme,onValueChange:b=>l(w=>({...w,ui:{...w.ui,theme:b}})),children:[i.jsx(ds,{children:i.jsx(zd,{})}),i.jsxs(us,{children:[i.jsx(St,{value:"light",children:"Light"}),i.jsx(St,{value:"dark",children:"Dark"}),i.jsx(St,{value:"system",children:"System"})]})]})]}),i.jsx(Yo,{}),i.jsxs("div",{className:"space-y-3",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(Le,{htmlFor:"show-timestamps",children:"Show Timestamps"}),i.jsx(ct,{id:"show-timestamps",checked:c.ui.showTimestamps,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,showTimestamps:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(Le,{htmlFor:"show-agent-names",children:"Show Agent Names"}),i.jsx(ct,{id:"show-agent-names",checked:c.ui.showAgentNames,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,showAgentNames:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsx(Le,{htmlFor:"compact-messages",children:"Compact Messages"}),i.jsx(ct,{id:"compact-messages",checked:c.ui.compactMessages,onCheckedChange:b=>l(w=>({...w,ui:{...w.ui,compactMessages:b}}))})]})]})]})]}),i.jsxs(Sn,{children:[i.jsx(Cn,{className:"pb-3",children:i.jsxs(En,{className:"text-lg flex items-center gap-2",children:[i.jsx(X.MessageCircle,{className:"h-5 w-5"}),"Behavior Settings"]})}),i.jsxs(Nn,{className:"space-y-4",children:[i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(Le,{htmlFor:"auto-save",children:"Auto-save Conversations"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Automatically save messages to threads"})]}),i.jsx(ct,{id:"auto-save",checked:c.behavior.autoSave,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,autoSave:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(Le,{htmlFor:"enable-streaming",children:"Enable Streaming"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Stream responses in real-time"})]}),i.jsx(ct,{id:"enable-streaming",checked:c.behavior.enableStreaming,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,enableStreaming:b}}))})]}),i.jsxs("div",{className:"flex items-center justify-between",children:[i.jsxs("div",{children:[i.jsx(Le,{htmlFor:"typing-indicator",children:"Typing Indicator"}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"Show typing indicator during responses"})]}),i.jsx(ct,{id:"typing-indicator",checked:c.behavior.showTypingIndicator,onCheckedChange:b=>l(w=>({...w,behavior:{...w.behavior,showTypingIndicator:b}}))})]})]})]})]}),i.jsxs("div",{className:"flex items-center justify-between pt-6 border-t",children:[i.jsxs(fe,{variant:"outline",onClick:v,children:[i.jsx(X.RotateCcw,{className:"h-4 w-4 mr-2"}),"Reset"]}),i.jsxs("div",{className:"flex gap-2",children:[i.jsx(fe,{variant:"outline",onClick:m,children:"Cancel"}),i.jsxs(fe,{onClick:g,disabled:!f,children:[i.jsx(X.Save,{className:"h-4 w-4 mr-2"}),"Save Changes"]})]})]})]})]})}function Ew({layout:e="sidebar",layoutSize:t="desktop",showThreads:r=!0,className:n="",customStyles:o={},...s}){const a=f=>{const u="h-full";switch(f){case"phone":return`${u} max-w-none`;case"tablet":return`${u} max-w-4xl mx-auto`;case"half-screen":return`${u} max-w-2xl`;case"desktop":default:return`${u} max-w-7xl mx-auto`}},c=f=>({"--chat-sidebar-width":f==="phone"?"100%":f==="tablet"?"280px":f==="half-screen"?"240px":"320px","--chat-message-max-width":f==="phone"?"95%":f==="tablet"?"90%":f==="half-screen"?"85%":"80%","--chat-input-height":f==="phone"?"120px":"100px"}),l=T.useCallback(f=>{var u;(u=s.onThreadChange)==null||u.call(s,f)},[s.onThreadChange]);return e==="fullscreen"?i.jsx(qt,{...s,onThreadChange:l,children:i.jsx("div",{className:`${a(t)} flex flex-col overflow-hidden ${n} ${o.container||""}`,style:c(t),children:i.jsx(ir,{className:"flex-1",onError:s.onError,enableFileUpload:!0})})}):e==="tabs"?i.jsx(qt,{...s,onThreadChange:l,children:i.jsx("div",{className:`${a(t)} flex flex-col overflow-hidden ${n} ${o.container||""}`,style:c(t),children:i.jsxs("div",{className:"flex-1 flex min-h-0 overflow-hidden",children:[r&&i.jsx("div",{className:`w-80 border-r flex-shrink-0 overflow-hidden ${o.sidebar||""}`,children:i.jsx(dn,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-full"})}),i.jsx("div",{className:`flex-1 min-w-0 overflow-hidden ${o.chatArea||""}`,children:i.jsx(ir,{onError:s.onError,enableFileUpload:!0})})]})})}):i.jsx(qt,{...s,onThreadChange:l,children:i.jsxs("div",{className:`${a(t)} flex overflow-hidden ${n} ${o.container||""}`,style:c(t),children:[r&&i.jsx("div",{className:`w-80 border-r bg-gray-50 flex-shrink-0 overflow-hidden ${o.sidebar||""}`,children:i.jsx(dn,{showCreateButton:!0,showDeleteButton:!0,showEditTitle:!0,className:"h-full"})}),i.jsx("div",{className:`flex-1 min-w-0 overflow-hidden ${o.chatArea||""}`,children:i.jsx(ir,{onError:s.onError,enableFileUpload:!0})})]})})}re.Api=Ir,re.ApiClient=Ir,re.ChatApi=Ir,re.ChatInterface=ir,re.ChatMainLayout=_v,re.ChatProvider=qt,re.ChatRoutingProvider=hb,re.ChatSettings=Cw,re.MarkdownContent=Xt,re.MessageComponent=Ea,re.ThreadManager=dn,re.apiClient=Qe,re.applySettings=xb,re.chatApiClient=Qe,re.default=Ew,re.del=da,re.get=Re,re.getChatToken=ia,re.getCurrentSettings=yb,re.getDefaultApiConfig=qc,re.getDefaultChatSettings=Xc,re.onChatTokenChanged=ca,re.post=Pr,re.put=la,re.setChatToken=qn,re.useChat=Jn,re.useChatRouting=gb,re.useChatStream=ua,re.useMessagesReducer=fa,Object.defineProperties(re,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});