@tonyclaw/agent-inspector 2.1.15 → 2.1.16
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/.output/nitro.json +1 -1
- package/.output/public/assets/{CompareDrawer-BcEd6V-V.js → CompareDrawer-Ccrrcx1j.js} +1 -1
- package/.output/public/assets/ProxyViewerContainer-DLqClc9A.js +106 -0
- package/.output/public/assets/{ReplayDialog-BNpC0548.js → ReplayDialog-C7axhr-l.js} +1 -1
- package/.output/public/assets/{RequestAnatomy-Ds1uRLVB.js → RequestAnatomy-WOptg8j_.js} +1 -1
- package/.output/public/assets/{ResponseView-7KPVqKl5.js → ResponseView-CSAcxh_M.js} +2 -2
- package/.output/public/assets/{StreamingChunkSequence-BHQT261s.js → StreamingChunkSequence-DJS5KhPx.js} +1 -1
- package/.output/public/assets/_sessionId-DUSalzKH.js +1 -0
- package/.output/public/assets/index-BPpA21dY.css +1 -0
- package/.output/public/assets/index-Bt0Az2I2.js +1 -0
- package/.output/public/assets/{index-DjKt8XKe.js → index-DMPNh46t.js} +1 -1
- package/.output/public/assets/{json-viewer-CkCu-rka.js → json-viewer-inX5QSa3.js} +1 -1
- package/.output/public/assets/{main-DpD1N0S8.js → main-aCAKYGSD.js} +2 -2
- package/.output/server/_libs/lucide-react.mjs +207 -171
- package/.output/server/{_sessionId-DF9Sy8cP.mjs → _sessionId-C0fhvQnn.mjs} +2 -2
- package/.output/server/_ssr/{CompareDrawer-BoxztaO7.mjs → CompareDrawer-CO-Ti5sg.mjs} +3 -3
- package/.output/server/_ssr/{ProxyViewerContainer-CRBkqFlJ.mjs → ProxyViewerContainer-N4J7uBCX.mjs} +807 -386
- package/.output/server/_ssr/{ReplayDialog-Cc1dyDuK.mjs → ReplayDialog-J1VxC0In.mjs} +4 -4
- package/.output/server/_ssr/{RequestAnatomy-CMGSsz5Z.mjs → RequestAnatomy-DBH-F3rq.mjs} +3 -3
- package/.output/server/_ssr/{ResponseView-Cp10DM1D.mjs → ResponseView-DLFwV7Hd.mjs} +3 -3
- package/.output/server/_ssr/{StreamingChunkSequence-B1VGxy3A.mjs → StreamingChunkSequence-BywmuND0.mjs} +3 -3
- package/.output/server/_ssr/{index-47XVPghS.mjs → index-CStymIc0.mjs} +2 -2
- package/.output/server/_ssr/index.mjs +2 -2
- package/.output/server/_ssr/{json-viewer-zDE2rrmJ.mjs → json-viewer-DlQu0N1x.mjs} +3 -3
- package/.output/server/_ssr/{router-DVeuZFqI.mjs → router-CQ4Zxhmr.mjs} +112 -46
- package/.output/server/{_tanstack-start-manifest_v-Bp8JxtPW.mjs → _tanstack-start-manifest_v-BHeJBGfo.mjs} +1 -1
- package/.output/server/index.mjs +72 -72
- package/package.json +1 -1
- package/src/components/ProxyViewer.tsx +146 -105
- package/src/components/ProxyViewerContainer.tsx +77 -67
- package/src/components/alerts/AlertsDialog.tsx +2 -1
- package/src/components/clients/ClientLogo.tsx +1 -1
- package/src/components/groups/GroupsDialog.tsx +19 -1
- package/src/components/providers/ProviderCard.tsx +1 -1
- package/src/components/providers/ProviderForm.tsx +18 -18
- package/src/components/providers/ProviderLogo.tsx +6 -1
- package/src/components/providers/ProvidersPanel.tsx +6 -6
- package/src/components/providers/SettingsDialog.tsx +13 -6
- package/src/components/proxy-viewer/AgentTraceSummary.tsx +6 -6
- package/src/components/proxy-viewer/ConversationGroup.tsx +43 -32
- package/src/components/proxy-viewer/ConversationGroupList.tsx +452 -89
- package/src/components/proxy-viewer/ConversationHeader.tsx +44 -32
- package/src/components/proxy-viewer/LogEntry.tsx +21 -17
- package/src/components/proxy-viewer/LogEntryHeader.tsx +38 -45
- package/src/components/proxy-viewer/ProviderLogoStack.tsx +2 -2
- package/src/components/proxy-viewer/RequestToolsPanel.tsx +9 -9
- package/src/components/proxy-viewer/ThreadConnector.tsx +4 -4
- package/src/components/proxy-viewer/TurnGroup.tsx +16 -11
- package/src/components/proxy-viewer/TurnGroupList.tsx +3 -0
- package/src/components/proxy-viewer/viewerState.ts +0 -4
- package/src/components/ui/icon-trigger.ts +2 -0
- package/src/components/ui/transient-toast.tsx +104 -0
- package/src/lib/sessionInfoContract.ts +4 -0
- package/src/mcp/server.ts +71 -27
- package/src/mcp/toolHandlers.ts +23 -4
- package/src/proxy/formats/openai/alibabaProvider.ts +0 -4
- package/src/proxy/sessionInfo.ts +31 -2
- package/src/proxy/sessionSupervisor.ts +20 -1
- package/src/proxy/store.ts +1 -1
- package/src/routes/api/providers.$providerId.test.log.ts +8 -4
- package/styles/globals.css +180 -180
- package/.output/public/assets/ProxyViewerContainer-h851qWNp.js +0 -106
- package/.output/public/assets/_sessionId-DWePGjnS.js +0 -1
- package/.output/public/assets/index-CI1-G8ua.js +0 -1
- package/.output/public/assets/index-DdhFqPsI.css +0 -1
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CompareDrawer-Ccrrcx1j.js","assets/main-aCAKYGSD.js","assets/ReplayDialog-C7axhr-l.js","assets/ResponseView-CSAcxh_M.js","assets/RequestAnatomy-WOptg8j_.js","assets/StreamingChunkSequence-DJS5KhPx.js","assets/json-viewer-inX5QSa3.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as jn,a as $u,r as p,j as s,c as Hr,g as Dm,b as Fu,d as Rr,e as $m,f as it,h as Bu,_ as Sn}from"./main-aCAKYGSD.js";function Q(e,t,n){function r(l,c){if(l._zod||Object.defineProperty(l,"_zod",{value:{def:c,constr:a,traits:new Set},enumerable:!1}),l._zod.traits.has(e))return;l._zod.traits.add(e),t(l,c);const u=a.prototype,d=Object.keys(u);for(let f=0;f<d.length;f++){const m=d[f];m in l||(l[m]=u[m].bind(l))}}const o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function a(l){var c;const u=n?.Parent?new i:this;r(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const d of u._zod.deferred)d();return u}return Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:l=>n?.Parent&&l instanceof n.Parent?!0:l?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}class Fn extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Uu extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Wu={};function en(e){return Wu}function Hu(e){const t=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function wi(e,t){return typeof t=="bigint"?t.toString():t}function ao(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function ha(e){return e==null}function ma(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Fm(e,t){const n=(e.toString().split(".")[1]||"").length,r=t.toString();let o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}const i=n>o?n:o,a=Number.parseInt(e.toFixed(i).replace(".","")),l=Number.parseInt(t.toFixed(i).replace(".",""));return a%l/10**i}const Tl=Symbol("evaluating");function Ie(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Tl)return r===void 0&&(r=Tl,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Cn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function on(...e){const t={};for(const n of e){const r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function El(e){return JSON.stringify(e)}function Bm(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Zu="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function wr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Um=ao(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Zn(e){if(wr(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(wr(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Vu(e){return Zn(e)?{...e}:Array.isArray(e)?[...e]:e}const Wm=new Set(["string","number","symbol"]);function Vn(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function an(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function we(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Hm(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Zm={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Vm(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=on(e._zod.def,{get shape(){const a={};for(const l in t){if(!(l in n.shape))throw new Error(`Unrecognized key: "${l}"`);t[l]&&(a[l]=n.shape[l])}return Cn(this,"shape",a),a},checks:[]});return an(e,i)}function qm(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=on(e._zod.def,{get shape(){const a={...e._zod.def.shape};for(const l in t){if(!(l in n.shape))throw new Error(`Unrecognized key: "${l}"`);t[l]&&delete a[l]}return Cn(this,"shape",a),a},checks:[]});return an(e,i)}function Km(e,t){if(!Zn(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0){const i=e._zod.def.shape;for(const a in t)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=on(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return Cn(this,"shape",i),i}});return an(e,o)}function Gm(e,t){if(!Zn(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n=on(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return Cn(this,"shape",r),r}});return an(e,n)}function Jm(e,t){const n=on(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t._zod.def.shape};return Cn(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return an(e,n)}function Ym(e,t,n){const o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const a=on(t._zod.def,{get shape(){const l=t._zod.def.shape,c={...l};if(n)for(const u in n){if(!(u in l))throw new Error(`Unrecognized key: "${u}"`);n[u]&&(c[u]=e?new e({type:"optional",innerType:l[u]}):l[u])}else for(const u in l)c[u]=e?new e({type:"optional",innerType:l[u]}):l[u];return Cn(this,"shape",c),c},checks:[]});return an(t,a)}function Xm(e,t,n){const r=on(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(n)for(const a in n){if(!(a in i))throw new Error(`Unrecognized key: "${a}"`);n[a]&&(i[a]=new e({type:"nonoptional",innerType:o[a]}))}else for(const a in o)i[a]=new e({type:"nonoptional",innerType:o[a]});return Cn(this,"shape",i),i}});return an(t,r)}function Dn(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function $n(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function Zr(e){return typeof e=="string"?e:e?.message}function tn(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const o=Zr(e.inst?._zod.def?.error?.(e))??Zr(t?.error?.(e))??Zr(n.customError?.(e))??Zr(n.localeError?.(e))??"Invalid input";r.message=o}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function ga(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function kr(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}const qu=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,wi,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ku=Q("$ZodError",qu),Gu=Q("$ZodError",qu,{Parent:Error});function Qm(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function eg(e,t=n=>n.message){const n={_errors:[]},r=o=>{for(const i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>r({issues:a}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let a=n,l=0;for(;l<i.path.length;){const c=i.path[l];l===i.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(t(i))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return r(e),n}const xa=e=>(t,n,r,o)=>{const i=r?Object.assign(r,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Fn;if(a.issues.length){const l=new(o?.Err??e)(a.issues.map(c=>tn(c,i,en())));throw Zu(l,o?.callee),l}return a.value},ba=e=>async(t,n,r,o)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){const l=new(o?.Err??e)(a.issues.map(c=>tn(c,i,en())));throw Zu(l,o?.callee),l}return a.value},lo=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new Fn;return i.issues.length?{success:!1,error:new(e??Ku)(i.issues.map(a=>tn(a,o,en())))}:{success:!0,data:i.value}},tg=lo(Gu),co=e=>async(t,n,r)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(a=>tn(a,o,en())))}:{success:!0,data:i.value}},ng=co(Gu),rg=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return xa(e)(t,n,o)},sg=e=>(t,n,r)=>xa(e)(t,n,r),og=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ba(e)(t,n,o)},ig=e=>async(t,n,r)=>ba(e)(t,n,r),ag=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return lo(e)(t,n,o)},lg=e=>(t,n,r)=>lo(e)(t,n,r),cg=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return co(e)(t,n,o)},ug=e=>async(t,n,r)=>co(e)(t,n,r),dg=/^[cC][^\s-]{8,}$/,fg=/^[0-9a-z]+$/,pg=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,hg=/^[0-9a-vA-V]{20}$/,mg=/^[A-Za-z0-9]{27}$/,gg=/^[a-zA-Z0-9_-]{21}$/,xg=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,bg=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Al=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,vg=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,yg="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function wg(){return new RegExp(yg,"u")}const kg=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,_g=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,jg=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Sg=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Cg=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ju=/^[A-Za-z0-9_-]*$/,Ng=/^\+[1-9]\d{6,14}$/,Yu="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Tg=new RegExp(`^${Yu}$`);function Xu(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Eg(e){return new RegExp(`^${Xu(e)}$`)}function Ag(e){const t=Xu({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Yu}T(?:${r})$`)}const Rg=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Ig=/^-?\d+$/,Qu=/^-?\d+(?:\.\d+)?$/,zg=/^(?:true|false)$/i,Og=/^null$/i,Pg=/^[^A-Z]*$/,Mg=/^[^a-z]*$/,at=Q("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),ed={number:"number",bigint:"bigint",object:"date"},td=Q("$ZodCheckLessThan",(e,t)=>{at.init(e,t);const n=ed[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),nd=Q("$ZodCheckGreaterThan",(e,t)=>{at.init(e,t);const n=ed[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Lg=Q("$ZodCheckMultipleOf",(e,t)=>{at.init(e,t),e._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):Fm(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Dg=Q("$ZodCheckNumberFormat",(e,t)=>{at.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[o,i]=Zm[t.format];e._zod.onattach.push(a=>{const l=a._zod.bag;l.format=t.format,l.minimum=o,l.maximum=i,n&&(l.pattern=Ig)}),e._zod.check=a=>{const l=a.value;if(n){if(!Number.isInteger(l)){a.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:l,inst:e});return}if(!Number.isSafeInteger(l)){l>0?a.issues.push({input:l,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}):a.issues.push({input:l,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}l<o&&a.issues.push({origin:"number",input:l,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),l>i&&a.issues.push({origin:"number",input:l,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),$g=Q("$ZodCheckMaxLength",(e,t)=>{var n;at.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!ha(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const a=ga(o);r.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Fg=Q("$ZodCheckMinLength",(e,t)=>{var n;at.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!ha(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const a=ga(o);r.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Bg=Q("$ZodCheckLengthEquals",(e,t)=>{var n;at.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!ha(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,i=o.length;if(i===t.length)return;const a=ga(o),l=i>t.length;r.issues.push({origin:a,...l?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),uo=Q("$ZodCheckStringFormat",(e,t)=>{var n,r;at.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Ug=Q("$ZodCheckRegex",(e,t)=>{uo.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Wg=Q("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Pg),uo.init(e,t)}),Hg=Q("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Mg),uo.init(e,t)}),Zg=Q("$ZodCheckIncludes",(e,t)=>{at.init(e,t);const n=Vn(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Vg=Q("$ZodCheckStartsWith",(e,t)=>{at.init(e,t);const n=new RegExp(`^${Vn(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),qg=Q("$ZodCheckEndsWith",(e,t)=>{at.init(e,t);const n=new RegExp(`.*${Vn(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),Kg=Q("$ZodCheckOverwrite",(e,t)=>{at.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Gg{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const r=t.split(`
|
|
3
|
+
`).filter(a=>a),o=Math.min(...r.map(a=>a.length-a.trimStart().length)),i=r.map(a=>a.slice(o)).map(a=>" ".repeat(this.indent*2)+a);for(const a of i)this.content.push(a)}compile(){const t=Function,n=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...n,o.join(`
|
|
4
|
+
`))}}const Jg={major:4,minor:3,patch:6},Ue=Q("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Jg;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const o of r)for(const i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(a,l,c)=>{let u=Dn(a),d;for(const f of l){if(f._zod.def.when){if(!f._zod.def.when(a))continue}else if(u)continue;const m=a.issues.length,h=f._zod.check(a);if(h instanceof Promise&&c?.async===!1)throw new Fn;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await h,a.issues.length!==m&&(u||(u=Dn(a,m)))});else{if(a.issues.length===m)continue;u||(u=Dn(a,m))}}return d?d.then(()=>a):a},i=(a,l,c)=>{if(Dn(a))return a.aborted=!0,a;const u=o(l,r,c);if(u instanceof Promise){if(c.async===!1)throw new Fn;return u.then(d=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(a,l)=>{if(l.skipChecks)return e._zod.parse(a,l);if(l.direction==="backward"){const u=e._zod.parse({value:a.value,issues:[]},{...l,skipChecks:!0});return u instanceof Promise?u.then(d=>i(d,a,l)):i(u,a,l)}const c=e._zod.parse(a,l);if(c instanceof Promise){if(l.async===!1)throw new Fn;return c.then(u=>o(u,r,l))}return o(c,r,l)}}Ie(e,"~standard",()=>({validate:o=>{try{const i=tg(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return ng(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),va=Q("$ZodString",(e,t)=>{Ue.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Rg(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),He=Q("$ZodStringFormat",(e,t)=>{uo.init(e,t),va.init(e,t)}),Yg=Q("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=bg),He.init(e,t)}),Xg=Q("$ZodUUID",(e,t)=>{if(t.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(r===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Al(r))}else t.pattern??(t.pattern=Al());He.init(e,t)}),Qg=Q("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=vg),He.init(e,t)}),ex=Q("$ZodURL",(e,t)=>{He.init(e,t),e._zod.check=n=>{try{const r=n.value.trim(),o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),tx=Q("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=wg()),He.init(e,t)}),nx=Q("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=gg),He.init(e,t)}),rx=Q("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=dg),He.init(e,t)}),sx=Q("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=fg),He.init(e,t)}),ox=Q("$ZodULID",(e,t)=>{t.pattern??(t.pattern=pg),He.init(e,t)}),ix=Q("$ZodXID",(e,t)=>{t.pattern??(t.pattern=hg),He.init(e,t)}),ax=Q("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=mg),He.init(e,t)}),lx=Q("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ag(t)),He.init(e,t)}),cx=Q("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Tg),He.init(e,t)}),ux=Q("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Eg(t)),He.init(e,t)}),dx=Q("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=xg),He.init(e,t)}),fx=Q("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=kg),He.init(e,t),e._zod.bag.format="ipv4"}),px=Q("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=_g),He.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),hx=Q("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=jg),He.init(e,t)}),mx=Q("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Sg),He.init(e,t),e._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[o,i]=r;if(!i)throw new Error;const a=Number(i);if(`${a}`!==i)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function rd(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const gx=Q("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Cg),He.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{rd(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function xx(e){if(!Ju.test(e))return!1;const t=e.replace(/[-_]/g,r=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return rd(n)}const bx=Q("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ju),He.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{xx(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),vx=Q("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Ng),He.init(e,t)});function yx(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const wx=Q("$ZodJWT",(e,t)=>{He.init(e,t),e._zod.check=n=>{yx(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),sd=Q("$ZodNumber",(e,t)=>{Ue.init(e,t),e._zod.pattern=e._zod.bag.pattern??Qu,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;const i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),n}}),kx=Q("$ZodNumberFormat",(e,t)=>{Dg.init(e,t),sd.init(e,t)}),_x=Q("$ZodBoolean",(e,t)=>{Ue.init(e,t),e._zod.pattern=zg,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),jx=Q("$ZodNull",(e,t)=>{Ue.init(e,t),e._zod.pattern=Og,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{const o=n.value;return o===null||n.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),n}}),Sx=Q("$ZodUnknown",(e,t)=>{Ue.init(e,t),e._zod.parse=n=>n}),Cx=Q("$ZodNever",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function Rl(e,t,n){e.issues.length&&t.issues.push(...$n(n,e.issues)),t.value[n]=e.value}const Nx=Q("$ZodArray",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const i=[];for(let a=0;a<o.length;a++){const l=o[a],c=t.element._zod.run({value:l,issues:[]},r);c instanceof Promise?i.push(c.then(u=>Rl(u,n,a))):Rl(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function Ss(e,t,n,r,o){if(e.issues.length){if(o&&!(n in r))return;t.issues.push(...$n(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function od(e){const t=Object.keys(e.shape);for(const r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const n=Hm(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function id(e,t,n,r,o,i){const a=[],l=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optout==="optional";for(const f in t){if(l.has(f))continue;if(u==="never"){a.push(f);continue}const m=c.run({value:t[f],issues:[]},r);m instanceof Promise?e.push(m.then(h=>Ss(h,n,f,t,d))):Ss(m,n,f,t,d)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}const Tx=Q("$ZodObject",(e,t)=>{if(Ue.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const l=t.shape;Object.defineProperty(t,"shape",{get:()=>{const c={...l};return Object.defineProperty(t,"shape",{value:c}),c}})}const r=ao(()=>od(t));Ie(e._zod,"propValues",()=>{const l=t.shape,c={};for(const u in l){const d=l[u]._zod;if(d.values){c[u]??(c[u]=new Set);for(const f of d.values)c[u].add(f)}}return c});const o=wr,i=t.catchall;let a;e._zod.parse=(l,c)=>{a??(a=r.value);const u=l.value;if(!o(u))return l.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),l;l.value={};const d=[],f=a.shape;for(const m of a.keys){const h=f[m],v=h._zod.optout==="optional",g=h._zod.run({value:u[m],issues:[]},c);g instanceof Promise?d.push(g.then(x=>Ss(x,l,m,u,v))):Ss(g,l,m,u,v)}return i?id(d,u,l,c,r.value,e):d.length?Promise.all(d).then(()=>l):l}}),Ex=Q("$ZodObjectJIT",(e,t)=>{Tx.init(e,t);const n=e._zod.parse,r=ao(()=>od(t)),o=m=>{const h=new Gg(["shape","payload","ctx"]),v=r.value,g=_=>{const j=El(_);return`shape[${j}]._zod.run({ value: input[${j}], issues: [] }, ctx)`};h.write("const input = payload.value;");const x=Object.create(null);let b=0;for(const _ of v.keys)x[_]=`key_${b++}`;h.write("const newResult = {};");for(const _ of v.keys){const j=x[_],S=El(_),N=m[_]?._zod?.optout==="optional";h.write(`const ${j} = ${g(_)};`),N?h.write(`
|
|
5
|
+
if (${j}.issues.length) {
|
|
6
|
+
if (${S} in input) {
|
|
7
|
+
payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
|
|
8
|
+
...iss,
|
|
9
|
+
path: iss.path ? [${S}, ...iss.path] : [${S}]
|
|
10
|
+
})));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
if (${j}.value === undefined) {
|
|
15
|
+
if (${S} in input) {
|
|
16
|
+
newResult[${S}] = undefined;
|
|
17
|
+
}
|
|
18
|
+
} else {
|
|
19
|
+
newResult[${S}] = ${j}.value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
`):h.write(`
|
|
23
|
+
if (${j}.issues.length) {
|
|
24
|
+
payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
|
|
25
|
+
...iss,
|
|
26
|
+
path: iss.path ? [${S}, ...iss.path] : [${S}]
|
|
27
|
+
})));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (${j}.value === undefined) {
|
|
31
|
+
if (${S} in input) {
|
|
32
|
+
newResult[${S}] = undefined;
|
|
33
|
+
}
|
|
34
|
+
} else {
|
|
35
|
+
newResult[${S}] = ${j}.value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
`)}h.write("payload.value = newResult;"),h.write("return payload;");const y=h.compile();return(_,j)=>y(m,_,j)};let i;const a=wr,l=!Wu.jitless,u=l&&Um.value,d=t.catchall;let f;e._zod.parse=(m,h)=>{f??(f=r.value);const v=m.value;return a(v)?l&&u&&h?.async===!1&&h.jitless!==!0?(i||(i=o(t.shape)),m=i(m,h),d?id([],v,m,h,f,e):m):n(m,h):(m.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),m)}});function Il(e,t,n,r){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!Dn(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>tn(a,r,en())))}),t)}const ad=Q("$ZodUnion",(e,t)=>{Ue.init(e,t),Ie(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),Ie(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),Ie(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),Ie(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>ma(i.source)).join("|")})$`)}});const n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let a=!1;const l=[];for(const c of t.options){const u=c._zod.run({value:o.value,issues:[]},i);if(u instanceof Promise)l.push(u),a=!0;else{if(u.issues.length===0)return u;l.push(u)}}return a?Promise.all(l).then(c=>Il(c,o,e,i)):Il(l,o,e,i)}}),Ax=Q("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,ad.init(e,t);const n=e._zod.parse;Ie(e._zod,"propValues",()=>{const o={};for(const i of t.options){const a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const[l,c]of Object.entries(a)){o[l]||(o[l]=new Set);for(const u of c)o[l].add(u)}}return o});const r=ao(()=>{const o=t.options,i=new Map;for(const a of o){const l=a._zod.propValues?.[t.discriminator];if(!l||l.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(const c of l){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});e._zod.parse=(o,i)=>{const a=o.value;if(!wr(a))return o.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),o;const l=r.value.get(a?.[t.discriminator]);return l?l._zod.run(o,i):t.unionFallback?n(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:a,path:[t.discriminator],inst:e}),o)}}),Rx=Q("$ZodIntersection",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,i=t.left._zod.run({value:o,issues:[]},r),a=t.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,u])=>zl(n,c,u)):zl(n,i,a)}});function ki(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Zn(e)&&Zn(t)){const n=Object.keys(t),r=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(const i of r){const a=ki(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],i=t[r],a=ki(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[r,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function zl(e,t,n){const r=new Map;let o;for(const l of t.issues)if(l.code==="unrecognized_keys"){o??(o=l);for(const c of l.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else e.issues.push(l);for(const l of n.issues)if(l.code==="unrecognized_keys")for(const c of l.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else e.issues.push(l);const i=[...r].filter(([,l])=>l.l&&l.r).map(([l])=>l);if(i.length&&o&&e.issues.push({...o,keys:i}),Dn(e))return e;const a=ki(t.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}const Ix=Q("$ZodRecord",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Zn(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;const i=[],a=t.keyType._zod.values;if(a){n.value={};const l=new Set;for(const u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){l.add(typeof u=="number"?u.toString():u);const d=t.valueType._zod.run({value:o[u],issues:[]},r);d instanceof Promise?i.push(d.then(f=>{f.issues.length&&n.issues.push(...$n(u,f.issues)),n.value[u]=f.value})):(d.issues.length&&n.issues.push(...$n(u,d.issues)),n.value[u]=d.value)}let c;for(const u in o)l.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(const l of Reflect.ownKeys(o)){if(l==="__proto__")continue;let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof l=="string"&&Qu.test(l)&&c.issues.length){const f=t.keyType._zod.run({value:Number(l),issues:[]},r);if(f instanceof Promise)throw new Error("Async schemas not supported in object keys currently");f.issues.length===0&&(c=f)}if(c.issues.length){t.mode==="loose"?n.value[l]=o[l]:n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(f=>tn(f,r,en())),input:l,path:[l],inst:e});continue}const d=t.valueType._zod.run({value:o[l],issues:[]},r);d instanceof Promise?i.push(d.then(f=>{f.issues.length&&n.issues.push(...$n(l,f.issues)),n.value[c.value]=f.value})):(d.issues.length&&n.issues.push(...$n(l,d.issues)),n.value[c.value]=d.value)}}return i.length?Promise.all(i).then(()=>n):n}}),zx=Q("$ZodEnum",(e,t)=>{Ue.init(e,t);const n=Hu(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>Wm.has(typeof o)).map(o=>typeof o=="string"?Vn(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const a=o.value;return r.has(a)||o.issues.push({code:"invalid_value",values:n,input:a,inst:e}),o}}),Ox=Q("$ZodLiteral",(e,t)=>{if(Ue.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?Vn(r):r?Vn(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{const i=r.value;return n.has(i)||r.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),r}}),Px=Q("$ZodTransform",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Uu(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(a=>(n.value=a,n));if(o instanceof Promise)throw new Fn;return n.value=o,n}});function Ol(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const ld=Q("$ZodOptional",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${ma(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Ol(i,n.value)):Ol(o,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),Mx=Q("$ZodExactOptional",(e,t)=>{ld.init(e,t),Ie(e._zod,"values",()=>t.innerType._zod.values),Ie(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>t.innerType._zod.run(n,r)}),Lx=Q("$ZodNullable",(e,t)=>{Ue.init(e,t),Ie(e._zod,"optin",()=>t.innerType._zod.optin),Ie(e._zod,"optout",()=>t.innerType._zod.optout),Ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${ma(n.source)}|null)$`):void 0}),Ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),Dx=Q("$ZodDefault",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",Ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Pl(i,t)):Pl(o,t)}});function Pl(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const $x=Q("$ZodPrefault",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",Ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),Fx=Q("$ZodNonOptional",(e,t)=>{Ue.init(e,t),Ie(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Ml(i,e)):Ml(o,e)}});function Ml(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Bx=Q("$ZodCatch",(e,t)=>{Ue.init(e,t),Ie(e._zod,"optin",()=>t.innerType._zod.optin),Ie(e._zod,"optout",()=>t.innerType._zod.optout),Ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(a=>tn(a,r,en()))},input:n.value}),n.issues=[]),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>tn(i,r,en()))},input:n.value}),n.issues=[]),n)}}),Ux=Q("$ZodPipe",(e,t)=>{Ue.init(e,t),Ie(e._zod,"values",()=>t.in._zod.values),Ie(e._zod,"optin",()=>t.in._zod.optin),Ie(e._zod,"optout",()=>t.out._zod.optout),Ie(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const i=t.out._zod.run(n,r);return i instanceof Promise?i.then(a=>Vr(a,t.in,r)):Vr(i,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(i=>Vr(i,t.out,r)):Vr(o,t.out,r)}});function Vr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Wx=Q("$ZodReadonly",(e,t)=>{Ue.init(e,t),Ie(e._zod,"propValues",()=>t.innerType._zod.propValues),Ie(e._zod,"values",()=>t.innerType._zod.values),Ie(e._zod,"optin",()=>t.innerType?._zod?.optin),Ie(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(Ll):Ll(o)}});function Ll(e){return e.value=Object.freeze(e.value),e}const Hx=Q("$ZodLazy",(e,t)=>{Ue.init(e,t),Ie(e._zod,"innerType",()=>t.getter()),Ie(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),Ie(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),Ie(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),Ie(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>e._zod.innerType._zod.run(n,r)}),Zx=Q("$ZodCustom",(e,t)=>{at.init(e,t),Ue.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(i=>Dl(i,n,r,e));Dl(o,n,r,e)}});function Dl(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(kr(o))}}var $l;class Vx{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const r=n[0];return this._map.set(t,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const r={...this.get(n)??{}};delete r.id;const o={...r,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function qx(){return new Vx}($l=globalThis).__zod_globalRegistry??($l.__zod_globalRegistry=qx());const gr=globalThis.__zod_globalRegistry;function Kx(e,t){return new e({type:"string",...we(t)})}function Gx(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...we(t)})}function Fl(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...we(t)})}function Jx(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...we(t)})}function Yx(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...we(t)})}function Xx(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...we(t)})}function Qx(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...we(t)})}function e0(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...we(t)})}function t0(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...we(t)})}function n0(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...we(t)})}function r0(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...we(t)})}function s0(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...we(t)})}function o0(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...we(t)})}function i0(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...we(t)})}function a0(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...we(t)})}function l0(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...we(t)})}function c0(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...we(t)})}function u0(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...we(t)})}function d0(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...we(t)})}function f0(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...we(t)})}function p0(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...we(t)})}function h0(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...we(t)})}function m0(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...we(t)})}function g0(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...we(t)})}function x0(e,t){return new e({type:"string",format:"date",check:"string_format",...we(t)})}function b0(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...we(t)})}function v0(e,t){return new e({type:"string",format:"duration",check:"string_format",...we(t)})}function y0(e,t){return new e({type:"number",checks:[],...we(t)})}function w0(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...we(t)})}function k0(e,t){return new e({type:"boolean",...we(t)})}function _0(e,t){return new e({type:"null",...we(t)})}function j0(e){return new e({type:"unknown"})}function S0(e,t){return new e({type:"never",...we(t)})}function Bl(e,t){return new td({check:"less_than",...we(t),value:e,inclusive:!1})}function Fo(e,t){return new td({check:"less_than",...we(t),value:e,inclusive:!0})}function Ul(e,t){return new nd({check:"greater_than",...we(t),value:e,inclusive:!1})}function Bo(e,t){return new nd({check:"greater_than",...we(t),value:e,inclusive:!0})}function Wl(e,t){return new Lg({check:"multiple_of",...we(t),value:e})}function cd(e,t){return new $g({check:"max_length",...we(t),maximum:e})}function Cs(e,t){return new Fg({check:"min_length",...we(t),minimum:e})}function ud(e,t){return new Bg({check:"length_equals",...we(t),length:e})}function C0(e,t){return new Ug({check:"string_format",format:"regex",...we(t),pattern:e})}function N0(e){return new Wg({check:"string_format",format:"lowercase",...we(e)})}function T0(e){return new Hg({check:"string_format",format:"uppercase",...we(e)})}function E0(e,t){return new Zg({check:"string_format",format:"includes",...we(t),includes:e})}function A0(e,t){return new Vg({check:"string_format",format:"starts_with",...we(t),prefix:e})}function R0(e,t){return new qg({check:"string_format",format:"ends_with",...we(t),suffix:e})}function er(e){return new Kg({check:"overwrite",tx:e})}function I0(e){return er(t=>t.normalize(e))}function z0(){return er(e=>e.trim())}function O0(){return er(e=>e.toLowerCase())}function P0(){return er(e=>e.toUpperCase())}function M0(){return er(e=>Bm(e))}function L0(e,t,n){return new e({type:"array",element:t,...we(n)})}function D0(e,t,n){return new e({type:"custom",check:"custom",fn:t,...we(n)})}function $0(e){const t=F0(n=>(n.addIssue=r=>{if(typeof r=="string")n.issues.push(kr(r,n.value,t._zod.def));else{const o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(kr(o))}},e(n.value,n)));return t}function F0(e,t){const n=new at({check:"custom",...we(t)});return n._zod.check=e,n}function dd(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??gr,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function Ve(e,t,n={path:[],schemaPath:[]}){var r;const o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,n.schemaPath.includes(e)&&(i.cycle=n.path),i.schema;const a={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,a);const l=e._zod.toJSONSchema?.();if(l)a.schema=l;else{const d={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,d);else{const m=a.schema,h=t.processors[o.type];if(!h)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);h(e,t,m,d)}const f=e._zod.parent;f&&(a.ref||(a.ref=f),Ve(f,t,d),t.seen.get(f).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&rt(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&a.schema._prefault&&((r=a.schema).default??(r.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function fd(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const a of e.seen.entries()){const l=e.metadataRegistry.get(a[0])?.id;if(l){const c=r.get(l);if(c&&c!==a[0])throw new Error(`Duplicate schema id "${l}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(l,a[0])}}const o=a=>{const l=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const f=e.external.registry.get(a[0])?.id,m=e.external.uri??(v=>v);if(f)return{ref:m(f)};const h=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=h,{defId:h,ref:`${m("__shared")}#/${l}/${h}`}}if(a[1]===n)return{ref:"#"};const u=`#/${l}/`,d=a[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:u+d}},i=a=>{if(a[1].schema.$ref)return;const l=a[1],{ref:c,defId:u}=o(a);l.def={...l.schema},u&&(l.defId=u);const d=l.schema;for(const f in d)delete d[f];d.$ref=c};if(e.cycles==="throw")for(const a of e.seen.entries()){const l=a[1];if(l.cycle)throw new Error(`Cycle detected: #/${l.cycle?.join("/")}/<root>
|
|
39
|
+
|
|
40
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const a of e.seen.entries()){const l=a[1];if(t===a[0]){i(a);continue}if(e.external){const u=e.external.registry.get(a[0])?.id;if(t!==a[0]&&u){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(l.cycle){i(a);continue}if(l.count>1&&e.reused==="ref"){i(a);continue}}}function pd(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=a=>{const l=e.seen.get(a);if(l.ref===null)return;const c=l.def??l.schema,u={...c},d=l.ref;if(l.ref=null,d){r(d);const m=e.seen.get(d),h=m.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(h)):Object.assign(c,h),Object.assign(c,u),a._zod.parent===d)for(const g in c)g==="$ref"||g==="allOf"||g in u||delete c[g];if(h.$ref&&m.def)for(const g in c)g==="$ref"||g==="allOf"||g in m.def&&JSON.stringify(c[g])===JSON.stringify(m.def[g])&&delete c[g]}const f=a._zod.parent;if(f&&f!==d){r(f);const m=e.seen.get(f);if(m?.schema.$ref&&(c.$ref=m.schema.$ref,m.def))for(const h in c)h==="$ref"||h==="allOf"||h in m.def&&JSON.stringify(c[h])===JSON.stringify(m.def[h])&&delete c[h]}e.override({zodSchema:a,jsonSchema:c,path:l.path??[]})};for(const a of[...e.seen.entries()].reverse())r(a[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const a=e.external.registry.get(t)?.id;if(!a)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Object.assign(o,n.def??n.schema);const i=e.external?.defs??{};for(const a of e.seen.entries()){const l=a[1];l.def&&l.defId&&(i[l.defId]=l.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{const a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:Ns(t,"input",e.processors),output:Ns(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function rt(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return rt(r.element,n);if(r.type==="set")return rt(r.valueType,n);if(r.type==="lazy")return rt(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return rt(r.innerType,n);if(r.type==="intersection")return rt(r.left,n)||rt(r.right,n);if(r.type==="record"||r.type==="map")return rt(r.keyType,n)||rt(r.valueType,n);if(r.type==="pipe")return rt(r.in,n)||rt(r.out,n);if(r.type==="object"){for(const o in r.shape)if(rt(r.shape[o],n))return!0;return!1}if(r.type==="union"){for(const o of r.options)if(rt(o,n))return!0;return!1}if(r.type==="tuple"){for(const o of r.items)if(rt(o,n))return!0;return!!(r.rest&&rt(r.rest,n))}return!1}const B0=(e,t={})=>n=>{const r=dd({...n,processors:t});return Ve(e,r),fd(r,e),pd(r,e)},Ns=(e,t,n={})=>r=>{const{libraryOptions:o,target:i}=r??{},a=dd({...o??{},target:i,io:t,processors:n});return Ve(e,a),fd(a,e),pd(a,e)},U0={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},W0=(e,t,n,r)=>{const o=n;o.type="string";const{minimum:i,maximum:a,format:l,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof a=="number"&&(o.maxLength=a),l&&(o.format=U0[l]??l,o.format===""&&delete o.format,l==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){const d=[...c];d.length===1?o.pattern=d[0].source:d.length>1&&(o.allOf=[...d.map(f=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))])}},H0=(e,t,n,r)=>{const o=n,{minimum:i,maximum:a,format:l,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:d}=e._zod.bag;typeof l=="string"&&l.includes("int")?o.type="integer":o.type="number",typeof d=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.minimum=d,o.exclusiveMinimum=!0):o.exclusiveMinimum=d),typeof i=="number"&&(o.minimum=i,typeof d=="number"&&t.target!=="draft-04"&&(d>=i?delete o.minimum:delete o.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u),typeof a=="number"&&(o.maximum=a,typeof u=="number"&&t.target!=="draft-04"&&(u<=a?delete o.maximum:delete o.exclusiveMaximum)),typeof c=="number"&&(o.multipleOf=c)},Z0=(e,t,n,r)=>{n.type="boolean"},V0=(e,t,n,r)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},q0=(e,t,n,r)=>{n.not={}},K0=(e,t,n,r)=>{},G0=(e,t,n,r)=>{const o=e._zod.def,i=Hu(o.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},J0=(e,t,n,r)=>{const o=e._zod.def,i=[];for(const a of o.values)if(a===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");i.push(Number(a))}else i.push(a);if(i.length!==0)if(i.length===1){const a=i[0];n.type=a===null?"null":typeof a,t.target==="draft-04"||t.target==="openapi-3.0"?n.enum=[a]:n.const=a}else i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),i.every(a=>typeof a=="boolean")&&(n.type="boolean"),i.every(a=>a===null)&&(n.type="null"),n.enum=i},Y0=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},X0=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Q0=(e,t,n,r)=>{const o=n,i=e._zod.def,{minimum:a,maximum:l}=e._zod.bag;typeof a=="number"&&(o.minItems=a),typeof l=="number"&&(o.maxItems=l),o.type="array",o.items=Ve(i.element,t,{...r,path:[...r.path,"items"]})},eb=(e,t,n,r)=>{const o=n,i=e._zod.def;o.type="object",o.properties={};const a=i.shape;for(const u in a)o.properties[u]=Ve(a[u],t,{...r,path:[...r.path,"properties",u]});const l=new Set(Object.keys(a)),c=new Set([...l].filter(u=>{const d=i.shape[u]._zod;return t.io==="input"?d.optin===void 0:d.optout===void 0}));c.size>0&&(o.required=Array.from(c)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=Ve(i.catchall,t,{...r,path:[...r.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},tb=(e,t,n,r)=>{const o=e._zod.def,i=o.inclusive===!1,a=o.options.map((l,c)=>Ve(l,t,{...r,path:[...r.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},nb=(e,t,n,r)=>{const o=e._zod.def,i=Ve(o.left,t,{...r,path:[...r.path,"allOf",0]}),a=Ve(o.right,t,{...r,path:[...r.path,"allOf",1]}),l=u=>"allOf"in u&&Object.keys(u).length===1,c=[...l(i)?i.allOf:[i],...l(a)?a.allOf:[a]];n.allOf=c},rb=(e,t,n,r)=>{const o=n,i=e._zod.def;o.type="object";const a=i.keyType,c=a._zod.bag?.patterns;if(i.mode==="loose"&&c&&c.size>0){const d=Ve(i.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});o.patternProperties={};for(const f of c)o.patternProperties[f.source]=d}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=Ve(i.keyType,t,{...r,path:[...r.path,"propertyNames"]})),o.additionalProperties=Ve(i.valueType,t,{...r,path:[...r.path,"additionalProperties"]});const u=a._zod.values;if(u){const d=[...u].filter(f=>typeof f=="string"||typeof f=="number");d.length>0&&(o.required=d)}},sb=(e,t,n,r)=>{const o=e._zod.def,i=Ve(o.innerType,t,r),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=o.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},ob=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},ib=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},ab=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},lb=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType;let a;try{a=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=a},cb=(e,t,n,r)=>{const o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;Ve(i,t,r);const a=t.seen.get(e);a.ref=i},ub=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},hd=(e,t,n,r)=>{const o=e._zod.def;Ve(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},db=(e,t,n,r)=>{const o=e._zod.innerType;Ve(o,t,r);const i=t.seen.get(e);i.ref=o},fb=Q("ZodISODateTime",(e,t)=>{lx.init(e,t),Ze.init(e,t)});function pb(e){return g0(fb,e)}const hb=Q("ZodISODate",(e,t)=>{cx.init(e,t),Ze.init(e,t)});function mb(e){return x0(hb,e)}const gb=Q("ZodISOTime",(e,t)=>{ux.init(e,t),Ze.init(e,t)});function xb(e){return b0(gb,e)}const bb=Q("ZodISODuration",(e,t)=>{dx.init(e,t),Ze.init(e,t)});function vb(e){return v0(bb,e)}const yb=(e,t)=>{Ku.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>eg(e,n)},flatten:{value:n=>Qm(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,wi,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,wi,2)}},isEmpty:{get(){return e.issues.length===0}}})},gt=Q("ZodError",yb,{Parent:Error}),wb=xa(gt),kb=ba(gt),_b=lo(gt),jb=co(gt),Sb=rg(gt),Cb=sg(gt),Nb=og(gt),Tb=ig(gt),Eb=ag(gt),Ab=lg(gt),Rb=cg(gt),Ib=ug(gt),We=Q("ZodType",(e,t)=>(Ue.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Ns(e,"input"),output:Ns(e,"output")}}),e.toJSONSchema=B0(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(on(t,{checks:[...t.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),e.with=e.check,e.clone=(n,r)=>an(e,n,r),e.brand=()=>e,e.register=((n,r)=>(n.add(e,r),e)),e.parse=(n,r)=>wb(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>_b(e,n,r),e.parseAsync=async(n,r)=>kb(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>jb(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Sb(e,n,r),e.decode=(n,r)=>Cb(e,n,r),e.encodeAsync=async(n,r)=>Nb(e,n,r),e.decodeAsync=async(n,r)=>Tb(e,n,r),e.safeEncode=(n,r)=>Eb(e,n,r),e.safeDecode=(n,r)=>Ab(e,n,r),e.safeEncodeAsync=async(n,r)=>Rb(e,n,r),e.safeDecodeAsync=async(n,r)=>Ib(e,n,r),e.refine=(n,r)=>e.check(Tv(n,r)),e.superRefine=n=>e.check(Ev(n)),e.overwrite=n=>e.check(er(n)),e.optional=()=>Vl(e),e.exactOptional=()=>pv(e),e.nullable=()=>ql(e),e.nullish=()=>Vl(ql(e)),e.nonoptional=n=>vv(e,n),e.array=()=>pe(e),e.or=n=>Ot([e,n]),e.and=n=>av(e,n),e.transform=n=>Kl(e,dv(n)),e.default=n=>gv(e,n),e.prefault=n=>bv(e,n),e.catch=n=>wv(e,n),e.pipe=n=>Kl(e,n),e.readonly=()=>jv(e),e.describe=n=>{const r=e.clone();return gr.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return gr.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return gr.get(e);const r=e.clone();return gr.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=n=>n(e),e)),md=Q("_ZodString",(e,t)=>{va.init(e,t),We.init(e,t),e._zod.processJSONSchema=(r,o,i)=>W0(e,r,o);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(C0(...r)),e.includes=(...r)=>e.check(E0(...r)),e.startsWith=(...r)=>e.check(A0(...r)),e.endsWith=(...r)=>e.check(R0(...r)),e.min=(...r)=>e.check(Cs(...r)),e.max=(...r)=>e.check(cd(...r)),e.length=(...r)=>e.check(ud(...r)),e.nonempty=(...r)=>e.check(Cs(1,...r)),e.lowercase=r=>e.check(N0(r)),e.uppercase=r=>e.check(T0(r)),e.trim=()=>e.check(z0()),e.normalize=(...r)=>e.check(I0(...r)),e.toLowerCase=()=>e.check(O0()),e.toUpperCase=()=>e.check(P0()),e.slugify=()=>e.check(M0())}),zb=Q("ZodString",(e,t)=>{va.init(e,t),md.init(e,t),e.email=n=>e.check(Gx(Ob,n)),e.url=n=>e.check(e0(Pb,n)),e.jwt=n=>e.check(m0(Jb,n)),e.emoji=n=>e.check(t0(Mb,n)),e.guid=n=>e.check(Fl(Hl,n)),e.uuid=n=>e.check(Jx(qr,n)),e.uuidv4=n=>e.check(Yx(qr,n)),e.uuidv6=n=>e.check(Xx(qr,n)),e.uuidv7=n=>e.check(Qx(qr,n)),e.nanoid=n=>e.check(n0(Lb,n)),e.guid=n=>e.check(Fl(Hl,n)),e.cuid=n=>e.check(r0(Db,n)),e.cuid2=n=>e.check(s0($b,n)),e.ulid=n=>e.check(o0(Fb,n)),e.base64=n=>e.check(f0(qb,n)),e.base64url=n=>e.check(p0(Kb,n)),e.xid=n=>e.check(i0(Bb,n)),e.ksuid=n=>e.check(a0(Ub,n)),e.ipv4=n=>e.check(l0(Wb,n)),e.ipv6=n=>e.check(c0(Hb,n)),e.cidrv4=n=>e.check(u0(Zb,n)),e.cidrv6=n=>e.check(d0(Vb,n)),e.e164=n=>e.check(h0(Gb,n)),e.datetime=n=>e.check(pb(n)),e.date=n=>e.check(mb(n)),e.time=n=>e.check(xb(n)),e.duration=n=>e.check(vb(n))});function C(e){return Kx(zb,e)}const Ze=Q("ZodStringFormat",(e,t)=>{He.init(e,t),md.init(e,t)}),Ob=Q("ZodEmail",(e,t)=>{Qg.init(e,t),Ze.init(e,t)}),Hl=Q("ZodGUID",(e,t)=>{Yg.init(e,t),Ze.init(e,t)}),qr=Q("ZodUUID",(e,t)=>{Xg.init(e,t),Ze.init(e,t)}),Pb=Q("ZodURL",(e,t)=>{ex.init(e,t),Ze.init(e,t)}),Mb=Q("ZodEmoji",(e,t)=>{tx.init(e,t),Ze.init(e,t)}),Lb=Q("ZodNanoID",(e,t)=>{nx.init(e,t),Ze.init(e,t)}),Db=Q("ZodCUID",(e,t)=>{rx.init(e,t),Ze.init(e,t)}),$b=Q("ZodCUID2",(e,t)=>{sx.init(e,t),Ze.init(e,t)}),Fb=Q("ZodULID",(e,t)=>{ox.init(e,t),Ze.init(e,t)}),Bb=Q("ZodXID",(e,t)=>{ix.init(e,t),Ze.init(e,t)}),Ub=Q("ZodKSUID",(e,t)=>{ax.init(e,t),Ze.init(e,t)}),Wb=Q("ZodIPv4",(e,t)=>{fx.init(e,t),Ze.init(e,t)}),Hb=Q("ZodIPv6",(e,t)=>{px.init(e,t),Ze.init(e,t)}),Zb=Q("ZodCIDRv4",(e,t)=>{hx.init(e,t),Ze.init(e,t)}),Vb=Q("ZodCIDRv6",(e,t)=>{mx.init(e,t),Ze.init(e,t)}),qb=Q("ZodBase64",(e,t)=>{gx.init(e,t),Ze.init(e,t)}),Kb=Q("ZodBase64URL",(e,t)=>{bx.init(e,t),Ze.init(e,t)}),Gb=Q("ZodE164",(e,t)=>{vx.init(e,t),Ze.init(e,t)}),Jb=Q("ZodJWT",(e,t)=>{wx.init(e,t),Ze.init(e,t)}),gd=Q("ZodNumber",(e,t)=>{sd.init(e,t),We.init(e,t),e._zod.processJSONSchema=(r,o,i)=>H0(e,r,o),e.gt=(r,o)=>e.check(Ul(r,o)),e.gte=(r,o)=>e.check(Bo(r,o)),e.min=(r,o)=>e.check(Bo(r,o)),e.lt=(r,o)=>e.check(Bl(r,o)),e.lte=(r,o)=>e.check(Fo(r,o)),e.max=(r,o)=>e.check(Fo(r,o)),e.int=r=>e.check(Zl(r)),e.safe=r=>e.check(Zl(r)),e.positive=r=>e.check(Ul(0,r)),e.nonnegative=r=>e.check(Bo(0,r)),e.negative=r=>e.check(Bl(0,r)),e.nonpositive=r=>e.check(Fo(0,r)),e.multipleOf=(r,o)=>e.check(Wl(r,o)),e.step=(r,o)=>e.check(Wl(r,o)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function G(e){return y0(gd,e)}const Yb=Q("ZodNumberFormat",(e,t)=>{kx.init(e,t),gd.init(e,t)});function Zl(e){return w0(Yb,e)}const Xb=Q("ZodBoolean",(e,t)=>{_x.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Z0(e,n,r)});function De(e){return k0(Xb,e)}const Qb=Q("ZodNull",(e,t)=>{jx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>V0(e,n,r)});function Ts(e){return _0(Qb,e)}const ev=Q("ZodUnknown",(e,t)=>{Sx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>K0()});function xn(){return j0(ev)}const tv=Q("ZodNever",(e,t)=>{Cx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>q0(e,n,r)});function nv(e){return S0(tv,e)}const rv=Q("ZodArray",(e,t)=>{Nx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Q0(e,n,r,o),e.element=t.element,e.min=(n,r)=>e.check(Cs(n,r)),e.nonempty=n=>e.check(Cs(1,n)),e.max=(n,r)=>e.check(cd(n,r)),e.length=(n,r)=>e.check(ud(n,r)),e.unwrap=()=>e.element});function pe(e,t){return L0(rv,e,t)}const sv=Q("ZodObject",(e,t)=>{Ex.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>eb(e,n,r,o),Ie(e,"shape",()=>t.shape),e.keyof=()=>Ee(Object.keys(e._zod.def.shape)),e.catchall=n=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:xn()}),e.loose=()=>e.clone({...e._zod.def,catchall:xn()}),e.strict=()=>e.clone({...e._zod.def,catchall:nv()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=n=>Km(e,n),e.safeExtend=n=>Gm(e,n),e.merge=n=>Jm(e,n),e.pick=n=>Vm(e,n),e.omit=n=>qm(e,n),e.partial=(...n)=>Ym(bd,e,n[0]),e.required=(...n)=>Xm(vd,e,n[0])});function Y(e,t){const n={type:"object",shape:e??{},...we(t)};return new sv(n)}const xd=Q("ZodUnion",(e,t)=>{ad.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>tb(e,n,r,o),e.options=t.options});function Ot(e,t){return new xd({type:"union",options:e,...we(t)})}const ov=Q("ZodDiscriminatedUnion",(e,t)=>{xd.init(e,t),Ax.init(e,t)});function Nn(e,t,n){return new ov({type:"union",options:t,discriminator:e,...we(n)})}const iv=Q("ZodIntersection",(e,t)=>{Rx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>nb(e,n,r,o)});function av(e,t){return new iv({type:"intersection",left:e,right:t})}const lv=Q("ZodRecord",(e,t)=>{Ix.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>rb(e,n,r,o),e.keyType=t.keyType,e.valueType=t.valueType});function qe(e,t,n){return new lv({type:"record",keyType:e,valueType:t,...we(n)})}const _i=Q("ZodEnum",(e,t)=>{zx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(r,o,i)=>G0(e,r,o),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const i={};for(const a of r)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new _i({...t,checks:[],...we(o),entries:i})},e.exclude=(r,o)=>{const i={...t.entries};for(const a of r)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new _i({...t,checks:[],...we(o),entries:i})}});function Ee(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new _i({type:"enum",entries:n,...we(t)})}const cv=Q("ZodLiteral",(e,t)=>{Ox.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>J0(e,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Te(e,t){return new cv({type:"literal",values:Array.isArray(e)?e:[e],...we(t)})}const uv=Q("ZodTransform",(e,t)=>{Px.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>X0(e,n),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Uu(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(kr(i,n.value,t));else{const a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=e),n.issues.push(kr(a))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n)):(n.value=o,n)}});function dv(e){return new uv({type:"transform",transform:e})}const bd=Q("ZodOptional",(e,t)=>{ld.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>hd(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Vl(e){return new bd({type:"optional",innerType:e})}const fv=Q("ZodExactOptional",(e,t)=>{Mx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>hd(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function pv(e){return new fv({type:"optional",innerType:e})}const hv=Q("ZodNullable",(e,t)=>{Lx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>sb(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function ql(e){return new hv({type:"nullable",innerType:e})}const mv=Q("ZodDefault",(e,t)=>{Dx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ib(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function gv(e,t){return new mv({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Vu(t)}})}const xv=Q("ZodPrefault",(e,t)=>{$x.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ab(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function bv(e,t){return new xv({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Vu(t)}})}const vd=Q("ZodNonOptional",(e,t)=>{Fx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ob(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function vv(e,t){return new vd({type:"nonoptional",innerType:e,...we(t)})}const yv=Q("ZodCatch",(e,t)=>{Bx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>lb(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function wv(e,t){return new yv({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const kv=Q("ZodPipe",(e,t)=>{Ux.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>cb(e,n,r,o),e.in=t.in,e.out=t.out});function Kl(e,t){return new kv({type:"pipe",in:e,out:t})}const _v=Q("ZodReadonly",(e,t)=>{Wx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ub(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function jv(e){return new _v({type:"readonly",innerType:e})}const Sv=Q("ZodLazy",(e,t)=>{Hx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>db(e,n,r,o),e.unwrap=()=>e._zod.def.getter()});function Cv(e){return new Sv({type:"lazy",getter:e})}const Nv=Q("ZodCustom",(e,t)=>{Zx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Y0(e,n)});function Tv(e,t={}){return D0(Nv,e,t)}function Ev(e){return $0(e)}const Qe=Cv(()=>Ot([C(),G(),De(),Ts(),pe(Qe),qe(C(),Qe)]));const yd=Y({index:G(),timestamp:G(),type:C(),data:Qe}),Av=Y({chunks:pe(yd),truncated:De().optional().default(!1)}),Rv=Ee(["request","response"]),Iv=Y({logId:G().int().positive(),part:Rv,text:C(),offset:G().int().nonnegative(),limit:G().int().positive(),totalBytes:G().int().nonnegative(),textBytes:G().int().nonnegative(),nextOffset:G().int().nonnegative().nullable(),hasMore:De(),contentMode:Ee(["empty","partial","full"])}),_r=Y({id:G(),timestamp:C(),method:C(),path:C(),model:C().nullable(),sessionId:C().nullable(),rawRequestBody:C().nullable(),responseStatus:G().nullable(),responseText:C().nullable(),inputTokens:G().nullable(),outputTokens:G().nullable(),cacheCreationInputTokens:G().nullable(),cacheReadInputTokens:G().nullable(),elapsedMs:G().nullable(),firstChunkMs:G().nullable().optional(),totalStreamMs:G().nullable().optional(),tokensPerSecond:G().nullable().optional(),streaming:De(),userAgent:C().nullable(),origin:C().nullable(),rawHeaders:qe(C(),C()).optional(),headers:qe(C(),C()).optional(),apiFormat:Ee(["anthropic","openai","unknown"]).default("unknown"),isTest:De().optional().default(!1),replayOfLogId:G().nullable().optional(),providerName:C().nullable().optional(),clientPort:G().nullable().optional(),clientPid:G().nullable().optional(),clientCwd:C().nullable().optional(),clientProjectFolder:C().nullable().optional(),streamingChunks:Av.optional(),streamingChunksPath:C().nullable().optional(),rawRequestBodyBytes:G().int().nonnegative().nullable().optional(),responseTextBytes:G().int().nonnegative().nullable().optional(),bodyContentMode:Ee(["full","compact","truncated"]).optional(),warnings:pe(C()).optional(),error:C().nullable().optional()}),ya=Y({type:C(),ttl:C().optional(),scope:C().optional()}),wa=Y({type:Te("text"),text:C(),cache_control:ya.optional()}),wd=Y({type:Te("thinking"),thinking:C(),signature:C().optional()}),zv=Y({type:Te("think"),thinking:C(),signature:C().optional()}),Ov=Y({type:Te("base64"),media_type:C(),data:C()}),kd=Y({type:Te("image"),source:Ov}),_d=Y({type:Te("tool_use"),id:C(),name:C(),input:qe(C(),Qe)}),Pv=Nn("type",[wa,kd]),Mv=Y({type:Te("tool_result"),tool_use_id:C().optional(),content:Ot([C(),pe(Pv)]),is_error:De().optional()}),Lv=Nn("type",[wa,wd,kd,_d,Mv]),Dv=Ot([C(),pe(Lv)]),$v=Y({role:Ee(["user","assistant"]),content:Dv}),Fv=Y({type:Te("text"),text:C(),cache_control:ya.optional()}),Bv=Y({type:C(),properties:qe(C(),qe(C(),Qe)).optional(),required:pe(C()).optional(),additionalProperties:De().optional(),$schema:C().optional()}),Uv=Y({name:C(),description:C().optional(),input_schema:Bv.optional(),cache_control:ya.optional()}),Wv=Nn("type",[Y({type:Te("enabled"),budget_tokens:G()}),Y({type:Te("disabled")}),Y({type:Te("adaptive")})]),jd=Y({model:C(),messages:pe($v),system:pe(Fv).optional(),tools:pe(Uv).optional(),max_tokens:G().optional(),temperature:G().optional(),stream:De().optional(),thinking:Wv.optional(),metadata:Y({user_id:C().optional()}).optional()}),ka=Nn("type",[wa,wd,zv,_d]),Hv=Y({input_tokens:G().nullable().optional(),output_tokens:G().nullable().optional(),cache_creation_input_tokens:G().nullable().optional(),cache_read_input_tokens:G().nullable().optional()}).passthrough(),Sd=Y({id:C(),type:Te("message"),model:C(),role:Te("assistant"),content:pe(ka),stop_reason:C().nullable(),stop_sequence:C().nullable().optional(),usage:Hv}).passthrough(),Zv=Y({type:Te("message_start"),message:Y({id:C(),type:Te("message"),model:C(),role:Te("assistant"),content:pe(ka),stop_reason:Ts(),stop_sequence:Ts(),usage:Y({input_tokens:G(),cache_creation_input_tokens:G().optional(),cache_read_input_tokens:G().optional()}).passthrough()})}),Vv=Y({type:Te("content_block_start"),index:G(),content_block:ka}),qv=Nn("type",[Y({type:Te("text_delta"),text:C()}),Y({type:Te("input_json_delta"),partial_json:C()}),Y({type:Te("thinking_delta"),thinking:C()}),Y({type:Te("signature_delta"),signature:C()})]),Kv=Y({type:Te("content_block_delta"),index:G(),delta:qv}),Gv=Y({type:Te("content_block_stop"),index:G()}),Jv=Y({type:Te("message_delta"),delta:Y({stop_reason:C().nullable(),stop_sequence:C().nullable().optional()}),usage:Y({output_tokens:G(),input_tokens:G().optional(),cache_creation_input_tokens:G().optional(),cache_read_input_tokens:G().optional()}).passthrough()}),Yv=Y({type:Te("message_stop")}),Xv=Y({type:Te("ping")}),Qv=Y({type:Te("error"),error:Y({type:C(),message:C()})}),e1=Nn("type",[Zv,Vv,Kv,Gv,Jv,Yv,Xv,Qv]),t1=Ot([C(),pe(Nn("type",[Y({type:Te("text"),text:C()}),Y({type:Te("image_url"),image_url:Y({url:C(),detail:C().optional()})})]))]),Cd=Y({role:Ee(["system","user","assistant","tool"]),content:t1,name:C().optional(),reasoning_content:C().optional(),thinking:C().optional(),think:C().optional()}),n1=Y({name:C(),arguments:C()}),Nd=Y({index:G().optional(),id:C().optional(),type:Te("function").optional(),function:Y({name:C().optional(),arguments:C().optional()})});Cd.extend({content:Ot([C(),pe(Y({type:Te("text"),text:C()}))]).optional(),function_call:n1.optional(),tool_calls:pe(Nd).optional()});const r1=Y({type:Te("function"),function:Y({name:C(),description:C().optional(),parameters:qe(C(),Qe)})}),Td=Y({model:C(),messages:pe(Cd),temperature:G().optional(),max_tokens:G().optional(),stream:De().optional(),tools:pe(r1).optional(),tool_choice:Ot([Ee(["auto","none","required"]),Y({type:Te("auto")}),Y({type:Te("none")}),Y({type:Te("function"),function:Y({name:C()})})]).optional(),user:C().optional()}),s1=Y({type:C(),name:C().optional(),description:C().optional(),parameters:Qe.optional(),function:Y({name:C().optional(),description:C().optional(),parameters:Qe.optional()}).optional()}).passthrough(),Ed=Y({model:C(),input:xn().optional(),instructions:Ot([C(),Ts()]).optional(),stream:De().optional(),tools:pe(s1).optional(),tool_choice:xn().optional(),max_output_tokens:G().optional(),temperature:G().optional(),user:C().optional(),metadata:qe(C(),xn()).optional()}).passthrough(),Ad=Y({role:Ee(["assistant"]).optional(),content:C().nullable().optional(),reasoning_content:C().nullable().optional(),thinking:C().nullable().optional(),think:C().nullable().optional(),function_call:Y({name:C().optional(),arguments:C().optional()}).nullable().optional(),tool_calls:pe(Y({index:G(),id:C().optional(),type:Te("function").optional(),function:Y({name:C().optional(),arguments:C().optional()})})).nullable().optional()}),o1=Y({index:G(),message:Y({role:Ee(["assistant"]),content:C().nullable(),reasoning_content:C().optional(),thinking:C().optional(),think:C().optional(),function_call:Y({name:C(),arguments:C()}).nullable().optional(),tool_calls:pe(Nd).optional()}).optional(),delta:Ad.optional(),finish_reason:C().nullable()}),i1=Y({id:C(),object:Te("chat.completion"),created:G(),model:C(),choices:pe(o1),usage:Y({prompt_tokens:G().nullable().optional(),completion_tokens:G().nullable().optional(),total_tokens:G().nullable().optional()}).passthrough(),service_tier:C().nullable().optional(),system_fingerprint:C().nullable().optional()}).passthrough(),a1=Y({id:C(),object:Te("chat.completion.chunk"),created:G(),model:C(),choices:pe(Y({index:G(),delta:Ad,finish_reason:C().nullable().optional()})),usage:Y({prompt_tokens:G().nullable().optional(),completion_tokens:G().nullable().optional(),total_tokens:G().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),l1=Y({input_tokens:G().nullable().optional(),output_tokens:G().nullable().optional(),total_tokens:G().nullable().optional(),input_tokens_details:Y({cached_tokens:G().nullable().optional()}).passthrough().nullable().optional(),output_tokens_details:Y({reasoning_tokens:G().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),c1=Y({type:C()}).passthrough(),Es=Y({id:C(),object:Te("response").optional(),created_at:G().optional(),status:C().nullable().optional(),model:C().optional(),output:pe(c1).optional(),output_text:C().optional(),usage:l1.nullable().optional(),error:xn().optional()}).passthrough(),u1=Y({type:C()}).passthrough();function Rd(e){try{const t=JSON.parse(e),n=i1.safeParse(t);return n.success?n.data:null}catch{return null}}function Id(e){try{const t=JSON.parse(e),n=Es.safeParse(t);return n.success?n.data:null}catch{return null}}const d1=Y({error:C()});async function _t(e,t){const n=await e.json();return t.parse(n)}async function Ft(e,t){try{const n=await e.json(),r=d1.safeParse(n);return r.success?r.data.error:t}catch{return t}}async function nn(e,t,n,r){const o=await fetch(e,n);if(!o.ok){const i=r?.(o)??`Request failed with status ${o.status}`;throw new Error(await Ft(o,i))}return _t(o,t)}function f1(e){return e<1e3?`${String(e)}ms`:`${String(Math.round(e/1e3))}s`}class zd extends Error{constructor(t){super(`Request timed out after ${f1(t)}`),this.name="ApiTimeoutError"}}async function qn(e,t,n,r,o){const i=new AbortController,a=setTimeout(()=>i.abort(),n);try{return await nn(e,t,{...r,signal:i.signal},o)}catch(l){throw l instanceof DOMException&&l.name==="AbortError"?new zd(n):l}finally{clearTimeout(a)}}const Od=Y({input:G().int().nonnegative(),output:G().int().nonnegative(),cacheCreate:G().int().nonnegative(),cacheRead:G().int().nonnegative(),total:G().int().nonnegative()}),p1=Y({id:G().int().positive(),sessionLogNumber:G().int().positive().optional(),timestamp:C(),provider:C().nullable(),model:C().nullable(),apiFormat:Ee(["anthropic","openai","unknown"]),method:C(),path:C(),status:G().nullable(),isStreaming:De(),hasError:De(),error:C().nullable(),latencyMs:G().nullable(),firstChunkMs:G().nullable().optional(),totalStreamMs:G().nullable().optional(),tokensPerSecond:G().nullable().optional(),tokens:Y({input:G().nullable(),output:G().nullable(),cacheCreate:G().nullable(),cacheRead:G().nullable()}),sessionId:C().nullable(),userAgent:C().nullable().optional(),clientPid:G().nullable().optional(),clientProjectFolder:C().nullable().optional()}),Pd=Y({id:C(),status:Ee(["active","failed","completed","empty"]),logCoverage:Ee(["recent","history"]),source:Ee(["explicit","client-process","client-connection","provider-test"]).nullable(),runtimeMode:Ee(["in-process","worker-thread","child-process"]).nullable(),createdAt:C().nullable(),updatedAt:C().nullable(),requestCount:G().int().nonnegative(),activeRequests:G().int().nonnegative(),completedRequests:G().int().nonnegative(),failedRequests:G().int().nonnegative(),queuedTasks:G().int().nonnegative(),runningTasks:G().int().nonnegative(),lastTaskError:C().nullable(),logCount:G().int().nonnegative(),errorCount:G().int().nonnegative(),models:pe(C()),providers:pe(C()),tokenUsage:Od,lastLogId:G().nullable(),lastModel:C().nullable(),clientUserAgent:C().nullable().optional(),clientPid:G().nullable(),clientProjectFolder:C().nullable(),inspectorPath:C(),inspectorUrl:C(),apiPath:C(),apiUrl:C(),compactLogsPath:C(),compactLogsUrl:C(),latestLogLimit:G().int().positive(),latestLogs:pe(p1)}),Ir=Ee(["created","running","completed","failed","cancelled"]),_a=Y({jsonPath:C(),markdownPath:C(),htmlPath:C(),exportedAt:C()}),h1=Ee(["run-created","session-started","request","session-finished","evidence-exported"]),m1=Ee(["info","success","warning","error"]),g1=Y({timestamp:C(),kind:h1,severity:m1,title:C(),details:C(),logId:G().int().positive().nullable(),status:G().nullable(),model:C().nullable(),provider:C().nullable(),latencyMs:G().nullable(),isStreaming:De().nullable()}),x1=Ee(["none","active","provider-timeout","provider-http-error","provider-auth-error","provider-rate-limit","network-or-container","streaming-mismatch","context-pressure","runtime-task-error","model-output-error","unknown-failure","no-session-data"]),Md=Y({outcome:Ee(["success","failure","active","unknown"]),severity:Ee(["none","low","medium","high"]),category:x1,summary:C(),evidenceLogIds:pe(G().int().positive()),hints:pe(C())}),ja=Y({status:Ee(["PASS","FAIL","RUNNING","UNKNOWN"]),summary:C(),markdown:C()}),Ld=ja,Sa=Y({id:C(),sessionId:C(),groupId:C().nullable().default(null),title:C(),task:C().nullable(),project:C().nullable(),agent:C().nullable(),status:Ir,tags:pe(C()),metadata:qe(C(),Qe),evidence:_a.nullable(),createdAt:C(),updatedAt:C()});Y({runId:C().min(1).optional(),sessionId:C().min(1).optional(),groupId:C().min(1).nullable().optional(),title:C().min(1).optional(),task:C().nullable().optional(),project:C().nullable().optional(),agent:C().nullable().optional(),status:Ir.optional(),tags:pe(C()).optional(),metadata:qe(C(),Qe).optional()}).optional();Y({sessionId:C().min(1).optional(),groupId:C().min(1).nullable().optional(),title:C().min(1).optional(),task:C().nullable().optional(),project:C().nullable().optional(),agent:C().nullable().optional(),status:Ir.optional(),tags:pe(C()).optional(),metadata:qe(C(),Qe).optional()});Y({includeHistory:De().optional(),latestLogLimit:G().int().positive().max(50).optional()}).optional();Y({run:Sa,evidence:_a,session:Pd.nullable(),timeline:pe(g1),classification:Md,jenkinsReport:ja});const b1=Y({run:Sa,classification:Md,evidence:_a.nullable(),jenkinsReport:ja.nullable(),sessionId:C(),inspectorUrl:C().nullable(),evidenceMarkdownPath:C().nullable(),updatedAt:C()});Y({failures:pe(b1),total:G().int().nonnegative(),limit:G().int().positive()});const Ca=Ee(["created","running","completed","failed","cancelled"]),Na=Ee(["evaluation","batch","manual"]),Ta=Y({jsonPath:C(),markdownPath:C(),htmlPath:C(),exportedAt:C()}),Dd=Y({id:C(),groupId:C(),sessionId:C(),runId:C().nullable(),label:C().nullable(),agent:C().nullable(),provider:C().nullable(),model:C().nullable(),status:Ir.nullable(),metadata:qe(C(),Qe),addedAt:C(),updatedAt:C()}),Ea=Y({id:C(),title:C(),kind:Na,task:C().nullable(),project:C().nullable(),status:Ca,tags:pe(C()),metadata:qe(C(),Qe),evidence:Ta.nullable(),members:pe(Dd),createdAt:C(),updatedAt:C()});Y({groupId:C().min(1).optional(),title:C().min(1).optional(),kind:Na.optional(),task:C().nullable().optional(),project:C().nullable().optional(),status:Ca.optional(),tags:pe(C()).optional(),metadata:qe(C(),Qe).optional()}).optional();Y({title:C().min(1).optional(),kind:Na.optional(),task:C().nullable().optional(),project:C().nullable().optional(),status:Ca.optional(),tags:pe(C()).optional(),metadata:qe(C(),Qe).optional()});Y({memberId:C().min(1).optional(),sessionId:C().min(1),runId:C().min(1).nullable().optional(),label:C().min(1).nullable().optional(),agent:C().min(1).nullable().optional(),provider:C().min(1).nullable().optional(),model:C().min(1).nullable().optional(),status:Ir.nullable().optional(),metadata:qe(C(),Qe).optional()});Y({includeHistory:De().optional(),latestLogLimit:G().int().positive().max(50).optional()}).optional();Y({deleteEvidence:De().optional()});const v1=Y({groupId:C(),deleted:De(),evidenceDeleted:De(),evidencePath:C().nullable()}),$d=Y({member:Dd,run:Sa.nullable(),session:Pd.nullable()}),Fd=Y({memberCount:G().int().nonnegative(),sessionsWithData:G().int().nonnegative(),missingSessions:G().int().nonnegative(),requestCount:G().int().nonnegative(),errorCount:G().int().nonnegative(),tokenUsage:Od,models:pe(C()),providers:pe(C()),completedMembers:G().int().nonnegative(),failedMembers:G().int().nonnegative(),runningMembers:G().int().nonnegative()}),y1=Y({group:Ea,evidence:Ta,members:pe($d).nullable(),markdown:C(),summary:Fd.nullable(),report:Ld.nullable()}),w1=Y({group:Ea,evidence:Ta,members:pe($d),summary:Fd,jenkinsReport:Ld}),Bd=Y({groups:pe(Ea)}),k1=Y({sessionId:C(),imported:G().int().nonnegative(),skipped:G().int().nonnegative(),warnings:pe(C()),logs:pe(_r)}),As=10,ji=600,Rs=60,Si=600,Is="time",Aa="simple",Ud=Ee(["time","full"]),_1=Ee(["simple","full"]),fo=Y({stripClaudeCodeBillingHeader:De(),hasSeenOnboarding:De().default(!1),slowResponseThresholdSeconds:G().int().min(0).max(ji).default(As),providerTestTimeoutSeconds:G().int().min(1).max(Si).default(Rs),timeDisplayFormat:Ud.default(Is),captureMode:_1.default(Aa)}),Ln="/api/config";async function j1(e){return nn(e,fo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function Kr(e){return nn(Ln,fo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function Ra(){const e=jn(Ln,j1,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=$u(),n=e.data?.stripClaudeCodeBillingHeader??!1,r=e.data?.captureMode??Aa,o=e.data?.slowResponseThresholdSeconds??As,i=e.data?.providerTestTimeoutSeconds??Rs,a=e.data?.timeDisplayFormat??Is,l=m=>({stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:e.data?.hasSeenOnboarding??!1,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??As,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??Rs,timeDisplayFormat:e.data?.timeDisplayFormat??Is,captureMode:r,...m}),c=async m=>{await t(Ln,Kr({stripClaudeCodeBillingHeader:m}),{optimisticData:l({stripClaudeCodeBillingHeader:m}),rollbackOnError:!0,revalidate:!1})},u=async m=>{await t(Ln,Kr({slowResponseThresholdSeconds:m}),{optimisticData:l({slowResponseThresholdSeconds:m}),rollbackOnError:!0,revalidate:!1})},d=async m=>{await t(Ln,Kr({timeDisplayFormat:m}),{optimisticData:l({timeDisplayFormat:m}),rollbackOnError:!0,revalidate:!1})},f=async m=>{await t(Ln,Kr({providerTestTimeoutSeconds:m}),{optimisticData:l({providerTestTimeoutSeconds:m}),rollbackOnError:!0,revalidate:!1})};return{strip:n,captureMode:r,slowResponseThresholdSeconds:o,providerTestTimeoutSeconds:i,timeDisplayFormat:a,isLoading:e.isLoading,isError:e.error!==void 0,setStrip:c,setSlowResponseThresholdSeconds:u,setProviderTestTimeoutSeconds:f,setTimeDisplayFormat:d}}const Wd=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const S1=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const C1=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Gl=e=>{const t=C1(e);return t.charAt(0).toUpperCase()+t.slice(1)};var N1={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const T1=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const E1=p.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:o="",children:i,iconNode:a,...l},c)=>p.createElement("svg",{ref:c,...N1,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Wd("lucide",o),...!i&&!T1(l)&&{"aria-hidden":"true"},...l},[...a.map(([u,d])=>p.createElement(u,d)),...Array.isArray(i)?i:[i]]));const he=(e,t)=>{const n=p.forwardRef(({className:r,...o},i)=>p.createElement(E1,{ref:i,iconNode:t,className:Wd(`lucide-${S1(Gl(e))}`,`lucide-${e}`,r),...o}));return n.displayName=Gl(e),n};const A1=[["path",{d:"m7 7 10 10",key:"1fmybs"}],["path",{d:"M17 7v10H7",key:"6fjiku"}]],R1=he("arrow-down-right",A1);const I1=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],z1=he("arrow-down",I1);const O1=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],P1=he("arrow-left",O1);const M1=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],L1=he("arrow-up-right",M1);const D1=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],$1=he("arrow-up",D1);const F1=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],B1=he("bell",F1);const U1=[["path",{d:"M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2",key:"1ah6g2"}],["rect",{x:"14",y:"2",width:"8",height:"8",rx:"1",key:"88lufb"}]],W1=he("blocks",U1);const H1=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],Hd=he("brain",H1);const Z1=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Ke=he("check",Z1);const V1=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ot=he("chevron-down",V1);const q1=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],K1=he("chevron-left",q1);const G1=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],xt=he("chevron-right",G1);const J1=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Ia=he("chevron-up",J1);const Y1=[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]],X1=he("chevrons-down",Y1);const Q1=[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]],ey=he("chevrons-left",Q1);const ty=[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]],ny=he("chevrons-right",ty);const ry=[["path",{d:"m17 11-5-5-5 5",key:"e8nh98"}],["path",{d:"m17 18-5-5-5 5",key:"2avn1x"}]],sy=he("chevrons-up",ry);const oy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],jr=he("circle-alert",oy);const iy=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],ay=he("circle-check-big",iy);const ly=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Ci=he("circle-check",ly);const cy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],uy=he("circle-question-mark",cy);const dy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],Zd=he("circle-x",dy);const fy=[["path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3Z",key:"1tn4o7"}],["path",{d:"m6.2 5.3 3.1 3.9",key:"iuk76l"}],["path",{d:"m12.4 3.4 3.1 4",key:"6hsd6n"}],["path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z",key:"ltgou9"}]],py=he("clapperboard",fy);const hy=[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],my=he("clock-3",hy);const gy=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Bt=he("clock",gy);const xy=[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]],by=he("cloud-upload",xy);const vy=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],yy=he("code-xml",vy);const wy=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]],ky=he("columns-2",wy);const _y=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],Ct=he("copy",_y);const jy=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],Sy=he("cpu",jy);const Cy=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],po=he("download",Cy);const Ny=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],Ty=he("ellipsis",Ny);const Ey=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],za=he("external-link",Ey);const Ay=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],Oa=he("eye-off",Ay);const Ry=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Pa=he("eye",Ry);const Iy=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]],zy=he("file-braces",Iy);const Oy=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M9 10h6",key:"9gxzsh"}],["path",{d:"M12 13V7",key:"h0r20n"}],["path",{d:"M9 17h6",key:"r8uit2"}]],Py=he("file-diff",Oy);const My=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"11.5",cy:"14.5",r:"2.5",key:"1bq0ko"}],["path",{d:"M13.3 16.3 15 18",key:"2quom7"}]],Ly=he("file-search",My);const Dy=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m8 16 2-2-2-2",key:"10vzyd"}],["path",{d:"M12 18h4",key:"1wd2n7"}]],$y=he("file-terminal",Dy);const Fy=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],By=he("file-text",Fy);const Uy=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],Wy=he("folder-open",Uy);const Hy=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],Ma=he("gauge",Hy);const Zy=[["circle",{cx:"5",cy:"6",r:"3",key:"1qnov2"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7",key:"1yj91y"}],["path",{d:"m15 9-3-3 3-3",key:"1lwv8l"}],["circle",{cx:"19",cy:"18",r:"3",key:"1qljk2"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9",key:"16sdep"}],["path",{d:"m9 15 3 3-3 3",key:"1m3kbl"}]],Vy=he("git-compare-arrows",Zy);const qy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Vd=he("globe",qy);const Ky=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],Gy=he("history",Ky);const Jy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Yy=he("info",Jy);const Xy=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]],Jl=he("layers",Xy);const Qy=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],mt=he("loader-circle",Qy);const e2=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],t2=he("lock",e2);const n2=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],ho=he("message-square",n2);const r2=[["path",{d:"M5 12h14",key:"1ays0h"}]],s2=he("minus",r2);const o2=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],i2=he("monitor",o2);const a2=[["path",{d:"M14 4.1 12 6",key:"ita8i4"}],["path",{d:"m5.1 8-2.9-.8",key:"1go3kf"}],["path",{d:"m6 12-1.9 2",key:"mnht97"}],["path",{d:"M7.2 2.2 8 5.1",key:"1cfko1"}],["path",{d:"M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z",key:"s0h3yz"}]],l2=he("mouse-pointer-click",a2);const c2=[["path",{d:"M12 16h.01",key:"1drbdi"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M15.312 2a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2z",key:"1fd625"}]],u2=he("octagon-alert",c2);const d2=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],qd=he("pencil",d2);const f2=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Ni=he("plus",f2);const p2=[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478",key:"1fwjs5"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134",key:"ehdyv1"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134",key:"1q22gi"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478",key:"r2q7qm"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],Yl=he("radio",p2);const h2=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],zs=he("refresh-cw",h2);const m2=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],g2=he("rotate-ccw",m2);const x2=[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]],Ti=he("rotate-cw",x2);const b2=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M21 9H3",key:"1338ky"}],["path",{d:"M21 15H3",key:"9uk58r"}]],v2=he("rows-3",b2);const y2=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],w2=he("save",y2);const k2=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}]],_2=he("scan",k2);const j2=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],S2=he("search",j2);const C2=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],N2=he("server",C2);const T2=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],E2=he("settings",T2);const A2=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],R2=he("shield-alert",A2);const I2=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Xl=he("shield-check",I2);const z2=[["path",{d:"M7 18v-6a5 5 0 1 1 10 0v6",key:"pcx96s"}],["path",{d:"M5 21a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2z",key:"1b4s83"}],["path",{d:"M21 12h1",key:"jtio3y"}],["path",{d:"M18.5 4.5 18 5",key:"g5sp9y"}],["path",{d:"M2 12h1",key:"1uaihz"}],["path",{d:"M12 2v1",key:"11qlp1"}],["path",{d:"m4.929 4.929.707.707",key:"1i51kw"}],["path",{d:"M12 12v6",key:"3ahymv"}]],Ei=he("siren",z2);const O2=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],La=he("terminal",O2);const P2=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],Kn=he("trash-2",P2);const M2=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Qt=he("triangle-alert",M2);const L2=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],Kd=he("upload",L2);const D2=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],$2=he("wifi-off",D2);const F2=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],B2=he("wifi",F2);const U2=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],zr=he("wrench",U2);const W2=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],mo=he("x",W2);const H2=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Sr=he("zap",H2),Ai="/api/config";async function Z2(e){return nn(e,fo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function V2(e){return nn(Ai,fo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function q2(){const e=jn(Ai,Z2,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=$u(),n=e.data?.hasSeenOnboarding??!1,r=e.data?.captureMode??Aa,o=async()=>{await t(Ai,V2({hasSeenOnboarding:!0}),{optimisticData:{stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:!0,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??As,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??Rs,timeDisplayFormat:e.data?.timeDisplayFormat??Is,captureMode:r},rollbackOnError:!0,revalidate:!1})};return{hasSeenOnboarding:n,captureMode:r,isLoading:e.isLoading,markSeen:o}}function K2(){const{hasSeenOnboarding:e,isLoading:t,markSeen:n}=q2(),[r,o]=p.useState(!1);if(t||e)return null;const i=r?"grid":"hidden sm:grid";return s.jsx("div",{role:"note","aria-label":"Onboarding tip",className:"mx-4 mt-2 mb-1 rounded-md border border-amber-500/30 bg-[#130d04] px-3 py-2 text-sm shadow-[0_12px_40px_rgba(0,0,0,0.16)]",children:s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx(Yy,{className:"mt-0.5 size-4 shrink-0 text-amber-300","aria-hidden":"true"}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[s.jsx("span",{className:"font-medium text-amber-200",children:"Inspector ready"}),s.jsx("span",{className:"hidden truncate text-xs text-muted-foreground sm:inline",children:"Request, response, tool, timing, token, replay, and memory signals are active."})]}),s.jsx("div",{className:"mt-1 text-xs leading-relaxed text-muted-foreground sm:hidden",children:"Core capture is active."}),s.jsxs("div",{className:`${i} mt-2 gap-x-4 gap-y-1 text-xs leading-relaxed text-muted-foreground sm:grid-cols-2`,children:[s.jsxs("div",{children:[s.jsx("strong",{children:"Evidence"}),": logs, sessions, groups, and MCP exports are available."]}),s.jsxs("div",{children:[s.jsx("strong",{children:"Network"}),": replace ",s.jsx("code",{children:"localhost"})," if containers differ."]})]})]}),s.jsx("button",{type:"button",onClick:()=>o(a=>!a),className:"inline-flex h-8 shrink-0 items-center gap-1 rounded-md border border-amber-500/30 px-2 text-xs text-amber-200 transition-colors hover:bg-amber-500/10 sm:hidden","aria-expanded":r,"aria-label":r?"Hide onboarding details":"Show onboarding details",children:s.jsx(ot,{className:`size-3.5 transition-transform ${r?"rotate-180":""}`})}),s.jsxs("button",{type:"button",onClick:()=>{n()},className:"hidden h-8 shrink-0 items-center gap-1.5 rounded-md border border-amber-500/40 px-3 text-xs text-amber-200 transition-colors hover:bg-amber-500/10 sm:inline-flex","aria-label":"Dismiss onboarding tip",children:[s.jsx(Ke,{className:"size-3.5"}),"Got it"]}),s.jsx("button",{type:"button",onClick:()=>{n()},className:"-m-1 shrink-0 p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":"Dismiss",children:s.jsx(mo,{className:"size-3.5"})})]})})}function Gr(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Uo={exports:{}};var Ql;function G2(){return Ql||(Ql=1,(function(e,t){(function(n){e.exports=n()})(function(){return(function n(r,o,i){function a(u,d){if(!o[u]){if(!r[u]){var f=typeof Gr=="function"&&Gr;if(!d&&f)return f(u,!0);if(l)return l(u,!0);var m=new Error("Cannot find module '"+u+"'");throw m.code="MODULE_NOT_FOUND",m}var h=o[u]={exports:{}};r[u][0].call(h.exports,function(v){var g=r[u][1][v];return a(g||v)},h,h.exports,n,r,o,i)}return o[u].exports}for(var l=typeof Gr=="function"&&Gr,c=0;c<i.length;c++)a(i[c]);return a})({1:[function(n,r,o){var i=n("./utils"),a=n("./support"),l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";o.encode=function(c){for(var u,d,f,m,h,v,g,x=[],b=0,y=c.length,_=y,j=i.getTypeOf(c)!=="string";b<c.length;)_=y-b,f=j?(u=c[b++],d=b<y?c[b++]:0,b<y?c[b++]:0):(u=c.charCodeAt(b++),d=b<y?c.charCodeAt(b++):0,b<y?c.charCodeAt(b++):0),m=u>>2,h=(3&u)<<4|d>>4,v=1<_?(15&d)<<2|f>>6:64,g=2<_?63&f:64,x.push(l.charAt(m)+l.charAt(h)+l.charAt(v)+l.charAt(g));return x.join("")},o.decode=function(c){var u,d,f,m,h,v,g=0,x=0,b="data:";if(c.substr(0,b.length)===b)throw new Error("Invalid base64 input, it looks like a data url.");var y,_=3*(c=c.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(c.charAt(c.length-1)===l.charAt(64)&&_--,c.charAt(c.length-2)===l.charAt(64)&&_--,_%1!=0)throw new Error("Invalid base64 input, bad content length.");for(y=a.uint8array?new Uint8Array(0|_):new Array(0|_);g<c.length;)u=l.indexOf(c.charAt(g++))<<2|(m=l.indexOf(c.charAt(g++)))>>4,d=(15&m)<<4|(h=l.indexOf(c.charAt(g++)))>>2,f=(3&h)<<6|(v=l.indexOf(c.charAt(g++))),y[x++]=u,h!==64&&(y[x++]=d),v!==64&&(y[x++]=f);return y}},{"./support":30,"./utils":32}],2:[function(n,r,o){var i=n("./external"),a=n("./stream/DataWorker"),l=n("./stream/Crc32Probe"),c=n("./stream/DataLengthProbe");function u(d,f,m,h,v){this.compressedSize=d,this.uncompressedSize=f,this.crc32=m,this.compression=h,this.compressedContent=v}u.prototype={getContentWorker:function(){var d=new a(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new c("data_length")),f=this;return d.on("end",function(){if(this.streamInfo.data_length!==f.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),d},getCompressedWorker:function(){return new a(i.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},u.createWorkerFrom=function(d,f,m){return d.pipe(new l).pipe(new c("uncompressedSize")).pipe(f.compressWorker(m)).pipe(new c("compressedSize")).withStreamInfo("compression",f)},r.exports=u},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(n,r,o){var i=n("./stream/GenericWorker");o.STORE={magic:"\0\0",compressWorker:function(){return new i("STORE compression")},uncompressWorker:function(){return new i("STORE decompression")}},o.DEFLATE=n("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(n,r,o){var i=n("./utils"),a=(function(){for(var l,c=[],u=0;u<256;u++){l=u;for(var d=0;d<8;d++)l=1&l?3988292384^l>>>1:l>>>1;c[u]=l}return c})();r.exports=function(l,c){return l!==void 0&&l.length?i.getTypeOf(l)!=="string"?(function(u,d,f,m){var h=a,v=m+f;u^=-1;for(var g=m;g<v;g++)u=u>>>8^h[255&(u^d[g])];return-1^u})(0|c,l,l.length,0):(function(u,d,f,m){var h=a,v=m+f;u^=-1;for(var g=m;g<v;g++)u=u>>>8^h[255&(u^d.charCodeAt(g))];return-1^u})(0|c,l,l.length,0):0}},{"./utils":32}],5:[function(n,r,o){o.base64=!1,o.binary=!1,o.dir=!1,o.createFolders=!0,o.date=null,o.compression=null,o.compressionOptions=null,o.comment=null,o.unixPermissions=null,o.dosPermissions=null},{}],6:[function(n,r,o){var i=null;i=typeof Promise<"u"?Promise:n("lie"),r.exports={Promise:i}},{lie:37}],7:[function(n,r,o){var i=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",a=n("pako"),l=n("./utils"),c=n("./stream/GenericWorker"),u=i?"uint8array":"array";function d(f,m){c.call(this,"FlateWorker/"+f),this._pako=null,this._pakoAction=f,this._pakoOptions=m,this.meta={}}o.magic="\b\0",l.inherits(d,c),d.prototype.processChunk=function(f){this.meta=f.meta,this._pako===null&&this._createPako(),this._pako.push(l.transformTo(u,f.data),!1)},d.prototype.flush=function(){c.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},d.prototype.cleanUp=function(){c.prototype.cleanUp.call(this),this._pako=null},d.prototype._createPako=function(){this._pako=new a[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var f=this;this._pako.onData=function(m){f.push({data:m,meta:f.meta})}},o.compressWorker=function(f){return new d("Deflate",f)},o.uncompressWorker=function(){return new d("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(n,r,o){function i(h,v){var g,x="";for(g=0;g<v;g++)x+=String.fromCharCode(255&h),h>>>=8;return x}function a(h,v,g,x,b,y){var _,j,S=h.file,T=h.compression,N=y!==u.utf8encode,R=l.transformTo("string",y(S.name)),I=l.transformTo("string",u.utf8encode(S.name)),O=S.comment,K=l.transformTo("string",y(O)),A=l.transformTo("string",u.utf8encode(O)),$=I.length!==S.name.length,k=A.length!==O.length,Z="",V="",U="",L=S.dir,W=S.date,ne={crc32:0,compressedSize:0,uncompressedSize:0};v&&!g||(ne.crc32=h.crc32,ne.compressedSize=h.compressedSize,ne.uncompressedSize=h.uncompressedSize);var B=0;v&&(B|=8),N||!$&&!k||(B|=2048);var F=0,ue=0;L&&(F|=16),b==="UNIX"?(ue=798,F|=(function(oe,_e){var ae=oe;return oe||(ae=_e?16893:33204),(65535&ae)<<16})(S.unixPermissions,L)):(ue=20,F|=(function(oe){return 63&(oe||0)})(S.dosPermissions)),_=W.getUTCHours(),_<<=6,_|=W.getUTCMinutes(),_<<=5,_|=W.getUTCSeconds()/2,j=W.getUTCFullYear()-1980,j<<=4,j|=W.getUTCMonth()+1,j<<=5,j|=W.getUTCDate(),$&&(V=i(1,1)+i(d(R),4)+I,Z+="up"+i(V.length,2)+V),k&&(U=i(1,1)+i(d(K),4)+A,Z+="uc"+i(U.length,2)+U);var se="";return se+=`
|
|
41
|
+
\0`,se+=i(B,2),se+=T.magic,se+=i(_,2),se+=i(j,2),se+=i(ne.crc32,4),se+=i(ne.compressedSize,4),se+=i(ne.uncompressedSize,4),se+=i(R.length,2),se+=i(Z.length,2),{fileRecord:f.LOCAL_FILE_HEADER+se+R+Z,dirRecord:f.CENTRAL_FILE_HEADER+i(ue,2)+se+i(K.length,2)+"\0\0\0\0"+i(F,4)+i(x,4)+R+Z+K}}var l=n("../utils"),c=n("../stream/GenericWorker"),u=n("../utf8"),d=n("../crc32"),f=n("../signature");function m(h,v,g,x){c.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=v,this.zipPlatform=g,this.encodeFileName=x,this.streamFiles=h,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}l.inherits(m,c),m.prototype.push=function(h){var v=h.meta.percent||0,g=this.entriesCount,x=this._sources.length;this.accumulate?this.contentBuffer.push(h):(this.bytesWritten+=h.data.length,c.prototype.push.call(this,{data:h.data,meta:{currentFile:this.currentFile,percent:g?(v+100*(g-x-1))/g:100}}))},m.prototype.openedSource=function(h){this.currentSourceOffset=this.bytesWritten,this.currentFile=h.file.name;var v=this.streamFiles&&!h.file.dir;if(v){var g=a(h,v,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:g.fileRecord,meta:{percent:0}})}else this.accumulate=!0},m.prototype.closedSource=function(h){this.accumulate=!1;var v=this.streamFiles&&!h.file.dir,g=a(h,v,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(g.dirRecord),v)this.push({data:(function(x){return f.DATA_DESCRIPTOR+i(x.crc32,4)+i(x.compressedSize,4)+i(x.uncompressedSize,4)})(h),meta:{percent:100}});else for(this.push({data:g.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},m.prototype.flush=function(){for(var h=this.bytesWritten,v=0;v<this.dirRecords.length;v++)this.push({data:this.dirRecords[v],meta:{percent:100}});var g=this.bytesWritten-h,x=(function(b,y,_,j,S){var T=l.transformTo("string",S(j));return f.CENTRAL_DIRECTORY_END+"\0\0\0\0"+i(b,2)+i(b,2)+i(y,4)+i(_,4)+i(T.length,2)+T})(this.dirRecords.length,g,h,this.zipComment,this.encodeFileName);this.push({data:x,meta:{percent:100}})},m.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},m.prototype.registerPrevious=function(h){this._sources.push(h);var v=this;return h.on("data",function(g){v.processChunk(g)}),h.on("end",function(){v.closedSource(v.previous.streamInfo),v._sources.length?v.prepareNextSource():v.end()}),h.on("error",function(g){v.error(g)}),this},m.prototype.resume=function(){return!!c.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},m.prototype.error=function(h){var v=this._sources;if(!c.prototype.error.call(this,h))return!1;for(var g=0;g<v.length;g++)try{v[g].error(h)}catch{}return!0},m.prototype.lock=function(){c.prototype.lock.call(this);for(var h=this._sources,v=0;v<h.length;v++)h[v].lock()},r.exports=m},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(n,r,o){var i=n("../compressions"),a=n("./ZipFileWorker");o.generateWorker=function(l,c,u){var d=new a(c.streamFiles,u,c.platform,c.encodeFileName),f=0;try{l.forEach(function(m,h){f++;var v=(function(y,_){var j=y||_,S=i[j];if(!S)throw new Error(j+" is not a valid compression method !");return S})(h.options.compression,c.compression),g=h.options.compressionOptions||c.compressionOptions||{},x=h.dir,b=h.date;h._compressWorker(v,g).withStreamInfo("file",{name:m,dir:x,date:b,comment:h.comment||"",unixPermissions:h.unixPermissions,dosPermissions:h.dosPermissions}).pipe(d)}),d.entriesCount=f}catch(m){d.error(m)}return d}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(n,r,o){function i(){if(!(this instanceof i))return new i;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var a=new i;for(var l in this)typeof this[l]!="function"&&(a[l]=this[l]);return a}}(i.prototype=n("./object")).loadAsync=n("./load"),i.support=n("./support"),i.defaults=n("./defaults"),i.version="3.10.1",i.loadAsync=function(a,l){return new i().loadAsync(a,l)},i.external=n("./external"),r.exports=i},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(n,r,o){var i=n("./utils"),a=n("./external"),l=n("./utf8"),c=n("./zipEntries"),u=n("./stream/Crc32Probe"),d=n("./nodejsUtils");function f(m){return new a.Promise(function(h,v){var g=m.decompressed.getContentWorker().pipe(new u);g.on("error",function(x){v(x)}).on("end",function(){g.streamInfo.crc32!==m.decompressed.crc32?v(new Error("Corrupted zip : CRC32 mismatch")):h()}).resume()})}r.exports=function(m,h){var v=this;return h=i.extend(h||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:l.utf8decode}),d.isNode&&d.isStream(m)?a.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):i.prepareContent("the loaded zip file",m,!0,h.optimizedBinaryString,h.base64).then(function(g){var x=new c(h);return x.load(g),x}).then(function(g){var x=[a.Promise.resolve(g)],b=g.files;if(h.checkCRC32)for(var y=0;y<b.length;y++)x.push(f(b[y]));return a.Promise.all(x)}).then(function(g){for(var x=g.shift(),b=x.files,y=0;y<b.length;y++){var _=b[y],j=_.fileNameStr,S=i.resolve(_.fileNameStr);v.file(S,_.decompressed,{binary:!0,optimizedBinaryString:!0,date:_.date,dir:_.dir,comment:_.fileCommentStr.length?_.fileCommentStr:null,unixPermissions:_.unixPermissions,dosPermissions:_.dosPermissions,createFolders:h.createFolders}),_.dir||(v.file(S).unsafeOriginalName=j)}return x.zipComment.length&&(v.comment=x.zipComment),v})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(n,r,o){var i=n("../utils"),a=n("../stream/GenericWorker");function l(c,u){a.call(this,"Nodejs stream input adapter for "+c),this._upstreamEnded=!1,this._bindStream(u)}i.inherits(l,a),l.prototype._bindStream=function(c){var u=this;(this._stream=c).pause(),c.on("data",function(d){u.push({data:d,meta:{percent:0}})}).on("error",function(d){u.isPaused?this.generatedError=d:u.error(d)}).on("end",function(){u.isPaused?u._upstreamEnded=!0:u.end()})},l.prototype.pause=function(){return!!a.prototype.pause.call(this)&&(this._stream.pause(),!0)},l.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},r.exports=l},{"../stream/GenericWorker":28,"../utils":32}],13:[function(n,r,o){var i=n("readable-stream").Readable;function a(l,c,u){i.call(this,c),this._helper=l;var d=this;l.on("data",function(f,m){d.push(f)||d._helper.pause(),u&&u(m)}).on("error",function(f){d.emit("error",f)}).on("end",function(){d.push(null)})}n("../utils").inherits(a,i),a.prototype._read=function(){this._helper.resume()},r.exports=a},{"../utils":32,"readable-stream":16}],14:[function(n,r,o){r.exports={isNode:typeof Buffer<"u",newBufferFrom:function(i,a){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(i,a);if(typeof i=="number")throw new Error('The "data" argument must not be a number');return new Buffer(i,a)},allocBuffer:function(i){if(Buffer.alloc)return Buffer.alloc(i);var a=new Buffer(i);return a.fill(0),a},isBuffer:function(i){return Buffer.isBuffer(i)},isStream:function(i){return i&&typeof i.on=="function"&&typeof i.pause=="function"&&typeof i.resume=="function"}}},{}],15:[function(n,r,o){function i(S,T,N){var R,I=l.getTypeOf(T),O=l.extend(N||{},d);O.date=O.date||new Date,O.compression!==null&&(O.compression=O.compression.toUpperCase()),typeof O.unixPermissions=="string"&&(O.unixPermissions=parseInt(O.unixPermissions,8)),O.unixPermissions&&16384&O.unixPermissions&&(O.dir=!0),O.dosPermissions&&16&O.dosPermissions&&(O.dir=!0),O.dir&&(S=b(S)),O.createFolders&&(R=x(S))&&y.call(this,R,!0);var K=I==="string"&&O.binary===!1&&O.base64===!1;N&&N.binary!==void 0||(O.binary=!K),(T instanceof f&&T.uncompressedSize===0||O.dir||!T||T.length===0)&&(O.base64=!1,O.binary=!0,T="",O.compression="STORE",I="string");var A=null;A=T instanceof f||T instanceof c?T:v.isNode&&v.isStream(T)?new g(S,T):l.prepareContent(S,T,O.binary,O.optimizedBinaryString,O.base64);var $=new m(S,A,O);this.files[S]=$}var a=n("./utf8"),l=n("./utils"),c=n("./stream/GenericWorker"),u=n("./stream/StreamHelper"),d=n("./defaults"),f=n("./compressedObject"),m=n("./zipObject"),h=n("./generate"),v=n("./nodejsUtils"),g=n("./nodejs/NodejsStreamInputAdapter"),x=function(S){S.slice(-1)==="/"&&(S=S.substring(0,S.length-1));var T=S.lastIndexOf("/");return 0<T?S.substring(0,T):""},b=function(S){return S.slice(-1)!=="/"&&(S+="/"),S},y=function(S,T){return T=T!==void 0?T:d.createFolders,S=b(S),this.files[S]||i.call(this,S,null,{dir:!0,createFolders:T}),this.files[S]};function _(S){return Object.prototype.toString.call(S)==="[object RegExp]"}var j={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(S){var T,N,R;for(T in this.files)R=this.files[T],(N=T.slice(this.root.length,T.length))&&T.slice(0,this.root.length)===this.root&&S(N,R)},filter:function(S){var T=[];return this.forEach(function(N,R){S(N,R)&&T.push(R)}),T},file:function(S,T,N){if(arguments.length!==1)return S=this.root+S,i.call(this,S,T,N),this;if(_(S)){var R=S;return this.filter(function(O,K){return!K.dir&&R.test(O)})}var I=this.files[this.root+S];return I&&!I.dir?I:null},folder:function(S){if(!S)return this;if(_(S))return this.filter(function(I,O){return O.dir&&S.test(I)});var T=this.root+S,N=y.call(this,T),R=this.clone();return R.root=N.name,R},remove:function(S){S=this.root+S;var T=this.files[S];if(T||(S.slice(-1)!=="/"&&(S+="/"),T=this.files[S]),T&&!T.dir)delete this.files[S];else for(var N=this.filter(function(I,O){return O.name.slice(0,S.length)===S}),R=0;R<N.length;R++)delete this.files[N[R].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(S){var T,N={};try{if((N=l.extend(S||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:a.utf8encode})).type=N.type.toLowerCase(),N.compression=N.compression.toUpperCase(),N.type==="binarystring"&&(N.type="string"),!N.type)throw new Error("No output type specified.");l.checkSupport(N.type),N.platform!=="darwin"&&N.platform!=="freebsd"&&N.platform!=="linux"&&N.platform!=="sunos"||(N.platform="UNIX"),N.platform==="win32"&&(N.platform="DOS");var R=N.comment||this.comment||"";T=h.generateWorker(this,N,R)}catch(I){(T=new c("error")).error(I)}return new u(T,N.type||"string",N.mimeType)},generateAsync:function(S,T){return this.generateInternalStream(S).accumulate(T)},generateNodeStream:function(S,T){return(S=S||{}).type||(S.type="nodebuffer"),this.generateInternalStream(S).toNodejsStream(T)}};r.exports=j},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(n,r,o){r.exports=n("stream")},{stream:void 0}],17:[function(n,r,o){var i=n("./DataReader");function a(l){i.call(this,l);for(var c=0;c<this.data.length;c++)l[c]=255&l[c]}n("../utils").inherits(a,i),a.prototype.byteAt=function(l){return this.data[this.zero+l]},a.prototype.lastIndexOfSignature=function(l){for(var c=l.charCodeAt(0),u=l.charCodeAt(1),d=l.charCodeAt(2),f=l.charCodeAt(3),m=this.length-4;0<=m;--m)if(this.data[m]===c&&this.data[m+1]===u&&this.data[m+2]===d&&this.data[m+3]===f)return m-this.zero;return-1},a.prototype.readAndCheckSignature=function(l){var c=l.charCodeAt(0),u=l.charCodeAt(1),d=l.charCodeAt(2),f=l.charCodeAt(3),m=this.readData(4);return c===m[0]&&u===m[1]&&d===m[2]&&f===m[3]},a.prototype.readData=function(l){if(this.checkOffset(l),l===0)return[];var c=this.data.slice(this.zero+this.index,this.zero+this.index+l);return this.index+=l,c},r.exports=a},{"../utils":32,"./DataReader":18}],18:[function(n,r,o){var i=n("../utils");function a(l){this.data=l,this.length=l.length,this.index=0,this.zero=0}a.prototype={checkOffset:function(l){this.checkIndex(this.index+l)},checkIndex:function(l){if(this.length<this.zero+l||l<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+l+"). Corrupted zip ?")},setIndex:function(l){this.checkIndex(l),this.index=l},skip:function(l){this.setIndex(this.index+l)},byteAt:function(){},readInt:function(l){var c,u=0;for(this.checkOffset(l),c=this.index+l-1;c>=this.index;c--)u=(u<<8)+this.byteAt(c);return this.index+=l,u},readString:function(l){return i.transformTo("string",this.readData(l))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var l=this.readInt(4);return new Date(Date.UTC(1980+(l>>25&127),(l>>21&15)-1,l>>16&31,l>>11&31,l>>5&63,(31&l)<<1))}},r.exports=a},{"../utils":32}],19:[function(n,r,o){var i=n("./Uint8ArrayReader");function a(l){i.call(this,l)}n("../utils").inherits(a,i),a.prototype.readData=function(l){this.checkOffset(l);var c=this.data.slice(this.zero+this.index,this.zero+this.index+l);return this.index+=l,c},r.exports=a},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(n,r,o){var i=n("./DataReader");function a(l){i.call(this,l)}n("../utils").inherits(a,i),a.prototype.byteAt=function(l){return this.data.charCodeAt(this.zero+l)},a.prototype.lastIndexOfSignature=function(l){return this.data.lastIndexOf(l)-this.zero},a.prototype.readAndCheckSignature=function(l){return l===this.readData(4)},a.prototype.readData=function(l){this.checkOffset(l);var c=this.data.slice(this.zero+this.index,this.zero+this.index+l);return this.index+=l,c},r.exports=a},{"../utils":32,"./DataReader":18}],21:[function(n,r,o){var i=n("./ArrayReader");function a(l){i.call(this,l)}n("../utils").inherits(a,i),a.prototype.readData=function(l){if(this.checkOffset(l),l===0)return new Uint8Array(0);var c=this.data.subarray(this.zero+this.index,this.zero+this.index+l);return this.index+=l,c},r.exports=a},{"../utils":32,"./ArrayReader":17}],22:[function(n,r,o){var i=n("../utils"),a=n("../support"),l=n("./ArrayReader"),c=n("./StringReader"),u=n("./NodeBufferReader"),d=n("./Uint8ArrayReader");r.exports=function(f){var m=i.getTypeOf(f);return i.checkSupport(m),m!=="string"||a.uint8array?m==="nodebuffer"?new u(f):a.uint8array?new d(i.transformTo("uint8array",f)):new l(i.transformTo("array",f)):new c(f)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(n,r,o){o.LOCAL_FILE_HEADER="PK",o.CENTRAL_FILE_HEADER="PK",o.CENTRAL_DIRECTORY_END="PK",o.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",o.ZIP64_CENTRAL_DIRECTORY_END="PK",o.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(n,r,o){var i=n("./GenericWorker"),a=n("../utils");function l(c){i.call(this,"ConvertWorker to "+c),this.destType=c}a.inherits(l,i),l.prototype.processChunk=function(c){this.push({data:a.transformTo(this.destType,c.data),meta:c.meta})},r.exports=l},{"../utils":32,"./GenericWorker":28}],25:[function(n,r,o){var i=n("./GenericWorker"),a=n("../crc32");function l(){i.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}n("../utils").inherits(l,i),l.prototype.processChunk=function(c){this.streamInfo.crc32=a(c.data,this.streamInfo.crc32||0),this.push(c)},r.exports=l},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(n,r,o){var i=n("../utils"),a=n("./GenericWorker");function l(c){a.call(this,"DataLengthProbe for "+c),this.propName=c,this.withStreamInfo(c,0)}i.inherits(l,a),l.prototype.processChunk=function(c){if(c){var u=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=u+c.data.length}a.prototype.processChunk.call(this,c)},r.exports=l},{"../utils":32,"./GenericWorker":28}],27:[function(n,r,o){var i=n("../utils"),a=n("./GenericWorker");function l(c){a.call(this,"DataWorker");var u=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,c.then(function(d){u.dataIsReady=!0,u.data=d,u.max=d&&d.length||0,u.type=i.getTypeOf(d),u.isPaused||u._tickAndRepeat()},function(d){u.error(d)})}i.inherits(l,a),l.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this.data=null},l.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,i.delay(this._tickAndRepeat,[],this)),!0)},l.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(i.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},l.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var c=null,u=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":c=this.data.substring(this.index,u);break;case"uint8array":c=this.data.subarray(this.index,u);break;case"array":case"nodebuffer":c=this.data.slice(this.index,u)}return this.index=u,this.push({data:c,meta:{percent:this.max?this.index/this.max*100:0}})},r.exports=l},{"../utils":32,"./GenericWorker":28}],28:[function(n,r,o){function i(a){this.name=a||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}i.prototype={push:function(a){this.emit("data",a)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(a){this.emit("error",a)}return!0},error:function(a){return!this.isFinished&&(this.isPaused?this.generatedError=a:(this.isFinished=!0,this.emit("error",a),this.previous&&this.previous.error(a),this.cleanUp()),!0)},on:function(a,l){return this._listeners[a].push(l),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(a,l){if(this._listeners[a])for(var c=0;c<this._listeners[a].length;c++)this._listeners[a][c].call(this,l)},pipe:function(a){return a.registerPrevious(this)},registerPrevious:function(a){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=a.streamInfo,this.mergeStreamInfo(),this.previous=a;var l=this;return a.on("data",function(c){l.processChunk(c)}),a.on("end",function(){l.end()}),a.on("error",function(c){l.error(c)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var a=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),a=!0),this.previous&&this.previous.resume(),!a},flush:function(){},processChunk:function(a){this.push(a)},withStreamInfo:function(a,l){return this.extraStreamInfo[a]=l,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var a in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,a)&&(this.streamInfo[a]=this.extraStreamInfo[a])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var a="Worker "+this.name;return this.previous?this.previous+" -> "+a:a}},r.exports=i},{}],29:[function(n,r,o){var i=n("../utils"),a=n("./ConvertWorker"),l=n("./GenericWorker"),c=n("../base64"),u=n("../support"),d=n("../external"),f=null;if(u.nodestream)try{f=n("../nodejs/NodejsStreamOutputAdapter")}catch{}function m(v,g){return new d.Promise(function(x,b){var y=[],_=v._internalType,j=v._outputType,S=v._mimeType;v.on("data",function(T,N){y.push(T),g&&g(N)}).on("error",function(T){y=[],b(T)}).on("end",function(){try{var T=(function(N,R,I){switch(N){case"blob":return i.newBlob(i.transformTo("arraybuffer",R),I);case"base64":return c.encode(R);default:return i.transformTo(N,R)}})(j,(function(N,R){var I,O=0,K=null,A=0;for(I=0;I<R.length;I++)A+=R[I].length;switch(N){case"string":return R.join("");case"array":return Array.prototype.concat.apply([],R);case"uint8array":for(K=new Uint8Array(A),I=0;I<R.length;I++)K.set(R[I],O),O+=R[I].length;return K;case"nodebuffer":return Buffer.concat(R);default:throw new Error("concat : unsupported type '"+N+"'")}})(_,y),S);x(T)}catch(N){b(N)}y=[]}).resume()})}function h(v,g,x){var b=g;switch(g){case"blob":case"arraybuffer":b="uint8array";break;case"base64":b="string"}try{this._internalType=b,this._outputType=g,this._mimeType=x,i.checkSupport(b),this._worker=v.pipe(new a(b)),v.lock()}catch(y){this._worker=new l("error"),this._worker.error(y)}}h.prototype={accumulate:function(v){return m(this,v)},on:function(v,g){var x=this;return v==="data"?this._worker.on(v,function(b){g.call(x,b.data,b.meta)}):this._worker.on(v,function(){i.delay(g,arguments,x)}),this},resume:function(){return i.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(v){if(i.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new f(this,{objectMode:this._outputType!=="nodebuffer"},v)}},r.exports=h},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(n,r,o){if(o.base64=!0,o.array=!0,o.string=!0,o.arraybuffer=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u",o.nodebuffer=typeof Buffer<"u",o.uint8array=typeof Uint8Array<"u",typeof ArrayBuffer>"u")o.blob=!1;else{var i=new ArrayBuffer(0);try{o.blob=new Blob([i],{type:"application/zip"}).size===0}catch{try{var a=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);a.append(i),o.blob=a.getBlob("application/zip").size===0}catch{o.blob=!1}}}try{o.nodestream=!!n("readable-stream").Readable}catch{o.nodestream=!1}},{"readable-stream":16}],31:[function(n,r,o){for(var i=n("./utils"),a=n("./support"),l=n("./nodejsUtils"),c=n("./stream/GenericWorker"),u=new Array(256),d=0;d<256;d++)u[d]=252<=d?6:248<=d?5:240<=d?4:224<=d?3:192<=d?2:1;u[254]=u[254]=1;function f(){c.call(this,"utf-8 decode"),this.leftOver=null}function m(){c.call(this,"utf-8 encode")}o.utf8encode=function(h){return a.nodebuffer?l.newBufferFrom(h,"utf-8"):(function(v){var g,x,b,y,_,j=v.length,S=0;for(y=0;y<j;y++)(64512&(x=v.charCodeAt(y)))==55296&&y+1<j&&(64512&(b=v.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(b-56320),y++),S+=x<128?1:x<2048?2:x<65536?3:4;for(g=a.uint8array?new Uint8Array(S):new Array(S),y=_=0;_<S;y++)(64512&(x=v.charCodeAt(y)))==55296&&y+1<j&&(64512&(b=v.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(b-56320),y++),x<128?g[_++]=x:(x<2048?g[_++]=192|x>>>6:(x<65536?g[_++]=224|x>>>12:(g[_++]=240|x>>>18,g[_++]=128|x>>>12&63),g[_++]=128|x>>>6&63),g[_++]=128|63&x);return g})(h)},o.utf8decode=function(h){return a.nodebuffer?i.transformTo("nodebuffer",h).toString("utf-8"):(function(v){var g,x,b,y,_=v.length,j=new Array(2*_);for(g=x=0;g<_;)if((b=v[g++])<128)j[x++]=b;else if(4<(y=u[b]))j[x++]=65533,g+=y-1;else{for(b&=y===2?31:y===3?15:7;1<y&&g<_;)b=b<<6|63&v[g++],y--;1<y?j[x++]=65533:b<65536?j[x++]=b:(b-=65536,j[x++]=55296|b>>10&1023,j[x++]=56320|1023&b)}return j.length!==x&&(j.subarray?j=j.subarray(0,x):j.length=x),i.applyFromCharCode(j)})(h=i.transformTo(a.uint8array?"uint8array":"array",h))},i.inherits(f,c),f.prototype.processChunk=function(h){var v=i.transformTo(a.uint8array?"uint8array":"array",h.data);if(this.leftOver&&this.leftOver.length){if(a.uint8array){var g=v;(v=new Uint8Array(g.length+this.leftOver.length)).set(this.leftOver,0),v.set(g,this.leftOver.length)}else v=this.leftOver.concat(v);this.leftOver=null}var x=(function(y,_){var j;for((_=_||y.length)>y.length&&(_=y.length),j=_-1;0<=j&&(192&y[j])==128;)j--;return j<0||j===0?_:j+u[y[j]]>_?j:_})(v),b=v;x!==v.length&&(a.uint8array?(b=v.subarray(0,x),this.leftOver=v.subarray(x,v.length)):(b=v.slice(0,x),this.leftOver=v.slice(x,v.length))),this.push({data:o.utf8decode(b),meta:h.meta})},f.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=f,i.inherits(m,c),m.prototype.processChunk=function(h){this.push({data:o.utf8encode(h.data),meta:h.meta})},o.Utf8EncodeWorker=m},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(n,r,o){var i=n("./support"),a=n("./base64"),l=n("./nodejsUtils"),c=n("./external");function u(g){return g}function d(g,x){for(var b=0;b<g.length;++b)x[b]=255&g.charCodeAt(b);return x}n("setimmediate"),o.newBlob=function(g,x){o.checkSupport("blob");try{return new Blob([g],{type:x})}catch{try{var b=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return b.append(g),b.getBlob(x)}catch{throw new Error("Bug : can't construct the Blob.")}}};var f={stringifyByChunk:function(g,x,b){var y=[],_=0,j=g.length;if(j<=b)return String.fromCharCode.apply(null,g);for(;_<j;)x==="array"||x==="nodebuffer"?y.push(String.fromCharCode.apply(null,g.slice(_,Math.min(_+b,j)))):y.push(String.fromCharCode.apply(null,g.subarray(_,Math.min(_+b,j)))),_+=b;return y.join("")},stringifyByChar:function(g){for(var x="",b=0;b<g.length;b++)x+=String.fromCharCode(g[b]);return x},applyCanBeUsed:{uint8array:(function(){try{return i.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}})(),nodebuffer:(function(){try{return i.nodebuffer&&String.fromCharCode.apply(null,l.allocBuffer(1)).length===1}catch{return!1}})()}};function m(g){var x=65536,b=o.getTypeOf(g),y=!0;if(b==="uint8array"?y=f.applyCanBeUsed.uint8array:b==="nodebuffer"&&(y=f.applyCanBeUsed.nodebuffer),y)for(;1<x;)try{return f.stringifyByChunk(g,b,x)}catch{x=Math.floor(x/2)}return f.stringifyByChar(g)}function h(g,x){for(var b=0;b<g.length;b++)x[b]=g[b];return x}o.applyFromCharCode=m;var v={};v.string={string:u,array:function(g){return d(g,new Array(g.length))},arraybuffer:function(g){return v.string.uint8array(g).buffer},uint8array:function(g){return d(g,new Uint8Array(g.length))},nodebuffer:function(g){return d(g,l.allocBuffer(g.length))}},v.array={string:m,array:u,arraybuffer:function(g){return new Uint8Array(g).buffer},uint8array:function(g){return new Uint8Array(g)},nodebuffer:function(g){return l.newBufferFrom(g)}},v.arraybuffer={string:function(g){return m(new Uint8Array(g))},array:function(g){return h(new Uint8Array(g),new Array(g.byteLength))},arraybuffer:u,uint8array:function(g){return new Uint8Array(g)},nodebuffer:function(g){return l.newBufferFrom(new Uint8Array(g))}},v.uint8array={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return g.buffer},uint8array:u,nodebuffer:function(g){return l.newBufferFrom(g)}},v.nodebuffer={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return v.nodebuffer.uint8array(g).buffer},uint8array:function(g){return h(g,new Uint8Array(g.length))},nodebuffer:u},o.transformTo=function(g,x){if(x=x||"",!g)return x;o.checkSupport(g);var b=o.getTypeOf(x);return v[b][g](x)},o.resolve=function(g){for(var x=g.split("/"),b=[],y=0;y<x.length;y++){var _=x[y];_==="."||_===""&&y!==0&&y!==x.length-1||(_===".."?b.pop():b.push(_))}return b.join("/")},o.getTypeOf=function(g){return typeof g=="string"?"string":Object.prototype.toString.call(g)==="[object Array]"?"array":i.nodebuffer&&l.isBuffer(g)?"nodebuffer":i.uint8array&&g instanceof Uint8Array?"uint8array":i.arraybuffer&&g instanceof ArrayBuffer?"arraybuffer":void 0},o.checkSupport=function(g){if(!i[g.toLowerCase()])throw new Error(g+" is not supported by this platform")},o.MAX_VALUE_16BITS=65535,o.MAX_VALUE_32BITS=-1,o.pretty=function(g){var x,b,y="";for(b=0;b<(g||"").length;b++)y+="\\x"+((x=g.charCodeAt(b))<16?"0":"")+x.toString(16).toUpperCase();return y},o.delay=function(g,x,b){setImmediate(function(){g.apply(b||null,x||[])})},o.inherits=function(g,x){function b(){}b.prototype=x.prototype,g.prototype=new b},o.extend=function(){var g,x,b={};for(g=0;g<arguments.length;g++)for(x in arguments[g])Object.prototype.hasOwnProperty.call(arguments[g],x)&&b[x]===void 0&&(b[x]=arguments[g][x]);return b},o.prepareContent=function(g,x,b,y,_){return c.Promise.resolve(x).then(function(j){return i.blob&&(j instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(j))!==-1)&&typeof FileReader<"u"?new c.Promise(function(S,T){var N=new FileReader;N.onload=function(R){S(R.target.result)},N.onerror=function(R){T(R.target.error)},N.readAsArrayBuffer(j)}):j}).then(function(j){var S=o.getTypeOf(j);return S?(S==="arraybuffer"?j=o.transformTo("uint8array",j):S==="string"&&(_?j=a.decode(j):b&&y!==!0&&(j=(function(T){return d(T,i.uint8array?new Uint8Array(T.length):new Array(T.length))})(j))),j):c.Promise.reject(new Error("Can't read the data of '"+g+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(n,r,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./signature"),c=n("./zipEntry"),u=n("./support");function d(f){this.files=[],this.loadOptions=f}d.prototype={checkSignature:function(f){if(!this.reader.readAndCheckSignature(f)){this.reader.index-=4;var m=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+a.pretty(m)+", expected "+a.pretty(f)+")")}},isSignature:function(f,m){var h=this.reader.index;this.reader.setIndex(f);var v=this.reader.readString(4)===m;return this.reader.setIndex(h),v},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var f=this.reader.readData(this.zipCommentLength),m=u.uint8array?"uint8array":"array",h=a.transformTo(m,f);this.zipComment=this.loadOptions.decodeFileName(h)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var f,m,h,v=this.zip64EndOfCentralSize-44;0<v;)f=this.reader.readInt(2),m=this.reader.readInt(4),h=this.reader.readData(m),this.zip64ExtensibleData[f]={id:f,length:m,value:h}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var f,m;for(f=0;f<this.files.length;f++)m=this.files[f],this.reader.setIndex(m.localHeaderOffset),this.checkSignature(l.LOCAL_FILE_HEADER),m.readLocalPart(this.reader),m.handleUTF8(),m.processAttributes()},readCentralDir:function(){var f;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(l.CENTRAL_FILE_HEADER);)(f=new c({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(f);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var f=this.reader.lastIndexOfSignature(l.CENTRAL_DIRECTORY_END);if(f<0)throw this.isSignature(0,l.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(f);var m=f;if(this.checkSignature(l.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===a.MAX_VALUE_16BITS||this.diskWithCentralDirStart===a.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===a.MAX_VALUE_16BITS||this.centralDirRecords===a.MAX_VALUE_16BITS||this.centralDirSize===a.MAX_VALUE_32BITS||this.centralDirOffset===a.MAX_VALUE_32BITS){if(this.zip64=!0,(f=this.reader.lastIndexOfSignature(l.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(f),this.checkSignature(l.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,l.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(l.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(l.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var h=this.centralDirOffset+this.centralDirSize;this.zip64&&(h+=20,h+=12+this.zip64EndOfCentralSize);var v=m-h;if(0<v)this.isSignature(m,l.CENTRAL_FILE_HEADER)||(this.reader.zero=v);else if(v<0)throw new Error("Corrupted zip: missing "+Math.abs(v)+" bytes.")},prepareReader:function(f){this.reader=i(f)},load:function(f){this.prepareReader(f),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},r.exports=d},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(n,r,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./compressedObject"),c=n("./crc32"),u=n("./utf8"),d=n("./compressions"),f=n("./support");function m(h,v){this.options=h,this.loadOptions=v}m.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(h){var v,g;if(h.skip(22),this.fileNameLength=h.readInt(2),g=h.readInt(2),this.fileName=h.readData(this.fileNameLength),h.skip(g),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if((v=(function(x){for(var b in d)if(Object.prototype.hasOwnProperty.call(d,b)&&d[b].magic===x)return d[b];return null})(this.compressionMethod))===null)throw new Error("Corrupted zip : compression "+a.pretty(this.compressionMethod)+" unknown (inner file : "+a.transformTo("string",this.fileName)+")");this.decompressed=new l(this.compressedSize,this.uncompressedSize,this.crc32,v,h.readData(this.compressedSize))},readCentralPart:function(h){this.versionMadeBy=h.readInt(2),h.skip(2),this.bitFlag=h.readInt(2),this.compressionMethod=h.readString(2),this.date=h.readDate(),this.crc32=h.readInt(4),this.compressedSize=h.readInt(4),this.uncompressedSize=h.readInt(4);var v=h.readInt(2);if(this.extraFieldsLength=h.readInt(2),this.fileCommentLength=h.readInt(2),this.diskNumberStart=h.readInt(2),this.internalFileAttributes=h.readInt(2),this.externalFileAttributes=h.readInt(4),this.localHeaderOffset=h.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");h.skip(v),this.readExtraFields(h),this.parseZIP64ExtraField(h),this.fileComment=h.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var h=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),h==0&&(this.dosPermissions=63&this.externalFileAttributes),h==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var h=i(this.extraFields[1].value);this.uncompressedSize===a.MAX_VALUE_32BITS&&(this.uncompressedSize=h.readInt(8)),this.compressedSize===a.MAX_VALUE_32BITS&&(this.compressedSize=h.readInt(8)),this.localHeaderOffset===a.MAX_VALUE_32BITS&&(this.localHeaderOffset=h.readInt(8)),this.diskNumberStart===a.MAX_VALUE_32BITS&&(this.diskNumberStart=h.readInt(4))}},readExtraFields:function(h){var v,g,x,b=h.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});h.index+4<b;)v=h.readInt(2),g=h.readInt(2),x=h.readData(g),this.extraFields[v]={id:v,length:g,value:x};h.setIndex(b)},handleUTF8:function(){var h=f.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=u.utf8decode(this.fileName),this.fileCommentStr=u.utf8decode(this.fileComment);else{var v=this.findExtraFieldUnicodePath();if(v!==null)this.fileNameStr=v;else{var g=a.transformTo(h,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(g)}var x=this.findExtraFieldUnicodeComment();if(x!==null)this.fileCommentStr=x;else{var b=a.transformTo(h,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(b)}}},findExtraFieldUnicodePath:function(){var h=this.extraFields[28789];if(h){var v=i(h.value);return v.readInt(1)!==1||c(this.fileName)!==v.readInt(4)?null:u.utf8decode(v.readData(h.length-5))}return null},findExtraFieldUnicodeComment:function(){var h=this.extraFields[25461];if(h){var v=i(h.value);return v.readInt(1)!==1||c(this.fileComment)!==v.readInt(4)?null:u.utf8decode(v.readData(h.length-5))}return null}},r.exports=m},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(n,r,o){function i(v,g,x){this.name=v,this.dir=x.dir,this.date=x.date,this.comment=x.comment,this.unixPermissions=x.unixPermissions,this.dosPermissions=x.dosPermissions,this._data=g,this._dataBinary=x.binary,this.options={compression:x.compression,compressionOptions:x.compressionOptions}}var a=n("./stream/StreamHelper"),l=n("./stream/DataWorker"),c=n("./utf8"),u=n("./compressedObject"),d=n("./stream/GenericWorker");i.prototype={internalStream:function(v){var g=null,x="string";try{if(!v)throw new Error("No output type specified.");var b=(x=v.toLowerCase())==="string"||x==="text";x!=="binarystring"&&x!=="text"||(x="string"),g=this._decompressWorker();var y=!this._dataBinary;y&&!b&&(g=g.pipe(new c.Utf8EncodeWorker)),!y&&b&&(g=g.pipe(new c.Utf8DecodeWorker))}catch(_){(g=new d("error")).error(_)}return new a(g,x,"")},async:function(v,g){return this.internalStream(v).accumulate(g)},nodeStream:function(v,g){return this.internalStream(v||"nodebuffer").toNodejsStream(g)},_compressWorker:function(v,g){if(this._data instanceof u&&this._data.compression.magic===v.magic)return this._data.getCompressedWorker();var x=this._decompressWorker();return this._dataBinary||(x=x.pipe(new c.Utf8EncodeWorker)),u.createWorkerFrom(x,v,g)},_decompressWorker:function(){return this._data instanceof u?this._data.getContentWorker():this._data instanceof d?this._data:new l(this._data)}};for(var f=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],m=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},h=0;h<f.length;h++)i.prototype[f[h]]=m;r.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(n,r,o){(function(i){var a,l,c=i.MutationObserver||i.WebKitMutationObserver;if(c){var u=0,d=new c(v),f=i.document.createTextNode("");d.observe(f,{characterData:!0}),a=function(){f.data=u=++u%2}}else if(i.setImmediate||i.MessageChannel===void 0)a="document"in i&&"onreadystatechange"in i.document.createElement("script")?function(){var g=i.document.createElement("script");g.onreadystatechange=function(){v(),g.onreadystatechange=null,g.parentNode.removeChild(g),g=null},i.document.documentElement.appendChild(g)}:function(){setTimeout(v,0)};else{var m=new i.MessageChannel;m.port1.onmessage=v,a=function(){m.port2.postMessage(0)}}var h=[];function v(){var g,x;l=!0;for(var b=h.length;b;){for(x=h,h=[],g=-1;++g<b;)x[g]();b=h.length}l=!1}r.exports=function(g){h.push(g)!==1||l||a()}}).call(this,typeof Hr<"u"?Hr:typeof self<"u"?self:typeof window<"u"?window:{})},{}],37:[function(n,r,o){var i=n("immediate");function a(){}var l={},c=["REJECTED"],u=["FULFILLED"],d=["PENDING"];function f(b){if(typeof b!="function")throw new TypeError("resolver must be a function");this.state=d,this.queue=[],this.outcome=void 0,b!==a&&g(this,b)}function m(b,y,_){this.promise=b,typeof y=="function"&&(this.onFulfilled=y,this.callFulfilled=this.otherCallFulfilled),typeof _=="function"&&(this.onRejected=_,this.callRejected=this.otherCallRejected)}function h(b,y,_){i(function(){var j;try{j=y(_)}catch(S){return l.reject(b,S)}j===b?l.reject(b,new TypeError("Cannot resolve promise with itself")):l.resolve(b,j)})}function v(b){var y=b&&b.then;if(b&&(typeof b=="object"||typeof b=="function")&&typeof y=="function")return function(){y.apply(b,arguments)}}function g(b,y){var _=!1;function j(N){_||(_=!0,l.reject(b,N))}function S(N){_||(_=!0,l.resolve(b,N))}var T=x(function(){y(S,j)});T.status==="error"&&j(T.value)}function x(b,y){var _={};try{_.value=b(y),_.status="success"}catch(j){_.status="error",_.value=j}return _}(r.exports=f).prototype.finally=function(b){if(typeof b!="function")return this;var y=this.constructor;return this.then(function(_){return y.resolve(b()).then(function(){return _})},function(_){return y.resolve(b()).then(function(){throw _})})},f.prototype.catch=function(b){return this.then(null,b)},f.prototype.then=function(b,y){if(typeof b!="function"&&this.state===u||typeof y!="function"&&this.state===c)return this;var _=new this.constructor(a);return this.state!==d?h(_,this.state===u?b:y,this.outcome):this.queue.push(new m(_,b,y)),_},m.prototype.callFulfilled=function(b){l.resolve(this.promise,b)},m.prototype.otherCallFulfilled=function(b){h(this.promise,this.onFulfilled,b)},m.prototype.callRejected=function(b){l.reject(this.promise,b)},m.prototype.otherCallRejected=function(b){h(this.promise,this.onRejected,b)},l.resolve=function(b,y){var _=x(v,y);if(_.status==="error")return l.reject(b,_.value);var j=_.value;if(j)g(b,j);else{b.state=u,b.outcome=y;for(var S=-1,T=b.queue.length;++S<T;)b.queue[S].callFulfilled(y)}return b},l.reject=function(b,y){b.state=c,b.outcome=y;for(var _=-1,j=b.queue.length;++_<j;)b.queue[_].callRejected(y);return b},f.resolve=function(b){return b instanceof this?b:l.resolve(new this(a),b)},f.reject=function(b){var y=new this(a);return l.reject(y,b)},f.all=function(b){var y=this;if(Object.prototype.toString.call(b)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=b.length,j=!1;if(!_)return this.resolve([]);for(var S=new Array(_),T=0,N=-1,R=new this(a);++N<_;)I(b[N],N);return R;function I(O,K){y.resolve(O).then(function(A){S[K]=A,++T!==_||j||(j=!0,l.resolve(R,S))},function(A){j||(j=!0,l.reject(R,A))})}},f.race=function(b){var y=this;if(Object.prototype.toString.call(b)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=b.length,j=!1;if(!_)return this.resolve([]);for(var S=-1,T=new this(a);++S<_;)N=b[S],y.resolve(N).then(function(R){j||(j=!0,l.resolve(T,R))},function(R){j||(j=!0,l.reject(T,R))});var N;return T}},{immediate:36}],38:[function(n,r,o){var i={};(0,n("./lib/utils/common").assign)(i,n("./lib/deflate"),n("./lib/inflate"),n("./lib/zlib/constants")),r.exports=i},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(n,r,o){var i=n("./zlib/deflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/messages"),u=n("./zlib/zstream"),d=Object.prototype.toString,f=0,m=-1,h=0,v=8;function g(b){if(!(this instanceof g))return new g(b);this.options=a.assign({level:m,method:v,chunkSize:16384,windowBits:15,memLevel:8,strategy:h,to:""},b||{});var y=this.options;y.raw&&0<y.windowBits?y.windowBits=-y.windowBits:y.gzip&&0<y.windowBits&&y.windowBits<16&&(y.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var _=i.deflateInit2(this.strm,y.level,y.method,y.windowBits,y.memLevel,y.strategy);if(_!==f)throw new Error(c[_]);if(y.header&&i.deflateSetHeader(this.strm,y.header),y.dictionary){var j;if(j=typeof y.dictionary=="string"?l.string2buf(y.dictionary):d.call(y.dictionary)==="[object ArrayBuffer]"?new Uint8Array(y.dictionary):y.dictionary,(_=i.deflateSetDictionary(this.strm,j))!==f)throw new Error(c[_]);this._dict_set=!0}}function x(b,y){var _=new g(y);if(_.push(b,!0),_.err)throw _.msg||c[_.err];return _.result}g.prototype.push=function(b,y){var _,j,S=this.strm,T=this.options.chunkSize;if(this.ended)return!1;j=y===~~y?y:y===!0?4:0,typeof b=="string"?S.input=l.string2buf(b):d.call(b)==="[object ArrayBuffer]"?S.input=new Uint8Array(b):S.input=b,S.next_in=0,S.avail_in=S.input.length;do{if(S.avail_out===0&&(S.output=new a.Buf8(T),S.next_out=0,S.avail_out=T),(_=i.deflate(S,j))!==1&&_!==f)return this.onEnd(_),!(this.ended=!0);S.avail_out!==0&&(S.avail_in!==0||j!==4&&j!==2)||(this.options.to==="string"?this.onData(l.buf2binstring(a.shrinkBuf(S.output,S.next_out))):this.onData(a.shrinkBuf(S.output,S.next_out)))}while((0<S.avail_in||S.avail_out===0)&&_!==1);return j===4?(_=i.deflateEnd(this.strm),this.onEnd(_),this.ended=!0,_===f):j!==2||(this.onEnd(f),!(S.avail_out=0))},g.prototype.onData=function(b){this.chunks.push(b)},g.prototype.onEnd=function(b){b===f&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=b,this.msg=this.strm.msg},o.Deflate=g,o.deflate=x,o.deflateRaw=function(b,y){return(y=y||{}).raw=!0,x(b,y)},o.gzip=function(b,y){return(y=y||{}).gzip=!0,x(b,y)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(n,r,o){var i=n("./zlib/inflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/constants"),u=n("./zlib/messages"),d=n("./zlib/zstream"),f=n("./zlib/gzheader"),m=Object.prototype.toString;function h(g){if(!(this instanceof h))return new h(g);this.options=a.assign({chunkSize:16384,windowBits:0,to:""},g||{});var x=this.options;x.raw&&0<=x.windowBits&&x.windowBits<16&&(x.windowBits=-x.windowBits,x.windowBits===0&&(x.windowBits=-15)),!(0<=x.windowBits&&x.windowBits<16)||g&&g.windowBits||(x.windowBits+=32),15<x.windowBits&&x.windowBits<48&&(15&x.windowBits)==0&&(x.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d,this.strm.avail_out=0;var b=i.inflateInit2(this.strm,x.windowBits);if(b!==c.Z_OK)throw new Error(u[b]);this.header=new f,i.inflateGetHeader(this.strm,this.header)}function v(g,x){var b=new h(x);if(b.push(g,!0),b.err)throw b.msg||u[b.err];return b.result}h.prototype.push=function(g,x){var b,y,_,j,S,T,N=this.strm,R=this.options.chunkSize,I=this.options.dictionary,O=!1;if(this.ended)return!1;y=x===~~x?x:x===!0?c.Z_FINISH:c.Z_NO_FLUSH,typeof g=="string"?N.input=l.binstring2buf(g):m.call(g)==="[object ArrayBuffer]"?N.input=new Uint8Array(g):N.input=g,N.next_in=0,N.avail_in=N.input.length;do{if(N.avail_out===0&&(N.output=new a.Buf8(R),N.next_out=0,N.avail_out=R),(b=i.inflate(N,c.Z_NO_FLUSH))===c.Z_NEED_DICT&&I&&(T=typeof I=="string"?l.string2buf(I):m.call(I)==="[object ArrayBuffer]"?new Uint8Array(I):I,b=i.inflateSetDictionary(this.strm,T)),b===c.Z_BUF_ERROR&&O===!0&&(b=c.Z_OK,O=!1),b!==c.Z_STREAM_END&&b!==c.Z_OK)return this.onEnd(b),!(this.ended=!0);N.next_out&&(N.avail_out!==0&&b!==c.Z_STREAM_END&&(N.avail_in!==0||y!==c.Z_FINISH&&y!==c.Z_SYNC_FLUSH)||(this.options.to==="string"?(_=l.utf8border(N.output,N.next_out),j=N.next_out-_,S=l.buf2string(N.output,_),N.next_out=j,N.avail_out=R-j,j&&a.arraySet(N.output,N.output,_,j,0),this.onData(S)):this.onData(a.shrinkBuf(N.output,N.next_out)))),N.avail_in===0&&N.avail_out===0&&(O=!0)}while((0<N.avail_in||N.avail_out===0)&&b!==c.Z_STREAM_END);return b===c.Z_STREAM_END&&(y=c.Z_FINISH),y===c.Z_FINISH?(b=i.inflateEnd(this.strm),this.onEnd(b),this.ended=!0,b===c.Z_OK):y!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),!(N.avail_out=0))},h.prototype.onData=function(g){this.chunks.push(g)},h.prototype.onEnd=function(g){g===c.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=g,this.msg=this.strm.msg},o.Inflate=h,o.inflate=v,o.inflateRaw=function(g,x){return(x=x||{}).raw=!0,v(g,x)},o.ungzip=v},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(n,r,o){var i=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";o.assign=function(c){for(var u=Array.prototype.slice.call(arguments,1);u.length;){var d=u.shift();if(d){if(typeof d!="object")throw new TypeError(d+"must be non-object");for(var f in d)d.hasOwnProperty(f)&&(c[f]=d[f])}}return c},o.shrinkBuf=function(c,u){return c.length===u?c:c.subarray?c.subarray(0,u):(c.length=u,c)};var a={arraySet:function(c,u,d,f,m){if(u.subarray&&c.subarray)c.set(u.subarray(d,d+f),m);else for(var h=0;h<f;h++)c[m+h]=u[d+h]},flattenChunks:function(c){var u,d,f,m,h,v;for(u=f=0,d=c.length;u<d;u++)f+=c[u].length;for(v=new Uint8Array(f),u=m=0,d=c.length;u<d;u++)h=c[u],v.set(h,m),m+=h.length;return v}},l={arraySet:function(c,u,d,f,m){for(var h=0;h<f;h++)c[m+h]=u[d+h]},flattenChunks:function(c){return[].concat.apply([],c)}};o.setTyped=function(c){c?(o.Buf8=Uint8Array,o.Buf16=Uint16Array,o.Buf32=Int32Array,o.assign(o,a)):(o.Buf8=Array,o.Buf16=Array,o.Buf32=Array,o.assign(o,l))},o.setTyped(i)},{}],42:[function(n,r,o){var i=n("./common"),a=!0,l=!0;try{String.fromCharCode.apply(null,[0])}catch{a=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{l=!1}for(var c=new i.Buf8(256),u=0;u<256;u++)c[u]=252<=u?6:248<=u?5:240<=u?4:224<=u?3:192<=u?2:1;function d(f,m){if(m<65537&&(f.subarray&&l||!f.subarray&&a))return String.fromCharCode.apply(null,i.shrinkBuf(f,m));for(var h="",v=0;v<m;v++)h+=String.fromCharCode(f[v]);return h}c[254]=c[254]=1,o.string2buf=function(f){var m,h,v,g,x,b=f.length,y=0;for(g=0;g<b;g++)(64512&(h=f.charCodeAt(g)))==55296&&g+1<b&&(64512&(v=f.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(v-56320),g++),y+=h<128?1:h<2048?2:h<65536?3:4;for(m=new i.Buf8(y),g=x=0;x<y;g++)(64512&(h=f.charCodeAt(g)))==55296&&g+1<b&&(64512&(v=f.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(v-56320),g++),h<128?m[x++]=h:(h<2048?m[x++]=192|h>>>6:(h<65536?m[x++]=224|h>>>12:(m[x++]=240|h>>>18,m[x++]=128|h>>>12&63),m[x++]=128|h>>>6&63),m[x++]=128|63&h);return m},o.buf2binstring=function(f){return d(f,f.length)},o.binstring2buf=function(f){for(var m=new i.Buf8(f.length),h=0,v=m.length;h<v;h++)m[h]=f.charCodeAt(h);return m},o.buf2string=function(f,m){var h,v,g,x,b=m||f.length,y=new Array(2*b);for(h=v=0;h<b;)if((g=f[h++])<128)y[v++]=g;else if(4<(x=c[g]))y[v++]=65533,h+=x-1;else{for(g&=x===2?31:x===3?15:7;1<x&&h<b;)g=g<<6|63&f[h++],x--;1<x?y[v++]=65533:g<65536?y[v++]=g:(g-=65536,y[v++]=55296|g>>10&1023,y[v++]=56320|1023&g)}return d(y,v)},o.utf8border=function(f,m){var h;for((m=m||f.length)>f.length&&(m=f.length),h=m-1;0<=h&&(192&f[h])==128;)h--;return h<0||h===0?m:h+c[f[h]]>m?h:m}},{"./common":41}],43:[function(n,r,o){r.exports=function(i,a,l,c){for(var u=65535&i|0,d=i>>>16&65535|0,f=0;l!==0;){for(l-=f=2e3<l?2e3:l;d=d+(u=u+a[c++]|0)|0,--f;);u%=65521,d%=65521}return u|d<<16|0}},{}],44:[function(n,r,o){r.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(n,r,o){var i=(function(){for(var a,l=[],c=0;c<256;c++){a=c;for(var u=0;u<8;u++)a=1&a?3988292384^a>>>1:a>>>1;l[c]=a}return l})();r.exports=function(a,l,c,u){var d=i,f=u+c;a^=-1;for(var m=u;m<f;m++)a=a>>>8^d[255&(a^l[m])];return-1^a}},{}],46:[function(n,r,o){var i,a=n("../utils/common"),l=n("./trees"),c=n("./adler32"),u=n("./crc32"),d=n("./messages"),f=0,m=4,h=0,v=-2,g=-1,x=4,b=2,y=8,_=9,j=286,S=30,T=19,N=2*j+1,R=15,I=3,O=258,K=O+I+1,A=42,$=113,k=1,Z=2,V=3,U=4;function L(w,J){return w.msg=d[J],J}function W(w){return(w<<1)-(4<w?9:0)}function ne(w){for(var J=w.length;0<=--J;)w[J]=0}function B(w){var J=w.state,H=J.pending;H>w.avail_out&&(H=w.avail_out),H!==0&&(a.arraySet(w.output,J.pending_buf,J.pending_out,H,w.next_out),w.next_out+=H,J.pending_out+=H,w.total_out+=H,w.avail_out-=H,J.pending-=H,J.pending===0&&(J.pending_out=0))}function F(w,J){l._tr_flush_block(w,0<=w.block_start?w.block_start:-1,w.strstart-w.block_start,J),w.block_start=w.strstart,B(w.strm)}function ue(w,J){w.pending_buf[w.pending++]=J}function se(w,J){w.pending_buf[w.pending++]=J>>>8&255,w.pending_buf[w.pending++]=255&J}function oe(w,J){var H,z,E=w.max_chain_length,D=w.strstart,ee=w.prev_length,re=w.nice_match,q=w.strstart>w.w_size-K?w.strstart-(w.w_size-K):0,ie=w.window,P=w.w_mask,M=w.prev,X=w.strstart+O,de=ie[D+ee-1],fe=ie[D+ee];w.prev_length>=w.good_match&&(E>>=2),re>w.lookahead&&(re=w.lookahead);do if(ie[(H=J)+ee]===fe&&ie[H+ee-1]===de&&ie[H]===ie[D]&&ie[++H]===ie[D+1]){D+=2,H++;do;while(ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&ie[++D]===ie[++H]&&D<X);if(z=O-(X-D),D=X-O,ee<z){if(w.match_start=J,re<=(ee=z))break;de=ie[D+ee-1],fe=ie[D+ee]}}while((J=M[J&P])>q&&--E!=0);return ee<=w.lookahead?ee:w.lookahead}function _e(w){var J,H,z,E,D,ee,re,q,ie,P,M=w.w_size;do{if(E=w.window_size-w.lookahead-w.strstart,w.strstart>=M+(M-K)){for(a.arraySet(w.window,w.window,M,M,0),w.match_start-=M,w.strstart-=M,w.block_start-=M,J=H=w.hash_size;z=w.head[--J],w.head[J]=M<=z?z-M:0,--H;);for(J=H=M;z=w.prev[--J],w.prev[J]=M<=z?z-M:0,--H;);E+=M}if(w.strm.avail_in===0)break;if(ee=w.strm,re=w.window,q=w.strstart+w.lookahead,ie=E,P=void 0,P=ee.avail_in,ie<P&&(P=ie),H=P===0?0:(ee.avail_in-=P,a.arraySet(re,ee.input,ee.next_in,P,q),ee.state.wrap===1?ee.adler=c(ee.adler,re,P,q):ee.state.wrap===2&&(ee.adler=u(ee.adler,re,P,q)),ee.next_in+=P,ee.total_in+=P,P),w.lookahead+=H,w.lookahead+w.insert>=I)for(D=w.strstart-w.insert,w.ins_h=w.window[D],w.ins_h=(w.ins_h<<w.hash_shift^w.window[D+1])&w.hash_mask;w.insert&&(w.ins_h=(w.ins_h<<w.hash_shift^w.window[D+I-1])&w.hash_mask,w.prev[D&w.w_mask]=w.head[w.ins_h],w.head[w.ins_h]=D,D++,w.insert--,!(w.lookahead+w.insert<I)););}while(w.lookahead<K&&w.strm.avail_in!==0)}function ae(w,J){for(var H,z;;){if(w.lookahead<K){if(_e(w),w.lookahead<K&&J===f)return k;if(w.lookahead===0)break}if(H=0,w.lookahead>=I&&(w.ins_h=(w.ins_h<<w.hash_shift^w.window[w.strstart+I-1])&w.hash_mask,H=w.prev[w.strstart&w.w_mask]=w.head[w.ins_h],w.head[w.ins_h]=w.strstart),H!==0&&w.strstart-H<=w.w_size-K&&(w.match_length=oe(w,H)),w.match_length>=I)if(z=l._tr_tally(w,w.strstart-w.match_start,w.match_length-I),w.lookahead-=w.match_length,w.match_length<=w.max_lazy_match&&w.lookahead>=I){for(w.match_length--;w.strstart++,w.ins_h=(w.ins_h<<w.hash_shift^w.window[w.strstart+I-1])&w.hash_mask,H=w.prev[w.strstart&w.w_mask]=w.head[w.ins_h],w.head[w.ins_h]=w.strstart,--w.match_length!=0;);w.strstart++}else w.strstart+=w.match_length,w.match_length=0,w.ins_h=w.window[w.strstart],w.ins_h=(w.ins_h<<w.hash_shift^w.window[w.strstart+1])&w.hash_mask;else z=l._tr_tally(w,0,w.window[w.strstart]),w.lookahead--,w.strstart++;if(z&&(F(w,!1),w.strm.avail_out===0))return k}return w.insert=w.strstart<I-1?w.strstart:I-1,J===m?(F(w,!0),w.strm.avail_out===0?V:U):w.last_lit&&(F(w,!1),w.strm.avail_out===0)?k:Z}function ge(w,J){for(var H,z,E;;){if(w.lookahead<K){if(_e(w),w.lookahead<K&&J===f)return k;if(w.lookahead===0)break}if(H=0,w.lookahead>=I&&(w.ins_h=(w.ins_h<<w.hash_shift^w.window[w.strstart+I-1])&w.hash_mask,H=w.prev[w.strstart&w.w_mask]=w.head[w.ins_h],w.head[w.ins_h]=w.strstart),w.prev_length=w.match_length,w.prev_match=w.match_start,w.match_length=I-1,H!==0&&w.prev_length<w.max_lazy_match&&w.strstart-H<=w.w_size-K&&(w.match_length=oe(w,H),w.match_length<=5&&(w.strategy===1||w.match_length===I&&4096<w.strstart-w.match_start)&&(w.match_length=I-1)),w.prev_length>=I&&w.match_length<=w.prev_length){for(E=w.strstart+w.lookahead-I,z=l._tr_tally(w,w.strstart-1-w.prev_match,w.prev_length-I),w.lookahead-=w.prev_length-1,w.prev_length-=2;++w.strstart<=E&&(w.ins_h=(w.ins_h<<w.hash_shift^w.window[w.strstart+I-1])&w.hash_mask,H=w.prev[w.strstart&w.w_mask]=w.head[w.ins_h],w.head[w.ins_h]=w.strstart),--w.prev_length!=0;);if(w.match_available=0,w.match_length=I-1,w.strstart++,z&&(F(w,!1),w.strm.avail_out===0))return k}else if(w.match_available){if((z=l._tr_tally(w,0,w.window[w.strstart-1]))&&F(w,!1),w.strstart++,w.lookahead--,w.strm.avail_out===0)return k}else w.match_available=1,w.strstart++,w.lookahead--}return w.match_available&&(z=l._tr_tally(w,0,w.window[w.strstart-1]),w.match_available=0),w.insert=w.strstart<I-1?w.strstart:I-1,J===m?(F(w,!0),w.strm.avail_out===0?V:U):w.last_lit&&(F(w,!1),w.strm.avail_out===0)?k:Z}function xe(w,J,H,z,E){this.good_length=w,this.max_lazy=J,this.nice_length=H,this.max_chain=z,this.func=E}function be(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=y,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new a.Buf16(2*N),this.dyn_dtree=new a.Buf16(2*(2*S+1)),this.bl_tree=new a.Buf16(2*(2*T+1)),ne(this.dyn_ltree),ne(this.dyn_dtree),ne(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new a.Buf16(R+1),this.heap=new a.Buf16(2*j+1),ne(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new a.Buf16(2*j+1),ne(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function te(w){var J;return w&&w.state?(w.total_in=w.total_out=0,w.data_type=b,(J=w.state).pending=0,J.pending_out=0,J.wrap<0&&(J.wrap=-J.wrap),J.status=J.wrap?A:$,w.adler=J.wrap===2?0:1,J.last_flush=f,l._tr_init(J),h):L(w,v)}function le(w){var J=te(w);return J===h&&(function(H){H.window_size=2*H.w_size,ne(H.head),H.max_lazy_match=i[H.level].max_lazy,H.good_match=i[H.level].good_length,H.nice_match=i[H.level].nice_length,H.max_chain_length=i[H.level].max_chain,H.strstart=0,H.block_start=0,H.lookahead=0,H.insert=0,H.match_length=H.prev_length=I-1,H.match_available=0,H.ins_h=0})(w.state),J}function me(w,J,H,z,E,D){if(!w)return v;var ee=1;if(J===g&&(J=6),z<0?(ee=0,z=-z):15<z&&(ee=2,z-=16),E<1||_<E||H!==y||z<8||15<z||J<0||9<J||D<0||x<D)return L(w,v);z===8&&(z=9);var re=new be;return(w.state=re).strm=w,re.wrap=ee,re.gzhead=null,re.w_bits=z,re.w_size=1<<re.w_bits,re.w_mask=re.w_size-1,re.hash_bits=E+7,re.hash_size=1<<re.hash_bits,re.hash_mask=re.hash_size-1,re.hash_shift=~~((re.hash_bits+I-1)/I),re.window=new a.Buf8(2*re.w_size),re.head=new a.Buf16(re.hash_size),re.prev=new a.Buf16(re.w_size),re.lit_bufsize=1<<E+6,re.pending_buf_size=4*re.lit_bufsize,re.pending_buf=new a.Buf8(re.pending_buf_size),re.d_buf=1*re.lit_bufsize,re.l_buf=3*re.lit_bufsize,re.level=J,re.strategy=D,re.method=H,le(w)}i=[new xe(0,0,0,0,function(w,J){var H=65535;for(H>w.pending_buf_size-5&&(H=w.pending_buf_size-5);;){if(w.lookahead<=1){if(_e(w),w.lookahead===0&&J===f)return k;if(w.lookahead===0)break}w.strstart+=w.lookahead,w.lookahead=0;var z=w.block_start+H;if((w.strstart===0||w.strstart>=z)&&(w.lookahead=w.strstart-z,w.strstart=z,F(w,!1),w.strm.avail_out===0)||w.strstart-w.block_start>=w.w_size-K&&(F(w,!1),w.strm.avail_out===0))return k}return w.insert=0,J===m?(F(w,!0),w.strm.avail_out===0?V:U):(w.strstart>w.block_start&&(F(w,!1),w.strm.avail_out),k)}),new xe(4,4,8,4,ae),new xe(4,5,16,8,ae),new xe(4,6,32,32,ae),new xe(4,4,16,16,ge),new xe(8,16,32,32,ge),new xe(8,16,128,128,ge),new xe(8,32,128,256,ge),new xe(32,128,258,1024,ge),new xe(32,258,258,4096,ge)],o.deflateInit=function(w,J){return me(w,J,y,15,8,0)},o.deflateInit2=me,o.deflateReset=le,o.deflateResetKeep=te,o.deflateSetHeader=function(w,J){return w&&w.state?w.state.wrap!==2?v:(w.state.gzhead=J,h):v},o.deflate=function(w,J){var H,z,E,D;if(!w||!w.state||5<J||J<0)return w?L(w,v):v;if(z=w.state,!w.output||!w.input&&w.avail_in!==0||z.status===666&&J!==m)return L(w,w.avail_out===0?-5:v);if(z.strm=w,H=z.last_flush,z.last_flush=J,z.status===A)if(z.wrap===2)w.adler=0,ue(z,31),ue(z,139),ue(z,8),z.gzhead?(ue(z,(z.gzhead.text?1:0)+(z.gzhead.hcrc?2:0)+(z.gzhead.extra?4:0)+(z.gzhead.name?8:0)+(z.gzhead.comment?16:0)),ue(z,255&z.gzhead.time),ue(z,z.gzhead.time>>8&255),ue(z,z.gzhead.time>>16&255),ue(z,z.gzhead.time>>24&255),ue(z,z.level===9?2:2<=z.strategy||z.level<2?4:0),ue(z,255&z.gzhead.os),z.gzhead.extra&&z.gzhead.extra.length&&(ue(z,255&z.gzhead.extra.length),ue(z,z.gzhead.extra.length>>8&255)),z.gzhead.hcrc&&(w.adler=u(w.adler,z.pending_buf,z.pending,0)),z.gzindex=0,z.status=69):(ue(z,0),ue(z,0),ue(z,0),ue(z,0),ue(z,0),ue(z,z.level===9?2:2<=z.strategy||z.level<2?4:0),ue(z,3),z.status=$);else{var ee=y+(z.w_bits-8<<4)<<8;ee|=(2<=z.strategy||z.level<2?0:z.level<6?1:z.level===6?2:3)<<6,z.strstart!==0&&(ee|=32),ee+=31-ee%31,z.status=$,se(z,ee),z.strstart!==0&&(se(z,w.adler>>>16),se(z,65535&w.adler)),w.adler=1}if(z.status===69)if(z.gzhead.extra){for(E=z.pending;z.gzindex<(65535&z.gzhead.extra.length)&&(z.pending!==z.pending_buf_size||(z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),B(w),E=z.pending,z.pending!==z.pending_buf_size));)ue(z,255&z.gzhead.extra[z.gzindex]),z.gzindex++;z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),z.gzindex===z.gzhead.extra.length&&(z.gzindex=0,z.status=73)}else z.status=73;if(z.status===73)if(z.gzhead.name){E=z.pending;do{if(z.pending===z.pending_buf_size&&(z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),B(w),E=z.pending,z.pending===z.pending_buf_size)){D=1;break}D=z.gzindex<z.gzhead.name.length?255&z.gzhead.name.charCodeAt(z.gzindex++):0,ue(z,D)}while(D!==0);z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),D===0&&(z.gzindex=0,z.status=91)}else z.status=91;if(z.status===91)if(z.gzhead.comment){E=z.pending;do{if(z.pending===z.pending_buf_size&&(z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),B(w),E=z.pending,z.pending===z.pending_buf_size)){D=1;break}D=z.gzindex<z.gzhead.comment.length?255&z.gzhead.comment.charCodeAt(z.gzindex++):0,ue(z,D)}while(D!==0);z.gzhead.hcrc&&z.pending>E&&(w.adler=u(w.adler,z.pending_buf,z.pending-E,E)),D===0&&(z.status=103)}else z.status=103;if(z.status===103&&(z.gzhead.hcrc?(z.pending+2>z.pending_buf_size&&B(w),z.pending+2<=z.pending_buf_size&&(ue(z,255&w.adler),ue(z,w.adler>>8&255),w.adler=0,z.status=$)):z.status=$),z.pending!==0){if(B(w),w.avail_out===0)return z.last_flush=-1,h}else if(w.avail_in===0&&W(J)<=W(H)&&J!==m)return L(w,-5);if(z.status===666&&w.avail_in!==0)return L(w,-5);if(w.avail_in!==0||z.lookahead!==0||J!==f&&z.status!==666){var re=z.strategy===2?(function(q,ie){for(var P;;){if(q.lookahead===0&&(_e(q),q.lookahead===0)){if(ie===f)return k;break}if(q.match_length=0,P=l._tr_tally(q,0,q.window[q.strstart]),q.lookahead--,q.strstart++,P&&(F(q,!1),q.strm.avail_out===0))return k}return q.insert=0,ie===m?(F(q,!0),q.strm.avail_out===0?V:U):q.last_lit&&(F(q,!1),q.strm.avail_out===0)?k:Z})(z,J):z.strategy===3?(function(q,ie){for(var P,M,X,de,fe=q.window;;){if(q.lookahead<=O){if(_e(q),q.lookahead<=O&&ie===f)return k;if(q.lookahead===0)break}if(q.match_length=0,q.lookahead>=I&&0<q.strstart&&(M=fe[X=q.strstart-1])===fe[++X]&&M===fe[++X]&&M===fe[++X]){de=q.strstart+O;do;while(M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&M===fe[++X]&&X<de);q.match_length=O-(de-X),q.match_length>q.lookahead&&(q.match_length=q.lookahead)}if(q.match_length>=I?(P=l._tr_tally(q,1,q.match_length-I),q.lookahead-=q.match_length,q.strstart+=q.match_length,q.match_length=0):(P=l._tr_tally(q,0,q.window[q.strstart]),q.lookahead--,q.strstart++),P&&(F(q,!1),q.strm.avail_out===0))return k}return q.insert=0,ie===m?(F(q,!0),q.strm.avail_out===0?V:U):q.last_lit&&(F(q,!1),q.strm.avail_out===0)?k:Z})(z,J):i[z.level].func(z,J);if(re!==V&&re!==U||(z.status=666),re===k||re===V)return w.avail_out===0&&(z.last_flush=-1),h;if(re===Z&&(J===1?l._tr_align(z):J!==5&&(l._tr_stored_block(z,0,0,!1),J===3&&(ne(z.head),z.lookahead===0&&(z.strstart=0,z.block_start=0,z.insert=0))),B(w),w.avail_out===0))return z.last_flush=-1,h}return J!==m?h:z.wrap<=0?1:(z.wrap===2?(ue(z,255&w.adler),ue(z,w.adler>>8&255),ue(z,w.adler>>16&255),ue(z,w.adler>>24&255),ue(z,255&w.total_in),ue(z,w.total_in>>8&255),ue(z,w.total_in>>16&255),ue(z,w.total_in>>24&255)):(se(z,w.adler>>>16),se(z,65535&w.adler)),B(w),0<z.wrap&&(z.wrap=-z.wrap),z.pending!==0?h:1)},o.deflateEnd=function(w){var J;return w&&w.state?(J=w.state.status)!==A&&J!==69&&J!==73&&J!==91&&J!==103&&J!==$&&J!==666?L(w,v):(w.state=null,J===$?L(w,-3):h):v},o.deflateSetDictionary=function(w,J){var H,z,E,D,ee,re,q,ie,P=J.length;if(!w||!w.state||(D=(H=w.state).wrap)===2||D===1&&H.status!==A||H.lookahead)return v;for(D===1&&(w.adler=c(w.adler,J,P,0)),H.wrap=0,P>=H.w_size&&(D===0&&(ne(H.head),H.strstart=0,H.block_start=0,H.insert=0),ie=new a.Buf8(H.w_size),a.arraySet(ie,J,P-H.w_size,H.w_size,0),J=ie,P=H.w_size),ee=w.avail_in,re=w.next_in,q=w.input,w.avail_in=P,w.next_in=0,w.input=J,_e(H);H.lookahead>=I;){for(z=H.strstart,E=H.lookahead-(I-1);H.ins_h=(H.ins_h<<H.hash_shift^H.window[z+I-1])&H.hash_mask,H.prev[z&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=z,z++,--E;);H.strstart=z,H.lookahead=I-1,_e(H)}return H.strstart+=H.lookahead,H.block_start=H.strstart,H.insert=H.lookahead,H.lookahead=0,H.match_length=H.prev_length=I-1,H.match_available=0,w.next_in=re,w.input=q,w.avail_in=ee,H.wrap=D,h},o.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(n,r,o){r.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(n,r,o){r.exports=function(i,a){var l,c,u,d,f,m,h,v,g,x,b,y,_,j,S,T,N,R,I,O,K,A,$,k,Z;l=i.state,c=i.next_in,k=i.input,u=c+(i.avail_in-5),d=i.next_out,Z=i.output,f=d-(a-i.avail_out),m=d+(i.avail_out-257),h=l.dmax,v=l.wsize,g=l.whave,x=l.wnext,b=l.window,y=l.hold,_=l.bits,j=l.lencode,S=l.distcode,T=(1<<l.lenbits)-1,N=(1<<l.distbits)-1;e:do{_<15&&(y+=k[c++]<<_,_+=8,y+=k[c++]<<_,_+=8),R=j[y&T];t:for(;;){if(y>>>=I=R>>>24,_-=I,(I=R>>>16&255)===0)Z[d++]=65535&R;else{if(!(16&I)){if((64&I)==0){R=j[(65535&R)+(y&(1<<I)-1)];continue t}if(32&I){l.mode=12;break e}i.msg="invalid literal/length code",l.mode=30;break e}O=65535&R,(I&=15)&&(_<I&&(y+=k[c++]<<_,_+=8),O+=y&(1<<I)-1,y>>>=I,_-=I),_<15&&(y+=k[c++]<<_,_+=8,y+=k[c++]<<_,_+=8),R=S[y&N];n:for(;;){if(y>>>=I=R>>>24,_-=I,!(16&(I=R>>>16&255))){if((64&I)==0){R=S[(65535&R)+(y&(1<<I)-1)];continue n}i.msg="invalid distance code",l.mode=30;break e}if(K=65535&R,_<(I&=15)&&(y+=k[c++]<<_,(_+=8)<I&&(y+=k[c++]<<_,_+=8)),h<(K+=y&(1<<I)-1)){i.msg="invalid distance too far back",l.mode=30;break e}if(y>>>=I,_-=I,(I=d-f)<K){if(g<(I=K-I)&&l.sane){i.msg="invalid distance too far back",l.mode=30;break e}if($=b,(A=0)===x){if(A+=v-I,I<O){for(O-=I;Z[d++]=b[A++],--I;);A=d-K,$=Z}}else if(x<I){if(A+=v+x-I,(I-=x)<O){for(O-=I;Z[d++]=b[A++],--I;);if(A=0,x<O){for(O-=I=x;Z[d++]=b[A++],--I;);A=d-K,$=Z}}}else if(A+=x-I,I<O){for(O-=I;Z[d++]=b[A++],--I;);A=d-K,$=Z}for(;2<O;)Z[d++]=$[A++],Z[d++]=$[A++],Z[d++]=$[A++],O-=3;O&&(Z[d++]=$[A++],1<O&&(Z[d++]=$[A++]))}else{for(A=d-K;Z[d++]=Z[A++],Z[d++]=Z[A++],Z[d++]=Z[A++],2<(O-=3););O&&(Z[d++]=Z[A++],1<O&&(Z[d++]=Z[A++]))}break}}break}}while(c<u&&d<m);c-=O=_>>3,y&=(1<<(_-=O<<3))-1,i.next_in=c,i.next_out=d,i.avail_in=c<u?u-c+5:5-(c-u),i.avail_out=d<m?m-d+257:257-(d-m),l.hold=y,l.bits=_}},{}],49:[function(n,r,o){var i=n("../utils/common"),a=n("./adler32"),l=n("./crc32"),c=n("./inffast"),u=n("./inftrees"),d=1,f=2,m=0,h=-2,v=1,g=852,x=592;function b(A){return(A>>>24&255)+(A>>>8&65280)+((65280&A)<<8)+((255&A)<<24)}function y(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new i.Buf16(320),this.work=new i.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function _(A){var $;return A&&A.state?($=A.state,A.total_in=A.total_out=$.total=0,A.msg="",$.wrap&&(A.adler=1&$.wrap),$.mode=v,$.last=0,$.havedict=0,$.dmax=32768,$.head=null,$.hold=0,$.bits=0,$.lencode=$.lendyn=new i.Buf32(g),$.distcode=$.distdyn=new i.Buf32(x),$.sane=1,$.back=-1,m):h}function j(A){var $;return A&&A.state?(($=A.state).wsize=0,$.whave=0,$.wnext=0,_(A)):h}function S(A,$){var k,Z;return A&&A.state?(Z=A.state,$<0?(k=0,$=-$):(k=1+($>>4),$<48&&($&=15)),$&&($<8||15<$)?h:(Z.window!==null&&Z.wbits!==$&&(Z.window=null),Z.wrap=k,Z.wbits=$,j(A))):h}function T(A,$){var k,Z;return A?(Z=new y,(A.state=Z).window=null,(k=S(A,$))!==m&&(A.state=null),k):h}var N,R,I=!0;function O(A){if(I){var $;for(N=new i.Buf32(512),R=new i.Buf32(32),$=0;$<144;)A.lens[$++]=8;for(;$<256;)A.lens[$++]=9;for(;$<280;)A.lens[$++]=7;for(;$<288;)A.lens[$++]=8;for(u(d,A.lens,0,288,N,0,A.work,{bits:9}),$=0;$<32;)A.lens[$++]=5;u(f,A.lens,0,32,R,0,A.work,{bits:5}),I=!1}A.lencode=N,A.lenbits=9,A.distcode=R,A.distbits=5}function K(A,$,k,Z){var V,U=A.state;return U.window===null&&(U.wsize=1<<U.wbits,U.wnext=0,U.whave=0,U.window=new i.Buf8(U.wsize)),Z>=U.wsize?(i.arraySet(U.window,$,k-U.wsize,U.wsize,0),U.wnext=0,U.whave=U.wsize):(Z<(V=U.wsize-U.wnext)&&(V=Z),i.arraySet(U.window,$,k-Z,V,U.wnext),(Z-=V)?(i.arraySet(U.window,$,k-Z,Z,0),U.wnext=Z,U.whave=U.wsize):(U.wnext+=V,U.wnext===U.wsize&&(U.wnext=0),U.whave<U.wsize&&(U.whave+=V))),0}o.inflateReset=j,o.inflateReset2=S,o.inflateResetKeep=_,o.inflateInit=function(A){return T(A,15)},o.inflateInit2=T,o.inflate=function(A,$){var k,Z,V,U,L,W,ne,B,F,ue,se,oe,_e,ae,ge,xe,be,te,le,me,w,J,H,z,E=0,D=new i.Buf8(4),ee=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!A||!A.state||!A.output||!A.input&&A.avail_in!==0)return h;(k=A.state).mode===12&&(k.mode=13),L=A.next_out,V=A.output,ne=A.avail_out,U=A.next_in,Z=A.input,W=A.avail_in,B=k.hold,F=k.bits,ue=W,se=ne,J=m;e:for(;;)switch(k.mode){case v:if(k.wrap===0){k.mode=13;break}for(;F<16;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(2&k.wrap&&B===35615){D[k.check=0]=255&B,D[1]=B>>>8&255,k.check=l(k.check,D,2,0),F=B=0,k.mode=2;break}if(k.flags=0,k.head&&(k.head.done=!1),!(1&k.wrap)||(((255&B)<<8)+(B>>8))%31){A.msg="incorrect header check",k.mode=30;break}if((15&B)!=8){A.msg="unknown compression method",k.mode=30;break}if(F-=4,w=8+(15&(B>>>=4)),k.wbits===0)k.wbits=w;else if(w>k.wbits){A.msg="invalid window size",k.mode=30;break}k.dmax=1<<w,A.adler=k.check=1,k.mode=512&B?10:12,F=B=0;break;case 2:for(;F<16;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(k.flags=B,(255&k.flags)!=8){A.msg="unknown compression method",k.mode=30;break}if(57344&k.flags){A.msg="unknown header flags set",k.mode=30;break}k.head&&(k.head.text=B>>8&1),512&k.flags&&(D[0]=255&B,D[1]=B>>>8&255,k.check=l(k.check,D,2,0)),F=B=0,k.mode=3;case 3:for(;F<32;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.head&&(k.head.time=B),512&k.flags&&(D[0]=255&B,D[1]=B>>>8&255,D[2]=B>>>16&255,D[3]=B>>>24&255,k.check=l(k.check,D,4,0)),F=B=0,k.mode=4;case 4:for(;F<16;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.head&&(k.head.xflags=255&B,k.head.os=B>>8),512&k.flags&&(D[0]=255&B,D[1]=B>>>8&255,k.check=l(k.check,D,2,0)),F=B=0,k.mode=5;case 5:if(1024&k.flags){for(;F<16;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.length=B,k.head&&(k.head.extra_len=B),512&k.flags&&(D[0]=255&B,D[1]=B>>>8&255,k.check=l(k.check,D,2,0)),F=B=0}else k.head&&(k.head.extra=null);k.mode=6;case 6:if(1024&k.flags&&(W<(oe=k.length)&&(oe=W),oe&&(k.head&&(w=k.head.extra_len-k.length,k.head.extra||(k.head.extra=new Array(k.head.extra_len)),i.arraySet(k.head.extra,Z,U,oe,w)),512&k.flags&&(k.check=l(k.check,Z,oe,U)),W-=oe,U+=oe,k.length-=oe),k.length))break e;k.length=0,k.mode=7;case 7:if(2048&k.flags){if(W===0)break e;for(oe=0;w=Z[U+oe++],k.head&&w&&k.length<65536&&(k.head.name+=String.fromCharCode(w)),w&&oe<W;);if(512&k.flags&&(k.check=l(k.check,Z,oe,U)),W-=oe,U+=oe,w)break e}else k.head&&(k.head.name=null);k.length=0,k.mode=8;case 8:if(4096&k.flags){if(W===0)break e;for(oe=0;w=Z[U+oe++],k.head&&w&&k.length<65536&&(k.head.comment+=String.fromCharCode(w)),w&&oe<W;);if(512&k.flags&&(k.check=l(k.check,Z,oe,U)),W-=oe,U+=oe,w)break e}else k.head&&(k.head.comment=null);k.mode=9;case 9:if(512&k.flags){for(;F<16;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(B!==(65535&k.check)){A.msg="header crc mismatch",k.mode=30;break}F=B=0}k.head&&(k.head.hcrc=k.flags>>9&1,k.head.done=!0),A.adler=k.check=0,k.mode=12;break;case 10:for(;F<32;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}A.adler=k.check=b(B),F=B=0,k.mode=11;case 11:if(k.havedict===0)return A.next_out=L,A.avail_out=ne,A.next_in=U,A.avail_in=W,k.hold=B,k.bits=F,2;A.adler=k.check=1,k.mode=12;case 12:if($===5||$===6)break e;case 13:if(k.last){B>>>=7&F,F-=7&F,k.mode=27;break}for(;F<3;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}switch(k.last=1&B,F-=1,3&(B>>>=1)){case 0:k.mode=14;break;case 1:if(O(k),k.mode=20,$!==6)break;B>>>=2,F-=2;break e;case 2:k.mode=17;break;case 3:A.msg="invalid block type",k.mode=30}B>>>=2,F-=2;break;case 14:for(B>>>=7&F,F-=7&F;F<32;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if((65535&B)!=(B>>>16^65535)){A.msg="invalid stored block lengths",k.mode=30;break}if(k.length=65535&B,F=B=0,k.mode=15,$===6)break e;case 15:k.mode=16;case 16:if(oe=k.length){if(W<oe&&(oe=W),ne<oe&&(oe=ne),oe===0)break e;i.arraySet(V,Z,U,oe,L),W-=oe,U+=oe,ne-=oe,L+=oe,k.length-=oe;break}k.mode=12;break;case 17:for(;F<14;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(k.nlen=257+(31&B),B>>>=5,F-=5,k.ndist=1+(31&B),B>>>=5,F-=5,k.ncode=4+(15&B),B>>>=4,F-=4,286<k.nlen||30<k.ndist){A.msg="too many length or distance symbols",k.mode=30;break}k.have=0,k.mode=18;case 18:for(;k.have<k.ncode;){for(;F<3;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.lens[ee[k.have++]]=7&B,B>>>=3,F-=3}for(;k.have<19;)k.lens[ee[k.have++]]=0;if(k.lencode=k.lendyn,k.lenbits=7,H={bits:k.lenbits},J=u(0,k.lens,0,19,k.lencode,0,k.work,H),k.lenbits=H.bits,J){A.msg="invalid code lengths set",k.mode=30;break}k.have=0,k.mode=19;case 19:for(;k.have<k.nlen+k.ndist;){for(;xe=(E=k.lencode[B&(1<<k.lenbits)-1])>>>16&255,be=65535&E,!((ge=E>>>24)<=F);){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(be<16)B>>>=ge,F-=ge,k.lens[k.have++]=be;else{if(be===16){for(z=ge+2;F<z;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(B>>>=ge,F-=ge,k.have===0){A.msg="invalid bit length repeat",k.mode=30;break}w=k.lens[k.have-1],oe=3+(3&B),B>>>=2,F-=2}else if(be===17){for(z=ge+3;F<z;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}F-=ge,w=0,oe=3+(7&(B>>>=ge)),B>>>=3,F-=3}else{for(z=ge+7;F<z;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}F-=ge,w=0,oe=11+(127&(B>>>=ge)),B>>>=7,F-=7}if(k.have+oe>k.nlen+k.ndist){A.msg="invalid bit length repeat",k.mode=30;break}for(;oe--;)k.lens[k.have++]=w}}if(k.mode===30)break;if(k.lens[256]===0){A.msg="invalid code -- missing end-of-block",k.mode=30;break}if(k.lenbits=9,H={bits:k.lenbits},J=u(d,k.lens,0,k.nlen,k.lencode,0,k.work,H),k.lenbits=H.bits,J){A.msg="invalid literal/lengths set",k.mode=30;break}if(k.distbits=6,k.distcode=k.distdyn,H={bits:k.distbits},J=u(f,k.lens,k.nlen,k.ndist,k.distcode,0,k.work,H),k.distbits=H.bits,J){A.msg="invalid distances set",k.mode=30;break}if(k.mode=20,$===6)break e;case 20:k.mode=21;case 21:if(6<=W&&258<=ne){A.next_out=L,A.avail_out=ne,A.next_in=U,A.avail_in=W,k.hold=B,k.bits=F,c(A,se),L=A.next_out,V=A.output,ne=A.avail_out,U=A.next_in,Z=A.input,W=A.avail_in,B=k.hold,F=k.bits,k.mode===12&&(k.back=-1);break}for(k.back=0;xe=(E=k.lencode[B&(1<<k.lenbits)-1])>>>16&255,be=65535&E,!((ge=E>>>24)<=F);){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(xe&&(240&xe)==0){for(te=ge,le=xe,me=be;xe=(E=k.lencode[me+((B&(1<<te+le)-1)>>te)])>>>16&255,be=65535&E,!(te+(ge=E>>>24)<=F);){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}B>>>=te,F-=te,k.back+=te}if(B>>>=ge,F-=ge,k.back+=ge,k.length=be,xe===0){k.mode=26;break}if(32&xe){k.back=-1,k.mode=12;break}if(64&xe){A.msg="invalid literal/length code",k.mode=30;break}k.extra=15&xe,k.mode=22;case 22:if(k.extra){for(z=k.extra;F<z;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.length+=B&(1<<k.extra)-1,B>>>=k.extra,F-=k.extra,k.back+=k.extra}k.was=k.length,k.mode=23;case 23:for(;xe=(E=k.distcode[B&(1<<k.distbits)-1])>>>16&255,be=65535&E,!((ge=E>>>24)<=F);){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if((240&xe)==0){for(te=ge,le=xe,me=be;xe=(E=k.distcode[me+((B&(1<<te+le)-1)>>te)])>>>16&255,be=65535&E,!(te+(ge=E>>>24)<=F);){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}B>>>=te,F-=te,k.back+=te}if(B>>>=ge,F-=ge,k.back+=ge,64&xe){A.msg="invalid distance code",k.mode=30;break}k.offset=be,k.extra=15&xe,k.mode=24;case 24:if(k.extra){for(z=k.extra;F<z;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}k.offset+=B&(1<<k.extra)-1,B>>>=k.extra,F-=k.extra,k.back+=k.extra}if(k.offset>k.dmax){A.msg="invalid distance too far back",k.mode=30;break}k.mode=25;case 25:if(ne===0)break e;if(oe=se-ne,k.offset>oe){if((oe=k.offset-oe)>k.whave&&k.sane){A.msg="invalid distance too far back",k.mode=30;break}_e=oe>k.wnext?(oe-=k.wnext,k.wsize-oe):k.wnext-oe,oe>k.length&&(oe=k.length),ae=k.window}else ae=V,_e=L-k.offset,oe=k.length;for(ne<oe&&(oe=ne),ne-=oe,k.length-=oe;V[L++]=ae[_e++],--oe;);k.length===0&&(k.mode=21);break;case 26:if(ne===0)break e;V[L++]=k.length,ne--,k.mode=21;break;case 27:if(k.wrap){for(;F<32;){if(W===0)break e;W--,B|=Z[U++]<<F,F+=8}if(se-=ne,A.total_out+=se,k.total+=se,se&&(A.adler=k.check=k.flags?l(k.check,V,se,L-se):a(k.check,V,se,L-se)),se=ne,(k.flags?B:b(B))!==k.check){A.msg="incorrect data check",k.mode=30;break}F=B=0}k.mode=28;case 28:if(k.wrap&&k.flags){for(;F<32;){if(W===0)break e;W--,B+=Z[U++]<<F,F+=8}if(B!==(4294967295&k.total)){A.msg="incorrect length check",k.mode=30;break}F=B=0}k.mode=29;case 29:J=1;break e;case 30:J=-3;break e;case 31:return-4;default:return h}return A.next_out=L,A.avail_out=ne,A.next_in=U,A.avail_in=W,k.hold=B,k.bits=F,(k.wsize||se!==A.avail_out&&k.mode<30&&(k.mode<27||$!==4))&&K(A,A.output,A.next_out,se-A.avail_out)?(k.mode=31,-4):(ue-=A.avail_in,se-=A.avail_out,A.total_in+=ue,A.total_out+=se,k.total+=se,k.wrap&&se&&(A.adler=k.check=k.flags?l(k.check,V,se,A.next_out-se):a(k.check,V,se,A.next_out-se)),A.data_type=k.bits+(k.last?64:0)+(k.mode===12?128:0)+(k.mode===20||k.mode===15?256:0),(ue==0&&se===0||$===4)&&J===m&&(J=-5),J)},o.inflateEnd=function(A){if(!A||!A.state)return h;var $=A.state;return $.window&&($.window=null),A.state=null,m},o.inflateGetHeader=function(A,$){var k;return A&&A.state?(2&(k=A.state).wrap)==0?h:((k.head=$).done=!1,m):h},o.inflateSetDictionary=function(A,$){var k,Z=$.length;return A&&A.state?(k=A.state).wrap!==0&&k.mode!==11?h:k.mode===11&&a(1,$,Z,0)!==k.check?-3:K(A,$,Z,Z)?(k.mode=31,-4):(k.havedict=1,m):h},o.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(n,r,o){var i=n("../utils/common"),a=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],l=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],c=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],u=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];r.exports=function(d,f,m,h,v,g,x,b){var y,_,j,S,T,N,R,I,O,K=b.bits,A=0,$=0,k=0,Z=0,V=0,U=0,L=0,W=0,ne=0,B=0,F=null,ue=0,se=new i.Buf16(16),oe=new i.Buf16(16),_e=null,ae=0;for(A=0;A<=15;A++)se[A]=0;for($=0;$<h;$++)se[f[m+$]]++;for(V=K,Z=15;1<=Z&&se[Z]===0;Z--);if(Z<V&&(V=Z),Z===0)return v[g++]=20971520,v[g++]=20971520,b.bits=1,0;for(k=1;k<Z&&se[k]===0;k++);for(V<k&&(V=k),A=W=1;A<=15;A++)if(W<<=1,(W-=se[A])<0)return-1;if(0<W&&(d===0||Z!==1))return-1;for(oe[1]=0,A=1;A<15;A++)oe[A+1]=oe[A]+se[A];for($=0;$<h;$++)f[m+$]!==0&&(x[oe[f[m+$]]++]=$);if(N=d===0?(F=_e=x,19):d===1?(F=a,ue-=257,_e=l,ae-=257,256):(F=c,_e=u,-1),A=k,T=g,L=$=B=0,j=-1,S=(ne=1<<(U=V))-1,d===1&&852<ne||d===2&&592<ne)return 1;for(;;){for(R=A-L,O=x[$]<N?(I=0,x[$]):x[$]>N?(I=_e[ae+x[$]],F[ue+x[$]]):(I=96,0),y=1<<A-L,k=_=1<<U;v[T+(B>>L)+(_-=y)]=R<<24|I<<16|O|0,_!==0;);for(y=1<<A-1;B&y;)y>>=1;if(y!==0?(B&=y-1,B+=y):B=0,$++,--se[A]==0){if(A===Z)break;A=f[m+x[$]]}if(V<A&&(B&S)!==j){for(L===0&&(L=V),T+=k,W=1<<(U=A-L);U+L<Z&&!((W-=se[U+L])<=0);)U++,W<<=1;if(ne+=1<<U,d===1&&852<ne||d===2&&592<ne)return 1;v[j=B&S]=V<<24|U<<16|T-g|0}}return B!==0&&(v[T+B]=A-L<<24|64<<16|0),b.bits=V,0}},{"../utils/common":41}],51:[function(n,r,o){r.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(n,r,o){var i=n("../utils/common"),a=0,l=1;function c(E){for(var D=E.length;0<=--D;)E[D]=0}var u=0,d=29,f=256,m=f+1+d,h=30,v=19,g=2*m+1,x=15,b=16,y=7,_=256,j=16,S=17,T=18,N=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],R=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],I=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],O=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],K=new Array(2*(m+2));c(K);var A=new Array(2*h);c(A);var $=new Array(512);c($);var k=new Array(256);c(k);var Z=new Array(d);c(Z);var V,U,L,W=new Array(h);function ne(E,D,ee,re,q){this.static_tree=E,this.extra_bits=D,this.extra_base=ee,this.elems=re,this.max_length=q,this.has_stree=E&&E.length}function B(E,D){this.dyn_tree=E,this.max_code=0,this.stat_desc=D}function F(E){return E<256?$[E]:$[256+(E>>>7)]}function ue(E,D){E.pending_buf[E.pending++]=255&D,E.pending_buf[E.pending++]=D>>>8&255}function se(E,D,ee){E.bi_valid>b-ee?(E.bi_buf|=D<<E.bi_valid&65535,ue(E,E.bi_buf),E.bi_buf=D>>b-E.bi_valid,E.bi_valid+=ee-b):(E.bi_buf|=D<<E.bi_valid&65535,E.bi_valid+=ee)}function oe(E,D,ee){se(E,ee[2*D],ee[2*D+1])}function _e(E,D){for(var ee=0;ee|=1&E,E>>>=1,ee<<=1,0<--D;);return ee>>>1}function ae(E,D,ee){var re,q,ie=new Array(x+1),P=0;for(re=1;re<=x;re++)ie[re]=P=P+ee[re-1]<<1;for(q=0;q<=D;q++){var M=E[2*q+1];M!==0&&(E[2*q]=_e(ie[M]++,M))}}function ge(E){var D;for(D=0;D<m;D++)E.dyn_ltree[2*D]=0;for(D=0;D<h;D++)E.dyn_dtree[2*D]=0;for(D=0;D<v;D++)E.bl_tree[2*D]=0;E.dyn_ltree[2*_]=1,E.opt_len=E.static_len=0,E.last_lit=E.matches=0}function xe(E){8<E.bi_valid?ue(E,E.bi_buf):0<E.bi_valid&&(E.pending_buf[E.pending++]=E.bi_buf),E.bi_buf=0,E.bi_valid=0}function be(E,D,ee,re){var q=2*D,ie=2*ee;return E[q]<E[ie]||E[q]===E[ie]&&re[D]<=re[ee]}function te(E,D,ee){for(var re=E.heap[ee],q=ee<<1;q<=E.heap_len&&(q<E.heap_len&&be(D,E.heap[q+1],E.heap[q],E.depth)&&q++,!be(D,re,E.heap[q],E.depth));)E.heap[ee]=E.heap[q],ee=q,q<<=1;E.heap[ee]=re}function le(E,D,ee){var re,q,ie,P,M=0;if(E.last_lit!==0)for(;re=E.pending_buf[E.d_buf+2*M]<<8|E.pending_buf[E.d_buf+2*M+1],q=E.pending_buf[E.l_buf+M],M++,re===0?oe(E,q,D):(oe(E,(ie=k[q])+f+1,D),(P=N[ie])!==0&&se(E,q-=Z[ie],P),oe(E,ie=F(--re),ee),(P=R[ie])!==0&&se(E,re-=W[ie],P)),M<E.last_lit;);oe(E,_,D)}function me(E,D){var ee,re,q,ie=D.dyn_tree,P=D.stat_desc.static_tree,M=D.stat_desc.has_stree,X=D.stat_desc.elems,de=-1;for(E.heap_len=0,E.heap_max=g,ee=0;ee<X;ee++)ie[2*ee]!==0?(E.heap[++E.heap_len]=de=ee,E.depth[ee]=0):ie[2*ee+1]=0;for(;E.heap_len<2;)ie[2*(q=E.heap[++E.heap_len]=de<2?++de:0)]=1,E.depth[q]=0,E.opt_len--,M&&(E.static_len-=P[2*q+1]);for(D.max_code=de,ee=E.heap_len>>1;1<=ee;ee--)te(E,ie,ee);for(q=X;ee=E.heap[1],E.heap[1]=E.heap[E.heap_len--],te(E,ie,1),re=E.heap[1],E.heap[--E.heap_max]=ee,E.heap[--E.heap_max]=re,ie[2*q]=ie[2*ee]+ie[2*re],E.depth[q]=(E.depth[ee]>=E.depth[re]?E.depth[ee]:E.depth[re])+1,ie[2*ee+1]=ie[2*re+1]=q,E.heap[1]=q++,te(E,ie,1),2<=E.heap_len;);E.heap[--E.heap_max]=E.heap[1],(function(fe,ze){var Se,Ne,Je,Be,et,fn,Lt=ze.dyn_tree,Cl=ze.max_code,Pm=ze.stat_desc.static_tree,Mm=ze.stat_desc.has_stree,Lm=ze.stat_desc.extra_bits,Nl=ze.stat_desc.extra_base,ir=ze.stat_desc.max_length,Wr=0;for(Be=0;Be<=x;Be++)fe.bl_count[Be]=0;for(Lt[2*fe.heap[fe.heap_max]+1]=0,Se=fe.heap_max+1;Se<g;Se++)ir<(Be=Lt[2*Lt[2*(Ne=fe.heap[Se])+1]+1]+1)&&(Be=ir,Wr++),Lt[2*Ne+1]=Be,Cl<Ne||(fe.bl_count[Be]++,et=0,Nl<=Ne&&(et=Lm[Ne-Nl]),fn=Lt[2*Ne],fe.opt_len+=fn*(Be+et),Mm&&(fe.static_len+=fn*(Pm[2*Ne+1]+et)));if(Wr!==0){do{for(Be=ir-1;fe.bl_count[Be]===0;)Be--;fe.bl_count[Be]--,fe.bl_count[Be+1]+=2,fe.bl_count[ir]--,Wr-=2}while(0<Wr);for(Be=ir;Be!==0;Be--)for(Ne=fe.bl_count[Be];Ne!==0;)Cl<(Je=fe.heap[--Se])||(Lt[2*Je+1]!==Be&&(fe.opt_len+=(Be-Lt[2*Je+1])*Lt[2*Je],Lt[2*Je+1]=Be),Ne--)}})(E,D),ae(ie,de,E.bl_count)}function w(E,D,ee){var re,q,ie=-1,P=D[1],M=0,X=7,de=4;for(P===0&&(X=138,de=3),D[2*(ee+1)+1]=65535,re=0;re<=ee;re++)q=P,P=D[2*(re+1)+1],++M<X&&q===P||(M<de?E.bl_tree[2*q]+=M:q!==0?(q!==ie&&E.bl_tree[2*q]++,E.bl_tree[2*j]++):M<=10?E.bl_tree[2*S]++:E.bl_tree[2*T]++,ie=q,de=(M=0)===P?(X=138,3):q===P?(X=6,3):(X=7,4))}function J(E,D,ee){var re,q,ie=-1,P=D[1],M=0,X=7,de=4;for(P===0&&(X=138,de=3),re=0;re<=ee;re++)if(q=P,P=D[2*(re+1)+1],!(++M<X&&q===P)){if(M<de)for(;oe(E,q,E.bl_tree),--M!=0;);else q!==0?(q!==ie&&(oe(E,q,E.bl_tree),M--),oe(E,j,E.bl_tree),se(E,M-3,2)):M<=10?(oe(E,S,E.bl_tree),se(E,M-3,3)):(oe(E,T,E.bl_tree),se(E,M-11,7));ie=q,de=(M=0)===P?(X=138,3):q===P?(X=6,3):(X=7,4)}}c(W);var H=!1;function z(E,D,ee,re){se(E,(u<<1)+(re?1:0),3),(function(q,ie,P,M){xe(q),ue(q,P),ue(q,~P),i.arraySet(q.pending_buf,q.window,ie,P,q.pending),q.pending+=P})(E,D,ee)}o._tr_init=function(E){H||((function(){var D,ee,re,q,ie,P=new Array(x+1);for(q=re=0;q<d-1;q++)for(Z[q]=re,D=0;D<1<<N[q];D++)k[re++]=q;for(k[re-1]=q,q=ie=0;q<16;q++)for(W[q]=ie,D=0;D<1<<R[q];D++)$[ie++]=q;for(ie>>=7;q<h;q++)for(W[q]=ie<<7,D=0;D<1<<R[q]-7;D++)$[256+ie++]=q;for(ee=0;ee<=x;ee++)P[ee]=0;for(D=0;D<=143;)K[2*D+1]=8,D++,P[8]++;for(;D<=255;)K[2*D+1]=9,D++,P[9]++;for(;D<=279;)K[2*D+1]=7,D++,P[7]++;for(;D<=287;)K[2*D+1]=8,D++,P[8]++;for(ae(K,m+1,P),D=0;D<h;D++)A[2*D+1]=5,A[2*D]=_e(D,5);V=new ne(K,N,f+1,m,x),U=new ne(A,R,0,h,x),L=new ne(new Array(0),I,0,v,y)})(),H=!0),E.l_desc=new B(E.dyn_ltree,V),E.d_desc=new B(E.dyn_dtree,U),E.bl_desc=new B(E.bl_tree,L),E.bi_buf=0,E.bi_valid=0,ge(E)},o._tr_stored_block=z,o._tr_flush_block=function(E,D,ee,re){var q,ie,P=0;0<E.level?(E.strm.data_type===2&&(E.strm.data_type=(function(M){var X,de=4093624447;for(X=0;X<=31;X++,de>>>=1)if(1&de&&M.dyn_ltree[2*X]!==0)return a;if(M.dyn_ltree[18]!==0||M.dyn_ltree[20]!==0||M.dyn_ltree[26]!==0)return l;for(X=32;X<f;X++)if(M.dyn_ltree[2*X]!==0)return l;return a})(E)),me(E,E.l_desc),me(E,E.d_desc),P=(function(M){var X;for(w(M,M.dyn_ltree,M.l_desc.max_code),w(M,M.dyn_dtree,M.d_desc.max_code),me(M,M.bl_desc),X=v-1;3<=X&&M.bl_tree[2*O[X]+1]===0;X--);return M.opt_len+=3*(X+1)+5+5+4,X})(E),q=E.opt_len+3+7>>>3,(ie=E.static_len+3+7>>>3)<=q&&(q=ie)):q=ie=ee+5,ee+4<=q&&D!==-1?z(E,D,ee,re):E.strategy===4||ie===q?(se(E,2+(re?1:0),3),le(E,K,A)):(se(E,4+(re?1:0),3),(function(M,X,de,fe){var ze;for(se(M,X-257,5),se(M,de-1,5),se(M,fe-4,4),ze=0;ze<fe;ze++)se(M,M.bl_tree[2*O[ze]+1],3);J(M,M.dyn_ltree,X-1),J(M,M.dyn_dtree,de-1)})(E,E.l_desc.max_code+1,E.d_desc.max_code+1,P+1),le(E,E.dyn_ltree,E.dyn_dtree)),ge(E),re&&xe(E)},o._tr_tally=function(E,D,ee){return E.pending_buf[E.d_buf+2*E.last_lit]=D>>>8&255,E.pending_buf[E.d_buf+2*E.last_lit+1]=255&D,E.pending_buf[E.l_buf+E.last_lit]=255&ee,E.last_lit++,D===0?E.dyn_ltree[2*ee]++:(E.matches++,D--,E.dyn_ltree[2*(k[ee]+f+1)]++,E.dyn_dtree[2*F(D)]++),E.last_lit===E.lit_bufsize-1},o._tr_align=function(E){se(E,2,3),oe(E,_,K),(function(D){D.bi_valid===16?(ue(D,D.bi_buf),D.bi_buf=0,D.bi_valid=0):8<=D.bi_valid&&(D.pending_buf[D.pending++]=255&D.bi_buf,D.bi_buf>>=8,D.bi_valid-=8)})(E)}},{"../utils/common":41}],53:[function(n,r,o){r.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(n,r,o){(function(i){(function(a,l){if(!a.setImmediate){var c,u,d,f,m=1,h={},v=!1,g=a.document,x=Object.getPrototypeOf&&Object.getPrototypeOf(a);x=x&&x.setTimeout?x:a,c={}.toString.call(a.process)==="[object process]"?function(j){process.nextTick(function(){y(j)})}:(function(){if(a.postMessage&&!a.importScripts){var j=!0,S=a.onmessage;return a.onmessage=function(){j=!1},a.postMessage("","*"),a.onmessage=S,j}})()?(f="setImmediate$"+Math.random()+"$",a.addEventListener?a.addEventListener("message",_,!1):a.attachEvent("onmessage",_),function(j){a.postMessage(f+j,"*")}):a.MessageChannel?((d=new MessageChannel).port1.onmessage=function(j){y(j.data)},function(j){d.port2.postMessage(j)}):g&&"onreadystatechange"in g.createElement("script")?(u=g.documentElement,function(j){var S=g.createElement("script");S.onreadystatechange=function(){y(j),S.onreadystatechange=null,u.removeChild(S),S=null},u.appendChild(S)}):function(j){setTimeout(y,0,j)},x.setImmediate=function(j){typeof j!="function"&&(j=new Function(""+j));for(var S=new Array(arguments.length-1),T=0;T<S.length;T++)S[T]=arguments[T+1];var N={callback:j,args:S};return h[m]=N,c(m),m++},x.clearImmediate=b}function b(j){delete h[j]}function y(j){if(v)setTimeout(y,0,j);else{var S=h[j];if(S){v=!0;try{(function(T){var N=T.callback,R=T.args;switch(R.length){case 0:N();break;case 1:N(R[0]);break;case 2:N(R[0],R[1]);break;case 3:N(R[0],R[1],R[2]);break;default:N.apply(l,R)}})(S)}finally{b(j),v=!1}}}}function _(j){j.source===a&&typeof j.data=="string"&&j.data.indexOf(f)===0&&y(+j.data.slice(f.length))}})(typeof self>"u"?i===void 0?this:i:self)}).call(this,typeof Hr<"u"?Hr:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(Uo)),Uo.exports}var J2=G2();const Y2=Dm(J2),X2="2.1.16",Ri={version:X2},Gd="[REDACTED]",Q2=/(^|[-_])(api[-_]?key|authorization|cookie|token|secret|password|access[-_]?token|refresh[-_]?token)([-_]|$)/i,ew=[/Bearer\s+[A-Za-z0-9._~+/=-]{12,}/gi,/\bsk-[A-Za-z0-9_-]{12,}\b/g,/\bsk-ant-[A-Za-z0-9_-]{12,}\b/g,/\bghp_[A-Za-z0-9_]{12,}\b/g,/\bglpat-[A-Za-z0-9_-]{12,}\b/g],ec=200,tw=25e6,Jd=50;function nw(e){return e<1024?`${e} chars`:e<1024*1024?`${Math.ceil(e/1024)} KB`:`${Math.ceil(e/(1024*1024))} MB`}function rw(e){let t=0;for(const n of e)t+=n.rawRequestBody?.length??0,t+=n.responseText?.length??0;return t}function sw(e){if(e.length>ec)return`Export is limited to ${ec} logs at once. Narrow the filter and try again.`;const t=rw(e);return t>tw?`Export is too large (${nw(t)} of text). Narrow the filter and try again.`:null}async function ow(e){try{const t=await fetch(`/api/logs/${e}/chunks`);if(!t.ok)return null;const n=await t.json();return JSON.stringify(n,null,2)}catch{return null}}function iw(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ii(e){if(Array.isArray(e))return e.map(n=>Ii(n));if(!iw(e))return e;const t={};for(const[n,r]of Object.entries(e))t[n]=Q2.test(n)?Gd:Ii(r);return t}function aw(e){const t=n=>{let r=n;for(const o of ew)r=r.replace(o,Gd);return r};try{const n=JSON.parse(e);return t(JSON.stringify(Ii(n),null,2))}catch{return t(e)}}function Wo(e,t){return t==="redacted"?aw(e):e}function lw(e,t){return{...e,rawRequestBody:null,responseText:null,rawHeaders:t==="raw"?e.rawHeaders:void 0,headers:t==="raw"?e.headers:void 0,streamingChunks:void 0,bodyContentMode:"compact"}}function cw(e,t,n,r=new Date().toISOString()){return{version:Ri.version,exportedAt:r,mode:t,redacted:t==="redacted",logCount:e.length,logIds:e.map(o=>o.id),streamingChunkExportLimit:Jd,streamingChunkLogIds:n.map(o=>o.id)}}async function uw(e,t="redacted"){const n=sw(e);if(n!==null)return{ok:!1,message:n};const r=new Y2,o=t==="redacted"?"redacted":"raw",i=e.filter(u=>u.streaming).slice(0,Jd);r.file("manifest.json",JSON.stringify(cw(e,t,i),null,2)),r.file("logs.json",JSON.stringify(e.map(u=>lw(u,t)),null,2));for(const u of e)u.rawRequestBody!==null&&r.file(`#${u.id}.Request.json`,Wo(u.rawRequestBody,t)),u.responseText!==null&&r.file(`#${u.id}.Response.json`,Wo(u.responseText,t));for(const u of i){const d=await ow(u.id);d!==null&&r.file(`#${u.id}.SSE.Response.json`,Wo(d,t))}const a=await r.generateAsync({type:"blob"}),l=URL.createObjectURL(a),c=document.createElement("a");return c.href=l,c.download=`agent-inspector-export-${o}-${new Date().toISOString().slice(0,10)}.zip`,document.body.appendChild(c),c.click(),document.body.removeChild(c),URL.revokeObjectURL(l),{ok:!0}}function dw(e,t){if(e!==null){e.removeAllRanges();for(const n of t)e.addRange(n)}}function fw(e){if(e===null)return[];const t=[];for(let n=0;n<e.rangeCount;n++)t.push(e.getRangeAt(n));return t}function pw(e){if(typeof document>"u")return!1;const t=document.activeElement,n=document.getSelection(),r=fw(n),o=document.createElement("textarea");o.value=e,o.setAttribute("readonly",""),o.style.position="fixed",o.style.top="0",o.style.left="-9999px",o.style.opacity="0",document.body.appendChild(o),o.focus(),o.select(),o.setSelectionRange(0,e.length);let i=!1;try{i=document.execCommand("copy")}catch{}finally{document.body.removeChild(o),dw(n,r),typeof HTMLElement<"u"&&t instanceof HTMLElement&&t.focus({preventScroll:!0})}return i}async function Zt(e){const t=globalThis.navigator?.clipboard;if(t!==void 0)try{return await t.writeText(e),!0}catch{}return pw(e)}function zi(e,t){switch(t){case"full":return e;case"time":return new Date(e).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}}function Da(e,t,n){return`${zi(e,n)} - ${zi(t,n)}`}function Yd(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=Yd(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Xd(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=Yd(e))&&(r&&(r+=" "),r+=t);return r}const hw=(e,t)=>{const n=new Array(e.length+t.length);for(let r=0;r<e.length;r++)n[r]=e[r];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},mw=(e,t)=>({classGroupId:e,validator:t}),Qd=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Os="-",tc=[],gw="arbitrary..",xw=e=>{const t=vw(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return bw(a);const l=a.split(Os),c=l[0]===""&&l.length>1?1:0;return ef(l,c,t)},getConflictingClassGroupIds:(a,l)=>{if(l){const c=r[a],u=n[a];return c?u?hw(u,c):c:u||tc}return n[a]||tc}}},ef=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const o=e[t],i=n.nextPart.get(o);if(i){const u=ef(e,t+1,i);if(u)return u}const a=n.validators;if(a===null)return;const l=t===0?e.join(Os):e.slice(t).join(Os),c=a.length;for(let u=0;u<c;u++){const d=a[u];if(d.validator(l))return d.classGroupId}},bw=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),r=t.slice(0,n);return r?gw+r:void 0})(),vw=e=>{const{theme:t,classGroups:n}=e;return yw(n,t)},yw=(e,t)=>{const n=Qd();for(const r in e){const o=e[r];$a(o,n,r,t)}return n},$a=(e,t,n,r)=>{const o=e.length;for(let i=0;i<o;i++){const a=e[i];ww(a,t,n,r)}},ww=(e,t,n,r)=>{if(typeof e=="string"){kw(e,t,n);return}if(typeof e=="function"){_w(e,t,n,r);return}jw(e,t,n,r)},kw=(e,t,n)=>{const r=e===""?t:tf(t,e);r.classGroupId=n},_w=(e,t,n,r)=>{if(Sw(e)){$a(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(mw(n,e))},jw=(e,t,n,r)=>{const o=Object.entries(e),i=o.length;for(let a=0;a<i;a++){const[l,c]=o[a];$a(c,tf(t,l),n,r)}},tf=(e,t)=>{let n=e;const r=t.split(Os),o=r.length;for(let i=0;i<o;i++){const a=r[i];let l=n.nextPart.get(a);l||(l=Qd(),n.nextPart.set(a,l)),n=l}return n},Sw=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Cw=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null);const o=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(i){let a=n[i];if(a!==void 0)return a;if((a=r[i])!==void 0)return o(i,a),a},set(i,a){i in n?n[i]=a:o(i,a)}}},Oi="!",nc=":",Nw=[],rc=(e,t,n,r,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:o}),Tw=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=o=>{const i=[];let a=0,l=0,c=0,u;const d=o.length;for(let g=0;g<d;g++){const x=o[g];if(a===0&&l===0){if(x===nc){i.push(o.slice(c,g)),c=g+1;continue}if(x==="/"){u=g;continue}}x==="["?a++:x==="]"?a--:x==="("?l++:x===")"&&l--}const f=i.length===0?o:o.slice(c);let m=f,h=!1;f.endsWith(Oi)?(m=f.slice(0,-1),h=!0):f.startsWith(Oi)&&(m=f.slice(1),h=!0);const v=u&&u>c?u-c:void 0;return rc(i,h,m,v)};if(t){const o=t+nc,i=r;r=a=>a.startsWith(o)?i(a.slice(o.length)):rc(Nw,!1,a,void 0,!0)}if(n){const o=r;r=i=>n({className:i,parseClassName:o})}return r},Ew=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,r)=>{t.set(n,1e6+r)}),n=>{const r=[];let o=[];for(let i=0;i<n.length;i++){const a=n[i],l=a[0]==="[",c=t.has(a);l||c?(o.length>0&&(o.sort(),r.push(...o),o=[]),r.push(a)):o.push(a)}return o.length>0&&(o.sort(),r.push(...o)),r}},Aw=e=>({cache:Cw(e.cacheSize),parseClassName:Tw(e),sortModifiers:Ew(e),...xw(e)}),Rw=/\s+/,Iw=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:o,sortModifiers:i}=t,a=[],l=e.trim().split(Rw);let c="";for(let u=l.length-1;u>=0;u-=1){const d=l[u],{isExternal:f,modifiers:m,hasImportantModifier:h,baseClassName:v,maybePostfixModifierPosition:g}=n(d);if(f){c=d+(c.length>0?" "+c:c);continue}let x=!!g,b=r(x?v.substring(0,g):v);if(!b){if(!x){c=d+(c.length>0?" "+c:c);continue}if(b=r(v),!b){c=d+(c.length>0?" "+c:c);continue}x=!1}const y=m.length===0?"":m.length===1?m[0]:i(m).join(":"),_=h?y+Oi:y,j=_+b;if(a.indexOf(j)>-1)continue;a.push(j);const S=o(b,x);for(let T=0;T<S.length;++T){const N=S[T];a.push(_+N)}c=d+(c.length>0?" "+c:c)}return c},zw=(...e)=>{let t=0,n,r,o="";for(;t<e.length;)(n=e[t++])&&(r=nf(n))&&(o&&(o+=" "),o+=r);return o},nf=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=nf(e[r]))&&(n&&(n+=" "),n+=t);return n},Ow=(e,...t)=>{let n,r,o,i;const a=c=>{const u=t.reduce((d,f)=>f(d),e());return n=Aw(u),r=n.cache.get,o=n.cache.set,i=l,l(c)},l=c=>{const u=r(c);if(u)return u;const d=Iw(c,n);return o(c,d),d};return i=a,(...c)=>i(zw(...c))},Pw=[],Ge=e=>{const t=n=>n[e]||Pw;return t.isThemeGetter=!0,t},rf=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,sf=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Mw=/^\d+\/\d+$/,Lw=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Dw=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,$w=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Fw=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Bw=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,En=e=>Mw.test(e),Re=e=>!!e&&!Number.isNaN(Number(e)),qt=e=>!!e&&Number.isInteger(Number(e)),Ho=e=>e.endsWith("%")&&Re(e.slice(0,-1)),Dt=e=>Lw.test(e),Uw=()=>!0,Ww=e=>Dw.test(e)&&!$w.test(e),of=()=>!1,Hw=e=>Fw.test(e),Zw=e=>Bw.test(e),Vw=e=>!ve(e)&&!ye(e),qw=e=>tr(e,cf,of),ve=e=>rf.test(e),pn=e=>tr(e,uf,Ww),Zo=e=>tr(e,Xw,Re),sc=e=>tr(e,af,of),Kw=e=>tr(e,lf,Zw),Jr=e=>tr(e,df,Hw),ye=e=>sf.test(e),ar=e=>nr(e,uf),Gw=e=>nr(e,Qw),oc=e=>nr(e,af),Jw=e=>nr(e,cf),Yw=e=>nr(e,lf),Yr=e=>nr(e,df,!0),tr=(e,t,n)=>{const r=rf.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},nr=(e,t,n=!1)=>{const r=sf.exec(e);return r?r[1]?t(r[1]):n:!1},af=e=>e==="position"||e==="percentage",lf=e=>e==="image"||e==="url",cf=e=>e==="length"||e==="size"||e==="bg-size",uf=e=>e==="length",Xw=e=>e==="number",Qw=e=>e==="family-name",df=e=>e==="shadow",ek=()=>{const e=Ge("color"),t=Ge("font"),n=Ge("text"),r=Ge("font-weight"),o=Ge("tracking"),i=Ge("leading"),a=Ge("breakpoint"),l=Ge("container"),c=Ge("spacing"),u=Ge("radius"),d=Ge("shadow"),f=Ge("inset-shadow"),m=Ge("text-shadow"),h=Ge("drop-shadow"),v=Ge("blur"),g=Ge("perspective"),x=Ge("aspect"),b=Ge("ease"),y=Ge("animate"),_=()=>["auto","avoid","all","avoid-page","page","left","right","column"],j=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],S=()=>[...j(),ye,ve],T=()=>["auto","hidden","clip","visible","scroll"],N=()=>["auto","contain","none"],R=()=>[ye,ve,c],I=()=>[En,"full","auto",...R()],O=()=>[qt,"none","subgrid",ye,ve],K=()=>["auto",{span:["full",qt,ye,ve]},qt,ye,ve],A=()=>[qt,"auto",ye,ve],$=()=>["auto","min","max","fr",ye,ve],k=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],Z=()=>["start","end","center","stretch","center-safe","end-safe"],V=()=>["auto",...R()],U=()=>[En,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...R()],L=()=>[e,ye,ve],W=()=>[...j(),oc,sc,{position:[ye,ve]}],ne=()=>["no-repeat",{repeat:["","x","y","space","round"]}],B=()=>["auto","cover","contain",Jw,qw,{size:[ye,ve]}],F=()=>[Ho,ar,pn],ue=()=>["","none","full",u,ye,ve],se=()=>["",Re,ar,pn],oe=()=>["solid","dashed","dotted","double"],_e=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ae=()=>[Re,Ho,oc,sc],ge=()=>["","none",v,ye,ve],xe=()=>["none",Re,ye,ve],be=()=>["none",Re,ye,ve],te=()=>[Re,ye,ve],le=()=>[En,"full",...R()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Dt],breakpoint:[Dt],color:[Uw],container:[Dt],"drop-shadow":[Dt],ease:["in","out","in-out"],font:[Vw],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Dt],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Dt],shadow:[Dt],spacing:["px",Re],text:[Dt],"text-shadow":[Dt],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",En,ve,ye,x]}],container:["container"],columns:[{columns:[Re,ve,ye,l]}],"break-after":[{"break-after":_()}],"break-before":[{"break-before":_()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:S()}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:N()}],"overscroll-x":[{"overscroll-x":N()}],"overscroll-y":[{"overscroll-y":N()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{start:I()}],end:[{end:I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[qt,"auto",ye,ve]}],basis:[{basis:[En,"full","auto",l,...R()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Re,En,"auto","initial","none",ve]}],grow:[{grow:["",Re,ye,ve]}],shrink:[{shrink:["",Re,ye,ve]}],order:[{order:[qt,"first","last","none",ye,ve]}],"grid-cols":[{"grid-cols":O()}],"col-start-end":[{col:K()}],"col-start":[{"col-start":A()}],"col-end":[{"col-end":A()}],"grid-rows":[{"grid-rows":O()}],"row-start-end":[{row:K()}],"row-start":[{"row-start":A()}],"row-end":[{"row-end":A()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":$()}],"auto-rows":[{"auto-rows":$()}],gap:[{gap:R()}],"gap-x":[{"gap-x":R()}],"gap-y":[{"gap-y":R()}],"justify-content":[{justify:[...k(),"normal"]}],"justify-items":[{"justify-items":[...Z(),"normal"]}],"justify-self":[{"justify-self":["auto",...Z()]}],"align-content":[{content:["normal",...k()]}],"align-items":[{items:[...Z(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...Z(),{baseline:["","last"]}]}],"place-content":[{"place-content":k()}],"place-items":[{"place-items":[...Z(),"baseline"]}],"place-self":[{"place-self":["auto",...Z()]}],p:[{p:R()}],px:[{px:R()}],py:[{py:R()}],ps:[{ps:R()}],pe:[{pe:R()}],pt:[{pt:R()}],pr:[{pr:R()}],pb:[{pb:R()}],pl:[{pl:R()}],m:[{m:V()}],mx:[{mx:V()}],my:[{my:V()}],ms:[{ms:V()}],me:[{me:V()}],mt:[{mt:V()}],mr:[{mr:V()}],mb:[{mb:V()}],ml:[{ml:V()}],"space-x":[{"space-x":R()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":R()}],"space-y-reverse":["space-y-reverse"],size:[{size:U()}],w:[{w:[l,"screen",...U()]}],"min-w":[{"min-w":[l,"screen","none",...U()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...U()]}],h:[{h:["screen","lh",...U()]}],"min-h":[{"min-h":["screen","lh","none",...U()]}],"max-h":[{"max-h":["screen","lh",...U()]}],"font-size":[{text:["base",n,ar,pn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,ye,Zo]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Ho,ve]}],"font-family":[{font:[Gw,ve,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,ye,ve]}],"line-clamp":[{"line-clamp":[Re,"none",ye,Zo]}],leading:[{leading:[i,...R()]}],"list-image":[{"list-image":["none",ye,ve]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ye,ve]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:L()}],"text-color":[{text:L()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...oe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Re,"from-font","auto",ye,pn]}],"text-decoration-color":[{decoration:L()}],"underline-offset":[{"underline-offset":[Re,"auto",ye,ve]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:R()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ye,ve]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ye,ve]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:W()}],"bg-repeat":[{bg:ne()}],"bg-size":[{bg:B()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},qt,ye,ve],radial:["",ye,ve],conic:[qt,ye,ve]},Yw,Kw]}],"bg-color":[{bg:L()}],"gradient-from-pos":[{from:F()}],"gradient-via-pos":[{via:F()}],"gradient-to-pos":[{to:F()}],"gradient-from":[{from:L()}],"gradient-via":[{via:L()}],"gradient-to":[{to:L()}],rounded:[{rounded:ue()}],"rounded-s":[{"rounded-s":ue()}],"rounded-e":[{"rounded-e":ue()}],"rounded-t":[{"rounded-t":ue()}],"rounded-r":[{"rounded-r":ue()}],"rounded-b":[{"rounded-b":ue()}],"rounded-l":[{"rounded-l":ue()}],"rounded-ss":[{"rounded-ss":ue()}],"rounded-se":[{"rounded-se":ue()}],"rounded-ee":[{"rounded-ee":ue()}],"rounded-es":[{"rounded-es":ue()}],"rounded-tl":[{"rounded-tl":ue()}],"rounded-tr":[{"rounded-tr":ue()}],"rounded-br":[{"rounded-br":ue()}],"rounded-bl":[{"rounded-bl":ue()}],"border-w":[{border:se()}],"border-w-x":[{"border-x":se()}],"border-w-y":[{"border-y":se()}],"border-w-s":[{"border-s":se()}],"border-w-e":[{"border-e":se()}],"border-w-t":[{"border-t":se()}],"border-w-r":[{"border-r":se()}],"border-w-b":[{"border-b":se()}],"border-w-l":[{"border-l":se()}],"divide-x":[{"divide-x":se()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":se()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...oe(),"hidden","none"]}],"divide-style":[{divide:[...oe(),"hidden","none"]}],"border-color":[{border:L()}],"border-color-x":[{"border-x":L()}],"border-color-y":[{"border-y":L()}],"border-color-s":[{"border-s":L()}],"border-color-e":[{"border-e":L()}],"border-color-t":[{"border-t":L()}],"border-color-r":[{"border-r":L()}],"border-color-b":[{"border-b":L()}],"border-color-l":[{"border-l":L()}],"divide-color":[{divide:L()}],"outline-style":[{outline:[...oe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Re,ye,ve]}],"outline-w":[{outline:["",Re,ar,pn]}],"outline-color":[{outline:L()}],shadow:[{shadow:["","none",d,Yr,Jr]}],"shadow-color":[{shadow:L()}],"inset-shadow":[{"inset-shadow":["none",f,Yr,Jr]}],"inset-shadow-color":[{"inset-shadow":L()}],"ring-w":[{ring:se()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:L()}],"ring-offset-w":[{"ring-offset":[Re,pn]}],"ring-offset-color":[{"ring-offset":L()}],"inset-ring-w":[{"inset-ring":se()}],"inset-ring-color":[{"inset-ring":L()}],"text-shadow":[{"text-shadow":["none",m,Yr,Jr]}],"text-shadow-color":[{"text-shadow":L()}],opacity:[{opacity:[Re,ye,ve]}],"mix-blend":[{"mix-blend":[..._e(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":_e()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Re]}],"mask-image-linear-from-pos":[{"mask-linear-from":ae()}],"mask-image-linear-to-pos":[{"mask-linear-to":ae()}],"mask-image-linear-from-color":[{"mask-linear-from":L()}],"mask-image-linear-to-color":[{"mask-linear-to":L()}],"mask-image-t-from-pos":[{"mask-t-from":ae()}],"mask-image-t-to-pos":[{"mask-t-to":ae()}],"mask-image-t-from-color":[{"mask-t-from":L()}],"mask-image-t-to-color":[{"mask-t-to":L()}],"mask-image-r-from-pos":[{"mask-r-from":ae()}],"mask-image-r-to-pos":[{"mask-r-to":ae()}],"mask-image-r-from-color":[{"mask-r-from":L()}],"mask-image-r-to-color":[{"mask-r-to":L()}],"mask-image-b-from-pos":[{"mask-b-from":ae()}],"mask-image-b-to-pos":[{"mask-b-to":ae()}],"mask-image-b-from-color":[{"mask-b-from":L()}],"mask-image-b-to-color":[{"mask-b-to":L()}],"mask-image-l-from-pos":[{"mask-l-from":ae()}],"mask-image-l-to-pos":[{"mask-l-to":ae()}],"mask-image-l-from-color":[{"mask-l-from":L()}],"mask-image-l-to-color":[{"mask-l-to":L()}],"mask-image-x-from-pos":[{"mask-x-from":ae()}],"mask-image-x-to-pos":[{"mask-x-to":ae()}],"mask-image-x-from-color":[{"mask-x-from":L()}],"mask-image-x-to-color":[{"mask-x-to":L()}],"mask-image-y-from-pos":[{"mask-y-from":ae()}],"mask-image-y-to-pos":[{"mask-y-to":ae()}],"mask-image-y-from-color":[{"mask-y-from":L()}],"mask-image-y-to-color":[{"mask-y-to":L()}],"mask-image-radial":[{"mask-radial":[ye,ve]}],"mask-image-radial-from-pos":[{"mask-radial-from":ae()}],"mask-image-radial-to-pos":[{"mask-radial-to":ae()}],"mask-image-radial-from-color":[{"mask-radial-from":L()}],"mask-image-radial-to-color":[{"mask-radial-to":L()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":j()}],"mask-image-conic-pos":[{"mask-conic":[Re]}],"mask-image-conic-from-pos":[{"mask-conic-from":ae()}],"mask-image-conic-to-pos":[{"mask-conic-to":ae()}],"mask-image-conic-from-color":[{"mask-conic-from":L()}],"mask-image-conic-to-color":[{"mask-conic-to":L()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:W()}],"mask-repeat":[{mask:ne()}],"mask-size":[{mask:B()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ye,ve]}],filter:[{filter:["","none",ye,ve]}],blur:[{blur:ge()}],brightness:[{brightness:[Re,ye,ve]}],contrast:[{contrast:[Re,ye,ve]}],"drop-shadow":[{"drop-shadow":["","none",h,Yr,Jr]}],"drop-shadow-color":[{"drop-shadow":L()}],grayscale:[{grayscale:["",Re,ye,ve]}],"hue-rotate":[{"hue-rotate":[Re,ye,ve]}],invert:[{invert:["",Re,ye,ve]}],saturate:[{saturate:[Re,ye,ve]}],sepia:[{sepia:["",Re,ye,ve]}],"backdrop-filter":[{"backdrop-filter":["","none",ye,ve]}],"backdrop-blur":[{"backdrop-blur":ge()}],"backdrop-brightness":[{"backdrop-brightness":[Re,ye,ve]}],"backdrop-contrast":[{"backdrop-contrast":[Re,ye,ve]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Re,ye,ve]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Re,ye,ve]}],"backdrop-invert":[{"backdrop-invert":["",Re,ye,ve]}],"backdrop-opacity":[{"backdrop-opacity":[Re,ye,ve]}],"backdrop-saturate":[{"backdrop-saturate":[Re,ye,ve]}],"backdrop-sepia":[{"backdrop-sepia":["",Re,ye,ve]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":R()}],"border-spacing-x":[{"border-spacing-x":R()}],"border-spacing-y":[{"border-spacing-y":R()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ye,ve]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Re,"initial",ye,ve]}],ease:[{ease:["linear","initial",b,ye,ve]}],delay:[{delay:[Re,ye,ve]}],animate:[{animate:["none",y,ye,ve]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,ye,ve]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:xe()}],"rotate-x":[{"rotate-x":xe()}],"rotate-y":[{"rotate-y":xe()}],"rotate-z":[{"rotate-z":xe()}],scale:[{scale:be()}],"scale-x":[{"scale-x":be()}],"scale-y":[{"scale-y":be()}],"scale-z":[{"scale-z":be()}],"scale-3d":["scale-3d"],skew:[{skew:te()}],"skew-x":[{"skew-x":te()}],"skew-y":[{"skew-y":te()}],transform:[{transform:[ye,ve,"","none","gpu","cpu"]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:le()}],"translate-x":[{"translate-x":le()}],"translate-y":[{"translate-y":le()}],"translate-z":[{"translate-z":le()}],"translate-none":["translate-none"],accent:[{accent:L()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:L()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ye,ve]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":R()}],"scroll-mx":[{"scroll-mx":R()}],"scroll-my":[{"scroll-my":R()}],"scroll-ms":[{"scroll-ms":R()}],"scroll-me":[{"scroll-me":R()}],"scroll-mt":[{"scroll-mt":R()}],"scroll-mr":[{"scroll-mr":R()}],"scroll-mb":[{"scroll-mb":R()}],"scroll-ml":[{"scroll-ml":R()}],"scroll-p":[{"scroll-p":R()}],"scroll-px":[{"scroll-px":R()}],"scroll-py":[{"scroll-py":R()}],"scroll-ps":[{"scroll-ps":R()}],"scroll-pe":[{"scroll-pe":R()}],"scroll-pt":[{"scroll-pt":R()}],"scroll-pr":[{"scroll-pr":R()}],"scroll-pb":[{"scroll-pb":R()}],"scroll-pl":[{"scroll-pl":R()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ye,ve]}],fill:[{fill:["none",...L()]}],"stroke-w":[{stroke:[Re,ar,pn,Zo]}],stroke:[{stroke:["none",...L()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},tk=Ow(ek);function ce(...e){return tk(Xd(e))}function $e(e){return e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":(e/1e3).toFixed(1).replace(/\.0$/,"")+"K"}function ff(e){return e>=1024*1024?(e/(1024*1024)).toFixed(1).replace(/\.0$/,"")+"M":(e/1024).toFixed(1).replace(/\.0$/,"")+"K"}function ic(e,t,n){const r=e*10;return!Number.isSafeInteger(r)||r%t!==0?null:(r/t/10).toFixed(1).replace(/\.0$/,"")+n}function nk(e){if(!Number.isSafeInteger(e)||e<=0)return e.toString();if(e>=1024*1024){const n=ic(e,1048576,"M");if(n!==null)return n}const t=ic(e,1024,"K");return t!==null?t:e.toString()}function rk(e){if(e===void 0||e==="")return 1;switch(e.toLowerCase()){case"k":return 1024;case"m":return 1024*1024;default:return null}}function Ps(e){const t=e.trim().replaceAll(",","");if(t==="")return null;const n=/^(\d+(?:\.\d+)?)\s*([kKmM])?$/.exec(t);if(n===null)return null;const r=n[1];if(r===void 0)return null;const o=Number(r),i=n[2],a=rk(i);if(!Number.isFinite(o)||o<=0||a===null||(i===void 0||i==="")&&!Number.isInteger(o))return null;const l=Math.round(o*a);return!Number.isSafeInteger(l)||l<=0?null:l}function sk(e){return e===null?"pending":e>=200&&e<300?"success":e>=400&&e<500?"client_error":e>=500?"server_error":"pending"}const ok=Y({model:C().min(1),contextWindow:G().int().positive().optional(),outputLimit:G().int().positive().optional(),source:Ee(["manual","registry"]).optional(),sourceUrl:C().optional(),updatedAt:C().optional()}),Ms=Y({id:C(),name:C(),apiKey:C(),model:C().optional(),models:pe(C()).min(1),format:Ee(["anthropic","openai"]).optional(),baseUrl:C().optional(),anthropicBaseUrl:C().optional(),openaiBaseUrl:C().optional(),openaiResponsesBaseUrl:C().optional(),authHeader:Ee(["bearer","x-api-key"]).optional().default("bearer"),apiDocsUrl:C().optional(),modelMetadataUrl:C().optional(),modelMetadata:pe(ok).optional(),source:Ee(["company","personal"]).optional(),createdAt:C(),updatedAt:C()});async function ik(e){return nn(e,Ms.array(),void 0,t=>`Failed to fetch ${e}: ${t.status}`)}function pf(){const e=jn("/api/providers?includeSecrets=1",ik,{revalidateOnFocus:!1,revalidateIfStale:!1});return{providers:e.data??[],isLoading:e.isLoading,isError:e.error,mutate:e.mutate}}function je(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e?.(o),n===!1||!o.defaultPrevented)return t?.(o)}}function ac(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function hf(...e){return t=>{let n=!1;const r=e.map(o=>{const i=ac(o,t);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let o=0;o<r.length;o++){const i=r[o];typeof i=="function"?i():ac(e[o],null)}}}}function Oe(...e){return p.useCallback(hf(...e),e)}function ak(e,t){const n=p.createContext(t),r=i=>{const{children:a,...l}=i,c=p.useMemo(()=>l,Object.values(l));return s.jsx(n.Provider,{value:c,children:a})};r.displayName=e+"Provider";function o(i){const a=p.useContext(n);if(a)return a;if(t!==void 0)return t;throw new Error(`\`${i}\` must be used within \`${e}\``)}return[r,o]}function Vt(e,t=[]){let n=[];function r(i,a){const l=p.createContext(a),c=n.length;n=[...n,a];const u=f=>{const{scope:m,children:h,...v}=f,g=m?.[e]?.[c]||l,x=p.useMemo(()=>v,Object.values(v));return s.jsx(g.Provider,{value:x,children:h})};u.displayName=i+"Provider";function d(f,m){const h=m?.[e]?.[c]||l,v=p.useContext(h);if(v)return v;if(a!==void 0)return a;throw new Error(`\`${f}\` must be used within \`${i}\``)}return[u,d]}const o=()=>{const i=n.map(a=>p.createContext(a));return function(l){const c=l?.[e]||i;return p.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return o.scopeName=e,[r,lk(o,...t)]}function lk(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=r.reduce((l,{useScope:c,scopeName:u})=>{const f=c(i)[`__scope${u}`];return{...l,...f}},{});return p.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}var Xe=globalThis?.document?p.useLayoutEffect:()=>{},ck=Fu[" useId ".trim().toString()]||(()=>{}),uk=0;function Rt(e){const[t,n]=p.useState(ck());return Xe(()=>{n(r=>r??String(uk++))},[e]),e||(t?`radix-${t}`:"")}var dk=Fu[" useInsertionEffect ".trim().toString()]||Xe;function vn({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[o,i,a]=fk({defaultProp:t,onChange:n}),l=e!==void 0,c=l?e:o;{const d=p.useRef(e!==void 0);p.useEffect(()=>{const f=d.current;f!==l&&console.warn(`${r} is changing from ${f?"controlled":"uncontrolled"} to ${l?"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.`),d.current=l},[l,r])}const u=p.useCallback(d=>{if(l){const f=pk(d)?d(e):d;f!==e&&a.current?.(f)}else i(d)},[l,e,i,a]);return[c,u]}function fk({defaultProp:e,onChange:t}){const[n,r]=p.useState(e),o=p.useRef(n),i=p.useRef(t);return dk(()=>{i.current=t},[t]),p.useEffect(()=>{o.current!==n&&(i.current?.(n),o.current=n)},[n,o]),[n,r,i]}function pk(e){return typeof e=="function"}function Gn(e){const t=mk(e),n=p.forwardRef((r,o)=>{const{children:i,...a}=r,l=p.Children.toArray(i),c=l.find(xk);if(c){const u=c.props.children,d=l.map(f=>f===c?p.Children.count(u)>1?p.Children.only(null):p.isValidElement(u)?u.props.children:null:f);return s.jsx(t,{...a,ref:o,children:p.isValidElement(u)?p.cloneElement(u,void 0,d):null})}return s.jsx(t,{...a,ref:o,children:i})});return n.displayName=`${e}.Slot`,n}var hk=Gn("Slot");function mk(e){const t=p.forwardRef((n,r)=>{const{children:o,...i}=n;if(p.isValidElement(o)){const a=vk(o),l=bk(i,o.props);return o.type!==p.Fragment&&(l.ref=r?hf(r,a):a),p.cloneElement(o,l)}return p.Children.count(o)>1?p.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var mf=Symbol("radix.slottable");function gk(e){const t=({children:n})=>s.jsx(s.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=mf,t}function xk(e){return p.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===mf}function bk(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...l)=>{const c=i(...l);return o(...l),c}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function vk(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var yk=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ae=yk.reduce((e,t)=>{const n=Gn(`Primitive.${t}`),r=p.forwardRef((o,i)=>{const{asChild:a,...l}=o,c=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),s.jsx(c,{...l,ref:i})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function wk(e,t){e&&Rr.flushSync(()=>e.dispatchEvent(t))}function st(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>(...n)=>t.current?.(...n),[])}function kk(e,t=globalThis?.document){const n=st(e);p.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var _k="DismissableLayer",Pi="dismissableLayer.update",jk="dismissableLayer.pointerDownOutside",Sk="dismissableLayer.focusOutside",lc,gf=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),go=p.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:a,onDismiss:l,...c}=e,u=p.useContext(gf),[d,f]=p.useState(null),m=d?.ownerDocument??globalThis?.document,[,h]=p.useState({}),v=Oe(t,N=>f(N)),g=Array.from(u.layers),[x]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),b=g.indexOf(x),y=d?g.indexOf(d):-1,_=u.layersWithOutsidePointerEventsDisabled.size>0,j=y>=b,S=Tk(N=>{const R=N.target,I=[...u.branches].some(O=>O.contains(R));!j||I||(o?.(N),a?.(N),N.defaultPrevented||l?.())},m),T=Ek(N=>{const R=N.target;[...u.branches].some(O=>O.contains(R))||(i?.(N),a?.(N),N.defaultPrevented||l?.())},m);return kk(N=>{y===u.layers.size-1&&(r?.(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},m),p.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(lc=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),cc(),()=>{n&&u.layersWithOutsidePointerEventsDisabled.size===1&&(m.body.style.pointerEvents=lc)}},[d,m,n,u]),p.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),cc())},[d,u]),p.useEffect(()=>{const N=()=>h({});return document.addEventListener(Pi,N),()=>document.removeEventListener(Pi,N)},[]),s.jsx(Ae.div,{...c,ref:v,style:{pointerEvents:_?j?"auto":"none":void 0,...e.style},onFocusCapture:je(e.onFocusCapture,T.onFocusCapture),onBlurCapture:je(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:je(e.onPointerDownCapture,S.onPointerDownCapture)})});go.displayName=_k;var Ck="DismissableLayerBranch",Nk=p.forwardRef((e,t)=>{const n=p.useContext(gf),r=p.useRef(null),o=Oe(t,r);return p.useEffect(()=>{const i=r.current;if(i)return n.branches.add(i),()=>{n.branches.delete(i)}},[n.branches]),s.jsx(Ae.div,{...e,ref:o})});Nk.displayName=Ck;function Tk(e,t=globalThis?.document){const n=st(e),r=p.useRef(!1),o=p.useRef(()=>{});return p.useEffect(()=>{const i=l=>{if(l.target&&!r.current){let c=function(){xf(jk,n,u,{discrete:!0})};const u={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function Ek(e,t=globalThis?.document){const n=st(e),r=p.useRef(!1);return p.useEffect(()=>{const o=i=>{i.target&&!r.current&&xf(Sk,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function cc(){const e=new CustomEvent(Pi);document.dispatchEvent(e)}function xf(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?wk(o,i):o.dispatchEvent(i)}var Vo="focusScope.autoFocusOnMount",qo="focusScope.autoFocusOnUnmount",uc={bubbles:!1,cancelable:!0},Ak="FocusScope",Fa=p.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,c]=p.useState(null),u=st(o),d=st(i),f=p.useRef(null),m=Oe(t,g=>c(g)),h=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(r){let g=function(_){if(h.paused||!l)return;const j=_.target;l.contains(j)?f.current=j:Yt(f.current,{select:!0})},x=function(_){if(h.paused||!l)return;const j=_.relatedTarget;j!==null&&(l.contains(j)||Yt(f.current,{select:!0}))},b=function(_){if(document.activeElement===document.body)for(const S of _)S.removedNodes.length>0&&Yt(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",x);const y=new MutationObserver(b);return l&&y.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",x),y.disconnect()}}},[r,l,h.paused]),p.useEffect(()=>{if(l){fc.add(h);const g=document.activeElement;if(!l.contains(g)){const b=new CustomEvent(Vo,uc);l.addEventListener(Vo,u),l.dispatchEvent(b),b.defaultPrevented||(Rk(Mk(bf(l)),{select:!0}),document.activeElement===g&&Yt(l))}return()=>{l.removeEventListener(Vo,u),setTimeout(()=>{const b=new CustomEvent(qo,uc);l.addEventListener(qo,d),l.dispatchEvent(b),b.defaultPrevented||Yt(g??document.body,{select:!0}),l.removeEventListener(qo,d),fc.remove(h)},0)}}},[l,u,d,h]);const v=p.useCallback(g=>{if(!n&&!r||h.paused)return;const x=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,b=document.activeElement;if(x&&b){const y=g.currentTarget,[_,j]=Ik(y);_&&j?!g.shiftKey&&b===j?(g.preventDefault(),n&&Yt(_,{select:!0})):g.shiftKey&&b===_&&(g.preventDefault(),n&&Yt(j,{select:!0})):b===y&&g.preventDefault()}},[n,r,h.paused]);return s.jsx(Ae.div,{tabIndex:-1,...a,ref:m,onKeyDown:v})});Fa.displayName=Ak;function Rk(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(Yt(r,{select:t}),document.activeElement!==n)return}function Ik(e){const t=bf(e),n=dc(t,e),r=dc(t.reverse(),e);return[n,r]}function bf(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function dc(e,t){for(const n of e)if(!zk(n,{upTo:t}))return n}function zk(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 Ok(e){return e instanceof HTMLInputElement&&"select"in e}function Yt(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Ok(e)&&t&&e.select()}}var fc=Pk();function Pk(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=pc(e,t),e.unshift(t)},remove(t){e=pc(e,t),e[0]?.resume()}}}function pc(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Mk(e){return e.filter(t=>t.tagName!=="A")}var Lk="Portal",xo=p.forwardRef((e,t)=>{const{container:n,...r}=e,[o,i]=p.useState(!1);Xe(()=>i(!0),[]);const a=n||o&&globalThis?.document?.body;return a?$m.createPortal(s.jsx(Ae.div,{...r,ref:t}),a):null});xo.displayName=Lk;function Dk(e,t){return p.useReducer((n,r)=>t[n][r]??n,e)}var bt=e=>{const{present:t,children:n}=e,r=$k(t),o=typeof n=="function"?n({present:r.isPresent}):p.Children.only(n),i=Oe(r.ref,Fk(o));return typeof n=="function"||r.isPresent?p.cloneElement(o,{ref:i}):null};bt.displayName="Presence";function $k(e){const[t,n]=p.useState(),r=p.useRef(null),o=p.useRef(e),i=p.useRef("none"),a=e?"mounted":"unmounted",[l,c]=Dk(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return p.useEffect(()=>{const u=Xr(r.current);i.current=l==="mounted"?u:"none"},[l]),Xe(()=>{const u=r.current,d=o.current;if(d!==e){const m=i.current,h=Xr(u);e?c("MOUNT"):h==="none"||u?.display==="none"?c("UNMOUNT"):c(d&&m!==h?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,c]),Xe(()=>{if(t){let u;const d=t.ownerDocument.defaultView??window,f=h=>{const g=Xr(r.current).includes(CSS.escape(h.animationName));if(h.target===t&&g&&(c("ANIMATION_END"),!o.current)){const x=t.style.animationFillMode;t.style.animationFillMode="forwards",u=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=x)})}},m=h=>{h.target===t&&(i.current=Xr(r.current))};return t.addEventListener("animationstart",m),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{d.clearTimeout(u),t.removeEventListener("animationstart",m),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:p.useCallback(u=>{r.current=u?getComputedStyle(u):null,n(u)},[])}}function Xr(e){return e?.animationName||"none"}function Fk(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Ko=0;function vf(){p.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??hc()),document.body.insertAdjacentElement("beforeend",e[1]??hc()),Ko++,()=>{Ko===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),Ko--}},[])}function hc(){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 Et=function(){return Et=Object.assign||function(t){for(var n,r=1,o=arguments.length;r<o;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Et.apply(this,arguments)};function yf(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}function Bk(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,i;r<o;r++)(i||!(r in t))&&(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}var ws="right-scroll-bar-position",ks="width-before-scroll-bar",Uk="with-scroll-bars-hidden",Wk="--removed-body-scroll-bar-size";function Go(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function Hk(e,t){var n=p.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var o=n.value;o!==r&&(n.value=r,n.callback(r,o))}}}})[0];return n.callback=t,n.facade}var Zk=typeof window<"u"?p.useLayoutEffect:p.useEffect,mc=new WeakMap;function Vk(e,t){var n=Hk(null,function(r){return e.forEach(function(o){return Go(o,r)})});return Zk(function(){var r=mc.get(n);if(r){var o=new Set(r),i=new Set(e),a=n.current;o.forEach(function(l){i.has(l)||Go(l,null)}),i.forEach(function(l){o.has(l)||Go(l,a)})}mc.set(n,e)},[e]),n}function qk(e){return e}function Kk(e,t){t===void 0&&(t=qk);var n=[],r=!1,o={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(i){var a=t(i,r);return n.push(a),function(){n=n.filter(function(l){return l!==a})}},assignSyncMedium:function(i){for(r=!0;n.length;){var a=n;n=[],a.forEach(i)}n={push:function(l){return i(l)},filter:function(){return n}}},assignMedium:function(i){r=!0;var a=[];if(n.length){var l=n;n=[],l.forEach(i),a=n}var c=function(){var d=a;a=[],d.forEach(i)},u=function(){return Promise.resolve().then(c)};u(),n={push:function(d){a.push(d),u()},filter:function(d){return a=a.filter(d),n}}}};return o}function Gk(e){e===void 0&&(e={});var t=Kk(null);return t.options=Et({async:!0,ssr:!1},e),t}var wf=function(e){var t=e.sideCar,n=yf(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return p.createElement(r,Et({},n))};wf.isSideCarExport=!0;function Jk(e,t){return e.useMedium(t),wf}var kf=Gk(),Jo=function(){},bo=p.forwardRef(function(e,t){var n=p.useRef(null),r=p.useState({onScrollCapture:Jo,onWheelCapture:Jo,onTouchMoveCapture:Jo}),o=r[0],i=r[1],a=e.forwardProps,l=e.children,c=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,m=e.sideCar,h=e.noRelative,v=e.noIsolation,g=e.inert,x=e.allowPinchZoom,b=e.as,y=b===void 0?"div":b,_=e.gapMode,j=yf(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=m,T=Vk([n,t]),N=Et(Et({},j),o);return p.createElement(p.Fragment,null,d&&p.createElement(S,{sideCar:kf,removeScrollBar:u,shards:f,noRelative:h,noIsolation:v,inert:g,setCallbacks:i,allowPinchZoom:!!x,lockRef:n,gapMode:_}),a?p.cloneElement(p.Children.only(l),Et(Et({},N),{ref:T})):p.createElement(y,Et({},N,{className:c,ref:T}),l))});bo.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};bo.classNames={fullWidth:ks,zeroRight:ws};var Yk=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Xk(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=Yk();return t&&e.setAttribute("nonce",t),e}function Qk(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function e_(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var t_=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Xk())&&(Qk(t,n),e_(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},n_=function(){var e=t_();return function(t,n){p.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},_f=function(){var e=n_(),t=function(n){var r=n.styles,o=n.dynamic;return e(r,o),null};return t},r_={left:0,top:0,right:0,gap:0},Yo=function(e){return parseInt(e||"",10)||0},s_=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Yo(n),Yo(r),Yo(o)]},o_=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return r_;var t=s_(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},i_=_f(),Bn="data-scroll-locked",a_=function(e,t,n,r){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),`
|
|
42
|
+
.`.concat(Uk,` {
|
|
43
|
+
overflow: hidden `).concat(r,`;
|
|
44
|
+
padding-right: `).concat(l,"px ").concat(r,`;
|
|
45
|
+
}
|
|
46
|
+
body[`).concat(Bn,`] {
|
|
47
|
+
overflow: hidden `).concat(r,`;
|
|
48
|
+
overscroll-behavior: contain;
|
|
49
|
+
`).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&`
|
|
50
|
+
padding-left: `.concat(o,`px;
|
|
51
|
+
padding-top: `).concat(i,`px;
|
|
52
|
+
padding-right: `).concat(a,`px;
|
|
53
|
+
margin-left:0;
|
|
54
|
+
margin-top:0;
|
|
55
|
+
margin-right: `).concat(l,"px ").concat(r,`;
|
|
56
|
+
`),n==="padding"&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),`
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.`).concat(ws,` {
|
|
60
|
+
right: `).concat(l,"px ").concat(r,`;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.`).concat(ks,` {
|
|
64
|
+
margin-right: `).concat(l,"px ").concat(r,`;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.`).concat(ws," .").concat(ws,` {
|
|
68
|
+
right: 0 `).concat(r,`;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.`).concat(ks," .").concat(ks,` {
|
|
72
|
+
margin-right: 0 `).concat(r,`;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
body[`).concat(Bn,`] {
|
|
76
|
+
`).concat(Wk,": ").concat(l,`px;
|
|
77
|
+
}
|
|
78
|
+
`)},gc=function(){var e=parseInt(document.body.getAttribute(Bn)||"0",10);return isFinite(e)?e:0},l_=function(){p.useEffect(function(){return document.body.setAttribute(Bn,(gc()+1).toString()),function(){var e=gc()-1;e<=0?document.body.removeAttribute(Bn):document.body.setAttribute(Bn,e.toString())}},[])},c_=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=r===void 0?"margin":r;l_();var i=p.useMemo(function(){return o_(o)},[o]);return p.createElement(i_,{styles:a_(i,!t,o,n?"":"!important")})},Mi=!1;if(typeof window<"u")try{var Qr=Object.defineProperty({},"passive",{get:function(){return Mi=!0,!0}});window.addEventListener("test",Qr,Qr),window.removeEventListener("test",Qr,Qr)}catch{Mi=!1}var An=Mi?{passive:!1}:!1,u_=function(e){return e.tagName==="TEXTAREA"},jf=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!u_(e)&&n[t]==="visible")},d_=function(e){return jf(e,"overflowY")},f_=function(e){return jf(e,"overflowX")},xc=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var o=Sf(e,r);if(o){var i=Cf(e,r),a=i[1],l=i[2];if(a>l)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},p_=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},h_=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},Sf=function(e,t){return e==="v"?d_(t):f_(t)},Cf=function(e,t){return e==="v"?p_(t):h_(t)},m_=function(e,t){return e==="h"&&t==="rtl"?-1:1},g_=function(e,t,n,r,o){var i=m_(e,window.getComputedStyle(t).direction),a=i*r,l=n.target,c=t.contains(l),u=!1,d=a>0,f=0,m=0;do{if(!l)break;var h=Cf(e,l),v=h[0],g=h[1],x=h[2],b=g-x-i*v;(v||b)&&Sf(e,l)&&(f+=b,m+=v);var y=l.parentNode;l=y&&y.nodeType===Node.DOCUMENT_FRAGMENT_NODE?y.host:y}while(!c&&l!==document.body||c&&(t.contains(l)||t===l));return(d&&Math.abs(f)<1||!d&&Math.abs(m)<1)&&(u=!0),u},es=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},bc=function(e){return[e.deltaX,e.deltaY]},vc=function(e){return e&&"current"in e?e.current:e},x_=function(e,t){return e[0]===t[0]&&e[1]===t[1]},b_=function(e){return`
|
|
79
|
+
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
80
|
+
.allow-interactivity-`).concat(e,` {pointer-events: all;}
|
|
81
|
+
`)},v_=0,Rn=[];function y_(e){var t=p.useRef([]),n=p.useRef([0,0]),r=p.useRef(),o=p.useState(v_++)[0],i=p.useState(_f)[0],a=p.useRef(e);p.useEffect(function(){a.current=e},[e]),p.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var g=Bk([e.lockRef.current],(e.shards||[]).map(vc),!0).filter(Boolean);return g.forEach(function(x){return x.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),g.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=p.useCallback(function(g,x){if("touches"in g&&g.touches.length===2||g.type==="wheel"&&g.ctrlKey)return!a.current.allowPinchZoom;var b=es(g),y=n.current,_="deltaX"in g?g.deltaX:y[0]-b[0],j="deltaY"in g?g.deltaY:y[1]-b[1],S,T=g.target,N=Math.abs(_)>Math.abs(j)?"h":"v";if("touches"in g&&N==="h"&&T.type==="range")return!1;var R=window.getSelection(),I=R&&R.anchorNode,O=I?I===T||I.contains(T):!1;if(O)return!1;var K=xc(N,T);if(!K)return!0;if(K?S=N:(S=N==="v"?"h":"v",K=xc(N,T)),!K)return!1;if(!r.current&&"changedTouches"in g&&(_||j)&&(r.current=S),!S)return!0;var A=r.current||S;return g_(A,x,g,A==="h"?_:j)},[]),c=p.useCallback(function(g){var x=g;if(!(!Rn.length||Rn[Rn.length-1]!==i)){var b="deltaY"in x?bc(x):es(x),y=t.current.filter(function(S){return S.name===x.type&&(S.target===x.target||x.target===S.shadowParent)&&x_(S.delta,b)})[0];if(y&&y.should){x.cancelable&&x.preventDefault();return}if(!y){var _=(a.current.shards||[]).map(vc).filter(Boolean).filter(function(S){return S.contains(x.target)}),j=_.length>0?l(x,_[0]):!a.current.noIsolation;j&&x.cancelable&&x.preventDefault()}}},[]),u=p.useCallback(function(g,x,b,y){var _={name:g,delta:x,target:b,should:y,shadowParent:w_(b)};t.current.push(_),setTimeout(function(){t.current=t.current.filter(function(j){return j!==_})},1)},[]),d=p.useCallback(function(g){n.current=es(g),r.current=void 0},[]),f=p.useCallback(function(g){u(g.type,bc(g),g.target,l(g,e.lockRef.current))},[]),m=p.useCallback(function(g){u(g.type,es(g),g.target,l(g,e.lockRef.current))},[]);p.useEffect(function(){return Rn.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:m}),document.addEventListener("wheel",c,An),document.addEventListener("touchmove",c,An),document.addEventListener("touchstart",d,An),function(){Rn=Rn.filter(function(g){return g!==i}),document.removeEventListener("wheel",c,An),document.removeEventListener("touchmove",c,An),document.removeEventListener("touchstart",d,An)}},[]);var h=e.removeScrollBar,v=e.inert;return p.createElement(p.Fragment,null,v?p.createElement(i,{styles:b_(o)}):null,h?p.createElement(c_,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function w_(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const k_=Jk(kf,y_);var Ba=p.forwardRef(function(e,t){return p.createElement(bo,Et({},e,{ref:t,sideCar:k_}))});Ba.classNames=bo.classNames;var __=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},In=new WeakMap,ts=new WeakMap,ns={},Xo=0,Nf=function(e){return e&&(e.host||Nf(e.parentNode))},j_=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=Nf(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},S_=function(e,t,n,r){var o=j_(t,Array.isArray(e)?e:[e]);ns[n]||(ns[n]=new WeakMap);var i=ns[n],a=[],l=new Set,c=new Set(o),u=function(f){!f||l.has(f)||(l.add(f),u(f.parentNode))};o.forEach(u);var d=function(f){!f||c.has(f)||Array.prototype.forEach.call(f.children,function(m){if(l.has(m))d(m);else try{var h=m.getAttribute(r),v=h!==null&&h!=="false",g=(In.get(m)||0)+1,x=(i.get(m)||0)+1;In.set(m,g),i.set(m,x),a.push(m),g===1&&v&&ts.set(m,!0),x===1&&m.setAttribute(n,"true"),v||m.setAttribute(r,"true")}catch(b){console.error("aria-hidden: cannot operate on ",m,b)}})};return d(t),l.clear(),Xo++,function(){a.forEach(function(f){var m=In.get(f)-1,h=i.get(f)-1;In.set(f,m),i.set(f,h),m||(ts.has(f)||f.removeAttribute(r),ts.delete(f)),h||f.removeAttribute(n)}),Xo--,Xo||(In=new WeakMap,In=new WeakMap,ts=new WeakMap,ns={})}},Tf=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=__(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),S_(r,o,n,"aria-hidden")):function(){return null}},vo="Dialog",[Ef]=Vt(vo),[C_,Nt]=Ef(vo),Af=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:a=!0}=e,l=p.useRef(null),c=p.useRef(null),[u,d]=vn({prop:r,defaultProp:o??!1,onChange:i,caller:vo});return s.jsx(C_,{scope:t,triggerRef:l,contentRef:c,contentId:Rt(),titleId:Rt(),descriptionId:Rt(),open:u,onOpenChange:d,onOpenToggle:p.useCallback(()=>d(f=>!f),[d]),modal:a,children:n})};Af.displayName=vo;var Rf="DialogTrigger",If=p.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Nt(Rf,n),i=Oe(t,o.triggerRef);return s.jsx(Ae.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Ha(o.open),...r,ref:i,onClick:je(e.onClick,o.onOpenToggle)})});If.displayName=Rf;var Ua="DialogPortal",[N_,zf]=Ef(Ua,{forceMount:void 0}),Of=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,i=Nt(Ua,t);return s.jsx(N_,{scope:t,forceMount:n,children:p.Children.map(r,a=>s.jsx(bt,{present:n||i.open,children:s.jsx(xo,{asChild:!0,container:o,children:a})}))})};Of.displayName=Ua;var Ls="DialogOverlay",Pf=p.forwardRef((e,t)=>{const n=zf(Ls,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=Nt(Ls,e.__scopeDialog);return i.modal?s.jsx(bt,{present:r||i.open,children:s.jsx(E_,{...o,ref:t})}):null});Pf.displayName=Ls;var T_=Gn("DialogOverlay.RemoveScroll"),E_=p.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Nt(Ls,n);return s.jsx(Ba,{as:T_,allowPinchZoom:!0,shards:[o.contentRef],children:s.jsx(Ae.div,{"data-state":Ha(o.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),yn="DialogContent",Mf=p.forwardRef((e,t)=>{const n=zf(yn,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=Nt(yn,e.__scopeDialog);return s.jsx(bt,{present:r||i.open,children:i.modal?s.jsx(A_,{...o,ref:t}):s.jsx(R_,{...o,ref:t})})});Mf.displayName=yn;var A_=p.forwardRef((e,t)=>{const n=Nt(yn,e.__scopeDialog),r=p.useRef(null),o=Oe(t,n.contentRef,r);return p.useEffect(()=>{const i=r.current;if(i)return Tf(i)},[]),s.jsx(Lf,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:je(e.onCloseAutoFocus,i=>{i.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:je(e.onPointerDownOutside,i=>{const a=i.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0;(a.button===2||l)&&i.preventDefault()}),onFocusOutside:je(e.onFocusOutside,i=>i.preventDefault())})}),R_=p.forwardRef((e,t)=>{const n=Nt(yn,e.__scopeDialog),r=p.useRef(!1),o=p.useRef(!1);return s.jsx(Lf,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{e.onCloseAutoFocus?.(i),i.defaultPrevented||(r.current||n.triggerRef.current?.focus(),i.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:i=>{e.onInteractOutside?.(i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const a=i.target;n.triggerRef.current?.contains(a)&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),Lf=p.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,...a}=e,l=Nt(yn,n),c=p.useRef(null),u=Oe(t,c);return vf(),s.jsxs(s.Fragment,{children:[s.jsx(Fa,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i,children:s.jsx(go,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":Ha(l.open),...a,ref:u,onDismiss:()=>l.onOpenChange(!1)})}),s.jsxs(s.Fragment,{children:[s.jsx(I_,{titleId:l.titleId}),s.jsx(O_,{contentRef:c,descriptionId:l.descriptionId})]})]})}),Wa="DialogTitle",Df=p.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Nt(Wa,n);return s.jsx(Ae.h2,{id:o.titleId,...r,ref:t})});Df.displayName=Wa;var $f="DialogDescription",Ff=p.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Nt($f,n);return s.jsx(Ae.p,{id:o.descriptionId,...r,ref:t})});Ff.displayName=$f;var Bf="DialogClose",Uf=p.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Nt(Bf,n);return s.jsx(Ae.button,{type:"button",...r,ref:t,onClick:je(e.onClick,()=>o.onOpenChange(!1))})});Uf.displayName=Bf;function Ha(e){return e?"open":"closed"}var Wf="DialogTitleWarning",[CI,Hf]=ak(Wf,{contentName:yn,titleName:Wa,docsSlug:"dialog"}),I_=({titleId:e})=>{const t=Hf(Wf),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
|
|
82
|
+
|
|
83
|
+
If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
84
|
+
|
|
85
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return p.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},z_="DialogDescriptionWarning",O_=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${Hf(z_).contentName}}.`;return p.useEffect(()=>{const o=e.current?.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},P_=Af,M_=If,L_=Of,D_=Pf,$_=Mf,F_=Df,B_=Ff,U_=Uf;function Or({...e}){return s.jsx(P_,{"data-slot":"dialog",...e})}function Za({...e}){return s.jsx(M_,{"data-slot":"dialog-trigger",...e})}function W_({...e}){return s.jsx(L_,{"data-slot":"dialog-portal",...e})}function H_({className:e,...t}){return s.jsx(D_,{"data-slot":"dialog-overlay",className:ce("fixed inset-0 z-40 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})}function Pr({className:e,children:t,...n}){return s.jsxs(W_,{children:[s.jsx(H_,{}),s.jsxs($_,{"data-slot":"dialog-content",className:ce("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg",e),...n,children:[t,s.jsxs(U_,{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-accent data-[state=open]:text-muted-foreground",children:[s.jsx(mo,{className:"size-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function Mr({className:e,...t}){return s.jsx("div",{"data-slot":"dialog-header",className:ce("flex flex-col space-y-1.5 text-center sm:text-left",e),...t})}function Lr({className:e,...t}){return s.jsx(F_,{"data-slot":"dialog-title",className:ce("text-lg font-semibold leading-none tracking-tight",e),...t})}function Z_({className:e,...t}){return s.jsx(B_,{"data-slot":"dialog-description",className:ce("text-sm text-muted-foreground",e),...t})}const yc=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,wc=Xd,Va=(e,t)=>n=>{var r;if(t?.variants==null)return wc(e,n?.class,n?.className);const{variants:o,defaultVariants:i}=t,a=Object.keys(o).map(u=>{const d=n?.[u],f=i?.[u];if(d===null)return null;const m=yc(d)||yc(f);return o[u][m]}),l=n&&Object.entries(n).reduce((u,d)=>{let[f,m]=d;return m===void 0||(u[f]=m),u},{}),c=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((u,d)=>{let{class:f,className:m,...h}=d;return Object.entries(h).every(v=>{let[g,x]=v;return Array.isArray(x)?x.includes({...i,...l}[g]):{...i,...l}[g]===x})?[...u,f,m]:u},[]);return wc(e,a,c,n?.class,n?.className)},V_=Va("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white 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-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function Ce({className:e,variant:t,size:n,...r}){return s.jsx("button",{"data-slot":"button",className:ce(V_({variant:t,size:n,className:e})),...r})}function Zf({open:e,onOpenChange:t,title:n,description:r,confirmLabel:o="Confirm",variant:i="default",onConfirm:a}){return s.jsx(Or,{open:e,onOpenChange:t,children:s.jsxs(Pr,{children:[s.jsx(Mr,{children:s.jsx(Lr,{children:n})}),s.jsx("p",{className:"text-sm text-muted-foreground",children:r}),s.jsxs("div",{className:"flex justify-end gap-2 pt-2",children:[s.jsx(Ce,{variant:"outline",size:"sm",onClick:()=>t(!1),children:"Cancel"}),s.jsx(Ce,{variant:i,size:"sm",onClick:()=>{a(),t(!1)},children:o})]})]})})}const q_={codex:"Codex",opencode:"OpenCode","mimo-code":"MiMo Code","claude-code":"Claude Code"};function Qo(e){return e?.toLowerCase()??""}function rs(e,t){for(const n of t)if(e.includes(n))return!0;return!1}function qa(e){const t=[Qo(e.userAgent),Qo(e.conversationId),Qo(e.clientProjectFolder)].join(" ");return rs(t,["mimocode","mimo-code","mimo code"])?"mimo-code":rs(t,["opencode","open-code","open code"])?"opencode":rs(t,["claude-code","claude code","claudecode"])?"claude-code":rs(t,["codex desktop","codex-cli","openai-codex","codex"])?"codex":"unknown"}function yo(e){switch(e){case"codex":case"opencode":case"mimo-code":case"claude-code":return q_[e];case"unknown":return null}}function K_(){return s.jsxs("svg",{viewBox:"0 0 24 24",className:"size-full","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"8",fill:"none",stroke:"currentColor",strokeWidth:"2.2"}),s.jsx("path",{d:"M14.8 8.6a4.8 4.8 0 1 0 0 6.8",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"2.2"})]})}function G_(){return s.jsxs("svg",{viewBox:"0 0 24 24",className:"size-full","aria-hidden":"true",children:[s.jsx("path",{d:"M7 4h10v16H7z",fill:"none",stroke:"currentColor",strokeWidth:"2.2"}),s.jsx("path",{d:"M10 8h4M10 12h4M10 16h2",stroke:"currentColor",strokeLinecap:"round"})]})}function J_(){return s.jsx("svg",{viewBox:"0 0 24 24",className:"size-full","aria-hidden":"true",children:s.jsx("path",{d:"M5 18V6h3.2l3.8 6.1L15.8 6H19v12h-3V11.3l-3.1 5h-1.8L8 11.3V18z",fill:"currentColor"})})}function Y_(){return s.jsx("svg",{viewBox:"0 0 24 24",className:"size-full","aria-hidden":"true",children:s.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M21 10.95h3v3.1h-3v3.03h-1.49V20H18v-2.92h-1.49V20H15v-2.92H9V20H7.49v-2.92H6V20H4.49v-2.92H3v-3.03H0v-3.1h3V5h18v5.95zM6 10.95h1.49V8.1H6v2.85zm10.51 0H18V8.1h-1.49v2.85z"})})}function Ka({client:e,className:t}){const n=yo(e);return n===null?null:s.jsxs("span",{className:ce("border border-border bg-muted/40 inline-flex size-6 shrink-0 items-center justify-center rounded-md p-1 text-cyan-100",t),"aria-label":n,title:n,children:[e==="codex"&&s.jsx(K_,{}),e==="opencode"&&s.jsx(G_,{}),e==="mimo-code"&&s.jsx(J_,{}),e==="claude-code"&&s.jsx(Y_,{})]})}const X_="data:image/svg+xml,%3csvg%20height='2500'%20viewBox='0%206.603%201192.672%201193.397'%20width='2500'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m233.96%20800.215%20234.684-131.678%203.947-11.436-3.947-6.363h-11.436l-39.221-2.416-134.094-3.624-116.296-4.832-112.67-6.04-28.35-6.04-26.577-35.035%202.738-17.477%2023.84-16.027%2034.147%202.98%2075.463%205.155%20113.235%207.812%2082.147%204.832%20121.692%2012.644h19.329l2.738-7.812-6.604-4.832-5.154-4.832-117.182-79.41-126.845-83.92-66.443-48.321-35.92-24.484-18.12-22.953-7.813-50.093%2032.618-35.92%2043.812%202.98%2011.195%202.98%2044.375%2034.147%2094.792%2073.37%20123.786%2091.167%2018.12%2015.06%207.249-5.154.886-3.624-8.135-13.61-67.329-121.692-71.838-123.785-31.974-51.302-8.456-30.765c-2.98-12.645-5.154-23.275-5.154-36.242l37.127-50.416%2020.537-6.604%2049.53%206.604%2020.86%2018.121%2030.765%2070.39%2049.852%20110.818%2077.315%20150.684%2022.631%2044.698%2012.08%2041.396%204.51%2012.645h7.813v-7.248l6.362-84.886%2011.759-104.215%2011.436-134.094%203.946-37.772%2018.685-45.262%2037.127-24.482%2028.994%2013.852%2023.839%2034.148-3.303%2022.067-14.174%2092.134-27.785%20144.323-18.121%2096.644h10.55l12.08-12.08%2048.887-64.913%2082.147-102.685%2036.242-40.752%2042.282-45.02%2027.14-21.423h51.303l37.772%2056.135-16.913%2057.986-52.832%2067.007-43.812%2056.779-62.82%2084.563-39.22%2067.651%203.623%205.396%209.343-.886%20141.906-30.201%2076.671-13.852%2091.49-15.705%2041.396%2019.329%204.51%2019.65-16.269%2040.189-97.852%2024.16-114.764%2022.954-170.9%2040.43-2.093%201.53%202.416%202.98%2076.993%207.248%2032.94%201.771h80.617l150.12%2011.195%2039.222%2025.933%2023.517%2031.732-3.946%2024.16-60.403%2030.766-81.503-19.33-190.228-45.26-65.235-16.27h-9.02v5.397l54.362%2053.154%2099.624%2089.96%20124.752%20115.973%206.362%2028.671-16.027%2022.63-16.912-2.415-109.611-82.47-42.282-37.127-95.758-80.618h-6.363v8.456l22.067%2032.296%20116.537%20175.167%206.04%2053.719-8.456%2017.476-30.201%2010.55-33.181-6.04-68.215-95.758-70.39-107.84-56.778-96.644-6.926%203.947-33.503%20360.886-15.705%2018.443-36.243%2013.852-30.201-22.953-16.027-37.127%2016.027-73.37%2019.329-95.758%2015.704-76.107%2014.175-94.55%208.456-31.41-.563-2.094-6.927.886-71.275%2097.852-108.402%20146.497-85.772%2091.812-20.537%208.134-35.597-18.443%203.301-32.94%2019.893-29.315%20118.712-151.007%2071.597-93.583%2046.228-54.04-.322-7.813h-2.738l-315.302%20204.725-56.135%207.248-24.16-22.63%202.98-37.128%2011.435-12.08%2094.792-65.236-.322.323z'%20fill='%23d97757'/%3e%3c/svg%3e",Q_="data:image/svg+xml,%3csvg%20height='2500'%20viewBox='-1%20-.1%20949.1%20959.8'%20width='2474'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m925.8%20456.3c10.4%2023.2%2017%2048%2019.7%2073.3%202.6%2025.3%201.3%2050.9-4.1%2075.8-5.3%2024.9-14.5%2048.8-27.3%2070.8-8.4%2014.7-18.3%2028.5-29.7%2041.2-11.3%2012.6-23.9%2024-37.6%2034-13.8%2010-28.5%2018.4-44.1%2025.3-15.5%206.8-31.7%2012-48.3%2015.4-7.8%2024.2-19.4%2047.1-34.4%2067.7-14.9%2020.6-33%2038.7-53.6%2053.6-20.6%2015-43.4%2026.6-67.6%2034.4-24.2%207.9-49.5%2011.8-75%2011.8-16.9.1-33.9-1.7-50.5-5.1-16.5-3.5-32.7-8.8-48.2-15.7s-30.2-15.5-43.9-25.5c-13.6-10-26.2-21.5-37.4-34.2-25%205.4-50.6%206.7-75.9%204.1-25.3-2.7-50.1-9.3-73.4-19.7-23.2-10.3-44.7-24.3-63.6-41.4s-35-37.1-47.7-59.1c-8.5-14.7-15.5-30.2-20.8-46.3s-8.8-32.7-10.6-49.6c-1.8-16.8-1.7-33.8.1-50.7%201.8-16.8%205.5-33.4%2010.8-49.5-17-18.9-31-40.4-41.4-63.6-10.3-23.3-17-48-19.6-73.3-2.7-25.3-1.3-50.9%204-75.8s14.5-48.8%2027.3-70.8c8.4-14.7%2018.3-28.6%2029.6-41.2s24-24%2037.7-34%2028.5-18.5%2044-25.3c15.6-6.9%2031.8-12%2048.4-15.4%207.8-24.3%2019.4-47.1%2034.3-67.7%2015-20.6%2033.1-38.7%2053.7-53.7%2020.6-14.9%2043.4-26.5%2067.6-34.4%2024.2-7.8%2049.5-11.8%2075-11.7%2016.9-.1%2033.9%201.6%2050.5%205.1s32.8%208.7%2048.3%2015.6c15.5%207%2030.2%2015.5%2043.9%2025.5%2013.7%2010.1%2026.3%2021.5%2037.5%2034.2%2024.9-5.3%2050.5-6.6%2075.8-4s50%209.3%2073.3%2019.6c23.2%2010.4%2044.7%2024.3%2063.6%2041.4%2018.9%2017%2035%2036.9%2047.7%2059%208.5%2014.6%2015.5%2030.1%2020.8%2046.3%205.3%2016.1%208.9%2032.7%2010.6%2049.6%201.8%2016.9%201.8%2033.9-.1%2050.8-1.8%2016.9-5.5%2033.5-10.8%2049.6%2017.1%2018.9%2031%2040.3%2041.4%2063.6zm-333.2%20426.9c21.8-9%2041.6-22.3%2058.3-39s30-36.5%2039-58.4c9-21.8%2013.7-45.2%2013.7-68.8v-223q-.1-.3-.2-.7-.1-.3-.3-.6-.2-.3-.5-.5-.3-.3-.6-.4l-80.7-46.6v269.4c0%202.7-.4%205.5-1.1%208.1-.7%202.7-1.7%205.2-3.1%207.6s-3%204.6-5%206.5a32.1%2032.1%200%200%201%20-6.5%205l-191.1%20110.3c-1.6%201-4.3%202.4-5.7%203.2%207.9%206.7%2016.5%2012.6%2025.5%2017.8%209.1%205.2%2018.5%209.6%2028.3%2013.2%209.8%203.5%2019.9%206.2%2030.1%208%2010.3%201.8%2020.7%202.7%2031.1%202.7%2023.6%200%2047-4.7%2068.8-13.8zm-455.1-151.4c11.9%2020.5%2027.6%2038.3%2046.3%2052.7%2018.8%2014.4%2040.1%2024.9%2062.9%2031s46.6%207.7%2070%204.6%2045.9-10.7%2066.4-22.5l193.2-111.5.5-.5q.2-.2.3-.6.2-.3.3-.6v-94l-233.2%20134.9c-2.4%201.4-4.9%202.4-7.5%203.2-2.7.7-5.4%201-8.2%201-2.7%200-5.4-.3-8.1-1-2.6-.8-5.2-1.8-7.6-3.2l-191.1-110.4c-1.7-1-4.2-2.5-5.6-3.4-1.8%2010.3-2.7%2020.7-2.7%2031.1s1%2020.8%202.8%2031.1c1.8%2010.2%204.6%2020.3%208.1%2030.1%203.6%209.8%208%2019.2%2013.2%2028.2zm-50.2-417c-11.8%2020.5-19.4%2043.1-22.5%2066.5s-1.5%2047.1%204.6%2070c6.1%2022.8%2016.6%2044.1%2031%2062.9%2014.4%2018.7%2032.3%2034.4%2052.7%2046.2l193.1%20111.6q.3.1.7.2h.7q.4%200%20.7-.2.3-.1.6-.3l81-46.8-233.2-134.6c-2.3-1.4-4.5-3.1-6.5-5a32.1%2032.1%200%200%201%20-5-6.5c-1.3-2.4-2.4-4.9-3.1-7.6-.7-2.6-1.1-5.3-1-8.1v-227.1c-9.8%203.6-19.3%208-28.3%2013.2-9%205.3-17.5%2011.3-25.5%2018-7.9%206.7-15.3%2014.1-22%2022.1-6.7%207.9-12.6%2016.5-17.8%2025.5zm663.3%20154.4c2.4%201.4%204.6%203%206.6%205%201.9%201.9%203.6%204.1%205%206.5%201.3%202.4%202.4%205%203.1%207.6.6%202.7%201%205.4.9%208.2v227.1c32.1-11.8%2060.1-32.5%2080.8-59.7%2020.8-27.2%2033.3-59.7%2036.2-93.7s-3.9-68.2-19.7-98.5-39.9-55.5-69.5-72.5l-193.1-111.6q-.3-.1-.7-.2h-.7q-.3.1-.7.2-.3.1-.6.3l-80.6%2046.6%20233.2%20134.7zm80.5-121h-.1v.1zm-.1-.1c5.8-33.6%201.9-68.2-11.3-99.7-13.1-31.5-35-58.6-63-78.2-28-19.5-61-30.7-95.1-32.2-34.2-1.4-68%206.9-97.6%2023.9l-193.1%20111.5q-.3.2-.5.5l-.4.6q-.1.3-.2.7-.1.3-.1.7v93.2l233.2-134.7c2.4-1.4%205-2.4%207.6-3.2%202.7-.7%205.4-1%208.1-1%202.8%200%205.5.3%208.2%201%202.6.8%205.1%201.8%207.5%203.2l191.1%20110.4c1.7%201%204.2%202.4%205.6%203.3zm-505.3-103.2c0-2.7.4-5.4%201.1-8.1.7-2.6%201.7-5.2%203.1-7.6%201.4-2.3%203-4.5%205-6.5%201.9-1.9%204.1-3.6%206.5-4.9l191.1-110.3c1.8-1.1%204.3-2.5%205.7-3.2-26.2-21.9-58.2-35.9-92.1-40.2-33.9-4.4-68.3%201-99.2%2015.5-31%2014.5-57.2%2037.6-75.5%2066.4-18.3%2028.9-28%2062.3-28%2096.5v223q.1.4.2.7.1.3.3.6.2.3.5.6.2.2.6.4l80.7%2046.6zm43.8%20294.7%20103.9%2060%20103.9-60v-119.9l-103.8-60-103.9%2060z'/%3e%3c/svg%3e",ej="data:image/svg+xml,%3csvg%20fill='none'%20height='1320'%20viewBox='3.771%206.973%2023.993%2017.652'%20width='2500'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m27.501%208.469c-.252-.123-.36.111-.508.23-.05.04-.093.09-.135.135-.368.395-.797.652-1.358.621-.821-.045-1.521.213-2.14.842-.132-.776-.57-1.238-1.235-1.535-.349-.155-.701-.309-.944-.645-.171-.238-.217-.504-.303-.765-.054-.159-.108-.32-.29-.348-.197-.031-.274.135-.352.273-.31.567-.43%201.192-.419%201.825.028%201.421.628%202.554%201.82%203.36.136.093.17.186.128.321-.081.278-.178.547-.264.824-.054.178-.135.217-.324.14a5.448%205.448%200%200%201%20-1.719-1.169c-.848-.82-1.614-1.726-2.57-2.435-.225-.166-.449-.32-.681-.467-.976-.95.128-1.729.383-1.82.267-.096.093-.428-.77-.424s-1.653.293-2.659.677a2.782%202.782%200%200%201%20-.46.135%209.554%209.554%200%200%200%20-2.853-.1c-1.866.21-3.356%201.092-4.452%202.6-1.315%201.81-1.625%203.87-1.246%206.018.399%202.261%201.552%204.136%203.326%205.601%201.837%201.518%203.955%202.262%206.37%202.12%201.466-.085%203.1-.282%204.942-1.842.465.23.952.322%201.762.392.623.059%201.223-.031%201.687-.127.728-.154.677-.828.414-.953-2.132-.994-1.665-.59-2.09-.916%201.084-1.285%202.717-2.619%203.356-6.94.05-.343.007-.558%200-.837-.004-.168.034-.235.228-.254a4.084%204.084%200%200%200%201.529-.47c1.382-.757%201.938-1.997%202.07-3.485.02-.227-.004-.463-.243-.582zm-12.041%2013.391c-2.067-1.627-3.07-2.162-3.483-2.138-.387.021-.318.465-.233.754.089.285.205.482.368.732.113.166.19.414-.112.598-.666.414-1.823-.139-1.878-.166-1.347-.793-2.473-1.842-3.267-3.276-.765-1.38-1.21-2.861-1.284-4.441-.02-.383.093-.518.472-.586a4.692%204.692%200%200%201%201.514-.04c2.109.31%203.905%201.255%205.41%202.749.86.853%201.51%201.871%202.18%202.865.711%201.057%201.478%202.063%202.454%202.887.343.289.619.51.881.672-.792.088-2.117.107-3.022-.61zm.99-6.38a.304.304%200%201%201%20.609%200c0%20.17-.136.304-.306.304a.3.3%200%200%201%20-.303-.305zm3.077%201.581c-.197.08-.394.15-.584.159a1.246%201.246%200%200%201%20-.79-.252c-.27-.227-.463-.354-.546-.752a1.752%201.752%200%200%201%20.016-.582c.07-.324-.008-.531-.235-.72-.187-.155-.422-.196-.682-.196a.551.551%200%200%201%20-.252-.078c-.108-.055-.197-.19-.112-.356.027-.053.159-.183.19-.207.352-.201.758-.135%201.134.016.349.142.611.404.99.773.388.448.457.573.678.906.174.264.333.534.441.842.066.192-.02.35-.248.448z'%20fill='%234d6bfe'/%3e%3c/svg%3e",tj="/assets/minimax-BPMzvuL-.jpeg",nj="/assets/alibaba-TTwafVwX.svg",rj="/assets/qwen-CONDcHqt.png",sj="/assets/zhipuai-BPNAnxo-.svg",oj={"claude-":"anthropic","gpt-":"openai","o1-":"openai","o3-":"openai","deepseek-":"deepseek",MiniMax:"minimax",qwen:"qwen"};function ij(e){return e.replace(/[_\s]+/g,"-").split(/[/:@]/).some(n=>n.startsWith("glm-"))}function aj(e){if(e===null)return"unknown";const t=e.toLowerCase();if(ij(t))return"zhipuai";for(const[n,r]of Object.entries(oj))if(t.startsWith(n.toLowerCase()))return r;return"unknown"}const Tn={width:24,height:24,objectFit:"contain"},lj=it.memo(({className:e})=>s.jsx("img",{src:X_,alt:"Anthropic",className:e,style:Tn})),cj=it.memo(({className:e})=>s.jsx("img",{src:Q_,alt:"OpenAI",className:e,style:{...Tn,background:"white",borderRadius:"4px"}})),uj=it.memo(({className:e})=>s.jsx("img",{src:ej,alt:"DeepSeek",className:e,style:Tn})),dj=it.memo(({className:e})=>s.jsx("img",{src:tj,alt:"MiniMax",className:e,style:Tn})),fj=it.memo(({className:e})=>s.jsx("img",{src:nj,alt:"Alibaba",className:e,style:Tn})),pj=it.memo(({className:e})=>s.jsx("img",{src:rj,alt:"Qwen",className:e,style:Tn})),hj=it.memo(({className:e})=>s.jsx("img",{src:sj,alt:"ZhipuAI",className:e,style:Tn}));function mj({provider:e,className:t}){switch(e){case"anthropic":return s.jsx(lj,{className:t});case"openai":return s.jsx(cj,{className:t});case"deepseek":return s.jsx(uj,{className:t});case"minimax":return s.jsx(dj,{className:t});case"alibaba":return s.jsx(fj,{className:t});case"qwen":return s.jsx(pj,{className:t});case"zhipuai":return s.jsx(hj,{className:t});case"unknown":return null}}var Vf=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"}),gj="VisuallyHidden",qf=p.forwardRef((e,t)=>s.jsx(Ae.span,{...e,ref:t,style:{...Vf,...e.style}}));qf.displayName=gj;var xj=qf;function Kf(e){const t=e+"CollectionProvider",[n,r]=Vt(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=g=>{const{scope:x,children:b}=g,y=it.useRef(null),_=it.useRef(new Map).current;return s.jsx(o,{scope:x,itemMap:_,collectionRef:y,children:b})};a.displayName=t;const l=e+"CollectionSlot",c=Gn(l),u=it.forwardRef((g,x)=>{const{scope:b,children:y}=g,_=i(l,b),j=Oe(x,_.collectionRef);return s.jsx(c,{ref:j,children:y})});u.displayName=l;const d=e+"CollectionItemSlot",f="data-radix-collection-item",m=Gn(d),h=it.forwardRef((g,x)=>{const{scope:b,children:y,..._}=g,j=it.useRef(null),S=Oe(x,j),T=i(d,b);return it.useEffect(()=>(T.itemMap.set(j,{ref:j,..._}),()=>{T.itemMap.delete(j)})),s.jsx(m,{[f]:"",ref:S,children:y})});h.displayName=d;function v(g){const x=i(e+"CollectionConsumer",g);return it.useCallback(()=>{const y=x.collectionRef.current;if(!y)return[];const _=Array.from(y.querySelectorAll(`[${f}]`));return Array.from(x.itemMap.values()).sort((T,N)=>_.indexOf(T.ref.current)-_.indexOf(N.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:a,Slot:u,ItemSlot:h},v,r]}var wo="Collapsible",[bj]=Vt(wo),[vj,Ga]=bj(wo),Gf=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[c,u]=vn({prop:r,defaultProp:o??!1,onChange:a,caller:wo});return s.jsx(vj,{scope:n,disabled:i,contentId:Rt(),open:c,onOpenToggle:p.useCallback(()=>u(d=>!d),[u]),children:s.jsx(Ae.div,{"data-state":Ya(c),"data-disabled":i?"":void 0,...l,ref:t})})});Gf.displayName=wo;var Jf="CollapsibleTrigger",Yf=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Ga(Jf,n);return s.jsx(Ae.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Ya(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:je(e.onClick,o.onOpenToggle)})});Yf.displayName=Jf;var Ja="CollapsibleContent",Xf=p.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Ga(Ja,e.__scopeCollapsible);return s.jsx(bt,{present:n||o.open,children:({present:i})=>s.jsx(yj,{...r,ref:t,present:i})})});Xf.displayName=Ja;var yj=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...i}=e,a=Ga(Ja,n),[l,c]=p.useState(r),u=p.useRef(null),d=Oe(t,u),f=p.useRef(0),m=f.current,h=p.useRef(0),v=h.current,g=a.open||l,x=p.useRef(g),b=p.useRef(void 0);return p.useEffect(()=>{const y=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(y)},[]),Xe(()=>{const y=u.current;if(y){b.current=b.current||{transitionDuration:y.style.transitionDuration,animationName:y.style.animationName},y.style.transitionDuration="0s",y.style.animationName="none";const _=y.getBoundingClientRect();f.current=_.height,h.current=_.width,x.current||(y.style.transitionDuration=b.current.transitionDuration,y.style.animationName=b.current.animationName),c(r)}},[a.open,r]),s.jsx(Ae.div,{"data-state":Ya(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g,...i,ref:d,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":v?`${v}px`:void 0,...e.style},children:g&&o})});function Ya(e){return e?"open":"closed"}var wj=Gf,kj=p.createContext(void 0);function ko(e){const t=p.useContext(kj);return e||t||"ltr"}function _j(e){const t=p.useRef({value:e,previous:e});return p.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}function jj(e){const[t,n]=p.useState(void 0);return Xe(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let a,l;if("borderBoxSize"in i){const c=i.borderBoxSize,u=Array.isArray(c)?c[0]:c;a=u.inlineSize,l=u.blockSize}else a=e.offsetWidth,l=e.offsetHeight;n({width:a,height:l})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const Sj=["top","right","bottom","left"],rn=Math.min,ct=Math.max,Ds=Math.round,ss=Math.floor,It=e=>({x:e,y:e}),Cj={left:"right",right:"left",bottom:"top",top:"bottom"},Nj={start:"end",end:"start"};function Li(e,t,n){return ct(e,rn(t,n))}function Ut(e,t){return typeof e=="function"?e(t):e}function Wt(e){return e.split("-")[0]}function rr(e){return e.split("-")[1]}function Xa(e){return e==="x"?"y":"x"}function Qa(e){return e==="y"?"height":"width"}const Tj=new Set(["top","bottom"]);function At(e){return Tj.has(Wt(e))?"y":"x"}function el(e){return Xa(At(e))}function Ej(e,t,n){n===void 0&&(n=!1);const r=rr(e),o=el(e),i=Qa(o);let a=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=$s(a)),[a,$s(a)]}function Aj(e){const t=$s(e);return[Di(e),t,Di(t)]}function Di(e){return e.replace(/start|end/g,t=>Nj[t])}const kc=["left","right"],_c=["right","left"],Rj=["top","bottom"],Ij=["bottom","top"];function zj(e,t,n){switch(e){case"top":case"bottom":return n?t?_c:kc:t?kc:_c;case"left":case"right":return t?Rj:Ij;default:return[]}}function Oj(e,t,n,r){const o=rr(e);let i=zj(Wt(e),n==="start",r);return o&&(i=i.map(a=>a+"-"+o),t&&(i=i.concat(i.map(Di)))),i}function $s(e){return e.replace(/left|right|bottom|top/g,t=>Cj[t])}function Pj(e){return{top:0,right:0,bottom:0,left:0,...e}}function Qf(e){return typeof e!="number"?Pj(e):{top:e,right:e,bottom:e,left:e}}function Fs(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function jc(e,t,n){let{reference:r,floating:o}=e;const i=At(t),a=el(t),l=Qa(a),c=Wt(t),u=i==="y",d=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,m=r[l]/2-o[l]/2;let h;switch(c){case"top":h={x:d,y:r.y-o.height};break;case"bottom":h={x:d,y:r.y+r.height};break;case"right":h={x:r.x+r.width,y:f};break;case"left":h={x:r.x-o.width,y:f};break;default:h={x:r.x,y:r.y}}switch(rr(t)){case"start":h[a]-=m*(n&&u?-1:1);break;case"end":h[a]+=m*(n&&u?-1:1);break}return h}async function Mj(e,t){var n;t===void 0&&(t={});const{x:r,y:o,platform:i,rects:a,elements:l,strategy:c}=e,{boundary:u="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:m=!1,padding:h=0}=Ut(t,e),v=Qf(h),x=l[m?f==="floating"?"reference":"floating":f],b=Fs(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(x)))==null||n?x:x.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(l.floating)),boundary:u,rootBoundary:d,strategy:c})),y=f==="floating"?{x:r,y:o,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(l.floating)),j=await(i.isElement==null?void 0:i.isElement(_))?await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1}:{x:1,y:1},S=Fs(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:_,strategy:c}):y);return{top:(b.top-S.top+v.top)/j.y,bottom:(S.bottom-b.bottom+v.bottom)/j.y,left:(b.left-S.left+v.left)/j.x,right:(S.right-b.right+v.right)/j.x}}const Lj=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=i.filter(Boolean),c=await(a.isRTL==null?void 0:a.isRTL(t));let u=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:f}=jc(u,r,c),m=r,h={},v=0;for(let x=0;x<l.length;x++){var g;const{name:b,fn:y}=l[x],{x:_,y:j,data:S,reset:T}=await y({x:d,y:f,initialPlacement:r,placement:m,strategy:o,middlewareData:h,rects:u,platform:{...a,detectOverflow:(g=a.detectOverflow)!=null?g:Mj},elements:{reference:e,floating:t}});d=_??d,f=j??f,h={...h,[b]:{...h[b],...S}},T&&v<=50&&(v++,typeof T=="object"&&(T.placement&&(m=T.placement),T.rects&&(u=T.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:o}):T.rects),{x:d,y:f}=jc(u,m,c)),x=-1)}return{x:d,y:f,placement:m,strategy:o,middlewareData:h}},Dj=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:a,elements:l,middlewareData:c}=t,{element:u,padding:d=0}=Ut(e,t)||{};if(u==null)return{};const f=Qf(d),m={x:n,y:r},h=el(o),v=Qa(h),g=await a.getDimensions(u),x=h==="y",b=x?"top":"left",y=x?"bottom":"right",_=x?"clientHeight":"clientWidth",j=i.reference[v]+i.reference[h]-m[h]-i.floating[v],S=m[h]-i.reference[h],T=await(a.getOffsetParent==null?void 0:a.getOffsetParent(u));let N=T?T[_]:0;(!N||!await(a.isElement==null?void 0:a.isElement(T)))&&(N=l.floating[_]||i.floating[v]);const R=j/2-S/2,I=N/2-g[v]/2-1,O=rn(f[b],I),K=rn(f[y],I),A=O,$=N-g[v]-K,k=N/2-g[v]/2+R,Z=Li(A,k,$),V=!c.arrow&&rr(o)!=null&&k!==Z&&i.reference[v]/2-(k<A?O:K)-g[v]/2<0,U=V?k<A?k-A:k-$:0;return{[h]:m[h]+U,data:{[h]:Z,centerOffset:k-Z-U,...V&&{alignmentOffset:U}},reset:V}}}),$j=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:a,initialPlacement:l,platform:c,elements:u}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:m,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:g=!0,...x}=Ut(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const b=Wt(o),y=At(l),_=Wt(l)===l,j=await(c.isRTL==null?void 0:c.isRTL(u.floating)),S=m||(_||!g?[$s(l)]:Aj(l)),T=v!=="none";!m&&T&&S.push(...Oj(l,g,v,j));const N=[l,...S],R=await c.detectOverflow(t,x),I=[];let O=((r=i.flip)==null?void 0:r.overflows)||[];if(d&&I.push(R[b]),f){const k=Ej(o,a,j);I.push(R[k[0]],R[k[1]])}if(O=[...O,{placement:o,overflows:I}],!I.every(k=>k<=0)){var K,A;const k=(((K=i.flip)==null?void 0:K.index)||0)+1,Z=N[k];if(Z&&(!(f==="alignment"?y!==At(Z):!1)||O.every(L=>At(L.placement)===y?L.overflows[0]>0:!0)))return{data:{index:k,overflows:O},reset:{placement:Z}};let V=(A=O.filter(U=>U.overflows[0]<=0).sort((U,L)=>U.overflows[1]-L.overflows[1])[0])==null?void 0:A.placement;if(!V)switch(h){case"bestFit":{var $;const U=($=O.filter(L=>{if(T){const W=At(L.placement);return W===y||W==="y"}return!0}).map(L=>[L.placement,L.overflows.filter(W=>W>0).reduce((W,ne)=>W+ne,0)]).sort((L,W)=>L[1]-W[1])[0])==null?void 0:$[0];U&&(V=U);break}case"initialPlacement":V=l;break}if(o!==V)return{reset:{placement:V}}}return{}}}};function Sc(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Cc(e){return Sj.some(t=>e[t]>=0)}const Fj=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n,platform:r}=t,{strategy:o="referenceHidden",...i}=Ut(e,t);switch(o){case"referenceHidden":{const a=await r.detectOverflow(t,{...i,elementContext:"reference"}),l=Sc(a,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:Cc(l)}}}case"escaped":{const a=await r.detectOverflow(t,{...i,altBoundary:!0}),l=Sc(a,n.floating);return{data:{escapedOffsets:l,escaped:Cc(l)}}}default:return{}}}}},ep=new Set(["left","top"]);async function Bj(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),a=Wt(n),l=rr(n),c=At(n)==="y",u=ep.has(a)?-1:1,d=i&&c?-1:1,f=Ut(t,e);let{mainAxis:m,crossAxis:h,alignmentAxis:v}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof v=="number"&&(h=l==="end"?v*-1:v),c?{x:h*d,y:m*u}:{x:m*u,y:h*d}}const Uj=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:a,middlewareData:l}=t,c=await Bj(t,e);return a===((n=l.offset)==null?void 0:n.placement)&&(r=l.arrow)!=null&&r.alignmentOffset?{}:{x:o+c.x,y:i+c.y,data:{...c,placement:a}}}}},Wj=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o,platform:i}=t,{mainAxis:a=!0,crossAxis:l=!1,limiter:c={fn:b=>{let{x:y,y:_}=b;return{x:y,y:_}}},...u}=Ut(e,t),d={x:n,y:r},f=await i.detectOverflow(t,u),m=At(Wt(o)),h=Xa(m);let v=d[h],g=d[m];if(a){const b=h==="y"?"top":"left",y=h==="y"?"bottom":"right",_=v+f[b],j=v-f[y];v=Li(_,v,j)}if(l){const b=m==="y"?"top":"left",y=m==="y"?"bottom":"right",_=g+f[b],j=g-f[y];g=Li(_,g,j)}const x=c.fn({...t,[h]:v,[m]:g});return{...x,data:{x:x.x-n,y:x.y-r,enabled:{[h]:a,[m]:l}}}}}},Hj=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:c=!0,crossAxis:u=!0}=Ut(e,t),d={x:n,y:r},f=At(o),m=Xa(f);let h=d[m],v=d[f];const g=Ut(l,t),x=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(c){const _=m==="y"?"height":"width",j=i.reference[m]-i.floating[_]+x.mainAxis,S=i.reference[m]+i.reference[_]-x.mainAxis;h<j?h=j:h>S&&(h=S)}if(u){var b,y;const _=m==="y"?"width":"height",j=ep.has(Wt(o)),S=i.reference[f]-i.floating[_]+(j&&((b=a.offset)==null?void 0:b[f])||0)+(j?0:x.crossAxis),T=i.reference[f]+i.reference[_]+(j?0:((y=a.offset)==null?void 0:y[f])||0)-(j?x.crossAxis:0);v<S?v=S:v>T&&(v=T)}return{[m]:h,[f]:v}}}},Zj=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:o,rects:i,platform:a,elements:l}=t,{apply:c=()=>{},...u}=Ut(e,t),d=await a.detectOverflow(t,u),f=Wt(o),m=rr(o),h=At(o)==="y",{width:v,height:g}=i.floating;let x,b;f==="top"||f==="bottom"?(x=f,b=m===(await(a.isRTL==null?void 0:a.isRTL(l.floating))?"start":"end")?"left":"right"):(b=f,x=m==="end"?"top":"bottom");const y=g-d.top-d.bottom,_=v-d.left-d.right,j=rn(g-d[x],y),S=rn(v-d[b],_),T=!t.middlewareData.shift;let N=j,R=S;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(R=_),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(N=y),T&&!m){const O=ct(d.left,0),K=ct(d.right,0),A=ct(d.top,0),$=ct(d.bottom,0);h?R=v-2*(O!==0||K!==0?O+K:ct(d.left,d.right)):N=g-2*(A!==0||$!==0?A+$:ct(d.top,d.bottom))}await c({...t,availableWidth:R,availableHeight:N});const I=await a.getDimensions(l.floating);return v!==I.width||g!==I.height?{reset:{rects:!0}}:{}}}};function _o(){return typeof window<"u"}function sr(e){return tp(e)?(e.nodeName||"").toLowerCase():"#document"}function dt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Pt(e){var t;return(t=(tp(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function tp(e){return _o()?e instanceof Node||e instanceof dt(e).Node:!1}function jt(e){return _o()?e instanceof Element||e instanceof dt(e).Element:!1}function zt(e){return _o()?e instanceof HTMLElement||e instanceof dt(e).HTMLElement:!1}function Nc(e){return!_o()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof dt(e).ShadowRoot}const Vj=new Set(["inline","contents"]);function Dr(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=St(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!Vj.has(o)}const qj=new Set(["table","td","th"]);function Kj(e){return qj.has(sr(e))}const Gj=[":popover-open",":modal"];function jo(e){return Gj.some(t=>{try{return e.matches(t)}catch{return!1}})}const Jj=["transform","translate","scale","rotate","perspective"],Yj=["transform","translate","scale","rotate","perspective","filter"],Xj=["paint","layout","strict","content"];function tl(e){const t=nl(),n=jt(e)?St(e):e;return Jj.some(r=>n[r]?n[r]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||Yj.some(r=>(n.willChange||"").includes(r))||Xj.some(r=>(n.contain||"").includes(r))}function Qj(e){let t=sn(e);for(;zt(t)&&!Jn(t);){if(tl(t))return t;if(jo(t))return null;t=sn(t)}return null}function nl(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const eS=new Set(["html","body","#document"]);function Jn(e){return eS.has(sr(e))}function St(e){return dt(e).getComputedStyle(e)}function So(e){return jt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function sn(e){if(sr(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Nc(e)&&e.host||Pt(e);return Nc(t)?t.host:t}function np(e){const t=sn(e);return Jn(t)?e.ownerDocument?e.ownerDocument.body:e.body:zt(t)&&Dr(t)?t:np(t)}function Cr(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=np(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),a=dt(o);if(i){const l=$i(a);return t.concat(a,a.visualViewport||[],Dr(o)?o:[],l&&n?Cr(l):[])}return t.concat(o,Cr(o,[],n))}function $i(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function rp(e){const t=St(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=zt(e),i=o?e.offsetWidth:n,a=o?e.offsetHeight:r,l=Ds(n)!==i||Ds(r)!==a;return l&&(n=i,r=a),{width:n,height:r,$:l}}function rl(e){return jt(e)?e:e.contextElement}function Un(e){const t=rl(e);if(!zt(t))return It(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=rp(t);let a=(i?Ds(n.width):n.width)/r,l=(i?Ds(n.height):n.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!l||!Number.isFinite(l))&&(l=1),{x:a,y:l}}const tS=It(0);function sp(e){const t=dt(e);return!nl()||!t.visualViewport?tS:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function nS(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==dt(e)?!1:t}function wn(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=rl(e);let a=It(1);t&&(r?jt(r)&&(a=Un(r)):a=Un(e));const l=nS(i,n,r)?sp(i):It(0);let c=(o.left+l.x)/a.x,u=(o.top+l.y)/a.y,d=o.width/a.x,f=o.height/a.y;if(i){const m=dt(i),h=r&&jt(r)?dt(r):r;let v=m,g=$i(v);for(;g&&r&&h!==v;){const x=Un(g),b=g.getBoundingClientRect(),y=St(g),_=b.left+(g.clientLeft+parseFloat(y.paddingLeft))*x.x,j=b.top+(g.clientTop+parseFloat(y.paddingTop))*x.y;c*=x.x,u*=x.y,d*=x.x,f*=x.y,c+=_,u+=j,v=dt(g),g=$i(v)}}return Fs({width:d,height:f,x:c,y:u})}function Co(e,t){const n=So(e).scrollLeft;return t?t.left+n:wn(Pt(e)).left+n}function op(e,t){const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-Co(e,n),o=n.top+t.scrollTop;return{x:r,y:o}}function rS(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i=o==="fixed",a=Pt(r),l=t?jo(t.floating):!1;if(r===a||l&&i)return n;let c={scrollLeft:0,scrollTop:0},u=It(1);const d=It(0),f=zt(r);if((f||!f&&!i)&&((sr(r)!=="body"||Dr(a))&&(c=So(r)),zt(r))){const h=wn(r);u=Un(r),d.x=h.x+r.clientLeft,d.y=h.y+r.clientTop}const m=a&&!f&&!i?op(a,c):It(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-c.scrollLeft*u.x+d.x+m.x,y:n.y*u.y-c.scrollTop*u.y+d.y+m.y}}function sS(e){return Array.from(e.getClientRects())}function oS(e){const t=Pt(e),n=So(e),r=e.ownerDocument.body,o=ct(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=ct(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let a=-n.scrollLeft+Co(e);const l=-n.scrollTop;return St(r).direction==="rtl"&&(a+=ct(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:a,y:l}}const Tc=25;function iS(e,t){const n=dt(e),r=Pt(e),o=n.visualViewport;let i=r.clientWidth,a=r.clientHeight,l=0,c=0;if(o){i=o.width,a=o.height;const d=nl();(!d||d&&t==="fixed")&&(l=o.offsetLeft,c=o.offsetTop)}const u=Co(r);if(u<=0){const d=r.ownerDocument,f=d.body,m=getComputedStyle(f),h=d.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,v=Math.abs(r.clientWidth-f.clientWidth-h);v<=Tc&&(i-=v)}else u<=Tc&&(i+=u);return{width:i,height:a,x:l,y:c}}const aS=new Set(["absolute","fixed"]);function lS(e,t){const n=wn(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=zt(e)?Un(e):It(1),a=e.clientWidth*i.x,l=e.clientHeight*i.y,c=o*i.x,u=r*i.y;return{width:a,height:l,x:c,y:u}}function Ec(e,t,n){let r;if(t==="viewport")r=iS(e,n);else if(t==="document")r=oS(Pt(e));else if(jt(t))r=lS(t,n);else{const o=sp(e);r={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return Fs(r)}function ip(e,t){const n=sn(e);return n===t||!jt(n)||Jn(n)?!1:St(n).position==="fixed"||ip(n,t)}function cS(e,t){const n=t.get(e);if(n)return n;let r=Cr(e,[],!1).filter(l=>jt(l)&&sr(l)!=="body"),o=null;const i=St(e).position==="fixed";let a=i?sn(e):e;for(;jt(a)&&!Jn(a);){const l=St(a),c=tl(a);!c&&l.position==="fixed"&&(o=null),(i?!c&&!o:!c&&l.position==="static"&&!!o&&aS.has(o.position)||Dr(a)&&!c&&ip(e,a))?r=r.filter(d=>d!==a):o=l,a=sn(a)}return t.set(e,r),r}function uS(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const a=[...n==="clippingAncestors"?jo(t)?[]:cS(t,this._c):[].concat(n),r],l=a[0],c=a.reduce((u,d)=>{const f=Ec(t,d,o);return u.top=ct(f.top,u.top),u.right=rn(f.right,u.right),u.bottom=rn(f.bottom,u.bottom),u.left=ct(f.left,u.left),u},Ec(t,l,o));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function dS(e){const{width:t,height:n}=rp(e);return{width:t,height:n}}function fS(e,t,n){const r=zt(t),o=Pt(t),i=n==="fixed",a=wn(e,!0,i,t);let l={scrollLeft:0,scrollTop:0};const c=It(0);function u(){c.x=Co(o)}if(r||!r&&!i)if((sr(t)!=="body"||Dr(o))&&(l=So(t)),r){const h=wn(t,!0,i,t);c.x=h.x+t.clientLeft,c.y=h.y+t.clientTop}else o&&u();i&&!r&&o&&u();const d=o&&!r&&!i?op(o,l):It(0),f=a.left+l.scrollLeft-c.x-d.x,m=a.top+l.scrollTop-c.y-d.y;return{x:f,y:m,width:a.width,height:a.height}}function ei(e){return St(e).position==="static"}function Ac(e,t){if(!zt(e)||St(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Pt(e)===n&&(n=n.ownerDocument.body),n}function ap(e,t){const n=dt(e);if(jo(e))return n;if(!zt(e)){let o=sn(e);for(;o&&!Jn(o);){if(jt(o)&&!ei(o))return o;o=sn(o)}return n}let r=Ac(e,t);for(;r&&Kj(r)&&ei(r);)r=Ac(r,t);return r&&Jn(r)&&ei(r)&&!tl(r)?n:r||Qj(e)||n}const pS=async function(e){const t=this.getOffsetParent||ap,n=this.getDimensions,r=await n(e.floating);return{reference:fS(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function hS(e){return St(e).direction==="rtl"}const mS={convertOffsetParentRelativeRectToViewportRelativeRect:rS,getDocumentElement:Pt,getClippingRect:uS,getOffsetParent:ap,getElementRects:pS,getClientRects:sS,getDimensions:dS,getScale:Un,isElement:jt,isRTL:hS};function lp(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function gS(e,t){let n=null,r;const o=Pt(e);function i(){var l;clearTimeout(r),(l=n)==null||l.disconnect(),n=null}function a(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),i();const u=e.getBoundingClientRect(),{left:d,top:f,width:m,height:h}=u;if(l||t(),!m||!h)return;const v=ss(f),g=ss(o.clientWidth-(d+m)),x=ss(o.clientHeight-(f+h)),b=ss(d),_={rootMargin:-v+"px "+-g+"px "+-x+"px "+-b+"px",threshold:ct(0,rn(1,c))||1};let j=!0;function S(T){const N=T[0].intersectionRatio;if(N!==c){if(!j)return a();N?a(!1,N):r=setTimeout(()=>{a(!1,1e-7)},1e3)}N===1&&!lp(u,e.getBoundingClientRect())&&a(),j=!1}try{n=new IntersectionObserver(S,{..._,root:o.ownerDocument})}catch{n=new IntersectionObserver(S,_)}n.observe(e)}return a(!0),i}function xS(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=r,u=rl(e),d=o||i?[...u?Cr(u):[],...Cr(t)]:[];d.forEach(b=>{o&&b.addEventListener("scroll",n,{passive:!0}),i&&b.addEventListener("resize",n)});const f=u&&l?gS(u,n):null;let m=-1,h=null;a&&(h=new ResizeObserver(b=>{let[y]=b;y&&y.target===u&&h&&(h.unobserve(t),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var _;(_=h)==null||_.observe(t)})),n()}),u&&!c&&h.observe(u),h.observe(t));let v,g=c?wn(e):null;c&&x();function x(){const b=wn(e);g&&!lp(g,b)&&n(),g=b,v=requestAnimationFrame(x)}return n(),()=>{var b;d.forEach(y=>{o&&y.removeEventListener("scroll",n),i&&y.removeEventListener("resize",n)}),f?.(),(b=h)==null||b.disconnect(),h=null,c&&cancelAnimationFrame(v)}}const bS=Uj,vS=Wj,yS=$j,wS=Zj,kS=Fj,Rc=Dj,_S=Hj,jS=(e,t,n)=>{const r=new Map,o={platform:mS,...n},i={...o.platform,_c:r};return Lj(e,t,{...o,platform:i})};var SS=typeof document<"u",CS=function(){},_s=SS?p.useLayoutEffect:CS;function Bs(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 n,r,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Bs(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!Bs(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function cp(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Ic(e,t){const n=cp(e);return Math.round(t*n)/n}function ti(e){const t=p.useRef(e);return _s(()=>{t.current=e}),t}function NS(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:a}={},transform:l=!0,whileElementsMounted:c,open:u}=e,[d,f]=p.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[m,h]=p.useState(r);Bs(m,r)||h(r);const[v,g]=p.useState(null),[x,b]=p.useState(null),y=p.useCallback(L=>{L!==T.current&&(T.current=L,g(L))},[]),_=p.useCallback(L=>{L!==N.current&&(N.current=L,b(L))},[]),j=i||v,S=a||x,T=p.useRef(null),N=p.useRef(null),R=p.useRef(d),I=c!=null,O=ti(c),K=ti(o),A=ti(u),$=p.useCallback(()=>{if(!T.current||!N.current)return;const L={placement:t,strategy:n,middleware:m};K.current&&(L.platform=K.current),jS(T.current,N.current,L).then(W=>{const ne={...W,isPositioned:A.current!==!1};k.current&&!Bs(R.current,ne)&&(R.current=ne,Rr.flushSync(()=>{f(ne)}))})},[m,t,n,K,A]);_s(()=>{u===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,f(L=>({...L,isPositioned:!1})))},[u]);const k=p.useRef(!1);_s(()=>(k.current=!0,()=>{k.current=!1}),[]),_s(()=>{if(j&&(T.current=j),S&&(N.current=S),j&&S){if(O.current)return O.current(j,S,$);$()}},[j,S,$,O,I]);const Z=p.useMemo(()=>({reference:T,floating:N,setReference:y,setFloating:_}),[y,_]),V=p.useMemo(()=>({reference:j,floating:S}),[j,S]),U=p.useMemo(()=>{const L={position:n,left:0,top:0};if(!V.floating)return L;const W=Ic(V.floating,d.x),ne=Ic(V.floating,d.y);return l?{...L,transform:"translate("+W+"px, "+ne+"px)",...cp(V.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:W,top:ne}},[n,l,V.floating,d.x,d.y]);return p.useMemo(()=>({...d,update:$,refs:Z,elements:V,floatingStyles:U}),[d,$,Z,V,U])}const TS=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Rc({element:r.current,padding:o}).fn(n):{}:r?Rc({element:r,padding:o}).fn(n):{}}}},ES=(e,t)=>({...bS(e),options:[e,t]}),AS=(e,t)=>({...vS(e),options:[e,t]}),RS=(e,t)=>({..._S(e),options:[e,t]}),IS=(e,t)=>({...yS(e),options:[e,t]}),zS=(e,t)=>({...wS(e),options:[e,t]}),OS=(e,t)=>({...kS(e),options:[e,t]}),PS=(e,t)=>({...TS(e),options:[e,t]});var MS="Arrow",up=p.forwardRef((e,t)=>{const{children:n,width:r=10,height:o=5,...i}=e;return s.jsx(Ae.svg,{...i,ref:t,width:r,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:s.jsx("polygon",{points:"0,0 30,0 15,10"})})});up.displayName=MS;var LS=up,sl="Popper",[dp,No]=Vt(sl),[DS,fp]=dp(sl),pp=e=>{const{__scopePopper:t,children:n}=e,[r,o]=p.useState(null);return s.jsx(DS,{scope:t,anchor:r,onAnchorChange:o,children:n})};pp.displayName=sl;var hp="PopperAnchor",mp=p.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=fp(hp,n),a=p.useRef(null),l=Oe(t,a),c=p.useRef(null);return p.useEffect(()=>{const u=c.current;c.current=r?.current||a.current,u!==c.current&&i.onAnchorChange(c.current)}),r?null:s.jsx(Ae.div,{...o,ref:l})});mp.displayName=hp;var ol="PopperContent",[$S,FS]=dp(ol),gp=p.forwardRef((e,t)=>{const{__scopePopper:n,side:r="bottom",sideOffset:o=0,align:i="center",alignOffset:a=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:u=[],collisionPadding:d=0,sticky:f="partial",hideWhenDetached:m=!1,updatePositionStrategy:h="optimized",onPlaced:v,...g}=e,x=fp(ol,n),[b,y]=p.useState(null),_=Oe(t,ae=>y(ae)),[j,S]=p.useState(null),T=jj(j),N=T?.width??0,R=T?.height??0,I=r+(i!=="center"?"-"+i:""),O=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},K=Array.isArray(u)?u:[u],A=K.length>0,$={padding:O,boundary:K.filter(US),altBoundary:A},{refs:k,floatingStyles:Z,placement:V,isPositioned:U,middlewareData:L}=NS({strategy:"fixed",placement:I,whileElementsMounted:(...ae)=>xS(...ae,{animationFrame:h==="always"}),elements:{reference:x.anchor},middleware:[ES({mainAxis:o+R,alignmentAxis:a}),c&&AS({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?RS():void 0,...$}),c&&IS({...$}),zS({...$,apply:({elements:ae,rects:ge,availableWidth:xe,availableHeight:be})=>{const{width:te,height:le}=ge.reference,me=ae.floating.style;me.setProperty("--radix-popper-available-width",`${xe}px`),me.setProperty("--radix-popper-available-height",`${be}px`),me.setProperty("--radix-popper-anchor-width",`${te}px`),me.setProperty("--radix-popper-anchor-height",`${le}px`)}}),j&&PS({element:j,padding:l}),WS({arrowWidth:N,arrowHeight:R}),m&&OS({strategy:"referenceHidden",...$})]}),[W,ne]=vp(V),B=st(v);Xe(()=>{U&&B?.()},[U,B]);const F=L.arrow?.x,ue=L.arrow?.y,se=L.arrow?.centerOffset!==0,[oe,_e]=p.useState();return Xe(()=>{b&&_e(window.getComputedStyle(b).zIndex)},[b]),s.jsx("div",{ref:k.setFloating,"data-radix-popper-content-wrapper":"",style:{...Z,transform:U?Z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:oe,"--radix-popper-transform-origin":[L.transformOrigin?.x,L.transformOrigin?.y].join(" "),...L.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:s.jsx($S,{scope:n,placedSide:W,onArrowChange:S,arrowX:F,arrowY:ue,shouldHideArrow:se,children:s.jsx(Ae.div,{"data-side":W,"data-align":ne,...g,ref:_,style:{...g.style,animation:U?void 0:"none"}})})})});gp.displayName=ol;var xp="PopperArrow",BS={top:"bottom",right:"left",bottom:"top",left:"right"},bp=p.forwardRef(function(t,n){const{__scopePopper:r,...o}=t,i=FS(xp,r),a=BS[i.placedSide];return s.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:s.jsx(LS,{...o,ref:n,style:{...o.style,display:"block"}})})});bp.displayName=xp;function US(e){return e!==null}var WS=e=>({name:"transformOrigin",options:e,fn(t){const{placement:n,rects:r,middlewareData:o}=t,a=o.arrow?.centerOffset!==0,l=a?0:e.arrowWidth,c=a?0:e.arrowHeight,[u,d]=vp(n),f={start:"0%",center:"50%",end:"100%"}[d],m=(o.arrow?.x??0)+l/2,h=(o.arrow?.y??0)+c/2;let v="",g="";return u==="bottom"?(v=a?f:`${m}px`,g=`${-c}px`):u==="top"?(v=a?f:`${m}px`,g=`${r.floating.height+c}px`):u==="right"?(v=`${-c}px`,g=a?f:`${h}px`):u==="left"&&(v=`${r.floating.width+c}px`,g=a?f:`${h}px`),{data:{x:v,y:g}}}});function vp(e){const[t,n="center"]=e.split("-");return[t,n]}var yp=pp,wp=mp,kp=gp,_p=bp,ni="rovingFocusGroup.onEntryFocus",HS={bubbles:!1,cancelable:!0},$r="RovingFocusGroup",[Fi,jp,ZS]=Kf($r),[VS,Sp]=Vt($r,[ZS]),[qS,KS]=VS($r),Cp=p.forwardRef((e,t)=>s.jsx(Fi.Provider,{scope:e.__scopeRovingFocusGroup,children:s.jsx(Fi.Slot,{scope:e.__scopeRovingFocusGroup,children:s.jsx(GS,{...e,ref:t})})}));Cp.displayName=$r;var GS=p.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:i,currentTabStopId:a,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:c,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,m=p.useRef(null),h=Oe(t,m),v=ko(i),[g,x]=vn({prop:a,defaultProp:l??null,onChange:c,caller:$r}),[b,y]=p.useState(!1),_=st(u),j=jp(n),S=p.useRef(!1),[T,N]=p.useState(0);return p.useEffect(()=>{const R=m.current;if(R)return R.addEventListener(ni,_),()=>R.removeEventListener(ni,_)},[_]),s.jsx(qS,{scope:n,orientation:r,dir:v,loop:o,currentTabStopId:g,onItemFocus:p.useCallback(R=>x(R),[x]),onItemShiftTab:p.useCallback(()=>y(!0),[]),onFocusableItemAdd:p.useCallback(()=>N(R=>R+1),[]),onFocusableItemRemove:p.useCallback(()=>N(R=>R-1),[]),children:s.jsx(Ae.div,{tabIndex:b||T===0?-1:0,"data-orientation":r,...f,ref:h,style:{outline:"none",...e.style},onMouseDown:je(e.onMouseDown,()=>{S.current=!0}),onFocus:je(e.onFocus,R=>{const I=!S.current;if(R.target===R.currentTarget&&I&&!b){const O=new CustomEvent(ni,HS);if(R.currentTarget.dispatchEvent(O),!O.defaultPrevented){const K=j().filter(V=>V.focusable),A=K.find(V=>V.active),$=K.find(V=>V.id===g),Z=[A,$,...K].filter(Boolean).map(V=>V.ref.current);Ep(Z,d)}}S.current=!1}),onBlur:je(e.onBlur,()=>y(!1))})})}),Np="RovingFocusGroupItem",Tp=p.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:i,children:a,...l}=e,c=Rt(),u=i||c,d=KS(Np,n),f=d.currentTabStopId===u,m=jp(n),{onFocusableItemAdd:h,onFocusableItemRemove:v,currentTabStopId:g}=d;return p.useEffect(()=>{if(r)return h(),()=>v()},[r,h,v]),s.jsx(Fi.ItemSlot,{scope:n,id:u,focusable:r,active:o,children:s.jsx(Ae.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...l,ref:t,onMouseDown:je(e.onMouseDown,x=>{r?d.onItemFocus(u):x.preventDefault()}),onFocus:je(e.onFocus,()=>d.onItemFocus(u)),onKeyDown:je(e.onKeyDown,x=>{if(x.key==="Tab"&&x.shiftKey){d.onItemShiftTab();return}if(x.target!==x.currentTarget)return;const b=XS(x,d.orientation,d.dir);if(b!==void 0){if(x.metaKey||x.ctrlKey||x.altKey||x.shiftKey)return;x.preventDefault();let _=m().filter(j=>j.focusable).map(j=>j.ref.current);if(b==="last")_.reverse();else if(b==="prev"||b==="next"){b==="prev"&&_.reverse();const j=_.indexOf(x.currentTarget);_=d.loop?QS(_,j+1):_.slice(j+1)}setTimeout(()=>Ep(_))}}),children:typeof a=="function"?a({isCurrentTabStop:f,hasTabStop:g!=null}):a})})});Tp.displayName=Np;var JS={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function YS(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function XS(e,t,n){const r=YS(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return JS[r]}function Ep(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function QS(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var eC=Cp,tC=Tp;function Bi(e,[t,n]){return Math.min(n,Math.max(t,e))}function nC(e,t){return p.useReducer((n,r)=>t[n][r]??n,e)}var il="ScrollArea",[Ap]=Vt(il),[rC,vt]=Ap(il),Rp=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,type:r="hover",dir:o,scrollHideDelay:i=600,...a}=e,[l,c]=p.useState(null),[u,d]=p.useState(null),[f,m]=p.useState(null),[h,v]=p.useState(null),[g,x]=p.useState(null),[b,y]=p.useState(0),[_,j]=p.useState(0),[S,T]=p.useState(!1),[N,R]=p.useState(!1),I=Oe(t,K=>c(K)),O=ko(o);return s.jsx(rC,{scope:n,type:r,dir:O,scrollHideDelay:i,scrollArea:l,viewport:u,onViewportChange:d,content:f,onContentChange:m,scrollbarX:h,onScrollbarXChange:v,scrollbarXEnabled:S,onScrollbarXEnabledChange:T,scrollbarY:g,onScrollbarYChange:x,scrollbarYEnabled:N,onScrollbarYEnabledChange:R,onCornerWidthChange:y,onCornerHeightChange:j,children:s.jsx(Ae.div,{dir:O,...a,ref:I,style:{position:"relative","--radix-scroll-area-corner-width":b+"px","--radix-scroll-area-corner-height":_+"px",...e.style}})})});Rp.displayName=il;var Ip="ScrollAreaViewport",zp=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,children:r,nonce:o,...i}=e,a=vt(Ip,n),l=p.useRef(null),c=Oe(t,l,a.onViewportChange);return s.jsxs(s.Fragment,{children:[s.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}),s.jsx(Ae.div,{"data-radix-scroll-area-viewport":"",...i,ref:c,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:s.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:r})})]})});zp.displayName=Ip;var Mt="ScrollAreaScrollbar",Op=p.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=vt(Mt,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:a}=o,l=e.orientation==="horizontal";return p.useEffect(()=>(l?i(!0):a(!0),()=>{l?i(!1):a(!1)}),[l,i,a]),o.type==="hover"?s.jsx(sC,{...r,ref:t,forceMount:n}):o.type==="scroll"?s.jsx(oC,{...r,ref:t,forceMount:n}):o.type==="auto"?s.jsx(Pp,{...r,ref:t,forceMount:n}):o.type==="always"?s.jsx(al,{...r,ref:t}):null});Op.displayName=Mt;var sC=p.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=vt(Mt,e.__scopeScrollArea),[i,a]=p.useState(!1);return p.useEffect(()=>{const l=o.scrollArea;let c=0;if(l){const u=()=>{window.clearTimeout(c),a(!0)},d=()=>{c=window.setTimeout(()=>a(!1),o.scrollHideDelay)};return l.addEventListener("pointerenter",u),l.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),l.removeEventListener("pointerenter",u),l.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),s.jsx(bt,{present:n||i,children:s.jsx(Pp,{"data-state":i?"visible":"hidden",...r,ref:t})})}),oC=p.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=vt(Mt,e.__scopeScrollArea),i=e.orientation==="horizontal",a=Eo(()=>c("SCROLL_END"),100),[l,c]=nC("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 p.useEffect(()=>{if(l==="idle"){const u=window.setTimeout(()=>c("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(u)}},[l,o.scrollHideDelay,c]),p.useEffect(()=>{const u=o.viewport,d=i?"scrollLeft":"scrollTop";if(u){let f=u[d];const m=()=>{const h=u[d];f!==h&&(c("SCROLL"),a()),f=h};return u.addEventListener("scroll",m),()=>u.removeEventListener("scroll",m)}},[o.viewport,i,c,a]),s.jsx(bt,{present:n||l!=="hidden",children:s.jsx(al,{"data-state":l==="hidden"?"hidden":"visible",...r,ref:t,onPointerEnter:je(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:je(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),Pp=p.forwardRef((e,t)=>{const n=vt(Mt,e.__scopeScrollArea),{forceMount:r,...o}=e,[i,a]=p.useState(!1),l=e.orientation==="horizontal",c=Eo(()=>{if(n.viewport){const u=n.viewport.offsetWidth<n.viewport.scrollWidth,d=n.viewport.offsetHeight<n.viewport.scrollHeight;a(l?u:d)}},10);return Yn(n.viewport,c),Yn(n.content,c),s.jsx(bt,{present:r||i,children:s.jsx(al,{"data-state":i?"visible":"hidden",...o,ref:t})})}),al=p.forwardRef((e,t)=>{const{orientation:n="vertical",...r}=e,o=vt(Mt,e.__scopeScrollArea),i=p.useRef(null),a=p.useRef(0),[l,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=Fp(l.viewport,l.content),d={...r,sizes:l,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:m=>i.current=m,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:m=>a.current=m};function f(m,h){return dC(m,a.current,l,h)}return n==="horizontal"?s.jsx(iC,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const m=o.viewport.scrollLeft,h=zc(m,l,o.dir);i.current.style.transform=`translate3d(${h}px, 0, 0)`}},onWheelScroll:m=>{o.viewport&&(o.viewport.scrollLeft=m)},onDragScroll:m=>{o.viewport&&(o.viewport.scrollLeft=f(m,o.dir))}}):n==="vertical"?s.jsx(aC,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const m=o.viewport.scrollTop,h=zc(m,l);i.current.style.transform=`translate3d(0, ${h}px, 0)`}},onWheelScroll:m=>{o.viewport&&(o.viewport.scrollTop=m)},onDragScroll:m=>{o.viewport&&(o.viewport.scrollTop=f(m))}}):null}),iC=p.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,...o}=e,i=vt(Mt,e.__scopeScrollArea),[a,l]=p.useState(),c=p.useRef(null),u=Oe(t,c,i.onScrollbarXChange);return p.useEffect(()=>{c.current&&l(getComputedStyle(c.current))},[c]),s.jsx(Lp,{"data-orientation":"horizontal",...o,ref:u,sizes:n,style:{bottom:0,left:i.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:i.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":To(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,f)=>{if(i.viewport){const m=i.viewport.scrollLeft+d.deltaX;e.onWheelScroll(m),Up(m,f)&&d.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&r({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Ws(a.paddingLeft),paddingEnd:Ws(a.paddingRight)}})}})}),aC=p.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,...o}=e,i=vt(Mt,e.__scopeScrollArea),[a,l]=p.useState(),c=p.useRef(null),u=Oe(t,c,i.onScrollbarYChange);return p.useEffect(()=>{c.current&&l(getComputedStyle(c.current))},[c]),s.jsx(Lp,{"data-orientation":"vertical",...o,ref:u,sizes:n,style:{top:0,right:i.dir==="ltr"?0:void 0,left:i.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":To(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,f)=>{if(i.viewport){const m=i.viewport.scrollTop+d.deltaY;e.onWheelScroll(m),Up(m,f)&&d.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&r({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Ws(a.paddingTop),paddingEnd:Ws(a.paddingBottom)}})}})}),[lC,Mp]=Ap(Mt),Lp=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,sizes:r,hasThumb:o,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:f,...m}=e,h=vt(Mt,n),[v,g]=p.useState(null),x=Oe(t,I=>g(I)),b=p.useRef(null),y=p.useRef(""),_=h.viewport,j=r.content-r.viewport,S=st(d),T=st(c),N=Eo(f,10);function R(I){if(b.current){const O=I.clientX-b.current.left,K=I.clientY-b.current.top;u({x:O,y:K})}}return p.useEffect(()=>{const I=O=>{const K=O.target;v?.contains(K)&&S(O,j)};return document.addEventListener("wheel",I,{passive:!1}),()=>document.removeEventListener("wheel",I,{passive:!1})},[_,v,j,S]),p.useEffect(T,[r,T]),Yn(v,N),Yn(h.content,N),s.jsx(lC,{scope:n,scrollbar:v,hasThumb:o,onThumbChange:st(i),onThumbPointerUp:st(a),onThumbPositionChange:T,onThumbPointerDown:st(l),children:s.jsx(Ae.div,{...m,ref:x,style:{position:"absolute",...m.style},onPointerDown:je(e.onPointerDown,I=>{I.button===0&&(I.target.setPointerCapture(I.pointerId),b.current=v.getBoundingClientRect(),y.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",h.viewport&&(h.viewport.style.scrollBehavior="auto"),R(I))}),onPointerMove:je(e.onPointerMove,R),onPointerUp:je(e.onPointerUp,I=>{const O=I.target;O.hasPointerCapture(I.pointerId)&&O.releasePointerCapture(I.pointerId),document.body.style.webkitUserSelect=y.current,h.viewport&&(h.viewport.style.scrollBehavior=""),b.current=null})})})}),Us="ScrollAreaThumb",Dp=p.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Mp(Us,e.__scopeScrollArea);return s.jsx(bt,{present:n||o.hasThumb,children:s.jsx(cC,{ref:t,...r})})}),cC=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,style:r,...o}=e,i=vt(Us,n),a=Mp(Us,n),{onThumbPositionChange:l}=a,c=Oe(t,f=>a.onThumbChange(f)),u=p.useRef(void 0),d=Eo(()=>{u.current&&(u.current(),u.current=void 0)},100);return p.useEffect(()=>{const f=i.viewport;if(f){const m=()=>{if(d(),!u.current){const h=fC(f,l);u.current=h,l()}};return l(),f.addEventListener("scroll",m),()=>f.removeEventListener("scroll",m)}},[i.viewport,d,l]),s.jsx(Ae.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...r},onPointerDownCapture:je(e.onPointerDownCapture,f=>{const h=f.target.getBoundingClientRect(),v=f.clientX-h.left,g=f.clientY-h.top;a.onThumbPointerDown({x:v,y:g})}),onPointerUp:je(e.onPointerUp,a.onThumbPointerUp)})});Dp.displayName=Us;var ll="ScrollAreaCorner",$p=p.forwardRef((e,t)=>{const n=vt(ll,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&r?s.jsx(uC,{...e,ref:t}):null});$p.displayName=ll;var uC=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,...r}=e,o=vt(ll,n),[i,a]=p.useState(0),[l,c]=p.useState(0),u=!!(i&&l);return Yn(o.scrollbarX,()=>{const d=o.scrollbarX?.offsetHeight||0;o.onCornerHeightChange(d),c(d)}),Yn(o.scrollbarY,()=>{const d=o.scrollbarY?.offsetWidth||0;o.onCornerWidthChange(d),a(d)}),u?s.jsx(Ae.div,{...r,ref:t,style:{width:i,height:l,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function Ws(e){return e?parseInt(e,10):0}function Fp(e,t){const n=e/t;return isNaN(n)?0:n}function To(e){const t=Fp(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function dC(e,t,n,r="ltr"){const o=To(n),i=o/2,a=t||i,l=o-a,c=n.scrollbar.paddingStart+a,u=n.scrollbar.size-n.scrollbar.paddingEnd-l,d=n.content-n.viewport,f=r==="ltr"?[0,d]:[d*-1,0];return Bp([c,u],f)(e)}function zc(e,t,n="ltr"){const r=To(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,a=t.content-t.viewport,l=i-r,c=n==="ltr"?[0,a]:[a*-1,0],u=Bi(e,c);return Bp([0,a],[0,l])(u)}function Bp(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Up(e,t){return e>0&&e<t}var fC=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function o(){const i={left:e.scrollLeft,top:e.scrollTop},a=n.left!==i.left,l=n.top!==i.top;(a||l)&&t(),n=i,r=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(r)};function Eo(e,t){const n=st(e),r=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(r.current),[]),p.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function Yn(e,t){const n=st(t);Xe(()=>{let r=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(n)});return o.observe(e),()=>{window.cancelAnimationFrame(r),o.unobserve(e)}}},[e,n])}var pC=Rp,hC=zp,mC=$p,gC=[" ","Enter","ArrowUp","ArrowDown"],xC=[" ","Enter"],kn="Select",[Ao,Ro,bC]=Kf(kn),[or]=Vt(kn,[bC,No]),Io=No(),[vC,ln]=or(kn),[yC,wC]=or(kn),Wp=e=>{const{__scopeSelect:t,children:n,open:r,defaultOpen:o,onOpenChange:i,value:a,defaultValue:l,onValueChange:c,dir:u,name:d,autoComplete:f,disabled:m,required:h,form:v}=e,g=Io(t),[x,b]=p.useState(null),[y,_]=p.useState(null),[j,S]=p.useState(!1),T=ko(u),[N,R]=vn({prop:r,defaultProp:o??!1,onChange:i,caller:kn}),[I,O]=vn({prop:a,defaultProp:l,onChange:c,caller:kn}),K=p.useRef(null),A=x?v||!!x.closest("form"):!0,[$,k]=p.useState(new Set),Z=Array.from($).map(V=>V.props.value).join(";");return s.jsx(yp,{...g,children:s.jsxs(vC,{required:h,scope:t,trigger:x,onTriggerChange:b,valueNode:y,onValueNodeChange:_,valueNodeHasChildren:j,onValueNodeHasChildrenChange:S,contentId:Rt(),value:I,onValueChange:O,open:N,onOpenChange:R,dir:T,triggerPointerDownPosRef:K,disabled:m,children:[s.jsx(Ao.Provider,{scope:t,children:s.jsx(yC,{scope:e.__scopeSelect,onNativeOptionAdd:p.useCallback(V=>{k(U=>new Set(U).add(V))},[]),onNativeOptionRemove:p.useCallback(V=>{k(U=>{const L=new Set(U);return L.delete(V),L})},[]),children:n})}),A?s.jsxs(dh,{"aria-hidden":!0,required:h,tabIndex:-1,name:d,autoComplete:f,value:I,onChange:V=>O(V.target.value),disabled:m,form:v,children:[I===void 0?s.jsx("option",{value:""}):null,Array.from($)]},Z):null]})})};Wp.displayName=kn;var Hp="SelectTrigger",Zp=p.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:r=!1,...o}=e,i=Io(n),a=ln(Hp,n),l=a.disabled||r,c=Oe(t,a.onTriggerChange),u=Ro(n),d=p.useRef("touch"),[f,m,h]=ph(g=>{const x=u().filter(_=>!_.disabled),b=x.find(_=>_.value===a.value),y=hh(x,g,b);y!==void 0&&a.onValueChange(y.value)}),v=g=>{l||(a.onOpenChange(!0),h()),g&&(a.triggerPointerDownPosRef.current={x:Math.round(g.pageX),y:Math.round(g.pageY)})};return s.jsx(wp,{asChild:!0,...i,children:s.jsx(Ae.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:l,"data-disabled":l?"":void 0,"data-placeholder":fh(a.value)?"":void 0,...o,ref:c,onClick:je(o.onClick,g=>{g.currentTarget.focus(),d.current!=="mouse"&&v(g)}),onPointerDown:je(o.onPointerDown,g=>{d.current=g.pointerType;const x=g.target;x.hasPointerCapture(g.pointerId)&&x.releasePointerCapture(g.pointerId),g.button===0&&g.ctrlKey===!1&&g.pointerType==="mouse"&&(v(g),g.preventDefault())}),onKeyDown:je(o.onKeyDown,g=>{const x=f.current!=="";!(g.ctrlKey||g.altKey||g.metaKey)&&g.key.length===1&&m(g.key),!(x&&g.key===" ")&&gC.includes(g.key)&&(v(),g.preventDefault())})})})});Zp.displayName=Hp;var Vp="SelectValue",qp=p.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,children:i,placeholder:a="",...l}=e,c=ln(Vp,n),{onValueNodeHasChildrenChange:u}=c,d=i!==void 0,f=Oe(t,c.onValueNodeChange);return Xe(()=>{u(d)},[u,d]),s.jsx(Ae.span,{...l,ref:f,style:{pointerEvents:"none"},children:fh(c.value)?s.jsx(s.Fragment,{children:a}):i})});qp.displayName=Vp;var kC="SelectIcon",Kp=p.forwardRef((e,t)=>{const{__scopeSelect:n,children:r,...o}=e;return s.jsx(Ae.span,{"aria-hidden":!0,...o,ref:t,children:r||"▼"})});Kp.displayName=kC;var _C="SelectPortal",Gp=e=>s.jsx(xo,{asChild:!0,...e});Gp.displayName=_C;var _n="SelectContent",Jp=p.forwardRef((e,t)=>{const n=ln(_n,e.__scopeSelect),[r,o]=p.useState();if(Xe(()=>{o(new DocumentFragment)},[]),!n.open){const i=r;return i?Rr.createPortal(s.jsx(Yp,{scope:e.__scopeSelect,children:s.jsx(Ao.Slot,{scope:e.__scopeSelect,children:s.jsx("div",{children:e.children})})}),i):null}return s.jsx(Xp,{...e,ref:t})});Jp.displayName=_n;var kt=10,[Yp,cn]=or(_n),jC="SelectContentImpl",SC=Gn("SelectContent.RemoveScroll"),Xp=p.forwardRef((e,t)=>{const{__scopeSelect:n,position:r="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:i,onPointerDownOutside:a,side:l,sideOffset:c,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:v,hideWhenDetached:g,avoidCollisions:x,...b}=e,y=ln(_n,n),[_,j]=p.useState(null),[S,T]=p.useState(null),N=Oe(t,ae=>j(ae)),[R,I]=p.useState(null),[O,K]=p.useState(null),A=Ro(n),[$,k]=p.useState(!1),Z=p.useRef(!1);p.useEffect(()=>{if(_)return Tf(_)},[_]),vf();const V=p.useCallback(ae=>{const[ge,...xe]=A().map(le=>le.ref.current),[be]=xe.slice(-1),te=document.activeElement;for(const le of ae)if(le===te||(le?.scrollIntoView({block:"nearest"}),le===ge&&S&&(S.scrollTop=0),le===be&&S&&(S.scrollTop=S.scrollHeight),le?.focus(),document.activeElement!==te))return},[A,S]),U=p.useCallback(()=>V([R,_]),[V,R,_]);p.useEffect(()=>{$&&U()},[$,U]);const{onOpenChange:L,triggerPointerDownPosRef:W}=y;p.useEffect(()=>{if(_){let ae={x:0,y:0};const ge=be=>{ae={x:Math.abs(Math.round(be.pageX)-(W.current?.x??0)),y:Math.abs(Math.round(be.pageY)-(W.current?.y??0))}},xe=be=>{ae.x<=10&&ae.y<=10?be.preventDefault():_.contains(be.target)||L(!1),document.removeEventListener("pointermove",ge),W.current=null};return W.current!==null&&(document.addEventListener("pointermove",ge),document.addEventListener("pointerup",xe,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",ge),document.removeEventListener("pointerup",xe,{capture:!0})}}},[_,L,W]),p.useEffect(()=>{const ae=()=>L(!1);return window.addEventListener("blur",ae),window.addEventListener("resize",ae),()=>{window.removeEventListener("blur",ae),window.removeEventListener("resize",ae)}},[L]);const[ne,B]=ph(ae=>{const ge=A().filter(te=>!te.disabled),xe=ge.find(te=>te.ref.current===document.activeElement),be=hh(ge,ae,xe);be&&setTimeout(()=>be.ref.current.focus())}),F=p.useCallback((ae,ge,xe)=>{const be=!Z.current&&!xe;(y.value!==void 0&&y.value===ge||be)&&(I(ae),be&&(Z.current=!0))},[y.value]),ue=p.useCallback(()=>_?.focus(),[_]),se=p.useCallback((ae,ge,xe)=>{const be=!Z.current&&!xe;(y.value!==void 0&&y.value===ge||be)&&K(ae)},[y.value]),oe=r==="popper"?Ui:Qp,_e=oe===Ui?{side:l,sideOffset:c,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:v,hideWhenDetached:g,avoidCollisions:x}:{};return s.jsx(Yp,{scope:n,content:_,viewport:S,onViewportChange:T,itemRefCallback:F,selectedItem:R,onItemLeave:ue,itemTextRefCallback:se,focusSelectedItem:U,selectedItemText:O,position:r,isPositioned:$,searchRef:ne,children:s.jsx(Ba,{as:SC,allowPinchZoom:!0,children:s.jsx(Fa,{asChild:!0,trapped:y.open,onMountAutoFocus:ae=>{ae.preventDefault()},onUnmountAutoFocus:je(o,ae=>{y.trigger?.focus({preventScroll:!0}),ae.preventDefault()}),children:s.jsx(go,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:ae=>ae.preventDefault(),onDismiss:()=>y.onOpenChange(!1),children:s.jsx(oe,{role:"listbox",id:y.contentId,"data-state":y.open?"open":"closed",dir:y.dir,onContextMenu:ae=>ae.preventDefault(),...b,..._e,onPlaced:()=>k(!0),ref:N,style:{display:"flex",flexDirection:"column",outline:"none",...b.style},onKeyDown:je(b.onKeyDown,ae=>{const ge=ae.ctrlKey||ae.altKey||ae.metaKey;if(ae.key==="Tab"&&ae.preventDefault(),!ge&&ae.key.length===1&&B(ae.key),["ArrowUp","ArrowDown","Home","End"].includes(ae.key)){let be=A().filter(te=>!te.disabled).map(te=>te.ref.current);if(["ArrowUp","End"].includes(ae.key)&&(be=be.slice().reverse()),["ArrowUp","ArrowDown"].includes(ae.key)){const te=ae.target,le=be.indexOf(te);be=be.slice(le+1)}setTimeout(()=>V(be)),ae.preventDefault()}})})})})})})});Xp.displayName=jC;var CC="SelectItemAlignedPosition",Qp=p.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:r,...o}=e,i=ln(_n,n),a=cn(_n,n),[l,c]=p.useState(null),[u,d]=p.useState(null),f=Oe(t,N=>d(N)),m=Ro(n),h=p.useRef(!1),v=p.useRef(!0),{viewport:g,selectedItem:x,selectedItemText:b,focusSelectedItem:y}=a,_=p.useCallback(()=>{if(i.trigger&&i.valueNode&&l&&u&&g&&x&&b){const N=i.trigger.getBoundingClientRect(),R=u.getBoundingClientRect(),I=i.valueNode.getBoundingClientRect(),O=b.getBoundingClientRect();if(i.dir!=="rtl"){const te=O.left-R.left,le=I.left-te,me=N.left-le,w=N.width+me,J=Math.max(w,R.width),H=window.innerWidth-kt,z=Bi(le,[kt,Math.max(kt,H-J)]);l.style.minWidth=w+"px",l.style.left=z+"px"}else{const te=R.right-O.right,le=window.innerWidth-I.right-te,me=window.innerWidth-N.right-le,w=N.width+me,J=Math.max(w,R.width),H=window.innerWidth-kt,z=Bi(le,[kt,Math.max(kt,H-J)]);l.style.minWidth=w+"px",l.style.right=z+"px"}const K=m(),A=window.innerHeight-kt*2,$=g.scrollHeight,k=window.getComputedStyle(u),Z=parseInt(k.borderTopWidth,10),V=parseInt(k.paddingTop,10),U=parseInt(k.borderBottomWidth,10),L=parseInt(k.paddingBottom,10),W=Z+V+$+L+U,ne=Math.min(x.offsetHeight*5,W),B=window.getComputedStyle(g),F=parseInt(B.paddingTop,10),ue=parseInt(B.paddingBottom,10),se=N.top+N.height/2-kt,oe=A-se,_e=x.offsetHeight/2,ae=x.offsetTop+_e,ge=Z+V+ae,xe=W-ge;if(ge<=se){const te=K.length>0&&x===K[K.length-1].ref.current;l.style.bottom="0px";const le=u.clientHeight-g.offsetTop-g.offsetHeight,me=Math.max(oe,_e+(te?ue:0)+le+U),w=ge+me;l.style.height=w+"px"}else{const te=K.length>0&&x===K[0].ref.current;l.style.top="0px";const me=Math.max(se,Z+g.offsetTop+(te?F:0)+_e)+xe;l.style.height=me+"px",g.scrollTop=ge-se+g.offsetTop}l.style.margin=`${kt}px 0`,l.style.minHeight=ne+"px",l.style.maxHeight=A+"px",r?.(),requestAnimationFrame(()=>h.current=!0)}},[m,i.trigger,i.valueNode,l,u,g,x,b,i.dir,r]);Xe(()=>_(),[_]);const[j,S]=p.useState();Xe(()=>{u&&S(window.getComputedStyle(u).zIndex)},[u]);const T=p.useCallback(N=>{N&&v.current===!0&&(_(),y?.(),v.current=!1)},[_,y]);return s.jsx(TC,{scope:n,contentWrapper:l,shouldExpandOnScrollRef:h,onScrollButtonChange:T,children:s.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:s.jsx(Ae.div,{...o,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});Qp.displayName=CC;var NC="SelectPopperPosition",Ui=p.forwardRef((e,t)=>{const{__scopeSelect:n,align:r="start",collisionPadding:o=kt,...i}=e,a=Io(n);return s.jsx(kp,{...a,...i,ref:t,align:r,collisionPadding:o,style:{boxSizing:"border-box",...i.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)"}})});Ui.displayName=NC;var[TC,cl]=or(_n,{}),Wi="SelectViewport",eh=p.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:r,...o}=e,i=cn(Wi,n),a=cl(Wi,n),l=Oe(t,i.onViewportChange),c=p.useRef(0);return s.jsxs(s.Fragment,{children:[s.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:r}),s.jsx(Ao.Slot,{scope:n,children:s.jsx(Ae.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:je(o.onScroll,u=>{const d=u.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:m}=a;if(m?.current&&f){const h=Math.abs(c.current-d.scrollTop);if(h>0){const v=window.innerHeight-kt*2,g=parseFloat(f.style.minHeight),x=parseFloat(f.style.height),b=Math.max(g,x);if(b<v){const y=b+h,_=Math.min(v,y),j=y-_;f.style.height=_+"px",f.style.bottom==="0px"&&(d.scrollTop=j>0?j:0,f.style.justifyContent="flex-end")}}}c.current=d.scrollTop})})})]})});eh.displayName=Wi;var th="SelectGroup",[EC,AC]=or(th),RC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=Rt();return s.jsx(EC,{scope:n,id:o,children:s.jsx(Ae.div,{role:"group","aria-labelledby":o,...r,ref:t})})});RC.displayName=th;var nh="SelectLabel",IC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=AC(nh,n);return s.jsx(Ae.div,{id:o.id,...r,ref:t})});IC.displayName=nh;var Hs="SelectItem",[zC,rh]=or(Hs),sh=p.forwardRef((e,t)=>{const{__scopeSelect:n,value:r,disabled:o=!1,textValue:i,...a}=e,l=ln(Hs,n),c=cn(Hs,n),u=l.value===r,[d,f]=p.useState(i??""),[m,h]=p.useState(!1),v=Oe(t,y=>c.itemRefCallback?.(y,r,o)),g=Rt(),x=p.useRef("touch"),b=()=>{o||(l.onValueChange(r),l.onOpenChange(!1))};if(r==="")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 s.jsx(zC,{scope:n,value:r,disabled:o,textId:g,isSelected:u,onItemTextChange:p.useCallback(y=>{f(_=>_||(y?.textContent??"").trim())},[]),children:s.jsx(Ao.ItemSlot,{scope:n,value:r,disabled:o,textValue:d,children:s.jsx(Ae.div,{role:"option","aria-labelledby":g,"data-highlighted":m?"":void 0,"aria-selected":u&&m,"data-state":u?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...a,ref:v,onFocus:je(a.onFocus,()=>h(!0)),onBlur:je(a.onBlur,()=>h(!1)),onClick:je(a.onClick,()=>{x.current!=="mouse"&&b()}),onPointerUp:je(a.onPointerUp,()=>{x.current==="mouse"&&b()}),onPointerDown:je(a.onPointerDown,y=>{x.current=y.pointerType}),onPointerMove:je(a.onPointerMove,y=>{x.current=y.pointerType,o?c.onItemLeave?.():x.current==="mouse"&&y.currentTarget.focus({preventScroll:!0})}),onPointerLeave:je(a.onPointerLeave,y=>{y.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:je(a.onKeyDown,y=>{c.searchRef?.current!==""&&y.key===" "||(xC.includes(y.key)&&b(),y.key===" "&&y.preventDefault())})})})})});sh.displayName=Hs;var xr="SelectItemText",oh=p.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,...i}=e,a=ln(xr,n),l=cn(xr,n),c=rh(xr,n),u=wC(xr,n),[d,f]=p.useState(null),m=Oe(t,b=>f(b),c.onItemTextChange,b=>l.itemTextRefCallback?.(b,c.value,c.disabled)),h=d?.textContent,v=p.useMemo(()=>s.jsx("option",{value:c.value,disabled:c.disabled,children:h},c.value),[c.disabled,c.value,h]),{onNativeOptionAdd:g,onNativeOptionRemove:x}=u;return Xe(()=>(g(v),()=>x(v)),[g,x,v]),s.jsxs(s.Fragment,{children:[s.jsx(Ae.span,{id:c.textId,...i,ref:m}),c.isSelected&&a.valueNode&&!a.valueNodeHasChildren?Rr.createPortal(i.children,a.valueNode):null]})});oh.displayName=xr;var ih="SelectItemIndicator",ah=p.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return rh(ih,n).isSelected?s.jsx(Ae.span,{"aria-hidden":!0,...r,ref:t}):null});ah.displayName=ih;var Hi="SelectScrollUpButton",lh=p.forwardRef((e,t)=>{const n=cn(Hi,e.__scopeSelect),r=cl(Hi,e.__scopeSelect),[o,i]=p.useState(!1),a=Oe(t,r.onScrollButtonChange);return Xe(()=>{if(n.viewport&&n.isPositioned){let l=function(){const u=c.scrollTop>0;i(u)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),o?s.jsx(uh,{...e,ref:a,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop-c.offsetHeight)}}):null});lh.displayName=Hi;var Zi="SelectScrollDownButton",ch=p.forwardRef((e,t)=>{const n=cn(Zi,e.__scopeSelect),r=cl(Zi,e.__scopeSelect),[o,i]=p.useState(!1),a=Oe(t,r.onScrollButtonChange);return Xe(()=>{if(n.viewport&&n.isPositioned){let l=function(){const u=c.scrollHeight-c.clientHeight,d=Math.ceil(c.scrollTop)<u;i(d)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),o?s.jsx(uh,{...e,ref:a,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop+c.offsetHeight)}}):null});ch.displayName=Zi;var uh=p.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:r,...o}=e,i=cn("SelectScrollButton",n),a=p.useRef(null),l=Ro(n),c=p.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return p.useEffect(()=>()=>c(),[c]),Xe(()=>{l().find(d=>d.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[l]),s.jsx(Ae.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:je(o.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(r,50))}),onPointerMove:je(o.onPointerMove,()=>{i.onItemLeave?.(),a.current===null&&(a.current=window.setInterval(r,50))}),onPointerLeave:je(o.onPointerLeave,()=>{c()})})}),OC="SelectSeparator",PC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return s.jsx(Ae.div,{"aria-hidden":!0,...r,ref:t})});PC.displayName=OC;var Vi="SelectArrow",MC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=Io(n),i=ln(Vi,n),a=cn(Vi,n);return i.open&&a.position==="popper"?s.jsx(_p,{...o,...r,ref:t}):null});MC.displayName=Vi;var LC="SelectBubbleInput",dh=p.forwardRef(({__scopeSelect:e,value:t,...n},r)=>{const o=p.useRef(null),i=Oe(r,o),a=_j(t);return p.useEffect(()=>{const l=o.current;if(!l)return;const c=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(c,"value").set;if(a!==t&&d){const f=new Event("change",{bubbles:!0});d.call(l,t),l.dispatchEvent(f)}},[a,t]),s.jsx(Ae.select,{...n,style:{...Vf,...n.style},ref:i,defaultValue:t})});dh.displayName=LC;function fh(e){return e===""||e===void 0}function ph(e){const t=st(e),n=p.useRef(""),r=p.useRef(0),o=p.useCallback(a=>{const l=n.current+a;t(l),(function c(u){n.current=u,window.clearTimeout(r.current),u!==""&&(r.current=window.setTimeout(()=>c(""),1e3))})(l)},[t]),i=p.useCallback(()=>{n.current="",window.clearTimeout(r.current)},[]);return p.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,o,i]}function hh(e,t,n){const o=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,i=n?e.indexOf(n):-1;let a=DC(e,Math.max(i,0));o.length===1&&(a=a.filter(u=>u!==n));const c=a.find(u=>u.textValue.toLowerCase().startsWith(o.toLowerCase()));return c!==n?c:void 0}function DC(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var $C=Wp,FC=Zp,BC=qp,UC=Kp,WC=Gp,HC=Jp,ZC=eh,VC=sh,qC=oh,KC=ah,GC=lh,JC=ch,zo="Tabs",[YC]=Vt(zo,[Sp]),mh=Sp(),[XC,ul]=YC(zo),gh=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:i,orientation:a="horizontal",dir:l,activationMode:c="automatic",...u}=e,d=ko(l),[f,m]=vn({prop:r,onChange:o,defaultProp:i??"",caller:zo});return s.jsx(XC,{scope:n,baseId:Rt(),value:f,onValueChange:m,orientation:a,dir:d,activationMode:c,children:s.jsx(Ae.div,{dir:d,"data-orientation":a,...u,ref:t})})});gh.displayName=zo;var xh="TabsList",bh=p.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,i=ul(xh,n),a=mh(n);return s.jsx(eC,{asChild:!0,...a,orientation:i.orientation,dir:i.dir,loop:r,children:s.jsx(Ae.div,{role:"tablist","aria-orientation":i.orientation,...o,ref:t})})});bh.displayName=xh;var vh="TabsTrigger",yh=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...i}=e,a=ul(vh,n),l=mh(n),c=_h(a.baseId,r),u=jh(a.baseId,r),d=r===a.value;return s.jsx(tC,{asChild:!0,...l,focusable:!o,active:d,children:s.jsx(Ae.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":u,"data-state":d?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:c,...i,ref:t,onMouseDown:je(e.onMouseDown,f=>{!o&&f.button===0&&f.ctrlKey===!1?a.onValueChange(r):f.preventDefault()}),onKeyDown:je(e.onKeyDown,f=>{[" ","Enter"].includes(f.key)&&a.onValueChange(r)}),onFocus:je(e.onFocus,()=>{const f=a.activationMode!=="manual";!d&&!o&&f&&a.onValueChange(r)})})})});yh.displayName=vh;var wh="TabsContent",kh=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:i,...a}=e,l=ul(wh,n),c=_h(l.baseId,r),u=jh(l.baseId,r),d=r===l.value,f=p.useRef(d);return p.useEffect(()=>{const m=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(m)},[]),s.jsx(bt,{present:o||d,children:({present:m})=>s.jsx(Ae.div,{"data-state":d?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":c,hidden:!m,id:u,tabIndex:0,...a,ref:t,style:{...e.style,animationDuration:f.current?"0s":void 0},children:m&&i})})});kh.displayName=wh;function _h(e,t){return`${e}-trigger-${t}`}function jh(e,t){return`${e}-content-${t}`}var QC=gh,e5=bh,t5=yh,n5=kh,[Oo]=Vt("Tooltip",[No]),Po=No(),Sh="TooltipProvider",r5=700,qi="tooltip.open",[s5,dl]=Oo(Sh),Ch=e=>{const{__scopeTooltip:t,delayDuration:n=r5,skipDelayDuration:r=300,disableHoverableContent:o=!1,children:i}=e,a=p.useRef(!0),l=p.useRef(!1),c=p.useRef(0);return p.useEffect(()=>{const u=c.current;return()=>window.clearTimeout(u)},[]),s.jsx(s5,{scope:t,isOpenDelayedRef:a,delayDuration:n,onOpen:p.useCallback(()=>{window.clearTimeout(c.current),a.current=!1},[]),onClose:p.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>a.current=!0,r)},[r]),isPointerInTransitRef:l,onPointerInTransitChange:p.useCallback(u=>{l.current=u},[]),disableHoverableContent:o,children:i})};Ch.displayName=Sh;var Nr="Tooltip",[o5,Fr]=Oo(Nr),Nh=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o,onOpenChange:i,disableHoverableContent:a,delayDuration:l}=e,c=dl(Nr,e.__scopeTooltip),u=Po(t),[d,f]=p.useState(null),m=Rt(),h=p.useRef(0),v=a??c.disableHoverableContent,g=l??c.delayDuration,x=p.useRef(!1),[b,y]=vn({prop:r,defaultProp:o??!1,onChange:N=>{N?(c.onOpen(),document.dispatchEvent(new CustomEvent(qi))):c.onClose(),i?.(N)},caller:Nr}),_=p.useMemo(()=>b?x.current?"delayed-open":"instant-open":"closed",[b]),j=p.useCallback(()=>{window.clearTimeout(h.current),h.current=0,x.current=!1,y(!0)},[y]),S=p.useCallback(()=>{window.clearTimeout(h.current),h.current=0,y(!1)},[y]),T=p.useCallback(()=>{window.clearTimeout(h.current),h.current=window.setTimeout(()=>{x.current=!0,y(!0),h.current=0},g)},[g,y]);return p.useEffect(()=>()=>{h.current&&(window.clearTimeout(h.current),h.current=0)},[]),s.jsx(yp,{...u,children:s.jsx(o5,{scope:t,contentId:m,open:b,stateAttribute:_,trigger:d,onTriggerChange:f,onTriggerEnter:p.useCallback(()=>{c.isOpenDelayedRef.current?T():j()},[c.isOpenDelayedRef,T,j]),onTriggerLeave:p.useCallback(()=>{v?S():(window.clearTimeout(h.current),h.current=0)},[S,v]),onOpen:j,onClose:S,disableHoverableContent:v,children:n})})};Nh.displayName=Nr;var Ki="TooltipTrigger",Th=p.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Fr(Ki,n),i=dl(Ki,n),a=Po(n),l=p.useRef(null),c=Oe(t,l,o.onTriggerChange),u=p.useRef(!1),d=p.useRef(!1),f=p.useCallback(()=>u.current=!1,[]);return p.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),s.jsx(wp,{asChild:!0,...a,children:s.jsx(Ae.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...r,ref:c,onPointerMove:je(e.onPointerMove,m=>{m.pointerType!=="touch"&&!d.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),d.current=!0)}),onPointerLeave:je(e.onPointerLeave,()=>{o.onTriggerLeave(),d.current=!1}),onPointerDown:je(e.onPointerDown,()=>{o.open&&o.onClose(),u.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:je(e.onFocus,()=>{u.current||o.onOpen()}),onBlur:je(e.onBlur,o.onClose),onClick:je(e.onClick,o.onClose)})})});Th.displayName=Ki;var fl="TooltipPortal",[i5,a5]=Oo(fl,{forceMount:void 0}),Eh=e=>{const{__scopeTooltip:t,forceMount:n,children:r,container:o}=e,i=Fr(fl,t);return s.jsx(i5,{scope:t,forceMount:n,children:s.jsx(bt,{present:n||i.open,children:s.jsx(xo,{asChild:!0,container:o,children:r})})})};Eh.displayName=fl;var Xn="TooltipContent",Ah=p.forwardRef((e,t)=>{const n=a5(Xn,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,a=Fr(Xn,e.__scopeTooltip);return s.jsx(bt,{present:r||a.open,children:a.disableHoverableContent?s.jsx(Rh,{side:o,...i,ref:t}):s.jsx(l5,{side:o,...i,ref:t})})}),l5=p.forwardRef((e,t)=>{const n=Fr(Xn,e.__scopeTooltip),r=dl(Xn,e.__scopeTooltip),o=p.useRef(null),i=Oe(t,o),[a,l]=p.useState(null),{trigger:c,onClose:u}=n,d=o.current,{onPointerInTransitChange:f}=r,m=p.useCallback(()=>{l(null),f(!1)},[f]),h=p.useCallback((v,g)=>{const x=v.currentTarget,b={x:v.clientX,y:v.clientY},y=f5(b,x.getBoundingClientRect()),_=p5(b,y),j=h5(g.getBoundingClientRect()),S=g5([..._,...j]);l(S),f(!0)},[f]);return p.useEffect(()=>()=>m(),[m]),p.useEffect(()=>{if(c&&d){const v=x=>h(x,d),g=x=>h(x,c);return c.addEventListener("pointerleave",v),d.addEventListener("pointerleave",g),()=>{c.removeEventListener("pointerleave",v),d.removeEventListener("pointerleave",g)}}},[c,d,h,m]),p.useEffect(()=>{if(a){const v=g=>{const x=g.target,b={x:g.clientX,y:g.clientY},y=c?.contains(x)||d?.contains(x),_=!m5(b,a);y?m():_&&(m(),u())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[c,d,a,u,m]),s.jsx(Rh,{...e,ref:i})}),[c5,u5]=Oo(Nr,{isInside:!1}),d5=gk("TooltipContent"),Rh=p.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:a,...l}=e,c=Fr(Xn,n),u=Po(n),{onClose:d}=c;return p.useEffect(()=>(document.addEventListener(qi,d),()=>document.removeEventListener(qi,d)),[d]),p.useEffect(()=>{if(c.trigger){const f=m=>{m.target?.contains(c.trigger)&&d()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[c.trigger,d]),s.jsx(go,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:f=>f.preventDefault(),onDismiss:d,children:s.jsxs(kp,{"data-state":c.stateAttribute,...u,...l,ref:t,style:{...l.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:[s.jsx(d5,{children:r}),s.jsx(c5,{scope:n,isInside:!0,children:s.jsx(xj,{id:c.contentId,role:"tooltip",children:o||r})})]})})});Ah.displayName=Xn;var Ih="TooltipArrow",zh=p.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Po(n);return u5(Ih,n).isInside?null:s.jsx(_p,{...o,...r,ref:t})});zh.displayName=Ih;function f5(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(n,r,o,i)){case i:return"left";case o:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function p5(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function h5(e){const{top:t,right:n,bottom:r,left:o}=e;return[{x:o,y:t},{x:n,y:t},{x:n,y:r},{x:o,y:r}]}function m5(e,t){const{x:n,y:r}=e;let o=!1;for(let i=0,a=t.length-1;i<t.length;a=i++){const l=t[i],c=t[a],u=l.x,d=l.y,f=c.x,m=c.y;d>r!=m>r&&n<(f-u)*(r-d)/(m-d)+u&&(o=!o)}return o}function g5(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),x5(t)}function x5(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const o=e[r];for(;t.length>=2;){const i=t[t.length-1],a=t[t.length-2];if((i.x-a.x)*(o.y-a.y)>=(i.y-a.y)*(o.x-a.x))t.pop();else break}t.push(o)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const o=e[r];for(;n.length>=2;){const i=n[n.length-1],a=n[n.length-2];if((i.x-a.x)*(o.y-a.y)>=(i.y-a.y)*(o.x-a.x))n.pop();else break}n.push(o)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var b5=Ch,v5=Nh,y5=Th,w5=Eh,k5=Ah,_5=zh;function Ye({delayDuration:e=0,...t}){return s.jsx(b5,{"data-slot":"tooltip-provider",delayDuration:e,...t})}function Pe({...e}){return s.jsx(v5,{"data-slot":"tooltip",...e})}function Me({...e}){return s.jsx(y5,{"data-slot":"tooltip-trigger",...e})}function Le({className:e,sideOffset:t=0,children:n,...r}){return s.jsx(w5,{children:s.jsxs(k5,{"data-slot":"tooltip-content",sideOffset:t,className:ce("bg-foreground text-background 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 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...r,children:[n,s.jsx(_5,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}const j5=3,S5="flex h-8 w-5 shrink-0 items-center justify-center text-muted-foreground";function C5({items:e,ariaLabel:t,className:n}){if(e.length===0)return s.jsx("span",{className:ce("flex h-8 w-12 shrink-0 items-center",n),"aria-hidden":"true"});const r=e.slice(0,j5),o=e.length-r.length;return s.jsx(Ye,{delayDuration:150,children:s.jsxs("span",{className:ce("flex h-8 w-12 shrink-0 items-center",n),"aria-label":t,children:[r.map((i,a)=>s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("span",{className:ce("border border-border bg-muted/40 inline-flex size-6 shrink-0 items-center justify-center rounded-md",a>0&&"-ml-2"),children:s.jsx(mj,{provider:i.provider,className:"size-4"})})}),s.jsx(Le,{children:i.tooltip})]},`${i.provider}-${String(a)}`)),o>0&&s.jsxs("span",{className:"border border-border bg-muted/40 -ml-2 inline-flex h-6 min-w-6 shrink-0 items-center justify-center rounded-md px-1 font-mono text-[10px] text-muted-foreground",children:["+",o]})]})})}const N5="/v1/chat/completions",T5="/chat/completions",E5="/v1/responses",A5="/responses",R5="/v1/messages";class I5{handlers=new Map;pathMap=new Map;register(t){this.handlers.set(t.format,t)}registerPath(t,n){this.pathMap.set(t,n)}get(t){return this.handlers.get(t)}getByPath(t){const n=t.split("?")[0]??"",r=this.pathMap.get(n);return r===void 0?void 0:this.handlers.get(r)}getApiFormatByPath(t){const n=t.split("?")[0]??"";return this.pathMap.get(n)}detectFormat(t){if(t===null)return"unknown";for(const n of this.handlers.values())if(n.detectFormat(t))return n.format;return"unknown"}}const un=new I5;function z5(e){return un.getApiFormatByPath(e)??"unknown"}un.registerPath(R5,"anthropic");un.registerPath(N5,"openai");un.registerPath(T5,"openai");un.registerPath(E5,"openai");un.registerPath(A5,"openai");function O5(e){if(e==="")return{};try{const t=JSON.parse(e);return t!==null&&typeof t=="object"&&!Array.isArray(t)?{...t}:{}}catch{return{}}}function P5(e){switch(e.type){case"text":return{type:"text",text:e.text};case"thinking":{const t={type:"thinking",thinking:e.thinking};return e.signature!==""&&(t.signature=e.signature),t}case"think":{const t={type:"think",thinking:e.thinking};return e.signature!==""&&(t.signature=e.signature),t}case"tool_use":return{type:"tool_use",id:e.id,name:e.name,input:O5(e.inputJson)}}}function Oh(e,t,n,r){const o=new Map;let i="",a="",l=null,c=null,u=0,d=0;const f=1e3;let m=0,h=0;const v=[];for(const x of e.split(`
|
|
86
|
+
`)){const b=x.trim();if(b.startsWith("data: "))try{const y=JSON.parse(b.slice(6)),_=e1.safeParse(y);if(!_.success)continue;const j=_.data;switch(m===0&&(h=Date.now()),r===!0&&v.length<f&&v.push({index:m,timestamp:Date.now()-h,type:j.type,data:j}),m++,j.type){case"message_start":i=j.message.id,a=j.message.model,u=j.message.usage.input_tokens,t.inputTokens=u,t.cacheCreationInputTokens=j.message.usage.cache_creation_input_tokens??null,t.cacheReadInputTokens=j.message.usage.cache_read_input_tokens??null,t.model===null&&(t.model=a);break;case"content_block_start":{const S=j.content_block;switch(S.type){case"text":o.set(j.index,{type:"text",text:S.text??""});break;case"thinking":o.set(j.index,{type:"thinking",thinking:S.thinking??"",signature:S.signature??""});break;case"think":o.set(j.index,{type:"think",thinking:S.thinking??"",signature:S.signature??""});break;case"tool_use":o.set(j.index,{type:"tool_use",id:S.id,name:S.name,inputJson:""});break}break}case"content_block_delta":{const S=o.get(j.index);if(S===void 0)break;const T=j.delta;T.type==="text_delta"&&S.type==="text"?S.text+=T.text:T.type==="thinking_delta"&&(S.type==="thinking"||S.type==="think")?S.thinking+=T.thinking:T.type==="signature_delta"&&(S.type==="thinking"||S.type==="think")?S.signature+=T.signature:T.type==="input_json_delta"&&S.type==="tool_use"&&(S.inputJson+=T.partial_json);break}case"message_delta":l=j.delta.stop_reason,c=j.delta.stop_sequence??null,d=j.usage.output_tokens,t.outputTokens=d,j.usage.cache_creation_input_tokens!==void 0&&(t.cacheCreationInputTokens=j.usage.cache_creation_input_tokens),j.usage.cache_read_input_tokens!==void 0&&(t.cacheReadInputTokens=j.usage.cache_read_input_tokens);break;case"error":t.error=j.error.message;break;case"content_block_stop":case"message_stop":case"ping":break}}catch{}}r===!0&&(t.streamingChunks={chunks:v,truncated:m>f});const g=[...o.entries()].sort(([x],[b])=>x-b).map(([,x])=>P5(x));return JSON.stringify({id:i,type:"message",model:a!==""?a:n??"",role:"assistant",content:g,stop_reason:l,stop_sequence:c,usage:{input_tokens:u,output_tokens:d}})}const M5={format:"anthropic",parseRequest(e,t){try{const n=JSON.parse(e),r=jd.safeParse(n);return r.success?{model:r.data.model,sessionId:r.data.metadata?.user_id??t?.get("x-session-affinity")??null}:null}catch{return null}},extractTokens(e){try{const t=JSON.parse(e),n=Sd.safeParse(t);if(n.success)return{inputTokens:n.data.usage.input_tokens??null,outputTokens:n.data.usage.output_tokens??null,cacheCreationInputTokens:n.data.usage.cache_creation_input_tokens??null,cacheReadInputTokens:n.data.usage.cache_read_input_tokens??null}}catch{}return{inputTokens:null,outputTokens:null,cacheCreationInputTokens:null,cacheReadInputTokens:null}},extractStream(e,t,n,r){return Oh(e,t,n,r)},detectFormat(e){if(e===null)return!1;try{const t=JSON.parse(e);if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=Object.keys(t);return n.includes("model")&&n.includes("messages")&&n.includes("system")}return!1}catch{return!1}}};un.register(M5);class L5{providers=[];register(t){this.providers.push(t)}findProvider(t){let n=null;for(const r of this.providers)if(r.matches(t)){if(r.name!=="anthropic")return r;n=r}return n}getAll(){return[...this.providers]}}const Mo=new L5,D5="https://api.anthropic.com",$5={MiniMax:"https://api.minimaxi.com/anthropic"},F5={name:"anthropic",matches(e){const t=e.toLowerCase();if(t.startsWith("openai-"))return!1;if(t.includes("claude")||t.includes("anthropic"))return!0;for(const n of Object.keys($5))if(t.startsWith(n.toLowerCase()))return!0;return!0},getUpstreamBase(e,t){return t?.baseUrl!==void 0?t.baseUrl:D5},extractStream(e,t,n,r){return Oh(e,t,n,r)}};Mo.register(F5);const pl=1e3;function Br(e,t){if(!(e===null||typeof e!="object"||Array.isArray(e)))return Object.getOwnPropertyDescriptor(e,t)?.value}function nt(e,t){const n=Br(e,t);return typeof n=="string"?n:null}function Ph(e,t){const n=Br(e,t);return typeof n=="number"&&Number.isFinite(n)?n:null}function Zs(e,t){const n=Br(e,t);return n!==null&&typeof n=="object"&&!Array.isArray(n)?n:null}function B5(e,t){const n=Br(e,t);return Array.isArray(n)?n:[]}function U5(e){const t=[];let n=null,r=[];const o=()=>{n===null&&r.length===0||(t.push({event:n,data:r.join(`
|
|
87
|
+
`)}),n=null,r=[])};for(const i of e.split(`
|
|
88
|
+
`)){const a=i.endsWith("\r")?i.slice(0,-1):i;if(a===""){o();continue}if(a.startsWith(":"))continue;const l=a.indexOf(":"),c=l===-1?a:a.slice(0,l),u=l===-1?"":a.slice(l+1),d=u.startsWith(" ")?u.slice(1):u;switch(c){case"event":n=d;break;case"data":n===null&&r.length>0&&(d.startsWith("{")||d==="[DONE]")&&o(),r.push(d);break}}return o(),t}function hl(e){try{return JSON.parse(e)}catch{return null}}function Mh(e,t){if(e.event!==null&&e.event!=="")return e.event;const n=u1.safeParse(t);return n.success?n.data.type:""}function W5(e){if(e.data==="[DONE]")return!1;const t=hl(e.data),n=Mh(e,t);return n.startsWith("response.")||n==="error"}function Lh(e,t,n,r,o){e.length>=pl||e.push({index:t,timestamp:Date.now()-n,type:r,data:o})}function Gi(e,t){const n=Zs(t,"error"),r=nt(n,"message")??nt(t,"message")??nt(t,"error");r!==null&&r.length>0&&(e.error=r)}function H5(e,t,n,r){let o="",i="",a="",l="",c=null,u=0,d=0,f=!1,m=!1;const h=new Map;let v=0,g=0;const x=[];for(const y of e){if(y.data==="[DONE]")break;const _=hl(y.data);if(_===null)continue;Gi(t,_);const j=a1.safeParse(_);if(!j.success)continue;const S=j.data;if(v===0&&(g=Date.now()),r&&Lh(x,v,g,"chat.completion.chunk",S),v++,m||(o=S.id,i=S.model,m=!0),!f&&S.usage!==void 0&&S.usage!==null){u=S.usage.prompt_tokens??0,d=S.usage.completion_tokens??0,t.inputTokens=u;const T=Zs(_,"usage"),N=Zs(T,"prompt_tokens_details"),R=Ph(N,"cached_tokens");R!==null&&(t.cacheReadInputTokens=R),f=!0}for(const T of S.choices){const N=T.delta;N.content!==void 0&&N.content!==null&&(a+=N.content),N.reasoning_content!==void 0&&N.reasoning_content!==null&&(l+=N.reasoning_content),N.thinking!==void 0&&N.thinking!==null&&(l+=N.thinking);const R=N.think;if(R!=null&&(l+=R),T.finish_reason!==void 0&&T.finish_reason!==null&&(c=T.finish_reason),N.tool_calls!==void 0&&N.tool_calls!==null)for(const I of N.tool_calls){let O=h.get(I.index);O===void 0&&(O={index:I.index,type:"function",function:{name:"",arguments:""}},h.set(I.index,O)),I.id!==void 0&&(O.id=I.id),I.function?.name!==void 0&&(O.function.name+=I.function.name),I.function?.arguments!==void 0&&(O.function.arguments+=I.function.arguments)}}}r&&(t.streamingChunks={chunks:x,truncated:v>pl}),f||(d=Math.ceil(a.length/4)),t.outputTokens=d;const b={role:"assistant",content:a};return l.length>0&&(b.reasoning_content=l),h.size>0&&(b.tool_calls=[...h.values()]),JSON.stringify({id:o,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:i!==""?i:n??"",choices:[{index:0,message:b,finish_reason:c}],usage:{prompt_tokens:u,completion_tokens:d,total_tokens:u+d}})}function Z5(e){const t=Es.safeParse(Br(e,"response"));if(t.success)return t.data;const n=Es.safeParse(e);return n.success?n.data:null}function Dh(e){if(e.output_text!==void 0&&e.output_text.length>0)return e.output_text;const t=[];for(const n of e.output??[]){const r=B5(n,"content");for(const o of r){const i=nt(o,"type"),a=nt(o,"text");(i==="output_text"||i==="text")&&a!==null&&a.length>0&&t.push(a)}}return t.join(`
|
|
89
|
+
`)}function Oc(e,t){const n=e.usage,r=n?.input_tokens??null,o=n?.output_tokens??null;r!==null&&(t.inputTokens=r),o!==null&&(t.outputTokens=o);const i=n?.input_tokens_details?.cached_tokens??null;return i!==null&&(t.cacheReadInputTokens=i),{inputTokens:r,outputTokens:o}}function ri(e,t){const n=nt(e,"item_id");if(n!==null&&n.length>0)return n;const r=Ph(e,"output_index");return r!==null?String(r):`function-${String(t)}`}function Ji(e,t){const n=e.get(t);if(n!==void 0)return n;const r={type:"function_call",arguments:""};return e.set(t,r),r}function V5(e,t,n){if(nt(n,"type")!=="function_call")return;const r=Ji(e,t),o=nt(n,"id"),i=nt(n,"call_id"),a=nt(n,"name"),l=nt(n,"arguments"),c=nt(n,"status");o!==null&&(r.id=o),i!==null&&(r.call_id=i),a!==null&&(r.name=a),l!==null&&(r.arguments=l),c!==null&&(r.status=c)}function q5(e,t){const n=[];e.length>0&&n.push({type:"message",role:"assistant",content:[{type:"output_text",text:e,annotations:[]}]});for(const r of t.values())n.push(r);return n}function K5(e,t,n){const r=t??Math.ceil(n.length/4);return{input_tokens:e,output_tokens:r,total_tokens:e===null?r:e+r}}function G5(e){const t=e.completedResponse===null?"":Dh(e.completedResponse),n=t.length>0?t:e.outputText,r=e.completedResponse?.output,o=r!==void 0&&r.length>0?r:q5(n,e.calls),i=e.completedResponse?.usage??K5(e.inputTokens,e.outputTokens,n);return{...e.completedResponse??{},id:e.completedResponse?.id??e.responseId,object:"response",created_at:e.completedResponse?.created_at??Math.floor(Date.now()/1e3),status:e.completedResponse?.status??e.status??"completed",model:e.completedResponse?.model??e.model,output:o,output_text:n,usage:i}}function J5(e,t,n,r){let o=null,i="",a=n??"",l=null,c="",u=null,d=null,f=0,m=0;const h=[],v=new Map;for(const b of e){if(b.data==="[DONE]")break;const y=hl(b.data);if(y===null)continue;const _=Mh(b,y);if(f===0&&(m=Date.now()),r&&Lh(h,f,m,_===""?"response.event":_,y),f++,Gi(t,y),_==="error")continue;const j=Z5(y);if(j!==null){o=j,i=j.id,a=j.model??a,l=j.status??l;const T=Oc(j,t);u=T.inputTokens??u,d=T.outputTokens??d,Gi(t,j)}const S=nt(y,"delta");switch(_){case"response.output_text.delta":S!==null&&(c+=S);break;case"response.output_text.done":{const T=nt(y,"text");c.length===0&&T!==null&&(c=T);break}case"response.function_call_arguments.delta":{if(S!==null){const T=Ji(v,ri(y,v.size));T.arguments+=S}break}case"response.function_call_arguments.done":{const T=nt(y,"arguments");if(T!==null){const N=Ji(v,ri(y,v.size));N.arguments=T}break}case"response.output_item.added":case"response.output_item.done":{const T=Zs(y,"item");V5(v,ri(y,v.size),T);break}case"response.failed":case"response.incomplete":l=_.slice(9);break;case"response.completed":l="completed";break}}r&&(t.streamingChunks={chunks:h,truncated:f>pl});const g=G5({completedResponse:o,responseId:i,model:a,status:l,outputText:c,calls:v,inputTokens:u,outputTokens:d}),x=Es.safeParse(g);if(x.success){if(Oc(x.data,t).outputTokens===null){const y=Dh(x.data),_=Math.ceil(y.length/4);t.outputTokens=_}return JSON.stringify(x.data)}if(t.outputTokens===null){const b=nt(g,"output_text")??c,y=Math.ceil(b.length/4);t.outputTokens=y}return JSON.stringify(g)}function Lo(e,t,n,r=!0){const o=U5(e);return o.some(W5)?J5(o,t,n,r):H5(o,t,n,r)}function Y5(){return{inputTokens:null,outputTokens:null,cacheCreationInputTokens:null,cacheReadInputTokens:null}}const X5={format:"openai",parseRequest(e,t){try{const n=JSON.parse(e),r=Td.safeParse(n);if(r.success)return{model:r.data.model,sessionId:t?.get("x-session-affinity")??null};const o=Ed.safeParse(n);return o.success?{model:o.data.model,sessionId:t?.get("x-session-affinity")??null}:null}catch{return null}},extractTokens(e){const t=Rd(e);if(t){let r=null;try{const o=JSON.parse(e);if(o!==null&&typeof o=="object"&&!Array.isArray(o)){const i=Object.getOwnPropertyDescriptor(o,"usage");if(i!==void 0&&typeof i.value=="object"&&i.value!==null){const a=Object.getOwnPropertyDescriptor(i.value,"prompt_tokens_details");if(a!==void 0&&typeof a.value=="object"&&a.value!==null){const l=Object.getOwnPropertyDescriptor(a.value,"cached_tokens");l!==void 0&&typeof l.value=="number"&&(r=l.value)}}}}catch{}return{inputTokens:t.usage.prompt_tokens??null,outputTokens:t.usage.completion_tokens??null,cacheCreationInputTokens:null,cacheReadInputTokens:r}}const n=Id(e);if(n!==null){const r=n.usage;return{inputTokens:r?.input_tokens??null,outputTokens:r?.output_tokens??null,cacheCreationInputTokens:null,cacheReadInputTokens:r?.input_tokens_details?.cached_tokens??null}}return Y5()},extractStream(e,t,n,r){return Lo(e,t,n,r)},detectFormat(e){if(e===null)return!1;try{const t=JSON.parse(e);if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=Object.keys(t);return n.includes("model")&&(n.includes("messages")||n.includes("input"))&&!n.includes("system")}return!1}catch{return!1}}};un.register(X5);const Q5="https://api.openai.com/v1",eN={name:"openai",matches(e){const t=e.toLowerCase();return!!(t.startsWith("openai-")||t.includes("gpt-")||t.includes("o1")||t.includes("o2")||t.includes("o3"))},getUpstreamBase(e,t){return t?.baseUrl!==void 0?t.baseUrl:Q5},extractStream(e,t,n,r){return Lo(e,t,n,r)}};Mo.register(eN);const tN="https://open.bigmodel.cn/api/paas/v4",nN=["glm-","charglm-","cogview-","embedding-","rerank-"],rN={name:"zhipu",matches(e){const t=e.toLowerCase().replace(/\s+/g,"-");return nN.some(n=>t.startsWith(n))},getUpstreamBase(e,t){return t?.baseUrl??tN},extractStream(e,t,n,r){return Lo(e,t,n,r)}};Mo.register(rN);const sN="https://dashscope.aliyuncs.com/compatible-mode/v1",oN={name:"alibaba",matches(e){return!!e.toLowerCase().replace(/\s+/g,"-").startsWith("qwen")},getUpstreamBase(e,t){return sN},extractStream(e,t,n){return Lo(e,t,n)}};Mo.register(oN);function $h(e,t){for(const n of Array.from(e))t(n)}const iN=/[\u3000-\u9FFF\uAC00-\uD7FF\uF900-\uFAFF\uFF00-\uFFEF\u{1F300}-\u{1FAFF}]/u;function ml(e){if(e.length===0)return 0;let t=0,n=0;return $h(e,r=>{iN.test(r)?t+=1:n+=1}),Math.ceil(t*1)+Math.ceil(n/4)}function gl(e){if(e.length===0)return 0;let t=0;return $h(e,()=>{t+=1}),t}function bn(e){return{parsed:null,comparisonValue:e,messageCount:null,toolCount:null}}const Wn={parsed:null,toolNames:null};function aN(e){if(typeof e=="string")return e;if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const r=n;switch(r.type){case"text":typeof r.text=="string"&&t.push(r.text);break;case"thinking":case"think":typeof r.thinking=="string"&&t.push(r.thinking);break;case"tool_use":{const i=typeof r.name=="string"?r.name:"",a=r.input!==void 0?JSON.stringify(r.input):"";t.push(`${i} ${a}`.trim());break}case"tool_result":{const i=r.content;if(typeof i=="string")t.push(i);else if(Array.isArray(i)){for(const a of i)if(a!==null&&typeof a=="object"){const l=a.text;typeof l=="string"&&t.push(l)}}break}case"image":t.push("[image]");break}}return t.join(`
|
|
90
|
+
`)}function lN(e){if(typeof e=="string")return e;if(!Array.isArray(e))return"";const t=[];for(const n of e)if(n!==null&&typeof n=="object"){const r=n.text;n.type==="text"&&typeof r=="string"&&t.push(r)}return t.join(`
|
|
91
|
+
`)}function cN(e){if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const r=n;typeof r.name=="string"&&t.push(r.name),typeof r.description=="string"&&t.push(r.description),r.input_schema!==void 0&&t.push(JSON.stringify(r.input_schema))}return t.join(`
|
|
92
|
+
`)}function si(e,t,n,r){return{role:e,label:t,text:n,size:ml(n),characters:gl(n),path:r}}const uN={format:"anthropic",analyzeRequest(e){if(e===null)return bn(e);try{const t=jd.safeParse(JSON.parse(e));return t.success?{parsed:t.data,comparisonValue:t.data,messageCount:t.data.messages.length,toolCount:t.data.tools!==void 0&&t.data.tools.length>0?t.data.tools.length:null}:bn(e)}catch{return bn(e)}},analyzeResponse(e){if(e===null)return Wn;try{let t=JSON.parse(e);typeof t=="string"&&(t=JSON.parse(t));const n=Sd.safeParse(t);if(!n.success)return Wn;const r=n.data.content.filter(o=>o.type==="tool_use").map(o=>o.name);return{parsed:n.data,toolNames:r.length>0?r:null}}catch{return Wn}},anatomySegments(e){if(e===null||typeof e!="object")return null;const t=e,n=[];if(t.system!==void 0){const r=lN(t.system);r.length>0&&n.push(si("system","system",r,"/system"))}if(Array.isArray(t.messages)&&t.messages.forEach((r,o)=>{if(r===null||typeof r!="object")return;const i=r,a=i.role==="user"||i.role==="assistant"?i.role:"user",l=aN(i.content);n.push(si(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.tools)&&t.tools.length>0){const r=cN(t.tools);n.push(si("tools","tools",r,"/tools"))}return n.length>0?n:null}};function xl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ke(e,t){return e===null||typeof e!="object"||Array.isArray(e)?void 0:Object.getOwnPropertyDescriptor(e,t)?.value}function Yi(e){if(typeof e=="string")return e;if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const r=n,o=r.type;(o==="text"||o==="input_text"||o==="output_text")&&typeof r.text=="string"?t.push(r.text):(o==="image_url"||o==="input_image")&&t.push("[image]")}return t.join(`
|
|
93
|
+
`)}function dN(e){const t=[],n=Yi(e.content);n.length>0&&t.push(n);const r=typeof e.reasoning_content=="string"?e.reasoning_content:typeof e.thinking=="string"?e.thinking:typeof e.think=="string"?e.think:"";r.length>0&&t.push(r);const o=e.tool_calls;if(Array.isArray(o))for(const i of o){if(i===null||typeof i!="object")continue;const a=i.function;if(a===void 0)continue;const l=typeof a.name=="string"?a.name:"",c=typeof a.arguments=="string"?a.arguments:"";t.push(`${l} ${c}`.trim())}return t.join(`
|
|
94
|
+
`)}function fN(e){if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const r=ke(n,"function"),o=ke(r,"name")??ke(n,"name"),i=ke(r,"description")??ke(n,"description"),a=ke(r,"parameters")??ke(n,"parameters");typeof o=="string"&&t.push(o),typeof i=="string"&&t.push(i),a!==void 0&&t.push(JSON.stringify(a))}return t.join(`
|
|
95
|
+
`)}function pN(e){return typeof e=="string"?e.length>0?1:0:Array.isArray(e)?e.length:e==null?null:1}function hN(e){if(typeof e=="string")return e;const t=ke(e,"text");if(typeof t=="string")return t;const n=Yi(ke(e,"content"));if(n.length>0)return n;const r=Yi(ke(e,"output"));if(r.length>0)return r;const o=ke(e,"arguments");return typeof o=="string"?o:""}function mN(e){const t=ke(e,"role");if(t==="system"||t==="user"||t==="assistant"||t==="tool")return t;const n=ke(e,"type");return n==="function_call_output"?"tool":"user"}function gN(e){const t=ke(e,"output");if(!Array.isArray(t))return[];const n=[];for(const r of t){if(ke(r,"type")!=="function_call")continue;const o=ke(r,"name");typeof o=="string"&&o.length>0&&n.push(o)}return n}function lr(e,t,n,r){return{role:e,label:t,text:n,size:ml(n),characters:gl(n),path:r}}const xN={format:"openai",analyzeRequest(e){if(e===null)return bn(e);try{const t=Td.safeParse(JSON.parse(e));if(!t.success){const n=Ed.safeParse(JSON.parse(e));return n.success?{parsed:n.data,comparisonValue:n.data,messageCount:pN(n.data.input),toolCount:n.data.tools!==void 0&&n.data.tools.length>0?n.data.tools.length:null}:bn(e)}return{parsed:t.data,comparisonValue:t.data,messageCount:t.data.messages.length,toolCount:t.data.tools!==void 0&&t.data.tools.length>0?t.data.tools.length:null}}catch{return bn(e)}},analyzeResponse(e){if(e===null)return Wn;const t=Rd(e);if(t===null){const r=Id(e);if(r===null)return Wn;const o=gN(r);return{parsed:r,toolNames:o.length>0?o:null}}const n=t.choices[0]?.message?.tool_calls?.map(r=>r.function?.name??"").filter(r=>r!=="")??[];return{parsed:t,toolNames:n.length>0?n:null}},anatomySegments(e){if(e===null||typeof e!="object")return null;const t=e,n=[];if(typeof t.instructions=="string"&&t.instructions.length>0&&n.push(lr("system","instructions",t.instructions,"/instructions")),Array.isArray(t.messages)&&t.messages.forEach((r,o)=>{if(r===null||typeof r!="object")return;const i=r,a=i.role==="user"||i.role==="assistant"||i.role==="system"||i.role==="tool"?i.role:"user",l=dN(i);n.push(lr(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.messages)||(typeof t.input=="string"&&t.input.length>0?n.push(lr("user","input",t.input,"/input")):Array.isArray(t.input)&&t.input.forEach((r,o)=>{const i=mN(r),a=hN(r);n.push(lr(i,`[${o}] ${i}`,a,`/input/${o}`))})),Array.isArray(t.tools)&&t.tools.length>0){const r=fN(t.tools);n.push(lr("tools","tools",r,"/tools"))}return n.length>0?n:null}},bN={format:"unknown",analyzeRequest(e){return bn(e)},analyzeResponse(){return Wn},anatomySegments(){return null}},vN={anthropic:uN,openai:xN,unknown:bN};function Fh(e){return vN[e]}function Tr(e){const t=z5(e.path);return t==="unknown"?e.apiFormat:t}function yN({conversationId:e,startTime:t,endTime:n,totalCalls:r,totalInputTokens:o,totalOutputTokens:i,expanded:a,onToggle:l,providers:c,isLoading:u=!1,userAgent:d,clientPid:f,clientProjectFolder:m,showClientIdentity:h=!0,showProcessMetadata:v=!0,timeDisplayFormat:g,onClear:x}){const[b,y]=p.useState(!1),_=$=>{$.stopPropagation(),x!==void 0&&y(!0)},j=p.useCallback($=>{$.stopPropagation(),window.open(Bu(e),"_blank","noopener,noreferrer")},[e]),S=c?.map(({provider:$,models:k})=>({provider:$,tooltip:k.length===1?k[0]??$:k.join(", ")}))??[],T=qa({userAgent:d,conversationId:e,clientProjectFolder:m}),N=yo(T),R=d!=null&&d!=="",I=N??d??null,O=N!==null&&R?`${N} - ${d}`:null,K=e.startsWith("PID:")||e.includes("|"),A=e.length>24?e.slice(0,12)+"..."+e.slice(-12):e;return s.jsxs("div",{role:"button",tabIndex:0,"data-nav-id":`conv-${e}`,"data-nav-action":a?"collapse":"expand",className:ce("border border-border bg-card shadow-sm flex cursor-pointer items-center gap-3 rounded-[8px] px-3 py-2 transition-colors","hover:border-cyan-200/20","select-none","sticky top-0 z-10 mb-2","focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none"),onClick:l,onKeyDown:$=>{$.target===$.currentTarget&&($.key==="Enter"||$.key===" ")&&($.preventDefault(),l())},children:[s.jsx(C5,{items:S,ariaLabel:"Models used in this session"}),K&&v?s.jsxs(s.Fragment,{children:[f!=null?s.jsxs("span",{className:"shrink-0 font-mono text-xs font-semibold text-violet-200",title:`PID ${f}`,children:["PID ",f]}):s.jsx("span",{className:"shrink-0 font-mono text-xs font-semibold text-violet-200",children:e}),m!=null&&m!==""&&s.jsx("span",{className:"text-muted-foreground text-xs font-mono truncate max-w-[200px] shrink-0",title:m,children:m})]}):s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"shrink-0 font-mono text-xs font-semibold text-violet-200",title:e,children:K?"sessionless":A}),v&&f!==null&&f!==void 0&&s.jsxs("span",{className:"border border-border bg-muted/40 shrink-0 rounded px-1.5 py-0.5 font-mono text-xs tabular-nums text-muted-foreground",title:`Client process ID ${f}`,children:["PID ",f]})]}),h&&I!==null&&I!==""&&s.jsxs("span",{className:"flex items-center gap-1 text-muted-foreground text-xs shrink-0",title:O??I,children:[s.jsx(Ka,{client:T,className:"size-5"}),s.jsx("span",{className:"font-mono tabular-nums truncate max-w-[120px]",children:I})]}),s.jsxs("span",{className:"flex items-center gap-1 text-muted-foreground text-xs shrink-0",children:[s.jsx(Bt,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:Da(t,n,g)})]}),s.jsxs("span",{className:"flex items-center gap-1 text-muted-foreground text-xs shrink-0",children:[s.jsx(ho,{className:"size-3"}),s.jsxs("span",{className:"font-mono tabular-nums",children:[r," call",r!==1?"s":""]})]}),s.jsxs("span",{className:"flex items-center gap-1 text-xs shrink-0",children:[s.jsx(Sr,{className:"size-3 text-muted-foreground"}),s.jsxs("span",{className:"font-mono tabular-nums",children:[s.jsx("span",{className:"text-blue-400",children:$e(o)})," / ",s.jsx("span",{className:"text-amber-400",children:$e(i)})]})]}),s.jsx("span",{className:"flex-1 min-w-0"}),s.jsx("button",{type:"button",onClick:j,onKeyDown:$=>{($.key==="Enter"||$.key===" ")&&j($)},"aria-label":`Open session ${e} in a new tab`,title:"Open this session in a new tab",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground",children:s.jsx(za,{className:"size-3.5"})}),x!==void 0&&s.jsx("button",{type:"button",onClick:_,"aria-label":`Clear group (${r} request${r!==1?"s":""})`,title:"Clear this group",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground",children:s.jsx(Kn,{className:"size-3.5"})}),s.jsx("span",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:a?s.jsx(ot,{className:"size-4 shrink-0"}):u?s.jsx(mt,{className:"size-4 shrink-0 animate-spin"}):s.jsx(xt,{className:"size-4 shrink-0"})}),s.jsx(Zf,{open:b,onOpenChange:y,title:"Clear this group?",description:`This will remove ${r} request${r!==1?"s":""} from this conversation. This action cannot be undone.`,confirmLabel:"Clear",variant:"destructive",onConfirm:()=>{x?.()}})]})}function wN(e){if(e.sessionId!==null&&e.sessionId!==""&&e.sessionId!==void 0)return e.sessionId;if(e.isTest===!0)return"provider-test";const t=e.clientPid!==null&&e.clientPid!==void 0,n=e.clientProjectFolder!==null&&e.clientProjectFolder!==void 0;if(!t&&!n)return"default";const r=t?`PID:${e.clientPid}`:"unknown",o=n?e.clientProjectFolder:"no-folder";return`${r}|${o}`}function kN(e){const t=new Map;for(const r of e){const o=wN(r),i=t.get(o);i!==void 0?i.push(r):t.set(o,[r])}const n=[];for(const[r,o]of t){const i=[...o].sort((a,l)=>a.timestamp.localeCompare(l.timestamp));n.push({id:r,conversationId:r,logs:i})}return n.sort((r,o)=>(r.logs[0]?.timestamp??"").localeCompare(o.logs[0]?.timestamp??"")),n}function _N(e,t,n){const r=new Array(e);return new Proxy(r,{get(o,i,a){if(typeof i=="string"){const l=i.charCodeAt(0);if(l>=48&&l<=57){const c=+i;if(Number.isInteger(c)&&c>=0&&c<e){let u=o[c];if(!u){const d=t[c*2];u=o[c]={index:c,key:n(c),start:d,size:t[c*2+1],end:d+t[c*2+1],lane:0}}return u}}if(i==="length")return e}return Reflect.get(o,i,a)}})}function zn(e,t,n){let r=n.initialDeps??[],o,i=!0;function a(){const l=e();return(l.length!==r.length||l.some((u,d)=>r[d]!==u))&&(r=l,o=t(...l),n?.onChange&&!(i&&n.skipInitialOnChange)&&n.onChange(o),i=!1),o}return a.updateDeps=l=>{r=l},a}function Pc(e,t){if(e===void 0)throw new Error("Unexpected undefined");return e}const Mc=(e,t)=>Math.abs(e-t)<1.01,jN=(e,t,n)=>{let r;return function(...o){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,o),n)}};let cr;const Lc=()=>{if(cr!==void 0)return cr;if(typeof navigator>"u")return cr=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return cr=!0;const e=navigator.maxTouchPoints;return cr=navigator.platform==="MacIntel"&&e!==void 0&&e>0},Dc=e=>{const{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},SN=e=>e,CN=e=>{const t=Math.max(e.startIndex-e.overscan,0),r=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,o=new Array(r);for(let i=0;i<r;i++)o[i]=t+i;return o},NN=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=e.targetWindow;if(!r)return;const o=a=>{const{width:l,height:c}=a;t({width:Math.round(l),height:Math.round(c)})};if(o(Dc(n)),!r.ResizeObserver)return()=>{};const i=new r.ResizeObserver(a=>{const l=()=>{const c=a[0];if(c?.borderBoxSize){const u=c.borderBoxSize[0];if(u){o({width:u.inlineSize,height:u.blockSize});return}}o(Dc(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()});return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},Er={passive:!0},TN=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=()=>{t({width:n.innerWidth,height:n.innerHeight})};return r(),n.addEventListener("resize",r,Er),()=>{n.removeEventListener("resize",r)}},EN=typeof window>"u"?!0:"onscrollend"in window,Bh=(e,t,n)=>{const r=e.scrollElement;if(!r)return;const o=e.targetWindow;if(!o)return;const i=e.options.useScrollendEvent&&EN;let a=0;const l=i?null:jN(o,()=>t(a,!1),e.options.isScrollingResetDelay),c=f=>()=>{a=n(r),l?.(),t(a,f)},u=c(!0),d=c(!1);return r.addEventListener("scroll",u,Er),i&&r.addEventListener("scrollend",d,Er),()=>{r.removeEventListener("scroll",u),i&&r.removeEventListener("scrollend",d)}},AN=(e,t)=>Bh(e,t,n=>{const{horizontal:r,isRtl:o}=e.options;return r?n.scrollLeft*(o&&-1||1):n.scrollTop}),RN=(e,t)=>Bh(e,t,n=>e.options.horizontal?n.scrollX:n.scrollY),IN=(e,t,n)=>{if(t?.borderBoxSize){const r=t.borderBoxSize[0];if(r)return Math.round(r[n.options.horizontal?"inlineSize":"blockSize"])}return e[n.options.horizontal?"offsetWidth":"offsetHeight"]},Uh=(e,{adjustments:t=0,behavior:n},r)=>{var o,i;(i=(o=r.scrollElement)==null?void 0:o.scrollTo)==null||i.call(o,{[r.options.horizontal?"left":"top"]:e+t,behavior:n})},zN=Uh,ON=Uh;class PN{constructor(t){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var n,r,o;return((o=(r=(n=this.targetWindow)==null?void 0:n.performance)==null?void 0:r.now)==null?void 0:o.call(r))??Date.now()},this.observer=(()=>{let n=null;const r=()=>n||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:n=new this.targetWindow.ResizeObserver(o=>{o.forEach(i=>{const a=()=>{const l=i.target,c=this.indexFromElement(l);if(!l.isConnected){this.observer.unobserve(l);for(const[u,d]of this.elementsCache)if(d===l){this.elementsCache.delete(u);break}return}this.shouldMeasureDuringScroll(c)&&this.resizeItem(c,this.options.measureElement(l,i,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(a):a()})}));return{disconnect:()=>{var o;(o=r())==null||o.disconnect(),n=null},observe:o=>{var i;return(i=r())==null?void 0:i.observe(o,{box:"border-box"})},unobserve:o=>{var i;return(i=r())==null?void 0:i.unobserve(o)}}})(),this.range=null,this.setOptions=n=>{var r,o;const i={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:SN,rangeExtractor:CN,onChange:()=>{},measureElement:IN,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate"};for(const u in n){const d=n[u];d!==void 0&&(i[u]=d)}const a=this.options;let l=null,c=null;if(a!==void 0&&a.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){const u=a.count,d=i.count,f=this.getMeasurements(),m=u>0?((r=f[0])==null?void 0:r.key)??a.getItemKey(0):null,h=u>0?((o=f[u-1])==null?void 0:o.key)??a.getItemKey(u-1):null;if(d!==u||u>0&&d>0&&(i.getItemKey(0)!==m||i.getItemKey(d-1)!==h)){const x=u>0?this.getVirtualItemForOffset(this.getScrollOffset())??f[0]:null;x&&(l=[x.key,this.getScrollOffset()-x.start]);const b=i.followOnAppend===!0?"auto":i.followOnAppend||null;b&&d>u&&this.isAtEnd(a.scrollEndThreshold)&&(u===0||i.getItemKey(d-1)!==h)&&(c=b)}}this.options=i,(l||c)&&(this.pendingScrollAnchor=[l?.[0]??null,l?.[1]??0,c])},this.notify=n=>{var r,o;(o=(r=this.options).onChange)==null||o.call(r,this,n)},this.maybeNotify=zn(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),n=>{this.notify(n)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(n=>n()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var n;const r=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==r){if(this.cleanup(),!r){this.maybeNotify();return}if(this.scrollElement=r,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((n=this.scrollElement)==null?void 0:n.window)??null,this.elementsCache.forEach(i=>{this.observer.observe(i)}),this.unsubs.push(this.options.observeElementRect(this,i=>{this.scrollRect=i,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(i,a)=>{this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5&&(i=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0,this.scrollDirection=a?this.getScrollOffset()<i?"forward":"backward":null,this.scrollOffset=i,this.isScrolling=a,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),"addEventListener"in this.scrollElement){const i=this.scrollElement,a=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},l=()=>{this._iosTouching=!1,!(!Lc()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};i.addEventListener("touchstart",a,Er),i.addEventListener("touchend",l,Er),this.unsubs.push(()=>{i.removeEventListener("touchstart",a),i.removeEventListener("touchend",l),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const o=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,o&&this.scrollElement&&this.options.enabled){const[i,a,l]=o;if(i!==null){const{count:c,getItemKey:u}=this.options;let d=0;for(;d<c&&u(d)!==i;)d++;const f=d<c?this.getMeasurements()[d]:void 0;if(f){const m=f.start+a-this.getScrollOffset();Mc(m,0)||this.applyScrollAdjustment(m)}}l&&this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const n=this.getScrollOffset(),r=this.getMaxScrollOffset();if(n<0||n>r)return;const o=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(n,{adjustments:this.scrollAdjustments+=o,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(n,r)=>{const o=new Map,i=new Map;for(let a=r-1;a>=0;a--){const l=n[a];if(o.has(l.lane))continue;const c=i.get(l.lane);if(c==null||l.end>c.end?i.set(l.lane,l):l.end<c.end&&o.set(l.lane,!0),o.size===this.options.lanes)break}return i.size===this.options.lanes?Array.from(i.values()).sort((a,l)=>a.end===l.end?a.index-l.index:a.end-l.end)[0]:void 0},this.getMeasurementOptions=zn(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(n,r,o,i,a,l,c)=>(this.prevLanes!==void 0&&this.prevLanes!==l&&(this.lanesChangedFlag=!0),this.prevLanes=l,this.pendingMin=null,{count:n,paddingStart:r,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c}),{key:!1}),this.getMeasurements=zn(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:n,paddingStart:r,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c},u)=>{const d=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n)for(const v of this.laneAssignments.keys())v>=n&&this.laneAssignments.delete(v);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(v=>{this.itemSizeCache.set(v.key,v.size)}));const f=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n&&(this.lanesSettling=!1),l===1){const v=this.options.gap,g=n*2;let x=this._flatMeasurements;if(!x||x.length<g){const _=new Float64Array(g);x&&f>0&&_.set(x.subarray(0,f*2)),x=_,this._flatMeasurements=x}let b;if(f===0)b=r+o;else{const _=f-1;b=x[_*2]+x[_*2+1]+v}for(let _=f;_<n;_++){const j=i(_),S=d.get(j),T=typeof S=="number"?S:this.options.estimateSize(_);x[_*2]=b,x[_*2+1]=T,b+=T+v}const y=_N(n,x,i);return this.measurementsCache=y,y}const m=this.measurementsCache.slice(0,f),h=new Array(l).fill(void 0);for(let v=0;v<f;v++){const g=m[v];g&&(h[g.lane]=v)}for(let v=f;v<n;v++){const g=i(v),x=this.laneAssignments.get(v);let b,y;const _=c==="estimate"||d.has(g);if(x!==void 0&&this.options.lanes>1){b=x;const N=h[b],R=N!==void 0?m[N]:void 0;y=R?R.end+this.options.gap:r+o}else{const N=this.options.lanes===1?m[v-1]:this.getFurthestMeasurement(m,v);y=N?N.end+this.options.gap:r+o,b=N?N.lane:v%this.options.lanes,this.options.lanes>1&&_&&this.laneAssignments.set(v,b)}const j=d.get(g),S=typeof j=="number"?j:this.options.estimateSize(v),T=y+S;m[v]={index:v,start:y,size:S,end:T,key:g,lane:b},h[b]=v}return this.measurementsCache=m,m},{key:!1,debug:()=>this.options.debug}),this.calculateRange=zn(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,r,o,i)=>this.range=n.length>0&&r>0?MN({measurements:n,outerSize:r,scrollOffset:o,lanes:i,flat:i===1&&this._flatMeasurements!=null?this._flatMeasurements:null}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=zn(()=>{let n=null,r=null;const o=this.calculateRange();return o&&(n=o.startIndex,r=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,n,r]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,r]},(n,r,o,i,a)=>i===null||a===null?[]:n({startIndex:i,endIndex:a,overscan:r,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=n=>{const r=this.options.indexAttribute,o=n.getAttribute(r);return o?parseInt(o,10):(console.warn(`Missing attribute name '${r}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=n=>{var r;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const o=this.scrollState.index??((r=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:r.index);if(o!==void 0&&this.range){const i=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),a=Math.max(0,o-i),l=Math.min(this.options.count-1,o+i);return n>=a&&n<=l}return!0},this.measureElement=n=>{if(!n){this.elementsCache.forEach((a,l)=>{a.isConnected||(this.observer.unobserve(a),this.elementsCache.delete(l))});return}const r=this.indexFromElement(n),o=this.options.getItemKey(r),i=this.elementsCache.get(o);i!==n&&(i&&this.observer.unobserve(i),this.observer.observe(n),this.elementsCache.set(o,n)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(r)&&this.resizeItem(r,this.options.measureElement(n,void 0,this))},this.resizeItem=(n,r)=>{var o,i;if(n<0||n>=this.options.count)return;let a,l,c;const u=this._flatMeasurements;if(this.options.lanes===1&&u!==null)c=this.options.getItemKey(n),l=u[n*2],a=u[n*2+1];else{const m=this.measurementsCache[n];if(!m)return;c=m.key,l=m.start,a=m.size}const d=this.itemSizeCache.get(c)??a,f=r-d;if(f!==0){const m=this.options.anchorTo==="end"&&((o=this.scrollState)==null?void 0:o.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,h=m?this.getTotalSize():0,v=((i=this.scrollState)==null?void 0:i.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[n]??{index:n,key:c,start:l,size:a,end:l+a,lane:0},f,this):l<this.getScrollOffset()+this.scrollAdjustments&&this.scrollDirection!=="backward");(this.pendingMin===null||n<this.pendingMin)&&(this.pendingMin=n),this.itemSizeCache.set(c,r),this.itemSizeCacheVersion++,m?this.applyScrollAdjustment(this.getTotalSize()-h):v&&this.applyScrollAdjustment(f),this.notify(!1)}},this.getVirtualItems=zn(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,r)=>{const o=[];for(let i=0,a=n.length;i<a;i++){const l=n[i],c=r[l];o.push(c)}return o},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=n=>{const r=this.getMeasurements();if(r.length===0)return;const o=this._flatMeasurements,i=this.options.lanes===1&&o!=null,a=Wh(0,r.length-1,i?l=>o[l*2]:l=>Pc(r[l]).start,n);return Pc(r[a])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const n=this.scrollElement.document.documentElement;return this.options.horizontal?n.scrollWidth-this.scrollElement.innerWidth:n.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(n=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=n,this.getOffsetForAlignment=(n,r,o=0)=>{if(!this.scrollElement)return 0;const i=this.getSize(),a=this.getScrollOffset();r==="auto"&&(r=n>=a+i?"end":"start"),r==="center"?n+=(o-i)/2:r==="end"&&(n-=i);const l=this.getMaxScrollOffset();return Math.max(Math.min(l,n),0)},this.getOffsetForIndex=(n,r="auto")=>{n=Math.max(0,Math.min(n,this.options.count-1));const o=this.getSize(),i=this.getScrollOffset(),a=this.measurementsCache[n];if(!a)return;if(r==="auto")if(a.end>=i+o-this.options.scrollPaddingEnd)r="end";else if(a.start<=i+this.options.scrollPaddingStart)r="start";else return[i,r];if(r==="end"&&n===this.options.count-1)return[this.getMaxScrollOffset(),r];const l=r==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,r,a.size),r]},this.scrollToOffset=(n,{align:r="start",behavior:o="auto"}={})=>{const i=this.getOffsetForAlignment(n,r),a=this.now();this.scrollState={index:null,align:r,behavior:o,startedAt:a,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollToIndex=(n,{align:r="auto",behavior:o="auto"}={})=>{n=Math.max(0,Math.min(n,this.options.count-1));const i=this.getOffsetForIndex(n,r);if(!i)return;const[a,l]=i,c=this.now();this.scrollState={index:n,align:l,behavior:o,startedAt:c,lastTargetOffset:a,stableFrames:0},this._scrollToOffset(a,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollBy=(n,{behavior:r="auto"}={})=>{const o=this.getScrollOffset()+n,i=this.now();this.scrollState={index:null,align:"start",behavior:r,startedAt:i,lastTargetOffset:o,stableFrames:0},this._scrollToOffset(o,{adjustments:void 0,behavior:r}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:n="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:n});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:n})},this.getTotalSize=()=>{var n;const r=this.getMeasurements();let o;if(r.length===0)o=this.options.paddingStart;else if(this.options.lanes===1){const i=r.length-1,a=this._flatMeasurements;a!=null?o=a[i*2]+a[i*2+1]:o=((n=r[i])==null?void 0:n.end)??0}else{const i=Array(this.options.lanes).fill(null);let a=r.length-1;for(;a>=0&&i.some(l=>l===null);){const l=r[a];i[l.lane]===null&&(i[l.lane]=l.end),a--}o=Math.max(...i.filter(l=>l!==null))}return Math.max(o-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{const n=[];if(this.itemSizeCache.size===0)return n;const r=this.getMeasurements();for(const o of r)o&&this.itemSizeCache.has(o.key)&&n.push({index:o.index,key:o.key,start:o.start,size:o.size,end:o.end,lane:o.lane});return n},this._scrollToOffset=(n,{adjustments:r,behavior:o})=>{this._intendedScrollOffset=n+(r??0),this.options.scrollToFn(n,{behavior:o,adjustments:r},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(t)}applyScrollAdjustment(t,n){t!==0&&(Lc()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:n}))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}const r=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,o=r?r[0]:this.scrollState.lastTargetOffset,i=1,a=o!==this.scrollState.lastTargetOffset;if(!a&&Mc(o,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=i){this.getScrollOffset()!==o&&this._scrollToOffset(o,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,a){const l=this.getSize()||600,c=Math.abs(o-this.getScrollOffset()),u=this.scrollState.behavior==="smooth"&&c>l;this.scrollState.lastTargetOffset=o,u||(this.scrollState.behavior="auto"),this._scrollToOffset(o,{adjustments:void 0,behavior:u?"smooth":"auto"})}this.scheduleScrollReconcile()}}const Wh=(e,t,n,r)=>{for(;e<=t;){const o=(e+t)/2|0,i=n(o);if(i<r)e=o+1;else if(i>r)t=o-1;else return o}return e>0?e-1:0};function MN({measurements:e,outerSize:t,scrollOffset:n,lanes:r,flat:o}){const i=e.length-1,a=o?d=>o[d*2]:d=>e[d].start,l=o?d=>o[d*2]+o[d*2+1]:d=>e[d].end;if(e.length<=r)return{startIndex:0,endIndex:i};let c=Wh(0,i,a,n),u=c;if(r===1)for(;u<i&&l(u)<n+t;)u++;else if(r>1){const d=Array(r).fill(0);for(;u<i&&d.some(m=>m<n+t);){const m=e[u];d[m.lane]=m.end,u++}const f=Array(r).fill(n+t);for(;c>=0&&f.some(m=>m>=n);){const m=e[c];f[m.lane]=m.start,c--}c=Math.max(0,c-c%r),u=Math.min(i,u+(r-1-u%r))}return{startIndex:c,endIndex:u}}const $c=typeof document<"u"?p.useLayoutEffect:p.useEffect;function Hh({useFlushSync:e=!0,...t}){const n=p.useReducer(i=>i+1,0)[1],r={...t,onChange:(i,a)=>{var l;e&&a?Rr.flushSync(n):n(),(l=t.onChange)==null||l.call(t,i,a)}},[o]=p.useState(()=>new PN(r));return o.setOptions(r),$c(()=>o._didMount(),[]),$c(()=>o._willUpdate()),o}function LN(e){return Hh({observeElementRect:NN,observeElementOffset:AN,scrollToFn:ON,...e})}function DN(e){return Hh({getScrollElement:()=>typeof document<"u"?window:null,observeElementRect:TN,observeElementOffset:RN,scrollToFn:zN,initialOffset:()=>typeof document<"u"?window.scrollY:0,...e})}const Ht="agent-inspector:focus-log";function Vs(e){window.dispatchEvent(new CustomEvent(Ht,{detail:e}))}function Do(e){if(typeof CustomEvent>"u"||!(e instanceof CustomEvent))return null;const t=e.detail,n=ke(t,"logId");if(typeof n!="number"||!Number.isInteger(n)||n<0)return null;const r=ke(t,"tab");switch(r){case"anatomy":case"request":break;case void 0:break;default:return null}const o=ke(t,"source");switch(o){case"virtualizer":return{logId:n,tab:r??"request",source:o};case void 0:return{logId:n,tab:r??"request"};default:return null}}function os(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function $N(e){switch(e){case"end_turn":case"tool_use":return e;default:return null}}function FN(e){switch(e){case"stop":case"length":return e;default:return null}}function BN(e){switch(e){case"max_output_tokens":case"max_tokens":return!0;default:return!1}}function UN(e){if(e.responseText===null)return null;try{let t=JSON.parse(e.responseText);if(typeof t=="string"&&(t=JSON.parse(t)),!os(t))return null;if(typeof t.stop_reason=="string")return $N(t.stop_reason);if(Array.isArray(t.choices))for(const n of t.choices){if(!os(n)||typeof n.finish_reason!="string")continue;const r=FN(n.finish_reason);if(r!==null)return r}if(Array.isArray(t.output)){for(const n of t.output)if(os(n)&&n.type==="function_call")return"tool_use";if(t.status==="completed")return"stop"}if(t.status==="incomplete"&&os(t.incomplete_details)){const n=t.incomplete_details.reason;if(typeof n=="string"&&BN(n))return"length"}return null}catch{return null}}function bl(e){return e==="end_turn"||e==="stop"||e==="length"}function yt({className:e,style:t,d:n,eyeStalks:r,eyes:o,legs:i,extras:a}){return s.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:t,className:ce("inline-block size-5",e),children:[s.jsx("path",{d:n}),r,o,i,a]})}const dn=s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"6.5",y1:"16",x2:"4.5",y2:"19.5"}),s.jsx("line",{x1:"9",y1:"17.5",x2:"8",y2:"20.5"}),s.jsx("line",{x1:"15",y1:"17.5",x2:"16",y2:"20.5"}),s.jsx("line",{x1:"17.5",y1:"16",x2:"19.5",y2:"19.5"})]}),Zh=s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"7",y1:"16",x2:"5.5",y2:"18.5"}),s.jsx("line",{x1:"9.5",y1:"17",x2:"8.5",y2:"19.5"}),s.jsx("line",{x1:"14.5",y1:"17",x2:"15.5",y2:"19.5"}),s.jsx("line",{x1:"17",y1:"16",x2:"18.5",y2:"18.5"})]});function Vh({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"})]})})}function WN({className:e}){return s.jsx(yt,{className:e,d:"M4 13 C4 7 7.5 5.5 12 5.5 C16.5 5.5 20 7 20 13 C20 17.5 16.5 19 12 19 C7.5 19 4 17.5 4 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"9.5",y1:"6.5",x2:"9.5",y2:"4.5"}),s.jsx("line",{x1:"14.5",y1:"6.5",x2:"14.5",y2:"4.5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"})]}),legs:Zh,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C4 9.5 2.5 10 3 12 C3.5 13.5 4.5 13 5 12"}),s.jsx("path",{d:"M19 11 C20 9.5 21.5 10 21 12 C20.5 13.5 19.5 13 19 12"})]})})}function HN({className:e}){return s.jsx(yt,{className:e,d:"M3 13.5 C3 8 7 6 12 6 C17 6 21 8 21 13.5 C21 17 17 19 12 19 C7 19 3 17 3 13.5 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"7",y1:"7",x2:"6.5",y2:"4.5"}),s.jsx("line",{x1:"17",y1:"7",x2:"17.5",y2:"4.5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"6.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"17.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M4 12 C2.5 10.5 1 11 1.5 13 C2 14.5 3.5 14 4.5 13"}),s.jsx("path",{d:"M20 12 C21.5 10.5 23 11 22.5 13 C22 14.5 20.5 14 19.5 13"})]})})}function ZN({className:e}){return s.jsx(yt,{className:e,d:"M6 14 C6 8 9 5.5 12 5.5 C15 5.5 18 8 18 14 C18 18 15 20 12 20 C9 20 6 18 6 14 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"6.5",x2:"10",y2:"3.5"}),s.jsx("line",{x1:"14",y1:"6.5",x2:"14",y2:"3.5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"10",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"7",y1:"17",x2:"5",y2:"20.5"}),s.jsx("line",{x1:"9.5",y1:"18.5",x2:"8.5",y2:"21.5"}),s.jsx("line",{x1:"14.5",y1:"18.5",x2:"15.5",y2:"21.5"}),s.jsx("line",{x1:"17",y1:"17",x2:"19",y2:"20.5"})]}),extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M6.5 11 C5 8.5 3 9 3.5 11.5 C4 13.5 5 13 6 12"}),s.jsx("path",{d:"M17.5 11 C19 8.5 21 9 20.5 11.5 C20 13.5 19 13 18 12"})]})})}function VN({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 L13 4 L14 7 C16 7 19 9 19 13 C19 16 16 18 13 18 L12 21 L11 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"})]})})}function qN({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),s.jsx("line",{x1:"13.5",y1:"4",x2:"15.5",y2:"5"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"})]})})}function KN({className:e}){return s.jsx(yt,{className:e,d:"M5.5 13.5 C5.5 10 8.5 8 12 8 C15.5 8 18.5 10 18.5 13.5 C18.5 16 15.5 17.5 12 17.5 C8.5 17.5 5.5 16 5.5 13.5 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"8",x2:"10",y2:"6"}),s.jsx("line",{x1:"14",y1:"8",x2:"14",y2:"6"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"9",y1:"6",x2:"11",y2:"6.5"}),s.jsx("line",{x1:"13",y1:"6",x2:"15",y2:"6.5"})]}),legs:Zh,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M6 11.5 C4.5 10.5 3 11 3.5 12.5 C4 13.5 5 13 5.5 12.5"}),s.jsx("path",{d:"M18 11.5 C19.5 10.5 21 11 20.5 12.5 C20 13.5 19 13 18.5 12.5"})]})})}function GN({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),s.jsx("line",{x1:"8.5",y1:"4",x2:"10.5",y2:"4.5"}),s.jsx("line",{x1:"15.5",y1:"4",x2:"13.5",y2:"4.5"}),s.jsx("path",{d:"M9 15.5 C10 14.5 14 14.5 15 15.5"})]})})}function JN({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"}),s.jsx("circle",{cx:"14.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),s.jsx("ellipse",{cx:"12",cy:"15",rx:"2",ry:"1.5",fill:"currentColor",stroke:"none"})]})})}function YN({className:e}){return s.jsx(yt,{className:e,d:"M4.5 13 C4.5 8 7.5 6 12 6 C16.5 6 19.5 8 19.5 13 C19.5 17 16.5 18.5 12 18.5 C7.5 18.5 4.5 17 4.5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"9.5",y1:"7",x2:"9",y2:"5"}),s.jsx("line",{x1:"14.5",y1:"7",x2:"15",y2:"5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"9",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"15",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9 2 9.5 2.5 12 C3 14 4 13 5 12"}),s.jsx("path",{d:"M19 11 C20.5 9 22 9.5 21.5 12 C21 14 20 13 19 12"}),s.jsx("path",{d:"M9 14.5 C10 16 14 16 15 14.5"}),s.jsx("circle",{cx:"7",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"}),s.jsx("circle",{cx:"17",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"})]})})}function XN({className:e}){return s.jsx(yt,{className:e,d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5.5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5.5"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"7.5",y1:"5.5",x2:"16.5",y2:"5.5"}),s.jsx("rect",{x:"7",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"}),s.jsx("rect",{x:"13",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"})]}),legs:dn,extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),s.jsx("path",{d:"M9.5 15 C10.5 16 13.5 16 14.5 15"})]})})}function QN({className:e}){return s.jsx(yt,{className:e,d:"M7 13.5 C7 10.5 9.5 9 12 9 C14.5 9 17 10.5 17 13.5 C17 16 14.5 17.5 12 17.5 C9.5 17.5 7 16 7 13.5 Z",eyeStalks:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"10.5",y1:"9.5",x2:"10.5",y2:"8"}),s.jsx("line",{x1:"13.5",y1:"9.5",x2:"13.5",y2:"8"})]}),eyes:s.jsxs(s.Fragment,{children:[s.jsx("circle",{cx:"10.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"13.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:s.jsxs(s.Fragment,{children:[s.jsx("line",{x1:"8",y1:"16",x2:"6.5",y2:"18"}),s.jsx("line",{x1:"10",y1:"17",x2:"9.5",y2:"19"}),s.jsx("line",{x1:"14",y1:"17",x2:"14.5",y2:"19"}),s.jsx("line",{x1:"16",y1:"16",x2:"17.5",y2:"18"})]}),extras:s.jsxs(s.Fragment,{children:[s.jsx("path",{d:"M7.5 12 C6.5 11 5.5 11.5 6 13 C6.5 14 7 13.5 7.5 13"}),s.jsx("path",{d:"M16.5 12 C17.5 11 18.5 11.5 18 13 C17.5 14 17 13.5 16.5 13"})]})})}const Ar=[Vh,WN,HN,ZN,VN,qN,KN,GN,JN,YN,XN,QN];function qs(e){return Ar[Math.abs(e)%Ar.length]??Vh}function e3(e){const t=Ar.length-2;return t<=0?0:1+((Number.isFinite(e)?Math.trunc(e):0)%t+t)%t}function t3(e){return qs(e3(e))}const n3="x-anthropic-billing-header:";function r3(e){return e.trimStart().toLowerCase().startsWith(n3)}function s3(e){return xl(e)?Object.prototype.hasOwnProperty.call(e,"system"):!1}function o3(e){if(!xl(e))return!1;const t=ke(e,"type"),n=ke(e,"text");return typeof t!="string"||t!=="text"||typeof n!="string"?!1:r3(n)}function i3(e){let t;try{t=JSON.parse(e)}catch{return{body:e,removed:0}}if(!s3(t))return{body:e,removed:0};const n=t.system;if(!Array.isArray(n)||n.length===0)return{body:e,removed:0};const r=[];let o=0;for(const i of n){if(o3(i)){o+=1;continue}r.push(i)}return o===0?{body:e,removed:0}:(r.length===0?delete t.system:t.system=r,{body:JSON.stringify(t),removed:o})}const a3=400,Fc=2e3;function l3(e){return Array.isArray(e)}function c3(e,t){const n=[e];let r=0;for(;n.length>0;){const o=n.pop();if(o!==void 0){if(r+=1,r>t)return r;if(!(o===null||typeof o!="object")){if(l3(o)){for(const i of o)n.push(i);continue}for(const i of Object.keys(o)){const a=o[i];a!==void 0&&n.push(a)}}}}return r}function u3(e){const t=c3(e,Fc+1);return t<=a3?{depth:Number.POSITIVE_INFINITY}:t<=Fc?{depth:3}:{depth:2}}function d3(e){try{const t=JSON.parse(e);return{kind:"json",data:Ks(t)}}catch{return{kind:"text"}}}function oi(e){const t=p.useMemo(()=>e===null?null:d3(e),[e]),n=t?.kind==="json"?t.data:null,r=p.useMemo(()=>n===null?null:u3(n),[n]),[o,i]=p.useState(!1),[a,l]=p.useState(0),[c,u]=p.useState(0),[d,f]=p.useTransition(),m=p.useCallback(()=>{const h=!o,v=h&&r!==null?r.depth:0;f(()=>{i(h),l(v),u(g=>g+1)})},[o,r]);return{parsedData:n,policy:r,isExpanded:o,toggle:m,isPending:d,bulkDepth:a,bulkRevision:c}}function Ks(e){if(e==null)return null;switch(typeof e){case"string":return e;case"number":return e;case"boolean":return e;case"object":{if(Array.isArray(e))return e.map(n=>Ks(n));const t={};for(const n of Object.keys(e)){const r=Object.getOwnPropertyDescriptor(e,n);t[n]=Ks(r?.value)}return t}case"bigint":case"symbol":case"function":case"undefined":return String(e)}return null}function qh({className:e,orientation:t="horizontal",...n}){return s.jsx(QC,{"data-slot":"tabs","data-orientation":t,orientation:t,className:ce("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const f3=Va("rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-9 data-[variant=line]:rounded-none group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col",{variants:{variant:{default:"bg-muted",line:"gap-1 bg-transparent"}},defaultVariants:{variant:"default"}});function Kh({className:e,variant:t="default",...n}){return s.jsx(e5,{"data-slot":"tabs-list","data-variant":t,className:ce(f3({variant:t}),e),...n})}function ft({className:e,...t}){return s.jsx(t5,{"data-slot":"tabs-trigger",className:ce("focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent","data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 data-[state=active]:text-foreground","after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",e),...t})}function pt({className:e,...t}){return s.jsx(n5,{"data-slot":"tabs-content",className:ce("flex-1 outline-none",e),...t})}function $t(e){const[t,n]=p.useState(!1),r=p.useRef(null);p.useEffect(()=>()=>{r.current!==null&&clearTimeout(r.current)},[]);const o=p.useCallback(i=>{i.stopPropagation(),e!==null&&Zt(e).then(a=>{a&&(n(!0),r.current!==null&&clearTimeout(r.current),r.current=setTimeout(()=>n(!1),2e3))})},[e]);return{copied:t,copy:o}}const p3=p.lazy(()=>Sn(()=>import("./CompareDrawer-Ccrrcx1j.js"),__vite__mapDeps([0,1])).then(e=>({default:e.CompareDrawer}))),h3=p.lazy(()=>Sn(()=>import("./ReplayDialog-C7axhr-l.js"),__vite__mapDeps([2,1,3])).then(e=>({default:e.ReplayDialog}))),m3=p.lazy(()=>Sn(()=>import("./RequestAnatomy-WOptg8j_.js"),__vite__mapDeps([4,1])).then(e=>({default:e.RequestAnatomy}))),g3=p.lazy(()=>Sn(()=>import("./ResponseView-CSAcxh_M.js"),__vite__mapDeps([3,1])).then(e=>({default:e.ResponseView}))),x3=p.lazy(()=>Sn(()=>import("./StreamingChunkSequence-DJS5KhPx.js"),__vite__mapDeps([5,1])).then(e=>({default:e.StreamingChunkSequence}))),Xi=p.lazy(()=>Sn(()=>import("./json-viewer-inX5QSa3.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewer}))),b3=p.lazy(()=>Sn(()=>import("./json-viewer-inX5QSa3.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewerFromString}))),v3=1200,y3=12;function w3(e){const{containerRef:t,setExpandToPath:n,ensureTabActive:r,highlightMs:o}=e,i=p.useRef(null);return p.useCallback(a=>{r?.(),n(a.path);const l=f=>{f.scrollIntoView({behavior:"smooth",block:"center"}),f.classList.add("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),i.current!==null&&clearTimeout(i.current),i.current=setTimeout(()=>{f.classList.remove("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),n(null)},o??v3)},u=`[data-anatomy-path="${(f=>typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(f):f.replace(/(["'\\[\](){}])/g,"\\$1"))(a.path)}"]`,d=f=>{const m=t.current;if(m!==null){const h=m.querySelector(u);if(h!==null){l(h);return}}f>0?window.requestAnimationFrame(()=>d(f-1)):n(null)};window.requestAnimationFrame(()=>d(y3))},[t,r,o,n])}class Gh{diff(t,n,r={}){let o;typeof r=="function"?(o=r,r={}):"callback"in r&&(o=r.callback);const i=this.castInput(t,r),a=this.castInput(n,r),l=this.removeEmpty(this.tokenize(i,r)),c=this.removeEmpty(this.tokenize(a,r));return this.diffWithOptionsObj(l,c,r,o)}diffWithOptionsObj(t,n,r,o){var i;const a=y=>{if(y=this.postProcess(y,r),o){setTimeout(function(){o(y)},0);return}else return y},l=n.length,c=t.length;let u=1,d=l+c;r.maxEditLength!=null&&(d=Math.min(d,r.maxEditLength));const f=(i=r.timeout)!==null&&i!==void 0?i:1/0,m=Date.now()+f,h=[{oldPos:-1,lastComponent:void 0}];let v=this.extractCommon(h[0],n,t,0,r);if(h[0].oldPos+1>=c&&v+1>=l)return a(this.buildValues(h[0].lastComponent,n,t));let g=-1/0,x=1/0;const b=()=>{for(let y=Math.max(g,-u);y<=Math.min(x,u);y+=2){let _;const j=h[y-1],S=h[y+1];j&&(h[y-1]=void 0);let T=!1;if(S){const R=S.oldPos-y;T=S&&0<=R&&R<l}const N=j&&j.oldPos+1<c;if(!T&&!N){h[y]=void 0;continue}if(!N||T&&j.oldPos<S.oldPos?_=this.addToPath(S,!0,!1,0,r):_=this.addToPath(j,!1,!0,1,r),v=this.extractCommon(_,n,t,y,r),_.oldPos+1>=c&&v+1>=l)return a(this.buildValues(_.lastComponent,n,t))||!0;h[y]=_,_.oldPos+1>=c&&(x=Math.min(x,y-1)),v+1>=l&&(g=Math.max(g,y+1))}u++};if(o)(function y(){setTimeout(function(){if(u>d||Date.now()>m)return o(void 0);b()||y()},0)})();else for(;u<=d&&Date.now()<=m;){const y=b();if(y)return y}}addToPath(t,n,r,o,i){const a=t.lastComponent;return a&&!i.oneChangePerToken&&a.added===n&&a.removed===r?{oldPos:t.oldPos+o,lastComponent:{count:a.count+1,added:n,removed:r,previousComponent:a.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:n,removed:r,previousComponent:a}}}extractCommon(t,n,r,o,i){const a=n.length,l=r.length;let c=t.oldPos,u=c-o,d=0;for(;u+1<a&&c+1<l&&this.equals(r[c+1],n[u+1],i);)u++,c++,d++,i.oneChangePerToken&&(t.lastComponent={count:1,previousComponent:t.lastComponent,added:!1,removed:!1});return d&&!i.oneChangePerToken&&(t.lastComponent={count:d,previousComponent:t.lastComponent,added:!1,removed:!1}),t.oldPos=c,u}equals(t,n,r){return r.comparator?r.comparator(t,n):t===n||!!r.ignoreCase&&t.toLowerCase()===n.toLowerCase()}removeEmpty(t){const n=[];for(let r=0;r<t.length;r++)t[r]&&n.push(t[r]);return n}castInput(t,n){return t}tokenize(t,n){return Array.from(t)}join(t){return t.join("")}postProcess(t,n){return t}get useLongestToken(){return!1}buildValues(t,n,r){const o=[];let i;for(;t;)o.push(t),i=t.previousComponent,delete t.previousComponent,t=i;o.reverse();const a=o.length;let l=0,c=0,u=0;for(;l<a;l++){const d=o[l];if(d.removed)d.value=this.join(r.slice(u,u+d.count)),u+=d.count;else{if(!d.added&&this.useLongestToken){let f=n.slice(c,c+d.count);f=f.map(function(m,h){const v=r[u+h];return v.length>m.length?v:m}),d.value=this.join(f)}else d.value=this.join(n.slice(c,c+d.count));c+=d.count,d.added||(u+=d.count)}}return o}}class k3 extends Gh{constructor(){super(...arguments),this.tokenize=Yh}equals(t,n,r){return r.ignoreWhitespace?((!r.newlineIsToken||!t.includes(`
|
|
96
|
+
`))&&(t=t.trim()),(!r.newlineIsToken||!n.includes(`
|
|
97
|
+
`))&&(n=n.trim())):r.ignoreNewlineAtEof&&!r.newlineIsToken&&(t.endsWith(`
|
|
98
|
+
`)&&(t=t.slice(0,-1)),n.endsWith(`
|
|
99
|
+
`)&&(n=n.slice(0,-1))),super.equals(t,n,r)}}const _3=new k3;function Jh(e,t,n){return _3.diff(e,t,n)}function Yh(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,`
|
|
100
|
+
`));const n=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(let o=0;o<r.length;o++){const i=r[o];o%2&&!t.newlineIsToken?n[n.length-1]+=i:n.push(i)}return n}class j3 extends Gh{constructor(){super(...arguments),this.tokenize=Yh}get useLongestToken(){return!0}castInput(t,n){const{undefinedReplacement:r,stringifyReplacer:o=(i,a)=>typeof a>"u"?r:a}=n;return typeof t=="string"?t:JSON.stringify(Qi(t,null,null,o),null," ")}equals(t,n,r){return super.equals(t.replace(/,([\r\n])/g,"$1"),n.replace(/,([\r\n])/g,"$1"),r)}}const S3=new j3;function C3(e,t,n){return S3.diff(e,t,n)}function Qi(e,t,n,r,o){t=t||[],n=n||[],r&&(e=r(o===void 0?"":o,e));let i;for(i=0;i<t.length;i+=1)if(t[i]===e)return n[i];let a;if(Object.prototype.toString.call(e)==="[object Array]"){for(t.push(e),a=new Array(e.length),n.push(a),i=0;i<e.length;i+=1)a[i]=Qi(e[i],t,n,r,String(i));return t.pop(),n.pop(),a}if(e&&e.toJSON&&(e=e.toJSON()),typeof e=="object"&&e!==null){t.push(e),a={},n.push(a);const l=[];let c;for(c in e)Object.prototype.hasOwnProperty.call(e,c)&&l.push(c);for(l.sort(),i=0;i<l.length;i+=1)c=l[i],a[c]=Qi(e[c],t,n,r,c);t.pop(),n.pop()}else a=e;return a}function Bc(e){return e===void 0?[]:Object.entries(e).map(t=>[t[0].toLowerCase(),t[1]]).sort(([t],[n])=>t.localeCompare(n))}function Uc([e,t]){return`${e}: ${t}`}function ea(e){const t=[];let n=0,r=0;for(const o of e){const i=o.value.split(`
|
|
101
|
+
`);i.length>0&&i[i.length-1]===""&&i.pop();for(const a of i)o.added?(r+=1,t.push({kind:"added",text:a,oldLineNumber:null,newLineNumber:r})):o.removed?(n+=1,t.push({kind:"removed",text:a,oldLineNumber:n,newLineNumber:null})):(n+=1,r+=1,t.push({kind:"context",text:a,oldLineNumber:n,newLineNumber:r}))}return t}function N3(e,t){const n=Bc(e).map(Uc).join(`
|
|
102
|
+
`),r=Bc(t).map(Uc).join(`
|
|
103
|
+
`);if(n===r)return{lines:[],isEmpty:!0};const o=Jh(n,r);return{lines:ea(o),isEmpty:!1}}function Wc(e){try{const t=JSON.parse(e);return t===null||typeof t=="string"||typeof t=="object"?t:null}catch{return null}}function T3(e,t){const n=e??"",r=t??"";if(n===r)return{lines:[],isEmpty:!0};const o=Wc(n),i=Wc(r);if(o!==null&&i!==null){const l=C3(o,i)??[];if(l.length===1){const c=l[0];if(c!==void 0&&!c.added&&!c.removed)return{lines:[],isEmpty:!0}}return{lines:ea(l),isEmpty:!1}}const a=Jh(n,r);return{lines:ea(a),isEmpty:!1}}const E3=22,ii=1e4;function A3(e){return e==="added"?"+":e==="removed"?"-":" "}function R3(e){return e==="added"?"bg-green-500/10 text-green-700 dark:text-green-300":e==="removed"?"bg-red-500/10 text-red-700 dark:text-red-300":"text-foreground/80"}const I3=function({result:t,emptyLabel:n}){const[r,o]=p.useState("unified"),i=p.useRef(null),a=LN({count:t.lines.length,getScrollElement:()=>i.current,estimateSize:()=>E3,overscan:10});if(t.isEmpty)return s.jsx("div",{className:"rounded border border-dashed border-border bg-muted/30 px-4 py-6 text-center text-xs text-muted-foreground","data-testid":"diff-empty",children:n??"No transformation applied — raw and processed are identical."});const l=t.lines.length,c=l>ii,u=c?t.lines.slice(0,ii):t.lines;return s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center justify-between text-xs text-muted-foreground",children:[s.jsxs("span",{children:[l.toLocaleString()," line",l===1?"":"s",c&&` (showing first ${ii.toLocaleString()})`]}),s.jsxs("div",{className:"inline-flex rounded-md border border-border overflow-hidden",children:[s.jsxs("button",{type:"button",onClick:()=>o("unified"),"aria-pressed":r==="unified",className:ce("flex items-center gap-1 px-2 py-1 transition-colors",r==="unified"?"bg-muted text-foreground":"hover:bg-muted/50"),title:"Unified diff (single column)",children:[s.jsx(v2,{className:"size-3"}),"Unified"]}),s.jsxs("button",{type:"button",onClick:()=>o("split"),"aria-pressed":r==="split",className:ce("flex items-center gap-1 px-2 py-1 transition-colors border-l border-border",r==="split"?"bg-muted text-foreground":"hover:bg-muted/50"),title:"Split diff (side by side)",children:[s.jsx(ky,{className:"size-3"}),"Split"]})]})]}),s.jsx("div",{ref:i,className:"max-h-[60vh] overflow-auto rounded border border-border bg-background font-mono text-xs","data-testid":"diff-viewport",children:r==="unified"?s.jsx(z3,{virtualizer:a,lines:u}):s.jsx(M3,{lines:u})})]})};function z3({virtualizer:e,lines:t}){return s.jsx("div",{style:{height:`${e.getTotalSize()}px`,width:"100%",position:"relative"},children:e.getVirtualItems().map(n=>{const r=t[n.index];return r===void 0?null:s.jsxs("div",{"data-index":n.index,ref:e.measureElement,className:ce("flex items-start gap-3 px-2",R3(r.kind)),style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${n.start}px)`},children:[s.jsx("span",{className:"select-none text-muted-foreground/60 w-10 text-right tabular-nums",children:r.oldLineNumber??""}),s.jsx("span",{className:"select-none text-muted-foreground/60 w-10 text-right tabular-nums",children:r.newLineNumber??""}),s.jsx("span",{className:ce("select-none w-3 text-right font-bold",r.kind==="added"&&"text-green-600 dark:text-green-400",r.kind==="removed"&&"text-red-600 dark:text-red-400"),children:A3(r.kind)}),s.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:r.text})]},n.key)})})}function O3(e){const t=[];let n=0;for(;n<e.length;){const r=e[n];if(r===void 0)break;if(r.kind==="context"){t.push({left:{text:r.text,lineNumber:r.oldLineNumber},right:{text:r.text,lineNumber:r.newLineNumber},kind:"equal"}),n+=1;continue}const o=[],i=[];for(;n<e.length&&e[n]?.kind==="removed";){const l=e[n];l!==void 0&&o.push(l),n+=1}for(;n<e.length&&e[n]?.kind==="added";){const l=e[n];l!==void 0&&i.push(l),n+=1}const a=Math.max(o.length,i.length);for(let l=0;l<a;l+=1){const c=o[l],u=i[l];c!==void 0&&u!==void 0?t.push({left:{text:c.text,lineNumber:c.oldLineNumber},right:{text:u.text,lineNumber:u.newLineNumber},kind:"changed"}):c!==void 0?t.push({left:{text:c.text,lineNumber:c.oldLineNumber},right:null,kind:"removed"}):u!==void 0&&t.push({left:null,right:{text:u.text,lineNumber:u.newLineNumber},kind:"added"})}}return t}function P3(e){switch(e){case"changed":return"bg-amber-500/10";case"removed":return"bg-red-500/10";case"added":return"bg-green-500/10";case"equal":return""}}function M3({lines:e}){const t=O3(e);return s.jsx("div",{"data-testid":"diff-split",children:t.map((n,r)=>s.jsxs("div",{className:ce("grid grid-cols-2 font-mono text-xs",P3(n.kind)),children:[s.jsxs("div",{className:"flex items-start gap-2 px-2 border-r border-border/50",children:[s.jsx("span",{className:"select-none text-muted-foreground/60 w-8 text-right tabular-nums",children:n.left?.lineNumber??""}),s.jsx("span",{className:ce("select-none w-3 text-right font-bold",(n.kind==="removed"||n.kind==="changed")&&"text-red-600 dark:text-red-400"),children:n.left!==null?"-":" "}),s.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:n.left?.text??""})]}),s.jsxs("div",{className:"flex items-start gap-2 px-2",children:[s.jsx("span",{className:"select-none text-muted-foreground/60 w-8 text-right tabular-nums",children:n.right?.lineNumber??""}),s.jsx("span",{className:ce("select-none w-3 text-right font-bold",(n.kind==="added"||n.kind==="changed")&&"text-green-600 dark:text-green-400"),children:n.right!==null?"+":" "}),s.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:n.right?.text??""})]})]},r))})}const Xh=p.memo(I3),L3=Va("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function Fe({className:e,variant:t="default",asChild:n=!1,...r}){const o=n?hk:"span";return s.jsx(o,{"data-slot":"badge","data-variant":t,className:ce(L3({variant:t}),e),...r})}const D3={success:"bg-slate-300/[0.08] text-slate-100 border-slate-300/20",client_error:"bg-amber-300/[0.10] text-amber-100 border-amber-300/30",server_error:"bg-rose-400/[0.10] text-rose-100 border-rose-300/30",pending:"bg-cyan-300/[0.08] text-cyan-100 border-cyan-300/25"},$3={success:{frame:"border-cyan-200/15 bg-white/[0.04] text-slate-100",dot:"bg-cyan-200/80 shadow-[0_0_14px_rgba(125,211,252,0.65)]"},client_error:{frame:"border-amber-300/25 bg-amber-300/[0.08] text-amber-100",dot:"bg-amber-200 shadow-[0_0_14px_rgba(252,211,77,0.8)]"},server_error:{frame:"border-rose-300/25 bg-rose-300/[0.08] text-rose-100",dot:"bg-rose-300 shadow-[0_0_14px_rgba(253,164,175,0.8)]"},pending:{frame:"border-cyan-300/25 bg-cyan-300/[0.08] text-cyan-100",dot:"bg-cyan-200 shadow-[0_0_14px_rgba(103,232,249,0.8)]"}},ur="border border-input bg-background hover:bg-accent hover:text-accent-foreground size-8 text-muted-foreground shadow-none hover:text-cyan-100",wt="border border-border bg-muted/40 flex h-7 items-center gap-1 rounded-md px-2 text-xs";function dr(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function F3(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function B3(e,t){switch(e){case"success":return t===null?"OK":String(t);case"client_error":return t===null?"WARN":String(t);case"server_error":return t===null?"FAIL":String(t);case"pending":return"ROLL"}}function Hc({trend:e}){if(e===null)return null;const t=e.direction==="up",n=t?$1:z1,r=t?"+":"-";return s.jsxs("span",{className:"flex items-center gap-0.5 text-muted-foreground tabular-nums",children:[s.jsx(n,{className:t?"size-3 text-cyan-300":"size-3 text-rose-400"}),s.jsxs("span",{className:"font-mono",children:[r,$e(e.delta)]})]})}const U3=p.memo(function({log:e,displayNumber:t,messageCount:n=null,toolCount:r=null,expanded:o,onToggle:i,cacheTrend:a=null,activeTab:l,tabActions:c,onReplay:u,slowResponseThresholdSeconds:d=0,showClientMetadata:f=!0,timeDisplayFormat:m}){const h=sk(e.responseStatus),v=e.elapsedMs!==null&&d>0&&e.elapsedMs>d*1e3,g=e.inputTokens!==null||e.outputTokens!==null,x=e.firstChunkMs??null,b=e.tokensPerSecond??null,y=x===null?null:dr(x),_=b===null||b<=0?null:F3(b),j=e.warnings?.length??0,S=e.clientPid!==null&&e.clientPid!==void 0,T=e.clientProjectFolder!==null&&e.clientProjectFolder!==void 0&&e.clientProjectFolder!=="",N=e.clientCwd!==null&&e.clientCwd!==void 0&&e.clientCwd!=="",R=$3[h],I=B3(h,e.responseStatus);return s.jsx(Ye,{children:s.jsxs("div",{id:`log-${e.id}`,role:"button",tabIndex:0,"data-nav-id":`log-${e.id}`,"data-nav-action":o?"collapse":"expand",className:ce("group/header relative isolate flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 overflow-hidden px-3 py-2 cursor-pointer transition-[background-color,border-color,box-shadow]",o?"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.10)]":"bg-transparent hover:bg-white/[0.035]","select-none before:pointer-events-none before:absolute before:inset-x-3 before:top-0 before:h-px before:bg-white/12","focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none"),onClick:i,onKeyDown:O=>{(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),i())},children:[s.jsxs("span",{className:ce("border border-border bg-muted/40 inline-flex h-8 shrink-0 items-center gap-2 rounded-md px-2 font-mono",R.frame),children:[s.jsx("span",{className:ce("size-1.5 rounded-full",R.dot),"aria-hidden":"true"}),s.jsxs("span",{className:"text-xs font-semibold tabular-nums",title:`Log ID ${String(e.id)}`,children:["#",t]})]}),s.jsxs("span",{className:"border border-border bg-muted/40 flex h-7 shrink-0 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground",children:[s.jsx(Bt,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",title:e.timestamp,children:zi(e.timestamp,m)})]}),s.jsxs(Fe,{variant:"outline",className:ce("h-6 gap-1 rounded-md px-2 py-0 font-mono text-[10px] font-semibold uppercase tabular-nums shadow-[inset_0_1px_0_rgba(255,255,255,0.05)]",D3[h]),children:[h==="success"?s.jsx(Ke,{className:"size-3","aria-label":"Success"}):h==="server_error"?s.jsx(u2,{className:"size-3","aria-label":"Server error"}):h==="client_error"?s.jsx(Qt,{className:"size-3","aria-label":"Client error"}):s.jsx(mt,{className:"size-3 animate-spin","aria-label":"Pending"}),I]}),j>0&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs(Fe,{variant:"outline",className:"h-6 gap-1 rounded-md border-amber-300/30 bg-amber-300/[0.10] px-2 py-0 font-mono text-[10px] tabular-nums text-amber-100",children:[s.jsx(Qt,{className:"size-3","aria-label":"Tool schema warnings"}),j]})}),s.jsx(Le,{children:j===1?"1 tool schema warning":`${j} tool schema warnings`})]}),e.elapsedMs!==null&&(v?s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:ce(wt,"shrink-0 border-amber-300/25 text-amber-200"),children:[s.jsx(Bt,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:dr(e.elapsedMs)}),s.jsx(Qt,{className:"size-3","aria-label":"Slow response"})]})}),s.jsxs(Le,{children:["Slow response: ",dr(e.elapsedMs)," exceeds"," ",dr(d*1e3)]})]}):s.jsxs("span",{className:ce(wt,"shrink-0 text-muted-foreground"),children:[s.jsx(Bt,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:dr(e.elapsedMs)})]})),e.streaming&&y!==null&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:ce(wt,"shrink-0 text-cyan-300"),children:[s.jsx(Yl,{className:"size-3"}),s.jsxs("span",{className:"font-mono tabular-nums",children:["first ",y]})]})}),s.jsx(Le,{children:"Time to first streaming chunk"})]}),e.streaming&&_!==null&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:ce(wt,"shrink-0 text-cyan-300"),children:[s.jsx(Ma,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:_})]})}),s.jsx(Le,{children:"Output token throughput after first chunk"})]}),g&&s.jsxs("span",{className:ce(wt,"min-w-0 sm:shrink-0"),children:[s.jsx(Sr,{className:"size-3 text-muted-foreground"}),s.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-1 font-mono tabular-nums",children:[s.jsxs("span",{className:ce("whitespace-nowrap",e.inputTokens!==null?"text-blue-400":"text-muted-foreground"),children:["IN ",e.inputTokens!==null?$e(e.inputTokens):"n/a"]}),s.jsx("span",{className:"text-muted-foreground",children:"/"}),s.jsxs("span",{className:ce("whitespace-nowrap",e.outputTokens!==null?"text-amber-400":"text-muted-foreground"),children:["OUT ",e.outputTokens!==null?$e(e.outputTokens):"n/a"]})]})]}),e.cacheCreationInputTokens!==null&&e.cacheCreationInputTokens>0&&s.jsxs("span",{className:ce(wt,"shrink-0"),children:[s.jsx(Hc,{trend:a?.creation??null}),s.jsxs("span",{className:"font-mono tabular-nums text-cyan-300",children:["KV Cache +",$e(e.cacheCreationInputTokens)]})]}),e.cacheReadInputTokens!==null&&e.cacheReadInputTokens>0&&s.jsxs("span",{className:ce(wt,"shrink-0"),children:[s.jsx(Hc,{trend:a?.read??null}),s.jsxs("span",{className:"font-mono tabular-nums text-purple-400",children:["KV Cache ~",$e(e.cacheReadInputTokens)]})]}),n!==null&&s.jsxs("span",{className:ce(wt,"shrink-0 text-muted-foreground"),children:[s.jsx(ho,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:n})]}),r!==null&&s.jsxs("span",{className:ce(wt,"shrink-0 text-muted-foreground"),children:[s.jsx(zr,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:r})]}),e.origin!==null&&s.jsxs("span",{className:ce(wt,"hidden shrink-0 text-muted-foreground xl:flex"),title:`Origin: ${e.origin}`,children:[s.jsx(Vd,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums truncate max-w-[120px]",title:e.origin,children:e.origin})]}),f&&(S||T)&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:ce(wt,"hidden shrink-0 text-purple-300 xl:flex"),children:[s.jsx($y,{className:"size-3"}),T?s.jsx("span",{className:"font-mono tabular-nums",children:e.clientProjectFolder}):s.jsxs("span",{className:"font-mono tabular-nums",children:["PID ",e.clientPid]})]})}),s.jsx(Le,{children:N?`PID: ${e.clientPid??"?"} CWD: ${e.clientCwd}`:`Process ID: ${e.clientPid??"?"}`})]}),e.streaming&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Yl,{className:"size-3 text-muted-foreground/60 shrink-0"})}),s.jsx(Le,{children:"Request used SSE streaming"})]}),s.jsx("span",{className:"flex-1 min-w-0"}),o&&s.jsxs("span",{className:"flex items-center gap-1.5 shrink-0",onClick:O=>O.stopPropagation(),onKeyDown:O=>O.stopPropagation(),children:[c!==void 0&&l!==void 0&&(()=>{const O=c[l];return O===void 0?null:s.jsxs(s.Fragment,{children:[O.expansion!==null&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Ce,{variant:"outline",size:"icon",className:ur,onClick:O.expansion.onToggle,disabled:O.expansion.isPending,"aria-pressed":O.expansion.isExpanded,"aria-label":O.expansion.isExpanded?"Collapse all JSON":"Expand all JSON",children:O.expansion.isExpanded?s.jsx(sy,{className:"size-3.5"}):s.jsx(X1,{className:"size-3.5"})})}),s.jsx(Le,{children:O.expansion.isExpanded?"Collapse all JSON nodes":"Expand all JSON nodes"})]}),O.diffWithRaw!==void 0&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Ce,{variant:"outline",size:"icon",className:ce(ur,O.diffWithRaw.active&&"border-cyan-300/35 bg-cyan-400/15 text-cyan-100"),onClick:O.diffWithRaw.onToggle,"aria-pressed":O.diffWithRaw.active,"aria-label":O.diffWithRaw.active?"Hide raw diff":"Diff with raw",children:s.jsx(Py,{className:"size-3.5"})})}),s.jsx(Le,{children:O.diffWithRaw.active?"Hide diff with raw request":"Show diff between displayed and raw request body"})]}),O.diffWithPrevious!==void 0&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Ce,{variant:"outline",size:"icon",className:ur,onClick:O.diffWithPrevious,"aria-label":"Diff with previous",children:s.jsx(Gy,{className:"size-3.5"})})}),s.jsx(Le,{children:"Compare this request with the immediately preceding one"})]}),O.copyText!==null&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Ce,{variant:"outline",size:"icon",className:ur,onClick:O.onCopy,"aria-label":O.copyCopied?"Copied":O.copyLabel,children:O.copyCopied?s.jsx(Ke,{className:"size-3.5 text-cyan-300"}):s.jsx(Ct,{className:"size-3.5"})})}),s.jsx(Le,{children:O.copyCopied?"Copied to clipboard":O.copyLabel})]})]})})(),u!==void 0&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx(Ce,{variant:"outline",size:"icon",className:ur,onClick:u,"aria-label":"Replay request",children:s.jsx(g2,{className:"size-3.5"})})}),s.jsx(Le,{children:"Re-send this request to the provider"})]})]}),s.jsx("span",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:o?s.jsx(ot,{className:"size-4 shrink-0"}):s.jsx(xt,{className:"size-4 shrink-0"})})]})})});function W3({...e}){return s.jsx(wj,{"data-slot":"collapsible",...e})}function NI({...e}){return s.jsx(Yf,{"data-slot":"collapsible-trigger",...e})}function H3({...e}){return s.jsx(Xf,{"data-slot":"collapsible-content",...e})}function Z3({className:e,children:t,...n}){return s.jsxs(pC,{"data-slot":"scroll-area",className:ce("relative overflow-hidden",e),...n,children:[s.jsx(hC,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full max-h-[inherit] rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:t}),s.jsx(V3,{}),s.jsx(mC,{})]})}function V3({className:e,orientation:t="vertical",...n}){return s.jsx(Op,{"data-slot":"scroll-area-scrollbar",orientation:t,className:ce("flex touch-none p-px transition-colors select-none",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",e),...n,children:s.jsx(Dp,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}const Qh={file:"file",shell:"shell",browser:"browser",web:"web",mcp:"MCP",code:"code",other:"other"},q3={file:"border-blue-400/20 bg-blue-400/5 text-blue-300",shell:"border-teal-400/20 bg-teal-400/5 text-teal-300",browser:"border-cyan-400/20 bg-cyan-400/5 text-cyan-300",web:"border-sky-400/20 bg-sky-400/5 text-sky-300",mcp:"border-violet-400/20 bg-violet-400/5 text-violet-300",code:"border-emerald-400/20 bg-emerald-400/5 text-emerald-300",other:"border-muted-foreground/20 bg-muted/30 text-muted-foreground"};function K3({category:e}){switch(e){case"file":return s.jsx(By,{className:"size-3.5"});case"shell":return s.jsx(La,{className:"size-3.5"});case"browser":return s.jsx(l2,{className:"size-3.5"});case"web":return s.jsx(Vd,{className:"size-3.5"});case"mcp":return s.jsx(W1,{className:"size-3.5"});case"code":return s.jsx(yy,{className:"size-3.5"});case"other":return s.jsx(Ty,{className:"size-3.5"})}}function G3({names:e}){return e.length===0?null:s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1",children:[s.jsx("span",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:"required"}),e.slice(0,4).map(t=>s.jsx(Fe,{variant:"outline",className:"h-5 max-w-36 truncate rounded-md px-1.5 py-0 font-mono text-[10px]",children:t},t)),e.length>4&&s.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["+",e.length-4]})]})}function J3({tool:e,called:t}){const[n,r]=p.useState(!1),o=$t(e.name),i=e.description!==null||e.requiredParameters.length>0||e.schema!==null;return s.jsx(W3,{open:n,onOpenChange:r,children:s.jsxs("div",{className:"border border-border bg-card shadow-sm rounded-[8px]",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2 px-2.5 py-2",children:[s.jsxs("button",{type:"button",className:"flex min-w-0 flex-1 items-center gap-2 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",onClick:()=>r(a=>!a),"aria-expanded":n,disabled:!i,children:[s.jsx(K3,{category:e.category}),s.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold text-foreground/90",children:e.name}),t&&s.jsx(Fe,{variant:"outline",className:"h-5 rounded-md border-emerald-400/20 bg-emerald-400/5 px-1.5 py-0 text-[10px] text-emerald-300",children:"called"}),s.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:[e.parameterCount," params"]}),e.descriptionPreview!==null&&s.jsx("span",{className:"hidden min-w-0 truncate text-xs text-muted-foreground md:inline",children:e.descriptionPreview}),s.jsx("span",{className:"flex-1"}),i&&(n?s.jsx(ot,{className:"size-3.5 shrink-0 text-muted-foreground"}):s.jsx(xt,{className:"size-3.5 shrink-0 text-muted-foreground"}))]}),s.jsx("button",{type:"button",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-7 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",onClick:o.copy,"aria-label":o.copied?"Copied tool name":"Copy tool name",children:o.copied?s.jsx(Ke,{className:"size-3.5 text-emerald-400"}):s.jsx(Ct,{className:"size-3.5"})})]}),s.jsx(H3,{children:n&&s.jsxs("div",{className:"space-y-2 border-t border-white/10 bg-white/[0.025] px-2.5 py-2",children:[e.description!==null&&s.jsx("p",{className:"text-xs leading-relaxed text-muted-foreground",children:e.description}),s.jsx(G3,{names:e.requiredParameters}),e.schema!==null&&s.jsx(Z3,{className:"border border-border bg-card shadow-sm max-h-64 rounded-[8px] p-2",children:s.jsx(p.Suspense,{fallback:s.jsx("div",{className:"text-xs text-muted-foreground",children:"Loading JSON..."}),children:s.jsx(Xi,{data:Ks(e.schema),defaultExpandDepth:0})})})]})})]})})}function Y3(e,t){return t.length===0?!0:`${e.name} ${e.description??""} ${Qh[e.category]}`.toLowerCase().trim().includes(t)}const X3=p.memo(function({summary:t,calledToolNames:n}){const[r,o]=p.useState(!1),[i,a]=p.useState(""),l=p.useMemo(()=>new Set(n),[n]),c=i.trim().toLowerCase(),u=p.useMemo(()=>t===null?[]:t.tools.filter(m=>Y3(m,c)),[c,t]);if(t===null)return null;const d=t.tools.slice(0,6),f=t.tools.length-d.length;return s.jsxs("section",{className:"border border-border bg-card shadow-sm mb-3 overflow-hidden rounded-[8px]",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2 px-3 py-2",children:[s.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[s.jsx(zr,{className:"size-4 shrink-0 text-sky-300/80"}),s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[s.jsx("span",{className:"text-sm font-semibold text-foreground",children:"Request Tools"}),s.jsx(Fe,{variant:"outline",className:"h-5 rounded-md px-1.5 py-0 font-mono text-[10px]",children:t.tools.length}),t.toolChoiceLabel!==null&&s.jsxs(Fe,{variant:"outline",className:"h-5 rounded-md px-1.5 py-0 font-mono text-[10px] text-muted-foreground",children:["tool_choice: ",t.toolChoiceLabel]})]}),s.jsx("div",{className:"mt-1 flex min-w-0 flex-wrap gap-1",children:t.categories.map(m=>s.jsxs(Fe,{variant:"outline",className:ce("h-5 rounded-md px-1.5 py-0 font-mono text-[10px]",q3[m.category]),children:[m.count," ",Qh[m.category]]},m.category))})]})]}),s.jsxs(Ce,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2 text-muted-foreground hover:text-cyan-100",onClick:()=>o(m=>!m),"aria-expanded":r,children:[r?s.jsx(ot,{className:"size-3.5"}):s.jsx(xt,{className:"size-3.5"}),r?"Hide":"Show"]})]}),s.jsxs("div",{className:"flex min-w-0 flex-wrap gap-1.5 border-t border-white/10 bg-white/[0.025] px-3 py-2",children:[d.map(m=>s.jsx(Fe,{variant:"outline",className:ce("h-5 max-w-44 truncate rounded-md px-1.5 py-0 font-mono text-[10px]",l.has(m.name)&&"border-emerald-400/20 text-emerald-300"),children:m.name},m.name)),f>0&&s.jsxs("span",{className:"font-mono text-[10px] leading-5 text-muted-foreground",children:["+",f]})]}),r&&s.jsxs("div",{className:"space-y-2 border-t border-white/10 bg-black/10 px-3 py-3",children:[s.jsxs("label",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground flex h-8 items-center gap-2 rounded-md px-2 text-xs",children:[s.jsx(S2,{className:"size-3.5 shrink-0 text-muted-foreground"}),s.jsx("input",{value:i,onChange:m=>a(m.target.value),placeholder:"Filter tools",className:"min-w-0 flex-1 bg-transparent font-mono text-xs outline-none placeholder:text-muted-foreground/70"})]}),s.jsx("div",{className:"grid gap-1.5",children:u.length>0?u.map(m=>s.jsx(J3,{tool:m,called:l.has(m.name)},m.name)):s.jsx("p",{className:"py-2 text-xs text-muted-foreground",children:"No matching tools"})})]})]})});function Zc(e,t,n){return e==="anthropic"&&t==="full"&&n}function Q3(e,t){return e==="full"&&t}function eT(e,t,n,r){return e==="anthropic"&&t==="full"&&n&&r}const tT=["file","shell","browser","web","mcp","code","other"];function ta(e){const t=e.replace(/\s+/g," ").trim();return t.length<=120?t:`${t.slice(0,119)}...`}function em(e){if(e===null)return null;const t=e.replace(/\s+/g," ").trim();if(t.length===0)return null;const n=t.search(/[.!?。!?]/);return n>=24?ta(t.slice(0,n+1)):ta(t)}function nT(e,t){return`${e} ${t??""}`.toLowerCase()}function On(e,t){return t.some(n=>e.includes(n))}function tm(e,t){const n=nT(e,t);return e.startsWith("mcp__")||e.startsWith("inspector_")||On(n,[" mcp","model context protocol"])?"mcp":On(n,["bash","shell","terminal","command","powershell","exec","process"])?"shell":On(n,["browser","playwright","screenshot","click","navigate","page","tab"])?"browser":On(n,["read","write","edit","file","glob","grep","patch","filesystem","directory"])?"file":On(n,["web","search","http","url","fetch"])?"web":On(n,["code","typescript","javascript","python","repl"])?"code":"other"}function nm(e){const t=ke(e,"properties");return t===null||typeof t!="object"||Array.isArray(t)?[]:Object.keys(t).sort((n,r)=>n.localeCompare(r))}function rm(e){const t=ke(e,"required");if(!Array.isArray(t))return[];const n=[];for(const r of t)typeof r=="string"&&r.length>0&&n.push(r);return n.sort((r,o)=>r.localeCompare(o))}function rT(e){const t=ke(e,"name");if(typeof t!="string"||t.length===0)return null;const n=ke(e,"description"),r=ke(e,"input_schema")??null,o=typeof n=="string"?n:null;return{name:t,description:o,descriptionPreview:em(o),category:tm(t,o),parameterCount:nm(r).length,requiredParameters:rm(r),schema:r}}function sT(e){const t=ke(e,"function"),n=ke(e,"type");if(t===void 0&&n!=="function")return null;const r=ke(t,"name")??ke(e,"name");if(typeof r!="string"||r.length===0)return null;const o=ke(t,"description")??ke(e,"description"),i=ke(t,"parameters")??ke(e,"parameters")??null,a=typeof o=="string"?o:null;return{name:r,description:a,descriptionPreview:em(a),category:tm(r,a),parameterCount:nm(i).length,requiredParameters:rm(i),schema:i}}function oT(e){const t=sT(e);return t!==null?t:rT(e)}function iT(e){if(e==null)return null;if(typeof e=="string")return e;const t=ke(e,"type"),n=ke(e,"name"),r=ke(ke(e,"function"),"name");if(typeof t=="string"&&typeof r=="string"&&r.length>0)return`${t}: ${r}`;if(typeof t=="string"&&typeof n=="string"&&n.length>0)return`${t}: ${n}`;if(typeof t=="string")return t;const o=JSON.stringify(e);return o===void 0?null:ta(o)}function aT(e){const t=new Map;for(const n of e)t.set(n.category,(t.get(n.category)??0)+1);return tT.flatMap(n=>{const r=t.get(n)??0;return r>0?[{category:n,count:r}]:[]})}function lT(e){const t=ke(e,"tools");if(!Array.isArray(t)||t.length===0)return null;const n=[];for(const r of t){const o=oT(r);o!==null&&n.push(o)}return n.length===0?null:{tools:n,toolChoiceLabel:iT(ke(e,"tool_choice")),categories:aT(n)}}function Pn(){return s.jsx("div",{className:"h-1","aria-hidden":"true"})}function cT(e,t){switch(e){case"anatomy":return t===null?"request":"anatomy";case"request":return"request"}}const uT=15e3,dT=15e3,fT=256*1024,Gs=1024*1024,hn="h-9 flex-none rounded-md border border-transparent bg-transparent px-3 text-xs font-semibold text-muted-foreground shadow-none transition-colors hover:border-white/10 hover:bg-white/[0.045] hover:text-foreground data-[state=active]:border-cyan-200/25 data-[state=active]:bg-cyan-300/[0.08] data-[state=active]:text-cyan-100 data-[state=active]:shadow-none";function is(e=null){return{status:"idle",text:"",offset:0,totalBytes:e,hasMore:e!==null&&e>0,error:null}}function Js(e){return e??0}function sm(e){return e.bodyContentMode==="compact"||e.bodyContentMode==="truncated"}function om(e){return sm(e)?Js(e.rawRequestBodyBytes)>Gs||Js(e.responseTextBytes)>Gs:!1}function pT(e){return sm(e)&&!om(e)}function as(e){return e<1024?`${e.toLocaleString()} B`:e<1024*1024?`${(e/1024).toFixed(1)} KiB`:e<1024*1024*1024?`${(e/1024/1024).toFixed(1)} MiB`:`${(e/1024/1024/1024).toFixed(1)} GiB`}function hT(e){return e instanceof zd?"Body preview timed out. The log is still available on disk; try loading again.":e instanceof Error?e.message:"Body preview could not be loaded."}function Vc(e,t){return e?t.text!==""?t.text:t.status==="success"?"":null:null}function mn({children:e,className:t}){return s.jsx("div",{className:ce("border border-border bg-card shadow-sm inspector-scrollbar mx-3 mb-3 max-h-[72vh] overflow-auto rounded-[8px] p-3",t),children:e})}function js({children:e}){return s.jsx("div",{className:"border border-border bg-muted/40 rounded-md border-dashed px-3 py-5 text-center text-xs italic text-muted-foreground",children:e})}function ls({children:e}){return s.jsx("pre",{className:"border border-border bg-card shadow-sm inspector-scrollbar max-h-[64vh] overflow-auto whitespace-pre-wrap break-words rounded-[8px] p-3 font-mono text-xs leading-relaxed text-muted-foreground",children:e})}const mT={loading:"border-cyan-400/25 bg-cyan-400/[0.06] text-cyan-100",warning:"border-amber-400/25 bg-amber-400/[0.08] text-amber-100",danger:"border-rose-400/25 bg-rose-400/[0.08] text-rose-100"};function br({tone:e,title:t,children:n}){return s.jsxs("div",{className:ce("mb-3 rounded-md border px-3 py-2 text-xs shadow-[inset_0_1px_0_rgba(255,255,255,0.04)]",mT[e]),children:[t!==void 0&&s.jsx("div",{className:"mb-1 font-semibold",children:t}),s.jsx("div",{className:"leading-relaxed text-muted-foreground",children:n})]})}function cs({label:e,state:t,expectedBytes:n,onLoadMore:r}){const o=t.totalBytes??n,i=o===null?as(t.offset):`${as(t.offset)} / ${as(o)}`,a=t.status!=="loading"&&t.hasMore,l=t.status==="failed"?"Retry":"Load more";return s.jsx(br,{tone:t.status==="failed"?"warning":"loading",title:`${e} body preview`,children:s.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[s.jsxs("span",{children:[t.status==="idle"&&o!==null?`${e} body is ${as(o)}. Loading the first preview chunk.`:`Loaded ${i}.`,t.status==="failed"&&t.error!==null&&` ${t.error}`]}),a&&s.jsx(Ce,{type:"button",variant:"outline",size:"sm",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 text-xs text-cyan-100",onClick:r,children:l})]})})}function qc({headers:e,emptyLabel:t}){const n=e===void 0?[]:Object.entries(e).sort(([r],[o])=>r.localeCompare(o));return n.length===0?s.jsx(js,{children:t}):s.jsx("div",{className:"border border-border bg-card shadow-sm overflow-hidden rounded-[8px] font-mono text-xs",children:n.map(([r,o])=>s.jsxs("div",{className:"grid min-w-0 grid-cols-[minmax(140px,0.32fr)_minmax(0,1fr)] border-b border-white/10 last:border-b-0",children:[s.jsx("div",{className:"min-w-0 truncate border-r border-white/10 bg-white/[0.035] px-2.5 py-2 font-semibold text-cyan-200",children:r}),s.jsx("div",{className:"min-w-0 truncate px-2.5 py-2 text-muted-foreground",title:o,children:o})]},r))})}function gT({active:e,onClick:t}){return s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs(Ce,{variant:e?"default":"outline",size:"sm",className:ce("h-8 border-white/10 text-xs shadow-none",e?"bg-cyan-300 text-black hover:bg-cyan-200":"border border-input bg-background hover:bg-accent hover:text-accent-foreground text-muted-foreground hover:text-cyan-100"),onClick:t,"aria-pressed":e,children:[s.jsx(Vy,{className:"size-3.5 mr-1"}),e?"Showing diff":"Diff with Raw"]})}),s.jsx(Le,{children:e?"Hide diff view":"Compare proxy output against the original raw version"})]})}const xT=p.memo(function({rawBody:e,displayedBody:t,emptyLabel:n}){const r=p.useMemo(()=>T3(e,t),[e,t]);return s.jsx(Xh,{result:r,emptyLabel:n})}),bT=p.memo(function({rawHeaders:e,headers:t,emptyLabel:n}){const r=p.useMemo(()=>N3(e,t),[e,t]);return s.jsx(Xh,{result:r,emptyLabel:n})}),vT=p.memo(function({log:e,displayNumber:t,viewMode:n="simple",strip:r,slowResponseThresholdSeconds:o,timeDisplayFormat:i,cacheTrend:a=null,onCompareWithPrevious:l,showClientMetadata:c=!0}){const[u,d]=p.useState(!1),[f,m]=p.useState(!1),[h,v]=p.useState(!1),[g,x]=p.useState(!1),[b,y]=p.useState("request"),[_,j]=p.useState(null),[S,T]=p.useState(null),[N,R]=p.useState("idle"),[I,O]=p.useState(()=>is(e.rawRequestBodyBytes??null)),[K,A]=p.useState(()=>is(e.responseTextBytes??null)),$=p.useRef(null),k=p.useRef(e.id),Z=p.useRef(!1),V=S??e,U=S===null&&om(e),L=Vc(U,I),W=Vc(U,K),ne=V.rawRequestBody??L,B=V.responseText??W,F=V.rawRequestBody===null&&L!==null,ue=V.responseText===null&&W!==null,se=!F||I.hasMore===!1&&Js(I.totalBytes)<=Gs,oe=!ue||K.hasMore===!1&&Js(K.totalBytes)<=Gs,_e=Tr(V),ae=Fh(_e),ge=p.useMemo(()=>ae.analyzeRequest(V.rawRequestBody),[ae,V.rawRequestBody]),xe=p.useMemo(()=>ae.analyzeResponse(V.responseText),[ae,V.responseText]),te=p.useMemo(()=>!r||_e!=="anthropic"||V.rawRequestBody===null?null:i3(V.rawRequestBody).body,[V.rawRequestBody,_e,r])??ne,le=oi(se?te:null),me=oi(b==="raw-request"&&se?ne:null),w=oi(b==="raw"&&oe?B:null),J=p.useMemo(()=>V.headers&&Object.keys(V.headers).length>0?JSON.stringify(V.headers,null,2):null,[V.headers]),H=p.useMemo(()=>V.rawHeaders&&Object.keys(V.rawHeaders).length>0?JSON.stringify(V.rawHeaders,null,2):null,[V.rawHeaders]),z=$t(te),E=$t(ne),D=$t(J),ee=$t(H),re=$t(B),q=p.useMemo(()=>({request:{copyLabel:F?"Copy loaded request preview":"Copy request body",copyText:te,copyCopied:z.copied,onCopy:z.copy,expansion:se?{isExpanded:le.isExpanded,isPending:le.isPending,onToggle:le.toggle}:null,diffWithRaw:eT(_e,n,r,V.rawRequestBody!==null)?{active:g,onToggle:()=>x(!g)}:void 0,diffWithPrevious:l===void 0?void 0:()=>{l(V)}},"raw-request":{copyLabel:F?"Copy loaded raw request preview":"Copy raw request",copyText:ne,copyCopied:E.copied,onCopy:E.copy,expansion:se?{isExpanded:me.isExpanded,isPending:me.isPending,onToggle:me.toggle}:null},headers:{copyLabel:"Copy headers",copyText:J,copyCopied:D.copied,onCopy:D.copy,expansion:null},"raw-headers":{copyLabel:"Copy raw headers",copyText:H,copyCopied:ee.copied,onCopy:ee.copy,expansion:null},raw:{copyLabel:ue?"Copy loaded response preview":"Copy response",copyText:B,copyCopied:re.copied,onCopy:re.copy,expansion:oe?{isExpanded:w.isExpanded,isPending:w.isPending,onToggle:w.toggle}:null}}),[te,F,se,z,le,g,V,V.rawRequestBody,ne,E,me,J,D,H,ee,V.responseText,ue,oe,B,re,w,_e,n,r,l]),ie=p.useMemo(()=>le.parsedData!==null?ae.anatomySegments(le.parsedData):null,[ae,le.parsedData]),P=p.useMemo(()=>lT(le.parsedData),[le.parsedData]),M=V.warnings??[],X=p.useMemo(()=>{if(ie!==null)return new Set(ie.map(Se=>Se.path))},[ie]),de=w3({containerRef:$,setExpandToPath:j,ensureTabActive:()=>{b!=="request"&&y("request")}}),fe=p.useCallback((Se,Ne)=>{const Je=Se==="request"?O:A;Je(et=>({...et,status:"loading",error:null}));const Be=new URLSearchParams({part:Se,offset:String(Ne),limit:String(fT)});qn(`/api/logs/${String(e.id)}/body?${Be.toString()}`,Iv,dT).then(et=>{k.current===e.id&&Je(fn=>({status:"success",text:et.offset===0?et.text:`${fn.text}${et.text}`,offset:et.nextOffset??et.totalBytes,totalBytes:et.totalBytes,hasMore:et.hasMore,error:null}))}).catch(et=>{k.current===e.id&&Je(fn=>({...fn,status:"failed",error:hT(et)}))})},[e.id]),ze=p.useCallback(()=>{const Se=!u;Se&&y(ie!==null?"anatomy":"request"),d(Se)},[ie,u]);return p.useEffect(()=>{k.current=e.id,Z.current=!1,T(null),R("idle"),O(is(e.rawRequestBodyBytes??null)),A(is(e.responseTextBytes??null))},[e.id,e.rawRequestBodyBytes,e.responseTextBytes]),p.useEffect(()=>{if(!u||!pT(e)||S!==null||Z.current)return;let Se=!1;return Z.current=!0,R("loading"),qn(`/api/logs/${String(e.id)}`,_r,uT).then(Ne=>{Se||(Z.current=!1,T(Ne),R("idle"))}).catch(()=>{Se||(Z.current=!1,R("failed"))}),()=>{Se=!0,Z.current=!1}},[u,S,e.bodyContentMode,e.id,e.rawRequestBodyBytes,e.responseTextBytes]),p.useEffect(()=>{u&&U&&I.status==="idle"&&(b!=="request"&&b!=="raw-request"&&b!=="anatomy"||fe("request",0))},[b,u,fe,I.status,U]),p.useEffect(()=>{u&&U&&K.status==="idle"&&(b!=="parsed"&&b!=="raw"||fe("response",0))},[b,u,fe,K.status,U]),p.useEffect(()=>{const Se=Ne=>{const Je=Do(Ne);Je!==null&&Je.logId===e.id&&(d(!0),y(cT(Je.tab,ie)))};return window.addEventListener(Ht,Se),()=>{window.removeEventListener(Ht,Se)}},[ie,e.id]),s.jsxs(Ye,{children:[s.jsxs("div",{className:ce("border border-border bg-card shadow-sm relative mb-2 overflow-hidden rounded-[8px] transition-[background-color,border-color,box-shadow]",u?"border-cyan-200/25 shadow-[0_24px_80px_rgba(0,0,0,0.36),0_0_0_1px_rgba(103,232,249,0.05),inset_0_1px_0_rgba(255,255,255,0.14)]":"hover:border-cyan-200/18"),children:[s.jsx("div",{className:ce("pointer-events-none absolute inset-y-3 left-1 w-px rounded-full",u?"bg-cyan-200/55 shadow-[0_0_20px_rgba(103,232,249,0.26)]":"bg-white/12"),"aria-hidden":"true"}),s.jsx("div",{className:"pointer-events-none absolute inset-x-3 top-0 h-px bg-gradient-to-r from-transparent via-white/15 to-transparent","aria-hidden":"true"}),s.jsx(U3,{log:V,displayNumber:t,messageCount:ge.messageCount,toolCount:ge.toolCount,expanded:u,onToggle:ze,cacheTrend:a,slowResponseThresholdSeconds:o,showClientMetadata:c,timeDisplayFormat:i,activeTab:b,tabActions:q,onReplay:l===void 0?void 0:()=>{m(!0)}}),u&&s.jsxs("div",{className:"relative border-t border-white/10 bg-black/[0.18] pt-2",onClick:Se=>Se.stopPropagation(),onKeyDown:Se=>Se.stopPropagation(),children:[s.jsx("div",{className:"pointer-events-none absolute inset-x-0 top-0 h-12 bg-gradient-to-b from-white/[0.05] to-transparent","aria-hidden":"true"}),s.jsxs(qh,{value:b,onValueChange:y,className:"gap-2",children:[s.jsxs(Kh,{variant:"line",className:"border border-border bg-muted/40 inspector-scrollbar relative mx-3 h-auto w-[calc(100%-1.5rem)] justify-start overflow-x-auto rounded-[8px] p-1",children:[n==="full"&&s.jsx(ft,{className:hn,value:"raw-headers",children:"Raw Headers"}),n==="full"&&s.jsx(ft,{className:hn,value:"headers",children:"Headers"}),ie!==null&&s.jsx(ft,{className:hn,value:"anatomy",children:"Context"}),Zc(_e,n,r)&&s.jsx(ft,{className:hn,value:"raw-request",children:"Raw Request"}),s.jsx(ft,{className:hn,value:"request",children:"Request"}),n==="full"&&s.jsx(ft,{className:hn,value:"raw",children:"Raw Response"}),s.jsx(ft,{className:hn,value:"parsed",children:"Response"})]}),Zc(_e,n,r)&&s.jsx(pt,{value:"raw-request",children:b==="raw-request"&&s.jsxs(mn,{children:[U&&s.jsx(cs,{label:"Request",state:I,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>fe("request",I.offset)}),ne===null?s.jsx(js,{children:U?"Request preview is loading":"No request body"}):me.parsedData!==null?s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(Xi,{data:me.parsedData,bulkDepth:me.bulkDepth,bulkRevision:me.bulkRevision})}):s.jsx(ls,{children:ne})]})}),s.jsx(pt,{value:"request",children:b==="request"&&s.jsxs(mn,{children:[N==="loading"&&s.jsx(br,{tone:"loading",children:"Loading full request and response bodies..."}),N==="failed"&&s.jsx(br,{tone:"warning",children:"Full request and response bodies could not be loaded. Compact metadata is still available."}),U&&s.jsx(cs,{label:"Request",state:I,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>fe("request",I.offset)}),M.length>0&&s.jsxs(br,{tone:"warning",children:[s.jsxs("div",{className:"flex items-center gap-2 font-semibold text-amber-300",children:[s.jsx(Qt,{className:"size-3.5"}),"Tool schema warnings"]}),s.jsx("ul",{className:"mt-2 space-y-1 text-muted-foreground",children:M.map(Se=>s.jsx("li",{children:Se},Se))})]}),s.jsx(X3,{summary:P,calledToolNames:xe.toolNames??[]}),g?s.jsx(xT,{rawBody:V.rawRequestBody,displayedBody:te,emptyLabel:"No transformation applied; raw and sent request bodies are identical."}):s.jsx("div",{ref:$,children:te===null?s.jsx(js,{children:U?"Request preview is loading":"No request body"}):le.parsedData!==null?s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(Xi,{data:le.parsedData,bulkDepth:le.bulkDepth,bulkRevision:le.bulkRevision,anatomyPaths:X,expandToPath:_})}):s.jsx(ls,{children:te})})]})}),ie!==null&&s.jsx(pt,{value:"anatomy",children:b==="anatomy"&&s.jsx(mn,{className:"p-0",children:s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(m3,{parsed:le.parsedData,inputTokens:V.inputTokens??null,model:V.model,segments:ie,onSegmentActivate:de})})})}),n==="full"&&s.jsx(pt,{value:"headers",children:b==="headers"&&s.jsxs(mn,{children:[s.jsx("div",{className:"flex justify-end gap-2 mb-2",children:Q3(n,V.rawHeaders!==void 0&&Object.keys(V.rawHeaders).length>0)&&s.jsx(gT,{active:h,onClick:Se=>{Se.stopPropagation(),v(!h)}})}),h?s.jsx(bT,{rawHeaders:V.rawHeaders,headers:V.headers,emptyLabel:"No transformation applied; raw and processed headers are identical."}):s.jsx(qc,{headers:V.headers,emptyLabel:"No headers captured"})]})}),n==="full"&&s.jsx(pt,{value:"raw-headers",children:b==="raw-headers"&&s.jsx(mn,{children:s.jsx(qc,{headers:V.rawHeaders,emptyLabel:"No raw headers captured"})})}),s.jsx(pt,{value:"raw",children:b==="raw"&&s.jsxs(mn,{className:"space-y-3",children:[U&&s.jsx(cs,{label:"Response",state:K,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>fe("response",K.offset)}),V.error!==void 0&&V.error!==null&&s.jsx(br,{tone:"danger",title:"SSE Error",children:s.jsx("span",{className:"font-mono",children:V.error})}),B!==null&&oe?s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(b3,{text:B,defaultExpandDepth:0,bulkDepth:w.bulkDepth,bulkRevision:w.bulkRevision})}):B!==null?s.jsx(ls,{children:B}):s.jsx(js,{children:U?"Response preview is loading":"No response"}),V.streaming===!0&&s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(x3,{logId:V.id,truncated:V.streamingChunksPath!==null})})]})}),s.jsx(pt,{value:"parsed",children:b==="parsed"&&s.jsxs(mn,{children:[U&&s.jsx(cs,{label:"Response",state:K,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>fe("response",K.offset)}),ue&&!oe?s.jsx(ls,{children:B}):s.jsx(p.Suspense,{fallback:s.jsx(Pn,{}),children:s.jsx(g3,{responseText:B,responseStatus:V.responseStatus,streaming:V.streaming,inputTokens:V.inputTokens,outputTokens:V.outputTokens,cacheCreationInputTokens:V.cacheCreationInputTokens,cacheReadInputTokens:V.cacheReadInputTokens,apiFormat:_e,error:V.error})})]})})]})]})]}),s.jsx(p.Suspense,{fallback:null,children:s.jsx(h3,{log:V,displayNumber:t,open:f,onOpenChange:m})})]})});function yT(e){switch(e){case"end_turn":return"End of Turn (Anthropic)";case"stop":return"End of Turn (OpenAI)";case"length":return"End of Turn (length limit)";case"tool_use":case null:return"End of Turn"}}function wT({stopReason:e,isPending:t,isFirst:n,isTurnStart:r,isOnlyEntry:o=!1,crabIndex:i=0,collapsible:a=!1,onToggle:l}){const c=bl(e),u=o&&r&&c,d=t&&!c,f=p.useMemo(()=>qs(i),[i]),m=p.useMemo(()=>t3(i),[i]),h=a&&l?{role:"button",tabIndex:0,className:"cursor-pointer",onClick:v=>{v.stopPropagation(),l()},onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),l())}}:{};return s.jsxs("div",{className:"flex flex-col items-center w-6 shrink-0 pt-0.5 pb-0.5",children:[s.jsx("div",{className:"flex justify-center h-[calc(0.75rem-8px)]",children:!n&&s.jsx("div",{className:"w-0.5 bg-muted-foreground/30 h-full"})}),u?s.jsx("span",{title:"Start and end of turn",children:s.jsx(m,{className:ce("size-3.5 text-cyan-300/90","animate-crab-settle","drop-shadow-[0_0_4px_rgba(103,232,249,0.35)]")})}):c?s.jsx("span",{title:yT(e),...h,children:s.jsx(f,{className:ce("size-3.5 text-amber-400","animate-crab-settle","drop-shadow-[0_0_4px_rgba(251,191,36,0.5)]")})}):r?s.jsx("span",{title:"Start of turn",...h,children:s.jsx(f,{className:ce("size-3.5 text-cyan-300/85","animate-crab-appear","drop-shadow-[0_0_4px_rgba(103,232,249,0.32)]")})}):d?s.jsx("span",{title:"Processing…",children:s.jsx(f,{className:ce("size-3.5 text-amber-300/80","animate-crab-crawl")})}):s.jsx("span",{children:s.jsx(f,{className:"size-3.5 text-muted-foreground/40"})}),s.jsx("div",{className:"flex-1 flex justify-center min-h-0",children:!c&&s.jsx("div",{className:ce("w-0.5 h-full",t?"border-dashed bg-transparent border-l-2 border-muted-foreground/20":"bg-muted-foreground/30")})})]})}function kT({event:e}){const t=$t(e.argumentsText),n=e.argumentsText!==null;return s.jsxs("div",{className:"group/tool-trace flex min-w-0 items-center gap-2 rounded-md border border-border/70 bg-muted/20 px-2.5 py-1.5 text-xs",children:[s.jsx(zr,{className:"size-3.5 shrink-0 text-sky-400/70"}),s.jsx("span",{className:"font-mono font-semibold text-foreground/80",children:e.name}),e.argumentsPreview!==null&&s.jsxs(s.Fragment,{children:[s.jsx(xt,{className:"size-3 shrink-0 text-muted-foreground/60"}),s.jsx("span",{className:"min-w-0 truncate font-mono text-muted-foreground",children:e.argumentsPreview})]}),n&&s.jsx("button",{type:"button",className:"ml-auto inline-flex size-6 shrink-0 items-center justify-center rounded text-muted-foreground opacity-0 transition-opacity hover:bg-background/80 hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring group-hover/tool-trace:opacity-100 group-focus-within/tool-trace:opacity-100",onClick:t.copy,"aria-label":t.copied?"Copied tool arguments":"Copy tool arguments",title:t.copied?"Copied tool arguments":"Copy tool arguments",children:t.copied?s.jsx(Ke,{className:"size-3.5"}):s.jsx(Ct,{className:"size-3.5"})})]},e.id)}function _T({events:e}){return e.length===0?null:s.jsx("div",{className:"mx-3 mb-2 grid gap-1.5",children:e.map(t=>s.jsx(kT,{event:t},t.id))})}const Kc=180,ai=new WeakMap;function jT(e,t){const n=e.responseText;if(n===null)return!1;switch(t){case"anthropic":return n.includes("tool_use");case"openai":return n.includes("tool_calls")||n.includes("function_call");case"unknown":return!1}}function ST(e,t,n){return e>1&&t&&!n}function CT(e){const t=[];let n=[],r=0;for(let o=0;o<e.length;o+=1){const i=e[o];if(i===void 0)continue;n.push({log:i,stopReason:UN(i),sessionLogNumber:o+1});const a=n[n.length-1];a!==void 0&&bl(a.stopReason)&&(t.push({entries:n,turnIndex:r}),n=[],r+=1)}return n.length>0&&t.push({entries:n,turnIndex:r}),t}function NT(e){const t=new Map;for(const n of e)for(let r=1;r<n.logs.length;r+=1){const o=n.logs[r],i=n.logs[r-1];if(o===void 0||i===void 0)continue;const a=Tr(o),l=Tr(i);a==="unknown"||a!==l||t.set(o.id,i)}return t}function im(e){if(e===null)return null;try{const t=JSON.parse(e);return typeof t=="string"?JSON.parse(t):t}catch{return null}}function na(e){if(e==null)return null;const t=typeof e=="string"?e:JSON.stringify(e);if(t===void 0)return null;const n=t.replace(/\s+/g," ").trim();return n.length===0?null:n.length>Kc?`${n.slice(0,Kc-1)}...`:n}function ra(e){if(e==null)return null;if(typeof e=="string")return e.length>0?e:null;const t=JSON.stringify(e,null,2);return t===void 0||t.length===0?null:t}function TT(e){const t=im(e.responseText),n=ke(t,"content");if(!Array.isArray(n))return[];const r=[];for(const o of n){if(ke(o,"type")!=="tool_use")continue;const a=ke(o,"name");if(typeof a!="string"||a.length===0)continue;const l=ke(o,"input");r.push({id:`${String(e.id)}-anthropic-tool-${String(r.length)}`,logId:e.id,index:r.length,provider:"anthropic",name:a,argumentsText:ra(l),argumentsPreview:na(l)})}return r}function ET(e){const t=im(e.responseText),n=ke(t,"choices");if(!Array.isArray(n))return[];const r=[];for(const i of n){const a=ke(i,"message"),l=ke(a,"tool_calls");if(Array.isArray(l))for(const c of l){const u=ke(c,"function"),d=ke(u,"name");if(typeof d!="string"||d.length===0)continue;const f=ke(u,"arguments");r.push({id:`${String(e.id)}-openai-tool-${String(r.length)}`,logId:e.id,index:r.length,provider:"openai",name:d,argumentsText:ra(f),argumentsPreview:na(f)})}}const o=ke(t,"output");if(Array.isArray(o))for(const i of o){if(ke(i,"type")!=="function_call")continue;const a=ke(i,"name");if(typeof a!="string"||a.length===0)continue;const l=ke(i,"arguments");r.push({id:`${String(e.id)}-openai-tool-${String(r.length)}`,logId:e.id,index:r.length,provider:"openai",name:a,argumentsText:ra(l),argumentsPreview:na(l)})}return r}function vl(e){const t=ai.get(e);if(t!==void 0&&t.apiFormat===e.apiFormat&&t.responseText===e.responseText)return t.events;const n=Tr(e);if(!jT(e,n)){const o=[];return ai.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:o}),o}let r;switch(n){case"anthropic":r=TT(e);break;case"openai":r=ET(e);break;case"unknown":r=[];break}return ai.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:r}),r}function AT(e,t,n=0){let r=0,o=0,i=0,a=0,l=0,c=0,u=0,d=0,f=null,m=0;for(const h of e)h.responseStatus===null?o+=1:h.responseStatus>=400&&(r+=1),h.elapsedMs!==null&&t>0&&h.elapsedMs>t*1e3&&(i+=1),h.inputTokens!==null&&(a+=h.inputTokens),h.outputTokens!==null&&(l+=h.outputTokens),h.cacheCreationInputTokens!==null&&(c+=h.cacheCreationInputTokens),h.cacheReadInputTokens!==null&&(u+=h.cacheReadInputTokens),h.elapsedMs!==null&&(d+=h.elapsedMs,f=f===null?h.elapsedMs:Math.max(f,h.elapsedMs)),m+=vl(h).length;return{llmCallCount:e.length,toolCallCount:m,failedCallCount:r,pendingCallCount:o,slowCallCount:i,totalInputTokens:a,totalOutputTokens:l,totalCacheCreationInputTokens:c,totalCacheReadInputTokens:u,totalElapsedMs:d,maxElapsedMs:f,startedAt:e[0]?.timestamp??null,endedAt:e[e.length-1]?.timestamp??null,knowledgeCandidateCount:n}}function li(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}const RT=p.memo(function({entries:t,viewMode:n,strip:r,slowResponseThresholdSeconds:o,cacheTrends:i,onCompareWithPrevious:a,comparisonPredecessors:l,turnIndex:c=0,timeDisplayFormat:u,pendingFocusRequest:d,showLogClientMetadata:f=!0}){const m=t.length-1,h=t[m]?.stopReason??null,v=h!==null?bl(h):!1,g=t[m]?.log.responseStatus===null,x=t.length===1,b=ST(t.length,v,g),[y,_]=p.useState(!1),j=p.useRef(!1);p.useEffect(()=>{b?v&&!j.current&&_(!0):_(!1),j.current=v},[b,v]),p.useEffect(()=>{const L=W=>{const ne=Do(W);ne!==null&&t.some(B=>B.log.id===ne.logId)&&b&&_(!1)};return window.addEventListener(Ht,L),()=>{window.removeEventListener(Ht,L)}},[b,t]),p.useEffect(()=>{if(d===void 0||!t.some(W=>W.log.id===d.logId))return;b&&_(!1);const L=window.setTimeout(()=>{Vs({logId:d.logId,tab:d.tab,source:"virtualizer"})},0);return()=>window.clearTimeout(L)},[b,t,d]);const S=p.useCallback(()=>{b&&_(L=>!L)},[b]),T=p.useMemo(()=>{let L=0,W=0,ne=null,B=!1;for(const F of t)F.log.inputTokens!==null&&(L+=F.log.inputTokens,B=!0),F.log.outputTokens!==null&&(W+=F.log.outputTokens,B=!0),F.log.elapsedMs!==null&&(ne=ne===null?F.log.elapsedMs:Math.max(ne,F.log.elapsedMs));return{totalInput:L,totalOutput:W,hasTokens:B,maxElapsed:ne}},[t,m]),N=p.useMemo(()=>qs(t[0]?.log.id??0),[t]),R=p.useMemo(()=>qs(t[m]?.log.id??0),[t,m]),I=c%2===0?"bg-white/[0.012]":"bg-cyan-300/[0.012]",O=T.maxElapsed!==null&&o>0&&T.maxElapsed>o*1e3,K=p.useMemo(()=>{const L=new Map;for(const W of t){const ne=vl(W.log);ne.length>0&&L.set(W.log.id,ne)}return L},[t]),[A,$]=p.useState(0),k=p.useRef(null);p.useEffect(()=>{const L=k.current;if(!L)return;let W=0;const ne=new ResizeObserver(()=>{window.cancelAnimationFrame(W),W=window.requestAnimationFrame(()=>$(B=>B+1))});return ne.observe(L),()=>{ne.disconnect(),window.cancelAnimationFrame(W)}},[]);const Z=t[0]?.log.id??c,V=`Turn ${String(c+1)}`,U=p.useMemo(()=>({contentVisibility:"auto",containIntrinsicSize:y?"48px":"160px"}),[y]);return s.jsx("div",{ref:k,style:U,tabIndex:y?void 0:0,role:y?void 0:"group","aria-label":y?void 0:V,"data-nav-id":y?void 0:`turn-${String(Z)}`,className:ce("rounded-[8px] border transition-[border-color,box-shadow]",g?"border-amber-300/15 shadow-[0_0_0_1px_rgba(252,211,77,0.04)]":"border-transparent",!y&&"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none"),children:y?s.jsxs("div",{"data-nav-id":`turn-collapsed-${String(Z)}`,"data-nav-action":"expand",role:"button",tabIndex:0,className:"flex items-stretch cursor-pointer focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none rounded-lg",onClick:S,onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),S())},children:[s.jsx("div",{className:"w-5 shrink-0 flex items-start pt-1.5",children:s.jsx("span",{className:"text-[10px] text-muted-foreground/50 font-mono tabular-nums leading-none select-none",children:c+1})}),s.jsxs("div",{className:"w-6 shrink-0 flex flex-col items-center pt-0.5 pb-0.5",children:[s.jsx("div",{className:"flex justify-center h-[calc(0.75rem-8px)]"}),s.jsx("span",{role:"button",tabIndex:0,title:"Start of turn - click to expand",className:"cursor-pointer",onClick:L=>{L.stopPropagation(),S()},onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),S())},children:s.jsx(N,{className:ce("size-3.5 text-cyan-300/85","animate-crab-appear drop-shadow-[0_0_4px_rgba(103,232,249,0.32)]")})}),s.jsx("div",{className:"flex-1 flex justify-center min-h-0",children:s.jsx("div",{className:"w-0.5 bg-muted-foreground/30 h-full"})}),s.jsx("span",{role:"button",tabIndex:0,title:"End of Turn - click to expand",className:"cursor-pointer",onClick:L=>{L.stopPropagation(),S()},onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),S())},children:s.jsx(R,{className:ce("size-3.5 text-amber-400","animate-crab-settle drop-shadow-[0_0_4px_rgba(251,191,36,0.5)]")})})]}),t.length>1&&s.jsxs("div",{className:ce("flex-1 min-w-0 mb-0.5 rounded-lg border border-cyan-300/10 py-1.5 px-3 flex items-center gap-3 text-xs shadow-[inset_0_1px_0_rgba(255,255,255,0.04)]","border border-border bg-card shadow-sm",I),children:[s.jsx("span",{className:S5,children:s.jsx(xt,{className:"size-4 shrink-0"})}),s.jsxs("span",{className:"text-blue-400/80 font-mono font-semibold tabular-nums shrink-0",title:`Log IDs ${String(t[0]?.log.id??"?")} ~ ${String(t[m]?.log.id??"?")}`,children:["#",t[0]?.sessionLogNumber??"?"," ~ #",t[m]?.sessionLogNumber??"?"]}),s.jsxs("span",{className:"text-muted-foreground shrink-0",children:[t.length," request",t.length>1?"s":""]}),T.maxElapsed!==null&&s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:ce("flex items-center gap-1 shrink-0",O?"text-amber-400":"text-muted-foreground"),children:[s.jsx(Bt,{className:"size-3"}),s.jsx("span",{className:"font-mono tabular-nums",children:li(T.maxElapsed)}),O&&s.jsx(Qt,{className:"size-3","aria-label":"Slow response"})]})}),s.jsx(Le,{children:O?`Slow response: ${li(T.maxElapsed)} exceeds ${li(o*1e3)}`:"Slowest request in this turn"})]})}),T.hasTokens&&s.jsxs("span",{className:"flex items-center gap-1 shrink-0",children:[s.jsx(Sr,{className:"size-3 text-muted-foreground"}),s.jsxs("span",{className:"font-mono tabular-nums",children:[s.jsxs("span",{className:"text-blue-400",children:["IN ",$e(T.totalInput)]})," / ",s.jsxs("span",{className:"text-amber-400",children:["OUT ",$e(T.totalOutput)]})]})]}),s.jsx("span",{className:"flex-1 min-w-0"})]})]}):t.map((L,W)=>{const{log:ne,stopReason:B}=L,F=W===0;return s.jsxs("div",{className:"flex items-stretch",children:[F?s.jsx("div",{className:"w-5 shrink-0 flex items-start pt-1.5",children:s.jsx("span",{className:"text-[10px] text-muted-foreground/50 font-mono tabular-nums leading-none select-none",children:c+1})}):s.jsx("div",{className:"w-5 shrink-0"}),s.jsx(wT,{stopReason:B,isPending:ne.responseStatus===null,isFirst:W===0,isTurnStart:F,isOnlyEntry:x,crabIndex:ne.id%12,collapsible:b&&F,onToggle:S}),s.jsxs("div",{className:ce("flex-1 min-w-0 mb-0.5 rounded-[8px]",I),children:[s.jsx(vT,{log:ne,displayNumber:L.sessionLogNumber,viewMode:n,strip:r,slowResponseThresholdSeconds:o,timeDisplayFormat:u,cacheTrend:i?.get(ne.id)??null,showClientMetadata:f,onCompareWithPrevious:l.has(ne.id)?a:void 0}),s.jsx(_T,{events:K.get(ne.id)??[]})]})]},ne.id)})})}),IT=24,zT=132,OT=8;function PT(e){return e>IT}function MT(e){const t=new Map;for(let n=0;n<e.length;n++){const r=e[n];if(r!==void 0)for(const o of r.entries)t.set(o.log.id,n)}return t}function am(e,t,n){return s.jsx(RT,{entries:e.entries,viewMode:t.viewMode,strip:t.strip,slowResponseThresholdSeconds:t.slowResponseThresholdSeconds,timeDisplayFormat:t.timeDisplayFormat,cacheTrends:t.cacheTrends,onCompareWithPrevious:t.onCompareWithPrevious,comparisonPredecessors:t.comparisonPredecessors,turnIndex:e.turnIndex,pendingFocusRequest:n,showLogClientMetadata:t.showLogClientMetadata},e.turnIndex)}function LT(e){return PT(e.turnGroups.length)?s.jsx(DT,{...e}):s.jsx(s.Fragment,{children:e.turnGroups.map(t=>am(t,e))})}function DT(e){const{turnGroups:t}=e,[n,r]=p.useState(null),o=DN({count:t.length,estimateSize:()=>zT,overscan:OT,getItemKey:a=>t[a]?.turnIndex??a}),i=p.useMemo(()=>MT(t),[t]);return p.useEffect(()=>{const a=l=>{const c=Do(l);if(c===null||c.source==="virtualizer")return;const u=i.get(c.logId);u!==void 0&&(o.scrollToIndex(u,{align:"center"}),r(d=>({...c,turnIndex:u,nonce:d===null?1:d.nonce+1})))};return window.addEventListener(Ht,a),()=>{window.removeEventListener(Ht,a)}},[i,o]),s.jsx("div",{className:"relative w-full",style:{height:`${o.getTotalSize()}px`},"data-virtualized-turn-list":"true",children:o.getVirtualItems().map(a=>{const l=t[a.index];if(l===void 0)return null;const c=n!==null&&n.turnIndex===a.index?n:void 0;return s.jsx("div",{"data-index":a.index,ref:o.measureElement,className:"absolute left-0 top-0 w-full",style:{transform:`translateY(${a.start}px)`},children:am(l,e,c)},a.key)})})}const yl=Ee(["episode","procedure","preference","project-fact"]),$T=Ee(["draft","promoted","failed"]),lm=Y({source:Te("agent-inspector"),sessionId:C(),logIds:pe(G().int().positive()),project:C().nullable(),models:pe(C())}),FT=Y({redacted:De(),patterns:pe(C())}),Ur=Y({id:C(),type:yl,title:C(),content:C(),tags:pe(C()),source:Te("agent-inspector"),sessionId:C(),logIds:pe(G().int().positive()),evidence:lm,status:$T,createdAt:C(),updatedAt:C(),openClawMemoryId:C().nullable(),error:C().nullable(),redaction:FT});Y({idempotencyKey:C(),type:yl,title:C(),content:C(),tags:pe(C()),source:Te("agent-inspector"),project:C().nullable(),evidence:lm});const BT=Y({id:C(),type:yl.or(C()),title:C(),content:C(),score:G().nullable(),source:C().nullable(),project:C().nullable(),evidence:xn().optional()});Y({results:pe(BT),warning:C().nullable()});const UT=Y({candidates:pe(Ur)}),WT=Y({candidate:Ur}),HT=Y({error:C().optional(),candidate:Ur.optional()}),ZT=Y({candidate:Ur}),VT={draft:"border-amber-500/30 bg-amber-500/10 text-amber-500",promoted:"border-emerald-500/30 bg-emerald-500/10 text-emerald-500",failed:"border-destructive/30 bg-destructive/10 text-destructive"};function sa(e){return e===null?"-":e<1e3?`${String(e)}ms`:`${(e/1e3).toFixed(1)}s`}function qT(e,t,n){return e===null||t===null?null:Da(e,t,n)}function KT(e){return`${String(e)} candidate${e===1?"":"s"}`}function cm(e){return`log-${String(e)}`}function um(e){const t=cm(e),n=document.getElementById(t);window.history.replaceState(null,"",`#${t}`),n instanceof HTMLElement&&(n.scrollIntoView({block:"center",behavior:"smooth"}),n.focus({preventScroll:!0}))}function GT(e){for(const t of e)if(t.responseStatus!==null&&t.responseStatus>=400)return t;return null}function JT(e){let t=null,n=-1;for(const r of e)r.elapsedMs!==null&&r.elapsedMs>n&&(t=r,n=r.elapsedMs);return t}function YT(e){for(const t of e)if(vl(t).length>0)return t;return null}function XT(e){const t=new Map;for(let n=0;n<e.length;n+=1){const r=e[n];r!==void 0&&t.set(r.id,n+1)}return t}function Hn(e,t){return String(t.get(e)??e)}function QT(e){const t=[{kind:"session",title:`${String(e.summary.llmCallCount)} LLM call${e.summary.llmCallCount===1?"":"s"}`,detail:`Scope ${e.scopeId}`,logId:e.logs[0]?.id??null}],n=YT(e.logs);e.summary.toolCallCount>0&&n!==null&&t.push({kind:"tool",title:`${String(e.summary.toolCallCount)} tool call${e.summary.toolCallCount===1?"":"s"}`,detail:`First tool evidence at #${Hn(n.id,e.displayNumberByLogId)}`,logId:n.id});const r=GT(e.logs);r!==null&&t.push({kind:"failure",title:`Failure #${String(r.responseStatus)}`,detail:`First failed request is #${Hn(r.id,e.displayNumberByLogId)}`,logId:r.id});const o=JT(e.logs);if(o!==null&&e.summary.maxElapsedMs!==null&&t.push({kind:"slow",title:`Slowest ${sa(e.summary.maxElapsedMs)}`,detail:`Max latency observed at #${Hn(o.id,e.displayNumberByLogId)}`,logId:o.id}),e.candidates.length>0){const i=e.candidates.filter(l=>l.status==="draft").length,a=e.candidates.filter(l=>l.status==="promoted").length;t.push({kind:"candidate",title:`${String(e.candidates.length)} memory candidate${e.candidates.length===1?"":"s"}`,detail:`${String(i)} draft / ${String(a)} promoted`,logId:e.candidates[0]?.logIds[0]??null})}return t}function eE(e){switch(e){case"session":return s.jsx(ho,{className:"size-3.5 text-blue-400"});case"tool":return s.jsx(zr,{className:"size-3.5 text-sky-400/70"});case"slow":return s.jsx(Bt,{className:"size-3.5 text-amber-400"});case"failure":return s.jsx(Zd,{className:"size-3.5 text-destructive"});case"candidate":return s.jsx(Hd,{className:"size-3.5 text-emerald-400"})}}function tE({insights:e}){return e.length===0?null:s.jsx("div",{className:"mt-2 grid gap-1.5 border-t border-border/70 pt-2 md:grid-cols-2 xl:grid-cols-3",children:e.map(t=>s.jsxs("button",{type:"button",className:ce("flex min-w-0 items-center gap-2 rounded-md px-2 py-1.5 text-left text-xs","text-muted-foreground transition-colors hover:bg-muted/40 hover:text-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"),onClick:()=>{t.logId!==null&&um(t.logId)},disabled:t.logId===null,children:[eE(t.kind),s.jsxs("span",{className:"min-w-0",children:[s.jsx("span",{className:"block truncate font-medium text-foreground/90",children:t.title}),s.jsx("span",{className:"block truncate font-mono text-[10px]",children:t.detail})]})]},`${t.kind}-${t.title}`))})}function nE(e){switch(e){case"draft":return"Draft";case"promoted":return"Promoted";case"failed":return"Failed"}}function rE(e,t){if(t)return"Promoting";switch(e.status){case"draft":return"Promote";case"failed":return"Retry";case"promoted":return"Promoted"}}function sE(e){return e.redaction.redacted?`Redacted ${e.redaction.patterns.join(", ")}`:"No sensitive pattern matched"}function oE(e,t){const n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-3)}...`}function iE(e,t){const n=e[0],r=e[e.length-1];if(n===void 0)return"No evidence logs";const o=Hn(n,t);return r===void 0||n===r?`#${o}`:`#${o}-#${Hn(r,t)}`}function Gc(e){return e.join(", ")}function aE(e){return e.split(",").map(t=>t.trim()).filter(t=>t.length>0)}function lE({candidate:e,isPromoting:t,isUpdating:n,onPromoteCandidate:r,onUpdateCandidate:o,displayNumberByLogId:i}){const[a,l]=p.useState(!1),[c,u]=p.useState(e.type),[d,f]=p.useState(e.title),[m,h]=p.useState(e.content),[v,g]=p.useState(Gc(e.tags)),[x,b]=p.useState(null),y=e.status!=="promoted",_=e.status!=="promoted",j=p.useCallback(()=>{u(e.type),f(e.title),h(e.content),g(Gc(e.tags)),b(null)},[e.content,e.tags,e.title,e.type]),S=p.useCallback(async()=>{const T=d.trim(),N=m.trim(),R=aE(v);if(T.length===0){b("Title is required.");return}if(N.length===0){b("Content is required.");return}if(R.length===0){b("At least one tag is required.");return}b(null),await o(e.id,{type:c,title:T,content:N,tags:R})&&l(!1)},[e.id,m,v,d,c,o]);return a?s.jsx("div",{className:"border border-border bg-card shadow-sm rounded-[8px] px-2.5 py-2",children:s.jsxs("div",{className:"grid gap-2",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s.jsxs("select",{value:c,disabled:n,onChange:T=>{const N=Ur.shape.type.safeParse(T.currentTarget.value);N.success&&u(N.data)},className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 rounded-md px-2 text-xs","aria-label":"Candidate type",children:[s.jsx("option",{value:"episode",children:"episode"}),s.jsx("option",{value:"procedure",children:"procedure"}),s.jsx("option",{value:"preference",children:"preference"}),s.jsx("option",{value:"project-fact",children:"project-fact"})]}),s.jsx("input",{value:d,disabled:n,onChange:T=>f(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 min-w-[220px] flex-1 rounded-md px-2 text-xs","aria-label":"Candidate title"})]}),s.jsx("textarea",{value:m,disabled:n,onChange:T=>h(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground min-h-28 rounded-md px-2 py-1.5 font-mono text-[11px] leading-relaxed","aria-label":"Candidate content"}),s.jsx("input",{value:v,disabled:n,onChange:T=>g(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 rounded-md px-2 text-xs","aria-label":"Candidate tags"}),s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s.jsxs("span",{className:"inline-flex items-center gap-1 text-[10px] text-muted-foreground",children:[s.jsx(Xl,{className:"size-3"}),"Saving reruns Inspector redaction before promotion."]}),s.jsx("span",{className:"flex-1"}),x!==null&&s.jsx("span",{className:"text-[10px] text-destructive",children:x}),s.jsxs(Ce,{type:"button",variant:"ghost",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:n,onClick:()=>{j(),l(!1)},children:[s.jsx(mo,{className:"size-3.5"}),"Cancel"]}),s.jsxs(Ce,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:n,onClick:()=>{S()},children:[n?s.jsx(zs,{className:"size-3.5 animate-spin"}):s.jsx(w2,{className:"size-3.5"}),"Save"]})]})]})}):s.jsxs("div",{className:"rounded-md border border-border/80 bg-background/60 px-2.5 py-2",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx(Fe,{variant:"outline",className:"h-5 px-1.5 text-[10px] font-mono",children:e.type}),s.jsx("span",{className:"min-w-0 flex-1 truncate text-xs font-medium",title:e.title,children:e.title}),s.jsx(Fe,{variant:"outline",className:ce("h-5 shrink-0 px-1.5 text-[10px] font-mono",VT[e.status]),children:nE(e.status)})]}),s.jsx("p",{className:"mt-1 text-[11px] leading-relaxed text-muted-foreground",title:e.content,children:oE(e.content,360)}),s.jsxs("div",{className:"mt-2 flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] text-muted-foreground",children:[s.jsxs("span",{className:"inline-flex items-center gap-1",children:[s.jsx(Ly,{className:"size-3"}),iE(e.logIds,i)]}),s.jsxs("span",{className:"inline-flex items-center gap-1",children:[s.jsx(Xl,{className:"size-3"}),sE(e)]}),e.status==="promoted"&&s.jsxs("span",{className:"inline-flex items-center gap-1 text-emerald-500",children:[s.jsx(Ci,{className:"size-3"}),e.openClawMemoryId??"OpenClaw"]}),e.status==="failed"&&e.error!==null&&s.jsxs("span",{className:"inline-flex items-center gap-1 text-destructive",children:[s.jsx(Zd,{className:"size-3"}),e.error]})]}),s.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-1.5",children:[e.logIds.map(T=>{const N=Hn(T,i);return s.jsxs("a",{href:`#${cm(T)}`,onClick:R=>{R.preventDefault(),um(T)},className:"rounded border border-blue-400/25 px-1.5 py-0.5 font-mono text-[10px] text-blue-400 underline-offset-2 transition-colors hover:bg-blue-400/10 hover:text-blue-300 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":`Jump to evidence log ${N}`,title:`Log ID ${String(T)}`,children:["#",N]},T)}),s.jsx("span",{className:"flex-1"}),_&&s.jsxs(Ce,{type:"button",variant:"ghost",size:"sm",className:"h-6 gap-1.5 px-2 text-[10px]",disabled:n||t,onClick:()=>l(!0),children:[s.jsx(qd,{className:"size-3"}),"Review"]}),s.jsxs(Ce,{type:"button",variant:y?"outline":"ghost",size:"sm",className:"h-6 gap-1.5 px-2 text-[10px]",onClick:()=>r(e.id),disabled:!y||t||n,children:[t?s.jsx(zs,{className:"size-3 animate-spin"}):y?s.jsx(by,{className:"size-3"}):s.jsx(Ci,{className:"size-3"}),rE(e,t)]})]})]})}function cE({candidates:e,promotingCandidateIds:t,updatingCandidateIds:n,onPromoteCandidate:r,onUpdateCandidate:o,displayNumberByLogId:i}){return e.length===0?null:s.jsx("div",{className:"mt-2 grid gap-1.5",children:e.map(a=>s.jsx(lE,{candidate:a,isPromoting:t.has(a.id),isUpdating:n.has(a.id),onPromoteCandidate:r,onUpdateCandidate:o,displayNumberByLogId:i},a.id))})}function uE({logs:e,scopeId:t,slowResponseThresholdSeconds:n,showRollupMetrics:r,timeDisplayFormat:o}){const[i,a]=p.useState([]),[l,c]=p.useState(!0),[u,d]=p.useState({status:"idle",error:null}),[f,m]=p.useState(()=>new Set),[h,v]=p.useState(()=>new Set),g=i.length>0,x=p.useMemo(()=>AT(e,n,i.length),[i.length,e,n]),b=p.useMemo(()=>XT(e),[e]),y=p.useMemo(()=>QT({logs:e,scopeId:t,summary:x,candidates:i,displayNumberByLogId:b}),[i,b,e,t,x]),_=r||x.maxElapsedMs!==null,j=p.useMemo(()=>qT(x.startedAt,x.endedAt,o),[x.endedAt,x.startedAt,o]),S=p.useCallback(()=>{e.length===0||u.status==="loading"||(d({status:"loading",error:null}),(async()=>{try{const R=await fetch(`/api/knowledge/sessions/${encodeURIComponent(t)}/candidates`,{method:"POST"});if(!R.ok){const O=await Ft(R,`Candidate generation failed with ${String(R.status)}`);d({status:"failed",error:O});return}const I=await _t(R,UT);a(I.candidates),c(I.candidates.length>0),d(I.candidates.length>0?{status:"ready",error:null}:{status:"failed",error:"No candidate was generated for this trace scope."})}catch(R){d({status:"failed",error:R instanceof Error?R.message:"Candidate response was invalid"})}})())},[u.status,e.length,t]),T=p.useCallback(R=>{m(I=>{if(I.has(R))return I;const O=new Set(I);return O.add(R),O}),(async()=>{try{const I=await fetch(`/api/knowledge/candidates/${encodeURIComponent(R)}/promote`,{method:"POST"}),O=await I.json().catch(()=>null),K=WT.safeParse(O);if(I.ok&&K.success){a($=>$.map(k=>k.id===K.data.candidate.id?K.data.candidate:k)),d({status:"ready",error:null});return}const A=HT.safeParse(O);A.success&&A.data.candidate!==void 0&&a($=>$.map(k=>k.id===A.data.candidate?.id?A.data.candidate:k)),d({status:"failed",error:A.success?A.data.error??"Candidate promotion failed":`Candidate promotion failed with ${String(I.status)}`})}catch(I){d({status:"failed",error:I instanceof Error?I.message:"Candidate promotion failed"})}finally{m(I=>{const O=new Set(I);return O.delete(R),O})}})()},[]),N=p.useCallback(async(R,I)=>{v(O=>{if(O.has(R))return O;const K=new Set(O);return K.add(R),K});try{const O=await fetch(`/api/knowledge/candidates/${encodeURIComponent(R)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)});if(!O.ok){const A=await Ft(O,`Candidate update failed with ${String(O.status)}`);return d({status:"failed",error:A}),!1}const K=await _t(O,ZT);return a(A=>A.map($=>$.id===K.candidate.id?K.candidate:$)),d({status:"ready",error:null}),!0}catch(O){return d({status:"failed",error:O instanceof Error?O.message:"Candidate update failed"}),!1}finally{v(O=>{const K=new Set(O);return K.delete(R),K})}},[]);return e.length===0?null:s.jsxs("section",{className:"border border-border bg-card shadow-sm mb-2 rounded-[8px] px-3 py-2",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2 text-xs",children:[r&&s.jsxs("span",{className:"inline-flex items-center gap-1.5 font-semibold text-foreground",children:[s.jsx(ho,{className:"size-3.5 text-blue-400"}),x.llmCallCount," LLM"]}),s.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[s.jsx(zr,{className:"size-3.5 text-sky-400/70"}),x.toolCallCount," tools"]}),r&&s.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[s.jsx(Sr,{className:"size-3.5 text-emerald-400"}),s.jsxs("span",{className:"font-mono",children:[$e(x.totalInputTokens)," / ",$e(x.totalOutputTokens)]})]}),(x.totalCacheCreationInputTokens>0||x.totalCacheReadInputTokens>0)&&s.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[s.jsx(Sr,{className:"size-3.5 text-purple-400"}),s.jsxs("span",{className:"font-mono",children:["KV Cache +",$e(x.totalCacheCreationInputTokens)," / ~",$e(x.totalCacheReadInputTokens)]})]}),_&&s.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[s.jsx(Bt,{className:"size-3.5"}),r&&s.jsx("span",{className:"font-mono",children:sa(x.totalElapsedMs)}),x.maxElapsedMs!==null&&s.jsxs("span",{className:"font-mono text-muted-foreground/70",children:["max ",sa(x.maxElapsedMs)]})]}),r&&j!==null&&s.jsx("span",{className:"font-mono text-muted-foreground/70",children:j}),(x.failedCallCount>0||x.pendingCallCount>0||x.slowCallCount>0)&&s.jsxs("span",{className:"inline-flex items-center gap-1.5 text-amber-400",children:[s.jsx(Qt,{className:"size-3.5"}),s.jsxs("span",{className:"font-mono",children:[x.failedCallCount," fail / ",x.pendingCallCount," pending /"," ",x.slowCallCount," slow"]})]}),s.jsx("span",{className:"flex-1"}),g&&s.jsx(Fe,{variant:"outline",className:"h-6 px-2 text-[10px] font-mono",children:KT(x.knowledgeCandidateCount)}),s.jsxs(Ce,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",onClick:S,disabled:u.status==="loading",children:[u.status==="loading"?s.jsx(mt,{className:"size-3.5 animate-spin"}):s.jsx(Hd,{className:"size-3.5"}),"Candidate"]}),g&&s.jsx(Ce,{type:"button",variant:"ghost",size:"icon",className:"size-7 text-muted-foreground",onClick:()=>c(R=>!R),"aria-expanded":l,"aria-label":l?"Collapse memory candidates":"Expand memory candidates",children:l?s.jsx(ot,{className:"size-3.5"}):s.jsx(xt,{className:"size-3.5"})})]}),u.status==="failed"&&s.jsx("p",{className:"mt-2 text-xs text-destructive",children:u.error}),s.jsx(tE,{insights:y}),l&&s.jsx(cE,{candidates:i,promotingCandidateIds:f,updatingCandidateIds:h,onPromoteCandidate:T,onUpdateCandidate:N,displayNumberByLogId:b})]})}function dE(e){let t=0,n=0;for(const r of e)r.inputTokens!==null&&(t+=r.inputTokens),r.outputTokens!==null&&(n+=r.outputTokens);return{totalInputTokens:t,totalOutputTokens:n}}function fE(e){const t=new Map;for(const n of e){if(n.model===null)continue;const r=aj(n.model);if(r==="unknown")continue;let o=t.get(r);o===void 0&&(o=new Set,t.set(r,o)),o.add(n.model)}return[...t.entries()].map(([n,r])=>({provider:n,models:[...r]}))}function pE(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function hE(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}const mE=p.memo(function({group:e,viewMode:t="simple",strip:n,slowResponseThresholdSeconds:r,cacheTrends:o,onCompareWithPrevious:i,comparisonPredecessors:a,onClearGroup:l,showClientIdentity:c=!0,showProcessMetadata:u=!0,showLogClientMetadata:d=!0,defaultExpanded:f=!1,timeDisplayFormat:m,expanded:h,onExpandedChange:v}){const[g,x]=p.useState(f),b=h??g,y=p.useCallback(K=>{if(v!==void 0){v(K);return}x(K)},[v]);p.useEffect(()=>{!f||h!==void 0||x(!0)},[h,f]);const _=p.useMemo(()=>dE(e.logs),[e.logs]),j=p.useMemo(()=>fE(e.logs),[e.logs]),S=e.logs[0]?.timestamp??new Date().toISOString(),T=e.logs[e.logs.length-1]?.timestamp??new Date().toISOString(),N=e.logs.some(K=>K.responseStatus===null),R=p.useMemo(()=>pE(e.logs),[e.logs]),I=p.useMemo(()=>hE(e.logs),[e.logs]),O=p.useMemo(()=>CT(e.logs),[e.logs]);return p.useEffect(()=>{const K=A=>{const $=Do(A);$!==null&&e.logs.some(k=>k.id===$.logId)&&y(!0)};return window.addEventListener(Ht,K),()=>{window.removeEventListener(Ht,K)}},[e.logs,y]),s.jsxs("div",{className:"mb-2",children:[s.jsx(yN,{conversationId:e.conversationId,startTime:S,endTime:T,totalCalls:e.logs.length,totalInputTokens:_.totalInputTokens,totalOutputTokens:_.totalOutputTokens,expanded:b,onToggle:()=>y(!b),providers:j,isLoading:N,userAgent:e.logs[0]?.userAgent??null,clientPid:R,clientProjectFolder:I,showClientIdentity:c,showProcessMetadata:u,timeDisplayFormat:m,onClear:()=>l(e.logs.map(K=>K.id))}),b&&s.jsxs("div",{children:[s.jsx(uE,{logs:e.logs,scopeId:e.conversationId,slowResponseThresholdSeconds:r,showRollupMetrics:!1,timeDisplayFormat:m}),s.jsx(LT,{turnGroups:O,viewMode:t,strip:n,slowResponseThresholdSeconds:r,timeDisplayFormat:m,cacheTrends:o,onCompareWithPrevious:i,comparisonPredecessors:a,showLogClientMetadata:d})]})]})});function Jc({className:e}){return s.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",className:ce("inline-block size-5",e),children:[s.jsx("path",{d:"M5 13 C5 9 8 7 12 7 C16 7 19 9 19 13 C19 16 16 18 12 18 C8 18 5 16 5 13 Z"}),s.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),s.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),s.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),s.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"}),s.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),s.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),s.jsx("line",{x1:"6.5",y1:"16",x2:"4.5",y2:"19.5"}),s.jsx("line",{x1:"9",y1:"17.5",x2:"8",y2:"20.5"}),s.jsx("line",{x1:"15",y1:"17.5",x2:"16",y2:"20.5"}),s.jsx("line",{x1:"17.5",y1:"16",x2:"19.5",y2:"19.5"})]})}const gE="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6CAQAAAAi5ZK2AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfpCxsJDCnsge2KAAAM2ElEQVR42u2de3AW1RnGnyQQDARDwiUFpHIVMHIpYgFRB2nLxQrC0FIDiCKDWNqBUqBlai8wvciIpaRTWh3QDqCDIIjKDL0IaBC5SKlysWJArgqh3BMICYFs/wgpGUi+8579dr89e/Z5zp/59j2755fn3d2z5wJQFEVRFEVRoVQSm+AG1UFrtEdT1EcjNEA5SlCMIhxDAQoJ3S4lIwf9cD+6ozXq1vKbYuzHNmxEPo6xwcKtungIS3EajkYpwLPoyqYLp3KwACe1cFcvezATmWzEMOk+rMBV18CrSjHy0IqNGQb1wMa4cV8vZfgzGrNRTVYm8nDFQ+SV5QymIIWNa6ZGaz6y6ZR/I4cNbJrSkOcb8MpyCVPYzCapKz71GXllWY5b2dhm6EGcTwhyBw52oyUbPHgNx6WEIXfg4CDuYKMHq0kevI/rlhP4Ghs+OE1ERcKRO3BwEh3Z+NFC7sDBATQngMRrcoDIHTj4iE/yUXJ5VVlhYsMkWezy+a6urgRbsAP7cRincQGpqI+maI+O6IMuSHYRbwIW0X/mJvZTeAH9ah1CATTCaKxBmWbUi7iTOMxEXoCncIsodgvM1ezo2cFPMebdy89qfyHL0vxSN5FQzHL5ajRxVU8v7NO4cWQRjCnIy/DDOOq6FcvENS0gGjMS+wUMjvvdZ5awrsv4KvEE7/Iz+Lontc4Q1vc8AQXt8rO4x7Oa54hqLOLI2aBdfrenHVyviWqdQUx2uLxS6fhMUO8ugrLD5VXqLfpmfxdh2eHyKi0S1P5b4rLF5ZVqiiJl/Z8SmD0ur9TzgnNoQWi2uLxSt+Gy8ixGEpvZLs9AN3RGqsYRa5Xn8SeCM9XlDfFT7Ll2bDnWYYRwOMZjyjP5kOjMdPkDOHpTjPX4iuDILOWL2znCMxH5IyitMc4+ZAuO3q08nyYEaFpiHxbjYWyDIMm/qDyje4kwPMgdOBihjDBNeU7fJcQwIXewTnBzUJ3Vk8Rozr18mOAtuxT1FFH6KmNMJkhTkH+7lse3G0s7RZyuygjPEGVYEntV6aSIlKOM8CvCDEtirywVyFDE6q2M8WPiDJPLJcMgBiljPEWg4XG5AwfTlfEmKWPkEml4XO7gCBooI85TRvlm8I1ax3CX68w8PYeB2KGFfEWM6Yo3qgy5uKj8VU/lLz5HG2QjHRlIA1CCIhTjBI6ggg43LbGXYYggZj3lgkYVtbwaluITvIlf4gHhNEomdheJXfpeXoX8EVHUAR4sY1CKfEyN5gibMCIHXvJsBYur2IDxSCNy05HXx1mPFy/5L2ZFZb6rGR2uusiByb6sWlOMZ5FOl5vocqAuDvm2XNExjLV5t52wuhyY7vM6Ve+jA11uksuB5glYcLgIY+hyc1yeJBj87E35q6BXkC5PAHJgdgKXI9xlzzt8eF0OjE/wypQH7Li7h9nl4wJYjPQ4utPlwSF/LKD1Z8+gC10eLeQOHHyJ1nR54pGPCniVadmcGyK3xOVVZYvWnNpqb5hBIv+L1hCJAdiuhXyVcpT6dV3GSLylhXyxy7YrxHYU4CBO4yKABmiCNuiIe9DMVbT5mMp7eWJc/rgLl1dgC6bE2NelM6Zim4uoDzOxm5nYS/GicNOuznhJc0X5k2HprIkS8gos1cTSSrgYodFbhkQ5sR/F/a7aqD8Oa9TSny43x+UblDNialcmVovr2WP2qOYoIV8V57tREuaK6/o+E7sJid2bO+00Ya0HTPV6lFy+3LNWmymsMZfIg+1w9fZ5ep6ozp3mjaKjy90rGetF9d5H5Ha4vFLZOB62zYGIPH6NEk2NqEvk4U/s1V/f8gX1DyJye5ADQC/BGfyRyO1I7Nf1rvIcPiZye1xeqaGCua6ZNiMf7sOSAolD3h+v4otrH2RewYPCo1JxWnkmQ4jcROTZNcyGWSMcN7PQ5KUJw4zc33t5G+xHzfu3S7655wqmPRG5ccgPxxjkqN7DvbnyfDYRuVmJvY1iYMQEQYxCxRkVEnlYXF5ZdguibFLEKI/6S9pQg1x+Ow4IYrZSxlmqjJFGl4fF5dLVJBcoYzQl8jDcy3XestV7tbcl8vC43IGD3spo6gEVtxF5mJCXCu7H6u6ZRlFE/nAoE7sDB8sEEd9URqkTfuT2P7FXlSuiZQb2KKKU0OXhcbmDGYKYdZWrTO8l8nDcyx04mCeKqh5IsYaJPRyJ3cEfhHFnePTPQ+ShQQ68r4z1NJEHkdj9Q95KcN7didwmlwOzBC2dTOT2uByoj5PBPcbR5UEgly0tPo3I7XE5kI1zgoVOWhO5PS4HXhHE/IDI7XE5MFIU9QdEbo/LO6NIEPWS98Mn/F04pD+R16oWOCiK+4LXyMf4irwnin1ErrtWzGtGIW+MXcJvdB4v/H87LvqIvL1yWG90XZ6J7UHNpVvoI/KGKPDxS5q/Lm/ry5e06i7/SBi5HHd5izxVI/nqIpcM6aXL1WW+1z7v6SPyJ0I7RMJvl+sgP+H9uLihviFvp5FDmNhrL096/34+2Jf3cgBYw8TuAfI3/OiHu8MXl+tsMM97ee3lKBr7AT1JuVuwG+Sp2EvkcSMvR1+/PqbO9Bw5MIn38rgTu69rP6fFeJd2hzwFn/OJPU6XO5gNX5VTy6iNk66QA4+KLqoCY5nYay0L4bs6YedN1e5EJ5fRdogu60dM7DE+/SZk+lIqxmMzrl5br2wzxrvbCA5Ad9FlraTLay2vJ3YV2DS0Rds4VzuYI7isQ1q9TNG6l79uzsK/8ldAyffhYRoRwz0qJgLIgT6CC/uHMcjpck/0c8Gl9aHLbUIO/FN5aflEbhfyOoJBfrlEbhNyydf5C0jnvdwm5MAY5eWtInK7kAOzlRc4mYndLuTAq8pL7KGMMTzUXTGGdrj6qc2KS7yq7O27E1fYxx4ufaK4yCOK41M0ofg7dYHIRVIh2xr3gyBdbpxUW8+8ozh+PV0ePqkmSK1RJPdLhrj890Qu1ynFxa6PeXRTQ76X871cS6rPqh/GPDrLiJc0ulxTqgVtj8U8OglneS8Pn9RrHjaMefwbvJeHT4vj/JY+iMjDJ/UQip8oIqyNcewyJnYT9T3lpf9NEaEJPqvlyEV0uZnqKpjVkqWIkV3DTuKlmusfE3kClYwzygaYIIiSi03XxuA7OIF5aE7kJuttZRPsQpIoUga64W601l75mF0xCZdkYdvBPtZP5AGom6Ahtvu2brnfiZ3IXfbKye7rdHmo9AtBc5zyYftIujxAtRONcduIFLrcJm3wpdmDdfm/iDy2BgqbZnpoXE7kSiUJOy8qMNWD2nJwlC43QY+Km+i5OF/fHhD0ARJ5grpjt4qbaT1auM4oU1DGxG6Oev2/71xdCpEr7Jqtro5YpwWELk+AXtZqsHz01ojdDHM1PU7kCVEznNDEko8RuEXQ0bsAJZqRiTxhGqQ5FdGBg3NYgsfRpoZoDTEIv8N/tCNGDnlSwPU/hxkujyzCPhzBOZQiBY3QFB3i6Lidp7lhZSbe0VorcyVGoZwer1JdbHHlTC8LE3vC1US8CLg/xf+XtDqEfLPa4BiRR0/dBXsGhzOxE3kMdcGXCUc+h8iDT/IFCQR+BROJ3ARlaw5DcF8uYAiRm6J6yHPRXaNb9mhvUknkPmuocuGC+MoS1Cdy89QSK3wCvg8PaZ8NkSdM/YT7hsvLRcwSfKwh8kBVB08LN/JSlxIscNUzT+QBKBlDsC1O4OeR53LkDZEHqN7Ic9VRW4a3kav92EbkxigF38BcbEO5CMBhLME45Tz3yCJPChn8dPRBF7RHB3RARrVtvC6hGIewHwUowBYcirMW/e/lubhCZybunyALmR7/6zKxR05ETuRETuRETuRsNCKniJwicorIKSKniJwicorIKSKniJyqGfnHmvsyE3nIlRJzHxi63ErlEXnUNI6JPWrKUO7rTJdbp98QedSUjWIm9qjpGSKPnrYysUdNzYRLEBO5RRrLxF6p5AhB7yz4zUqMtn+CUpSgZyt/sZpz0mzTWuXU5sbRaIgoOT1T8fdCnCZ026RC2lJzQ25CD4EKFX9PwWLUI/RoQQe+hbdcrEBFGazRovf0tdFwe1SUJVyx5u90u03aKOx7J3aLNEP8lY1J3ho10hg3Q7dbo59pjJwhdkvUAMeJPXr6jtY2Ary3W6Jfaw2CptutUJLmJgLEboXSsUkLO5O8JQ9079LtxE7sxE7sxE7sFqkhH+mIXV1WhG43DMoD7OPZZNHD/gWnPUUR+4BwX2wyeQMAijEYH4h/fS+hRw97c0K3B/tAvCf6ZRmh26OLGCpy+wE2VfQe6XLYTFHD/h6bKGrYy9CDDWQr9vwakV/FE2wce5WGl29CfgrD2TC2qy+W4/w14Hsxy5aVKvjFSN1CLVAPp1DEpqAoiqIoyiz9D9lYMumhgrvLAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDI1LTExLTI3VDA5OjEyOjQxKzAwOjAwvIZCxQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNS0xMS0yN1QwOToxMjo0MSswMDowMM3b+nkAAAAASUVORK5CYII=";function xE({className:e}){return s.jsx("img",{src:gE,alt:"Model Context Protocol","aria-hidden":"true",className:ce("inline-block size-8 object-contain invert",e)})}function Ys({...e}){return s.jsx($C,{"data-slot":"select",...e})}function Xs({...e}){return s.jsx(BC,{"data-slot":"select-value",...e})}function Qs({className:e,size:t="default",children:n,...r}){return s.jsxs(FC,{"data-slot":"select-trigger","data-size":t,className:ce("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r,children:[n,s.jsx(UC,{asChild:!0,children:s.jsx(ot,{className:"size-4 opacity-50"})})]})}function eo({className:e,children:t,position:n="popper",align:r="center",...o}){return s.jsx(WC,{children:s.jsxs(HC,{"data-slot":"select-content",className:ce("bg-popover text-popover-foreground 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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",n==="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:n,align:r,...o,children:[s.jsx(bE,{}),s.jsx(ZC,{className:ce("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),s.jsx(vE,{})]})})}function Tt({className:e,children:t,...n}){return s.jsxs(VC,{"data-slot":"select-item",className:ce("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...n,children:[s.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:s.jsx(KC,{children:s.jsx(Ke,{className:"size-4"})})}),s.jsx(qC,{children:t})]})}function bE({className:e,...t}){return s.jsx(GC,{"data-slot":"select-scroll-up-button",className:ce("flex cursor-default items-center justify-center py-1",e),...t,children:s.jsx(Ia,{className:"size-4"})})}function vE({className:e,...t}){return s.jsx(JC,{"data-slot":"select-scroll-down-button",className:ce("flex cursor-default items-center justify-center py-1",e),...t,children:s.jsx(ot,{className:"size-4"})})}const yE=Ee(["critical","warning","notice"]),wE=Ee(["open"]),kE=Ee(["proxy","tool-schema","run","group"]),dm=Ee(["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"]),_E=Ee(["log","session","run","group"]),jE=Ee(["anthropic","openai","unknown"]),SE=Y({kind:_E,id:C(),label:C(),href:C().nullable()}),CE=Y({id:C(),fingerprint:C(),severity:yE,category:dm,source:kE,status:wE,title:C(),message:C(),count:G().int().positive(),firstSeenAt:C(),lastSeenAt:C(),logIds:pe(G().int().positive()),sessionIds:pe(C()),runIds:pe(C()),groupIds:pe(C()),provider:C().nullable(),model:C().nullable(),apiFormat:jE.nullable(),evidence:pe(SE),metadata:qe(C(),Qe)}),NE=Y({category:dm,count:G().int().nonnegative()}),fm=Y({total:G().int().nonnegative(),open:G().int().nonnegative(),critical:G().int().nonnegative(),warning:G().int().nonnegative(),notice:G().int().nonnegative(),byCategory:pe(NE)}),TE=Y({alerts:pe(CE),total:G().int().nonnegative(),limit:G().int().positive(),summary:fm}),EE=8e3,AE=1e4;function RE(e){const t=new URLSearchParams;e.severity!==void 0&&t.set("severity",e.severity),e.category!==void 0&&t.set("category",e.category),e.source!==void 0&&t.set("source",e.source),e.limit!==void 0&&t.set("limit",String(e.limit));const n=t.toString();return n.length>0?`/api/alerts?${n}`:"/api/alerts"}function IE(e,t){const n=jn(t?RE(e):null,r=>qn(r,TE,AE));return{alerts:n.data?.alerts??[],total:n.data?.total??0,summary:n.data?.summary??null,isLoading:n.isLoading,error:n.error,mutate:n.mutate}}function zE(){const e=jn("/api/alerts/summary",t=>qn(t,fm,EE),{refreshInterval:5e3,revalidateOnFocus:!0});return{summary:e.data??null,isLoading:e.isLoading,error:e.error,mutate:e.mutate}}const wl="relative size-8 rounded-md border border-input bg-background text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:ring-ring/50",OE=["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"];function pm(e){switch(e){case"critical":return"Critical";case"warning":return"Warning";case"notice":return"Notice"}}function PE(e){switch(e){case"proxy":return"Proxy";case"tool-schema":return"Tool schema";case"run":return"Run";case"group":return"Group"}}function kl(e){switch(e){case"request-failure":return"Request failure";case"request-timeout":return"Timeout";case"slow-response":return"Slow response";case"tool-schema":return"Tool calling";case"run-failure":return"Run failure";case"group-failure":return"Group failure";case"group-incomplete":return"Group incomplete"}}function ME(e){switch(e){case"critical":return"border-red-400/40 bg-red-500/12 text-red-100";case"warning":return"border-amber-300/35 bg-amber-400/12 text-amber-100";case"notice":return"border-sky-300/35 bg-sky-400/12 text-sky-100"}}function LE(e){switch(e){case"critical":return"bg-red-400";case"warning":return"bg-amber-300";case"notice":return"bg-sky-300"}}function DE(e){switch(e){case"critical":return"text-red-200";case"warning":return"text-amber-100";case"notice":return"text-sky-100"}}function $E(e){switch(e){case"request-failure":case"run-failure":case"group-failure":return s.jsx(R2,{className:"size-3.5"});case"request-timeout":case"slow-response":return s.jsx(my,{className:"size-3.5"});case"tool-schema":return s.jsx(Qt,{className:"size-3.5"});case"group-incomplete":return s.jsx(B1,{className:"size-3.5"})}}function oa(e){const t=Date.parse(e);return Number.isFinite(t)?new Intl.DateTimeFormat(void 0,{month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1}).format(new Date(t)):e}function ut(e){return e.toLocaleString()}function hm(e){return e.provider!==null&&e.model!==null?`${e.provider} / ${e.model}`:e.provider!==null?e.provider:e.model!==null?e.model:"Unknown target"}function FE(e,t){const n={limit:100};return e!=="all"&&(n.severity=e),t!=="all"&&(n.category=t),n}function BE(e,t){if(t!==null){const n=e.find(r=>r.id===t);if(n!==void 0)return n}return e[0]??null}function us({label:e,count:t,tone:n}){const r=n==="critical"?"border-red-400/30 bg-red-500/10 text-red-100":n==="warning"?"border-amber-300/30 bg-amber-400/10 text-amber-100":n==="notice"?"border-sky-300/30 bg-sky-400/10 text-sky-100":"border-border bg-muted/40 text-foreground";return s.jsxs("div",{className:ce("rounded-md border px-3 py-2",r),children:[s.jsx("div",{className:"text-[10px] font-semibold uppercase opacity-75",children:e}),s.jsx("div",{className:"mt-1 text-lg font-semibold leading-none",children:ut(t)})]})}function ds({value:e,active:t,label:n,count:r,onClick:o}){return s.jsxs(Ce,{type:"button",variant:t?"secondary":"ghost",size:"sm","aria-pressed":t,onClick:()=>o(e),className:"h-7 px-2",children:[n,r!==null?s.jsx(Fe,{variant:"outline",children:ut(r)}):null]})}function UE({category:e,active:t,count:n,onClick:r}){return s.jsxs(Ce,{type:"button",variant:t?"secondary":"ghost",size:"sm","aria-pressed":t,onClick:()=>r(e),className:"h-7 px-2",children:[$E(e),kl(e),s.jsx(Fe,{variant:"outline",children:ut(n)})]})}function WE({alerts:e,selectedAlertId:t,isLoading:n,error:r,onSelect:o}){return n?s.jsxs("div",{className:"flex min-h-56 items-center justify-center rounded-md border border-dashed border-border text-xs text-muted-foreground",children:[s.jsx(mt,{className:"mr-2 size-3.5 animate-spin"}),"Loading alerts..."]}):r!==void 0?s.jsx("div",{className:"rounded-md border border-red-300/30 bg-red-500/10 px-3 py-2 text-xs text-red-100",children:r.message}):e.length===0?s.jsx("div",{className:"flex min-h-56 items-center justify-center rounded-md border border-dashed border-border px-4 text-center text-xs text-muted-foreground",children:"No alerts match the current filters."}):s.jsx("div",{className:"min-h-0 space-y-2 overflow-y-auto pr-1",children:e.map(i=>{const a=i.id===t;return s.jsxs("button",{type:"button",onClick:()=>o(i.id),className:ce("w-full rounded-md border px-3 py-3 text-left transition-colors",a?"border-primary/60 bg-primary/12":"border-border bg-background/70 hover:border-primary/30 hover:bg-muted/60"),children:[s.jsxs("div",{className:"flex items-start justify-between gap-3",children:[s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("span",{className:ce("size-2 rounded-full",LE(i.severity))}),s.jsx("span",{className:ce("text-xs font-semibold",DE(i.severity)),children:pm(i.severity)}),s.jsx("span",{className:"truncate text-xs text-muted-foreground",children:kl(i.category)})]}),s.jsx("div",{className:"mt-1 truncate text-sm font-semibold",children:i.title}),s.jsx("div",{className:"mt-1 line-clamp-2 text-xs text-muted-foreground",children:i.message})]}),i.count>1?s.jsxs(Fe,{variant:"outline",className:"shrink-0",children:["x",ut(i.count)]}):null]}),s.jsxs("div",{className:"mt-2 flex min-w-0 items-center justify-between gap-2 text-[11px] text-muted-foreground",children:[s.jsx("span",{className:"truncate",children:hm(i)}),s.jsx("span",{className:"shrink-0",children:oa(i.lastSeenAt)})]})]},i.id)})})}function HE({alert:e,onNavigate:t}){return e.evidence.length===0?s.jsx("span",{className:"text-xs text-muted-foreground",children:"No linked evidence"}):s.jsx("div",{className:"flex flex-wrap gap-2",children:e.evidence.map(n=>n.href===null?s.jsx(Fe,{variant:"outline",children:n.label},`${n.kind}:${n.id}`):s.jsx(Fe,{variant:"outline",asChild:!0,children:s.jsx("a",{href:n.href,onClick:t,children:n.label})},`${n.kind}:${n.id}`))})}function ZE({alert:e,onNavigate:t}){return e===null?s.jsx("div",{className:"flex min-h-56 items-center justify-center rounded-md border border-dashed border-border px-4 text-center text-xs text-muted-foreground",children:"Select an alert to inspect its evidence."}):s.jsxs("div",{className:"min-h-0 overflow-y-auto rounded-md border border-border bg-background/70",children:[s.jsx("div",{className:ce("border-b px-4 py-3",ME(e.severity)),children:s.jsxs("div",{className:"flex items-start justify-between gap-3",children:[s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s.jsx(Fe,{variant:"outline",children:pm(e.severity)}),s.jsx(Fe,{variant:"outline",children:PE(e.source)}),s.jsx(Fe,{variant:"outline",children:kl(e.category)})]}),s.jsx("h3",{className:"mt-3 text-base font-semibold",children:e.title}),s.jsx("p",{className:"mt-1 text-sm opacity-85",children:e.message})]}),e.count>1?s.jsxs(Fe,{variant:"outline",className:"shrink-0",children:[ut(e.count)," hits"]}):null]})}),s.jsxs("div",{className:"space-y-4 p-4",children:[s.jsxs("div",{className:"grid gap-2 text-xs sm:grid-cols-2",children:[s.jsx(Kt,{label:"Target",value:hm(e)}),s.jsx(Kt,{label:"Last seen",value:oa(e.lastSeenAt)}),s.jsx(Kt,{label:"First seen",value:oa(e.firstSeenAt)}),s.jsx(Kt,{label:"Protocol",value:e.apiFormat??"n/a"})]}),s.jsxs("div",{children:[s.jsx("div",{className:"mb-2 text-xs font-semibold text-muted-foreground",children:"Evidence"}),s.jsx(HE,{alert:e,onNavigate:t})]}),s.jsxs("div",{className:"grid gap-2 text-xs sm:grid-cols-2",children:[s.jsx(Kt,{label:"Logs",value:e.logIds.length===0?"n/a":ut(e.logIds.length)}),s.jsx(Kt,{label:"Sessions",value:e.sessionIds.length===0?"n/a":ut(e.sessionIds.length)}),s.jsx(Kt,{label:"Runs",value:e.runIds.length===0?"n/a":ut(e.runIds.length)}),s.jsx(Kt,{label:"Groups",value:e.groupIds.length===0?"n/a":ut(e.groupIds.length)})]})]})]})}function Kt({label:e,value:t}){return s.jsxs("div",{className:"rounded-md border border-border bg-muted/30 px-3 py-2",children:[s.jsx("div",{className:"text-[10px] font-semibold uppercase text-muted-foreground",children:e}),s.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-foreground",children:t})]})}function Yc(){const[e,t]=p.useState(!1),[n,r]=p.useState("all"),[o,i]=p.useState("all"),[a,l]=p.useState(null),{summary:c,isLoading:u}=zE(),d=p.useMemo(()=>FE(n,o),[o,n]),{alerts:f,total:m,isLoading:h,error:v,mutate:g}=IE(d,e),x=p.useMemo(()=>BE(f,a),[f,a]);p.useEffect(()=>{!e||a!==null&&f.some(N=>N.id===a)||l(f[0]?.id??null)},[f,e,a]);const b=c?.total??0,y=c?.critical??0,_=c?.warning??0,j=c?.notice??0,S=y>0?"bg-red-500":_>0?"bg-amber-400":"bg-sky-400";return s.jsxs(Or,{open:e,onOpenChange:t,children:[s.jsx(Za,{asChild:!0,children:s.jsxs(Ce,{type:"button",variant:"ghost",size:"icon",className:wl,"aria-label":"Alerts",title:"Alerts",children:[s.jsx(Ei,{className:"size-4"}),u?s.jsx(mt,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):b>0?s.jsx("span",{className:ce("absolute -right-1 -top-1 min-w-4 rounded-full px-1 text-[10px] font-semibold leading-4 text-white",S),children:ut(b)}):null,s.jsx("span",{className:"sr-only",children:"Alerts"})]})}),s.jsxs(Pr,{className:"flex max-h-[86vh] max-w-6xl flex-col overflow-hidden",children:[s.jsxs(Mr,{children:[s.jsxs(Lr,{className:"flex items-center gap-2 pr-8",children:[s.jsx(Ei,{className:"size-5 text-red-300"}),s.jsx("span",{children:"Alerts"}),s.jsx(Fe,{variant:"outline",children:ut(b)})]}),s.jsx(Z_,{className:"sr-only",children:"Local alert board for captured Inspector evidence."})]}),s.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[s.jsx(us,{label:"Open",count:c?.open??0,tone:"neutral"}),s.jsx(us,{label:"Critical",count:y,tone:"critical"}),s.jsx(us,{label:"Warning",count:_,tone:"warning"}),s.jsx(us,{label:"Notice",count:j,tone:"notice"})]}),s.jsxs("div",{className:"flex min-h-0 flex-wrap items-center justify-between gap-2 border-y border-border py-3",children:[s.jsxs("div",{className:"flex flex-wrap gap-1",children:[s.jsx(ds,{value:"all",active:n==="all",label:"All",count:c?.total??null,onClick:r}),s.jsx(ds,{value:"critical",active:n==="critical",label:"Critical",count:y,onClick:r}),s.jsx(ds,{value:"warning",active:n==="warning",label:"Warning",count:_,onClick:r}),s.jsx(ds,{value:"notice",active:n==="notice",label:"Notice",count:j,onClick:r})]}),s.jsxs(Ce,{type:"button",variant:"outline",size:"sm",className:"h-7 shrink-0 px-2",onClick:()=>{g()},children:[s.jsx(zs,{className:"size-3.5"}),"Refresh"]})]}),s.jsxs("div",{className:"flex flex-wrap gap-1",children:[s.jsx(Ce,{type:"button",variant:o==="all"?"secondary":"ghost",size:"sm","aria-pressed":o==="all",onClick:()=>i("all"),className:"h-7 px-2",children:"All categories"}),OE.map(T=>{const N=c?.byCategory.find(R=>R.category===T)?.count??0;return N===0?null:s.jsx(UE,{category:T,active:o===T,count:N,onClick:i},T)})]}),s.jsxs("div",{className:"grid min-h-0 flex-1 gap-4 md:grid-cols-[360px_minmax(0,1fr)]",children:[s.jsxs("div",{className:"flex min-h-0 flex-col",children:[s.jsxs("div",{className:"mb-2 flex items-center justify-between text-xs text-muted-foreground",children:[s.jsxs("span",{children:[ut(m)," matched"]}),s.jsx("span",{children:f.length<m?`${ut(f.length)} shown`:"Latest"})]}),s.jsx(WE,{alerts:f,selectedAlertId:x?.id??null,isLoading:h,error:v,onSelect:l})]}),s.jsx(ZE,{alert:x,onNavigate:()=>t(!1)})]})]})]})}const VE=12e3;function qE(e){return e===null||e.evidence===null?null:`/api/groups/${encodeURIComponent(e.id)}/evidence`}function KE(e){const t=jn(qE(e),n=>qn(n,y1,VE));return{evidenceResponse:t.data??null,isLoading:t.isLoading,error:t.error,mutate:t.mutate}}const GE=8e3;function JE(){const e=jn("/api/groups",t=>qn(t,Bd,GE));return{groups:e.data?.groups??[],isLoading:e.isLoading,error:e.error,mutate:e.mutate}}function YE(e,t){const n=`/api/groups/${encodeURIComponent(e)}`;return t?`${n}?deleteEvidence=1`:n}function mm(e){let t=0,n=0,r=0,o=0;for(const i of e.members)switch(i.status){case"completed":t+=1;break;case"failed":case"cancelled":n+=1;break;case"running":r+=1;break;case"created":break;case null:o+=1;break}return{memberCount:e.members.length,completedMembers:t,failedMembers:n,runningMembers:r,missingStatusMembers:o}}function XE(e,t,n=null){return t!==null&&t.group.id===e.id?t.members.map(r=>({member:r.member,exportMember:r,source:"export"})):n!==null&&n.group.id===e.id&&n.members!==null?n.members.map(r=>({member:r.member,exportMember:r,source:"evidence"})):e.members.map(r=>({member:r,exportMember:null,source:"group"}))}function _l(e){switch(e){case"completed":return"border-emerald-200 bg-emerald-50 text-emerald-700";case"failed":case"cancelled":return"border-red-200 bg-red-50 text-red-700";case"running":return"border-sky-200 bg-sky-50 text-sky-700";case"created":return"border-zinc-200 bg-zinc-50 text-zinc-600";case null:return"border-zinc-200 bg-zinc-50 text-zinc-500"}}function jl(e){return e??"unknown"}function QE(e){switch(e){case"PASS":return"border-emerald-200 bg-emerald-50 text-emerald-700";case"FAIL":return"border-red-200 bg-red-50 text-red-700";case"RUNNING":return"border-sky-200 bg-sky-50 text-sky-700";case"UNKNOWN":return"border-zinc-200 bg-zinc-50 text-zinc-600"}}function $o(e){return e===null||e.trim().length===0?"-":e}function ht(e){return e.toLocaleString()}function ia(e){return e==null?"-":e<1e3?`${ht(e)} ms`:`${(e/1e3).toFixed(1)} s`}function Qn(e){const t=Date.parse(e);return Number.isFinite(t)?new Intl.DateTimeFormat(void 0,{month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1}).format(new Date(t)):e}function Xc(e){return e===null?"-":Qn(e)}function e4(e){const t=JSON.stringify(e),n=t===void 0?String(e):t;return n.length<=160?n:`${n.slice(0,157)}...`}function gm(...e){for(const t of e)if(t!==null&&t.trim().length>0)return t;return"-"}function t4(...e){for(const t of e)if(t!=null&&t.trim().length>0)return t;return null}function n4(e){const t=e.provider,n=e.model;return t!==null&&t.length>0&&n!==null&&n.length>0?`${t} / ${n}`:gm(t,n)}function r4(e,t){if(t!==null){const n=e.find(r=>r.id===t);if(n!==void 0)return n}return e[0]??null}function s4(e){return(e.exportMember?.session?.latestLogs??[])[0]??null}function o4(e){switch(e){case"export":return"fresh export";case"evidence":return"evidence";case"group":return"group"}}function i4(e,t){return t!==null&&t.group.id===e.id?t.evidence:e.evidence}function a4(e,t,n){return t!==null&&t.group.id===e.id?t.summary:n!==null&&n.group.id===e.id?n.summary:null}function l4(e,t,n){return t!==null&&t.group.id===e.id?t.jenkinsReport:n!==null&&n.group.id===e.id?n.report:null}function Qc(){const[e,t]=p.useState(!1),[n,r]=p.useState(null),[o,i]=p.useState(null),[a,l]=p.useState(null),[c,u]=p.useState(null),[d,f]=p.useState(null),[m,h]=p.useState(!1),[v,g]=p.useState(null),[x,b]=p.useState(null),{groups:y,isLoading:_,error:j,mutate:S}=JE(),T=p.useMemo(()=>r4(y,n),[y,n]);p.useEffect(()=>{!e||n!==null&&y.some(W=>W.id===n)||r(y[0]?.id??null)},[y,e,n]);const N=T!==null&&c!==null&&c.group.id===T.id?c:null,{evidenceResponse:R,isLoading:I,error:O,mutate:K}=KE(T),A=p.useCallback(()=>{S()},[S]),$=p.useCallback(async L=>{i(L.id),l(null);try{const W=await fetch(`/api/groups/${encodeURIComponent(L.id)}/evidence`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({latestLogLimit:10})});if(!W.ok){l(await Ft(W,`Export failed with status ${String(W.status)}`));return}const ne=await _t(W,w1);u(ne),await S(),await K()}catch(W){l(W instanceof Error?W.message:String(W))}finally{i(null)}},[S,K]),k=p.useCallback(L=>{f(L),h(!1),b(null)},[]),Z=p.useCallback(()=>{v===null&&(f(null),h(!1),b(null))},[v]),V=p.useCallback(L=>{r(L),f(null),h(!1),b(null)},[]),U=p.useCallback(async()=>{const L=d;if(L!==null){g(L.id),b(null);try{const W=await fetch(YE(L.id,m),{method:"DELETE"});if(!W.ok){b(await Ft(W,`Delete failed with status ${String(W.status)}`));return}await _t(W,v1),u(ne=>ne!==null&&ne.group.id===L.id?null:ne),r(ne=>ne===L.id?null:ne),f(null),h(!1),await S(),await K()}catch(W){b(W instanceof Error?W.message:String(W))}finally{g(null)}}},[m,d,S,K]);return s.jsxs(Or,{open:e,onOpenChange:t,children:[s.jsx(Za,{asChild:!0,children:s.jsxs(Ce,{type:"button",variant:"ghost",size:"icon",className:wl,"aria-label":"Evaluation groups",title:"Evaluation groups",children:[s.jsx(Jl,{className:"size-4"}),_?s.jsx(mt,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):y.length>0?s.jsx("span",{className:"absolute -right-1 -top-1 min-w-4 rounded-full bg-primary px-1 text-[10px] leading-4 text-primary-foreground",children:y.length}):null,s.jsx("span",{className:"sr-only",children:"Evaluation groups"})]})}),s.jsxs(Pr,{className:"flex max-h-[85vh] max-w-5xl flex-col overflow-hidden",children:[s.jsx(Mr,{children:s.jsxs(Lr,{className:"flex items-center gap-2 pr-8",children:[s.jsx(Jl,{className:"size-5 text-muted-foreground"}),s.jsx("span",{children:"Groups"}),s.jsx(Fe,{variant:"outline",children:ht(y.length)})]})}),s.jsxs("div",{className:"flex min-h-0 items-center justify-between gap-3 border-b border-border pb-3",children:[s.jsx("p",{className:"text-xs text-muted-foreground",children:"Evaluation batches, model runs, and exported evidence packs."}),s.jsxs(Ce,{type:"button",variant:"outline",size:"sm",className:"shrink-0",onClick:A,children:[s.jsx(zs,{className:"size-3.5"}),"Refresh"]})]}),s.jsxs("div",{className:"grid min-h-0 flex-1 gap-4 md:grid-cols-[260px_minmax(0,1fr)]",children:[s.jsx(c4,{groups:y,selectedGroupId:T?.id??null,isLoading:_,error:j,onSelect:V}),s.jsx(u4,{group:T,deleteTarget:d,deleteEvidence:m,exportResult:N,evidenceResponse:R,evidenceLoading:I,evidenceError:O,exportError:a,deleteError:x,exportingGroupId:o,deletingGroupId:v,onDeleteEvidenceChange:h,onExport:$,onRequestDelete:k,onCancelDelete:Z,onConfirmDelete:()=>{U()}})]})]})]})}function c4({groups:e,selectedGroupId:t,isLoading:n,error:r,onSelect:o}){return n?s.jsx("div",{className:"flex min-h-48 items-center justify-center rounded-md border border-dashed border-border text-xs text-muted-foreground",children:"Loading groups..."}):r!==void 0?s.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:r.message}):e.length===0?s.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-8 text-center text-xs text-muted-foreground",children:"No groups yet."}):s.jsx("div",{className:"min-h-0 overflow-y-auto pr-1",children:s.jsx("div",{className:"space-y-2",children:e.map(i=>{const a=mm(i),l=t===i.id;return s.jsxs("button",{type:"button",onClick:()=>o(i.id),className:ce("w-full rounded-md border px-3 py-2 text-left text-xs transition-colors",l?"border-primary bg-primary/5":"border-border bg-background hover:bg-muted/50"),children:[s.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2",children:[s.jsx("span",{className:"min-w-0 truncate text-sm font-medium",children:i.title}),s.jsx(Fe,{variant:"outline",className:_l(i.status),children:jl(i.status)})]}),s.jsxs("div",{className:"mt-1 flex items-center gap-2 text-muted-foreground",children:[s.jsxs("span",{children:[a.memberCount," sessions"]}),s.jsx("span",{children:Qn(i.updatedAt)})]})]},i.id)})})})}function u4({group:e,deleteTarget:t,deleteEvidence:n,exportResult:r,evidenceResponse:o,evidenceLoading:i,evidenceError:a,exportError:l,deleteError:c,exportingGroupId:u,deletingGroupId:d,onDeleteEvidenceChange:f,onExport:m,onRequestDelete:h,onCancelDelete:v,onConfirmDelete:g}){if(e===null)return s.jsx("div",{className:"flex min-h-48 items-center justify-center rounded-md border border-dashed border-border text-xs text-muted-foreground",children:"Select a group to inspect."});const x=mm(e),b=a4(e,r,o),y=l4(e,r,o),_=i4(e,r),j=XE(e,r,o),S=u===e.id,T=d===e.id,N=t?.id===e.id;return s.jsx("div",{className:"min-h-0 overflow-y-auto pr-1",children:s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[s.jsxs("div",{className:"min-w-0 space-y-1",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[s.jsx("h3",{className:"min-w-0 truncate text-base font-semibold",children:e.title}),s.jsx(Fe,{variant:"outline",className:_l(e.status),children:jl(e.status)}),s.jsx(Fe,{variant:"outline",children:e.kind})]}),s.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-xs text-muted-foreground",children:[s.jsx("span",{children:$o(e.project)}),s.jsxs("span",{children:["updated ",Qn(e.updatedAt)]})]})]}),s.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[s.jsx(Ce,{type:"button",variant:"outline",size:"icon",className:"size-8 text-red-600 hover:text-red-700","aria-label":"Delete group",title:"Delete group",disabled:T,onClick:()=>h(e),children:T?s.jsx(mt,{className:"size-3.5 animate-spin"}):s.jsx(Kn,{className:"size-3.5"})}),s.jsxs(Ce,{type:"button",variant:"default",size:"sm",className:"shrink-0",disabled:S||T,onClick:()=>{m(e)},children:[S?s.jsx(mt,{className:"size-3.5 animate-spin"}):s.jsx(po,{className:"size-3.5"}),"Export evidence"]})]})]}),e.task!==null&&e.task.trim().length>0&&s.jsx("p",{className:"rounded-md border border-border bg-muted/20 px-3 py-2 text-xs text-muted-foreground",children:e.task}),N&&s.jsx(d4,{group:e,deleteEvidence:n,isDeleting:T,error:c,onDeleteEvidenceChange:f,onCancel:v,onConfirm:g}),s.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[s.jsx(Gt,{label:"Members",value:x.memberCount}),s.jsx(Gt,{label:"Done",value:x.completedMembers}),s.jsx(Gt,{label:"Failed",value:x.failedMembers}),s.jsx(Gt,{label:"Running",value:x.runningMembers})]}),b!==null&&s.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[s.jsx(Gt,{label:"Requests",value:b.requestCount}),s.jsx(Gt,{label:"Errors",value:b.errorCount}),s.jsx(Gt,{label:"Tokens",value:b.tokenUsage.total}),s.jsx(Gt,{label:"Missing",value:b.missingSessions})]}),s.jsx(f4,{report:y,loading:i,error:a,hasEvidence:_!==null}),s.jsx(p4,{evidence:_}),l!==null&&s.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:l}),c!==null&&!N&&s.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:c}),s.jsx(h4,{rows:j})]})})}function d4({group:e,deleteEvidence:t,isDeleting:n,error:r,onDeleteEvidenceChange:o,onCancel:i,onConfirm:a}){const l=e.evidence!==null,c=e.evidence?.markdownPath??"No evidence pack exported.";return s.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-3 text-red-900",children:s.jsxs("div",{className:"flex min-w-0 flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[s.jsxs("div",{className:"min-w-0 space-y-2",children:[s.jsxs("div",{className:"flex items-center gap-2 text-sm font-semibold",children:[s.jsx(Kn,{className:"size-4 text-red-600"}),s.jsx("span",{children:"Delete group?"})]}),s.jsxs("p",{className:"text-xs text-red-800",children:["Delete ",s.jsx("span",{className:"font-medium",children:e.title}),". Session logs and run records stay intact."]}),s.jsxs("label",{className:ce("flex min-w-0 items-start gap-2 text-xs",l?"cursor-pointer":"opacity-60"),children:[s.jsx("input",{type:"checkbox",className:"mt-0.5 size-4 shrink-0",checked:t,disabled:!l||n,onChange:u=>o(u.currentTarget.checked)}),s.jsxs("span",{className:"min-w-0",children:[s.jsx("span",{className:"block font-medium",children:"Also delete exported evidence files"}),s.jsx("code",{className:"mt-1 block truncate font-mono text-[11px] text-red-700",children:c})]})]}),r!==null&&s.jsx("div",{className:"rounded-md border border-red-200 bg-white px-2 py-1.5 text-xs text-red-700",children:r})]}),s.jsxs("div",{className:"flex shrink-0 justify-end gap-2",children:[s.jsx(Ce,{type:"button",variant:"outline",size:"sm",disabled:n,onClick:i,children:"Cancel"}),s.jsxs(Ce,{type:"button",variant:"destructive",size:"sm",disabled:n,onClick:a,children:[n?s.jsx(mt,{className:"size-3.5 animate-spin"}):s.jsx(Kn,{className:"size-3.5"}),"Delete"]})]})]})})}function Gt({label:e,value:t}){return s.jsxs("div",{className:"rounded-md border border-border bg-muted/20 px-3 py-2",children:[s.jsx("div",{className:"text-[11px] font-medium uppercase text-muted-foreground",children:e}),s.jsx("div",{className:"mt-1 font-mono text-sm font-semibold",children:ht(t)})]})}function f4({report:e,loading:t,error:n,hasEvidence:r}){const{copied:o,copy:i}=$t(e?.markdown??null);return e===null&&!t&&n===void 0?null:t?s.jsxs("div",{className:"flex items-center gap-2 rounded-md border border-border bg-muted/20 px-3 py-2 text-xs text-muted-foreground",children:[s.jsx(mt,{className:"size-3.5 animate-spin"}),"Loading evidence report..."]}):n!==void 0&&r?s.jsxs("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:["Failed to load evidence report: ",n.message]}):e===null?null:s.jsxs("div",{className:"rounded-md border border-border bg-muted/20 px-3 py-2",children:[s.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("span",{className:"text-xs font-semibold",children:"Evidence report"}),s.jsx(Fe,{variant:"outline",className:QE(e.status),children:e.status})]}),s.jsx(Ce,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":o?"Copied evidence report":"Copy evidence report",onClick:i,children:o?s.jsx(Ke,{className:"size-3.5 text-emerald-500"}):s.jsx(Ct,{className:"size-3.5"})})]}),s.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:e.summary})]})}function p4({evidence:e}){return e===null?s.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground",children:"No evidence pack exported yet."}):s.jsxs("div",{className:"space-y-2 rounded-md border border-border bg-muted/20 px-3 py-2",children:[s.jsxs("div",{className:"flex items-center justify-between gap-2",children:[s.jsx("span",{className:"text-xs font-semibold",children:"Evidence paths"}),s.jsx("span",{className:"text-[11px] text-muted-foreground",children:Qn(e.exportedAt)})]}),s.jsxs("div",{className:"grid gap-2",children:[s.jsx(ci,{label:"JSON",value:e.jsonPath}),s.jsx(ci,{label:"Markdown",value:e.markdownPath}),s.jsx(ci,{label:"HTML",value:e.htmlPath})]})]})}function ci({label:e,value:t}){const{copied:n,copy:r}=$t(t);return s.jsxs("div",{className:"flex min-w-0 items-center gap-2 rounded-md border border-border bg-background px-2 py-1.5",children:[s.jsx("span",{className:"w-16 shrink-0 text-[11px] font-medium text-muted-foreground",children:e}),s.jsx("code",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t}),s.jsx(Ce,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":n?`Copied ${e} path`:`Copy ${e} path`,onClick:r,children:n?s.jsx(Ke,{className:"size-3.5 text-emerald-500"}):s.jsx(Ct,{className:"size-3.5"})})]})}function h4({rows:e}){const[t,n]=p.useState(null),r=p.useCallback(o=>{n(i=>i===o?null:o)},[]);return e.length===0?s.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-8 text-center text-xs text-muted-foreground",children:"No sessions attached."}):s.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[s.jsx("div",{className:"border-b border-border bg-muted/30 px-3 py-2 text-xs font-semibold",children:"Members"}),s.jsx("div",{className:"overflow-x-auto",children:s.jsxs("table",{className:"w-full min-w-[760px] text-left text-xs",children:[s.jsx("thead",{className:"border-b border-border bg-muted/20 text-muted-foreground",children:s.jsxs("tr",{children:[s.jsx("th",{className:"px-3 py-2 font-medium",children:"Session"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"Provider / Model"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"Status"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"Requests"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"Errors"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"First chunk"}),s.jsx("th",{className:"px-3 py-2 font-medium",children:"Tokens"})]})}),s.jsx("tbody",{children:e.map(o=>{const i=t===o.member.id;return s.jsxs(p.Fragment,{children:[s.jsx(m4,{row:o,isExpanded:i,onToggleDetails:r}),s.jsx(g4,{row:o,isExpanded:i})]},o.member.id)})})]})})]})}function m4({row:e,isExpanded:t,onToggleDetails:n}){const r=e.member,o=e.exportMember?.session??null,i=s4(e),a=o?.inspectorPath??Bu(r.sessionId),l=e.source!=="evidence",c=o?.requestCount??null,u=o?.errorCount??null,d=o?.tokenUsage.total??null,f=i?.firstChunkMs??null,m=gm(r.label,r.sessionId),h=t4(o?.clientUserAgent,i?.userAgent,r.agent),v=o?.clientProjectFolder??null,g=qa({userAgent:h,conversationId:r.sessionId,clientProjectFolder:v}),x=yo(g);return s.jsxs("tr",{className:"border-b border-border last:border-0 hover:bg-muted/20",children:[s.jsxs("td",{className:"max-w-56 px-3 py-2",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-1.5",children:[s.jsx(Ce,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0 text-muted-foreground","aria-label":t?`Hide member ${m}`:`Show member ${m}`,title:t?"Hide member details":"Show member details",onClick:()=>{n(r.id)},children:t?s.jsx(ot,{className:"size-3.5"}):s.jsx(xt,{className:"size-3.5"})}),x!==null&&s.jsx(Ka,{client:g,className:"size-5"}),l?s.jsxs("a",{href:a,target:"_blank",rel:"noreferrer",className:"inline-flex max-w-full min-w-0 items-center gap-2 rounded-sm font-mono text-xs text-primary outline-none hover:underline focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","aria-label":`Open session ${m}`,title:`Open session ${m}`,children:[s.jsx("span",{className:"min-w-0 truncate",children:m}),s.jsx(za,{className:"size-3 shrink-0 text-muted-foreground"})]}):s.jsxs("button",{type:"button",className:"inline-flex max-w-full min-w-0 items-center gap-2 rounded-sm font-mono text-xs text-foreground outline-none hover:underline focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",title:`Show evidence snapshot for ${m}`,"aria-label":`Show evidence snapshot for ${m}`,onClick:()=>{n(r.id)},children:[s.jsx("span",{className:"min-w-0 truncate",children:m}),s.jsx(Fe,{variant:"outline",className:"shrink-0 border-zinc-200 bg-zinc-50 text-zinc-600",children:"evidence"})]})]}),s.jsx("div",{className:"mt-0.5 truncate text-[11px] text-muted-foreground",children:$o(r.agent)})]}),s.jsx("td",{className:"max-w-52 px-3 py-2",children:s.jsx("span",{className:"block truncate",children:n4(r)})}),s.jsx("td",{className:"px-3 py-2",children:s.jsx(Fe,{variant:"outline",className:_l(r.status),children:jl(r.status)})}),s.jsx("td",{className:"px-3 py-2 font-mono",children:c===null?"-":ht(c)}),s.jsx("td",{className:"px-3 py-2 font-mono",children:u===null?"-":ht(u)}),s.jsx("td",{className:"px-3 py-2 font-mono",children:ia(f)}),s.jsx("td",{className:"px-3 py-2 font-mono",children:d===null?"-":ht(d)})]})}function g4({row:e,isExpanded:t}){if(!t)return null;const n=e.member,r=e.exportMember,o=r?.session??null,i=r?.run??null,a=Object.entries(n.metadata);return s.jsx("tr",{className:"border-b border-border bg-muted/10",children:s.jsx("td",{colSpan:7,className:"px-3 pb-4 pt-2",children:s.jsxs("div",{className:"space-y-3 rounded-md border border-border bg-background p-3",children:[s.jsxs("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-4",children:[s.jsx(tt,{label:"Source",value:o4(e.source)}),s.jsx(tt,{label:"Member ID",value:n.id,mono:!0}),s.jsx(tt,{label:"Session ID",value:n.sessionId,mono:!0}),s.jsx(tt,{label:"Run ID",value:i?.id??n.runId??"-",mono:!0}),s.jsx(tt,{label:"Created",value:Qn(n.addedAt)}),s.jsx(tt,{label:"Updated",value:Qn(n.updatedAt)}),s.jsx(tt,{label:"Session created",value:Xc(o?.createdAt??null)}),s.jsx(tt,{label:"Session updated",value:Xc(o?.updatedAt??null)})]}),o===null?s.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground",children:"No session snapshot is available for this member."}):s.jsxs("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-4",children:[s.jsx(tt,{label:"Log coverage",value:o.logCoverage}),s.jsx(tt,{label:"Runtime",value:$o(o.runtimeMode)}),s.jsx(tt,{label:"Requests",value:ht(o.requestCount),mono:!0}),s.jsx(tt,{label:"Errors",value:ht(o.errorCount),mono:!0}),s.jsx(tt,{label:"Input tokens",value:ht(o.tokenUsage.input),mono:!0}),s.jsx(tt,{label:"Output tokens",value:ht(o.tokenUsage.output),mono:!0}),s.jsx(tt,{label:"Cache read",value:ht(o.tokenUsage.cacheRead),mono:!0}),s.jsx(tt,{label:"Total tokens",value:ht(o.tokenUsage.total),mono:!0})]}),s.jsx(x4,{logs:o?.latestLogs??[]}),s.jsx(b4,{entries:a})]})})})}function tt({label:e,value:t,mono:n=!1}){return s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:e}),s.jsx("div",{className:ce("truncate text-xs text-foreground",n?"font-mono":""),title:t,children:t})]})}function x4({logs:e}){const t=e.slice(0,5);return t.length===0?s.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground",children:"No latest logs in this snapshot."}):s.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[s.jsx("div",{className:"border-b border-border bg-muted/30 px-3 py-2 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Latest logs"}),s.jsx("div",{className:"divide-y divide-border",children:t.map(n=>{const r=n.sessionLogNumber??n.id;return s.jsxs("div",{className:"grid gap-2 px-3 py-2 text-xs sm:grid-cols-[72px_1fr_88px_88px]",children:[s.jsxs("span",{className:"font-mono text-muted-foreground",title:`Log ID ${String(n.id)}`,children:["#",r]}),s.jsxs("span",{className:"min-w-0 truncate",children:[$o(n.model)," · ",n.apiFormat," · ",n.path]}),s.jsx("span",{className:"font-mono text-muted-foreground",children:ia(n.firstChunkMs)}),s.jsx("span",{className:"font-mono text-muted-foreground",children:ia(n.latencyMs)})]},n.id)})})]})}function b4({entries:e}){return e.length===0?null:s.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[s.jsx("div",{className:"border-b border-border bg-muted/30 px-3 py-2 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Metadata"}),s.jsx("div",{className:"grid gap-x-3 gap-y-2 p-3 text-xs sm:grid-cols-2",children:e.map(([t,n])=>{const r=e4(n);return s.jsxs("div",{className:"min-w-0",children:[s.jsx("span",{className:"mr-2 text-muted-foreground",children:t}),s.jsx("span",{className:"font-mono text-foreground",title:r,children:r})]},t)})})]})}function v4(){return s.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"size-6 shrink-0",children:[s.jsx("title",{children:"Claude Code"}),s.jsx("path",{clipRule:"evenodd",d:"M20.998 10.949H24v3.102h-3v3.028h-1.487V20H18v-2.921h-1.487V20H15v-2.921H9V20H7.488v-2.921H6V20H4.487v-2.921H3V14.05H0V10.95h3V5h17.998v5.949zM6 10.949h1.488V8.102H6v2.847zm10.51 0H18V8.102h-1.49v2.847z"})]})}function y4(){return s.jsxs("svg",{fill:"currentColor",fillRule:"evenodd",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"size-6 shrink-0",children:[s.jsx("title",{children:"OpenCode"}),s.jsx("path",{d:"M16 6H8v12h8V6zm4 16H4V2h16v20z"})]})}function w4(){return s.jsxs("svg",{fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:"size-6 shrink-0",children:[s.jsx("title",{children:"MiMo Code"}),s.jsx("text",{x:"12",y:"18",textAnchor:"middle",fontSize:"16",fontWeight:"800",fontFamily:"system-ui, sans-serif",children:"M"})]})}const k4=Y({name:C(),apiKey:C(),format:Ee(["anthropic","openai"]),anthropicBaseUrl:C(),openaiBaseUrl:C(),openaiResponsesBaseUrl:C().optional().default(""),models:pe(C()),sourceTool:Ee(["claude-code","opencode","mimo-code"]),alreadyExists:De()}),_4=Y({providers:pe(k4),warnings:pe(C()).optional()}),j4=Y({success:De().optional(),imported:G().optional(),message:C().optional(),errors:pe(C()).optional()}),S4={"claude-code":v4,opencode:y4,"mimo-code":w4};function C4({open:e,onOpenChange:t,onImportComplete:n}){const[r,o]=p.useState(!1),[i,a]=p.useState(null),[l,c]=p.useState([]),[u,d]=p.useState([]),[f,m]=p.useState(new Set),[h,v]=p.useState(!1),[g,x]=p.useState(null),[b,y]=p.useState(null),_=p.useCallback(()=>{o(!0),a(null),d([]),c([]),m(new Set),x(null),y(null),fetch("/api/providers/scan").then(N=>N.ok?N.json().then(R=>{const I=_4.safeParse(R);if(!I.success){a(`Invalid response: ${I.error.message}`);return}c(I.data.providers),d(I.data.warnings??[]);const O=new Set;I.data.providers.forEach((K,A)=>{K.alreadyExists||O.add(A)}),m(O)}):N.text().then(R=>{a(`Scan failed (${N.status}): ${R}`)})).catch(N=>{a(N instanceof Error?N.message:String(N))}).finally(()=>{o(!1)})},[]);p.useEffect(()=>{e&&_()},[e,_]);const j=p.useCallback(N=>{m(R=>{const I=new Set(R);return I.has(N)?I.delete(N):I.add(N),I})},[]),S=p.useCallback(()=>{const N=l.filter((O,K)=>f.has(K));if(N.length===0)return;v(!0),y(null),x(null);const R=new Date().toISOString(),I=N.map(O=>({id:window.crypto.randomUUID(),name:O.name,apiKey:O.apiKey,format:O.format,anthropicBaseUrl:O.anthropicBaseUrl,openaiBaseUrl:O.openaiBaseUrl,openaiResponsesBaseUrl:O.openaiResponsesBaseUrl,models:O.models,createdAt:R,updatedAt:R}));fetch("/api/providers/import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({providers:I})}).then(O=>O.json()).then(O=>{const K=j4.safeParse(O);if(!K.success){y(`Invalid response: ${K.error.message}`);return}const A=K.data;c($=>$.map((k,Z)=>f.has(Z)?{...k,alreadyExists:!0}:k)),m(new Set),A.errors!==void 0&&A.errors.length>0&&A.message!==void 0?x(A.message):x(`Imported ${A.imported??N.length} provider(s)`),n()}).catch(O=>{y(O instanceof Error?O.message:String(O))}).finally(()=>{v(!1)})},[l,f,n]),T=l.some(N=>!N.alreadyExists);return s.jsx(Or,{open:e,onOpenChange:t,children:s.jsxs(Pr,{className:"max-w-xl max-h-[80vh] overflow-hidden flex flex-col",children:[s.jsxs(Mr,{children:[s.jsx(Lr,{children:"Import from External Tools"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Detect provider configurations from Claude Code, OpenCode, and MiMo Code."})]}),s.jsxs("div",{className:"flex-1 overflow-y-auto space-y-3",children:[r&&s.jsxs("div",{className:"flex items-center justify-center py-8 gap-2 text-muted-foreground",children:[s.jsx(mt,{className:"size-4 animate-spin"}),s.jsx("span",{className:"text-sm",children:"Scanning for external providers..."})]}),i!==null&&s.jsxs("div",{className:"flex items-center gap-2 text-destructive text-sm py-4",children:[s.jsx(jr,{className:"size-4"}),i]}),!r&&i===null&&l.length===0&&s.jsxs("p",{className:"text-sm text-muted-foreground py-8 text-center",children:["No external provider configurations found.",s.jsx("br",{}),s.jsx("span",{className:"text-xs",children:"Supported tools: Claude Code (~/.claude/settings.json), OpenCode (~/.config/opencode/opencode.json), MiMo Code (~/.config/mimocode/mimocode.jsonc)"})]}),!r&&l.map((N,R)=>s.jsxs("label",{className:`flex items-start gap-3 p-3 border rounded-md ${N.alreadyExists?"":"cursor-pointer hover:bg-muted/50"}`,children:[!N.alreadyExists&&s.jsx("input",{type:"checkbox",checked:f.has(R),disabled:h,onChange:()=>j(R),className:"mt-0.5 size-4"}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[(()=>{const I=S4[N.sourceTool];return I===void 0?null:s.jsx(I,{})})(),N.alreadyExists&&s.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Already added"})]}),s.jsxs("div",{className:"text-xs text-muted-foreground mt-1 truncate",children:[N.models.slice(0,4).join(", "),N.models.length>4?` +${N.models.length-4} more`:""]}),s.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 truncate",children:N.format==="anthropic"?N.anthropicBaseUrl:N.openaiResponsesBaseUrl!==""?N.openaiResponsesBaseUrl:N.openaiBaseUrl}),s.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 font-mono",children:N.apiKey.length>8?`${N.apiKey.slice(0,4)}••••${N.apiKey.slice(-4)}`:"••••"})]})]},`${N.sourceTool}-${N.name}`)),u.length>0&&s.jsx("div",{className:"text-xs text-muted-foreground space-y-1 border-t pt-2",children:u.map((N,R)=>s.jsxs("div",{className:"flex items-center gap-1",children:[s.jsx(jr,{className:"size-3"}),N]},R))}),g!==null&&s.jsx("div",{className:"text-sm text-green-500 border-t pt-2",children:g}),b!==null&&s.jsx("div",{className:"text-sm text-destructive border-t pt-2",children:b})]}),s.jsxs("div",{className:"flex items-center justify-between pt-3 border-t",children:[s.jsxs(Ce,{variant:"outline",size:"sm",onClick:_,disabled:r,children:[s.jsx(mt,{className:`size-3 mr-1 ${r?"animate-spin":""}`}),"Rescan"]}),s.jsxs(Ce,{size:"sm",onClick:S,disabled:!T||f.size===0||h,children:[s.jsx(po,{className:"size-3 mr-1"}),h?"Importing...":`Import Selected (${f.size})`]})]})]})})}function xm(e){return e.length<=8?"••••••••":e.slice(0,4)+"••••••••"+e.slice(-4)}const bm=Y({id:C().min(1),aliases:pe(C()).optional().default([]),contextWindow:G().int().positive().optional(),outputLimit:G().int().positive().optional(),sourceUrl:C().optional()}),N4=Y({name:C().min(1).optional(),aliases:pe(C()).optional().default([]),baseUrls:pe(C()).optional().default([]),models:pe(bm).min(1)});Y({version:G().int().positive().optional(),updatedAt:C().optional(),providers:pe(N4).optional().default([]),models:pe(bm).optional().default([])});function eu(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function T4(e){const t=e.models.filter(n=>n.trim()!=="");return t.length>0?t:e.model!==void 0&&e.model.trim()!==""?[e.model]:[]}function Sl(e,t){const n=eu(t);return(e.modelMetadata??[]).find(o=>eu(o.model)===n)??null}function E4(e){const t=T4(e);return t.length===0?!1:t.every(n=>{const r=Sl(e,n);return r!==null&&r.contextWindow!==void 0})}function A4(e,t){if(e===null)return null;for(const n of t){const r=Sl(n,e);if(r!==null&&r.contextWindow!==void 0)return{providerName:n.name,model:r.model,tokens:r.contextWindow,sourceUrl:r.sourceUrl}}return null}const R4={deepseek:"https://api-docs.deepseek.com/zh-cn/"};function I4(e){return Object.prototype.hasOwnProperty.call(e,"success")}function z4(e){return Object.prototype.hasOwnProperty.call(e,"notConfigured")}function lt(e){return e!==void 0&&e.trim()!==""}function aa(e){if(e===void 0)return;const t=Object.entries(e).map(([n,r])=>`${n}: ${r}`);if(t.length!==0)return t.join(`
|
|
104
|
+
`)}function tu(e){return aa(e)!==void 0}function nu(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function O4(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function P4(e){const t=e.debug;return lt(e.error?.hint)||lt(e.error?.details)||lt(e.rawResponse)||lt(t?.requestUrl)||lt(t?.requestBody)||lt(t?.responseBody)||tu(t?.requestHeaders)||tu(t?.responseHeaders)||t?.responseStatus!==void 0}function Jt({title:e,children:t}){return s.jsxs("div",{className:"space-y-1",children:[s.jsx("div",{className:"font-medium text-foreground/80",children:e}),t]})}function fr({value:e}){return s.jsx("pre",{className:"max-h-40 overflow-auto whitespace-pre-wrap break-all rounded-md bg-background/80 p-2 font-mono text-[11px] leading-relaxed text-foreground/80",children:e})}function M4({result:e}){const t=e.debug,n=t?.requestUrl,r=t?.requestMethod??"POST",o=aa(t?.requestHeaders),i=aa(t?.responseHeaders),a=t?.responseStatus!==void 0?`${t.responseStatus}${lt(t.responseStatusText)?` ${t.responseStatusText}`:""}`:void 0,l=t?.responseBody??e.rawResponse;return s.jsxs("div",{className:"max-h-80 max-w-full space-y-2 overflow-auto rounded-md border bg-muted/50 p-2 text-xs text-muted-foreground shadow-sm sm:w-[520px]",children:[lt(e.error?.hint)&&s.jsx(Jt,{title:"Hint",children:s.jsx("div",{children:e.error.hint})}),lt(e.error?.details)&&s.jsx(Jt,{title:"Error",children:s.jsx(fr,{value:e.error.details})}),lt(n)&&s.jsx(Jt,{title:"Request",children:s.jsxs("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] break-all text-foreground/80",children:[r," ",n]})}),o!==void 0&&s.jsx(Jt,{title:"Request Headers",children:s.jsx(fr,{value:o})}),lt(t?.requestBody)&&s.jsx(Jt,{title:"Request Body",children:s.jsx(fr,{value:t.requestBody})}),lt(a)&&s.jsx(Jt,{title:"Response Status",children:s.jsx("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] text-foreground/80",children:a})}),i!==void 0&&s.jsx(Jt,{title:"Response Headers",children:s.jsx(fr,{value:i})}),lt(l)&&s.jsx(Jt,{title:"Response Body",children:s.jsx(fr,{value:l})})]})}function fs({results:e}){return s.jsxs("div",{className:"flex min-w-0 flex-col gap-2",children:[s.jsxs("div",{className:"flex min-w-0 flex-col gap-1",children:[s.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Non-stream"}),s.jsx(ru,{result:e.nonStreaming})]}),s.jsxs("div",{className:"flex min-w-0 flex-col gap-1",children:[s.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Stream"}),s.jsx(ru,{result:e.streaming})]})]})}function L4(e){const t={className:"size-3",strokeWidth:2};switch(e){case"timeout":return s.jsx(Bt,{...t});case"network_unreachable":return s.jsx($2,{...t});case"connection_refused":return s.jsx(B2,{...t});case"auth_failed":return s.jsx(t2,{...t});case"rate_limited":return s.jsx(Ma,{...t});case"server_error":return s.jsx(N2,{...t});case"invalid_response":return s.jsx(uy,{...t});case"unknown":return s.jsx(jr,{...t});default:return s.jsx(jr,{...t})}}function ru({result:e}){const[t,n]=p.useState(!1);if(!I4(e))return z4(e)?s.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[s.jsx(s2,{className:"size-3"}),s.jsx("span",{children:"Not configured"})]}):s.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[s.jsx(Ti,{className:"size-3 animate-spin"}),s.jsx("span",{children:"Testing..."})]});if(e.success){const l=[],c=[];e.inputTokens!==void 0&&l.push(s.jsxs("span",{children:[e.inputTokens," in"]},"in")),e.outputTokens!==void 0&&l.push(s.jsxs("span",{children:[e.outputTokens," out"]},"out")),e.cacheCreationInputTokens!==void 0&&e.cacheCreationInputTokens>0&&l.push(s.jsxs("span",{className:"font-mono tabular-nums text-emerald-400",children:["KV Cache +",e.cacheCreationInputTokens]},"cache-create")),e.cacheReadInputTokens!==void 0&&e.cacheReadInputTokens>0&&l.push(s.jsxs("span",{className:"font-mono tabular-nums text-purple-400",children:["KV Cache ~",e.cacheReadInputTokens]},"cache-read")),e.firstChunkMs!==void 0&&e.firstChunkMs!==null&&c.push(s.jsxs("span",{children:["first ",nu(e.firstChunkMs)]},"first")),e.totalStreamMs!==void 0&&e.totalStreamMs!==null&&c.push(s.jsxs("span",{children:["total ",nu(e.totalStreamMs)]},"total")),e.tokensPerSecond!==void 0&&e.tokensPerSecond!==null&&e.tokensPerSecond>0&&c.push(s.jsxs("span",{children:[O4(e.tokensPerSecond)," tok/s"]},"rate"));const u=[];for(let f=0;f<l.length;f++)f>0&&u.push(", "),u.push(l[f]);const d=[];for(let f=0;f<c.length;f++)f>0&&d.push(", "),d.push(c[f]);return s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("div",{className:"flex items-center gap-1 text-xs text-green-600 shrink-0",children:[s.jsx(ay,{className:"size-3"}),s.jsx("span",{children:"Connected"}),l.length>0&&s.jsxs("span",{className:"text-muted-foreground",children:["(",u,")"]}),c.length>0&&s.jsxs("span",{className:"hidden text-muted-foreground lg:inline",children:["(",d,")"]})]})}),s.jsx(Le,{children:"Connection test passed"})]})})}const r=e.error,o=r?.message??"Connection failed",i=r?.type??"unknown",a=P4(e);return s.jsxs("div",{className:"flex flex-col gap-1 shrink-0",children:[s.jsxs("div",{className:"flex items-center gap-1 text-xs text-red-600 max-w-[200px]",children:[L4(i),s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("span",{className:"truncate",children:o})}),s.jsx(Le,{children:"Connection test failed"})]})}),a&&s.jsxs("button",{type:"button",onClick:()=>n(l=>!l),"aria-expanded":t,"aria-label":t?"Hide provider test diagnostics":"Show provider test diagnostics",className:"inline-flex h-5 shrink-0 items-center gap-1 rounded border border-border/70 bg-background/70 px-1.5 text-[10px] text-muted-foreground transition-colors hover:text-foreground",children:[t?s.jsx(Oa,{className:"size-3"}):s.jsx(Pa,{className:"size-3"}),s.jsx("span",{children:t?"Hide":"Details"})]})]}),t&&a&&s.jsx(M4,{result:e})]})}function D4(e){const t=Date.now(),n=new Date(e).getTime(),r=t-n,o=Math.floor(r/1e3);if(o<60)return"just now";const i=Math.floor(o/60);if(i<60)return`${i}m ago`;const a=Math.floor(i/60);return a<24?`${a}h ago`:`${Math.floor(a/24)}d ago`}function $4(e){if(e===void 0||e.trim()==="")return null;try{const t=new URL(e);if(t.protocol!=="https:"&&t.protocol!=="http:")return null;const n=t.hostname.toLowerCase(),r=n==="huggingface.co"||n.endsWith(".huggingface.co");return{label:r?"HF":"Source",title:r?"Open Hugging Face model source":"Open model metadata source",url:e}}catch{return null}}function F4({provider:e,testResults:t,isTesting:n,testingTimeLeft:r,isHighlighted:o,onEdit:i,onDelete:a,onTest:l,onRefreshMetadata:c,isRefreshingMetadata:u=!1}){const[d,f]=p.useState(!1),[m,h]=p.useState(!1),[v,g]=p.useState(!1);function x(){Zt(e.apiKey).then(S=>{S&&(h(!0),setTimeout(()=>h(!1),2e3))})}const b=e.apiDocsUrl??Object.entries(R4).find(([S])=>e.name.toLowerCase().includes(S))?.[1],y=E4(e),_=e.modelMetadataUrl!==void 0&&e.modelMetadataUrl.trim()!=="",j=_?"Refresh":"Import defaults";return s.jsxs("div",{className:`border border-border bg-card shadow-sm flex flex-col gap-3 rounded-[8px] p-4 transition-all duration-500 ${o===!0?"ring-2 ring-primary shadow-md":""}`,children:[s.jsxs("div",{className:"flex items-start justify-between gap-2",children:[s.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[s.jsx("span",{className:"font-medium truncate",children:e.name}),e.source==="company"&&s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400 shrink-0",children:"公司"})}),s.jsx(Le,{children:"Company-provided API key"})]})}),e.source==="personal"&&s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400 shrink-0",children:"个人"})}),s.jsx(Le,{children:"Your personal API key"})]})})]}),b!==void 0&&s.jsxs("a",{href:b,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1 text-xs",title:"View API documentation",children:[s.jsx(za,{className:"size-3"}),s.jsx("span",{className:"sr-only",children:"Docs"})]})]}),e.models!==void 0&&e.models.length>0&&s.jsx("div",{className:"flex flex-wrap gap-1",children:e.models.map(S=>{const T=Sl(e,S),N=$4(T?.sourceUrl);return s.jsxs("span",{className:"inline-flex items-center gap-1 text-xs px-1.5 py-0.5 rounded bg-muted text-muted-foreground",children:[s.jsx("span",{children:S}),T!==null&&T.contextWindow!==void 0&&s.jsx("span",{className:"font-mono text-foreground/80",children:ff(T.contextWindow)}),N!==null&&s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("a",{href:N.url,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-0.5 rounded border border-border/70 bg-background/70 px-1 font-mono text-[10px] leading-4 text-muted-foreground transition-colors hover:text-foreground","aria-label":N.title,children:N.label})}),s.jsx(Le,{children:N.title})]})})]},S)})}),!y&&s.jsxs("div",{className:"flex items-center justify-between gap-2 rounded-md border border-amber-500/25 bg-amber-500/6 px-2 py-1.5 text-xs text-muted-foreground",children:[s.jsx("span",{children:"Context window metadata missing"}),s.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[s.jsxs(Ce,{type:"button",variant:"outline",size:"sm",onClick:()=>c?.(e.id),className:"h-6 gap-1 px-2 text-xs",disabled:u,children:[s.jsx(Ti,{className:`size-3 ${u?"animate-spin":""}`}),j]}),!_&&s.jsx(Ce,{type:"button",variant:"ghost",size:"sm",onClick:()=>i(e),className:"h-6 px-2 text-xs",children:"Set URL"})]})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("code",{className:"text-xs text-muted-foreground bg-muted px-2 py-1 rounded flex-1 truncate",children:d?e.apiKey:xm(e.apiKey)}),s.jsx("button",{type:"button",onClick:()=>f(S=>!S),className:"text-muted-foreground hover:text-foreground transition-colors p-1","aria-label":d?"Hide API key":"Show API key",children:d?s.jsx(Oa,{className:"size-4"}):s.jsx(Pa,{className:"size-4"})}),s.jsx("button",{type:"button",onClick:x,className:"text-muted-foreground hover:text-foreground transition-colors p-1","aria-label":"Copy API key",children:m?s.jsx(Ke,{className:"size-4 text-green-500"}):s.jsx(Ct,{className:"size-4"})})]}),e.anthropicBaseUrl!==void 0&&e.anthropicBaseUrl!==""&&s.jsxs("div",{className:"flex min-w-0 flex-col gap-2",children:[s.jsxs("div",{className:"min-w-0 text-xs text-muted-foreground",children:[s.jsx("span",{className:"font-medium",children:"Anthropic:"})," ",s.jsx("span",{className:"truncate",children:e.anthropicBaseUrl})]}),t!==void 0&&s.jsx(fs,{results:t.anthropic})]}),e.openaiBaseUrl!==void 0&&e.openaiBaseUrl!==""&&s.jsxs("div",{className:"flex min-w-0 flex-col gap-2",children:[s.jsxs("div",{className:"min-w-0 text-xs text-muted-foreground",children:[s.jsx("span",{className:"font-medium",children:"OpenAI Chat:"})," ",s.jsx("span",{className:"truncate",children:e.openaiBaseUrl})]}),t!==void 0&&s.jsx(fs,{results:t.openai})]}),e.openaiResponsesBaseUrl!==void 0&&e.openaiResponsesBaseUrl!==""&&s.jsx("div",{className:"flex min-w-0 flex-col gap-2",children:s.jsxs("div",{className:"min-w-0 text-xs text-muted-foreground",children:[s.jsx("span",{className:"font-medium",children:"OpenAI Responses:"})," ",s.jsx("span",{className:"truncate",children:e.openaiResponsesBaseUrl})]})}),t?.testedAt!==void 0&&s.jsxs("div",{className:"text-xs text-muted-foreground flex items-center gap-1",children:[s.jsx(Bt,{className:"size-3"}),s.jsxs("span",{children:["Tested ",D4(t.testedAt)]})]}),t?.models!==void 0&&Object.keys(t.models).length>0&&s.jsxs("div",{className:"border-t pt-2",children:[s.jsxs("button",{type:"button",onClick:()=>g(S=>!S),className:"text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1",children:[v?s.jsx(ot,{className:"size-3"}):s.jsx(xt,{className:"size-3"}),"Model Test Results (",Object.keys(t.models).length,")"]}),v&&s.jsx("div",{className:"mt-2 overflow-x-auto",children:s.jsxs("table",{className:"w-full text-xs border-collapse",children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-border",children:[s.jsx("th",{className:"text-left py-1 px-2 font-medium text-muted-foreground",children:"Model"}),e.anthropicBaseUrl!==void 0&&e.anthropicBaseUrl!==""&&s.jsx("th",{className:"text-left py-1 px-2 font-medium text-muted-foreground",children:"Anthropic"}),e.openaiBaseUrl!==void 0&&e.openaiBaseUrl!==""&&s.jsx("th",{className:"text-left py-1 px-2 font-medium text-muted-foreground",children:"OpenAI"})]})}),s.jsx("tbody",{children:Object.entries(t.models).map(([S,T])=>s.jsxs("tr",{className:"border-b border-border/50 last:border-0",children:[s.jsx("td",{className:"py-1 px-2 font-medium",children:S}),e.anthropicBaseUrl!==void 0&&e.anthropicBaseUrl!==""&&s.jsx("td",{className:"py-1 px-2 align-top",children:s.jsx(fs,{results:T.anthropic})}),e.openaiBaseUrl!==void 0&&e.openaiBaseUrl!==""&&s.jsx("td",{className:"py-1 px-2 align-top",children:s.jsx(fs,{results:T.openai})})]},S))})]})})]}),s.jsxs("div",{className:"flex gap-2 pt-1 border-t",children:[l!==void 0&&s.jsxs(Ce,{variant:"outline",size:"sm",onClick:()=>l(e.id),className:"text-xs h-7 gap-1",disabled:n??!1,children:[s.jsx(Ti,{className:`size-3 ${n??!1?"animate-spin":""}`}),n??!1?r!==void 0?`Testing (${r}s)`:"Testing...":"Test"]}),s.jsxs(Ce,{variant:"outline",size:"sm",onClick:()=>i(e),className:"text-xs h-7 gap-1",disabled:n??!1,children:[s.jsx(qd,{className:"size-3"}),"Edit"]}),s.jsxs(Ce,{variant:"outline",size:"sm",onClick:()=>a(e.id),className:"text-xs h-7 gap-1 text-destructive hover:text-destructive",disabled:n??!1,children:[s.jsx(Kn,{className:"size-3"}),"Delete"]})]})]})}const ui="/v1/chat/completions";function B4(e,t){const n=e.endsWith("/")?e.slice(0,-1):e,r=t.split("?")[0]??t,o=t.indexOf("?"),i=o>=0?t.slice(o):"";return r!==""&&n.endsWith(r)?n+i:W4(n)&&U4(t)||n.endsWith("/v1")&&t.startsWith("/v1/")?n+t.slice(3):n+t}function U4(e){return e===ui||e.startsWith(`${ui}?`)||e.startsWith(`${ui}/`)}function W4(e){try{const t=new URL(e),n=t.pathname.replace(/\/+$/,"");return t.hostname==="open.bigmodel.cn"&&(n==="/api/paas/v4"||n==="/api/coding/paas/v4")}catch{return!1}}const su=["zhipu","zhipuai","bigmodel","z.ai","zai","glm"],ou=["zhipu coding","glm coding","bigmodel coding","z.ai coding","zai coding"],ps="/v1/messages",hs="/v1/chat/completions",ms="/v1/responses",H4={deepseek:{openaiBaseUrl:"https://api.deepseek.com"},minimax:{anthropicBaseUrl:"https://api.minimaxi.com/anthropic",openaiBaseUrl:"https://api.minimaxi.com",openaiResponsesBaseUrl:"https://api.minimaxi.com",apiDocsUrl:"https://platform.minimaxi.com/docs/api-reference/api-overview"},"zhipu coding":{anthropicBaseUrl:"https://open.bigmodel.cn/api/anthropic",openaiBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/coding-plan/quick-start"},"glm coding":{anthropicBaseUrl:"https://open.bigmodel.cn/api/anthropic",openaiBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/coding-plan/quick-start"},"bigmodel coding":{anthropicBaseUrl:"https://open.bigmodel.cn/api/anthropic",openaiBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/coding-plan/quick-start"},"z.ai coding":{anthropicBaseUrl:"https://open.bigmodel.cn/api/anthropic",openaiBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/coding-plan/quick-start"},"zai coding":{anthropicBaseUrl:"https://open.bigmodel.cn/api/anthropic",openaiBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/coding-plan/quick-start"},zhipu:{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},zhipuai:{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},bigmodel:{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},"z.ai":{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},zai:{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},glm:{openaiBaseUrl:"https://open.bigmodel.cn/api/paas/v4",apiDocsUrl:"https://docs.bigmodel.cn/cn/guide/develop/openai/introduction"},alibaba:{openaiBaseUrl:"https://dashscope.aliyuncs.com/compatible-mode"}},iu=["MiniMax M3","MiniMax M2.7","MiniMax M2.7-highspeed","MiniMax M2.5","MiniMax M2.5-highspeed","MiniMax M2.1","MiniMax M2.1-highspeed","MiniMax M2"],au=["qwen3.6-plus","qwen3.7-max"],lu=["glm-5.2","glm-5.1","glm-5","glm-5-turbo","glm-4.7","glm-4.7-flashx","glm-4.6","glm-4.5","glm-4.5-air","glm-4.5-x","glm-4.5-airx","glm-4.5-flash"],la="__unset__",to="__custom__",vm=[{value:"32K",label:"Small"},{value:"64K",label:"Standard"},{value:"128K",label:"Medium"},{value:"200K",label:"Long"},{value:"256K",label:"Extended"},{value:"512K",label:"Large"},{value:"1M",label:"Max"}];function gn(){return{contextWindow:"",contextWindowMode:"unset",outputLimit:""}}function cu(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function ym(e,t){const n=cu(t);return e?.modelMetadata?.find(r=>cu(r.model)===n)??null}function wm(e){const t=Ps(e);if(t===null)return null;for(const n of vm)if(Ps(n.value)===t)return n.value;return null}function Z4(e){return e.trim()===""?"unset":wm(e)!==null?"preset":"custom"}function V4(e){switch(e.contextWindowMode){case"unset":return la;case"custom":return to;case"preset":return wm(e.contextWindow)??to}}function di(e){const t=e.trim().replaceAll(",","");if(t==="")return{amount:"",unit:"K"};const n=/^(\d+(?:\.\d+)?)\s*([kKmM])?$/.exec(t);if(n===null)return{amount:t,unit:"K"};const r=n[1];if(r===void 0)return{amount:t,unit:"K"};const o=n[2];if(o===void 0||o==="")return{amount:r,unit:"tokens"};switch(o.toLowerCase()){case"k":return{amount:r,unit:"K"};case"m":return{amount:r,unit:"M"};default:return{amount:t,unit:"K"}}}function uu(e,t){const n=e.trim();if(n==="")return"";switch(t){case"K":return`${n}K`;case"M":return`${n}M`;case"tokens":return n}}function du(e,t){return t.map(n=>{const r=ym(e,n),o=r?.contextWindow!==void 0?nk(r.contextWindow):"";return{contextWindow:o,contextWindowMode:Z4(o),outputLimit:r?.outputLimit?.toString()??""}})}function fu(e){const t=e.trim();if(t==="")return null;const n=Number(t);return!Number.isInteger(n)||n<=0?null:n}function Mn(e,t){if(e===void 0)return"";const n=e.trim(),r=n.replace(/\/+$/,"");return r.endsWith(t)?r.slice(0,-t.length).replace(/\/+$/,""):n}function q4(e,t){const n=e.trim();return n===""?null:B4(n,t)}function fi({baseUrl:e,endpoint:t}){const n=q4(e,t);return n===null?null:s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2 text-xs",children:[s.jsx("div",{className:"text-muted-foreground",children:"Final URL"}),s.jsx("div",{className:"break-all font-mono text-foreground",children:n})]})}function K4({provider:e,onSubmit:t,onCancel:n}){const[r,o]=p.useState(e?.name??""),[i,a]=p.useState(e?.apiKey??""),[l,c]=p.useState(!1),[u,d]=p.useState(!1),f=e?.models,[m,h]=p.useState(f!==void 0&&f.length>0?f:[""]),[v,g]=p.useState(()=>du(e,f!==void 0&&f.length>0?f:[""])),[x,b]=p.useState("anthropic"),[y,_]=p.useState(Mn(e?.anthropicBaseUrl,ps)),[j,S]=p.useState(Mn(e?.openaiBaseUrl,hs)),[T,N]=p.useState(Mn(e?.openaiResponsesBaseUrl,ms)),[R,I]=p.useState(e?.apiDocsUrl??""),[O,K]=p.useState(e?.modelMetadataUrl??""),[A,$]=p.useState(e?.source),[k,Z]=p.useState({}),[V,U]=p.useState(!1),[L,W]=p.useState(null),ne=p.useRef([]);p.useEffect(()=>{if(L===null)return;const P=L;function M(X){if(!(X.target instanceof Node))return;const de=ne.current[P];de!=null&&!de.contains(X.target)&&W(null)}return document.addEventListener("mousedown",M),()=>document.removeEventListener("mousedown",M)},[L]);const[B,F]=p.useState(!1),[ue,se]=p.useState(!1),[oe,_e]=p.useState(!1),ae=r.toLowerCase().includes("minimax"),ge=r.toLowerCase().includes("alibaba"),xe=[...su,...ou].some(P=>r.toLowerCase().includes(P)),be=ae?iu:xe?lu:ge?au:[],te=e?.modelMetadata?.some(P=>P.contextWindow!==void 0)??!1;function le(){Zt(i).then(P=>{P&&(d(!0),setTimeout(()=>d(!1),2e3))})}p.useEffect(()=>{if(e){o(e.name),a(e.apiKey);const P=(e.models?.length??0)>0?e.models:[""];h(P),g(du(e,P)),_(Mn(e.anthropicBaseUrl,ps)),S(Mn(e.openaiBaseUrl,hs)),N(Mn(e.openaiResponsesBaseUrl,ms)),I(e.apiDocsUrl??""),K(e.modelMetadataUrl??""),$(e.source),F(!1),se(!1),_e(!1)}},[e]),p.useEffect(()=>{const P=r.toLowerCase();for(const[M,X]of Object.entries(H4))if(P.includes(M)){X.anthropicBaseUrl!==void 0&&!B&&_(X.anthropicBaseUrl),X.openaiBaseUrl!==void 0&&!ue&&S(X.openaiBaseUrl),X.openaiResponsesBaseUrl!==void 0&&!oe&&N(X.openaiResponsesBaseUrl),X.apiDocsUrl!==void 0&&!R&&I(X.apiDocsUrl),M==="minimax"&&m.length===1&&m[0]===""&&h([iu[0]??""]),M==="alibaba"&&m.length===1&&m[0]===""&&h([au[0]??""]),(su.includes(M)||ou.includes(M))&&m.length===1&&m[0]===""&&h([lu[0]??""]);break}},[r]);function me(){const P={};return r.trim()||(P.name="Name is required"),i.trim()||(P.apiKey="API key is required"),(m.length===0||m.every(M=>!M.trim()))&&(P.models="At least one model is required"),y.trim()&&!w(y.trim())&&(P.anthropicBaseUrl="Invalid URL format"),j.trim()&&!w(j.trim())&&(P.openaiBaseUrl="Invalid URL format"),T.trim()&&!w(T.trim())&&(P.openaiResponsesBaseUrl="Invalid URL format"),O.trim()&&!w(O.trim())&&(P.modelMetadataUrl="Invalid URL format"),v.forEach((M,X)=>{const de=Ps(M.contextWindow),fe=fu(M.outputLimit);M.contextWindow.trim()!==""&&de===null&&(P[`modelMetadata.${X}.contextWindow`]="Context window must be a positive number, optionally using K or M"),M.outputLimit.trim()!==""&&fe===null&&(P[`modelMetadata.${X}.outputLimit`]="Output limit must be a positive integer"),de!==null&&fe!==null&&fe>de&&(P[`modelMetadata.${X}.outputLimit`]="Output limit should not exceed context window")}),!y.trim()&&!j.trim()&&!T.trim()&&(P.format="At least one format URL (Anthropic or OpenAI) is required"),Z(P),Object.keys(P).length===0}function w(P){try{return new URL(P),!0}catch{return!1}}function J(P,M){h(X=>{const de=[...X];return de[P]=M,de})}function H(P,M){g(X=>{const de=[...X];return de[P]={...de[P]??gn(),...M},de})}function z(P,M){switch(M){case la:H(P,{contextWindow:"",contextWindowMode:"unset"});return;case to:{const X=v[P]??gn();H(P,{contextWindow:X.contextWindow,contextWindowMode:"custom"});return}default:H(P,{contextWindow:M,contextWindowMode:"preset"});return}}function E(P,M){const X=v[P]??gn(),de=di(X.contextWindow);H(P,{contextWindow:uu(M,de.unit),contextWindowMode:"custom"})}function D(P,M){const X=v[P]??gn(),de=di(X.contextWindow);switch(M){case"K":case"M":case"tokens":H(P,{contextWindow:uu(de.amount,M),contextWindowMode:"custom"});return;default:return}}function ee(P){h(M=>M.filter((X,de)=>de!==P)),g(M=>M.filter((X,de)=>de!==P))}function re(){h(P=>[...P,""]),g(P=>[...P,gn()])}function q(){const P=new Date().toISOString(),M=[];return m.forEach((X,de)=>{const fe=X.trim();if(fe==="")return;const ze=v[de]??gn(),Se=Ps(ze.contextWindow),Ne=fu(ze.outputLimit);if(Se===null&&Ne===null)return;const Je=ym(e,fe);if(Je!==null&&Je.contextWindow===(Se??void 0)&&Je.outputLimit===(Ne??void 0)){M.push({...Je,model:fe});return}const Be={model:fe,source:"manual",updatedAt:P};Se!==null&&(Be.contextWindow=Se),Ne!==null&&(Be.outputLimit=Ne),M.push(Be)}),M.length>0?M:e?.modelMetadata!==void 0?[]:void 0}function ie(P){if(P.preventDefault(),!!me()){U(!0);try{t({name:r.trim(),apiKey:i.trim(),models:m.map(M=>M.trim()).filter(M=>M!==""),anthropicBaseUrl:y.trim()||void 0,openaiBaseUrl:j.trim()||void 0,openaiResponsesBaseUrl:T.trim()||void 0,apiDocsUrl:R.trim()||void 0,modelMetadataUrl:O.trim()||void 0,modelMetadata:q(),source:A})}finally{U(!1)}}}return s.jsxs("form",{onSubmit:ie,className:"space-y-4",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs("label",{htmlFor:"provider-name",className:"text-sm font-medium",children:["Name ",s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsx("input",{id:"provider-name",type:"text",value:r,onChange:P=>o(P.target.value),placeholder:"Provider Name",className:"w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50"}),k.name!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.name})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-source",className:"text-sm font-medium",children:"Token Source"}),s.jsxs("select",{id:"provider-source",value:A??"",onChange:P=>$(P.target.value==="company"||P.target.value==="personal"?P.target.value:void 0),className:"w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",children:[s.jsx("option",{value:"",children:"Unspecified"}),s.jsx("option",{value:"personal",children:"个人 (Personal)"}),s.jsx("option",{value:"company",children:"公司 (Company)"})]}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Label whether this API key is company-provided or personal."})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-model-metadata-url",className:"text-sm font-medium",children:"Model Metadata URL"}),s.jsx("input",{id:"provider-model-metadata-url",type:"text",value:O,onChange:P=>K(P.target.value),placeholder:"https://example.com/agent-inspector-models.json",className:"w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50"}),k.modelMetadataUrl!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.modelMetadataUrl}),O.trim()===""&&s.jsx("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2 text-xs text-muted-foreground",children:"Built-in limits cover DeepSeek v4 pro/flash, MiniMax M3/M2.7/M2.5/M2.1, and GLM coding models. Use a registry URL for private or custom model limits."}),e!==void 0&&!te&&O.trim()===""&&s.jsx("p",{className:"text-xs text-amber-400",children:"This provider has no matching context metadata yet."}),O.trim()!==""&&s.jsx("p",{className:"text-xs text-muted-foreground",children:"Agent Inspector will refresh model limits from this JSON registry after save."})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs("label",{htmlFor:"provider-apikey",className:"text-sm font-medium",children:["API Key ",s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("input",{id:"provider-apikey",type:"text",value:l||i.length===0?i:xm(i),onChange:P=>a(P.target.value),onFocus:()=>{!l&&i.length>0&&c(!0)},placeholder:"sk-ant-...",readOnly:!l&&i.length>0,className:"flex-1 rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("button",{type:"button",onClick:()=>c(P=>!P),className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":l?"Hide API key":"Show API key",children:l?s.jsx(Oa,{className:"size-4"}):s.jsx(Pa,{className:"size-4"})}),s.jsx("button",{type:"button",onClick:le,className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":"Copy API key",children:u?s.jsx(Ke,{className:"size-4 text-green-500"}):s.jsx(Ct,{className:"size-4"})})]}),k.apiKey!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.apiKey})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs("label",{className:"text-sm font-medium",children:["Models ",s.jsx("span",{className:"text-destructive",children:"*"})]}),m.map((P,M)=>{const X=v[M]??gn(),de=k[`modelMetadata.${M}.contextWindow`],fe=k[`modelMetadata.${M}.outputLimit`],ze=V4(X),Se=di(X.contextWindow);return s.jsxs("div",{ref:Ne=>{ne.current[M]=Ne},className:"border border-border bg-card shadow-sm space-y-2 rounded-[8px] p-2",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"relative flex-1",children:[s.jsx("input",{type:"text",value:P,onChange:Ne=>J(M,Ne.target.value),placeholder:be.length>0?"Type or select a model...":"Model name",className:"w-full rounded-md border border-input bg-background px-4 py-3 pr-8 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50"}),be.length>0&&s.jsxs(s.Fragment,{children:[s.jsx("button",{type:"button",onClick:()=>W(L===M?null:M),className:"absolute right-1 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors p-1 z-10","aria-label":"Show model suggestions",children:s.jsx(ot,{className:"size-4"})}),L===M&&s.jsx("div",{className:"bg-popover text-popover-foreground absolute left-0 right-0 top-full z-50 mt-1 max-h-48 overflow-y-auto rounded-md border shadow-md",children:be.map(Ne=>s.jsx("button",{type:"button",onClick:()=>{J(M,Ne),W(null)},className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-white/[0.06]",children:Ne},Ne))})]})]}),m.length>1&&s.jsx("button",{type:"button",onClick:()=>ee(M),className:"text-muted-foreground hover:text-destructive transition-colors p-1 shrink-0","aria-label":"Remove model",children:s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[s.jsx("path",{d:"M3 6h18"}),s.jsx("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),s.jsx("path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"})]})})]}),s.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[s.jsxs("div",{className:"space-y-1 text-xs text-muted-foreground",children:[s.jsx("span",{children:"Context Window"}),s.jsxs(Ys,{value:ze,onValueChange:Ne=>z(M,Ne),children:[s.jsx(Qs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:s.jsx(Xs,{})}),s.jsxs(eo,{className:"max-h-64",children:[s.jsx(Tt,{value:la,children:"Not set"}),vm.map(Ne=>s.jsxs(Tt,{value:Ne.value,children:[Ne.label," · ",Ne.value]},Ne.value)),s.jsx(Tt,{value:to,children:"Custom"})]})]}),X.contextWindowMode==="custom"&&s.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_5.75rem] gap-1.5",children:[s.jsx("input",{type:"text",inputMode:"decimal",value:Se.amount,onChange:Ne=>E(M,Ne.target.value),placeholder:"128",className:"w-full rounded-md border border-input bg-background px-3 py-2 font-mono text-xs text-foreground ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px]"}),s.jsxs(Ys,{value:Se.unit,onValueChange:Ne=>D(M,Ne),children:[s.jsx(Qs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:s.jsx(Xs,{})}),s.jsxs(eo,{children:[s.jsx(Tt,{value:"K",children:"K"}),s.jsx(Tt,{value:"M",children:"M"}),s.jsx(Tt,{value:"tokens",children:"tokens"})]})]})]}),de!==void 0&&s.jsx("span",{className:"block text-destructive",children:de})]}),s.jsxs("label",{className:"space-y-1 text-xs text-muted-foreground",children:[s.jsx("span",{children:"Output Limit"}),s.jsx("input",{type:"number",min:1,step:1e3,value:X.outputLimit,onChange:Ne=>H(M,{outputLimit:Ne.target.value}),placeholder:"e.g. 8192",className:"w-full rounded-md border border-input bg-background px-3 py-2 font-mono text-xs text-foreground ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px]"}),fe!==void 0&&s.jsx("span",{className:"block text-destructive",children:fe})]})]})]},M)}),s.jsx("button",{type:"button",onClick:re,className:"text-xs text-primary hover:underline flex items-center gap-1",children:"+ Add Model"}),k.models!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.models})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"border border-border bg-muted/40 flex gap-1 rounded-[8px] p-1",children:[s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>b("anthropic"),className:`px-3 py-2 text-sm font-medium border-b-2 transition-colors ${x==="anthropic"?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground"}`,children:"Anthropic Format"})}),s.jsx(Le,{children:"Anthropic Messages API format"})]})}),s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>b("openai"),className:`px-3 py-2 text-sm font-medium border-b-2 transition-colors ${x==="openai"?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground"}`,children:"OpenAI Format"})}),s.jsx(Le,{children:"OpenAI Chat Completions API format"})]})})]}),k.format!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.format})]}),x==="anthropic"&&s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-anthropic-base-url",className:"text-sm font-medium",children:"Anthropic Base URL"}),s.jsxs("div",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground flex min-w-0 overflow-hidden rounded-md focus-within:border-ring focus-within:outline-ring focus-within:ring-[3px]",children:[s.jsx("input",{id:"provider-anthropic-base-url",type:"text",value:y,onChange:P=>{F(!0),_(P.target.value)},placeholder:"https://api.anthropic.com",className:"min-w-0 flex-1 bg-transparent px-3 py-2 text-sm placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"shrink-0 select-none border-l border-white/10 bg-white/[0.04] px-3 py-2 font-mono text-xs text-muted-foreground",children:ps})]}),k.anthropicBaseUrl!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.anthropicBaseUrl}),s.jsx(fi,{baseUrl:y,endpoint:ps}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Anthropic-compatible base URL. Leave empty if this provider does not support Anthropic format."})]}),x==="openai"&&s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-openai-base-url",className:"text-sm font-medium",children:"OpenAI Chat Base URL"}),s.jsxs("div",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground flex min-w-0 overflow-hidden rounded-md focus-within:border-ring focus-within:outline-ring focus-within:ring-[3px]",children:[s.jsx("input",{id:"provider-openai-base-url",type:"text",value:j,onChange:P=>{se(!0),S(P.target.value)},placeholder:"https://api.openai.com",className:"min-w-0 flex-1 bg-transparent px-3 py-2 text-sm placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"shrink-0 select-none border-l border-white/10 bg-white/[0.04] px-3 py-2 font-mono text-xs text-muted-foreground",children:hs})]}),k.openaiBaseUrl!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.openaiBaseUrl}),s.jsx(fi,{baseUrl:j,endpoint:hs}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"OpenAI Chat Completions-compatible base URL. Leave empty if this provider only supports the Responses API."})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-openai-responses-base-url",className:"text-sm font-medium",children:"OpenAI Responses Base URL"}),s.jsxs("div",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground flex min-w-0 overflow-hidden rounded-md focus-within:border-ring focus-within:outline-ring focus-within:ring-[3px]",children:[s.jsx("input",{id:"provider-openai-responses-base-url",type:"text",value:T,onChange:P=>{_e(!0),N(P.target.value)},placeholder:"https://api.openai.com",className:"min-w-0 flex-1 bg-transparent px-3 py-2 text-sm placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"shrink-0 select-none border-l border-white/10 bg-white/[0.04] px-3 py-2 font-mono text-xs text-muted-foreground",children:ms})]}),k.openaiResponsesBaseUrl!==void 0&&s.jsx("p",{className:"text-xs text-destructive",children:k.openaiResponsesBaseUrl}),s.jsx(fi,{baseUrl:T,endpoint:ms}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional Responses-compatible base URL. Set only when the provider supports the Responses API."})]})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("label",{htmlFor:"provider-api-docs-url",className:"text-sm font-medium",children:"API Docs URL"}),s.jsx("input",{id:"provider-api-docs-url",type:"text",value:R,onChange:P=>I(P.target.value),placeholder:"https://api.example.com/docs",className:"w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional API documentation URL. If not set, uses known provider docs."})]}),s.jsxs("div",{className:"border border-border bg-background/95 shadow-sm sticky bottom-0 flex justify-end gap-2 rounded-[8px] px-3 py-2",children:[s.jsx(Ce,{type:"button",variant:"outline",onClick:n,disabled:V,children:"Cancel"}),s.jsx(Ce,{type:"submit",disabled:V,children:V?"Saving...":e?"Update Provider":"Add Provider"})]})]})}const G4=Ee(["timeout","network_unreachable","connection_refused","auth_failed","rate_limited","server_error","invalid_response","unknown"]),J4=Y({message:C(),type:G4,details:C().optional(),hint:C().optional()}),Y4=Y({type:Ee(["text","thinking"]),text:C().optional(),thinking:C().optional()}),X4=Y({requestUrl:C().optional(),requestMethod:C().optional(),requestHeaders:qe(C(),C()).optional(),requestBody:C().optional(),responseStatus:G().optional(),responseStatusText:C().optional(),responseHeaders:qe(C(),C()).optional(),responseBody:C().optional()}),Q4=Y({success:De(),error:J4.optional(),model:C().optional(),inputTokens:G().optional(),outputTokens:G().optional(),cacheCreationInputTokens:G().optional(),cacheReadInputTokens:G().optional(),latencyMs:G().optional(),firstChunkMs:G().nullable().optional(),totalStreamMs:G().nullable().optional(),tokensPerSecond:G().nullable().optional(),content:pe(Y4).optional(),rawResponse:C().optional(),streaming:De().optional(),streamingChunks:Y({chunks:pe(yd),truncated:De().default(!1)}).optional(),requestHeaders:qe(C(),C()).optional(),debug:X4.optional()}),pu=Ot([Q4,Y({notConfigured:Te(!0)}),Y({testing:Te(!0)})]),no=Y({nonStreaming:pu,streaming:pu}),eA=Y({anthropic:no,openai:no}),tA=Y({anthropic:no,openai:no,models:qe(C(),eA).optional(),testedAt:C().optional()});function nA(){return{anthropic:{nonStreaming:{testing:!0},streaming:{testing:!0}},openai:{nonStreaming:{testing:!0},streaming:{testing:!0}}}}function hu(e,t){const n=()=>({nonStreaming:{success:!1,error:{message:e,type:t}},streaming:{notConfigured:!0}});return{anthropic:n(),openai:n()}}const rA=Y({providerConfig:C()}),sA=Y({success:De().optional(),imported:G().optional(),message:C().optional(),errors:pe(C()).optional()}),oA=Y({provider:Ms,imported:G(),matchedModels:pe(C()),missingModels:pe(C()),sourceUrl:C()}),gs="Network error: could not reach the server. Is the proxy running?";function mu(e){return{name:e.name,apiKey:e.apiKey,models:e.models,anthropicBaseUrl:(e.anthropicBaseUrl?.length??0)>0?e.anthropicBaseUrl:void 0,openaiBaseUrl:(e.openaiBaseUrl?.length??0)>0?e.openaiBaseUrl:void 0,openaiResponsesBaseUrl:(e.openaiResponsesBaseUrl?.length??0)>0?e.openaiResponsesBaseUrl:void 0,apiDocsUrl:(e.apiDocsUrl?.length??0)>0?e.apiDocsUrl:void 0,modelMetadataUrl:(e.modelMetadataUrl?.length??0)>0?e.modelMetadataUrl:void 0,modelMetadata:e.modelMetadata,source:e.source}}function iA(e,t){const n=e?.models?.map(r=>r.trim()).filter(r=>r!=="").length??0;return Math.max(1,n)*t}async function aA(e,t){if(t.models!==void 0)try{await fetch(`/api/providers/${e}/test/log`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch{}}function lA({externalProviders:e,isLoading:t=!1,externalTestResults:n,externalTestingProviders:r,externalTestingTimeLeft:o,onProvidersMutate:i,onTestResultsChange:a,onTestingProvidersChange:l,onTestingTimeLeftChange:c}){const[u,d]=p.useState(!1),[f,m]=p.useState(),[h,v]=p.useState(null),[g,x]=p.useState({}),[b,y]=p.useState(new Set),[_,j]=p.useState({}),[S,T]=p.useState(null),[N,R]=p.useState(!1),[I,O]=p.useState(null),[K,A]=p.useState(!1),[$,k]=p.useState(!1),[Z,V]=p.useState(null),[U,L]=p.useState("all"),[W,ne]=p.useState(new Set),{providerTestTimeoutSeconds:B}=Ra(),F=p.useRef(null),ue=p.useRef(null),se=e??[],oe=p.useMemo(()=>{const P=U==="all"?se:se.filter(M=>M.source===U);return U==="all"?[...P].sort((M,X)=>{const de={personal:0,company:1};return(de[M.source??""]??2)-(de[X.source??""]??2)}):P},[se,U]),_e=n??g,ae=r??b,ge=o??_,xe=c?(P,M)=>c(P,M):(P,M)=>{j(M===void 0?X=>{const de={...X};return delete de[P],de}:X=>({...X,[P]:M}))};p.useEffect(()=>{(async()=>{try{const P=await fetch("/api/config/paths");if(P.ok){const M=await _t(P,rA);T(M.providerConfig)}}catch{}})()},[]);const be=p.useCallback(P=>{ue.current!==null&&clearTimeout(ue.current),O(P),F.current?.scrollTo({top:F.current.scrollHeight,behavior:"smooth"}),ue.current=setTimeout(()=>{O(null),ue.current=null},2e3)},[]);p.useEffect(()=>()=>{ue.current!==null&&clearTimeout(ue.current)},[]);const te=p.useCallback(()=>{i?.().catch(()=>{})},[i]),le=p.useCallback((P,M)=>{a?a(P,M):x(X=>({...X,[P]:M}))},[a]),me=p.useCallback((P,M)=>{if(l){l(P,M);return}y(X=>{const de=new Set(X);return M?de.add(P):de.delete(P),de})},[l]),w=p.useCallback(async P=>{le(P,nA()),me(P,!0);const M=new AbortController,X=se.find(Se=>Se.id===P);let fe=iA(X,B);xe(P,fe);const ze=setInterval(()=>{fe--,xe(P,fe),fe<=0&&(clearInterval(ze),M.abort())},1e3);try{const Se=await fetch(`/api/providers/${P}/test`,{method:"POST",signal:M.signal});if(Se.ok){const Ne=await _t(Se,tA);le(P,Ne),await aA(P,Ne)}else le(P,hu(`HTTP ${Se.status}: ${Se.statusText}`,"server_error"))}catch(Se){Se instanceof Error&&Se.name==="AbortError"&&le(P,hu("Request timed out","timeout"))}finally{clearInterval(ze),xe(P,void 0),me(P,!1)}},[B,se,xe,le,me]),J=p.useCallback(async(P,M,X=!0)=>{ne(de=>{const fe=new Set(de);return fe.add(P),fe});try{const de=M!==void 0&&M.trim()!==""?{url:M}:{},fe=await fetch(`/api/providers/${P}/model-metadata`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(de)});if(!fe.ok)return X&&v(await Ft(fe,"Failed to refresh model metadata")),!1;const ze=await _t(fe,oA);return ze.imported===0&&X?v("No matching model metadata found for this provider."):v(null),be(ze.provider.id),te(),ze.imported>0}catch{return X&&v(gs),!1}finally{ne(de=>{const fe=new Set(de);return fe.delete(P),fe})}},[te,be]);function H(P){(async()=>{try{const M=await fetch("/api/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(mu(P))});if(!M.ok){v(await Ft(M,"Failed to add provider"));return}const X=await _t(M,Ms);d(!1),be(X.id),P.modelMetadataUrl!==void 0&&P.modelMetadataUrl.trim()!==""&&await J(X.id,P.modelMetadataUrl,!1),te(),await w(X.id)}catch{v(gs)}})()}function z(P){f&&(async()=>{try{const M=await fetch(`/api/providers/${f.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(mu(P))});if(!M.ok){v(await Ft(M,"Failed to update provider"));return}const X=await _t(M,Ms);m(void 0),be(X.id),P.modelMetadataUrl!==void 0&&P.modelMetadataUrl.trim()!==""&&await J(X.id,P.modelMetadataUrl,!1),te(),((P.apiKey??"")!==(f.apiKey??"")||JSON.stringify(P.models)!==JSON.stringify(f.models)||(P.anthropicBaseUrl??"")!==(f.anthropicBaseUrl??"")||(P.openaiBaseUrl??"")!==(f.openaiBaseUrl??"")||(P.openaiResponsesBaseUrl??"")!==(f.openaiResponsesBaseUrl??""))&&await w(X.id)}catch{v(gs)}})()}function E(P){V(P),k(!0)}function D(){const P=Z;P!==null&&(async()=>{let M;try{M=await fetch(`/api/providers/${P}`,{method:"DELETE"})}catch{v(gs);return}if(!M.ok){v(await Ft(M,"Failed to delete provider"));return}te()})()}const ee=p.useRef(null);function re(P){const M="/api/providers/export";(async()=>{try{const X=await fetch(M);if(!X.ok){v("Failed to export providers");return}const de=await X.blob(),fe=URL.createObjectURL(de),ze=document.createElement("a");ze.href=fe,ze.download=X.headers.get("Content-Disposition")?.match(/filename="(.+)"/)?.[1]??"providers.json",document.body.appendChild(ze),ze.click(),document.body.removeChild(ze),URL.revokeObjectURL(fe)}catch{v("Failed to export providers")}})()}function q(){ee.current?.click()}function ie(P){const M=P.target.files?.[0];M&&(async()=>{try{const X=await M.text(),de=await fetch("/api/providers/import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(X)}),fe=await _t(de,sA);de.ok&&fe.imported!==void 0&&fe.imported>0?(te(),v(null)):fe.errors&&fe.errors.length>0?v(fe.errors.join("; ")):v(fe.message??"Import failed")}catch{v("Failed to import providers")}P.target.value=""})()}return t?s.jsx("div",{className:"flex items-center justify-center py-8",children:s.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading providers..."})}):u||f?s.jsxs("div",{className:"space-y-4",children:[s.jsx("div",{className:"border border-border bg-background/95 shadow-sm sticky top-0 z-10 flex items-center justify-between rounded-[8px] px-3 py-2",children:s.jsx("h3",{className:"text-lg font-medium",children:f?"Edit Provider":"Add New Provider"})}),s.jsx(K4,{provider:f,onSubmit:f?z:H,onCancel:()=>{d(!1),m(void 0)}})]}):s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"border border-border bg-background/95 shadow-sm sticky top-0 z-10 flex items-center justify-between rounded-[8px] px-3 py-2",children:[s.jsx("h3",{className:"text-lg font-medium",children:"Providers"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs(Ce,{variant:"outline",size:"sm",onClick:()=>re(),className:"gap-1 hover:bg-muted",children:[s.jsx(po,{className:"size-3"}),"Export"]})}),s.jsx(Le,{children:"Download providers as JSON for backup or sharing"})]})}),s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs(Ce,{variant:"outline",size:"sm",onClick:q,className:"gap-1 hover:bg-muted",children:[s.jsx(Kd,{className:"size-3"}),"Import"]})}),s.jsx(Le,{children:"Import providers from an exported JSON file"})]})}),s.jsx("input",{type:"file",ref:ee,accept:".json",onChange:ie,style:{display:"none"}}),s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs(Ce,{variant:"outline",size:"sm",onClick:()=>A(!0),className:"gap-1",children:[s.jsx(_2,{className:"size-3"}),"Scan"]})}),s.jsx(Le,{children:"Detect and import provider configs from Claude Code and OpenCode"})]})}),s.jsxs(Ce,{onClick:()=>d(!0),size:"sm",className:"gap-1",children:[s.jsx(Ni,{className:"size-4"}),"Add Provider"]})]})]}),S!==null&&s.jsxs("div",{className:"border border-border bg-card shadow-sm flex items-center gap-2 rounded-[8px] px-3 py-2 text-xs text-muted-foreground",children:[s.jsx("span",{className:"shrink-0",children:"Config:"}),s.jsx("span",{className:"font-mono truncate",title:S,children:S}),s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>{Zt(S).then(P=>{P&&(R(!0),setTimeout(()=>R(!1),2e3))})},className:"shrink-0 ml-auto text-muted-foreground hover:text-foreground transition-colors","aria-label":N?"Copied config file path":"Copy config file path",children:N?s.jsx(Ke,{className:"size-3 text-green-500"}):s.jsx(Ct,{className:"size-3"})})}),s.jsx(Le,{children:"Copy config file path to clipboard"})]})})]}),h!==null&&s.jsxs("div",{className:"border border-border bg-card shadow-sm flex items-center gap-2 rounded-[8px] px-3 py-2 text-sm text-destructive",children:[s.jsx(jr,{className:"size-4 shrink-0"}),h]}),se.length===0?s.jsxs("div",{className:"border border-border bg-card shadow-sm space-y-3 rounded-[8px] py-12 text-center",children:[s.jsx("p",{className:"text-sm text-muted-foreground",children:"No providers configured yet."}),s.jsxs(Ce,{onClick:()=>d(!0),variant:"outline",size:"sm",children:[s.jsx(Ni,{className:"size-4"}),"Add Your First Provider"]})]}):s.jsxs("div",{className:"space-y-3",children:[s.jsx("div",{className:"border border-border bg-muted/40 flex gap-1 rounded-[8px] p-1",children:["all","personal","company"].map(P=>s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>L(P),className:`px-3 py-2 text-sm font-medium border-b-2 transition-colors ${U===P?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground"}`,children:P==="all"?"All":P==="personal"?"Personal":"Company"})}),s.jsx(Le,{children:P==="all"?"Show all providers":P==="personal"?"Providers you configured yourself":"Providers set by your organization"})]})},P))}),s.jsx("div",{ref:F,className:"space-y-3",children:oe.map(P=>s.jsx(F4,{provider:P,testResults:_e[P.id],isTesting:ae.has(P.id),testingTimeLeft:ge[P.id],isHighlighted:P.id===I,onEdit:M=>m(M),onDelete:E,onRefreshMetadata:M=>{J(M)},isRefreshingMetadata:W.has(P.id),onTest:M=>{w(M)}},P.id))})]}),s.jsx(C4,{open:K,onOpenChange:A,onImportComplete:()=>{i!==void 0&&i()}}),s.jsx(Zf,{open:$,onOpenChange:k,title:"Delete Provider",description:"Are you sure you want to delete this provider? This action cannot be undone.",confirmLabel:"Delete",variant:"destructive",onConfirm:D})]})}function gu(){const[e,t]=p.useState(!1),[n,r]=p.useState("providers"),{providers:o,isLoading:i,mutate:a}=pf(),[l,c]=p.useState({}),[u,d]=p.useState(new Set),[f,m]=p.useState({}),h=p.useCallback((x,b)=>{c(y=>({...y,[x]:b}))},[]),v=p.useCallback((x,b)=>{d(y=>{const _=new Set(y);return b?_.add(x):_.delete(x),_})},[]),g=p.useCallback((x,b)=>{m(y=>{if(b===void 0){const _={...y};return delete _[x],_}return{...y,[x]:b}})},[]);return s.jsxs(Or,{open:e,onOpenChange:t,children:[s.jsx(Za,{asChild:!0,children:s.jsxs(Ce,{variant:"ghost",size:"icon",className:wl,"aria-label":"Settings",title:"Settings",children:[s.jsx(E2,{className:"size-4"}),s.jsx("span",{className:"sr-only",children:"Settings"})]})}),s.jsxs(Pr,{className:"max-w-2xl max-h-[80vh] overflow-hidden flex flex-col",children:[s.jsx(Mr,{children:s.jsx(Lr,{children:"Settings"})}),s.jsxs(qh,{value:n,onValueChange:r,className:"flex-1 overflow-hidden",children:[s.jsxs(Kh,{children:[s.jsx(ft,{value:"providers",children:"Providers"}),s.jsx(ft,{value:"proxy",children:"Proxy"}),s.jsx(ft,{value:"storage",children:"Storage"}),s.jsx(ft,{value:"mcp",children:"MCP"}),s.jsx(ft,{value:"onboarding",children:"Onboarding"})]}),s.jsxs("div",{className:"mt-4 flex-1 overflow-x-hidden overflow-y-auto pr-3",children:[s.jsx(pt,{value:"providers",children:s.jsx(lA,{externalProviders:o,isLoading:i,externalTestResults:l,externalTestingProviders:u,externalTestingTimeLeft:f,onProvidersMutate:()=>a(),onTestResultsChange:h,onTestingProvidersChange:v,onTestingTimeLeftChange:g})}),s.jsx(pt,{value:"proxy",children:s.jsx(pA,{})}),s.jsx(pt,{value:"storage",children:s.jsx(uA,{})}),s.jsx(pt,{value:"mcp",children:s.jsx(fA,{})}),s.jsx(pt,{value:"onboarding",children:s.jsx(dA,{})})]})]})]})]})}const cA=Y({memoryCount:G(),logDir:C(),logFileCount:G(),logBytes:G(),chunkDir:C(),chunkFileCount:G(),chunkBytes:G(),sessionArchiveDir:C(),sessionArchiveFileCount:G(),sessionArchiveBytes:G()});function pi(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KiB`:e<1024*1024*1024?`${(e/1024/1024).toFixed(1)} MiB`:`${(e/1024/1024/1024).toFixed(1)} GiB`}function uA(){const[e,t]=p.useState(null),[n,r]=p.useState(null),[o,i]=p.useState(!1),[a,l]=p.useState(null),c=p.useCallback(async()=>{i(!0),r(null);try{const d=await fetch("/api/logs?stats=1");if(!d.ok){r(`Failed to load storage stats: HTTP ${String(d.status)}`);return}const f=await d.json(),m=cA.safeParse(f);if(!m.success){r("Storage stats response was not valid.");return}t(m.data)}catch(d){r(d instanceof Error?d.message:String(d))}finally{i(!1)}},[]);p.useEffect(()=>{c()},[c]);const u=p.useCallback((d,f)=>{Zt(f).then(m=>{m&&(l(d),setTimeout(()=>l(null),1600))})},[]);return s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center justify-between gap-3",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"text-sm font-semibold",children:"Log storage"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Inspect local log and streaming chunk footprint before exporting or clearing sessions."})]}),s.jsx(Ce,{type:"button",variant:"outline",size:"sm",onClick:()=>{c()},children:o?"Refreshing...":"Refresh"})]}),e!==null&&s.jsxs("div",{className:"grid gap-2 text-xs",children:[s.jsx(vr,{id:"log-dir",label:"Log storage path",value:e.logDir,copiedId:a,onCopy:u}),s.jsx(vr,{id:"chunk-dir",label:"Streaming chunks storage path",value:e.chunkDir,copiedId:a,onCopy:u}),s.jsx(vr,{id:"session-archive-dir",label:"Session archive storage path",value:e.sessionArchiveDir,copiedId:a,onCopy:u}),s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2",children:[s.jsx("div",{className:"font-medium",children:"In-memory logs"}),s.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.memoryCount.toLocaleString()," loaded"]})]}),s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2",children:[s.jsx("div",{className:"font-medium",children:"Log files"}),s.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.logFileCount.toLocaleString()," files / ",pi(e.logBytes)]})]}),s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2",children:[s.jsx("div",{className:"font-medium",children:"Streaming chunks"}),s.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.chunkFileCount.toLocaleString()," files / ",pi(e.chunkBytes)]})]}),s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2",children:[s.jsx("div",{className:"font-medium",children:"Session archives"}),s.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.sessionArchiveFileCount.toLocaleString()," files /"," ",pi(e.sessionArchiveBytes)]})]})]}),n!==null&&s.jsx("p",{className:"text-xs text-destructive",children:n})]})}function vr({id:e,label:t,value:n,copiedId:r,onCopy:o}){const i=r===e;return s.jsxs("div",{className:"border border-border bg-muted/40 min-w-0 rounded-md px-3 py-2",children:[s.jsx("div",{className:"mb-1 text-xs font-medium text-muted-foreground",children:t}),s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("code",{className:"min-w-0 flex-1 truncate font-mono text-xs text-foreground",children:n}),s.jsx(Ce,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0",onClick:()=>o(e,n),"aria-label":i?`Copied ${t}`:`Copy ${t}`,children:i?s.jsx(Ke,{className:"size-3.5 text-emerald-500"}):s.jsx(Ct,{className:"size-3.5"})})]})]})}function dA(){const[e,t]=p.useState(null),n=p.useMemo(()=>typeof window>"u"?"http://localhost:25947":window.location.origin,[]),r=p.useMemo(()=>[{id:"status",label:"Check onboarding",value:"agent-inspector onboard --status"},{id:"status-json",label:"Check onboarding JSON",value:"agent-inspector onboard --status --json"},{id:"refresh",label:"Refresh generated files",value:"agent-inspector onboard --force"},{id:"uninstall",label:"Remove matching generated files",value:"agent-inspector onboard --uninstall"},{id:"claude",label:"Claude Code command",value:"/agent-inspector:onboard"},{id:"codex",label:"Codex prompt",value:"Use the agent-inspector-onboard skill"},{id:"opencode-config",label:"OpenCode config",value:"agent-inspector onboard --opencode-only"},{id:"opencode-status",label:"OpenCode status",value:"agent-inspector onboard --status --opencode-only"},{id:"opencode-verify",label:"OpenCode verify",value:"opencode mcp list"},{id:"opencode-proxy",label:"OpenCode proxy",value:`LLM_BASE_URL=${n}/proxy`},{id:"mimo-config",label:"MiMo Code config",value:"agent-inspector onboard --mimo-only"},{id:"mimo-status",label:"MiMo Code status",value:"agent-inspector onboard --status --mimo-only"},{id:"mimo-verify",label:"MiMo Code verify",value:"mimo mcp list"},{id:"mimo-proxy",label:"MiMo Code proxy",value:`OPENAI_BASE_URL=${n}/proxy`},{id:"mcp",label:"MCP URL",value:`${n}/api/mcp`},{id:"proxy",label:"Proxy URL",value:`${n}/proxy`},{id:"anthropic",label:"Anthropic base",value:`ANTHROPIC_BASE_URL=${n}/proxy`},{id:"openai",label:"OpenAI base",value:`OPENAI_BASE_URL=${n}/proxy`}],[n]),o=p.useCallback((i,a)=>{Zt(a).then(l=>{l&&(t(i),setTimeout(()=>t(null),1600))})},[]);return s.jsxs("div",{className:"min-w-0 space-y-4",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(La,{className:"size-4 text-muted-foreground"}),s.jsx("h3",{className:"text-sm font-semibold",children:"Agent onboarding"})]}),s.jsx("div",{className:"grid gap-2",children:r.map(i=>s.jsx(vr,{id:i.id,label:i.label,value:i.value,copiedId:e,onCopy:o},i.id))}),s.jsxs("div",{className:"grid gap-2 rounded-md border border-border bg-background px-3 py-2 text-xs text-muted-foreground",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ke,{className:"size-3.5 text-emerald-500"}),s.jsx("span",{children:"Provider test creates a traceable memory probe session."})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ke,{className:"size-3.5 text-emerald-500"}),s.jsx("span",{children:"Captured sessions can produce reviewable memory candidates."})]}),s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx(Ke,{className:"mt-0.5 size-3.5 text-emerald-500"}),s.jsxs("span",{children:["Streamable HTTP clients should use the MCP URL directly. Stdio-only clients should use",s.jsx("code",{className:"mx-1 rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"agent-inspector-mcp stdio"}),"instead. Configure only one entry for the same Inspector."]})]}),s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx(Ke,{className:"mt-0.5 size-3.5 text-emerald-500"}),s.jsxs("span",{children:["OpenCode onboarding safely merges"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode.json"}),", then verify with"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode mcp list"}),"."]})]}),s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx(Ke,{className:"mt-0.5 size-3.5 text-emerald-500"}),s.jsxs("span",{children:["MiMo Code onboarding safely merges"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mimocode.jsonc"}),", then route OpenAI-format traffic with"," ",s.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"OPENAI_BASE_URL"}),"."]})]}),s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx(Ke,{className:"mt-0.5 size-3.5 text-emerald-500"}),s.jsx("span",{children:"If your AI tool runs in another container or host, replace localhost with an address reachable from that tool and verify the network/firewall path."})]})]})]})}function fA(){const[e,t]=p.useState(null),r=`${p.useMemo(()=>typeof window>"u"?"http://localhost:25947":window.location.origin,[])}/api/mcp`,o=p.useMemo(()=>[{id:"mcp-url",label:"Streamable HTTP MCP URL",value:r},{id:"stdio",label:"Stdio bridge command",value:`agent-inspector-mcp stdio --url ${r}`},{id:"doctor",label:"Bridge doctor",value:`agent-inspector-mcp doctor --url ${r}`},{id:"readonly",label:"Readonly mode",value:"AGENT_INSPECTOR_MCP_READONLY=1 agent-inspector"},{id:"capabilities",label:"Capabilities resource",value:"inspector://mcp/capabilities"},{id:"context",label:"Current context resource",value:"inspector://context/current"},{id:"streamable-json",label:"Streamable HTTP JSON",value:JSON.stringify({mcpServers:{"agent-inspector":{type:"streamableHttp",url:r}}},null,2)},{id:"stdio-json",label:"Stdio MCP JSON",value:JSON.stringify({mcpServers:{"agent-inspector":{command:"agent-inspector-mcp",args:["stdio","--url",r]}}},null,2)},{id:"opencode-local",label:"OpenCode local MCP",value:JSON.stringify({mcp:{"agent-inspector":{type:"local",command:["agent-inspector-mcp","stdio","--url",r],enabled:!0}}},null,2)},{id:"mimo-local",label:"MiMo Code local MCP",value:JSON.stringify({mcp:{"agent-inspector":{type:"local",command:["agent-inspector-mcp","stdio","--url",r],enabled:!0}}},null,2)},{id:"codex-toml",label:"Codex TOML",value:`[mcp_servers.agent-inspector]
|
|
105
|
+
command = "agent-inspector-mcp"
|
|
106
|
+
args = ["stdio", "--url", "${r}"]`}],[r]),i=p.useCallback((a,l)=>{Zt(l).then(c=>{c&&(t(a),setTimeout(()=>t(null),1600))})},[]);return s.jsxs("div",{className:"min-w-0 space-y-4",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(La,{className:"size-4 text-muted-foreground"}),s.jsx("h3",{className:"text-sm font-semibold",children:"MCP access"})]}),s.jsxs("div",{className:"grid gap-2 rounded-md border border-border bg-background px-3 py-2 text-xs text-muted-foreground",children:[s.jsx("div",{children:"Use Streamable HTTP when the client supports URL-based MCP. Use the stdio bridge only for stdio-only clients. Configure one entry for the same Inspector instance."}),s.jsx("div",{children:"If the MCP client runs in another container or host, replace localhost with a reachable host/IP and verify the network path."})]}),s.jsx("div",{className:"grid gap-2",children:o.map(a=>s.jsx(vr,{id:a.id,label:a.label,value:a.value,copiedId:e,onCopy:i},a.id))})]})}function pA(){const{strip:e,slowResponseThresholdSeconds:t,providerTestTimeoutSeconds:n,timeDisplayFormat:r,isLoading:o,setStrip:i,setSlowResponseThresholdSeconds:a,setProviderTestTimeoutSeconds:l,setTimeDisplayFormat:c}=Ra(),[u,d]=p.useState(null),[f,m]=p.useState(!1),h=p.useCallback(async b=>{d(null),m(!0);try{await i(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[i]),v=p.useCallback(async b=>{d(null),m(!0);try{await a(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[a]),g=p.useCallback(async b=>{d(null),m(!0);try{await l(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[l]),x=p.useCallback(async b=>{d(null),m(!0);try{await c(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[c]);return s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("h3",{className:"text-sm font-semibold",children:"Claude Code billing header"}),s.jsxs("p",{className:"text-xs text-muted-foreground",children:["When enabled, the proxy strips the synthetic ",s.jsx("code",{children:"x-anthropic-billing-header"})," text block that Claude Code prepends to the system prompt before forwarding to upstream. Improves prefix-cache hit rates against third-party upstreams. The default at startup is controlled by the ",s.jsx("code",{children:"AGENT_INSPECTOR_STRIP_CLAUDE_CODE_BILLING_HEADER"})," ","environment variable; your choice is persisted to ",s.jsx("code",{children:"config.json"})," and overrides the env var for subsequent requests."]})]}),s.jsxs("label",{className:"flex items-center gap-3",children:[s.jsx("input",{type:"checkbox",role:"switch",checked:e,disabled:o||f,onChange:b=>{h(b.currentTarget.checked)},className:"size-4 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"text-sm",children:o?"Loading...":e?"Stripping enabled":"Stripping disabled"})]}),s.jsxs("div",{className:"space-y-1",children:[s.jsx("label",{htmlFor:"slow-response-threshold",className:"text-sm font-semibold",children:"Slow response threshold"}),s.jsxs("p",{className:"text-xs text-muted-foreground",children:["Logs whose elapsed time exceeds this many seconds show a warning icon next to the duration. Set to ",s.jsx("code",{children:"0"})," to disable the indicator."]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("input",{id:"slow-response-threshold",type:"number",min:0,max:ji,step:1,value:t,disabled:o||f,onChange:b=>{const y=Number(b.currentTarget.value);Number.isInteger(y)&&(y<0||y>ji||v(y))},className:"h-8 w-24 rounded-md border border-input bg-transparent px-2 text-sm font-mono disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds"})]})]}),s.jsxs("div",{className:"space-y-1",children:[s.jsx("label",{htmlFor:"provider-test-timeout",className:"text-sm font-semibold",children:"Provider test timeout"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Provider Test waits this many seconds per configured model before aborting slow probes. The full test window scales with model count."}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("input",{id:"provider-test-timeout",type:"number",min:1,max:Si,step:1,value:n,disabled:o||f,onChange:b=>{const y=Number(b.currentTarget.value);Number.isInteger(y)&&(y<1||y>Si||g(y))},className:"h-8 w-24 rounded-md border border-input bg-transparent px-2 text-sm font-mono disabled:cursor-not-allowed disabled:opacity-50"}),s.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds / model"})]})]}),s.jsxs("div",{className:"space-y-1",children:[s.jsx("label",{htmlFor:"time-display-format",className:"text-sm font-semibold",children:"Time display"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Controls timestamps in session summaries, conversation headers, and log rows."}),s.jsxs("select",{id:"time-display-format",value:r,disabled:o||f,onChange:b=>{const y=Ud.safeParse(b.currentTarget.value);y.success&&x(y.data)},className:"h-8 rounded-md border border-input bg-background px-2 text-sm disabled:cursor-not-allowed disabled:opacity-50",children:[s.jsx("option",{value:"time",children:"Time only"}),s.jsx("option",{value:"full",children:"Full ISO"})]})]}),u!==null&&s.jsxs("p",{className:"text-xs text-destructive",children:["Failed to save: ",u]})]})}function hA(e){const t=new Map;for(const n of e){const r=n.logs;for(let o=1;o<r.length;o++){const i=r[o-1],a=r[o];i===void 0||a===void 0||t.set(a.id,{creation:xu(i.cacheCreationInputTokens,a.cacheCreationInputTokens),read:xu(i.cacheReadInputTokens,a.cacheReadInputTokens)})}}return t}function xu(e,t){return t===null||e===null?null:t>e?{direction:"up",delta:t-e}:t<e?{direction:"down",delta:e-t}:null}function km(e){for(const t of e){const n=t.userAgent;if(n!=null&&n!=="")return n}return null}function mA(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function _m(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}function gA(e){return qa({userAgent:km(e.logs),conversationId:e.conversationId,clientProjectFolder:_m(e.logs)})}function xA(e){if(e===null||e==="")return"Unknown IDE";const t=e.split(/[ /;]/)[0]??"";return t===""?"Unknown IDE":t}function bA(e,t){const n=yo(e);return n!==null?n:xA(t)}function ro(e){return e===null||e===""?"unknown":String(e)}function vA(e,t,n){return e!=="unknown"?e:`unknown:${ro(t)}:${ro(n)}`}function yA(e,t){return`${ro(e)}:${ro(t)}`}function ca(e){return[...e].sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}function bu(e){return ca(e)[0]?.timestamp??""}function hi(e){return[...e].sort((t,n)=>bu(t.logs).localeCompare(bu(n.logs)))}function wA(e){const t=new Map;for(const r of e){const o=km(r.logs),i=_m(r.logs),a=gA(r),l=vA(a,o,i);let c=t.get(l);c===void 0&&(c={id:l,client:a,label:bA(a,o),userAgent:o,processes:new Map,logs:[]},t.set(l,c)),c.logs.push(...r.logs);const u=mA(r.logs),d=`${l}:${yA(u,i)}`;let f=c.processes.get(d);f===void 0&&(f={id:d,clientPid:u,clientProjectFolder:i,sessions:[],logs:[]},c.processes.set(d,f)),f.sessions.push(r),f.logs.push(...r.logs)}const n=[];for(const r of t.values()){const o=hi([...r.processes.values()].map(i=>({id:i.id,clientPid:i.clientPid,clientProjectFolder:i.clientProjectFolder,sessions:hi(i.sessions),logs:ca(i.logs)})));n.push({id:r.id,client:r.client,label:r.label,userAgent:r.userAgent,processes:o,logs:ca(r.logs)})}return hi(n)}function so(e){return e<=0?"0":$e(e)}function jm(e){let t=0,n=0;for(const r of e)r.inputTokens!==null&&r.inputTokens!==void 0&&(t+=r.inputTokens),r.outputTokens!==null&&r.outputTokens!==void 0&&(n+=r.outputTokens);return{inputTokens:t,outputTokens:n}}function kA(e){let t=0;for(const n of e)t+=n.sessions.length;return t}function _A(e){if(e===null||e==="")return null;const t=e.replaceAll("\\","/").split("/").filter(o=>o!==""),n=t[t.length-1];if(n===void 0)return e;const r=t[t.length-2];return r===void 0?n:`${r}/${n}`}function oo({label:e,value:t,className:n}){return s.jsxs("span",{className:ce("border border-border bg-muted/40 inline-flex h-7 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground",n),children:[s.jsx("span",{className:"font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e}),s.jsx("span",{className:"font-mono tabular-nums text-slate-100",children:t})]})}function jA({groups:e,...t}){const n=p.useMemo(()=>wA(e),[e]),[r,o]=p.useState(()=>new Set),[i,a]=p.useState(()=>new Set),l=p.useCallback(u=>{o(d=>{const f=new Set(d);return f.has(u)?f.delete(u):f.add(u),f})},[]),c=p.useCallback(u=>{a(d=>{const f=new Set(d);return f.has(u)?f.delete(u):f.add(u),f})},[]);return s.jsx("div",{className:"space-y-4",children:n.map(u=>s.jsx(SA,{group:u,collapsed:r.has(u.id),collapsedProcessIds:i,onToggleIde:()=>l(u.id),onToggleProcess:c,conversationProps:t},u.id))})}function SA({group:e,collapsed:t,collapsedProcessIds:n,onToggleIde:r,onToggleProcess:o,conversationProps:i}){const a=jm(e.logs),l=kA(e.processes),c=e.logs.length;return s.jsxs("section",{className:ce("border border-border bg-card shadow-sm relative isolate rounded-[8px]"),"data-ide-group":e.id,children:[s.jsxs("button",{type:"button",className:"flex w-full min-w-0 items-center gap-3 px-4 py-3 text-left transition-colors hover:bg-white/[0.03] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-cyan-300/45",onClick:r,"aria-expanded":!t,children:[e.client==="unknown"?s.jsx("span",{className:"border border-border bg-muted/40 inline-flex size-10 shrink-0 items-center justify-center rounded-[8px] text-slate-200",children:s.jsx(i2,{className:"size-5"})}):s.jsx(Ka,{client:e.client,className:"size-10 rounded-[8px] text-cyan-100"}),s.jsxs("span",{className:"min-w-0 flex-1",children:[s.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("span",{className:"truncate text-sm font-semibold text-slate-50",title:e.userAgent??e.label,children:e.label}),s.jsx("span",{className:"rounded border border-cyan-200/15 bg-cyan-300/[0.06] px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-[0.16em] text-cyan-100/75",children:"IDE"})]}),s.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[s.jsxs("span",{children:[e.processes.length," process",e.processes.length!==1?"es":""]}),s.jsxs("span",{children:[l," session",l!==1?"s":""]}),s.jsxs("span",{children:[c," log",c!==1?"s":""]})]})]}),s.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[s.jsx(oo,{label:"IN",value:so(a.inputTokens)}),s.jsx(oo,{label:"OUT",value:so(a.outputTokens)})]}),s.jsx("span",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?s.jsx(xt,{className:"size-4"}):s.jsx(ot,{className:"size-4"})})]}),!t&&s.jsx("div",{className:"space-y-3 border-t border-white/10 px-3 pb-3 pt-3 sm:px-4",children:e.processes.map(u=>s.jsx(CA,{group:u,collapsed:n.has(u.id),onToggle:()=>o(u.id),conversationProps:i},u.id))})]})}function CA({group:e,collapsed:t,onToggle:n,conversationProps:r}){const o=jm(e.logs),i=_A(e.clientProjectFolder),a=e.sessions.length,l=e.logs.length,c=e.clientPid!==null&&e.clientPid!==void 0?`PID ${e.clientPid}`:"process";return s.jsxs("section",{className:"relative pl-5",children:[s.jsx("span",{className:"absolute bottom-0 left-2 top-0 w-px bg-white/12","aria-hidden":"true"}),s.jsxs("div",{className:"border border-border bg-card shadow-sm overflow-hidden rounded-[8px]",children:[s.jsxs("button",{type:"button",className:"flex w-full min-w-0 items-center gap-3 px-3 py-2.5 text-left transition-colors hover:bg-white/[0.035] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-cyan-300/40",onClick:n,"aria-expanded":!t,children:[s.jsx("span",{className:"border border-border bg-muted/40 inline-flex size-8 shrink-0 items-center justify-center rounded-md text-amber-100",children:s.jsx(Sy,{className:"size-4"})}),s.jsxs("span",{className:"min-w-0 flex-1",children:[s.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[s.jsx("span",{className:"font-mono text-xs font-semibold tabular-nums text-slate-100",children:c}),i!==null&&s.jsxs("span",{className:"inline-flex min-w-0 items-center gap-1 text-xs text-muted-foreground",title:e.clientProjectFolder??i,children:[s.jsx(Wy,{className:"size-3 shrink-0"}),s.jsx("span",{className:"truncate font-mono",children:i})]})]}),s.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[s.jsxs("span",{children:[a," session",a!==1?"s":""]}),s.jsxs("span",{children:[l," log",l!==1?"s":""]})]})]}),s.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[s.jsx(oo,{label:"IN",value:so(o.inputTokens)}),s.jsx(oo,{label:"OUT",value:so(o.outputTokens)})]}),s.jsx("span",{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-7 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?s.jsx(xt,{className:"size-4"}):s.jsx(ot,{className:"size-4"})})]}),!t&&s.jsx("div",{className:"space-y-2 border-t border-white/10 p-2 sm:p-3",children:e.sessions.map(u=>s.jsx(mE,{group:u,...r,showClientIdentity:!1,showLogClientMetadata:!1,showProcessMetadata:!1},u.id))})]})]})}const io="data-nav-id",NA="data-nav-action";function vu(e){return Array.from(e.querySelectorAll(`[${io}]`))}function yu(e){return e instanceof HTMLElement}function TA(e,t){let n=e;for(;n!==null&&n!==t;){if(n.hasAttribute(io))return n;n=n.parentElement}return e.hasAttribute(io)?e:null}function mi(e){const t=e.getAttribute(NA);return t==="toggle"||t==="expand"||t==="collapse"?t:null}function pr(e){e.focus({preventScroll:!0}),e.scrollIntoView({block:"nearest",behavior:"smooth"})}function hr(e,t){return e[t]??null}function Sm(e){const t=e.tagName;return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable)}function wu(e){const t=e.tagName;return t==="BUTTON"||t==="A"||Sm(e)?!0:e.closest("[role='button'],[role='menuitem'],[role='option']")!==null}function EA(e){return e.closest("[role='dialog'],[role='menu'],[role='listbox']")!==null?!0:document.querySelector("[role='dialog'],[role='menu'],[role='listbox']")!==null}function AA(){const e=window.getSelection();return e===null?!1:e.type==="Range"&&e.toString().length>0}function xs(e,t){return e.key===t&&e.shiftKey}function RA(e,t,n={}){const r=t??e,o=n.pageWide===!0,i=p.useCallback(a=>{const l=e.current,c=r.current;if(!l||!c)return;const u=a.target;if(!yu(u)||u!==c)return;const d=vu(l),f=hr(d,0);f!==null&&pr(f)},[e,r]);p.useEffect(()=>{const a=l=>{if(l.altKey||l.ctrlKey||l.metaKey)return;const c=e.current;if(!c)return;const u=l.target;if(!yu(u)||Sm(u)||AA())return;const d=c.contains(u);if(d&&wu(u)&&!u.hasAttribute(io)||!d&&(!o||wu(u)||EA(u)))return;const f=vu(c);if(f.length===0)return;const m=TA(u,c),h=m!==null?f.indexOf(m):-1;let v=!1;switch(l.key){case"ArrowUp":case"W":{if(l.shiftKey&&l.key==="ArrowUp"||l.key==="W"&&!xs(l,"W"))break;l.preventDefault();const g=h>0?h-1:h===-1?f.length-1:-1;if(g!==-1){const x=hr(f,g);x!==null&&pr(x)}v=!0;break}case"ArrowDown":case"S":{if(l.shiftKey&&l.key==="ArrowDown"||l.key==="S"&&!xs(l,"S"))break;l.preventDefault();const g=h<f.length-1?h+1:h===-1?0:-1;if(g!==-1){const x=hr(f,g);x!==null&&pr(x)}v=!0;break}case"ArrowLeft":case"A":{if(l.shiftKey&&l.key==="ArrowLeft"||l.key==="A"&&!xs(l,"A")||m===null)break;if(l.preventDefault(),mi(m)==="collapse")m.click();else if(h>0){const x=hr(f,h-1);x!==null&&pr(x)}v=!0;break}case"ArrowRight":case"D":{if(l.shiftKey&&l.key==="ArrowRight"||l.key==="D"&&!xs(l,"D")||m===null)break;if(l.preventDefault(),mi(m)==="expand")m.click();else if(h<f.length-1){const x=hr(f,h+1);x!==null&&pr(x)}v=!0;break}case" ":{if(m===null)break;l.preventDefault(),mi(m)!==null&&m.click(),v=!0;break}}v&&l.stopPropagation()};return document.addEventListener("keydown",a,{capture:!0}),()=>document.removeEventListener("keydown",a,{capture:!0})},[e,o,r]),p.useEffect(()=>(document.addEventListener("focusin",i),()=>document.removeEventListener("focusin",i)),[i])}const IA={system:"System",user:"User",assistant:"Assistant",tool:"Tool Results",tools:"Tool Definitions"},zA={system:"bg-sky-500/70",user:"bg-emerald-500/70",assistant:"bg-violet-500/70",tool:"bg-sky-400/55",tools:"bg-slate-500/70"},OA={system:"focus-visible:ring-sky-300",user:"focus-visible:ring-emerald-300",assistant:"focus-visible:ring-violet-300",tool:"focus-visible:ring-sky-300",tools:"focus-visible:ring-slate-300"},gi=12,bs=1,ku=80,_u=24;function PA(e){return e.length<=_u?e:`${e.slice(0,_u-3)}...`}function MA(e){const t=e.replace(/\s+/g," ").trim();return t.length<=ku?t:`${t.slice(0,ku)}...`}function vs(e){return e>=10?`${e.toFixed(0)}%`:e>=1?`${e.toFixed(1)}%`:e>0?"<1%":"0%"}const LA=p.memo(function({segments:t,totalTokens:n,showLabels:r=!0,onActivate:o}){const i=p.useMemo(()=>n>0?n:t.reduce((x,b)=>x+b.size,0),[t,n]),a=t.slice(0,gi),l=t.slice(gi),c=l.reduce((x,b)=>x+b.size,0),u=l.length,d=gi,f=d+u-1,m=u>0,h=o!==void 0,v=p.useMemo(()=>a.reduce((x,b)=>x+b.size,0),[a]),g=p.useMemo(()=>`Request context: ~${$e(i)} tokens across ${t.length} segment${t.length===1?"":"s"}`,[t.length,i]);return t.length===0||i<=0?s.jsx("div",{role:"img","aria-label":g,className:"h-6"}):s.jsx(Ye,{delayDuration:150,children:s.jsxs("div",{role:"img","aria-label":g,className:"flex flex-col gap-1.5",children:[s.jsxs("div",{className:"relative flex h-6 w-full overflow-hidden rounded border border-border/40 bg-muted/30","data-testid":"anatomy-segment-bar",children:[a.map((x,b)=>{const y=i>0?x.size/i*100:0,_=Math.max(bs,y),j=ce("h-full border-r border-background/80 last:border-r-0",h?"opacity-90 hover:opacity-100 focus:opacity-100 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-background":"opacity-90",zA[x.role],h?OA[x.role]:""),S={width:`${_}%`},T=`${x.label}, ${vs(y)}, ~${$e(x.size)} tokens`;return s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:h?s.jsx("button",{type:"button",role:"button",tabIndex:0,onClick:()=>o(x),onKeyDown:N=>{(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),o(x))},"data-anatomy-path":x.path,"aria-label":T,className:j,style:S}):s.jsx("span",{"aria-label":T,className:j,style:S})}),s.jsxs(Le,{side:"bottom",className:"max-w-sm text-xs p-2 space-y-0.5",children:[s.jsxs("div",{className:"font-semibold",children:[x.label," - ",vs(y)," - ~",$e(x.size)," ","tokens"]}),s.jsx("div",{className:"text-muted-foreground",children:IA[x.role]}),s.jsxs("div",{className:"text-muted-foreground",children:[x.characters.toLocaleString()," chars"]}),x.text.length>0&&s.jsx("div",{className:"text-muted-foreground/90 break-words whitespace-pre-wrap",children:MA(x.text)})]})]},`${x.path}-${b}`)}),m&&s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("div",{role:"img","aria-label":`${u} additional segments`,className:"flex h-full items-center justify-center bg-muted-foreground/30 px-1.5 text-[10px] font-mono text-background",style:{width:`${Math.max(bs,c/i*100)}%`},children:["... +",u]})}),s.jsxs(Le,{side:"bottom",className:"text-xs",children:[u," more segment",u===1?"":"s"," (indices"," ",d,"-",f,")"]})]})]}),r&&s.jsxs("div",{className:"flex w-full gap-1 text-[10px] text-muted-foreground",children:[a.map((x,b)=>{const y=i>0?x.size/i*100:0,_=Math.max(bs,y);return s.jsxs("div",{className:"flex flex-col gap-0.5 truncate",style:{width:`${_}%`},title:`${x.label} - ${vs(y)} - ~${$e(x.size)} tokens`,children:[s.jsx("span",{className:"truncate font-mono text-foreground/80",children:PA(x.label)}),s.jsxs("span",{className:"truncate font-mono text-muted-foreground/70",children:[vs(y)," - ~",$e(x.size)]})]},`label-${x.path}-${b}`)}),m&&s.jsxs("div",{className:"flex flex-col gap-0.5 truncate text-muted-foreground",style:{width:`${Math.max(bs,c/i*100)}%`},children:[s.jsxs("span",{className:"truncate font-mono text-foreground/60",children:["... +",u]}),s.jsxs("span",{className:"truncate font-mono text-muted-foreground/60",children:["~",$e(c)]})]})]}),v<i*.1&&s.jsx("div",{className:"h-0"})]})})}),Cm=.75,Nm=.9,ua=8e3,DA=.35,Tm=40,Em=160,$A=5,FA=8,BA=18,UA=6e4,WA=.7,ju=3e3,HA=.3,Su=160,ZA=new Set(["answer","body","content","data","error","message","markdown","output","response","result","stderr","stdout","text","transcript"]),VA=["context_window","contextWindow","context_length","contextLength","max_context_length","maxContextLength","max_input_tokens","maxInputTokens"],qA=["max_tokens","maxTokens","max_completion_tokens","maxCompletionTokens","max_output_tokens","maxOutputTokens"],KA=[{family:"OpenAI GPT-4.1",tokens:1047576,mode:"prefix",patterns:["gpt-4.1"]},{family:"OpenAI GPT-4o",tokens:128e3,mode:"prefix",patterns:["gpt-4o"]},{family:"OpenAI o-series",tokens:128e3,mode:"prefix",patterns:["o1","o3","o4"]},{family:"Anthropic Claude",tokens:2e5,mode:"prefix",patterns:["claude-"]},{family:"DeepSeek V4",tokens:1048576,mode:"prefix",patterns:["deepseek-v4-pro","deepseek-v4-flash"]},{family:"DeepSeek",tokens:64e3,mode:"prefix",patterns:["deepseek-"]},{family:"MiniMax M3",tokens:1048576,mode:"includes",patterns:["minimax-m3"]},{family:"MiniMax M2.7",tokens:204800,mode:"includes",patterns:["minimax-m2.7"]},{family:"MiniMax M2.5/M2.1",tokens:196608,mode:"includes",patterns:["minimax-m2.5","minimax-m2.1"]},{family:"GLM-5.2",tokens:1048576,mode:"prefix",patterns:["glm-5.2"]},{family:"GLM-5",tokens:202752,mode:"prefix",patterns:["glm-5","glm-5.1"]}],GA={system:"System",user:"User messages",assistant:"Assistant messages",tool:"Tool results",tools:"Tool definitions"};function JA(e){if(typeof e=="number")return Number.isFinite(e)&&e>0?Math.floor(e):null;if(typeof e=="string"){const t=Number(e);if(Number.isFinite(t)&&t>0)return Math.floor(t)}return null}function Am(e,t){for(const n of t){const r=JA(ke(e,n));if(r!==null)return r}return null}function YA(e){const t=ke(e,"model");if(typeof t!="string")return null;const n=t.trim();return n===""?null:n}function XA(e,t){switch(t.mode){case"prefix":return t.patterns.some(n=>e.startsWith(n));case"includes":return t.patterns.some(n=>e.includes(n))}}function QA(e,t,n=[]){const r=Am(t,VA);if(r!==null)return{tokens:r,label:"Request metadata",source:"request"};const o=A4(e,n);if(o!==null)return{tokens:o.tokens,label:`${o.providerName} config`,source:"provider"};if(e===null)return{tokens:null,label:"Unknown model",source:"unknown"};const i=e.trim().toLowerCase().replace(/\s+/g,"-");for(const a of KA)if(XA(i,a))return{tokens:a.tokens,label:`${a.family} local rule`,source:"model-rule"};return{tokens:null,label:"No local rule",source:"unknown"}}function eR(e){return e<0?0:e>1?1:e}function tR(e){return e===null?"unknown":e>=Nm?"danger":e>=Cm?"watch":"ok"}function nR(e,t){return e.filter(n=>n.role===t).reduce((n,r)=>n+r.size,0)}function rR(e,t){return["system","user","assistant","tool","tools"].map(r=>{const o=nR(e,r);return{role:r,label:GA[r],tokens:o,percent:t>0?o/t:0}}).filter(r=>r.tokens>0).sort((r,o)=>o.tokens-r.tokens)}function da(e){return e.replace(/\s+/g," ").trim().toLowerCase()}function sR(e){const t=e.replace(/\s+/g," ").trim();return t.length<=Su?t:`${t.slice(0,Su-3)}...`}function oR(e){return{role:e.role,label:e.label,path:e.path,tokens:e.tokens,characters:e.characters}}function iR(e){return{role:e.role,label:e.label,path:e.path,tokens:e.size,characters:e.characters,text:e.text}}function aR(e){const t=e.trim();return t.startsWith("{")||t.startsWith("[")}function lR(e){if(!aR(e))return null;try{return JSON.parse(e)}catch{return null}}function cR(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function uR(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t]??"";if(!(n.startsWith("[")&&n.endsWith("]")))return n}return null}function dR(e){const t=uR(e);return t===null?!1:ZA.has(cR(t))}function fR(e){return e.map(t=>t.startsWith("[")?t:`.${t}`).join("").replace(/^\./,"")}function pR(e,t,n){const r=gl(t);if(r<Em)return null;const o=ml(t);return o<Tm?null:{role:e.role,label:`${e.label} ${fR(n)}`,path:e.path,tokens:o,characters:r,text:t}}function fa({value:e,segment:t,path:n,depth:r,candidates:o}){if(!(o.length>=FA)&&!(r>$A)){if(typeof e=="string"){if(!dR(n))return;const i=pR(t,e,n);i!==null&&o.push(i);return}if(Array.isArray(e)){e.forEach((i,a)=>fa({value:i,segment:t,path:[...n,`[${String(a)}]`],depth:r+1,candidates:o}));return}xl(e)&&Object.entries(e).forEach(([i,a])=>fa({value:a,segment:t,path:[...n,i],depth:r+1,candidates:o}))}}function hR(e){const t=iR(e),n=lR(e.text);if(n===null)return[t];const r=[];fa({value:n,segment:e,path:[],depth:0,candidates:r});const o=da(e.text),i=new Set([o]),a=r.filter(l=>{const c=da(l.text);return c===""||i.has(c)?!1:(i.add(c),!0)});return[t,...a]}function mR(e){const t=new Map;for(const r of e){const o=hR(r);for(const i of o){if(i.tokens<Tm||i.characters<Em)continue;const a=da(i.text);if(a==="")continue;const l=t.get(a);if(l===void 0){t.set(a,{tokens:i.tokens,candidates:[i]});continue}t.set(a,{tokens:l.tokens+i.tokens,candidates:[...l.candidates,i]})}}const n=[];for(const r of t.values()){if(r.candidates.length<2)continue;const o=r.candidates[0]??null;if(o===null)continue;const i=r.tokens-o.tokens;n.push({key:`${o.path}:${o.label}:${String(r.candidates.length)}:${String(r.tokens)}`,count:r.candidates.length,totalTokens:r.tokens,repeatedTokens:i,preview:sR(o.text),firstLabel:o.label,segments:r.candidates.map(oR)})}return n.sort((r,o)=>o.repeatedTokens-r.repeatedTokens||o.totalTokens-r.totalTokens)}function gR(e){if(e.length===0)return null;const t=e.length,n=e.reduce((o,i)=>o+i.count,0),r=e.reduce((o,i)=>o+i.repeatedTokens,0);return{kind:"duplicate",severity:r>=ua?"danger":"watch",title:"Duplicate context",detail:`${String(n)} repeated blocks across ${String(t)} group${t===1?"":"s"}, ~${String(r)} repeated tokens.`}}function xR(e){return e.reduce((t,n)=>t+n.repeatedTokens,0)}function bR(e,t,n){const r=[],o=e.find(c=>c.role==="tools")??null;o!==null&&(o.tokens>=ua||o.percent>=DA&&o.tokens>=ju)&&r.push({kind:"tool-schema",severity:o.tokens>=ua?"danger":"watch",title:"Large tool schema",detail:`Tool definitions take ${Math.round(o.percent*100)}% of request context.`});const i=e.find(c=>c.role==="system")??null;i!==null&&i.tokens>=ju&&i.percent>=HA&&r.push({kind:"system-heavy",severity:"watch",title:"Large system prompt",detail:`System instructions take ${Math.round(i.percent*100)}% of request context.`});const a=e.filter(c=>c.role==="user"||c.role==="assistant"||c.role==="tool").reduce((c,u)=>c+u.tokens,0),l=t>0?a/t:0;return n>=BA&&(a>=UA||l>=WA)&&r.push({kind:"history-bloat",severity:l>=.85?"danger":"watch",title:"Conversation history growth",detail:`${String(n)} message blocks take ${Math.round(l*100)}% of request context.`}),r}function vR({risk:e,contextWindow:t,diagnostics:n,duplicateGroups:r}){let i=new Set(n.map(c=>c.kind)).size;(e==="watch"||e==="danger")&&(i+=1),t.source==="unknown"&&(i+=1);const a=n.some(c=>c.severity==="danger");return{level:e==="danger"||a?"risk":i>0?"optimizable":"ok",opportunityCount:i,reclaimableTokens:xR(r)}}function yR({segments:e,inputTokens:t,parsed:n,model:r,providers:o=[]}){const i=e.reduce((T,N)=>T+N.size,0),a=r??YA(n),l=t??i,c=Am(n,qA),u=QA(a,n,o),d=c??0,f=u.tokens===null?null:l+d,m=u.tokens===null?null:u.tokens-l,h=u.tokens===null?null:u.tokens-l-d,v=u.tokens===null||f===null?null:eR(f/u.tokens),g=rR(e,i),x=g[0]??null,b=e.filter(T=>T.role!=="tools").length,y=mR(e),_=gR(y),j=bR(g,i,b);_!==null&&j.unshift(_);const S=tR(v);return{model:a,contextWindow:u,estimatedInputTokens:l,outputReserveTokens:c,windowUsedTokens:f,remainingInputTokens:m,remainingAfterReserveTokens:h,usagePercent:v,riskLevel:S,roleUsages:g,largestRole:x,diagnostics:j,duplicateGroups:y,health:vR({risk:S,contextWindow:u,diagnostics:j,duplicateGroups:y})}}const TI={watch:Cm,danger:Nm},Cu=new WeakMap;function wR(e){return e.map(t=>{const n=t.modelMetadata?.map(r=>`${r.model}:${String(r.contextWindow??"")}`).join(",")??"";return`${t.id}:${t.updatedAt}:${t.models.join(",")}:${n}`}).join("|")}function kR(e){if(e===null)return null;try{return JSON.parse(e)}catch{return null}}function _R(e){return{role:e.role,label:e.label,size:e.tokens,characters:e.tokens*4,text:"",path:`role:${e.role}`}}function jR(e,t){const n=kR(e.rawRequestBody);if(n===null)return null;const o=Fh(Tr(e)).anatomySegments(n);if(o===null)return null;const i=yR({segments:o,inputTokens:e.inputTokens??null,parsed:n,model:e.model,providers:t}),a=i.model??e.model??"Unknown model",l=i.roleUsages.map(_R);return{logId:e.id,model:a,timestamp:e.timestamp,contextWindow:i.contextWindow,estimatedInputTokens:i.estimatedInputTokens,windowUsedTokens:i.windowUsedTokens,usagePercent:i.usagePercent,riskLevel:i.riskLevel,health:i.health,diagnostics:i.diagnostics.map(c=>c.title),roleSegments:l,roleTotalTokens:l.reduce((c,u)=>c+u.size,0)}}function SR(e,t,n){const r=Cu.get(e);if(r!==void 0&&r.id===e.id&&r.rawRequestBody===e.rawRequestBody&&r.inputTokens===e.inputTokens&&r.model===e.model&&r.path===e.path&&r.apiFormat===e.apiFormat&&r.timestamp===e.timestamp&&r.providersSignature===n)return r.snapshot;const o=jR(e,t);return Cu.set(e,{id:e.id,rawRequestBody:e.rawRequestBody,inputTokens:e.inputTokens,model:e.model,path:e.path,apiFormat:e.apiFormat,timestamp:e.timestamp,providersSignature:n,snapshot:o}),o}function CR(e,t){return e.usagePercent!==null&&t.usagePercent!==null?e.usagePercent>t.usagePercent:e.usagePercent!==null&&t.usagePercent===null?!0:e.usagePercent===null&&t.usagePercent!==null?!1:e.estimatedInputTokens>t.estimatedInputTokens}function Nu(e){switch(e){case"danger":return 4;case"watch":return 3;case"unknown":return 2;case"ok":return 1}}function NR(e,t){const n=Nu(t.latest.riskLevel)-Nu(e.latest.riskLevel);if(n!==0)return n;const r=e.peak.usagePercent??-1,i=(t.peak.usagePercent??-1)-r;return i!==0?i:t.latest.logId-e.latest.logId}function TR(e,t){return e.usagePercent===null||t.usagePercent===null?null:(t.usagePercent-e.usagePercent)*100}function ER(e){for(let t=1;t<e.length;t++){const n=e[t-1],r=e[t];if(!(n===void 0||r===void 0)&&n.id>r.id)return[...e].sort((o,i)=>o.id-i.id)}return e}function AR(e,t=[]){const n=ER(e),r=wR(t),o=new Map;for(const a of n){const l=SR(a,t,r);if(l===null)continue;const c=o.get(l.model);if(c===void 0){o.set(l.model,{model:l.model,requestCount:1,first:l,latest:l,peak:l});continue}o.set(l.model,{model:c.model,requestCount:c.requestCount+1,first:c.first,latest:l,peak:CR(l,c.peak)?l:c.peak})}return{models:[...o.values()].map(a=>({model:a.model,requestCount:a.requestCount,first:a.first,latest:a.latest,peak:a.peak,trendPercent:TR(a.first,a.latest)})).sort(NR)}}function Xt(e){return e.length<=30?e:`${e.slice(0,12)}...${e.slice(-12)}`}function RR(e){const t=new Map;for(const n of e)for(let r=0;r<n.logs.length;r+=1){const o=n.logs[r];o!==void 0&&t.set(o.id,r+1)}return t}function Tu(e,t){return t.get(e.id)??e.id}function IR(e){return e==="full"}function zR(e,t){const n=t>0;return{redacted:n,raw:n&&IR(e)}}function Eu(e){let t=0,n=0;for(const r of e)r.inputTokens!==null&&(t+=r.inputTokens),r.outputTokens!==null&&(n+=r.outputTokens);return{totalIn:t,totalOut:n}}function Rm(e,t){const n=e[0],r=e[e.length-1];return n===void 0||r===void 0?null:Da(n.timestamp,r.timestamp,t)}function OR(e){for(const t of e)if(t.userAgent!==null&&t.userAgent!==void 0&&t.userAgent!=="")return t.userAgent;return null}function PR(e){return e.error!==null&&e.error!==void 0&&e.error.length>0?!0:e.responseStatus!==null&&e.responseStatus>=400}function MR(e){const t=new Set;for(const r of e)r.model!==null&&r.model.length>0&&t.add(r.model);const n=[...t].sort();return n.length===0?"Model unknown":n.length===1?n[0]??"Model unknown":`${n.length} models`}function LR({logs:e,isLoading:t,timeDisplayFormat:n,slowResponseThresholdSeconds:r}){let o=0,i=0,a=0,l=0;const c=r*1e3;for(const f of e)PR(f)&&(o+=1),r>0&&f.elapsedMs!==null&&f.elapsedMs>=c&&(i+=1),f.inputTokens!==null&&(a+=f.inputTokens),f.outputTokens!==null&&(l+=f.outputTokens);const u=t?"rolling":o>0?"failed":i>0?"watch":"clear";return{status:u,statusLabel:u==="rolling"?"Rolling":u==="failed"?"Failure":u==="watch"?"Watch":"Clear",modelLabel:MR(e),requests:e.length,failures:o,slow:i,timeRange:Rm(e,n),tokenLabel:`${$e(a)} in / ${$e(l)} out`}}function DR(e){switch(e){case"rolling":return"border-cyan-400/35 bg-cyan-500/10 text-cyan-200";case"failed":return"border-red-400/35 bg-red-500/10 text-red-100";case"watch":return"border-amber-300/35 bg-amber-400/10 text-amber-100";case"clear":return"border-slate-300/20 bg-slate-300/[0.08] text-slate-100"}}function $R({stats:e}){return e.requests===0?null:s.jsx("div",{className:"border border-border bg-card shadow-sm mb-4 rounded-[8px]",children:s.jsxs("div",{className:"grid grid-cols-2 gap-0 md:grid-cols-[minmax(220px,1.2fr)_repeat(4,minmax(120px,1fr))]",children:[s.jsxs("div",{className:"col-span-2 border-b border-white/10 px-4 py-3 md:col-span-1 md:border-b-0 md:border-r",children:[s.jsxs("div",{className:"flex items-center gap-2 text-[10px] font-semibold uppercase text-muted-foreground",children:[s.jsx(py,{className:"size-3.5 text-cyan-300"}),"Opening Slate"]}),s.jsx("div",{className:"mt-2 min-w-0 truncate font-mono text-sm font-semibold text-foreground",children:e.modelLabel}),s.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-muted-foreground",children:e.timeRange??"Timeline pending"})]}),s.jsxs("div",{className:"border-r border-b border-white/10 px-4 py-3 md:border-b-0",children:[s.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Status"}),s.jsx("div",{className:ce("mt-2 inline-flex h-7 items-center rounded-md border px-2.5 font-mono text-xs font-semibold",DR(e.status)),children:e.statusLabel})]}),s.jsxs("div",{className:"border-b border-white/10 px-4 py-3 md:border-b-0 md:border-r",children:[s.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Requests"}),s.jsx("div",{className:"mt-2 font-mono text-xl font-semibold text-foreground",children:e.requests})]}),s.jsxs("div",{className:"border-r border-white/10 px-4 py-3 md:border-r",children:[s.jsxs("div",{className:"flex items-center gap-1 text-[10px] uppercase text-muted-foreground",children:[s.jsx(Ei,{className:"size-3 text-red-300"}),"Failure"]}),s.jsx("div",{className:"mt-2 font-mono text-xl font-semibold text-red-100",children:e.failures})]}),s.jsxs("div",{className:"px-4 py-3",children:[s.jsxs("div",{className:"flex items-center gap-1 text-[10px] uppercase text-muted-foreground",children:[s.jsx(Ma,{className:"size-3 text-amber-200"}),"Tempo"]}),s.jsxs("div",{className:"mt-2 font-mono text-sm font-semibold text-foreground",children:[e.slow," slow"]}),s.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-muted-foreground",children:e.tokenLabel})]})]})})}function FR({pinnedSessionId:e,selectedSession:t,sessions:n,logs:r}){if(e!==void 0){const a=r.filter(l=>l.sessionId===e);return a.length===0?null:{label:e,logs:a,showBackLink:!0}}if(t!=="__all__"){const a=r.filter(l=>l.sessionId===t);return a.length===0?null:{label:t,logs:a,showBackLink:!0}}const o=n.length===1?n[0]??null:null;return o!==null&&r.every(l=>l.sessionId===o)?{label:o,logs:[...r],showBackLink:!1}:n.length===0&&r.length>0&&r.every(a=>a.sessionId===null)?{label:"Visible requests",logs:[...r],showBackLink:!1}:null}function yr(e){if(e===null)return"Unknown";const t=e*100;return t>=10?`${t.toFixed(0)}%`:t>=1?`${t.toFixed(1)}%`:t>0?"<1%":"0%"}function BR(e){return e===null?"n/a":Math.abs(e)<.1?"0%":`${e>0?"+":""}${e.toFixed(1)}%`}function pa(e){return e===null||!Number.isFinite(e)?0:Math.min(Math.max(e*100,0),100)}function UR(e,t){if(t===null)return null;const n=pa(e),r=pa(t);return r<=0||Math.abs(r-n)<.5?null:r}function WR(e){switch(e){case"danger":return"bg-red-400";case"watch":return"bg-amber-300";case"unknown":return"bg-muted-foreground/50";case"ok":return"bg-cyan-300"}}function HR(e){const t=e.latest.contextWindow.tokens;return t===null?"Context window unknown":`Context window ${ff(t)}`}const ZR=["score","decision","final_status","validation_pass_ratio","semantic_memory_score","opencode_exit","actual_model","run_dir","workspace","project_dir","work_dir"];function Im(e){return typeof e=="string"?e.length>0?e:null:typeof e=="number"||typeof e=="boolean"?String(e):e===null?null:JSON.stringify(e)}function xi(e,t){if(e===null)return null;const n=e.metadata[t];return n===void 0?null:Im(n)}function VR(e){const t=e.toLowerCase();return t.includes("reject")||t.includes("fail")||t.includes("error")?"border-red-400/35 bg-red-500/10 text-red-100":t.includes("partial")||t.includes("pending")||t.includes("slow")?"border-amber-300/35 bg-amber-400/10 text-amber-100":t.includes("pass")||t.includes("complete")||t.includes("accept")?"border-cyan-300/25 bg-cyan-400/10 text-cyan-100":"border-border/70 bg-background/70 text-muted-foreground"}function qR(e){const t=[];for(const n of ZR){const r=e.metadata[n];if(r===void 0)continue;const o=Im(r);o!==null&&t.push({key:n,value:o})}return t}function Au({memberships:e,defaultOpen:t=!1}){const[n,r]=p.useState(t);if(e.length===0)return null;const o=e[0],i=o?.member??null,a=xi(i,"score"),l=xi(i,"decision"),c=xi(i,"final_status"),u=[a===null?null:{label:`score ${a}`,value:a},l===null?null:{label:l,value:l},c===null?null:{label:c,value:c},i?.model===null||i?.model===void 0?null:{label:i.model,value:i.model}].filter(d=>d!==null&&d.label.length>0&&d.value.length>0);return s.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] text-xs",children:[s.jsxs("button",{type:"button",onClick:()=>r(d=>!d),className:"flex w-full items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-white/[0.04]","aria-expanded":n,children:[s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[s.jsx("span",{className:"font-semibold text-foreground",children:"Case File"}),o!==void 0&&s.jsx("span",{className:"truncate text-muted-foreground",title:o.groupTitle,children:o.groupTitle}),s.jsxs("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:[e.length," group",e.length===1?"":"s"]})]}),u.length>0&&s.jsx("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:u.slice(0,4).map(d=>s.jsx("span",{className:ce("rounded border px-1.5 py-0.5 font-mono text-[10px]",VR(d.value)),children:d.label},d.label))})]}),n?s.jsx(Ia,{className:"size-4 shrink-0 text-muted-foreground"}):s.jsx(ot,{className:"size-4 shrink-0 text-muted-foreground"})]}),n&&s.jsx("div",{className:"space-y-2 border-t border-white/10 px-3 py-2",children:e.map(d=>{const f=d.member,m=qR(f);return s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[s.jsx("span",{className:"truncate font-medium text-foreground",title:d.groupTitle,children:d.groupTitle}),s.jsx("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:d.groupStatus}),f.status!==null&&s.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["member ",f.status]})]}),s.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[s.jsx("span",{className:"font-mono",title:f.sessionId,children:Xt(f.sessionId)}),f.label!==null&&s.jsx("span",{children:f.label}),f.provider!==null&&s.jsx("span",{children:f.provider}),f.model!==null&&s.jsx("span",{className:"font-mono",children:f.model}),f.runId!==null&&s.jsxs("span",{className:"font-mono",title:f.runId,children:["run ",Xt(f.runId)]})]}),m.length>0&&s.jsx("div",{className:"mt-2 grid gap-1 sm:grid-cols-2 xl:grid-cols-3",children:m.map(h=>s.jsxs("div",{className:"border border-border bg-muted/40 min-w-0 rounded-md px-2 py-1",children:[s.jsx("div",{className:"font-mono text-[10px] text-muted-foreground",children:h.key}),s.jsx("div",{className:"truncate font-mono text-[11px] text-foreground",title:h.value,children:h.value})]},h.key))})]},`${d.groupId}:${f.id}`)})})]})}function KR({logs:e,pagination:t}){if(t.isLoading&&e.length===0)return"Loading logs...";if(e.length===0)return"No logs on this page";const n=e[0],r=e[e.length-1],o=n===void 0||r===void 0?"Current page":`#${n.id}-#${r.id}`,i=t.total===null?"logs":`${t.total} logs`;return`Showing ${o} of ${i}`}function ys({label:e,title:t,icon:n,disabled:r,onClick:o}){return s.jsxs("button",{type:"button",onClick:o,disabled:r,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-45",title:t,children:[n,s.jsx("span",{children:e})]})}function Ru({logs:e,pagination:t,embedded:n=!1}){if(t===void 0)return null;const r=t.isLoading;return s.jsxs("div",{className:ce("flex min-h-9 flex-col gap-2 px-1 py-1 sm:flex-row sm:items-center",n?"border-t border-white/10 pt-2":"border border-border bg-card shadow-sm mb-3 rounded-[8px] px-2"),children:[s.jsxs("div",{className:"w-full min-w-0 px-1 font-mono text-[11px] text-muted-foreground sm:flex-1",children:[KR({logs:e,pagination:t}),t.isLoading&&e.length>0&&s.jsx("span",{className:"ml-2",children:"Loading..."})]}),s.jsxs("div",{className:"flex w-full items-center gap-1 overflow-x-auto sm:w-auto",children:[s.jsx(ys,{label:"Oldest",title:"Load the oldest logs in this session",icon:s.jsx(ey,{className:"size-3.5"}),disabled:r||!t.hasOlder,onClick:t.onOldest}),s.jsx(ys,{label:"Older",title:"Load older logs",icon:s.jsx(K1,{className:"size-3.5"}),disabled:r||!t.hasOlder,onClick:t.onOlder}),s.jsx(ys,{label:"Newer",title:"Load newer logs",icon:s.jsx(xt,{className:"size-3.5"}),disabled:r||!t.hasNewer,onClick:t.onNewer}),s.jsx(ys,{label:"Newest",title:"Load the newest logs in this session",icon:s.jsx(ny,{className:"size-3.5"}),disabled:r||!t.hasNewer,onClick:t.onNewest})]})]})}function GR(e){return`${e} ${e===1?"request":"requests"}`}function Iu(e){return`#${String(e)}`}function zu(e){switch(e){case"danger":return"text-red-300";case"watch":return"text-amber-200";case"unknown":return"text-muted-foreground";case"ok":return"text-cyan-200"}}function JR(e){switch(e){case"risk":return"border-red-400/30 bg-red-500/10 text-red-100";case"optimizable":return"border-amber-400/25 bg-amber-400/8 text-amber-100";case"ok":return"border-cyan-300/25 bg-cyan-400/8 text-cyan-100"}}function YR(e){switch(e){case"risk":return"Risk";case"optimizable":return"Optimizable";case"ok":return"OK"}}const XR=10,QR=80;function eI(e){e.setAttribute("data-deep-link-highlight","true"),window.setTimeout(()=>{e.removeAttribute("data-deep-link-highlight")},1800)}function tI(e){const t=document.getElementById(`log-${String(e)}`);return t instanceof HTMLElement?(t.scrollIntoView({block:"center",behavior:"smooth"}),t.focus({preventScroll:!0}),eI(t),!0):!1}function zm(e){Vs({logId:e,tab:"anatomy"});let t=0;const n=()=>{Vs({logId:e,tab:"anatomy"}),!tI(e)&&(t+=1,t<XR&&window.setTimeout(n,QR))};window.setTimeout(n,0)}function Ou({command:e}){const[t,n]=p.useState(!1),r=p.useCallback(()=>{Zt(e).then(o=>{o&&(n(!0),setTimeout(()=>n(!1),2e3))})},[e]);return s.jsxs("div",{className:"border border-border bg-muted/40 inline-flex max-w-full items-center gap-2 rounded-md px-3 py-2",children:[s.jsx("pre",{className:"m-0 overflow-x-auto font-mono text-sm text-cyan-200",children:e}),s.jsx("button",{type:"button",onClick:r,className:"shrink-0 cursor-pointer text-muted-foreground transition-colors hover:text-foreground","aria-label":"Copy command",children:t?s.jsx(Ke,{className:"size-4"}):s.jsx(Ct,{className:"size-4"})})]})}function Pu(){return s.jsx(Ye,{children:s.jsxs(Pe,{children:[s.jsx(Me,{asChild:!0,children:s.jsxs("span",{className:"border border-border bg-muted/40 inline-flex h-7 items-center gap-2 rounded-md px-2.5 font-mono text-[11px] font-medium text-cyan-200",children:[s.jsx("span",{className:"size-1.5 rounded-full bg-cyan-200 shadow-[0_0_8px_rgba(125,211,252,0.75)]"}),"MCP Ready",s.jsx("span",{className:"hidden text-cyan-200/70 sm:inline",children:"/api/mcp"})]})}),s.jsx(Le,{sideOffset:8,className:"max-w-[320px] text-left leading-relaxed",children:"Coding agents can inspect logs, replay requests, test providers, and debug sessions through MCP at /api/mcp."})]})})}function bi({label:e,children:t,className:n}){return s.jsxs("section",{className:ce("border border-border bg-card shadow-sm rounded-[8px]",n),children:[s.jsx("div",{className:"border-b border-white/10 px-3 py-2",children:s.jsx("div",{className:"font-mono text-[10px] font-semibold uppercase tracking-[0.14em] text-white/40",children:e})}),s.jsx("div",{className:"p-3",children:t})]})}function vi({label:e,value:t}){return s.jsxs("div",{className:"border border-border bg-muted/40 min-w-0 rounded-md px-2 py-2",children:[s.jsx("div",{className:"truncate font-mono text-lg font-semibold leading-6 text-slate-100",children:t}),s.jsx("div",{className:"mt-0.5 truncate font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e})]})}const nI=["text-amber-500","text-rose-500","text-sky-500","text-emerald-500","text-violet-500","text-orange-500","text-cyan-500","text-pink-500","text-lime-500","text-blue-500","text-yellow-500","text-fuchsia-500"];function Mu({compact:e,entrancePhase:t}){return e?s.jsx(Jc,{className:"size-7 text-amber-500"}):s.jsxs("span",{className:"flex shrink-0 items-end gap-1 group cursor-default","aria-hidden":"true",children:[s.jsx(Jc,{className:"size-10 text-amber-500 transition-all duration-300 group-hover:scale-125 group-hover:-translate-y-1.5"}),s.jsx("span",{className:"hidden items-end gap-0.5 sm:flex",children:Ar.map((n,r)=>{const o=nI[r]??"text-amber-500",i=t==="hidden"?"opacity-0 scale-0":t==="playing"?"animate-crab-piano-pop":"";return s.jsx(n,{className:`size-5 ${o} transition-all duration-300 ease-out group-hover:scale-125 group-hover:-translate-y-1 ${i}`,style:{transitionDelay:`${r*50}ms`,...t==="playing"?{animationDelay:`${r*400}ms`}:{}}},r)})})]})}function rI({compact:e,crabEntrancePhase:t}){return e?s.jsxs("div",{className:"border border-border bg-card shadow-sm rounded-[8px] p-3",children:[s.jsxs("div",{className:"flex items-start justify-between gap-3",children:[s.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[s.jsx(Mu,{compact:!0,entrancePhase:t}),s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 items-baseline gap-2",children:[s.jsx("span",{className:"truncate text-base font-bold",children:"Inspector"}),s.jsxs("span",{className:"hidden shrink-0 font-mono text-[11px] font-semibold text-muted-foreground sm:inline",children:["v",Ri.version]})]}),s.jsx("div",{className:"hidden text-[11px] font-semibold text-muted-foreground sm:block",children:"Local First. Evidence First."})]})]}),s.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[s.jsx(Yc,{}),s.jsx(Qc,{}),s.jsx(gu,{})]})]}),s.jsx("div",{className:"mt-2 hidden sm:block",children:s.jsx(Pu,{})})]}):s.jsxs("div",{className:"grid grid-cols-[1fr_auto_1fr] items-start gap-3 pb-6",children:[s.jsx("div",{}),s.jsxs("h1",{className:"flex min-w-0 flex-col items-center gap-2 text-center",children:[s.jsxs("span",{className:"flex max-w-[calc(100vw-7rem)] items-end gap-2 whitespace-nowrap",children:[s.jsx(Mu,{compact:!1,entrancePhase:t}),s.jsxs("span",{className:"flex min-w-0 items-baseline gap-2 pl-1",children:[s.jsx("span",{className:"truncate text-lg font-bold",children:"Agent Inspector"}),s.jsxs("span",{className:"shrink-0 font-mono text-xs font-semibold text-muted-foreground",children:["v",Ri.version]})]}),s.jsx(Ni,{className:"size-4 shrink-0 text-muted-foreground/70","aria-hidden":"true"}),s.jsx(xE,{className:"size-10 shrink-0"})]}),s.jsx("span",{className:"max-w-[calc(100vw-7rem)] text-sm font-semibold text-muted-foreground",children:"Local First. Evidence First."}),s.jsx(Pu,{})]}),s.jsxs("div",{className:"justify-self-end flex items-center gap-1",children:[s.jsx(Yc,{}),s.jsx(Qc,{}),s.jsx(gu,{})]})]})}function Lu({label:e,logId:t}){return s.jsxs("button",{type:"button",onClick:()=>zm(t),className:"inline-flex h-5 items-center rounded px-1 font-mono text-[10px] text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",title:`Open Context for ${Iu(t)}`,children:[e," ",Iu(t)]})}function sI({latestPercent:e,peakPercent:t,risk:n,onOpenContext:r}){const o=pa(e),i=UR(e,t),a=t===null?`Latest context window usage ${yr(e)}`:`Latest context window usage ${yr(e)}, peak ${yr(t)}`;return s.jsx("button",{type:"button",onClick:r,className:"group block w-full rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1","aria-label":`${a}. Open latest Context details`,title:"Open latest Context details",children:s.jsxs("span",{className:"relative block h-2.5 overflow-hidden rounded-full border border-white/10 bg-black/25 transition-colors group-hover:border-cyan-200/35",role:"meter","aria-label":a,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(o),children:[s.jsx("span",{className:ce("block h-full rounded-full transition-[width]",WR(n)),style:{width:`${o}%`}}),i!==null&&s.jsx("span",{className:"absolute top-0 h-full w-0.5 rounded-full bg-amber-100/75 shadow-[0_0_0_1px_rgba(0,0,0,0.25)]",style:{left:`calc(${i}% - 0.5px)`},"aria-hidden":"true"})]})})}function oI({summary:e}){const t=e.trendPercent,n=t===null||Math.abs(t)<.1?null:t>0?L1:R1,r=e.latest.diagnostics[0]??null,o=yr(e.latest.usagePercent),i=yr(e.peak.usagePercent),a=()=>{zm(e.latest.logId)};return s.jsxs("div",{className:"grid gap-x-4 gap-y-2 border-t border-white/10 py-2 first:border-t-0 lg:grid-cols-[minmax(180px,1fr)_minmax(260px,1fr)_minmax(260px,1.4fr)]",children:[s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("button",{type:"button",onClick:a,className:"min-w-0 truncate rounded-sm text-left font-mono font-semibold text-foreground transition-colors hover:text-cyan-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1",title:`Open latest Context for ${e.model}`,children:e.model}),s.jsx("span",{className:ce("inline-flex h-5 shrink-0 items-center rounded border px-1.5 font-mono text-[10px]",JR(e.latest.health.level)),children:YR(e.latest.health.level)})]}),s.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-muted-foreground",children:[s.jsx("span",{children:GR(e.requestCount)}),s.jsx("span",{children:HR(e)})]})]}),s.jsxs("div",{className:"min-w-0 space-y-2 text-xs",children:[s.jsx(sI,{latestPercent:e.latest.usagePercent,peakPercent:e.peak.usagePercent,risk:e.latest.riskLevel,onOpenContext:a}),s.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Latest"}),s.jsx("div",{className:ce("mt-0.5 font-mono",zu(e.latest.riskLevel)),children:o}),s.jsx(Lu,{label:"Log",logId:e.latest.logId})]}),s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Peak"}),s.jsx("div",{className:ce("mt-0.5 font-mono",zu(e.peak.riskLevel)),children:i}),s.jsx(Lu,{label:"Log",logId:e.peak.logId})]}),s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Trend"}),s.jsxs("div",{className:"mt-0.5 flex items-center gap-1 font-mono text-foreground",children:[n!==null&&s.jsx(n,{className:ce("size-3",t!==null&&t>0?"text-amber-300":"text-cyan-300")}),BR(t)]}),s.jsx("div",{className:"h-5","aria-hidden":"true"})]})]})]}),s.jsxs("div",{className:"min-w-0 space-y-1.5",children:[s.jsx(LA,{segments:e.latest.roleSegments,totalTokens:e.latest.roleTotalTokens,showLabels:!1}),s.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-muted-foreground",children:[s.jsxs("span",{className:"font-mono",children:["~",$e(e.latest.estimatedInputTokens)," input"]}),e.latest.windowUsedTokens!==null&&s.jsxs("span",{className:"font-mono",children:["~",$e(e.latest.windowUsedTokens)," used"]}),r!==null&&s.jsx("span",{className:"truncate",children:r})]})]})]})}function iI({summary:e}){return e.models.length===0?null:s.jsxs("div",{className:"mt-3 border-t border-white/10 pt-2",children:[s.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[s.jsx("div",{className:"text-[11px] font-semibold uppercase tracking-normal text-muted-foreground",children:"Session Context"}),s.jsxs("div",{className:"font-mono text-[10px] text-muted-foreground",children:[e.models.length," model",e.models.length===1?"":"s"]})]}),s.jsx("div",{className:"max-h-52 overflow-y-auto pr-1",children:e.models.map(t=>s.jsx(oI,{summary:t},t.model))})]})}function aI(e){const t=e.models.filter(r=>r.latest.health.level==="risk").length;if(t>0)return`${t} risk`;const n=e.models.filter(r=>r.latest.health.level==="optimizable").length;return n>0?`${n} optimizable`:`${e.models.length} model${e.models.length===1?"":"s"}`}function lI({label:e,logs:t,totalIn:n,totalOut:r,timeDisplayFormat:o,contextSummary:i,showBackLink:a}){const[l,c]=p.useState(!1),[u,d]=p.useState(!1),f=p.useMemo(()=>Rm(t,o),[t,o]),m=p.useMemo(()=>OR(t),[t]),h=p.useMemo(()=>aI(i),[i]),v=p.useCallback(()=>{Zt(window.location.href).then(g=>{g&&(c(!0),setTimeout(()=>c(!1),2e3))})},[]);return s.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] px-3 py-2 text-xs",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a&&s.jsx("a",{href:"/",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground","aria-label":"Back to all sessions",title:"Back to all sessions",children:s.jsx(P1,{className:"size-3.5"})}),s.jsxs("div",{className:"min-w-[180px] flex-1",children:[s.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[s.jsx("span",{className:"font-mono font-semibold text-purple-400/90 truncate",title:e,children:Xt(e)}),m!==null&&s.jsx("span",{className:"font-mono text-muted-foreground truncate max-w-[220px]",title:m,children:m})]}),s.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[s.jsxs("span",{children:[t.length," request",t.length!==1?"s":""]}),f!==null&&s.jsx("span",{children:f}),(n>0||r>0)&&s.jsxs("span",{className:"font-mono",children:[$e(n)," in / ",$e(r)," out"]})]})]}),i.models.length>0&&s.jsxs("button",{type:"button",onClick:()=>d(g=>!g),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md px-2.5 font-mono text-[11px] text-muted-foreground transition-colors hover:text-foreground","aria-expanded":u,title:u?"Hide context details":"Show context details",children:[s.jsx("span",{children:h}),u?s.jsx(Ia,{className:"size-3.5"}):s.jsx(ot,{className:"size-3.5"})]}),s.jsx("button",{type:"button",onClick:v,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground","aria-label":l?"Copied session link":"Copy session link",title:l?"Copied session link":"Copy session link",children:l?s.jsx(Ke,{className:"size-3.5"}):s.jsx(Ct,{className:"size-3.5"})})]}),u&&s.jsx(iI,{summary:i})]})}function cI({logs:e,sessions:t,models:n,selectedSession:r,selectedModel:o,onSessionChange:i,onModelChange:a,onClearAll:l,onClearGroup:c,onNotify:u,onImportLogs:d,viewMode:f,captureMode:m,strip:h,slowResponseThresholdSeconds:v,timeDisplayFormat:g,isLoading:x=!1,pagination:b,sessionMemberships:y=[],hideSessionFilter:_=!1,pinnedSessionId:j}){const{totalIn:S,totalOut:T}=p.useMemo(()=>Eu(e),[e]),{providers:N}=pf(),[R,I]=p.useState(null),[O,K]=p.useState(null),[A,$]=p.useState(!1),[k,Z]=p.useState(null),[V,U]=p.useState(null),[L,W]=p.useState(null),[ne,B]=p.useState("hidden"),F=p.useRef(null),ue=p.useRef(null),se=p.useRef(null);RA(F,ue,{pageWide:!0}),p.useEffect(()=>{const X=50+Ar.length*400,de=setTimeout(()=>B("playing"),50),fe=setTimeout(()=>B("done"),X);return()=>{clearTimeout(de),clearTimeout(fe)}},[]),p.useEffect(()=>{if(j===void 0){document.title="Agent Inspector";return}const P=e.length===1?"1 req":`${e.length} req`;document.title=`${Xt(j)} - ${P} - Agent Inspector`},[e.length,j]);const oe=p.useCallback(async P=>{I(P),K(null);try{const M=await uw(e,P);M.ok||(u!==void 0?u({message:M.message,tone:"error"}):K(M.message))}finally{I(null)}},[e,u]),_e=p.useCallback(()=>{se.current?.click()},[]),ae=p.useCallback(P=>{const M=P.currentTarget.files?.[0];P.currentTarget.value="",!(M===void 0||d===void 0)&&($(!0),U(null),Z(null),d(M).then(X=>{const de=X.skipped>0?`, skipped ${String(X.skipped)}`:"",fe=`Imported ${String(X.imported)} logs as ${X.sessionId}${de}.`;u!==void 0?u({message:fe,tone:"success"}):Z(fe)}).catch(X=>{const de=X instanceof Error?X.message:"Failed to import logs";u!==void 0?u({message:de,tone:"error"}):U(de)}).finally(()=>{$(!1)}))},[d,u]);p.useEffect(()=>{W(null)},[r,o]);const ge=p.useCallback(()=>{W(null)},[]),xe=p.useMemo(()=>kN(e),[e]),be=p.useMemo(()=>RR(xe),[xe]),te=p.useMemo(()=>FR({pinnedSessionId:j,selectedSession:r,sessions:t,logs:e}),[e,j,r,t]),le=te?.logs??[],me=te!==null&&le.length>0,{totalIn:w,totalOut:J}=p.useMemo(()=>Eu(le),[le]),H=p.useMemo(()=>AR(le,N),[le,N]),z=p.useMemo(()=>hA(xe),[xe]),E=p.useMemo(()=>NT(xe),[xe]),D=zR(m,e.length),ee=j!==void 0,re=me&&te!==null?Xt(te.label):r==="__all__"?"All sessions":Xt(r),q=p.useMemo(()=>LR({logs:e,isLoading:x,timeDisplayFormat:g,slowResponseThresholdSeconds:v}),[x,e,v,g]),ie=p.useCallback(P=>{const M=E.get(P.id);M!==void 0&&W([M,P])},[E]);return s.jsxs("div",{className:"bg-background min-h-screen w-full text-foreground",children:[s.jsxs("div",{className:"grid min-h-screen w-full grid-cols-1 lg:grid-cols-[340px_minmax(0,1fr)] xl:grid-cols-[360px_minmax(0,1fr)]",children:[s.jsx("aside",{className:"bg-background border-b lg:sticky lg:top-0 lg:h-screen lg:overflow-y-auto lg:border-b-0 lg:border-r",children:s.jsxs("div",{className:"space-y-4 p-4",children:[s.jsx(rI,{compact:!0,crabEntrancePhase:ne}),s.jsx(bi,{label:"Session",children:s.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[s.jsx(vi,{label:"Requests",value:e.length}),s.jsx(vi,{label:"Input",value:$e(me?w:S)}),s.jsx(vi,{label:"Output",value:$e(me?J:T)})]})}),s.jsx(bi,{label:"Workspace",children:s.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2",children:[s.jsx("div",{className:"truncate font-mono text-xs font-semibold text-cyan-100",title:re,children:re}),s.jsx("div",{className:"mt-1 text-[11px] text-muted-foreground",children:ee?"Session workspace":"Live workspace"})]})}),me&&te!==null&&s.jsx(lI,{label:te.label,logs:le,totalIn:w,totalOut:J,timeDisplayFormat:g,contextSummary:H,showBackLink:te.showBackLink}),me&&j!==void 0&&y.length>0&&s.jsx(Au,{memberships:y}),s.jsx(bi,{label:"Filters",children:s.jsxs("div",{className:"space-y-2",children:[!_&&s.jsxs(Ys,{value:r,onValueChange:i,children:[s.jsx(Qs,{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-9 w-full text-xs",children:s.jsx(Xs,{placeholder:"All sessions"})}),s.jsxs(eo,{children:[s.jsx(Tt,{value:"__all__",children:"All sessions"}),t.map(P=>s.jsx(Tt,{value:P,children:Xt(P)},P))]})]}),s.jsxs(Ys,{value:o,onValueChange:a,children:[s.jsx(Qs,{className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-9 w-full text-xs",children:s.jsx(Xs,{placeholder:"All models"})}),s.jsxs(eo,{children:[s.jsx(Tt,{value:"__all__",children:"All models"}),n.map(P=>s.jsx(Tt,{value:P,children:P},P))]})]})]})})]})}),s.jsxs("main",{className:"min-w-0",children:[s.jsxs("div",{className:"border border-border bg-background/95 shadow-sm sticky top-0 z-30 border-b px-4 py-3 lg:px-5",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s.jsxs("div",{className:"min-w-[180px] flex-1",children:[s.jsx("div",{className:"text-sm font-semibold text-foreground",children:"Logs"}),s.jsx("div",{className:"mt-0.5 font-mono text-[11px] text-muted-foreground",children:re})]}),d!==void 0&&s.jsxs(s.Fragment,{children:[s.jsx("input",{ref:se,type:"file",accept:".zip,.json,.jsonl,application/zip,application/json",className:"hidden",onChange:ae}),s.jsx("button",{type:"button",onClick:_e,disabled:A,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Import Agent Inspector export",children:A?s.jsx("span",{children:"Importing..."}):s.jsxs(s.Fragment,{children:[s.jsx(Kd,{className:"size-3.5"}),s.jsx("span",{children:"Import"})]})})]}),D.redacted&&s.jsx("button",{type:"button",onClick:()=>{oe("redacted")},disabled:R!==null,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export redacted logs as JSON ZIP",children:R==="redacted"?s.jsx("span",{children:"Exporting..."}):s.jsxs(s.Fragment,{children:[s.jsx(po,{className:"size-3.5"}),s.jsx("span",{children:"Export"})]})}),D.raw&&s.jsx("button",{type:"button",onClick:()=>{oe("raw")},disabled:R!==null,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export raw logs without redaction",children:R==="raw"?s.jsx("span",{children:"Exporting..."}):s.jsxs(s.Fragment,{children:[s.jsx(zy,{className:"size-3.5"}),s.jsx("span",{children:"Raw"})]})}),s.jsxs("button",{type:"button",onClick:l,className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground transition-colors hover:text-foreground",title:"Clear all logs",children:[s.jsx(Kn,{className:"size-3.5"}),s.jsx("span",{children:"Clear"})]})]}),s.jsx(Ru,{logs:e,pagination:b,embedded:!0}),u===void 0&&O!==null&&s.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:O}),u===void 0&&V!==null&&s.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:V}),u===void 0&&k!==null&&V===null&&s.jsx("div",{className:"mt-2 rounded-md border border-cyan-400/25 bg-cyan-500/10 px-3 py-2 text-xs text-cyan-100",children:k})]}),s.jsxs("div",{className:"px-4 py-4 lg:px-5",children:[s.jsx($R,{stats:q}),e.length===0?r!=="__all__"?s.jsx("div",{className:"py-16 text-center text-muted-foreground",children:s.jsxs("div",{className:"border border-border bg-card shadow-sm mx-auto max-w-xl space-y-4 rounded-[8px] px-4 py-8",children:[s.jsx("p",{className:"text-sm font-medium",children:x?"Loading session data...":"Session not found"}),s.jsx("p",{className:"inline-block max-w-full rounded bg-muted px-3 py-1 font-mono text-xs break-all",children:Xt(r)}),y.length>0&&s.jsx("div",{className:"text-left",children:s.jsx(Au,{memberships:y})}),!x&&s.jsxs("p",{className:"text-xs",children:["This session may have been cleared or never existed."," ",_?s.jsx("a",{href:"/",className:"underline transition-colors hover:text-foreground",children:"Back to all sessions"}):s.jsx("button",{type:"button",onClick:()=>i("__all__"),className:"underline transition-colors hover:text-foreground",children:"Show all sessions"})]})]})}):s.jsx("div",{className:"py-16 text-center text-muted-foreground",children:s.jsxs("div",{className:"border border-border bg-card shadow-sm mx-auto max-w-2xl space-y-4 rounded-[8px] px-4 py-8",children:[s.jsx("p",{className:"text-sm",children:"No requests captured yet."}),s.jsxs("div",{className:"flex flex-col items-center gap-2",children:[s.jsx(Ou,{command:"ANTHROPIC_BASE_URL=http://localhost:25947/proxy <your-tool>"}),s.jsx(Ou,{command:"OPENAI_BASE_URL=http://localhost:25947/proxy <your-tool>"})]}),s.jsx("p",{className:"mx-auto max-w-xl text-xs leading-relaxed text-muted-foreground",children:"Container note: if your AI tool runs in a different container or host than Agent Inspector, replace localhost with an address reachable from that tool and verify the network/firewall path."})]})}):s.jsxs("div",{ref:ue,tabIndex:0,className:"flex flex-col gap-2 focus:outline-none",children:[s.jsx("div",{ref:F,children:s.jsx(jA,{groups:xe,viewMode:f,strip:h,slowResponseThresholdSeconds:v,cacheTrends:z,onCompareWithPrevious:ie,comparisonPredecessors:E,onClearGroup:c,defaultExpanded:xe.length===1,timeDisplayFormat:g})}),s.jsx("div",{className:"mt-3",children:s.jsx(Ru,{logs:e,pagination:b})})]})]})]})]}),L!==null&&s.jsx(p.Suspense,{fallback:null,children:s.jsx(p3,{left:L[0],right:L[1],leftDisplayNumber:Tu(L[0],be),rightDisplayNumber:Tu(L[1],be),onClose:ge})})]})}const uI=3e3;function dI(e,t){return{id:(e?.id??0)+1,message:t.message,tone:t.tone??"error"}}function fI(){const[e,t]=p.useState(null),n=p.useCallback(o=>{t(i=>dI(i,o))},[]),r=p.useCallback(()=>{t(null)},[]);return p.useEffect(()=>{if(e===null)return;const o=window.setTimeout(()=>{t(null)},uI);return()=>{window.clearTimeout(o)}},[e]),{notice:e,showToast:n,dismissToast:r}}function pI({notice:e,onDismiss:t}){if(e===null)return null;const n=e.tone==="error",r=n?Qt:Ci;return s.jsx("div",{"aria-atomic":"true","aria-live":"polite",className:"pointer-events-none fixed top-4 right-4 z-[100] w-[min(calc(100vw-2rem),26rem)]",role:"status",children:s.jsxs("div",{className:ce("pointer-events-auto flex items-start gap-2 rounded-md border px-3 py-2 text-sm shadow-[0_18px_50px_rgba(0,0,0,0.45)] backdrop-blur",n?"border-red-400/30 bg-[#16090b]/95 text-red-100":"border-cyan-300/25 bg-[#071318]/95 text-cyan-100"),children:[s.jsx(r,{className:ce("mt-0.5 size-4 shrink-0",n?"text-red-300":"text-cyan-200")}),s.jsx("div",{className:"min-w-0 flex-1 break-words leading-5",children:e.message}),s.jsx("button",{type:"button",className:"inline-flex size-6 shrink-0 items-center justify-center rounded-md text-current/70 transition-colors hover:bg-white/10 hover:text-current","aria-label":"Dismiss notification",onClick:t,children:s.jsx(mo,{className:"size-3.5"})})]},e.id)})}const hI=Ot([Y({type:Te("init"),logs:pe(_r)}),Y({type:Te("update"),log:_r})]),mI=Y({logs:pe(_r),total:G().int().nonnegative(),limit:G().int().positive(),hasOlder:De(),hasNewer:De(),oldestLogId:G().int().positive().nullable(),newestLogId:G().int().positive().nullable()});function gI(e,t){const n=[];for(const r of e)for(const o of r.members)o.sessionId===t&&n.push({groupId:r.id,groupTitle:r.title,groupKind:r.kind,groupStatus:r.status,groupTask:r.task,groupProject:r.project,groupEvidence:r.evidence,member:o});return n}function xI(e){const t=new Set;for(const n of e)n.sessionId!==null&&n.sessionId!==""&&t.add(n.sessionId);return[...t]}function bI(e){const t=new Set;for(const n of e)n.model!==null&&n.model!==""&&t.add(n.model);return[...t]}function vI(e,t,n){return t==="__all__"&&n==="__all__"?e:e.filter(r=>!(t!=="__all__"&&r.sessionId!==t||n!=="__all__"&&r.model!==n))}const yI=100,wI=12,kI=1800,Du=500,Om=100;function _I(e){const t=new URLSearchParams;e!==void 0&&(t.set("sessionId",e),t.set("compact","1"));const n=t.toString();return n.length>0?`/api/logs/stream?${n}`:"/api/logs/stream"}function jI(e,t){const n=new URLSearchParams({cursor:"1",compact:"1",limit:String(Om),sessionId:e});switch(t.kind){case"oldest":n.set("anchor","oldest");break;case"older":n.set("beforeLogId",String(t.beforeLogId));break;case"newer":n.set("afterLogId",String(t.afterLogId));break}return`/api/logs?${n.toString()}`}function mr(e){const t=new Map;for(let n=0;n<e.length;n++){const r=e[n];r!==void 0&&t.set(r.id,n)}return t}function yi(e){return e.length<=Du?e:e.slice(e.length-Du)}function EI({initialSessionId:e}={}){const[t,n]=p.useState([]),[r,o]=p.useState(e??"__all__"),[i,a]=p.useState("__all__"),{notice:l,showToast:c,dismissToast:u}=fI(),[d,f]=p.useState(e===void 0),[m,h]=p.useState(null),[v,g]=p.useState(e!==void 0),[x,b]=p.useState([]),[,y]=p.useTransition(),_=p.useRef(null),j=p.useRef(null),S=p.useRef(null),T=p.useRef(0),N=p.useRef(new Map),R=p.useRef([]),I=p.useRef(null),O=p.useCallback(te=>{c({message:te,tone:"error"})},[c]),K=p.useMemo(()=>vI(t,r,i),[t,r,i]),A=p.useMemo(()=>xI(t),[t]),$=p.useMemo(()=>bI(t),[t]),k=p.useCallback(()=>{I.current=null;const te=R.current;R.current=[],te.length!==0&&y(()=>{n(le=>{const me=[...le];for(const J of te){const H=N.current.get(J.id);if(H!==void 0&&me[H]?.id===J.id){me[H]=J;continue}const z=me.findIndex(E=>E.id===J.id);if(z>=0){me[z]=J;continue}me.push(J)}const w=yi(me);return N.current=mr(w),w})})},[y]),Z=p.useCallback(te=>{R.current.push(te),I.current===null&&(I.current=setTimeout(k,yI))},[k]),V=p.useCallback(()=>{_.current&&_.current.close(),f(!1);const te=new EventSource(_I(e));_.current=te,te.onmessage=le=>{try{const me=String(le.data),w=JSON.parse(me),J=hI.safeParse(w);if(!J.success){O("Failed to parse SSE data");return}const H=J.data;if(H.type==="init"){I.current!==null&&(clearTimeout(I.current),I.current=null),R.current=[];const z=yi(H.logs);N.current=mr(z),n(z),f(!0),u()}else H.type==="update"&&Z(H.log)}catch{O("Failed to parse SSE data")}},te.onerror=()=>{O("SSE connection lost, reconnecting..."),f(!0),te.close(),j.current!==null&&clearTimeout(j.current),j.current=setTimeout(V,3e3)}},[u,e,Z,O]),U=p.useCallback(te=>{if(e===void 0)return;const le=T.current+1;T.current=le,g(!0),u(),nn(jI(e,te),mI).then(me=>{if(T.current!==le)return;const w=me.logs;N.current=mr(w),n(w),h(me),o(e),g(!1),u()}).catch(me=>{T.current===le&&(n([]),h(null),g(!1),O(me instanceof Error?me.message:"Failed to load session logs"))})},[u,e,O]);p.useEffect(()=>{if(e===void 0){b([]);return}let te=!1;return fetch("/api/groups").then(async le=>{if(!le.ok)return null;const me=await le.json(),w=Bd.safeParse(me);return w.success?w.data.groups:null}).then(le=>{te||le===null||b(gI(le,e))}).catch(()=>{te||b([])}),()=>{te=!0}},[e]),p.useEffect(()=>{e!==void 0&&U({kind:"newest"})},[e,U]),p.useEffect(()=>{if(e===void 0)return V(),()=>{_.current&&(_.current.close(),_.current=null),j.current!==null&&(clearTimeout(j.current),j.current=null),I.current!==null&&(clearTimeout(I.current),I.current=null)}},[V,e]),p.useEffect(()=>{const te=window.location.hash;if(!te.startsWith("#log-")||S.current===te)return;const le=te.slice(1),me=Number(le.replace(/^log-/,""));Number.isInteger(me)&&me>0&&Vs({logId:me,tab:"request"});let w=!1,J=0,H=null,z=null;const E=()=>{if(w)return;const D=document.getElementById(le);if(D!==null){S.current=te,D.scrollIntoView({block:"center",behavior:"smooth"}),D instanceof HTMLElement&&(H=D,D.setAttribute("data-deep-link-highlight","true"),z=window.setTimeout(()=>{D.removeAttribute("data-deep-link-highlight")},kI),D.focus({preventScroll:!0}),D.getAttribute("data-nav-action")==="expand"&&D.click());return}J+=1,J<wI&&window.setTimeout(E,100)};return E(),()=>{w=!0,z!==null&&window.clearTimeout(z),H!==null&&H.removeAttribute("data-deep-link-highlight")}},[K.length]);const L=p.useCallback(()=>{e!==void 0&&t.length===0||(async()=>{try{const te=e===void 0?void 0:JSON.stringify({ids:t.map(me=>me.id)});if(!(await fetch("/api/logs",{method:"DELETE",...te===void 0?{}:{headers:{"Content-Type":"application/json"},body:te}})).ok){O("Failed to clear logs");return}N.current.clear(),n([]),u()}catch(te){O(te instanceof Error?te.message:"Unknown error clearing logs")}})()},[t,u,e,O]),W=p.useCallback(te=>{te.length!==0&&(async()=>{try{if(!(await fetch("/api/logs",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:te})})).ok){O("Failed to clear group");return}const me=new Set(te);n(w=>{const J=w.filter(H=>!me.has(H.id));return N.current=mr(J),J}),u()}catch(le){O(le instanceof Error?le.message:"Unknown error clearing group")}})()},[u,O]),ne=p.useCallback(async te=>{const le=new FormData;le.set("file",te);const me=await nn("/api/logs/import",k1,{method:"POST",body:le});return n(w=>{const J=new Set(me.logs.map(E=>E.id)),H=[...w.filter(E=>!J.has(E.id)),...me.logs].sort((E,D)=>E.id-D.id),z=yi(H);return N.current=mr(z),z}),o(me.sessionId),a("__all__"),h(null),u(),me},[u]),{strip:B,captureMode:F,slowResponseThresholdSeconds:ue,timeDisplayFormat:se}=Ra(),oe=F,_e=p.useCallback(()=>{U({kind:"oldest"})},[U]),ae=p.useCallback(()=>{U({kind:"newest"})},[U]),ge=p.useCallback(()=>{const te=t[0],le=m?.oldestLogId??te?.id??null;le!==null&&U({kind:"older",beforeLogId:le})},[t,U,m]),xe=p.useCallback(()=>{const te=t[t.length-1],le=m?.newestLogId??te?.id??null;le!==null&&U({kind:"newer",afterLogId:le})},[t,U,m]),be=p.useMemo(()=>{if(e!==void 0)return{isLoading:v,total:m?.total??null,pageSize:m?.limit??Om,hasOlder:m?.hasOlder??!1,hasNewer:m?.hasNewer??!1,oldestLogId:m?.oldestLogId??null,newestLogId:m?.newestLogId??null,onOldest:_e,onOlder:ge,onNewer:xe,onNewest:ae}},[e,ae,xe,ge,_e,m,v]);return s.jsxs(s.Fragment,{children:[s.jsx(pI,{notice:l,onDismiss:u}),s.jsx(K2,{}),s.jsx(cI,{logs:K,sessions:A,models:$,selectedSession:r,selectedModel:i,onSessionChange:o,onModelChange:a,onClearAll:L,onClearGroup:W,onNotify:c,onImportLogs:e===void 0?ne:void 0,isLoading:e===void 0?!d:v,pagination:be,sessionMemberships:x,viewMode:oe,captureMode:F,strip:B,slowResponseThresholdSeconds:ue,timeDisplayFormat:se,hideSessionFilter:e!==void 0,pinnedSessionId:e})]})}export{H3 as $,G as A,Fe as B,ky as C,Or as D,pe as E,Vs as F,De as G,C as H,_r as I,yR as J,Yy as K,b3 as L,s2 as M,zA as N,IA as O,EI as P,ff as Q,v2 as R,LA as S,qh as T,TI as U,ot as V,Ae as W,mo as X,W3 as Y,NI as Z,Hd as _,wN as a,Z3 as a0,La as a1,Xi as a2,Ks as a3,Sr as a4,ke as a5,Qt as a6,sk as a7,mt as a8,d3 as a9,X1 as aa,ce as b,he as c,Ni as d,qd as e,$e as f,Fh as g,xt as h,Ke as i,Ct as j,Zt as k,Pr as l,Mr as m,Lr as n,g2 as o,Kh as p,ft as q,Tr as r,pt as s,Ce as t,pf as u,Ye as v,Pe as w,Me as x,Le as y,Y as z};
|