@tonyclaw/agent-inspector 3.0.20 → 3.0.21
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-CV7rBBty.js → CompareDrawer-BhQ8UZBt.js} +1 -1
- package/.output/public/assets/{ProxyViewerContainer-CqRfBWJ3.js → ProxyViewerContainer-GpMPUmJQ.js} +6 -6
- package/.output/public/assets/{ReplayDialog-yDeF-z9y.js → ReplayDialog-CqUvVWFk.js} +1 -1
- package/.output/public/assets/{RequestAnatomy-BXxKNdgk.js → RequestAnatomy-DU8c0Ysb.js} +1 -1
- package/.output/public/assets/{ResponseView-BIYNgUNB.js → ResponseView-Ce2JAKBf.js} +2 -2
- package/.output/public/assets/{StreamingChunkSequence-C1faiChu.js → StreamingChunkSequence-DvMcBgID.js} +1 -1
- package/.output/public/assets/{_sessionId-B34PrfCQ.js → _sessionId-BeinzuQZ.js} +1 -1
- package/.output/public/assets/{index-BLwqIxup.js → index-BMVjOrho.js} +2 -2
- package/.output/public/assets/{index-DT476lno.js → index-Cu0STzXy.js} +1 -1
- package/.output/public/assets/{index-B3YOj8-_.css → index-D2iiZaNM.css} +1 -1
- package/.output/public/assets/{index-DOspyaW6.js → index-DENY-gse.js} +1 -1
- package/.output/public/assets/{json-viewer-C1S08J_2.js → json-viewer-Bjmt-Mdw.js} +1 -1
- package/.output/server/{_sessionId-CmoBbtKT.mjs → _sessionId-DiAGJ75k.mjs} +2 -2
- package/.output/server/_ssr/{CompareDrawer-BsXnVK4e.mjs → CompareDrawer-DF4wc8NT.mjs} +2 -2
- package/.output/server/_ssr/{ProxyViewerContainer-D-_7pyfx.mjs → ProxyViewerContainer-BupCsVk6.mjs} +10 -19
- package/.output/server/_ssr/{ReplayDialog-deDQA2M5.mjs → ReplayDialog-BIzO8gkO.mjs} +3 -3
- package/.output/server/_ssr/{RequestAnatomy-CX-cCRdX.mjs → RequestAnatomy-DR7XdTUQ.mjs} +2 -2
- package/.output/server/_ssr/{ResponseView-D0LJR1qj.mjs → ResponseView-DoadSJYH.mjs} +2 -2
- package/.output/server/_ssr/{StreamingChunkSequence-CJRECetE.mjs → StreamingChunkSequence-KPnZNTpB.mjs} +2 -2
- package/.output/server/_ssr/{index-CYWOXS4d.mjs → index-uv5HMw8-.mjs} +2 -2
- package/.output/server/_ssr/index.mjs +2 -2
- package/.output/server/_ssr/{json-viewer-CCneYiCn.mjs → json-viewer-JNF8ttGZ.mjs} +2 -2
- package/.output/server/_ssr/{router-D-PAN8IK.mjs → router-07KkEFRt.mjs} +4 -4
- package/.output/server/{_tanstack-start-manifest_v-CVZ9yh4R.mjs → _tanstack-start-manifest_v-CLXgj2ke.mjs} +1 -1
- package/.output/server/index.mjs +75 -75
- package/package.json +1 -1
- package/src/components/providers/ProviderCard.tsx +5 -13
package/.output/public/assets/{ProxyViewerContainer-CqRfBWJ3.js → ProxyViewerContainer-GpMPUmJQ.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CompareDrawer-
|
|
2
|
-
import{u as Zt,a as tf,r as p,j as r,c as Cr,g as kg,b as Zo,d as Ms,e as Vn,f as nf,_ as Zn}from"./index-BLwqIxup.js";var zc;function ne(e,t,n){function s(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,f=Object.keys(u);for(let d=0;d<f.length;d++){const m=f[d];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;s(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const f of u._zod.deferred)f();return u}return Object.defineProperty(a,"init",{value:s}),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 xs extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class sf extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}(zc=globalThis).__zod_globalConfig??(zc.__zod_globalConfig={});const ul=globalThis.__zod_globalConfig;function on(e){return ul}function rf(e){const t=Object.values(e).filter(s=>typeof s=="number");return Object.entries(e).filter(([s,o])=>t.indexOf(+s)===-1).map(([s,o])=>o)}function ma(e,t){return typeof t=="bigint"?t.toString():t}function qo(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function dl(e){return e==null}function fl(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function jg(e,t){const n=e/t,s=Math.round(n),o=Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-s)<o?0:n-s}const Pc=Symbol("evaluating");function Me(e,t,n){let s;Object.defineProperty(e,t,{get(){if(s!==Pc)return s===void 0&&(s=Pc,s=n()),s},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function qn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Cn(...e){const t={};for(const n of e){const s=Object.getOwnPropertyDescriptors(n);Object.assign(t,s)}return Object.defineProperties({},t)}function Oc(e){return JSON.stringify(e)}function Sg(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const of="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function or(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Cg=qo(()=>{if(ul.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function ks(e){if(or(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(or(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function af(e){return ks(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const Ng=new Set(["string","number","symbol"]);function js(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Nn(e,t,n){const s=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(s._zod.parent=e),s}function Se(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 Tg(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Eg={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 Ag(e,t){const n=e._zod.def,s=n.checks;if(s&&s.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=Cn(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 qn(this,"shape",a),a},checks:[]});return Nn(e,i)}function Ig(e,t){const n=e._zod.def,s=n.checks;if(s&&s.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=Cn(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 qn(this,"shape",a),a},checks:[]});return Nn(e,i)}function Rg(e,t){if(!ks(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=Cn(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return qn(this,"shape",i),i}});return Nn(e,o)}function zg(e,t){if(!ks(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n=Cn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t};return qn(this,"shape",s),s}});return Nn(e,n)}function Pg(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const n=Cn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t._zod.def.shape};return qn(this,"shape",s),s},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Nn(e,n)}function Og(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=Cn(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 qn(this,"shape",c),c},checks:[]});return Nn(t,a)}function Mg(e,t,n){const s=Cn(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 qn(this,"shape",i),i}});return Nn(t,s)}function hs(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 Lg(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function ms(e,t){return t.map(n=>{var s;return(s=n).path??(s.path=[]),n.path.unshift(e),n})}function Nr(e){return typeof e=="string"?e:e?.message}function an(e,t,n){const s=e.message?e.message:Nr(e.inst?._zod.def?.error?.(e))??Nr(t?.error?.(e))??Nr(n.customError?.(e))??Nr(n.localeError?.(e))??"Invalid input",{inst:o,continue:i,input:a,...l}=e;return l.path??(l.path=[]),l.message=s,t?.reportInput&&(l.input=a),l}function pl(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function ir(...e){const[t,n,s]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:s}:{...t}}const lf=(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,ma,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},cf=ne("$ZodError",lf),uf=ne("$ZodError",lf,{Parent:Error});function Dg(e,t=n=>n.message){const n={},s=[];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))):s.push(t(o));return{formErrors:s,fieldErrors:n}}function $g(e,t=n=>n.message){const n={_errors:[]},s=(o,i=[])=>{for(const a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(l=>s({issues:l},[...i,...a.path]));else if(a.code==="invalid_key")s({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")s({issues:a.issues},[...i,...a.path]);else{const l=[...i,...a.path];if(l.length===0)n._errors.push(t(a));else{let c=n,u=0;for(;u<l.length;){const f=l[u];u===l.length-1?(c[f]=c[f]||{_errors:[]},c[f]._errors.push(t(a))):c[f]=c[f]||{_errors:[]},c=c[f],u++}}}};return s(e),n}const hl=e=>(t,n,s,o)=>{const i=s?{...s,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new xs;if(a.issues.length){const l=new(o?.Err??e)(a.issues.map(c=>an(c,i,on())));throw of(l,o?.callee),l}return a.value},ml=e=>async(t,n,s,o)=>{const i=s?{...s,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=>an(c,i,on())));throw of(l,o?.callee),l}return a.value},Go=e=>(t,n,s)=>{const o=s?{...s,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new xs;return i.issues.length?{success:!1,error:new(e??cf)(i.issues.map(a=>an(a,o,on())))}:{success:!0,data:i.value}},Fg=Go(uf),Ko=e=>async(t,n,s)=>{const o=s?{...s,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=>an(a,o,on())))}:{success:!0,data:i.value}},Ug=Ko(uf),Bg=e=>(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return hl(e)(t,n,o)},Wg=e=>(t,n,s)=>hl(e)(t,n,s),Hg=e=>async(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return ml(e)(t,n,o)},Vg=e=>async(t,n,s)=>ml(e)(t,n,s),Zg=e=>(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return Go(e)(t,n,o)},qg=e=>(t,n,s)=>Go(e)(t,n,s),Gg=e=>async(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return Ko(e)(t,n,o)},Kg=e=>async(t,n,s)=>Ko(e)(t,n,s),Jg=/^[cC][0-9a-z]{6,}$/,Yg=/^[0-9a-z]+$/,Xg=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Qg=/^[0-9a-vA-V]{20}$/,ex=/^[A-Za-z0-9]{27}$/,tx=/^[a-zA-Z0-9_-]{21}$/,nx=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,sx=/^([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})$/,Mc=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)$/,rx=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ox="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ix(){return new RegExp(ox,"u")}const ax=/^(?:(?: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])$/,lx=/^(([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}|:))$/,cx=/^((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])$/,ux=/^(([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])$/,dx=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,df=/^[A-Za-z0-9_-]*$/,fx=/^https?$/,px=/^\+[1-9]\d{6,14}$/,ff="(?:(?:\\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])))",hx=new RegExp(`^${ff}$`);function pf(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 mx(e){return new RegExp(`^${pf(e)}$`)}function gx(e){const t=pf({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const s=`${t}(?:${n.join("|")})`;return new RegExp(`^${ff}T(?:${s})$`)}const xx=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},bx=/^-?\d+$/,hf=/^-?\d+(?:\.\d+)?$/,vx=/^(?:true|false)$/i,yx=/^null$/i,wx=/^[^A-Z]*$/,_x=/^[^a-z]*$/,mt=ne("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),mf={number:"number",bigint:"bigint",object:"date"},gf=ne("$ZodCheckLessThan",(e,t)=>{mt.init(e,t);const n=mf[typeof t.value];e._zod.onattach.push(s=>{const o=s._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=s=>{(t.inclusive?s.value<=t.value:s.value<t.value)||s.issues.push({origin:n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:s.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),xf=ne("$ZodCheckGreaterThan",(e,t)=>{mt.init(e,t);const n=mf[typeof t.value];e._zod.onattach.push(s=>{const o=s._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=s=>{(t.inclusive?s.value>=t.value:s.value>t.value)||s.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:s.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),kx=ne("$ZodCheckMultipleOf",(e,t)=>{mt.init(e,t),e._zod.onattach.push(n=>{var s;(s=n._zod.bag).multipleOf??(s.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):jg(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})}}),jx=ne("$ZodCheckNumberFormat",(e,t)=>{mt.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),s=n?"int":"number",[o,i]=Eg[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=bx)}),e._zod.check=a=>{const l=a.value;if(n){if(!Number.isInteger(l)){a.issues.push({expected:s,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:s,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:s,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})}}),Sx=ne("$ZodCheckMaxLength",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(s._zod.bag.maximum=t.maximum)}),e._zod.check=s=>{const o=s.value;if(o.length<=t.maximum)return;const a=pl(o);s.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Cx=ne("$ZodCheckMinLength",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(s._zod.bag.minimum=t.minimum)}),e._zod.check=s=>{const o=s.value;if(o.length>=t.minimum)return;const a=pl(o);s.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Nx=ne("$ZodCheckLengthEquals",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=s=>{const o=s.value,i=o.length;if(i===t.length)return;const a=pl(o),l=i>t.length;s.issues.push({origin:a,...l?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:s.value,inst:e,continue:!t.abort})}}),Jo=ne("$ZodCheckStringFormat",(e,t)=>{var n,s;mt.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})}):(s=e._zod).check??(s.check=()=>{})}),Tx=ne("$ZodCheckRegex",(e,t)=>{Jo.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})}}),Ex=ne("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=wx),Jo.init(e,t)}),Ax=ne("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=_x),Jo.init(e,t)}),Ix=ne("$ZodCheckIncludes",(e,t)=>{mt.init(e,t);const n=js(t.includes),s=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=s,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(s)}),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})}}),Rx=ne("$ZodCheckStartsWith",(e,t)=>{mt.init(e,t);const n=new RegExp(`^${js(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(s=>{const o=s._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=s=>{s.value.startsWith(t.prefix)||s.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:s.value,inst:e,continue:!t.abort})}}),zx=ne("$ZodCheckEndsWith",(e,t)=>{mt.init(e,t);const n=new RegExp(`.*${js(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(s=>{const o=s._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=s=>{s.value.endsWith(t.suffix)||s.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:s.value,inst:e,continue:!t.abort})}}),Px=ne("$ZodCheckOverwrite",(e,t)=>{mt.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Ox{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 s=t.split(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CompareDrawer-BhQ8UZBt.js","assets/index-BMVjOrho.js","assets/ReplayDialog-CqUvVWFk.js","assets/ResponseView-Ce2JAKBf.js","assets/RequestAnatomy-DU8c0Ysb.js","assets/StreamingChunkSequence-DvMcBgID.js","assets/json-viewer-Bjmt-Mdw.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as Zt,a as tf,r as p,j as r,c as Cr,g as kg,b as Zo,d as Ms,e as Vn,f as nf,_ as Zn}from"./index-BMVjOrho.js";var zc;function ne(e,t,n){function s(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,f=Object.keys(u);for(let d=0;d<f.length;d++){const m=f[d];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;s(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const f of u._zod.deferred)f();return u}return Object.defineProperty(a,"init",{value:s}),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 xs extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class sf extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}(zc=globalThis).__zod_globalConfig??(zc.__zod_globalConfig={});const ul=globalThis.__zod_globalConfig;function on(e){return ul}function rf(e){const t=Object.values(e).filter(s=>typeof s=="number");return Object.entries(e).filter(([s,o])=>t.indexOf(+s)===-1).map(([s,o])=>o)}function ma(e,t){return typeof t=="bigint"?t.toString():t}function qo(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function dl(e){return e==null}function fl(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function jg(e,t){const n=e/t,s=Math.round(n),o=Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-s)<o?0:n-s}const Pc=Symbol("evaluating");function Me(e,t,n){let s;Object.defineProperty(e,t,{get(){if(s!==Pc)return s===void 0&&(s=Pc,s=n()),s},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function qn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Cn(...e){const t={};for(const n of e){const s=Object.getOwnPropertyDescriptors(n);Object.assign(t,s)}return Object.defineProperties({},t)}function Oc(e){return JSON.stringify(e)}function Sg(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const of="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function or(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Cg=qo(()=>{if(ul.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function ks(e){if(or(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(or(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function af(e){return ks(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const Ng=new Set(["string","number","symbol"]);function js(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Nn(e,t,n){const s=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(s._zod.parent=e),s}function Se(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 Tg(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Eg={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 Ag(e,t){const n=e._zod.def,s=n.checks;if(s&&s.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=Cn(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 qn(this,"shape",a),a},checks:[]});return Nn(e,i)}function Ig(e,t){const n=e._zod.def,s=n.checks;if(s&&s.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=Cn(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 qn(this,"shape",a),a},checks:[]});return Nn(e,i)}function Rg(e,t){if(!ks(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=Cn(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return qn(this,"shape",i),i}});return Nn(e,o)}function zg(e,t){if(!ks(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n=Cn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t};return qn(this,"shape",s),s}});return Nn(e,n)}function Pg(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const n=Cn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t._zod.def.shape};return qn(this,"shape",s),s},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Nn(e,n)}function Og(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=Cn(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 qn(this,"shape",c),c},checks:[]});return Nn(t,a)}function Mg(e,t,n){const s=Cn(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 qn(this,"shape",i),i}});return Nn(t,s)}function hs(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 Lg(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function ms(e,t){return t.map(n=>{var s;return(s=n).path??(s.path=[]),n.path.unshift(e),n})}function Nr(e){return typeof e=="string"?e:e?.message}function an(e,t,n){const s=e.message?e.message:Nr(e.inst?._zod.def?.error?.(e))??Nr(t?.error?.(e))??Nr(n.customError?.(e))??Nr(n.localeError?.(e))??"Invalid input",{inst:o,continue:i,input:a,...l}=e;return l.path??(l.path=[]),l.message=s,t?.reportInput&&(l.input=a),l}function pl(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function ir(...e){const[t,n,s]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:s}:{...t}}const lf=(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,ma,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},cf=ne("$ZodError",lf),uf=ne("$ZodError",lf,{Parent:Error});function Dg(e,t=n=>n.message){const n={},s=[];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))):s.push(t(o));return{formErrors:s,fieldErrors:n}}function $g(e,t=n=>n.message){const n={_errors:[]},s=(o,i=[])=>{for(const a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(l=>s({issues:l},[...i,...a.path]));else if(a.code==="invalid_key")s({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")s({issues:a.issues},[...i,...a.path]);else{const l=[...i,...a.path];if(l.length===0)n._errors.push(t(a));else{let c=n,u=0;for(;u<l.length;){const f=l[u];u===l.length-1?(c[f]=c[f]||{_errors:[]},c[f]._errors.push(t(a))):c[f]=c[f]||{_errors:[]},c=c[f],u++}}}};return s(e),n}const hl=e=>(t,n,s,o)=>{const i=s?{...s,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new xs;if(a.issues.length){const l=new(o?.Err??e)(a.issues.map(c=>an(c,i,on())));throw of(l,o?.callee),l}return a.value},ml=e=>async(t,n,s,o)=>{const i=s?{...s,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=>an(c,i,on())));throw of(l,o?.callee),l}return a.value},Go=e=>(t,n,s)=>{const o=s?{...s,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new xs;return i.issues.length?{success:!1,error:new(e??cf)(i.issues.map(a=>an(a,o,on())))}:{success:!0,data:i.value}},Fg=Go(uf),Ko=e=>async(t,n,s)=>{const o=s?{...s,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=>an(a,o,on())))}:{success:!0,data:i.value}},Ug=Ko(uf),Bg=e=>(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return hl(e)(t,n,o)},Wg=e=>(t,n,s)=>hl(e)(t,n,s),Hg=e=>async(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return ml(e)(t,n,o)},Vg=e=>async(t,n,s)=>ml(e)(t,n,s),Zg=e=>(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return Go(e)(t,n,o)},qg=e=>(t,n,s)=>Go(e)(t,n,s),Gg=e=>async(t,n,s)=>{const o=s?{...s,direction:"backward"}:{direction:"backward"};return Ko(e)(t,n,o)},Kg=e=>async(t,n,s)=>Ko(e)(t,n,s),Jg=/^[cC][0-9a-z]{6,}$/,Yg=/^[0-9a-z]+$/,Xg=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Qg=/^[0-9a-vA-V]{20}$/,ex=/^[A-Za-z0-9]{27}$/,tx=/^[a-zA-Z0-9_-]{21}$/,nx=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,sx=/^([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})$/,Mc=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)$/,rx=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ox="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ix(){return new RegExp(ox,"u")}const ax=/^(?:(?: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])$/,lx=/^(([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}|:))$/,cx=/^((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])$/,ux=/^(([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])$/,dx=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,df=/^[A-Za-z0-9_-]*$/,fx=/^https?$/,px=/^\+[1-9]\d{6,14}$/,ff="(?:(?:\\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])))",hx=new RegExp(`^${ff}$`);function pf(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 mx(e){return new RegExp(`^${pf(e)}$`)}function gx(e){const t=pf({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const s=`${t}(?:${n.join("|")})`;return new RegExp(`^${ff}T(?:${s})$`)}const xx=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},bx=/^-?\d+$/,hf=/^-?\d+(?:\.\d+)?$/,vx=/^(?:true|false)$/i,yx=/^null$/i,wx=/^[^A-Z]*$/,_x=/^[^a-z]*$/,mt=ne("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),mf={number:"number",bigint:"bigint",object:"date"},gf=ne("$ZodCheckLessThan",(e,t)=>{mt.init(e,t);const n=mf[typeof t.value];e._zod.onattach.push(s=>{const o=s._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=s=>{(t.inclusive?s.value<=t.value:s.value<t.value)||s.issues.push({origin:n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:s.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),xf=ne("$ZodCheckGreaterThan",(e,t)=>{mt.init(e,t);const n=mf[typeof t.value];e._zod.onattach.push(s=>{const o=s._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=s=>{(t.inclusive?s.value>=t.value:s.value>t.value)||s.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:s.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),kx=ne("$ZodCheckMultipleOf",(e,t)=>{mt.init(e,t),e._zod.onattach.push(n=>{var s;(s=n._zod.bag).multipleOf??(s.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):jg(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})}}),jx=ne("$ZodCheckNumberFormat",(e,t)=>{mt.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),s=n?"int":"number",[o,i]=Eg[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=bx)}),e._zod.check=a=>{const l=a.value;if(n){if(!Number.isInteger(l)){a.issues.push({expected:s,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:s,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:s,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})}}),Sx=ne("$ZodCheckMaxLength",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(s._zod.bag.maximum=t.maximum)}),e._zod.check=s=>{const o=s.value;if(o.length<=t.maximum)return;const a=pl(o);s.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Cx=ne("$ZodCheckMinLength",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(s._zod.bag.minimum=t.minimum)}),e._zod.check=s=>{const o=s.value;if(o.length>=t.minimum)return;const a=pl(o);s.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Nx=ne("$ZodCheckLengthEquals",(e,t)=>{var n;mt.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!dl(o)&&o.length!==void 0}),e._zod.onattach.push(s=>{const o=s._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=s=>{const o=s.value,i=o.length;if(i===t.length)return;const a=pl(o),l=i>t.length;s.issues.push({origin:a,...l?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:s.value,inst:e,continue:!t.abort})}}),Jo=ne("$ZodCheckStringFormat",(e,t)=>{var n,s;mt.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})}):(s=e._zod).check??(s.check=()=>{})}),Tx=ne("$ZodCheckRegex",(e,t)=>{Jo.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})}}),Ex=ne("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=wx),Jo.init(e,t)}),Ax=ne("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=_x),Jo.init(e,t)}),Ix=ne("$ZodCheckIncludes",(e,t)=>{mt.init(e,t);const n=js(t.includes),s=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=s,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(s)}),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})}}),Rx=ne("$ZodCheckStartsWith",(e,t)=>{mt.init(e,t);const n=new RegExp(`^${js(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(s=>{const o=s._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=s=>{s.value.startsWith(t.prefix)||s.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:s.value,inst:e,continue:!t.abort})}}),zx=ne("$ZodCheckEndsWith",(e,t)=>{mt.init(e,t);const n=new RegExp(`.*${js(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(s=>{const o=s._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=s=>{s.value.endsWith(t.suffix)||s.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:s.value,inst:e,continue:!t.abort})}}),Px=ne("$ZodCheckOverwrite",(e,t)=>{mt.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Ox{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 s=t.split(`
|
|
3
3
|
`).filter(a=>a),o=Math.min(...s.map(a=>a.length-a.trimStart().length)),i=s.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
4
|
`))}}const Mx={major:4,minor:4,patch:3},We=ne("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Mx;const s=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&s.unshift(e);for(const o of s)for(const i of o._zod.onattach)i(e);if(s.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=hs(a),f;for(const d of l){if(d._zod.def.when){if(Lg(a)||!d._zod.def.when(a))continue}else if(u)continue;const m=a.issues.length,h=d._zod.check(a);if(h instanceof Promise&&c?.async===!1)throw new xs;if(f||h instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await h,a.issues.length!==m&&(u||(u=hs(a,m)))});else{if(a.issues.length===m)continue;u||(u=hs(a,m))}}return f?f.then(()=>a):a},i=(a,l,c)=>{if(hs(a))return a.aborted=!0,a;const u=o(l,s,c);if(u instanceof Promise){if(c.async===!1)throw new xs;return u.then(f=>e._zod.parse(f,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(f=>i(f,a,l)):i(u,a,l)}const c=e._zod.parse(a,l);if(c instanceof Promise){if(l.async===!1)throw new xs;return c.then(u=>o(u,s,l))}return o(c,s,l)}}Me(e,"~standard",()=>({validate:o=>{try{const i=Fg(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Ug(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),gl=ne("$ZodString",(e,t)=>{We.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??xx(e._zod.bag),e._zod.parse=(n,s)=>{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}}),Ve=ne("$ZodStringFormat",(e,t)=>{Jo.init(e,t),gl.init(e,t)}),Lx=ne("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=sx),Ve.init(e,t)}),Dx=ne("$ZodUUID",(e,t)=>{if(t.version){const s={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(s===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Mc(s))}else t.pattern??(t.pattern=Mc());Ve.init(e,t)}),$x=ne("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=rx),Ve.init(e,t)}),Fx=ne("$ZodURL",(e,t)=>{Ve.init(e,t),e._zod.check=n=>{try{const s=n.value.trim();if(!t.normalize&&t.protocol?.source===fx.source&&!/^https?:\/\//i.test(s)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}const o=new URL(s);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=s;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Ux=ne("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=ix()),Ve.init(e,t)}),Bx=ne("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=tx),Ve.init(e,t)}),Wx=ne("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Jg),Ve.init(e,t)}),Hx=ne("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Yg),Ve.init(e,t)}),Vx=ne("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Xg),Ve.init(e,t)}),Zx=ne("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Qg),Ve.init(e,t)}),qx=ne("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ex),Ve.init(e,t)}),Gx=ne("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=gx(t)),Ve.init(e,t)}),Kx=ne("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=hx),Ve.init(e,t)}),Jx=ne("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=mx(t)),Ve.init(e,t)}),Yx=ne("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=nx),Ve.init(e,t)}),Xx=ne("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ax),Ve.init(e,t),e._zod.bag.format="ipv4"}),Qx=ne("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=lx),Ve.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})}}}),e1=ne("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=cx),Ve.init(e,t)}),t1=ne("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=ux),Ve.init(e,t),e._zod.check=n=>{const s=n.value.split("/");try{if(s.length!==2)throw new Error;const[o,i]=s;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 bf(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const n1=ne("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=dx),Ve.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{bf(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function s1(e){if(!df.test(e))return!1;const t=e.replace(/[-_]/g,s=>s==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return bf(n)}const r1=ne("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=df),Ve.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{s1(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),o1=ne("$ZodE164",(e,t)=>{t.pattern??(t.pattern=px),Ve.init(e,t)});function i1(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[s]=n;if(!s)return!1;const o=JSON.parse(atob(s));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const a1=ne("$ZodJWT",(e,t)=>{Ve.init(e,t),e._zod.check=n=>{i1(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),vf=ne("$ZodNumber",(e,t)=>{We.init(e,t),e._zod.pattern=e._zod.bag.pattern??hf,e._zod.parse=(n,s)=>{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}}),l1=ne("$ZodNumberFormat",(e,t)=>{jx.init(e,t),vf.init(e,t)}),c1=ne("$ZodBoolean",(e,t)=>{We.init(e,t),e._zod.pattern=vx,e._zod.parse=(n,s)=>{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}}),u1=ne("$ZodNull",(e,t)=>{We.init(e,t),e._zod.pattern=yx,e._zod.values=new Set([null]),e._zod.parse=(n,s)=>{const o=n.value;return o===null||n.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),n}}),d1=ne("$ZodUnknown",(e,t)=>{We.init(e,t),e._zod.parse=n=>n}),f1=ne("$ZodNever",(e,t)=>{We.init(e,t),e._zod.parse=(n,s)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function Lc(e,t,n){e.issues.length&&t.issues.push(...ms(n,e.issues)),t.value[n]=e.value}const p1=ne("$ZodArray",(e,t)=>{We.init(e,t),e._zod.parse=(n,s)=>{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:[]},s);c instanceof Promise?i.push(c.then(u=>Lc(u,n,a))):Lc(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function mo(e,t,n,s,o,i){const a=n in s;if(e.issues.length){if(o&&i&&!a)return;t.issues.push(...ms(n,e.issues))}if(!a&&!o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?a&&(t.value[n]=void 0):t.value[n]=e.value}function yf(e){const t=Object.keys(e.shape);for(const s of t)if(!e.shape?.[s]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${s}": expected a Zod schema`);const n=Tg(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function wf(e,t,n,s,o,i){const a=[],l=o.keySet,c=o.catchall._zod,u=c.def.type,f=c.optin==="optional",d=c.optout==="optional";for(const m in t){if(m==="__proto__"||l.has(m))continue;if(u==="never"){a.push(m);continue}const h=c.run({value:t[m],issues:[]},s);h instanceof Promise?e.push(h.then(b=>mo(b,n,m,t,f,d))):mo(h,n,m,t,f,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 h1=ne("$ZodObject",(e,t)=>{if(We.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 s=qo(()=>yf(t));Me(e._zod,"propValues",()=>{const l=t.shape,c={};for(const u in l){const f=l[u]._zod;if(f.values){c[u]??(c[u]=new Set);for(const d of f.values)c[u].add(d)}}return c});const o=or,i=t.catchall;let a;e._zod.parse=(l,c)=>{a??(a=s.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 f=[],d=a.shape;for(const m of a.keys){const h=d[m],b=h._zod.optin==="optional",g=h._zod.optout==="optional",x=h._zod.run({value:u[m],issues:[]},c);x instanceof Promise?f.push(x.then(v=>mo(v,l,m,u,b,g))):mo(x,l,m,u,b,g)}return i?wf(f,u,l,c,s.value,e):f.length?Promise.all(f).then(()=>l):l}}),m1=ne("$ZodObjectJIT",(e,t)=>{h1.init(e,t);const n=e._zod.parse,s=qo(()=>yf(t)),o=m=>{const h=new Ox(["shape","payload","ctx"]),b=s.value,g=_=>{const j=Oc(_);return`shape[${j}]._zod.run({ value: input[${j}], issues: [] }, ctx)`};h.write("const input = payload.value;");const x=Object.create(null);let v=0;for(const _ of b.keys)x[_]=`key_${v++}`;h.write("const newResult = {};");for(const _ of b.keys){const j=x[_],S=Oc(_),N=m[_],T=N?._zod?.optin==="optional",A=N?._zod?.optout==="optional";h.write(`const ${j} = ${g(_)};`),T&&A?h.write(`
|
|
5
5
|
if (${j}.issues.length) {
|
|
@@ -63,7 +63,7 @@ import{u as Zt,a as tf,r as p,j as r,c as Cr,g as kg,b as Zo,d as Ms,e as Vn,f a
|
|
|
63
63
|
`)}h.write("payload.value = newResult;"),h.write("return payload;");const y=h.compile();return(_,j)=>y(m,_,j)};let i;const a=or,l=!ul.jitless,u=l&&Cg.value,f=t.catchall;let d;e._zod.parse=(m,h)=>{d??(d=s.value);const b=m.value;return a(b)?l&&u&&h?.async===!1&&h.jitless!==!0?(i||(i=o(t.shape)),m=i(m,h),f?wf([],b,m,h,d,e):m):n(m,h):(m.issues.push({expected:"object",code:"invalid_type",input:b,inst:e}),m)}});function Dc(e,t,n,s){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!hs(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=>an(a,s,on())))}),t)}const _f=ne("$ZodUnion",(e,t)=>{We.init(e,t),Me(e._zod,"optin",()=>t.options.some(s=>s._zod.optin==="optional")?"optional":void 0),Me(e._zod,"optout",()=>t.options.some(s=>s._zod.optout==="optional")?"optional":void 0),Me(e._zod,"values",()=>{if(t.options.every(s=>s._zod.values))return new Set(t.options.flatMap(s=>Array.from(s._zod.values)))}),Me(e._zod,"pattern",()=>{if(t.options.every(s=>s._zod.pattern)){const s=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${s.map(o=>fl(o.source)).join("|")})$`)}});const n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(s,o)=>{if(n)return n(s,o);let i=!1;const a=[];for(const l of t.options){const c=l._zod.run({value:s.value,issues:[]},o);if(c instanceof Promise)a.push(c),i=!0;else{if(c.issues.length===0)return c;a.push(c)}}return i?Promise.all(a).then(l=>Dc(l,s,e,o)):Dc(a,s,e,o)}}),g1=ne("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,_f.init(e,t);const n=e._zod.parse;Me(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 s=qo(()=>{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(!or(a))return o.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),o;const l=s.value.get(a?.[t.discriminator]);return l?l._zod.run(o,i):t.unionFallback||i.direction==="backward"?n(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(s.value.keys()),input:a,path:[t.discriminator],inst:e}),o)}}),x1=ne("$ZodIntersection",(e,t)=>{We.init(e,t),e._zod.parse=(n,s)=>{const o=n.value,i=t.left._zod.run({value:o,issues:[]},s),a=t.right._zod.run({value:o,issues:[]},s);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,u])=>$c(n,c,u)):$c(n,i,a)}});function ga(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(ks(e)&&ks(t)){const n=Object.keys(t),s=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(const i of s){const a=ga(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 s=0;s<e.length;s++){const o=e[s],i=t[s],a=ga(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[s,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function $c(e,t,n){const s=new Map;let o;for(const l of t.issues)if(l.code==="unrecognized_keys"){o??(o=l);for(const c of l.keys)s.has(c)||s.set(c,{}),s.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)s.has(c)||s.set(c,{}),s.get(c).r=!0;else e.issues.push(l);const i=[...s].filter(([,l])=>l.l&&l.r).map(([l])=>l);if(i.length&&o&&e.issues.push({...o,keys:i}),hs(e))return e;const a=ga(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 b1=ne("$ZodRecord",(e,t)=>{We.init(e,t),e._zod.parse=(n,s)=>{const o=n.value;if(!ks(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 f=t.keyType._zod.run({value:u,issues:[]},s);if(f instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(f.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:f.issues.map(h=>an(h,s,on())),input:u,path:[u],inst:e});continue}const d=f.value,m=t.valueType._zod.run({value:o[u],issues:[]},s);m instanceof Promise?i.push(m.then(h=>{h.issues.length&&n.issues.push(...ms(u,h.issues)),n.value[d]=h.value})):(m.issues.length&&n.issues.push(...ms(u,m.issues)),n.value[d]=m.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__"||!Object.prototype.propertyIsEnumerable.call(o,l))continue;let c=t.keyType._zod.run({value:l,issues:[]},s);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof l=="string"&&hf.test(l)&&c.issues.length){const d=t.keyType._zod.run({value:Number(l),issues:[]},s);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){t.mode==="loose"?n.value[l]=o[l]:n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>an(d,s,on())),input:l,path:[l],inst:e});continue}const f=t.valueType._zod.run({value:o[l],issues:[]},s);f instanceof Promise?i.push(f.then(d=>{d.issues.length&&n.issues.push(...ms(l,d.issues)),n.value[c.value]=d.value})):(f.issues.length&&n.issues.push(...ms(l,f.issues)),n.value[c.value]=f.value)}}return i.length?Promise.all(i).then(()=>n):n}}),v1=ne("$ZodEnum",(e,t)=>{We.init(e,t);const n=rf(t.entries),s=new Set(n);e._zod.values=s,e._zod.pattern=new RegExp(`^(${n.filter(o=>Ng.has(typeof o)).map(o=>typeof o=="string"?js(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const a=o.value;return s.has(a)||o.issues.push({code:"invalid_value",values:n,input:a,inst:e}),o}}),y1=ne("$ZodLiteral",(e,t)=>{if(We.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(s=>typeof s=="string"?js(s):s?js(s.toString()):String(s)).join("|")})$`),e._zod.parse=(s,o)=>{const i=s.value;return n.has(i)||s.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),s}}),w1=ne("$ZodTransform",(e,t)=>{We.init(e,t),e._zod.optin="optional",e._zod.parse=(n,s)=>{if(s.direction==="backward")throw new sf(e.constructor.name);const o=t.transform(n.value,n);if(s.async)return(o instanceof Promise?o:Promise.resolve(o)).then(a=>(n.value=a,n.fallback=!0,n));if(o instanceof Promise)throw new xs;return n.value=o,n.fallback=!0,n}});function Fc(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}const kf=ne("$ZodOptional",(e,t)=>{We.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Me(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Me(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${fl(n.source)})?$`):void 0}),e._zod.parse=(n,s)=>{if(t.innerType._zod.optin==="optional"){const o=n.value,i=t.innerType._zod.run(n,s);return i instanceof Promise?i.then(a=>Fc(a,o)):Fc(i,o)}return n.value===void 0?n:t.innerType._zod.run(n,s)}}),_1=ne("$ZodExactOptional",(e,t)=>{kf.init(e,t),Me(e._zod,"values",()=>t.innerType._zod.values),Me(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,s)=>t.innerType._zod.run(n,s)}),k1=ne("$ZodNullable",(e,t)=>{We.init(e,t),Me(e._zod,"optin",()=>t.innerType._zod.optin),Me(e._zod,"optout",()=>t.innerType._zod.optout),Me(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${fl(n.source)}|null)$`):void 0}),Me(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,s)=>n.value===null?n:t.innerType._zod.run(n,s)}),j1=ne("$ZodDefault",(e,t)=>{We.init(e,t),e._zod.optin="optional",Me(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,s)=>{if(s.direction==="backward")return t.innerType._zod.run(n,s);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,s);return o instanceof Promise?o.then(i=>Uc(i,t)):Uc(o,t)}});function Uc(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const S1=ne("$ZodPrefault",(e,t)=>{We.init(e,t),e._zod.optin="optional",Me(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,s)=>(s.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,s))}),C1=ne("$ZodNonOptional",(e,t)=>{We.init(e,t),Me(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(s=>s!==void 0)):void 0}),e._zod.parse=(n,s)=>{const o=t.innerType._zod.run(n,s);return o instanceof Promise?o.then(i=>Bc(i,e)):Bc(o,e)}});function Bc(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 N1=ne("$ZodCatch",(e,t)=>{We.init(e,t),e._zod.optin="optional",Me(e._zod,"optout",()=>t.innerType._zod.optout),Me(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,s)=>{if(s.direction==="backward")return t.innerType._zod.run(n,s);const o=t.innerType._zod.run(n,s);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=>an(a,s,on()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>an(i,s,on()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),T1=ne("$ZodPipe",(e,t)=>{We.init(e,t),Me(e._zod,"values",()=>t.in._zod.values),Me(e._zod,"optin",()=>t.in._zod.optin),Me(e._zod,"optout",()=>t.out._zod.optout),Me(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,s)=>{if(s.direction==="backward"){const i=t.out._zod.run(n,s);return i instanceof Promise?i.then(a=>Tr(a,t.in,s)):Tr(i,t.in,s)}const o=t.in._zod.run(n,s);return o instanceof Promise?o.then(i=>Tr(i,t.out,s)):Tr(o,t.out,s)}});function Tr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}const E1=ne("$ZodReadonly",(e,t)=>{We.init(e,t),Me(e._zod,"propValues",()=>t.innerType._zod.propValues),Me(e._zod,"values",()=>t.innerType._zod.values),Me(e._zod,"optin",()=>t.innerType?._zod?.optin),Me(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,s)=>{if(s.direction==="backward")return t.innerType._zod.run(n,s);const o=t.innerType._zod.run(n,s);return o instanceof Promise?o.then(Wc):Wc(o)}});function Wc(e){return e.value=Object.freeze(e.value),e}const A1=ne("$ZodLazy",(e,t)=>{We.init(e,t),Me(e._zod,"innerType",()=>{const n=t;return n._cachedInner||(n._cachedInner=t.getter()),n._cachedInner}),Me(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),Me(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),Me(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),Me(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,s)=>e._zod.innerType._zod.run(n,s)}),I1=ne("$ZodCustom",(e,t)=>{mt.init(e,t),We.init(e,t),e._zod.parse=(n,s)=>n,e._zod.check=n=>{const s=n.value,o=t.fn(s);if(o instanceof Promise)return o.then(i=>Hc(i,n,s,e));Hc(o,n,s,e)}});function Hc(e,t,n,s){if(!e){const o={code:"custom",input:n,inst:s,path:[...s._zod.def.path??[]],continue:!s._zod.def.abort};s._zod.def.params&&(o.params=s._zod.def.params),t.issues.push(ir(o))}}var Vc;class R1{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const s=n[0];return this._map.set(t,s),s&&typeof s=="object"&&"id"in s&&this._idmap.set(s.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 s={...this.get(n)??{}};delete s.id;const o={...s,...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 z1(){return new R1}(Vc=globalThis).__zod_globalRegistry??(Vc.__zod_globalRegistry=z1());const Qs=globalThis.__zod_globalRegistry;function P1(e,t){return new e({type:"string",...Se(t)})}function O1(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Se(t)})}function Zc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Se(t)})}function M1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Se(t)})}function L1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Se(t)})}function D1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Se(t)})}function $1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Se(t)})}function F1(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Se(t)})}function U1(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Se(t)})}function B1(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Se(t)})}function W1(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Se(t)})}function H1(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Se(t)})}function V1(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Se(t)})}function Z1(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Se(t)})}function q1(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Se(t)})}function G1(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Se(t)})}function K1(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Se(t)})}function J1(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Se(t)})}function Y1(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Se(t)})}function X1(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Se(t)})}function Q1(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Se(t)})}function eb(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Se(t)})}function tb(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Se(t)})}function nb(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Se(t)})}function sb(e,t){return new e({type:"string",format:"date",check:"string_format",...Se(t)})}function rb(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Se(t)})}function ob(e,t){return new e({type:"string",format:"duration",check:"string_format",...Se(t)})}function ib(e,t){return new e({type:"number",checks:[],...Se(t)})}function ab(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Se(t)})}function lb(e,t){return new e({type:"boolean",...Se(t)})}function cb(e,t){return new e({type:"null",...Se(t)})}function ub(e){return new e({type:"unknown"})}function db(e,t){return new e({type:"never",...Se(t)})}function qc(e,t){return new gf({check:"less_than",...Se(t),value:e,inclusive:!1})}function Ei(e,t){return new gf({check:"less_than",...Se(t),value:e,inclusive:!0})}function Gc(e,t){return new xf({check:"greater_than",...Se(t),value:e,inclusive:!1})}function Ai(e,t){return new xf({check:"greater_than",...Se(t),value:e,inclusive:!0})}function Kc(e,t){return new kx({check:"multiple_of",...Se(t),value:e})}function jf(e,t){return new Sx({check:"max_length",...Se(t),maximum:e})}function go(e,t){return new Cx({check:"min_length",...Se(t),minimum:e})}function Sf(e,t){return new Nx({check:"length_equals",...Se(t),length:e})}function fb(e,t){return new Tx({check:"string_format",format:"regex",...Se(t),pattern:e})}function pb(e){return new Ex({check:"string_format",format:"lowercase",...Se(e)})}function hb(e){return new Ax({check:"string_format",format:"uppercase",...Se(e)})}function mb(e,t){return new Ix({check:"string_format",format:"includes",...Se(t),includes:e})}function gb(e,t){return new Rx({check:"string_format",format:"starts_with",...Se(t),prefix:e})}function xb(e,t){return new zx({check:"string_format",format:"ends_with",...Se(t),suffix:e})}function Ls(e){return new Px({check:"overwrite",tx:e})}function bb(e){return Ls(t=>t.normalize(e))}function vb(){return Ls(e=>e.trim())}function yb(){return Ls(e=>e.toLowerCase())}function wb(){return Ls(e=>e.toUpperCase())}function _b(){return Ls(e=>Sg(e))}function kb(e,t,n){return new e({type:"array",element:t,...Se(n)})}function jb(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Se(n)})}function Sb(e,t){const n=Cb(s=>(s.addIssue=o=>{if(typeof o=="string")s.issues.push(ir(o,s.value,n._zod.def));else{const i=o;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=s.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),s.issues.push(ir(i))}},e(s.value,s)),t);return n}function Cb(e,t){const n=new mt({check:"custom",...Se(t)});return n._zod.check=e,n}function Cf(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??Qs,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 Je(e,t,n={path:[],schemaPath:[]}){var s;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 f={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,f);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,f)}const d=e._zod.parent;d&&(a.ref||(a.ref=d),Je(d,t,f),t.seen.get(d).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&ct(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&"_prefault"in a.schema&&((s=a.schema).default??(s.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function Nf(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const s=new Map;for(const a of e.seen.entries()){const l=e.metadataRegistry.get(a[0])?.id;if(l){const c=s.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.`);s.set(l,a[0])}}const o=a=>{const l=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const d=e.external.registry.get(a[0])?.id,m=e.external.uri??(b=>b);if(d)return{ref:m(d)};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}/`,f=a[1].schema.id??`__schema${e.counter++}`;return{defId:f,ref:u+f}},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 f=l.schema;for(const d in f)delete f[d];f.$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>
|
|
64
64
|
|
|
65
65
|
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 Tf(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const s=l=>{const c=e.seen.get(l);if(c.ref===null)return;const u=c.def??c.schema,f={...u},d=c.ref;if(c.ref=null,d){s(d);const h=e.seen.get(d),b=h.schema;if(b.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(b)):Object.assign(u,b),Object.assign(u,f),l._zod.parent===d)for(const x in u)x==="$ref"||x==="allOf"||x in f||delete u[x];if(b.$ref&&h.def)for(const x in u)x==="$ref"||x==="allOf"||x in h.def&&JSON.stringify(u[x])===JSON.stringify(h.def[x])&&delete u[x]}const m=l._zod.parent;if(m&&m!==d){s(m);const h=e.seen.get(m);if(h?.schema.$ref&&(u.$ref=h.schema.$ref,h.def))for(const b in u)b==="$ref"||b==="allOf"||b in h.def&&JSON.stringify(u[b])===JSON.stringify(h.def[b])&&delete u[b]}e.override({zodSchema:l,jsonSchema:u,path:c.path??[]})};for(const l of[...e.seen.entries()].reverse())s(l[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 l=e.external.registry.get(t)?.id;if(!l)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(l)}Object.assign(o,n.def??n.schema);const i=e.metadataRegistry.get(t)?.id;i!==void 0&&o.id===i&&delete o.id;const a=e.external?.defs??{};for(const l of e.seen.entries()){const c=l[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,a[c.defId]=c.def)}e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?o.$defs=a:o.definitions=a);try{const l=JSON.parse(JSON.stringify(o));return Object.defineProperty(l,"~standard",{value:{...t["~standard"],jsonSchema:{input:xo(t,"input",e.processors),output:xo(t,"output",e.processors)}},enumerable:!1,writable:!1}),l}catch{throw new Error("Error converting schema to JSON.")}}function ct(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const s=e._zod.def;if(s.type==="transform")return!0;if(s.type==="array")return ct(s.element,n);if(s.type==="set")return ct(s.valueType,n);if(s.type==="lazy")return ct(s.getter(),n);if(s.type==="promise"||s.type==="optional"||s.type==="nonoptional"||s.type==="nullable"||s.type==="readonly"||s.type==="default"||s.type==="prefault")return ct(s.innerType,n);if(s.type==="intersection")return ct(s.left,n)||ct(s.right,n);if(s.type==="record"||s.type==="map")return ct(s.keyType,n)||ct(s.valueType,n);if(s.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:ct(s.in,n)||ct(s.out,n);if(s.type==="object"){for(const o in s.shape)if(ct(s.shape[o],n))return!0;return!1}if(s.type==="union"){for(const o of s.options)if(ct(o,n))return!0;return!1}if(s.type==="tuple"){for(const o of s.items)if(ct(o,n))return!0;return!!(s.rest&&ct(s.rest,n))}return!1}const Nb=(e,t={})=>n=>{const s=Cf({...n,processors:t});return Je(e,s),Nf(s,e),Tf(s,e)},xo=(e,t,n={})=>s=>{const{libraryOptions:o,target:i}=s??{},a=Cf({...o??{},target:i,io:t,processors:n});return Je(e,a),Nf(a,e),Tf(a,e)},Tb={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Eb=(e,t,n,s)=>{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=Tb[l]??l,o.format===""&&delete o.format,l==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){const f=[...c];f.length===1?o.pattern=f[0].source:f.length>1&&(o.allOf=[...f.map(d=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},Ab=(e,t,n,s)=>{const o=n,{minimum:i,maximum:a,format:l,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:f}=e._zod.bag;typeof l=="string"&&l.includes("int")?o.type="integer":o.type="number";const d=typeof f=="number"&&f>=(i??Number.NEGATIVE_INFINITY),m=typeof u=="number"&&u<=(a??Number.POSITIVE_INFINITY),h=t.target==="draft-04"||t.target==="openapi-3.0";d?h?(o.minimum=f,o.exclusiveMinimum=!0):o.exclusiveMinimum=f:typeof i=="number"&&(o.minimum=i),m?h?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u:typeof a=="number"&&(o.maximum=a),typeof c=="number"&&(o.multipleOf=c)},Ib=(e,t,n,s)=>{n.type="boolean"},Rb=(e,t,n,s)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},zb=(e,t,n,s)=>{n.not={}},Pb=(e,t,n,s)=>{},Ob=(e,t,n,s)=>{const o=e._zod.def,i=rf(o.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},Mb=(e,t,n,s)=>{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},Lb=(e,t,n,s)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Db=(e,t,n,s)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},$b=(e,t,n,s)=>{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=Je(i.element,t,{...s,path:[...s.path,"items"]})},Fb=(e,t,n,s)=>{const o=n,i=e._zod.def;o.type="object",o.properties={};const a=i.shape;for(const u in a)o.properties[u]=Je(a[u],t,{...s,path:[...s.path,"properties",u]});const l=new Set(Object.keys(a)),c=new Set([...l].filter(u=>{const f=i.shape[u]._zod;return t.io==="input"?f.optin===void 0:f.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=Je(i.catchall,t,{...s,path:[...s.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},Ub=(e,t,n,s)=>{const o=e._zod.def,i=o.inclusive===!1,a=o.options.map((l,c)=>Je(l,t,{...s,path:[...s.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},Bb=(e,t,n,s)=>{const o=e._zod.def,i=Je(o.left,t,{...s,path:[...s.path,"allOf",0]}),a=Je(o.right,t,{...s,path:[...s.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},Wb=(e,t,n,s)=>{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 f=Je(i.valueType,t,{...s,path:[...s.path,"patternProperties","*"]});o.patternProperties={};for(const d of c)o.patternProperties[d.source]=f}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=Je(i.keyType,t,{...s,path:[...s.path,"propertyNames"]})),o.additionalProperties=Je(i.valueType,t,{...s,path:[...s.path,"additionalProperties"]});const u=a._zod.values;if(u){const f=[...u].filter(d=>typeof d=="string"||typeof d=="number");f.length>0&&(o.required=f)}},Hb=(e,t,n,s)=>{const o=e._zod.def,i=Je(o.innerType,t,s),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=o.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},Vb=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType},Zb=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},qb=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},Gb=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);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},Kb=(e,t,n,s)=>{const o=e._zod.def,i=o.in._zod.traits.has("$ZodTransform"),a=t.io==="input"?i?o.out:o.in:o.out;Je(a,t,s);const l=t.seen.get(e);l.ref=a},Jb=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},Ef=(e,t,n,s)=>{const o=e._zod.def;Je(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType},Yb=(e,t,n,s)=>{const o=e._zod.innerType;Je(o,t,s);const i=t.seen.get(e);i.ref=o},Xb=ne("ZodISODateTime",(e,t)=>{Gx.init(e,t),Ze.init(e,t)});function Qb(e){return nb(Xb,e)}const ev=ne("ZodISODate",(e,t)=>{Kx.init(e,t),Ze.init(e,t)});function tv(e){return sb(ev,e)}const nv=ne("ZodISOTime",(e,t)=>{Jx.init(e,t),Ze.init(e,t)});function sv(e){return rb(nv,e)}const rv=ne("ZodISODuration",(e,t)=>{Yx.init(e,t),Ze.init(e,t)});function ov(e){return ob(rv,e)}const iv=(e,t)=>{cf.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>$g(e,n)},flatten:{value:n=>Dg(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,ma,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,ma,2)}},isEmpty:{get(){return e.issues.length===0}}})},At=ne("ZodError",iv,{Parent:Error}),av=hl(At),lv=ml(At),cv=Go(At),uv=Ko(At),dv=Bg(At),fv=Wg(At),pv=Hg(At),hv=Vg(At),mv=Zg(At),gv=qg(At),xv=Gg(At),bv=Kg(At),Jc=new WeakMap;function gr(e,t,n){const s=Object.getPrototypeOf(e);let o=Jc.get(s);if(o||(o=new Set,Jc.set(s,o)),!o.has(t)){o.add(t);for(const i in n){const a=n[i];Object.defineProperty(s,i,{configurable:!0,enumerable:!1,get(){const l=a.bind(this);return Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:l}),l},set(l){Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:l})}})}}}const He=ne("ZodType",(e,t)=>(We.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:xo(e,"input"),output:xo(e,"output")}}),e.toJSONSchema=Nb(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,s)=>av(e,n,s,{callee:e.parse}),e.safeParse=(n,s)=>cv(e,n,s),e.parseAsync=async(n,s)=>lv(e,n,s,{callee:e.parseAsync}),e.safeParseAsync=async(n,s)=>uv(e,n,s),e.spa=e.safeParseAsync,e.encode=(n,s)=>dv(e,n,s),e.decode=(n,s)=>fv(e,n,s),e.encodeAsync=async(n,s)=>pv(e,n,s),e.decodeAsync=async(n,s)=>hv(e,n,s),e.safeEncode=(n,s)=>mv(e,n,s),e.safeDecode=(n,s)=>gv(e,n,s),e.safeEncodeAsync=async(n,s)=>xv(e,n,s),e.safeDecodeAsync=async(n,s)=>bv(e,n,s),gr(e,"ZodType",{check(...n){const s=this.def;return this.clone(Cn(s,{checks:[...s.checks??[],...n.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,s){return Nn(this,n,s)},brand(){return this},register(n,s){return n.add(this,s),this},refine(n,s){return this.check(p2(n,s))},superRefine(n,s){return this.check(h2(n,s))},overwrite(n){return this.check(Ls(n))},optional(){return eu(this)},exactOptional(){return Xv(this)},nullable(){return tu(this)},nullish(){return eu(tu(this))},nonoptional(n){return r2(this,n)},array(){return pe(this)},or(n){return Yt([this,n])},and(n){return qv(this,n)},transform(n){return nu(this,Jv(n))},default(n){return t2(this,n)},prefault(n){return s2(this,n)},catch(n){return i2(this,n)},pipe(n){return nu(this,n)},readonly(){return c2(this)},describe(n){const s=this.clone();return Qs.add(s,{description:n}),s},meta(...n){if(n.length===0)return Qs.get(this);const s=this.clone();return Qs.add(s,n[0]),s},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return Qs.get(e)?.description},configurable:!0}),e)),Af=ne("_ZodString",(e,t)=>{gl.init(e,t),He.init(e,t),e._zod.processJSONSchema=(s,o,i)=>Eb(e,s,o);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,gr(e,"_ZodString",{regex(...s){return this.check(fb(...s))},includes(...s){return this.check(mb(...s))},startsWith(...s){return this.check(gb(...s))},endsWith(...s){return this.check(xb(...s))},min(...s){return this.check(go(...s))},max(...s){return this.check(jf(...s))},length(...s){return this.check(Sf(...s))},nonempty(...s){return this.check(go(1,...s))},lowercase(s){return this.check(pb(s))},uppercase(s){return this.check(hb(s))},trim(){return this.check(vb())},normalize(...s){return this.check(bb(...s))},toLowerCase(){return this.check(yb())},toUpperCase(){return this.check(wb())},slugify(){return this.check(_b())}})}),vv=ne("ZodString",(e,t)=>{gl.init(e,t),Af.init(e,t),e.email=n=>e.check(O1(yv,n)),e.url=n=>e.check(F1(wv,n)),e.jwt=n=>e.check(tb(Mv,n)),e.emoji=n=>e.check(U1(_v,n)),e.guid=n=>e.check(Zc(Yc,n)),e.uuid=n=>e.check(M1(Er,n)),e.uuidv4=n=>e.check(L1(Er,n)),e.uuidv6=n=>e.check(D1(Er,n)),e.uuidv7=n=>e.check($1(Er,n)),e.nanoid=n=>e.check(B1(kv,n)),e.guid=n=>e.check(Zc(Yc,n)),e.cuid=n=>e.check(W1(jv,n)),e.cuid2=n=>e.check(H1(Sv,n)),e.ulid=n=>e.check(V1(Cv,n)),e.base64=n=>e.check(X1(zv,n)),e.base64url=n=>e.check(Q1(Pv,n)),e.xid=n=>e.check(Z1(Nv,n)),e.ksuid=n=>e.check(q1(Tv,n)),e.ipv4=n=>e.check(G1(Ev,n)),e.ipv6=n=>e.check(K1(Av,n)),e.cidrv4=n=>e.check(J1(Iv,n)),e.cidrv6=n=>e.check(Y1(Rv,n)),e.e164=n=>e.check(eb(Ov,n)),e.datetime=n=>e.check(Qb(n)),e.date=n=>e.check(tv(n)),e.time=n=>e.check(sv(n)),e.duration=n=>e.check(ov(n))});function C(e){return P1(vv,e)}const Ze=ne("ZodStringFormat",(e,t)=>{Ve.init(e,t),Af.init(e,t)}),yv=ne("ZodEmail",(e,t)=>{$x.init(e,t),Ze.init(e,t)}),Yc=ne("ZodGUID",(e,t)=>{Lx.init(e,t),Ze.init(e,t)}),Er=ne("ZodUUID",(e,t)=>{Dx.init(e,t),Ze.init(e,t)}),wv=ne("ZodURL",(e,t)=>{Fx.init(e,t),Ze.init(e,t)}),_v=ne("ZodEmoji",(e,t)=>{Ux.init(e,t),Ze.init(e,t)}),kv=ne("ZodNanoID",(e,t)=>{Bx.init(e,t),Ze.init(e,t)}),jv=ne("ZodCUID",(e,t)=>{Wx.init(e,t),Ze.init(e,t)}),Sv=ne("ZodCUID2",(e,t)=>{Hx.init(e,t),Ze.init(e,t)}),Cv=ne("ZodULID",(e,t)=>{Vx.init(e,t),Ze.init(e,t)}),Nv=ne("ZodXID",(e,t)=>{Zx.init(e,t),Ze.init(e,t)}),Tv=ne("ZodKSUID",(e,t)=>{qx.init(e,t),Ze.init(e,t)}),Ev=ne("ZodIPv4",(e,t)=>{Xx.init(e,t),Ze.init(e,t)}),Av=ne("ZodIPv6",(e,t)=>{Qx.init(e,t),Ze.init(e,t)}),Iv=ne("ZodCIDRv4",(e,t)=>{e1.init(e,t),Ze.init(e,t)}),Rv=ne("ZodCIDRv6",(e,t)=>{t1.init(e,t),Ze.init(e,t)}),zv=ne("ZodBase64",(e,t)=>{n1.init(e,t),Ze.init(e,t)}),Pv=ne("ZodBase64URL",(e,t)=>{r1.init(e,t),Ze.init(e,t)}),Ov=ne("ZodE164",(e,t)=>{o1.init(e,t),Ze.init(e,t)}),Mv=ne("ZodJWT",(e,t)=>{a1.init(e,t),Ze.init(e,t)}),If=ne("ZodNumber",(e,t)=>{vf.init(e,t),He.init(e,t),e._zod.processJSONSchema=(s,o,i)=>Ab(e,s,o),gr(e,"ZodNumber",{gt(s,o){return this.check(Gc(s,o))},gte(s,o){return this.check(Ai(s,o))},min(s,o){return this.check(Ai(s,o))},lt(s,o){return this.check(qc(s,o))},lte(s,o){return this.check(Ei(s,o))},max(s,o){return this.check(Ei(s,o))},int(s){return this.check(Xc(s))},safe(s){return this.check(Xc(s))},positive(s){return this.check(Gc(0,s))},nonnegative(s){return this.check(Ai(0,s))},negative(s){return this.check(qc(0,s))},nonpositive(s){return this.check(Ei(0,s))},multipleOf(s,o){return this.check(Kc(s,o))},step(s,o){return this.check(Kc(s,o))},finite(){return this}});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 ib(If,e)}const Lv=ne("ZodNumberFormat",(e,t)=>{l1.init(e,t),If.init(e,t)});function Xc(e){return ab(Lv,e)}const Dv=ne("ZodBoolean",(e,t)=>{c1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Ib(e,n,s)});function Le(e){return lb(Dv,e)}const $v=ne("ZodNull",(e,t)=>{u1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Rb(e,n,s)});function bo(e){return cb($v,e)}const Fv=ne("ZodUnknown",(e,t)=>{d1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Pb()});function $n(){return ub(Fv)}const Uv=ne("ZodNever",(e,t)=>{f1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>zb(e,n,s)});function Bv(e){return db(Uv,e)}const Wv=ne("ZodArray",(e,t)=>{p1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>$b(e,n,s,o),e.element=t.element,gr(e,"ZodArray",{min(n,s){return this.check(go(n,s))},nonempty(n){return this.check(go(1,n))},max(n,s){return this.check(jf(n,s))},length(n,s){return this.check(Sf(n,s))},unwrap(){return this.element}})});function pe(e,t){return kb(Wv,e,t)}const Hv=ne("ZodObject",(e,t)=>{m1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Fb(e,n,s,o),Me(e,"shape",()=>t.shape),gr(e,"ZodObject",{keyof(){return Ee(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:$n()})},loose(){return this.clone({...this._zod.def,catchall:$n()})},strict(){return this.clone({...this._zod.def,catchall:Bv()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return Rg(this,n)},safeExtend(n){return zg(this,n)},merge(n){return Pg(this,n)},pick(n){return Ag(this,n)},omit(n){return Ig(this,n)},partial(...n){return Og(zf,this,n[0])},required(...n){return Mg(Pf,this,n[0])}})});function K(e,t){const n={type:"object",shape:e??{},...Se(t)};return new Hv(n)}const Rf=ne("ZodUnion",(e,t)=>{_f.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Ub(e,n,s,o),e.options=t.options});function Yt(e,t){return new Rf({type:"union",options:e,...Se(t)})}const Vv=ne("ZodDiscriminatedUnion",(e,t)=>{Rf.init(e,t),g1.init(e,t)});function Gn(e,t,n){return new Vv({type:"union",options:t,discriminator:e,...Se(n)})}const Zv=ne("ZodIntersection",(e,t)=>{x1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Bb(e,n,s,o)});function qv(e,t){return new Zv({type:"intersection",left:e,right:t})}const Qc=ne("ZodRecord",(e,t)=>{b1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Wb(e,n,s,o),e.keyType=t.keyType,e.valueType=t.valueType});function Ye(e,t,n){return!t||!t._zod?new Qc({type:"record",keyType:C(),valueType:e,...Se(t)}):new Qc({type:"record",keyType:e,valueType:t,...Se(n)})}const xa=ne("ZodEnum",(e,t)=>{v1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(s,o,i)=>Ob(e,s,o),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(s,o)=>{const i={};for(const a of s)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new xa({...t,checks:[],...Se(o),entries:i})},e.exclude=(s,o)=>{const i={...t.entries};for(const a of s)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new xa({...t,checks:[],...Se(o),entries:i})}});function Ee(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(s=>[s,s])):e;return new xa({type:"enum",entries:n,...Se(t)})}const Gv=ne("ZodLiteral",(e,t)=>{y1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Mb(e,n,s),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 Ae(e,t){return new Gv({type:"literal",values:Array.isArray(e)?e:[e],...Se(t)})}const Kv=ne("ZodTransform",(e,t)=>{w1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Db(e,n),e._zod.parse=(n,s)=>{if(s.direction==="backward")throw new sf(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(ir(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(ir(a))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n.fallback=!0,n)):(n.value=o,n.fallback=!0,n)}});function Jv(e){return new Kv({type:"transform",transform:e})}const zf=ne("ZodOptional",(e,t)=>{kf.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Ef(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function eu(e){return new zf({type:"optional",innerType:e})}const Yv=ne("ZodExactOptional",(e,t)=>{_1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Ef(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function Xv(e){return new Yv({type:"optional",innerType:e})}const Qv=ne("ZodNullable",(e,t)=>{k1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Hb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function tu(e){return new Qv({type:"nullable",innerType:e})}const e2=ne("ZodDefault",(e,t)=>{j1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Zb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function t2(e,t){return new e2({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():af(t)}})}const n2=ne("ZodPrefault",(e,t)=>{S1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>qb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function s2(e,t){return new n2({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():af(t)}})}const Pf=ne("ZodNonOptional",(e,t)=>{C1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Vb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function r2(e,t){return new Pf({type:"nonoptional",innerType:e,...Se(t)})}const o2=ne("ZodCatch",(e,t)=>{N1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Gb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function i2(e,t){return new o2({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const a2=ne("ZodPipe",(e,t)=>{T1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Kb(e,n,s,o),e.in=t.in,e.out=t.out});function nu(e,t){return new a2({type:"pipe",in:e,out:t})}const l2=ne("ZodReadonly",(e,t)=>{E1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Jb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function c2(e){return new l2({type:"readonly",innerType:e})}const u2=ne("ZodLazy",(e,t)=>{A1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Yb(e,n,s,o),e.unwrap=()=>e._zod.def.getter()});function d2(e){return new u2({type:"lazy",getter:e})}const f2=ne("ZodCustom",(e,t)=>{I1.init(e,t),He.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Lb(e,n)});function p2(e,t={}){return jb(f2,e,t)}function h2(e,t){return Sb(e,t)}const st=d2(()=>Yt([C(),G(),Le(),bo(),pe(st),Ye(C(),st)]));function Of(e){return e===void 0||typeof e=="bigint"||typeof e=="function"?null:e}const Mf=K({index:G(),timestamp:G(),type:C(),data:st}),m2=K({chunks:pe(Mf),truncated:Le().optional().default(!1)}),g2=Ee(["request","response"]),x2=K({logId:G().int().positive(),part:g2,text:C(),offset:G().int().nonnegative(),limit:G().int().positive(),totalBytes:G().int().nonnegative(),textBytes:G().int().nonnegative(),nextOffset:G().int().nonnegative().nullable(),hasMore:Le(),contentMode:Ee(["empty","partial","full"])}),ar=K({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:Le(),userAgent:C().nullable(),origin:C().nullable(),rawHeaders:Ye(C(),C()).optional(),headers:Ye(C(),C()).optional(),apiFormat:Ee(["anthropic","openai","unknown"]).default("unknown"),isTest:Le().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:m2.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()}),xl=K({type:C(),ttl:C().optional(),scope:C().optional()}),bl=K({type:Ae("text"),text:C(),cache_control:xl.optional()}),Lf=K({type:Ae("thinking"),thinking:C(),signature:C().optional()}),b2=K({type:Ae("think"),thinking:C(),signature:C().optional()}),v2=K({type:Ae("base64"),media_type:C(),data:C()}),Df=K({type:Ae("image"),source:v2}),$f=K({type:Ae("tool_use"),id:C(),name:C(),input:Ye(C(),st)}),y2=Gn("type",[bl,Df]),w2=K({type:Ae("tool_result"),tool_use_id:C().optional(),content:Yt([C(),pe(y2)]),is_error:Le().optional()}),_2=Gn("type",[bl,Lf,Df,$f,w2]),k2=Yt([C(),pe(_2)]),j2=K({role:Ee(["user","assistant"]),content:k2}),S2=K({type:Ae("text"),text:C(),cache_control:xl.optional()}),C2=K({type:C(),properties:Ye(C(),Ye(C(),st)).optional(),required:pe(C()).optional(),additionalProperties:Le().optional(),$schema:C().optional()}),N2=K({name:C(),description:C().optional(),input_schema:C2.optional(),cache_control:xl.optional()}),T2=Gn("type",[K({type:Ae("enabled"),budget_tokens:G()}),K({type:Ae("disabled")}),K({type:Ae("adaptive")})]),Ff=K({model:C(),messages:pe(j2),system:pe(S2).optional(),tools:pe(N2).optional(),max_tokens:G().optional(),temperature:G().optional(),stream:Le().optional(),thinking:T2.optional(),metadata:K({user_id:C().optional()}).optional()}),vl=Gn("type",[bl,Lf,b2,$f]),E2=K({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(),Uf=K({id:C(),type:Ae("message"),model:C(),role:Ae("assistant"),content:pe(vl),stop_reason:C().nullable(),stop_sequence:C().nullable().optional(),usage:E2}).passthrough(),A2=K({type:Ae("message_start"),message:K({id:C(),type:Ae("message"),model:C(),role:Ae("assistant"),content:pe(vl),stop_reason:bo(),stop_sequence:bo(),usage:K({input_tokens:G(),cache_creation_input_tokens:G().optional(),cache_read_input_tokens:G().optional()}).passthrough()})}),I2=K({type:Ae("content_block_start"),index:G(),content_block:vl}),R2=Gn("type",[K({type:Ae("text_delta"),text:C()}),K({type:Ae("input_json_delta"),partial_json:C()}),K({type:Ae("thinking_delta"),thinking:C()}),K({type:Ae("signature_delta"),signature:C()})]),z2=K({type:Ae("content_block_delta"),index:G(),delta:R2}),P2=K({type:Ae("content_block_stop"),index:G()}),O2=K({type:Ae("message_delta"),delta:K({stop_reason:C().nullable(),stop_sequence:C().nullable().optional()}),usage:K({output_tokens:G(),input_tokens:G().optional(),cache_creation_input_tokens:G().optional(),cache_read_input_tokens:G().optional()}).passthrough()}),M2=K({type:Ae("message_stop")}),L2=K({type:Ae("ping")}),D2=K({type:Ae("error"),error:K({type:C(),message:C()})}),$2=Gn("type",[A2,I2,z2,P2,O2,M2,L2,D2]),F2=Yt([C(),pe(Gn("type",[K({type:Ae("text"),text:C()}),K({type:Ae("image_url"),image_url:K({url:C(),detail:C().optional()})})]))]),Bf=K({role:Ee(["system","user","assistant","tool"]),content:F2,name:C().optional(),reasoning_content:C().optional(),thinking:C().optional(),think:C().optional()}),U2=K({name:C(),arguments:C()}),Wf=K({index:G().optional(),id:C().optional(),type:Ae("function").optional(),function:K({name:C().optional(),arguments:C().optional()})});Bf.extend({content:Yt([C(),pe(K({type:Ae("text"),text:C()}))]).optional(),function_call:U2.optional(),tool_calls:pe(Wf).optional()});const B2=K({type:Ae("function"),function:K({name:C(),description:C().optional(),parameters:Ye(C(),st)})}),Hf=K({model:C(),messages:pe(Bf),temperature:G().optional(),max_tokens:G().optional(),stream:Le().optional(),tools:pe(B2).optional(),tool_choice:Yt([Ee(["auto","none","required"]),K({type:Ae("auto")}),K({type:Ae("none")}),K({type:Ae("function"),function:K({name:C()})})]).optional(),user:C().optional()}),W2=K({type:C(),name:C().optional(),description:C().optional(),parameters:st.optional(),function:K({name:C().optional(),description:C().optional(),parameters:st.optional()}).optional()}).passthrough(),Vf=K({model:C(),input:$n().optional(),instructions:Yt([C(),bo()]).optional(),stream:Le().optional(),tools:pe(W2).optional(),tool_choice:$n().optional(),max_output_tokens:G().optional(),temperature:G().optional(),user:C().optional(),metadata:Ye(C(),$n()).optional()}).passthrough(),Zf=K({role:Ee(["assistant"]).optional(),content:C().nullable().optional(),reasoning_content:C().nullable().optional(),thinking:C().nullable().optional(),think:C().nullable().optional(),function_call:K({name:C().optional(),arguments:C().optional()}).nullable().optional(),tool_calls:pe(K({index:G(),id:C().optional(),type:Ae("function").optional(),function:K({name:C().optional(),arguments:C().optional()})})).nullable().optional()}),H2=K({index:G(),message:K({role:Ee(["assistant"]),content:C().nullable(),reasoning_content:C().optional(),thinking:C().optional(),think:C().optional(),function_call:K({name:C(),arguments:C()}).nullable().optional(),tool_calls:pe(Wf).optional()}).optional(),delta:Zf.optional(),finish_reason:C().nullable()}),V2=K({id:C(),object:Ae("chat.completion"),created:G(),model:C(),choices:pe(H2),usage:K({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(),Z2=K({id:C(),object:Ae("chat.completion.chunk"),created:G(),model:C(),choices:pe(K({index:G(),delta:Zf,finish_reason:C().nullable().optional()})),usage:K({prompt_tokens:G().nullable().optional(),completion_tokens:G().nullable().optional(),total_tokens:G().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),q2=K({input_tokens:G().nullable().optional(),output_tokens:G().nullable().optional(),total_tokens:G().nullable().optional(),input_tokens_details:K({cached_tokens:G().nullable().optional()}).passthrough().nullable().optional(),output_tokens_details:K({reasoning_tokens:G().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),G2=K({type:C()}).passthrough(),vo=K({id:C(),object:Ae("response").optional(),created_at:G().optional(),status:C().nullable().optional(),model:C().optional(),output:pe(G2).optional(),output_text:C().optional(),usage:q2.nullable().optional(),error:$n().optional()}).passthrough(),K2=K({type:C()}).passthrough();function qf(e){try{const t=JSON.parse(e),n=V2.safeParse(t);return n.success?n.data:null}catch{return null}}function Gf(e){try{const t=JSON.parse(e),n=vo.safeParse(t);return n.success?n.data:null}catch{return null}}const J2=K({error:C()});async function yl(e,t){const n=await e.json();return t.parse(n)}async function wl(e,t){try{const n=await e.json(),s=J2.safeParse(n);return s.success?s.data.error:t}catch{return t}}async function ht(e,t,n,s){const o=await fetch(e,n);if(!o.ok){const i=s?.(o)??`Request failed with status ${o.status}`;throw new Error(await wl(o,i))}return yl(o,t)}function Y2(e){return e<1e3?`${String(e)}ms`:`${String(Math.round(e/1e3))}s`}class Yo extends Error{constructor(t){super(`Request timed out after ${Y2(t)}`),this.name="ApiTimeoutError"}}async function Fn(e,t,n){const s=new AbortController;let o=!1;const i=setTimeout(()=>{o=!0,s.abort()},t),a=n?.signal??void 0,l=()=>s.abort();a!==void 0&&(a.aborted?s.abort():a.addEventListener("abort",l,{once:!0}));try{return await fetch(e,{...n,signal:s.signal})}catch(c){throw o&&c instanceof DOMException&&c.name==="AbortError"?new Yo(t):c}finally{clearTimeout(i),a?.removeEventListener("abort",l)}}async function Ke(e,t,n,s,o){const i=await Fn(e,n,s);if(!i.ok){const a=o?.(i)??`Request failed with status ${i.status}`;throw new Error(await wl(i,a))}return yl(i,t)}const Kf=K({input:G().int().nonnegative(),output:G().int().nonnegative(),cacheCreate:G().int().nonnegative(),cacheRead:G().int().nonnegative(),total:G().int().nonnegative()}),X2=K({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:Le(),hasError:Le(),error:C().nullable(),latencyMs:G().nullable(),firstChunkMs:G().nullable().optional(),totalStreamMs:G().nullable().optional(),tokensPerSecond:G().nullable().optional(),tokens:K({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()}),Jf=K({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:Kf,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(X2)}),xr=Ee(["created","running","completed","failed","cancelled"]),_l=K({jsonPath:C(),markdownPath:C(),htmlPath:C(),exportedAt:C()}),Q2=Ee(["run-created","session-started","request","session-finished","evidence-exported"]),ey=Ee(["info","success","warning","error"]),ty=K({timestamp:C(),kind:Q2,severity:ey,title:C(),details:C(),logId:G().int().positive().nullable(),status:G().nullable(),model:C().nullable(),provider:C().nullable(),latencyMs:G().nullable(),isStreaming:Le().nullable()}),ny=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"]),Yf=K({outcome:Ee(["success","failure","active","unknown"]),severity:Ee(["none","low","medium","high"]),category:ny,summary:C(),evidenceLogIds:pe(G().int().positive()),hints:pe(C())}),kl=K({status:Ee(["PASS","FAIL","RUNNING","UNKNOWN"]),summary:C(),markdown:C()}),Xf=kl,jl=K({id:C(),sessionId:C(),groupId:C().nullable().default(null),title:C(),task:C().nullable(),project:C().nullable(),agent:C().nullable(),status:xr,tags:pe(C()),metadata:Ye(C(),st),evidence:_l.nullable(),createdAt:C(),updatedAt:C()});K({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:xr.optional(),tags:pe(C()).optional(),metadata:Ye(C(),st).optional()}).optional();K({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:xr.optional(),tags:pe(C()).optional(),metadata:Ye(C(),st).optional()});K({includeHistory:Le().optional(),latestLogLimit:G().int().positive().max(50).optional()}).optional();K({run:jl,evidence:_l,session:Jf.nullable(),timeline:pe(ty),classification:Yf,jenkinsReport:kl});const sy=K({run:jl,classification:Yf,evidence:_l.nullable(),jenkinsReport:kl.nullable(),sessionId:C(),inspectorUrl:C().nullable(),evidenceMarkdownPath:C().nullable(),updatedAt:C()});K({failures:pe(sy),total:G().int().nonnegative(),limit:G().int().positive()});const Sl=Ee(["created","running","completed","failed","cancelled"]),Cl=Ee(["evaluation","batch","manual"]),Nl=K({jsonPath:C(),markdownPath:C(),htmlPath:C(),exportedAt:C()}),Qf=K({id:C(),groupId:C(),sessionId:C(),runId:C().nullable(),label:C().nullable(),agent:C().nullable(),provider:C().nullable(),model:C().nullable(),status:xr.nullable(),metadata:Ye(C(),st),addedAt:C(),updatedAt:C()}),Tl=K({id:C(),title:C(),kind:Cl,task:C().nullable(),project:C().nullable(),status:Sl,tags:pe(C()),metadata:Ye(C(),st),evidence:Nl.nullable(),members:pe(Qf),createdAt:C(),updatedAt:C()});K({groupId:C().min(1).optional(),title:C().min(1).optional(),kind:Cl.optional(),task:C().nullable().optional(),project:C().nullable().optional(),status:Sl.optional(),tags:pe(C()).optional(),metadata:Ye(C(),st).optional()}).optional();K({title:C().min(1).optional(),kind:Cl.optional(),task:C().nullable().optional(),project:C().nullable().optional(),status:Sl.optional(),tags:pe(C()).optional(),metadata:Ye(C(),st).optional()});K({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:xr.nullable().optional(),metadata:Ye(C(),st).optional()});K({includeHistory:Le().optional(),latestLogLimit:G().int().positive().max(50).optional()}).optional();K({deleteEvidence:Le().optional()});const ep=K({groupId:C(),deleted:Le(),evidenceDeleted:Le(),evidencePath:C().nullable()}),tp=K({deleted:G().int().nonnegative(),groups:pe(ep)}),np=K({member:Qf,run:jl.nullable(),session:Jf.nullable()}),sp=K({memberCount:G().int().nonnegative(),sessionsWithData:G().int().nonnegative(),missingSessions:G().int().nonnegative(),requestCount:G().int().nonnegative(),errorCount:G().int().nonnegative(),tokenUsage:Kf,models:pe(C()),providers:pe(C()),completedMembers:G().int().nonnegative(),failedMembers:G().int().nonnegative(),runningMembers:G().int().nonnegative()}),ry=K({group:Tl,evidence:Nl,members:pe(np).nullable(),markdown:C(),summary:sp.nullable(),report:Xf.nullable()}),oy=K({group:Tl,evidence:Nl,members:pe(np),summary:sp,jenkinsReport:Xf}),rp=K({groups:pe(Tl)}),iy=K({sessionId:C(),imported:G().int().nonnegative(),skipped:G().int().nonnegative(),warnings:pe(C()),logs:pe(ar)}),yo=10,ba=600,wo=60,va=600,_o="time",El="simple",op=Ee(["time","full"]),ay=Ee(["simple","full"]),Xo=K({stripClaudeCodeBillingHeader:Le(),hasSeenOnboarding:Le().default(!1),slowResponseThresholdSeconds:G().int().min(0).max(ba).default(yo),providerTestTimeoutSeconds:G().int().min(1).max(va).default(wo),timeDisplayFormat:op.default(_o),captureMode:ay.default(El)}),ps="/api/config";async function ly(e){return ht(e,Xo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function Ar(e){return ht(ps,Xo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function Al(){const e=Zt(ps,ly,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=tf(),n=e.data?.stripClaudeCodeBillingHeader??!1,s=e.data?.captureMode??El,o=e.data?.slowResponseThresholdSeconds??yo,i=e.data?.providerTestTimeoutSeconds??wo,a=e.data?.timeDisplayFormat??_o,l=m=>({stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:e.data?.hasSeenOnboarding??!1,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??yo,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??wo,timeDisplayFormat:e.data?.timeDisplayFormat??_o,captureMode:s,...m}),c=async m=>{await t(ps,Ar({stripClaudeCodeBillingHeader:m}),{optimisticData:l({stripClaudeCodeBillingHeader:m}),rollbackOnError:!0,revalidate:!1})},u=async m=>{await t(ps,Ar({slowResponseThresholdSeconds:m}),{optimisticData:l({slowResponseThresholdSeconds:m}),rollbackOnError:!0,revalidate:!1})},f=async m=>{await t(ps,Ar({timeDisplayFormat:m}),{optimisticData:l({timeDisplayFormat:m}),rollbackOnError:!0,revalidate:!1})},d=async m=>{await t(ps,Ar({providerTestTimeoutSeconds:m}),{optimisticData:l({providerTestTimeoutSeconds:m}),rollbackOnError:!0,revalidate:!1})};return{strip:n,captureMode:s,slowResponseThresholdSeconds:o,providerTestTimeoutSeconds:i,timeDisplayFormat:a,isLoading:e.isLoading,isError:e.error!==void 0,setStrip:c,setSlowResponseThresholdSeconds:u,setProviderTestTimeoutSeconds:d,setTimeDisplayFormat:f}}const ip=(...e)=>e.filter((t,n,s)=>!!t&&t.trim()!==""&&s.indexOf(t)===n).join(" ").trim();const cy=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const uy=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,s)=>s?s.toUpperCase():n.toLowerCase());const su=e=>{const t=uy(e);return t.charAt(0).toUpperCase()+t.slice(1)};var dy={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 fy=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const py=p.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:s,className:o="",children:i,iconNode:a,...l},c)=>p.createElement("svg",{ref:c,...dy,width:t,height:t,stroke:e,strokeWidth:s?Number(n)*24/Number(t):n,className:ip("lucide",o),...!i&&!fy(l)&&{"aria-hidden":"true"},...l},[...a.map(([u,f])=>p.createElement(u,f)),...Array.isArray(i)?i:[i]]));const ue=(e,t)=>{const n=p.forwardRef(({className:s,...o},i)=>p.createElement(py,{ref:i,iconNode:t,className:ip(`lucide-${cy(su(e))}`,`lucide-${e}`,s),...o}));return n.displayName=su(e),n};const hy=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],my=ue("activity",hy);const gy=[["path",{d:"m7 7 10 10",key:"1fmybs"}],["path",{d:"M17 7v10H7",key:"6fjiku"}]],xy=ue("arrow-down-right",gy);const by=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],vy=ue("arrow-down",by);const yy=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],wy=ue("arrow-left",yy);const _y=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],ky=ue("arrow-up-right",_y);const jy=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Sy=ue("arrow-up",jy);const Cy=[["path",{d:"M4.5 3h15",key:"c7n0jr"}],["path",{d:"M6 3v16a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V3",key:"m1uhx7"}],["path",{d:"M6 14h12",key:"4cwo0f"}]],Il=ue("beaker",Cy);const Ny=[["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"}]],Ty=ue("bell",Ny);const Ey=[["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"}]],Ay=ue("blocks",Ey);const Iy=[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M9 13a4.5 4.5 0 0 0 3-4",key:"10igwf"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M12 13h4",key:"1ku699"}],["path",{d:"M12 18h6a2 2 0 0 1 2 2v1",key:"105ag5"}],["path",{d:"M12 8h8",key:"1lhi5i"}],["path",{d:"M16 8V5a2 2 0 0 1 2-2",key:"u6izg6"}],["circle",{cx:"16",cy:"13",r:".5",key:"ry7gng"}],["circle",{cx:"18",cy:"3",r:".5",key:"1aiba7"}],["circle",{cx:"20",cy:"21",r:".5",key:"yhc1fs"}],["circle",{cx:"20",cy:"8",r:".5",key:"1e43v0"}]],Ry=ue("brain-circuit",Iy);const zy=[["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"}]],ap=ue("brain",zy);const Py=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Ge=ue("check",Py);const Oy=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],it=ue("chevron-down",Oy);const My=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Ly=ue("chevron-left",My);const Dy=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Et=ue("chevron-right",Dy);const $y=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Rl=ue("chevron-up",$y);const Fy=[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]],Uy=ue("chevrons-down",Fy);const By=[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]],Wy=ue("chevrons-left",By);const Hy=[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]],Vy=ue("chevrons-right",Hy);const Zy=[["path",{d:"m17 11-5-5-5 5",key:"e8nh98"}],["path",{d:"m17 18-5-5-5 5",key:"2avn1x"}]],qy=ue("chevrons-up",Zy);const Gy=[["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"}]],Ss=ue("circle-alert",Gy);const Ky=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],zl=ue("circle-check-big",Ky);const Jy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],ya=ue("circle-check",Jy);const Yy=[["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"}]],Xy=ue("circle-question-mark",Yy);const Qy=[["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"}]],lp=ue("circle-x",Qy);const ew=[["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"}]],tw=ue("clapperboard",ew);const nw=[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],sw=ue("clock-3",nw);const rw=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],sn=ue("clock",rw);const ow=[["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"}]],iw=ue("cloud-upload",ow);const aw=[["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"}]],lw=ue("code-xml",aw);const cw=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]],uw=ue("columns-2",cw);const dw=[["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"}]],It=ue("copy",dw);const fw=[["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"}]],pw=ue("cpu",fw);const hw=[["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"}]],br=ue("download",hw);const mw=[["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"}]],gw=ue("ellipsis",mw);const xw=[["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"}]],Pl=ue("external-link",xw);const bw=[["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"}]],Ol=ue("eye-off",bw);const vw=[["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"}]],Ml=ue("eye",vw);const yw=[["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"}]],ww=ue("file-braces",yw);const _w=[["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"}]],kw=ue("file-diff",_w);const jw=[["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"}]],Sw=ue("file-search",jw);const Cw=[["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"}]],Nw=ue("file-terminal",Cw);const Tw=[["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"}]],Ew=ue("file-text",Tw);const Aw=[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]],Iw=ue("flag",Aw);const Rw=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],cp=ue("flask-conical",Rw);const zw=[["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"}]],Pw=ue("folder-open",zw);const Ow=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],Ll=ue("gauge",Ow);const Mw=[["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"}]],Lw=ue("git-compare-arrows",Mw);const Dw=[["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"}]],up=ue("globe",Dw);const $w=[["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"}]],dp=ue("history",$w);const Fw=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Uw=ue("info",Fw);const Bw=[["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"}]],ru=ue("layers",Bw);const Ww=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],Qe=ue("loader-circle",Ww);const Hw=[["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"}]],Vw=ue("lock",Hw);const Zw=[["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"}]],Qo=ue("message-square",Zw);const qw=[["path",{d:"M5 12h14",key:"1ays0h"}]],fp=ue("minus",qw);const Gw=[["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"}]],Kw=ue("monitor",Gw);const Jw=[["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"}]],Yw=ue("mouse-pointer-click",Jw);const Xw=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],Qw=ue("network",Xw);const e_=[["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"}]],t_=ue("octagon-alert",e_);const n_=[["path",{d:"m16 16 2 2 4-4",key:"gfu2re"}],["path",{d:"M21 10V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l2-1.14",key:"e7tb2h"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["line",{x1:"12",x2:"12",y1:"22",y2:"12",key:"a4e8g8"}]],s_=ue("package-check",n_);const r_=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]],o_=ue("panel-right-close",r_);const i_=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m10 15-3-3 3-3",key:"1pgupc"}]],a_=ue("panel-right-open",i_);const l_=[["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"}]],pp=ue("pencil",l_);const c_=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],wa=ue("plus",c_);const u_=[["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"}]],ou=ue("radio",u_);const d_=[["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"}]],yn=ue("refresh-cw",d_);const f_=[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]],hp=ue("rocket",f_);const p_=[["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"}]],h_=ue("rotate-ccw",p_);const m_=[["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"}]],ko=ue("rotate-cw",m_);const g_=[["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"}]],x_=ue("rows-3",g_);const b_=[["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"}]],v_=ue("save",b_);const y_=[["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"}]],w_=ue("scan",y_);const __=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],mp=ue("search",__);const k_=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]],j_=ue("send",k_);const S_=[["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"}]],C_=ue("server",S_);const N_=[["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"}]],T_=ue("settings",N_);const E_=[["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"}]],A_=ue("shield-alert",E_);const I_=[["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"}]],iu=ue("shield-check",I_);const R_=[["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"}]],_a=ue("siren",R_);const z_=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],au=ue("sparkles",z_);const P_=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],Ds=ue("terminal",P_);const O_=[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]],M_=ue("timer",O_);const L_=[["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"}]],wn=ue("trash-2",L_);const D_=[["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"}]],rn=ue("triangle-alert",D_);const $_=[["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"}]],gp=ue("upload",$_);const F_=[["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"}]],U_=ue("wifi-off",F_);const B_=[["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"}]],W_=ue("wifi",B_);const H_=[["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"}]],$s=ue("wrench",H_);const V_=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],vr=ue("x",V_);const Z_=[["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"}]],lr=ue("zap",Z_),ka="/api/config";async function q_(e){return ht(e,Xo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function G_(e){return ht(ka,Xo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function K_(){const e=Zt(ka,q_,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=tf(),n=e.data?.hasSeenOnboarding??!1,s=e.data?.captureMode??El,o=async()=>{await t(ka,G_({hasSeenOnboarding:!0}),{optimisticData:{stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:!0,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??yo,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??wo,timeDisplayFormat:e.data?.timeDisplayFormat??_o,captureMode:s},rollbackOnError:!0,revalidate:!1})};return{hasSeenOnboarding:n,captureMode:s,isLoading:e.isLoading,markSeen:o}}function J_(){const{hasSeenOnboarding:e,isLoading:t,markSeen:n}=K_(),[s,o]=p.useState(!1);if(t||e)return null;const i=s?"grid":"hidden sm:grid";return r.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:r.jsxs("div",{className:"flex items-start gap-3",children:[r.jsx(Uw,{className:"mt-0.5 size-4 shrink-0 text-amber-300","aria-hidden":"true"}),r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"font-medium text-amber-200",children:"Inspector ready"}),r.jsx("span",{className:"hidden truncate text-xs text-muted-foreground sm:inline",children:"Request, response, tool, timing, token, replay, and memory signals are active."})]}),r.jsx("div",{className:"mt-1 text-xs leading-relaxed text-muted-foreground sm:hidden",children:"Core capture is active."}),r.jsxs("div",{className:`${i} mt-2 gap-x-4 gap-y-1 text-xs leading-relaxed text-muted-foreground sm:grid-cols-2`,children:[r.jsxs("div",{children:[r.jsx("strong",{children:"Evidence"}),": logs, sessions, groups, and MCP exports are available."]}),r.jsxs("div",{children:[r.jsx("strong",{children:"Network"}),": replace ",r.jsx("code",{children:"localhost"})," if containers differ."]})]})]}),r.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":s,"aria-label":s?"Hide onboarding details":"Show onboarding details",children:r.jsx(it,{className:`size-3.5 transition-transform ${s?"rotate-180":""}`})}),r.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:[r.jsx(Ge,{className:"size-3.5"}),"Got it"]}),r.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:r.jsx(vr,{className:"size-3.5"})})]})})}function Ir(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 Ii={exports:{}};var lu;function Y_(){return lu||(lu=1,(function(e,t){(function(n){e.exports=n()})(function(){return(function n(s,o,i){function a(u,f){if(!o[u]){if(!s[u]){var d=typeof Ir=="function"&&Ir;if(!f&&d)return d(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:{}};s[u][0].call(h.exports,function(b){var g=s[u][1][b];return a(g||b)},h,h.exports,n,s,o,i)}return o[u].exports}for(var l=typeof Ir=="function"&&Ir,c=0;c<i.length;c++)a(i[c]);return a})({1:[function(n,s,o){var i=n("./utils"),a=n("./support"),l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";o.encode=function(c){for(var u,f,d,m,h,b,g,x=[],v=0,y=c.length,_=y,j=i.getTypeOf(c)!=="string";v<c.length;)_=y-v,d=j?(u=c[v++],f=v<y?c[v++]:0,v<y?c[v++]:0):(u=c.charCodeAt(v++),f=v<y?c.charCodeAt(v++):0,v<y?c.charCodeAt(v++):0),m=u>>2,h=(3&u)<<4|f>>4,b=1<_?(15&f)<<2|d>>6:64,g=2<_?63&d:64,x.push(l.charAt(m)+l.charAt(h)+l.charAt(b)+l.charAt(g));return x.join("")},o.decode=function(c){var u,f,d,m,h,b,g=0,x=0,v="data:";if(c.substr(0,v.length)===v)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,f=(15&m)<<4|(h=l.indexOf(c.charAt(g++)))>>2,d=(3&h)<<6|(b=l.indexOf(c.charAt(g++))),y[x++]=u,h!==64&&(y[x++]=f),b!==64&&(y[x++]=d);return y}},{"./support":30,"./utils":32}],2:[function(n,s,o){var i=n("./external"),a=n("./stream/DataWorker"),l=n("./stream/Crc32Probe"),c=n("./stream/DataLengthProbe");function u(f,d,m,h,b){this.compressedSize=f,this.uncompressedSize=d,this.crc32=m,this.compression=h,this.compressedContent=b}u.prototype={getContentWorker:function(){var f=new a(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new c("data_length")),d=this;return f.on("end",function(){if(this.streamInfo.data_length!==d.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),f},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(f,d,m){return f.pipe(new l).pipe(new c("uncompressedSize")).pipe(d.compressWorker(m)).pipe(new c("compressedSize")).withStreamInfo("compression",d)},s.exports=u},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(n,s,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,s,o){var i=n("./utils"),a=(function(){for(var l,c=[],u=0;u<256;u++){l=u;for(var f=0;f<8;f++)l=1&l?3988292384^l>>>1:l>>>1;c[u]=l}return c})();s.exports=function(l,c){return l!==void 0&&l.length?i.getTypeOf(l)!=="string"?(function(u,f,d,m){var h=a,b=m+d;u^=-1;for(var g=m;g<b;g++)u=u>>>8^h[255&(u^f[g])];return-1^u})(0|c,l,l.length,0):(function(u,f,d,m){var h=a,b=m+d;u^=-1;for(var g=m;g<b;g++)u=u>>>8^h[255&(u^f.charCodeAt(g))];return-1^u})(0|c,l,l.length,0):0}},{"./utils":32}],5:[function(n,s,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,s,o){var i=null;i=typeof Promise<"u"?Promise:n("lie"),s.exports={Promise:i}},{lie:37}],7:[function(n,s,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 f(d,m){c.call(this,"FlateWorker/"+d),this._pako=null,this._pakoAction=d,this._pakoOptions=m,this.meta={}}o.magic="\b\0",l.inherits(f,c),f.prototype.processChunk=function(d){this.meta=d.meta,this._pako===null&&this._createPako(),this._pako.push(l.transformTo(u,d.data),!1)},f.prototype.flush=function(){c.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},f.prototype.cleanUp=function(){c.prototype.cleanUp.call(this),this._pako=null},f.prototype._createPako=function(){this._pako=new a[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var d=this;this._pako.onData=function(m){d.push({data:m,meta:d.meta})}},o.compressWorker=function(d){return new f("Deflate",d)},o.uncompressWorker=function(){return new f("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(n,s,o){function i(h,b){var g,x="";for(g=0;g<b;g++)x+=String.fromCharCode(255&h),h>>>=8;return x}function a(h,b,g,x,v,y){var _,j,S=h.file,N=h.compression,T=y!==u.utf8encode,A=l.transformTo("string",y(S.name)),I=l.transformTo("string",u.utf8encode(S.name)),P=S.comment,L=l.transformTo("string",y(P)),E=l.transformTo("string",u.utf8encode(P)),D=I.length!==S.name.length,w=E.length!==P.length,$="",ee="",F="",te=S.dir,V=S.date,X={crc32:0,compressedSize:0,uncompressedSize:0};b&&!g||(X.crc32=h.crc32,X.compressedSize=h.compressedSize,X.uncompressedSize=h.uncompressedSize);var H=0;b&&(H|=8),T||!D&&!w||(H|=2048);var B=0,ce=0;te&&(B|=16),v==="UNIX"?(ce=798,B|=(function(Y,_e){var fe=Y;return Y||(fe=_e?16893:33204),(65535&fe)<<16})(S.unixPermissions,te)):(ce=20,B|=(function(Y){return 63&(Y||0)})(S.dosPermissions)),_=V.getUTCHours(),_<<=6,_|=V.getUTCMinutes(),_<<=5,_|=V.getUTCSeconds()/2,j=V.getUTCFullYear()-1980,j<<=4,j|=V.getUTCMonth()+1,j<<=5,j|=V.getUTCDate(),D&&(ee=i(1,1)+i(f(A),4)+I,$+="up"+i(ee.length,2)+ee),w&&(F=i(1,1)+i(f(L),4)+E,$+="uc"+i(F.length,2)+F);var W="";return W+=`
|
|
66
|
-
\0`,W+=i(H,2),W+=N.magic,W+=i(_,2),W+=i(j,2),W+=i(X.crc32,4),W+=i(X.compressedSize,4),W+=i(X.uncompressedSize,4),W+=i(A.length,2),W+=i($.length,2),{fileRecord:d.LOCAL_FILE_HEADER+W+A+$,dirRecord:d.CENTRAL_FILE_HEADER+i(ce,2)+W+i(L.length,2)+"\0\0\0\0"+i(B,4)+i(x,4)+A+$+L}}var l=n("../utils"),c=n("../stream/GenericWorker"),u=n("../utf8"),f=n("../crc32"),d=n("../signature");function m(h,b,g,x){c.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,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 b=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?(b+100*(g-x-1))/g:100}}))},m.prototype.openedSource=function(h){this.currentSourceOffset=this.bytesWritten,this.currentFile=h.file.name;var b=this.streamFiles&&!h.file.dir;if(b){var g=a(h,b,!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 b=this.streamFiles&&!h.file.dir,g=a(h,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(g.dirRecord),b)this.push({data:(function(x){return d.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,b=0;b<this.dirRecords.length;b++)this.push({data:this.dirRecords[b],meta:{percent:100}});var g=this.bytesWritten-h,x=(function(v,y,_,j,S){var N=l.transformTo("string",S(j));return d.CENTRAL_DIRECTORY_END+"\0\0\0\0"+i(v,2)+i(v,2)+i(y,4)+i(_,4)+i(N.length,2)+N})(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 b=this;return h.on("data",function(g){b.processChunk(g)}),h.on("end",function(){b.closedSource(b.previous.streamInfo),b._sources.length?b.prepareNextSource():b.end()}),h.on("error",function(g){b.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 b=this._sources;if(!c.prototype.error.call(this,h))return!1;for(var g=0;g<b.length;g++)try{b[g].error(h)}catch{}return!0},m.prototype.lock=function(){c.prototype.lock.call(this);for(var h=this._sources,b=0;b<h.length;b++)h[b].lock()},s.exports=m},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(n,s,o){var i=n("../compressions"),a=n("./ZipFileWorker");o.generateWorker=function(l,c,u){var f=new a(c.streamFiles,u,c.platform,c.encodeFileName),d=0;try{l.forEach(function(m,h){d++;var b=(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,v=h.date;h._compressWorker(b,g).withStreamInfo("file",{name:m,dir:x,date:v,comment:h.comment||"",unixPermissions:h.unixPermissions,dosPermissions:h.dosPermissions}).pipe(f)}),f.entriesCount=d}catch(m){f.error(m)}return f}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(n,s,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"),s.exports=i},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(n,s,o){var i=n("./utils"),a=n("./external"),l=n("./utf8"),c=n("./zipEntries"),u=n("./stream/Crc32Probe"),f=n("./nodejsUtils");function d(m){return new a.Promise(function(h,b){var g=m.decompressed.getContentWorker().pipe(new u);g.on("error",function(x){b(x)}).on("end",function(){g.streamInfo.crc32!==m.decompressed.crc32?b(new Error("Corrupted zip : CRC32 mismatch")):h()}).resume()})}s.exports=function(m,h){var b=this;return h=i.extend(h||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:l.utf8decode}),f.isNode&&f.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)],v=g.files;if(h.checkCRC32)for(var y=0;y<v.length;y++)x.push(d(v[y]));return a.Promise.all(x)}).then(function(g){for(var x=g.shift(),v=x.files,y=0;y<v.length;y++){var _=v[y],j=_.fileNameStr,S=i.resolve(_.fileNameStr);b.file(S,_.decompressed,{binary:!0,optimizedBinaryString:!0,date:_.date,dir:_.dir,comment:_.fileCommentStr.length?_.fileCommentStr:null,unixPermissions:_.unixPermissions,dosPermissions:_.dosPermissions,createFolders:h.createFolders}),_.dir||(b.file(S).unsafeOriginalName=j)}return x.zipComment.length&&(b.comment=x.zipComment),b})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(n,s,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(f){u.push({data:f,meta:{percent:0}})}).on("error",function(f){u.isPaused?this.generatedError=f:u.error(f)}).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)},s.exports=l},{"../stream/GenericWorker":28,"../utils":32}],13:[function(n,s,o){var i=n("readable-stream").Readable;function a(l,c,u){i.call(this,c),this._helper=l;var f=this;l.on("data",function(d,m){f.push(d)||f._helper.pause(),u&&u(m)}).on("error",function(d){f.emit("error",d)}).on("end",function(){f.push(null)})}n("../utils").inherits(a,i),a.prototype._read=function(){this._helper.resume()},s.exports=a},{"../utils":32,"readable-stream":16}],14:[function(n,s,o){s.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,s,o){function i(S,N,T){var A,I=l.getTypeOf(N),P=l.extend(T||{},f);P.date=P.date||new Date,P.compression!==null&&(P.compression=P.compression.toUpperCase()),typeof P.unixPermissions=="string"&&(P.unixPermissions=parseInt(P.unixPermissions,8)),P.unixPermissions&&16384&P.unixPermissions&&(P.dir=!0),P.dosPermissions&&16&P.dosPermissions&&(P.dir=!0),P.dir&&(S=v(S)),P.createFolders&&(A=x(S))&&y.call(this,A,!0);var L=I==="string"&&P.binary===!1&&P.base64===!1;T&&T.binary!==void 0||(P.binary=!L),(N instanceof d&&N.uncompressedSize===0||P.dir||!N||N.length===0)&&(P.base64=!1,P.binary=!0,N="",P.compression="STORE",I="string");var E=null;E=N instanceof d||N instanceof c?N:b.isNode&&b.isStream(N)?new g(S,N):l.prepareContent(S,N,P.binary,P.optimizedBinaryString,P.base64);var D=new m(S,E,P);this.files[S]=D}var a=n("./utf8"),l=n("./utils"),c=n("./stream/GenericWorker"),u=n("./stream/StreamHelper"),f=n("./defaults"),d=n("./compressedObject"),m=n("./zipObject"),h=n("./generate"),b=n("./nodejsUtils"),g=n("./nodejs/NodejsStreamInputAdapter"),x=function(S){S.slice(-1)==="/"&&(S=S.substring(0,S.length-1));var N=S.lastIndexOf("/");return 0<N?S.substring(0,N):""},v=function(S){return S.slice(-1)!=="/"&&(S+="/"),S},y=function(S,N){return N=N!==void 0?N:f.createFolders,S=v(S),this.files[S]||i.call(this,S,null,{dir:!0,createFolders:N}),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 N,T,A;for(N in this.files)A=this.files[N],(T=N.slice(this.root.length,N.length))&&N.slice(0,this.root.length)===this.root&&S(T,A)},filter:function(S){var N=[];return this.forEach(function(T,A){S(T,A)&&N.push(A)}),N},file:function(S,N,T){if(arguments.length!==1)return S=this.root+S,i.call(this,S,N,T),this;if(_(S)){var A=S;return this.filter(function(P,L){return!L.dir&&A.test(P)})}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,P){return P.dir&&S.test(I)});var N=this.root+S,T=y.call(this,N),A=this.clone();return A.root=T.name,A},remove:function(S){S=this.root+S;var N=this.files[S];if(N||(S.slice(-1)!=="/"&&(S+="/"),N=this.files[S]),N&&!N.dir)delete this.files[S];else for(var T=this.filter(function(I,P){return P.name.slice(0,S.length)===S}),A=0;A<T.length;A++)delete this.files[T[A].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 N,T={};try{if((T=l.extend(S||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:a.utf8encode})).type=T.type.toLowerCase(),T.compression=T.compression.toUpperCase(),T.type==="binarystring"&&(T.type="string"),!T.type)throw new Error("No output type specified.");l.checkSupport(T.type),T.platform!=="darwin"&&T.platform!=="freebsd"&&T.platform!=="linux"&&T.platform!=="sunos"||(T.platform="UNIX"),T.platform==="win32"&&(T.platform="DOS");var A=T.comment||this.comment||"";N=h.generateWorker(this,T,A)}catch(I){(N=new c("error")).error(I)}return new u(N,T.type||"string",T.mimeType)},generateAsync:function(S,N){return this.generateInternalStream(S).accumulate(N)},generateNodeStream:function(S,N){return(S=S||{}).type||(S.type="nodebuffer"),this.generateInternalStream(S).toNodejsStream(N)}};s.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,s,o){s.exports=n("stream")},{stream:void 0}],17:[function(n,s,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),f=l.charCodeAt(2),d=l.charCodeAt(3),m=this.length-4;0<=m;--m)if(this.data[m]===c&&this.data[m+1]===u&&this.data[m+2]===f&&this.data[m+3]===d)return m-this.zero;return-1},a.prototype.readAndCheckSignature=function(l){var c=l.charCodeAt(0),u=l.charCodeAt(1),f=l.charCodeAt(2),d=l.charCodeAt(3),m=this.readData(4);return c===m[0]&&u===m[1]&&f===m[2]&&d===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},s.exports=a},{"../utils":32,"./DataReader":18}],18:[function(n,s,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))}},s.exports=a},{"../utils":32}],19:[function(n,s,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},s.exports=a},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(n,s,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},s.exports=a},{"../utils":32,"./DataReader":18}],21:[function(n,s,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},s.exports=a},{"../utils":32,"./ArrayReader":17}],22:[function(n,s,o){var i=n("../utils"),a=n("../support"),l=n("./ArrayReader"),c=n("./StringReader"),u=n("./NodeBufferReader"),f=n("./Uint8ArrayReader");s.exports=function(d){var m=i.getTypeOf(d);return i.checkSupport(m),m!=="string"||a.uint8array?m==="nodebuffer"?new u(d):a.uint8array?new f(i.transformTo("uint8array",d)):new l(i.transformTo("array",d)):new c(d)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(n,s,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,s,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})},s.exports=l},{"../utils":32,"./GenericWorker":28}],25:[function(n,s,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)},s.exports=l},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(n,s,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)},s.exports=l},{"../utils":32,"./GenericWorker":28}],27:[function(n,s,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(f){u.dataIsReady=!0,u.data=f,u.max=f&&f.length||0,u.type=i.getTypeOf(f),u.isPaused||u._tickAndRepeat()},function(f){u.error(f)})}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}})},s.exports=l},{"../utils":32,"./GenericWorker":28}],28:[function(n,s,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}},s.exports=i},{}],29:[function(n,s,o){var i=n("../utils"),a=n("./ConvertWorker"),l=n("./GenericWorker"),c=n("../base64"),u=n("../support"),f=n("../external"),d=null;if(u.nodestream)try{d=n("../nodejs/NodejsStreamOutputAdapter")}catch{}function m(b,g){return new f.Promise(function(x,v){var y=[],_=b._internalType,j=b._outputType,S=b._mimeType;b.on("data",function(N,T){y.push(N),g&&g(T)}).on("error",function(N){y=[],v(N)}).on("end",function(){try{var N=(function(T,A,I){switch(T){case"blob":return i.newBlob(i.transformTo("arraybuffer",A),I);case"base64":return c.encode(A);default:return i.transformTo(T,A)}})(j,(function(T,A){var I,P=0,L=null,E=0;for(I=0;I<A.length;I++)E+=A[I].length;switch(T){case"string":return A.join("");case"array":return Array.prototype.concat.apply([],A);case"uint8array":for(L=new Uint8Array(E),I=0;I<A.length;I++)L.set(A[I],P),P+=A[I].length;return L;case"nodebuffer":return Buffer.concat(A);default:throw new Error("concat : unsupported type '"+T+"'")}})(_,y),S);x(N)}catch(T){v(T)}y=[]}).resume()})}function h(b,g,x){var v=g;switch(g){case"blob":case"arraybuffer":v="uint8array";break;case"base64":v="string"}try{this._internalType=v,this._outputType=g,this._mimeType=x,i.checkSupport(v),this._worker=b.pipe(new a(v)),b.lock()}catch(y){this._worker=new l("error"),this._worker.error(y)}}h.prototype={accumulate:function(b){return m(this,b)},on:function(b,g){var x=this;return b==="data"?this._worker.on(b,function(v){g.call(x,v.data,v.meta)}):this._worker.on(b,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(b){if(i.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new d(this,{objectMode:this._outputType!=="nodebuffer"},b)}},s.exports=h},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(n,s,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,s,o){for(var i=n("./utils"),a=n("./support"),l=n("./nodejsUtils"),c=n("./stream/GenericWorker"),u=new Array(256),f=0;f<256;f++)u[f]=252<=f?6:248<=f?5:240<=f?4:224<=f?3:192<=f?2:1;u[254]=u[254]=1;function d(){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(b){var g,x,v,y,_,j=b.length,S=0;for(y=0;y<j;y++)(64512&(x=b.charCodeAt(y)))==55296&&y+1<j&&(64512&(v=b.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(v-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=b.charCodeAt(y)))==55296&&y+1<j&&(64512&(v=b.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(v-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(b){var g,x,v,y,_=b.length,j=new Array(2*_);for(g=x=0;g<_;)if((v=b[g++])<128)j[x++]=v;else if(4<(y=u[v]))j[x++]=65533,g+=y-1;else{for(v&=y===2?31:y===3?15:7;1<y&&g<_;)v=v<<6|63&b[g++],y--;1<y?j[x++]=65533:v<65536?j[x++]=v:(v-=65536,j[x++]=55296|v>>10&1023,j[x++]=56320|1023&v)}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(d,c),d.prototype.processChunk=function(h){var b=i.transformTo(a.uint8array?"uint8array":"array",h.data);if(this.leftOver&&this.leftOver.length){if(a.uint8array){var g=b;(b=new Uint8Array(g.length+this.leftOver.length)).set(this.leftOver,0),b.set(g,this.leftOver.length)}else b=this.leftOver.concat(b);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:_})(b),v=b;x!==b.length&&(a.uint8array?(v=b.subarray(0,x),this.leftOver=b.subarray(x,b.length)):(v=b.slice(0,x),this.leftOver=b.slice(x,b.length))),this.push({data:o.utf8decode(v),meta:h.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=d,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,s,o){var i=n("./support"),a=n("./base64"),l=n("./nodejsUtils"),c=n("./external");function u(g){return g}function f(g,x){for(var v=0;v<g.length;++v)x[v]=255&g.charCodeAt(v);return x}n("setimmediate"),o.newBlob=function(g,x){o.checkSupport("blob");try{return new Blob([g],{type:x})}catch{try{var v=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return v.append(g),v.getBlob(x)}catch{throw new Error("Bug : can't construct the Blob.")}}};var d={stringifyByChunk:function(g,x,v){var y=[],_=0,j=g.length;if(j<=v)return String.fromCharCode.apply(null,g);for(;_<j;)x==="array"||x==="nodebuffer"?y.push(String.fromCharCode.apply(null,g.slice(_,Math.min(_+v,j)))):y.push(String.fromCharCode.apply(null,g.subarray(_,Math.min(_+v,j)))),_+=v;return y.join("")},stringifyByChar:function(g){for(var x="",v=0;v<g.length;v++)x+=String.fromCharCode(g[v]);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,v=o.getTypeOf(g),y=!0;if(v==="uint8array"?y=d.applyCanBeUsed.uint8array:v==="nodebuffer"&&(y=d.applyCanBeUsed.nodebuffer),y)for(;1<x;)try{return d.stringifyByChunk(g,v,x)}catch{x=Math.floor(x/2)}return d.stringifyByChar(g)}function h(g,x){for(var v=0;v<g.length;v++)x[v]=g[v];return x}o.applyFromCharCode=m;var b={};b.string={string:u,array:function(g){return f(g,new Array(g.length))},arraybuffer:function(g){return b.string.uint8array(g).buffer},uint8array:function(g){return f(g,new Uint8Array(g.length))},nodebuffer:function(g){return f(g,l.allocBuffer(g.length))}},b.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)}},b.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))}},b.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)}},b.nodebuffer={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return b.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 v=o.getTypeOf(x);return b[v][g](x)},o.resolve=function(g){for(var x=g.split("/"),v=[],y=0;y<x.length;y++){var _=x[y];_==="."||_===""&&y!==0&&y!==x.length-1||(_===".."?v.pop():v.push(_))}return v.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,v,y="";for(v=0;v<(g||"").length;v++)y+="\\x"+((x=g.charCodeAt(v))<16?"0":"")+x.toString(16).toUpperCase();return y},o.delay=function(g,x,v){setImmediate(function(){g.apply(v||null,x||[])})},o.inherits=function(g,x){function v(){}v.prototype=x.prototype,g.prototype=new v},o.extend=function(){var g,x,v={};for(g=0;g<arguments.length;g++)for(x in arguments[g])Object.prototype.hasOwnProperty.call(arguments[g],x)&&v[x]===void 0&&(v[x]=arguments[g][x]);return v},o.prepareContent=function(g,x,v,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,N){var T=new FileReader;T.onload=function(A){S(A.target.result)},T.onerror=function(A){N(A.target.error)},T.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):v&&y!==!0&&(j=(function(N){return f(N,i.uint8array?new Uint8Array(N.length):new Array(N.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,s,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./signature"),c=n("./zipEntry"),u=n("./support");function f(d){this.files=[],this.loadOptions=d}f.prototype={checkSignature:function(d){if(!this.reader.readAndCheckSignature(d)){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(d)+")")}},isSignature:function(d,m){var h=this.reader.index;this.reader.setIndex(d);var b=this.reader.readString(4)===m;return this.reader.setIndex(h),b},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 d=this.reader.readData(this.zipCommentLength),m=u.uint8array?"uint8array":"array",h=a.transformTo(m,d);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 d,m,h,b=this.zip64EndOfCentralSize-44;0<b;)d=this.reader.readInt(2),m=this.reader.readInt(4),h=this.reader.readData(m),this.zip64ExtensibleData[d]={id:d,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 d,m;for(d=0;d<this.files.length;d++)m=this.files[d],this.reader.setIndex(m.localHeaderOffset),this.checkSignature(l.LOCAL_FILE_HEADER),m.readLocalPart(this.reader),m.handleUTF8(),m.processAttributes()},readCentralDir:function(){var d;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(l.CENTRAL_FILE_HEADER);)(d=new c({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(d);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 d=this.reader.lastIndexOfSignature(l.CENTRAL_DIRECTORY_END);if(d<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(d);var m=d;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,(d=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(d),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 b=m-h;if(0<b)this.isSignature(m,l.CENTRAL_FILE_HEADER)||(this.reader.zero=b);else if(b<0)throw new Error("Corrupted zip: missing "+Math.abs(b)+" bytes.")},prepareReader:function(d){this.reader=i(d)},load:function(d){this.prepareReader(d),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},s.exports=f},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(n,s,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./compressedObject"),c=n("./crc32"),u=n("./utf8"),f=n("./compressions"),d=n("./support");function m(h,b){this.options=h,this.loadOptions=b}m.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(h){var b,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((b=(function(x){for(var v in f)if(Object.prototype.hasOwnProperty.call(f,v)&&f[v].magic===x)return f[v];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,b,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 b=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(b),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 b,g,x,v=h.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});h.index+4<v;)b=h.readInt(2),g=h.readInt(2),x=h.readData(g),this.extraFields[b]={id:b,length:g,value:x};h.setIndex(v)},handleUTF8:function(){var h=d.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=u.utf8decode(this.fileName),this.fileCommentStr=u.utf8decode(this.fileComment);else{var b=this.findExtraFieldUnicodePath();if(b!==null)this.fileNameStr=b;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 v=a.transformTo(h,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(v)}}},findExtraFieldUnicodePath:function(){var h=this.extraFields[28789];if(h){var b=i(h.value);return b.readInt(1)!==1||c(this.fileName)!==b.readInt(4)?null:u.utf8decode(b.readData(h.length-5))}return null},findExtraFieldUnicodeComment:function(){var h=this.extraFields[25461];if(h){var b=i(h.value);return b.readInt(1)!==1||c(this.fileComment)!==b.readInt(4)?null:u.utf8decode(b.readData(h.length-5))}return null}},s.exports=m},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(n,s,o){function i(b,g,x){this.name=b,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"),f=n("./stream/GenericWorker");i.prototype={internalStream:function(b){var g=null,x="string";try{if(!b)throw new Error("No output type specified.");var v=(x=b.toLowerCase())==="string"||x==="text";x!=="binarystring"&&x!=="text"||(x="string"),g=this._decompressWorker();var y=!this._dataBinary;y&&!v&&(g=g.pipe(new c.Utf8EncodeWorker)),!y&&v&&(g=g.pipe(new c.Utf8DecodeWorker))}catch(_){(g=new f("error")).error(_)}return new a(g,x,"")},async:function(b,g){return this.internalStream(b).accumulate(g)},nodeStream:function(b,g){return this.internalStream(b||"nodebuffer").toNodejsStream(g)},_compressWorker:function(b,g){if(this._data instanceof u&&this._data.compression.magic===b.magic)return this._data.getCompressedWorker();var x=this._decompressWorker();return this._dataBinary||(x=x.pipe(new c.Utf8EncodeWorker)),u.createWorkerFrom(x,b,g)},_decompressWorker:function(){return this._data instanceof u?this._data.getContentWorker():this._data instanceof f?this._data:new l(this._data)}};for(var d=["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<d.length;h++)i.prototype[d[h]]=m;s.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(n,s,o){(function(i){var a,l,c=i.MutationObserver||i.WebKitMutationObserver;if(c){var u=0,f=new c(b),d=i.document.createTextNode("");f.observe(d,{characterData:!0}),a=function(){d.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(){b(),g.onreadystatechange=null,g.parentNode.removeChild(g),g=null},i.document.documentElement.appendChild(g)}:function(){setTimeout(b,0)};else{var m=new i.MessageChannel;m.port1.onmessage=b,a=function(){m.port2.postMessage(0)}}var h=[];function b(){var g,x;l=!0;for(var v=h.length;v;){for(x=h,h=[],g=-1;++g<v;)x[g]();v=h.length}l=!1}s.exports=function(g){h.push(g)!==1||l||a()}}).call(this,typeof Cr<"u"?Cr:typeof self<"u"?self:typeof window<"u"?window:{})},{}],37:[function(n,s,o){var i=n("immediate");function a(){}var l={},c=["REJECTED"],u=["FULFILLED"],f=["PENDING"];function d(v){if(typeof v!="function")throw new TypeError("resolver must be a function");this.state=f,this.queue=[],this.outcome=void 0,v!==a&&g(this,v)}function m(v,y,_){this.promise=v,typeof y=="function"&&(this.onFulfilled=y,this.callFulfilled=this.otherCallFulfilled),typeof _=="function"&&(this.onRejected=_,this.callRejected=this.otherCallRejected)}function h(v,y,_){i(function(){var j;try{j=y(_)}catch(S){return l.reject(v,S)}j===v?l.reject(v,new TypeError("Cannot resolve promise with itself")):l.resolve(v,j)})}function b(v){var y=v&&v.then;if(v&&(typeof v=="object"||typeof v=="function")&&typeof y=="function")return function(){y.apply(v,arguments)}}function g(v,y){var _=!1;function j(T){_||(_=!0,l.reject(v,T))}function S(T){_||(_=!0,l.resolve(v,T))}var N=x(function(){y(S,j)});N.status==="error"&&j(N.value)}function x(v,y){var _={};try{_.value=v(y),_.status="success"}catch(j){_.status="error",_.value=j}return _}(s.exports=d).prototype.finally=function(v){if(typeof v!="function")return this;var y=this.constructor;return this.then(function(_){return y.resolve(v()).then(function(){return _})},function(_){return y.resolve(v()).then(function(){throw _})})},d.prototype.catch=function(v){return this.then(null,v)},d.prototype.then=function(v,y){if(typeof v!="function"&&this.state===u||typeof y!="function"&&this.state===c)return this;var _=new this.constructor(a);return this.state!==f?h(_,this.state===u?v:y,this.outcome):this.queue.push(new m(_,v,y)),_},m.prototype.callFulfilled=function(v){l.resolve(this.promise,v)},m.prototype.otherCallFulfilled=function(v){h(this.promise,this.onFulfilled,v)},m.prototype.callRejected=function(v){l.reject(this.promise,v)},m.prototype.otherCallRejected=function(v){h(this.promise,this.onRejected,v)},l.resolve=function(v,y){var _=x(b,y);if(_.status==="error")return l.reject(v,_.value);var j=_.value;if(j)g(v,j);else{v.state=u,v.outcome=y;for(var S=-1,N=v.queue.length;++S<N;)v.queue[S].callFulfilled(y)}return v},l.reject=function(v,y){v.state=c,v.outcome=y;for(var _=-1,j=v.queue.length;++_<j;)v.queue[_].callRejected(y);return v},d.resolve=function(v){return v instanceof this?v:l.resolve(new this(a),v)},d.reject=function(v){var y=new this(a);return l.reject(y,v)},d.all=function(v){var y=this;if(Object.prototype.toString.call(v)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=v.length,j=!1;if(!_)return this.resolve([]);for(var S=new Array(_),N=0,T=-1,A=new this(a);++T<_;)I(v[T],T);return A;function I(P,L){y.resolve(P).then(function(E){S[L]=E,++N!==_||j||(j=!0,l.resolve(A,S))},function(E){j||(j=!0,l.reject(A,E))})}},d.race=function(v){var y=this;if(Object.prototype.toString.call(v)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=v.length,j=!1;if(!_)return this.resolve([]);for(var S=-1,N=new this(a);++S<_;)T=v[S],y.resolve(T).then(function(A){j||(j=!0,l.resolve(N,A))},function(A){j||(j=!0,l.reject(N,A))});var T;return N}},{immediate:36}],38:[function(n,s,o){var i={};(0,n("./lib/utils/common").assign)(i,n("./lib/deflate"),n("./lib/inflate"),n("./lib/zlib/constants")),s.exports=i},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(n,s,o){var i=n("./zlib/deflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/messages"),u=n("./zlib/zstream"),f=Object.prototype.toString,d=0,m=-1,h=0,b=8;function g(v){if(!(this instanceof g))return new g(v);this.options=a.assign({level:m,method:b,chunkSize:16384,windowBits:15,memLevel:8,strategy:h,to:""},v||{});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(_!==d)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):f.call(y.dictionary)==="[object ArrayBuffer]"?new Uint8Array(y.dictionary):y.dictionary,(_=i.deflateSetDictionary(this.strm,j))!==d)throw new Error(c[_]);this._dict_set=!0}}function x(v,y){var _=new g(y);if(_.push(v,!0),_.err)throw _.msg||c[_.err];return _.result}g.prototype.push=function(v,y){var _,j,S=this.strm,N=this.options.chunkSize;if(this.ended)return!1;j=y===~~y?y:y===!0?4:0,typeof v=="string"?S.input=l.string2buf(v):f.call(v)==="[object ArrayBuffer]"?S.input=new Uint8Array(v):S.input=v,S.next_in=0,S.avail_in=S.input.length;do{if(S.avail_out===0&&(S.output=new a.Buf8(N),S.next_out=0,S.avail_out=N),(_=i.deflate(S,j))!==1&&_!==d)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,_===d):j!==2||(this.onEnd(d),!(S.avail_out=0))},g.prototype.onData=function(v){this.chunks.push(v)},g.prototype.onEnd=function(v){v===d&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=v,this.msg=this.strm.msg},o.Deflate=g,o.deflate=x,o.deflateRaw=function(v,y){return(y=y||{}).raw=!0,x(v,y)},o.gzip=function(v,y){return(y=y||{}).gzip=!0,x(v,y)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(n,s,o){var i=n("./zlib/inflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/constants"),u=n("./zlib/messages"),f=n("./zlib/zstream"),d=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 f,this.strm.avail_out=0;var v=i.inflateInit2(this.strm,x.windowBits);if(v!==c.Z_OK)throw new Error(u[v]);this.header=new d,i.inflateGetHeader(this.strm,this.header)}function b(g,x){var v=new h(x);if(v.push(g,!0),v.err)throw v.msg||u[v.err];return v.result}h.prototype.push=function(g,x){var v,y,_,j,S,N,T=this.strm,A=this.options.chunkSize,I=this.options.dictionary,P=!1;if(this.ended)return!1;y=x===~~x?x:x===!0?c.Z_FINISH:c.Z_NO_FLUSH,typeof g=="string"?T.input=l.binstring2buf(g):m.call(g)==="[object ArrayBuffer]"?T.input=new Uint8Array(g):T.input=g,T.next_in=0,T.avail_in=T.input.length;do{if(T.avail_out===0&&(T.output=new a.Buf8(A),T.next_out=0,T.avail_out=A),(v=i.inflate(T,c.Z_NO_FLUSH))===c.Z_NEED_DICT&&I&&(N=typeof I=="string"?l.string2buf(I):m.call(I)==="[object ArrayBuffer]"?new Uint8Array(I):I,v=i.inflateSetDictionary(this.strm,N)),v===c.Z_BUF_ERROR&&P===!0&&(v=c.Z_OK,P=!1),v!==c.Z_STREAM_END&&v!==c.Z_OK)return this.onEnd(v),!(this.ended=!0);T.next_out&&(T.avail_out!==0&&v!==c.Z_STREAM_END&&(T.avail_in!==0||y!==c.Z_FINISH&&y!==c.Z_SYNC_FLUSH)||(this.options.to==="string"?(_=l.utf8border(T.output,T.next_out),j=T.next_out-_,S=l.buf2string(T.output,_),T.next_out=j,T.avail_out=A-j,j&&a.arraySet(T.output,T.output,_,j,0),this.onData(S)):this.onData(a.shrinkBuf(T.output,T.next_out)))),T.avail_in===0&&T.avail_out===0&&(P=!0)}while((0<T.avail_in||T.avail_out===0)&&v!==c.Z_STREAM_END);return v===c.Z_STREAM_END&&(y=c.Z_FINISH),y===c.Z_FINISH?(v=i.inflateEnd(this.strm),this.onEnd(v),this.ended=!0,v===c.Z_OK):y!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),!(T.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=b,o.inflateRaw=function(g,x){return(x=x||{}).raw=!0,b(g,x)},o.ungzip=b},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(n,s,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 f=u.shift();if(f){if(typeof f!="object")throw new TypeError(f+"must be non-object");for(var d in f)f.hasOwnProperty(d)&&(c[d]=f[d])}}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,f,d,m){if(u.subarray&&c.subarray)c.set(u.subarray(f,f+d),m);else for(var h=0;h<d;h++)c[m+h]=u[f+h]},flattenChunks:function(c){var u,f,d,m,h,b;for(u=d=0,f=c.length;u<f;u++)d+=c[u].length;for(b=new Uint8Array(d),u=m=0,f=c.length;u<f;u++)h=c[u],b.set(h,m),m+=h.length;return b}},l={arraySet:function(c,u,f,d,m){for(var h=0;h<d;h++)c[m+h]=u[f+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,s,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 f(d,m){if(m<65537&&(d.subarray&&l||!d.subarray&&a))return String.fromCharCode.apply(null,i.shrinkBuf(d,m));for(var h="",b=0;b<m;b++)h+=String.fromCharCode(d[b]);return h}c[254]=c[254]=1,o.string2buf=function(d){var m,h,b,g,x,v=d.length,y=0;for(g=0;g<v;g++)(64512&(h=d.charCodeAt(g)))==55296&&g+1<v&&(64512&(b=d.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(b-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=d.charCodeAt(g)))==55296&&g+1<v&&(64512&(b=d.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(b-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(d){return f(d,d.length)},o.binstring2buf=function(d){for(var m=new i.Buf8(d.length),h=0,b=m.length;h<b;h++)m[h]=d.charCodeAt(h);return m},o.buf2string=function(d,m){var h,b,g,x,v=m||d.length,y=new Array(2*v);for(h=b=0;h<v;)if((g=d[h++])<128)y[b++]=g;else if(4<(x=c[g]))y[b++]=65533,h+=x-1;else{for(g&=x===2?31:x===3?15:7;1<x&&h<v;)g=g<<6|63&d[h++],x--;1<x?y[b++]=65533:g<65536?y[b++]=g:(g-=65536,y[b++]=55296|g>>10&1023,y[b++]=56320|1023&g)}return f(y,b)},o.utf8border=function(d,m){var h;for((m=m||d.length)>d.length&&(m=d.length),h=m-1;0<=h&&(192&d[h])==128;)h--;return h<0||h===0?m:h+c[d[h]]>m?h:m}},{"./common":41}],43:[function(n,s,o){s.exports=function(i,a,l,c){for(var u=65535&i|0,f=i>>>16&65535|0,d=0;l!==0;){for(l-=d=2e3<l?2e3:l;f=f+(u=u+a[c++]|0)|0,--d;);u%=65521,f%=65521}return u|f<<16|0}},{}],44:[function(n,s,o){s.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,s,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})();s.exports=function(a,l,c,u){var f=i,d=u+c;a^=-1;for(var m=u;m<d;m++)a=a>>>8^f[255&(a^l[m])];return-1^a}},{}],46:[function(n,s,o){var i,a=n("../utils/common"),l=n("./trees"),c=n("./adler32"),u=n("./crc32"),f=n("./messages"),d=0,m=4,h=0,b=-2,g=-1,x=4,v=2,y=8,_=9,j=286,S=30,N=19,T=2*j+1,A=15,I=3,P=258,L=P+I+1,E=42,D=113,w=1,$=2,ee=3,F=4;function te(k,Q){return k.msg=f[Q],Q}function V(k){return(k<<1)-(4<k?9:0)}function X(k){for(var Q=k.length;0<=--Q;)k[Q]=0}function H(k){var Q=k.state,q=Q.pending;q>k.avail_out&&(q=k.avail_out),q!==0&&(a.arraySet(k.output,Q.pending_buf,Q.pending_out,q,k.next_out),k.next_out+=q,Q.pending_out+=q,k.total_out+=q,k.avail_out-=q,Q.pending-=q,Q.pending===0&&(Q.pending_out=0))}function B(k,Q){l._tr_flush_block(k,0<=k.block_start?k.block_start:-1,k.strstart-k.block_start,Q),k.block_start=k.strstart,H(k.strm)}function ce(k,Q){k.pending_buf[k.pending++]=Q}function W(k,Q){k.pending_buf[k.pending++]=Q>>>8&255,k.pending_buf[k.pending++]=255&Q}function Y(k,Q){var q,O,R=k.max_chain_length,U=k.strstart,re=k.prev_length,se=k.nice_match,Z=k.strstart>k.w_size-L?k.strstart-(k.w_size-L):0,le=k.window,z=k.w_mask,M=k.prev,J=k.strstart+P,oe=le[U+re-1],ie=le[U+re];k.prev_length>=k.good_match&&(R>>=2),se>k.lookahead&&(se=k.lookahead);do if(le[(q=Q)+re]===ie&&le[q+re-1]===oe&&le[q]===le[U]&&le[++q]===le[U+1]){U+=2,q++;do;while(le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&U<J);if(O=P-(J-U),U=J-P,re<O){if(k.match_start=Q,se<=(re=O))break;oe=le[U+re-1],ie=le[U+re]}}while((Q=M[Q&z])>Z&&--R!=0);return re<=k.lookahead?re:k.lookahead}function _e(k){var Q,q,O,R,U,re,se,Z,le,z,M=k.w_size;do{if(R=k.window_size-k.lookahead-k.strstart,k.strstart>=M+(M-L)){for(a.arraySet(k.window,k.window,M,M,0),k.match_start-=M,k.strstart-=M,k.block_start-=M,Q=q=k.hash_size;O=k.head[--Q],k.head[Q]=M<=O?O-M:0,--q;);for(Q=q=M;O=k.prev[--Q],k.prev[Q]=M<=O?O-M:0,--q;);R+=M}if(k.strm.avail_in===0)break;if(re=k.strm,se=k.window,Z=k.strstart+k.lookahead,le=R,z=void 0,z=re.avail_in,le<z&&(z=le),q=z===0?0:(re.avail_in-=z,a.arraySet(se,re.input,re.next_in,z,Z),re.state.wrap===1?re.adler=c(re.adler,se,z,Z):re.state.wrap===2&&(re.adler=u(re.adler,se,z,Z)),re.next_in+=z,re.total_in+=z,z),k.lookahead+=q,k.lookahead+k.insert>=I)for(U=k.strstart-k.insert,k.ins_h=k.window[U],k.ins_h=(k.ins_h<<k.hash_shift^k.window[U+1])&k.hash_mask;k.insert&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[U+I-1])&k.hash_mask,k.prev[U&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=U,U++,k.insert--,!(k.lookahead+k.insert<I)););}while(k.lookahead<L&&k.strm.avail_in!==0)}function fe(k,Q){for(var q,O;;){if(k.lookahead<L){if(_e(k),k.lookahead<L&&Q===d)return w;if(k.lookahead===0)break}if(q=0,k.lookahead>=I&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),q!==0&&k.strstart-q<=k.w_size-L&&(k.match_length=Y(k,q)),k.match_length>=I)if(O=l._tr_tally(k,k.strstart-k.match_start,k.match_length-I),k.lookahead-=k.match_length,k.match_length<=k.max_lazy_match&&k.lookahead>=I){for(k.match_length--;k.strstart++,k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart,--k.match_length!=0;);k.strstart++}else k.strstart+=k.match_length,k.match_length=0,k.ins_h=k.window[k.strstart],k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+1])&k.hash_mask;else O=l._tr_tally(k,0,k.window[k.strstart]),k.lookahead--,k.strstart++;if(O&&(B(k,!1),k.strm.avail_out===0))return w}return k.insert=k.strstart<I-1?k.strstart:I-1,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):k.last_lit&&(B(k,!1),k.strm.avail_out===0)?w:$}function xe(k,Q){for(var q,O,R;;){if(k.lookahead<L){if(_e(k),k.lookahead<L&&Q===d)return w;if(k.lookahead===0)break}if(q=0,k.lookahead>=I&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),k.prev_length=k.match_length,k.prev_match=k.match_start,k.match_length=I-1,q!==0&&k.prev_length<k.max_lazy_match&&k.strstart-q<=k.w_size-L&&(k.match_length=Y(k,q),k.match_length<=5&&(k.strategy===1||k.match_length===I&&4096<k.strstart-k.match_start)&&(k.match_length=I-1)),k.prev_length>=I&&k.match_length<=k.prev_length){for(R=k.strstart+k.lookahead-I,O=l._tr_tally(k,k.strstart-1-k.prev_match,k.prev_length-I),k.lookahead-=k.prev_length-1,k.prev_length-=2;++k.strstart<=R&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),--k.prev_length!=0;);if(k.match_available=0,k.match_length=I-1,k.strstart++,O&&(B(k,!1),k.strm.avail_out===0))return w}else if(k.match_available){if((O=l._tr_tally(k,0,k.window[k.strstart-1]))&&B(k,!1),k.strstart++,k.lookahead--,k.strm.avail_out===0)return w}else k.match_available=1,k.strstart++,k.lookahead--}return k.match_available&&(O=l._tr_tally(k,0,k.window[k.strstart-1]),k.match_available=0),k.insert=k.strstart<I-1?k.strstart:I-1,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):k.last_lit&&(B(k,!1),k.strm.avail_out===0)?w:$}function de(k,Q,q,O,R){this.good_length=k,this.max_lazy=Q,this.nice_length=q,this.max_chain=O,this.func=R}function ge(){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*T),this.dyn_dtree=new a.Buf16(2*(2*S+1)),this.bl_tree=new a.Buf16(2*(2*N+1)),X(this.dyn_ltree),X(this.dyn_dtree),X(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new a.Buf16(A+1),this.heap=new a.Buf16(2*j+1),X(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new a.Buf16(2*j+1),X(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 be(k){var Q;return k&&k.state?(k.total_in=k.total_out=0,k.data_type=v,(Q=k.state).pending=0,Q.pending_out=0,Q.wrap<0&&(Q.wrap=-Q.wrap),Q.status=Q.wrap?E:D,k.adler=Q.wrap===2?0:1,Q.last_flush=d,l._tr_init(Q),h):te(k,b)}function Ce(k){var Q=be(k);return Q===h&&(function(q){q.window_size=2*q.w_size,X(q.head),q.max_lazy_match=i[q.level].max_lazy,q.good_match=i[q.level].good_length,q.nice_match=i[q.level].nice_length,q.max_chain_length=i[q.level].max_chain,q.strstart=0,q.block_start=0,q.lookahead=0,q.insert=0,q.match_length=q.prev_length=I-1,q.match_available=0,q.ins_h=0})(k.state),Q}function Re(k,Q,q,O,R,U){if(!k)return b;var re=1;if(Q===g&&(Q=6),O<0?(re=0,O=-O):15<O&&(re=2,O-=16),R<1||_<R||q!==y||O<8||15<O||Q<0||9<Q||U<0||x<U)return te(k,b);O===8&&(O=9);var se=new ge;return(k.state=se).strm=k,se.wrap=re,se.gzhead=null,se.w_bits=O,se.w_size=1<<se.w_bits,se.w_mask=se.w_size-1,se.hash_bits=R+7,se.hash_size=1<<se.hash_bits,se.hash_mask=se.hash_size-1,se.hash_shift=~~((se.hash_bits+I-1)/I),se.window=new a.Buf8(2*se.w_size),se.head=new a.Buf16(se.hash_size),se.prev=new a.Buf16(se.w_size),se.lit_bufsize=1<<R+6,se.pending_buf_size=4*se.lit_bufsize,se.pending_buf=new a.Buf8(se.pending_buf_size),se.d_buf=1*se.lit_bufsize,se.l_buf=3*se.lit_bufsize,se.level=Q,se.strategy=U,se.method=q,Ce(k)}i=[new de(0,0,0,0,function(k,Q){var q=65535;for(q>k.pending_buf_size-5&&(q=k.pending_buf_size-5);;){if(k.lookahead<=1){if(_e(k),k.lookahead===0&&Q===d)return w;if(k.lookahead===0)break}k.strstart+=k.lookahead,k.lookahead=0;var O=k.block_start+q;if((k.strstart===0||k.strstart>=O)&&(k.lookahead=k.strstart-O,k.strstart=O,B(k,!1),k.strm.avail_out===0)||k.strstart-k.block_start>=k.w_size-L&&(B(k,!1),k.strm.avail_out===0))return w}return k.insert=0,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):(k.strstart>k.block_start&&(B(k,!1),k.strm.avail_out),w)}),new de(4,4,8,4,fe),new de(4,5,16,8,fe),new de(4,6,32,32,fe),new de(4,4,16,16,xe),new de(8,16,32,32,xe),new de(8,16,128,128,xe),new de(8,32,128,256,xe),new de(32,128,258,1024,xe),new de(32,258,258,4096,xe)],o.deflateInit=function(k,Q){return Re(k,Q,y,15,8,0)},o.deflateInit2=Re,o.deflateReset=Ce,o.deflateResetKeep=be,o.deflateSetHeader=function(k,Q){return k&&k.state?k.state.wrap!==2?b:(k.state.gzhead=Q,h):b},o.deflate=function(k,Q){var q,O,R,U;if(!k||!k.state||5<Q||Q<0)return k?te(k,b):b;if(O=k.state,!k.output||!k.input&&k.avail_in!==0||O.status===666&&Q!==m)return te(k,k.avail_out===0?-5:b);if(O.strm=k,q=O.last_flush,O.last_flush=Q,O.status===E)if(O.wrap===2)k.adler=0,ce(O,31),ce(O,139),ce(O,8),O.gzhead?(ce(O,(O.gzhead.text?1:0)+(O.gzhead.hcrc?2:0)+(O.gzhead.extra?4:0)+(O.gzhead.name?8:0)+(O.gzhead.comment?16:0)),ce(O,255&O.gzhead.time),ce(O,O.gzhead.time>>8&255),ce(O,O.gzhead.time>>16&255),ce(O,O.gzhead.time>>24&255),ce(O,O.level===9?2:2<=O.strategy||O.level<2?4:0),ce(O,255&O.gzhead.os),O.gzhead.extra&&O.gzhead.extra.length&&(ce(O,255&O.gzhead.extra.length),ce(O,O.gzhead.extra.length>>8&255)),O.gzhead.hcrc&&(k.adler=u(k.adler,O.pending_buf,O.pending,0)),O.gzindex=0,O.status=69):(ce(O,0),ce(O,0),ce(O,0),ce(O,0),ce(O,0),ce(O,O.level===9?2:2<=O.strategy||O.level<2?4:0),ce(O,3),O.status=D);else{var re=y+(O.w_bits-8<<4)<<8;re|=(2<=O.strategy||O.level<2?0:O.level<6?1:O.level===6?2:3)<<6,O.strstart!==0&&(re|=32),re+=31-re%31,O.status=D,W(O,re),O.strstart!==0&&(W(O,k.adler>>>16),W(O,65535&k.adler)),k.adler=1}if(O.status===69)if(O.gzhead.extra){for(R=O.pending;O.gzindex<(65535&O.gzhead.extra.length)&&(O.pending!==O.pending_buf_size||(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending!==O.pending_buf_size));)ce(O,255&O.gzhead.extra[O.gzindex]),O.gzindex++;O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),O.gzindex===O.gzhead.extra.length&&(O.gzindex=0,O.status=73)}else O.status=73;if(O.status===73)if(O.gzhead.name){R=O.pending;do{if(O.pending===O.pending_buf_size&&(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending===O.pending_buf_size)){U=1;break}U=O.gzindex<O.gzhead.name.length?255&O.gzhead.name.charCodeAt(O.gzindex++):0,ce(O,U)}while(U!==0);O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),U===0&&(O.gzindex=0,O.status=91)}else O.status=91;if(O.status===91)if(O.gzhead.comment){R=O.pending;do{if(O.pending===O.pending_buf_size&&(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending===O.pending_buf_size)){U=1;break}U=O.gzindex<O.gzhead.comment.length?255&O.gzhead.comment.charCodeAt(O.gzindex++):0,ce(O,U)}while(U!==0);O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),U===0&&(O.status=103)}else O.status=103;if(O.status===103&&(O.gzhead.hcrc?(O.pending+2>O.pending_buf_size&&H(k),O.pending+2<=O.pending_buf_size&&(ce(O,255&k.adler),ce(O,k.adler>>8&255),k.adler=0,O.status=D)):O.status=D),O.pending!==0){if(H(k),k.avail_out===0)return O.last_flush=-1,h}else if(k.avail_in===0&&V(Q)<=V(q)&&Q!==m)return te(k,-5);if(O.status===666&&k.avail_in!==0)return te(k,-5);if(k.avail_in!==0||O.lookahead!==0||Q!==d&&O.status!==666){var se=O.strategy===2?(function(Z,le){for(var z;;){if(Z.lookahead===0&&(_e(Z),Z.lookahead===0)){if(le===d)return w;break}if(Z.match_length=0,z=l._tr_tally(Z,0,Z.window[Z.strstart]),Z.lookahead--,Z.strstart++,z&&(B(Z,!1),Z.strm.avail_out===0))return w}return Z.insert=0,le===m?(B(Z,!0),Z.strm.avail_out===0?ee:F):Z.last_lit&&(B(Z,!1),Z.strm.avail_out===0)?w:$})(O,Q):O.strategy===3?(function(Z,le){for(var z,M,J,oe,ie=Z.window;;){if(Z.lookahead<=P){if(_e(Z),Z.lookahead<=P&&le===d)return w;if(Z.lookahead===0)break}if(Z.match_length=0,Z.lookahead>=I&&0<Z.strstart&&(M=ie[J=Z.strstart-1])===ie[++J]&&M===ie[++J]&&M===ie[++J]){oe=Z.strstart+P;do;while(M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&J<oe);Z.match_length=P-(oe-J),Z.match_length>Z.lookahead&&(Z.match_length=Z.lookahead)}if(Z.match_length>=I?(z=l._tr_tally(Z,1,Z.match_length-I),Z.lookahead-=Z.match_length,Z.strstart+=Z.match_length,Z.match_length=0):(z=l._tr_tally(Z,0,Z.window[Z.strstart]),Z.lookahead--,Z.strstart++),z&&(B(Z,!1),Z.strm.avail_out===0))return w}return Z.insert=0,le===m?(B(Z,!0),Z.strm.avail_out===0?ee:F):Z.last_lit&&(B(Z,!1),Z.strm.avail_out===0)?w:$})(O,Q):i[O.level].func(O,Q);if(se!==ee&&se!==F||(O.status=666),se===w||se===ee)return k.avail_out===0&&(O.last_flush=-1),h;if(se===$&&(Q===1?l._tr_align(O):Q!==5&&(l._tr_stored_block(O,0,0,!1),Q===3&&(X(O.head),O.lookahead===0&&(O.strstart=0,O.block_start=0,O.insert=0))),H(k),k.avail_out===0))return O.last_flush=-1,h}return Q!==m?h:O.wrap<=0?1:(O.wrap===2?(ce(O,255&k.adler),ce(O,k.adler>>8&255),ce(O,k.adler>>16&255),ce(O,k.adler>>24&255),ce(O,255&k.total_in),ce(O,k.total_in>>8&255),ce(O,k.total_in>>16&255),ce(O,k.total_in>>24&255)):(W(O,k.adler>>>16),W(O,65535&k.adler)),H(k),0<O.wrap&&(O.wrap=-O.wrap),O.pending!==0?h:1)},o.deflateEnd=function(k){var Q;return k&&k.state?(Q=k.state.status)!==E&&Q!==69&&Q!==73&&Q!==91&&Q!==103&&Q!==D&&Q!==666?te(k,b):(k.state=null,Q===D?te(k,-3):h):b},o.deflateSetDictionary=function(k,Q){var q,O,R,U,re,se,Z,le,z=Q.length;if(!k||!k.state||(U=(q=k.state).wrap)===2||U===1&&q.status!==E||q.lookahead)return b;for(U===1&&(k.adler=c(k.adler,Q,z,0)),q.wrap=0,z>=q.w_size&&(U===0&&(X(q.head),q.strstart=0,q.block_start=0,q.insert=0),le=new a.Buf8(q.w_size),a.arraySet(le,Q,z-q.w_size,q.w_size,0),Q=le,z=q.w_size),re=k.avail_in,se=k.next_in,Z=k.input,k.avail_in=z,k.next_in=0,k.input=Q,_e(q);q.lookahead>=I;){for(O=q.strstart,R=q.lookahead-(I-1);q.ins_h=(q.ins_h<<q.hash_shift^q.window[O+I-1])&q.hash_mask,q.prev[O&q.w_mask]=q.head[q.ins_h],q.head[q.ins_h]=O,O++,--R;);q.strstart=O,q.lookahead=I-1,_e(q)}return q.strstart+=q.lookahead,q.block_start=q.strstart,q.insert=q.lookahead,q.lookahead=0,q.match_length=q.prev_length=I-1,q.match_available=0,k.next_in=se,k.input=Z,k.avail_in=re,q.wrap=U,h},o.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(n,s,o){s.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,s,o){s.exports=function(i,a){var l,c,u,f,d,m,h,b,g,x,v,y,_,j,S,N,T,A,I,P,L,E,D,w,$;l=i.state,c=i.next_in,w=i.input,u=c+(i.avail_in-5),f=i.next_out,$=i.output,d=f-(a-i.avail_out),m=f+(i.avail_out-257),h=l.dmax,b=l.wsize,g=l.whave,x=l.wnext,v=l.window,y=l.hold,_=l.bits,j=l.lencode,S=l.distcode,N=(1<<l.lenbits)-1,T=(1<<l.distbits)-1;e:do{_<15&&(y+=w[c++]<<_,_+=8,y+=w[c++]<<_,_+=8),A=j[y&N];t:for(;;){if(y>>>=I=A>>>24,_-=I,(I=A>>>16&255)===0)$[f++]=65535&A;else{if(!(16&I)){if((64&I)==0){A=j[(65535&A)+(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}P=65535&A,(I&=15)&&(_<I&&(y+=w[c++]<<_,_+=8),P+=y&(1<<I)-1,y>>>=I,_-=I),_<15&&(y+=w[c++]<<_,_+=8,y+=w[c++]<<_,_+=8),A=S[y&T];n:for(;;){if(y>>>=I=A>>>24,_-=I,!(16&(I=A>>>16&255))){if((64&I)==0){A=S[(65535&A)+(y&(1<<I)-1)];continue n}i.msg="invalid distance code",l.mode=30;break e}if(L=65535&A,_<(I&=15)&&(y+=w[c++]<<_,(_+=8)<I&&(y+=w[c++]<<_,_+=8)),h<(L+=y&(1<<I)-1)){i.msg="invalid distance too far back",l.mode=30;break e}if(y>>>=I,_-=I,(I=f-d)<L){if(g<(I=L-I)&&l.sane){i.msg="invalid distance too far back",l.mode=30;break e}if(D=v,(E=0)===x){if(E+=b-I,I<P){for(P-=I;$[f++]=v[E++],--I;);E=f-L,D=$}}else if(x<I){if(E+=b+x-I,(I-=x)<P){for(P-=I;$[f++]=v[E++],--I;);if(E=0,x<P){for(P-=I=x;$[f++]=v[E++],--I;);E=f-L,D=$}}}else if(E+=x-I,I<P){for(P-=I;$[f++]=v[E++],--I;);E=f-L,D=$}for(;2<P;)$[f++]=D[E++],$[f++]=D[E++],$[f++]=D[E++],P-=3;P&&($[f++]=D[E++],1<P&&($[f++]=D[E++]))}else{for(E=f-L;$[f++]=$[E++],$[f++]=$[E++],$[f++]=$[E++],2<(P-=3););P&&($[f++]=$[E++],1<P&&($[f++]=$[E++]))}break}}break}}while(c<u&&f<m);c-=P=_>>3,y&=(1<<(_-=P<<3))-1,i.next_in=c,i.next_out=f,i.avail_in=c<u?u-c+5:5-(c-u),i.avail_out=f<m?m-f+257:257-(f-m),l.hold=y,l.bits=_}},{}],49:[function(n,s,o){var i=n("../utils/common"),a=n("./adler32"),l=n("./crc32"),c=n("./inffast"),u=n("./inftrees"),f=1,d=2,m=0,h=-2,b=1,g=852,x=592;function v(E){return(E>>>24&255)+(E>>>8&65280)+((65280&E)<<8)+((255&E)<<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 _(E){var D;return E&&E.state?(D=E.state,E.total_in=E.total_out=D.total=0,E.msg="",D.wrap&&(E.adler=1&D.wrap),D.mode=b,D.last=0,D.havedict=0,D.dmax=32768,D.head=null,D.hold=0,D.bits=0,D.lencode=D.lendyn=new i.Buf32(g),D.distcode=D.distdyn=new i.Buf32(x),D.sane=1,D.back=-1,m):h}function j(E){var D;return E&&E.state?((D=E.state).wsize=0,D.whave=0,D.wnext=0,_(E)):h}function S(E,D){var w,$;return E&&E.state?($=E.state,D<0?(w=0,D=-D):(w=1+(D>>4),D<48&&(D&=15)),D&&(D<8||15<D)?h:($.window!==null&&$.wbits!==D&&($.window=null),$.wrap=w,$.wbits=D,j(E))):h}function N(E,D){var w,$;return E?($=new y,(E.state=$).window=null,(w=S(E,D))!==m&&(E.state=null),w):h}var T,A,I=!0;function P(E){if(I){var D;for(T=new i.Buf32(512),A=new i.Buf32(32),D=0;D<144;)E.lens[D++]=8;for(;D<256;)E.lens[D++]=9;for(;D<280;)E.lens[D++]=7;for(;D<288;)E.lens[D++]=8;for(u(f,E.lens,0,288,T,0,E.work,{bits:9}),D=0;D<32;)E.lens[D++]=5;u(d,E.lens,0,32,A,0,E.work,{bits:5}),I=!1}E.lencode=T,E.lenbits=9,E.distcode=A,E.distbits=5}function L(E,D,w,$){var ee,F=E.state;return F.window===null&&(F.wsize=1<<F.wbits,F.wnext=0,F.whave=0,F.window=new i.Buf8(F.wsize)),$>=F.wsize?(i.arraySet(F.window,D,w-F.wsize,F.wsize,0),F.wnext=0,F.whave=F.wsize):($<(ee=F.wsize-F.wnext)&&(ee=$),i.arraySet(F.window,D,w-$,ee,F.wnext),($-=ee)?(i.arraySet(F.window,D,w-$,$,0),F.wnext=$,F.whave=F.wsize):(F.wnext+=ee,F.wnext===F.wsize&&(F.wnext=0),F.whave<F.wsize&&(F.whave+=ee))),0}o.inflateReset=j,o.inflateReset2=S,o.inflateResetKeep=_,o.inflateInit=function(E){return N(E,15)},o.inflateInit2=N,o.inflate=function(E,D){var w,$,ee,F,te,V,X,H,B,ce,W,Y,_e,fe,xe,de,ge,be,Ce,Re,k,Q,q,O,R=0,U=new i.Buf8(4),re=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!E||!E.state||!E.output||!E.input&&E.avail_in!==0)return h;(w=E.state).mode===12&&(w.mode=13),te=E.next_out,ee=E.output,X=E.avail_out,F=E.next_in,$=E.input,V=E.avail_in,H=w.hold,B=w.bits,ce=V,W=X,Q=m;e:for(;;)switch(w.mode){case b:if(w.wrap===0){w.mode=13;break}for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(2&w.wrap&&H===35615){U[w.check=0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0),B=H=0,w.mode=2;break}if(w.flags=0,w.head&&(w.head.done=!1),!(1&w.wrap)||(((255&H)<<8)+(H>>8))%31){E.msg="incorrect header check",w.mode=30;break}if((15&H)!=8){E.msg="unknown compression method",w.mode=30;break}if(B-=4,k=8+(15&(H>>>=4)),w.wbits===0)w.wbits=k;else if(k>w.wbits){E.msg="invalid window size",w.mode=30;break}w.dmax=1<<k,E.adler=w.check=1,w.mode=512&H?10:12,B=H=0;break;case 2:for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(w.flags=H,(255&w.flags)!=8){E.msg="unknown compression method",w.mode=30;break}if(57344&w.flags){E.msg="unknown header flags set",w.mode=30;break}w.head&&(w.head.text=H>>8&1),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0,w.mode=3;case 3:for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.head&&(w.head.time=H),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,U[2]=H>>>16&255,U[3]=H>>>24&255,w.check=l(w.check,U,4,0)),B=H=0,w.mode=4;case 4:for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.head&&(w.head.xflags=255&H,w.head.os=H>>8),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0,w.mode=5;case 5:if(1024&w.flags){for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.length=H,w.head&&(w.head.extra_len=H),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0}else w.head&&(w.head.extra=null);w.mode=6;case 6:if(1024&w.flags&&(V<(Y=w.length)&&(Y=V),Y&&(w.head&&(k=w.head.extra_len-w.length,w.head.extra||(w.head.extra=new Array(w.head.extra_len)),i.arraySet(w.head.extra,$,F,Y,k)),512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,w.length-=Y),w.length))break e;w.length=0,w.mode=7;case 7:if(2048&w.flags){if(V===0)break e;for(Y=0;k=$[F+Y++],w.head&&k&&w.length<65536&&(w.head.name+=String.fromCharCode(k)),k&&Y<V;);if(512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,k)break e}else w.head&&(w.head.name=null);w.length=0,w.mode=8;case 8:if(4096&w.flags){if(V===0)break e;for(Y=0;k=$[F+Y++],w.head&&k&&w.length<65536&&(w.head.comment+=String.fromCharCode(k)),k&&Y<V;);if(512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,k)break e}else w.head&&(w.head.comment=null);w.mode=9;case 9:if(512&w.flags){for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H!==(65535&w.check)){E.msg="header crc mismatch",w.mode=30;break}B=H=0}w.head&&(w.head.hcrc=w.flags>>9&1,w.head.done=!0),E.adler=w.check=0,w.mode=12;break;case 10:for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}E.adler=w.check=v(H),B=H=0,w.mode=11;case 11:if(w.havedict===0)return E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,2;E.adler=w.check=1,w.mode=12;case 12:if(D===5||D===6)break e;case 13:if(w.last){H>>>=7&B,B-=7&B,w.mode=27;break}for(;B<3;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}switch(w.last=1&H,B-=1,3&(H>>>=1)){case 0:w.mode=14;break;case 1:if(P(w),w.mode=20,D!==6)break;H>>>=2,B-=2;break e;case 2:w.mode=17;break;case 3:E.msg="invalid block type",w.mode=30}H>>>=2,B-=2;break;case 14:for(H>>>=7&B,B-=7&B;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if((65535&H)!=(H>>>16^65535)){E.msg="invalid stored block lengths",w.mode=30;break}if(w.length=65535&H,B=H=0,w.mode=15,D===6)break e;case 15:w.mode=16;case 16:if(Y=w.length){if(V<Y&&(Y=V),X<Y&&(Y=X),Y===0)break e;i.arraySet(ee,$,F,Y,te),V-=Y,F+=Y,X-=Y,te+=Y,w.length-=Y;break}w.mode=12;break;case 17:for(;B<14;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(w.nlen=257+(31&H),H>>>=5,B-=5,w.ndist=1+(31&H),H>>>=5,B-=5,w.ncode=4+(15&H),H>>>=4,B-=4,286<w.nlen||30<w.ndist){E.msg="too many length or distance symbols",w.mode=30;break}w.have=0,w.mode=18;case 18:for(;w.have<w.ncode;){for(;B<3;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.lens[re[w.have++]]=7&H,H>>>=3,B-=3}for(;w.have<19;)w.lens[re[w.have++]]=0;if(w.lencode=w.lendyn,w.lenbits=7,q={bits:w.lenbits},Q=u(0,w.lens,0,19,w.lencode,0,w.work,q),w.lenbits=q.bits,Q){E.msg="invalid code lengths set",w.mode=30;break}w.have=0,w.mode=19;case 19:for(;w.have<w.nlen+w.ndist;){for(;de=(R=w.lencode[H&(1<<w.lenbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(ge<16)H>>>=xe,B-=xe,w.lens[w.have++]=ge;else{if(ge===16){for(O=xe+2;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H>>>=xe,B-=xe,w.have===0){E.msg="invalid bit length repeat",w.mode=30;break}k=w.lens[w.have-1],Y=3+(3&H),H>>>=2,B-=2}else if(ge===17){for(O=xe+3;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}B-=xe,k=0,Y=3+(7&(H>>>=xe)),H>>>=3,B-=3}else{for(O=xe+7;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}B-=xe,k=0,Y=11+(127&(H>>>=xe)),H>>>=7,B-=7}if(w.have+Y>w.nlen+w.ndist){E.msg="invalid bit length repeat",w.mode=30;break}for(;Y--;)w.lens[w.have++]=k}}if(w.mode===30)break;if(w.lens[256]===0){E.msg="invalid code -- missing end-of-block",w.mode=30;break}if(w.lenbits=9,q={bits:w.lenbits},Q=u(f,w.lens,0,w.nlen,w.lencode,0,w.work,q),w.lenbits=q.bits,Q){E.msg="invalid literal/lengths set",w.mode=30;break}if(w.distbits=6,w.distcode=w.distdyn,q={bits:w.distbits},Q=u(d,w.lens,w.nlen,w.ndist,w.distcode,0,w.work,q),w.distbits=q.bits,Q){E.msg="invalid distances set",w.mode=30;break}if(w.mode=20,D===6)break e;case 20:w.mode=21;case 21:if(6<=V&&258<=X){E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,c(E,W),te=E.next_out,ee=E.output,X=E.avail_out,F=E.next_in,$=E.input,V=E.avail_in,H=w.hold,B=w.bits,w.mode===12&&(w.back=-1);break}for(w.back=0;de=(R=w.lencode[H&(1<<w.lenbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(de&&(240&de)==0){for(be=xe,Ce=de,Re=ge;de=(R=w.lencode[Re+((H&(1<<be+Ce)-1)>>be)])>>>16&255,ge=65535&R,!(be+(xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}H>>>=be,B-=be,w.back+=be}if(H>>>=xe,B-=xe,w.back+=xe,w.length=ge,de===0){w.mode=26;break}if(32&de){w.back=-1,w.mode=12;break}if(64&de){E.msg="invalid literal/length code",w.mode=30;break}w.extra=15&de,w.mode=22;case 22:if(w.extra){for(O=w.extra;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.length+=H&(1<<w.extra)-1,H>>>=w.extra,B-=w.extra,w.back+=w.extra}w.was=w.length,w.mode=23;case 23:for(;de=(R=w.distcode[H&(1<<w.distbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if((240&de)==0){for(be=xe,Ce=de,Re=ge;de=(R=w.distcode[Re+((H&(1<<be+Ce)-1)>>be)])>>>16&255,ge=65535&R,!(be+(xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}H>>>=be,B-=be,w.back+=be}if(H>>>=xe,B-=xe,w.back+=xe,64&de){E.msg="invalid distance code",w.mode=30;break}w.offset=ge,w.extra=15&de,w.mode=24;case 24:if(w.extra){for(O=w.extra;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.offset+=H&(1<<w.extra)-1,H>>>=w.extra,B-=w.extra,w.back+=w.extra}if(w.offset>w.dmax){E.msg="invalid distance too far back",w.mode=30;break}w.mode=25;case 25:if(X===0)break e;if(Y=W-X,w.offset>Y){if((Y=w.offset-Y)>w.whave&&w.sane){E.msg="invalid distance too far back",w.mode=30;break}_e=Y>w.wnext?(Y-=w.wnext,w.wsize-Y):w.wnext-Y,Y>w.length&&(Y=w.length),fe=w.window}else fe=ee,_e=te-w.offset,Y=w.length;for(X<Y&&(Y=X),X-=Y,w.length-=Y;ee[te++]=fe[_e++],--Y;);w.length===0&&(w.mode=21);break;case 26:if(X===0)break e;ee[te++]=w.length,X--,w.mode=21;break;case 27:if(w.wrap){for(;B<32;){if(V===0)break e;V--,H|=$[F++]<<B,B+=8}if(W-=X,E.total_out+=W,w.total+=W,W&&(E.adler=w.check=w.flags?l(w.check,ee,W,te-W):a(w.check,ee,W,te-W)),W=X,(w.flags?H:v(H))!==w.check){E.msg="incorrect data check",w.mode=30;break}B=H=0}w.mode=28;case 28:if(w.wrap&&w.flags){for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H!==(4294967295&w.total)){E.msg="incorrect length check",w.mode=30;break}B=H=0}w.mode=29;case 29:Q=1;break e;case 30:Q=-3;break e;case 31:return-4;default:return h}return E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,(w.wsize||W!==E.avail_out&&w.mode<30&&(w.mode<27||D!==4))&&L(E,E.output,E.next_out,W-E.avail_out)?(w.mode=31,-4):(ce-=E.avail_in,W-=E.avail_out,E.total_in+=ce,E.total_out+=W,w.total+=W,w.wrap&&W&&(E.adler=w.check=w.flags?l(w.check,ee,W,E.next_out-W):a(w.check,ee,W,E.next_out-W)),E.data_type=w.bits+(w.last?64:0)+(w.mode===12?128:0)+(w.mode===20||w.mode===15?256:0),(ce==0&&W===0||D===4)&&Q===m&&(Q=-5),Q)},o.inflateEnd=function(E){if(!E||!E.state)return h;var D=E.state;return D.window&&(D.window=null),E.state=null,m},o.inflateGetHeader=function(E,D){var w;return E&&E.state?(2&(w=E.state).wrap)==0?h:((w.head=D).done=!1,m):h},o.inflateSetDictionary=function(E,D){var w,$=D.length;return E&&E.state?(w=E.state).wrap!==0&&w.mode!==11?h:w.mode===11&&a(1,D,$,0)!==w.check?-3:L(E,D,$,$)?(w.mode=31,-4):(w.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,s,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];s.exports=function(f,d,m,h,b,g,x,v){var y,_,j,S,N,T,A,I,P,L=v.bits,E=0,D=0,w=0,$=0,ee=0,F=0,te=0,V=0,X=0,H=0,B=null,ce=0,W=new i.Buf16(16),Y=new i.Buf16(16),_e=null,fe=0;for(E=0;E<=15;E++)W[E]=0;for(D=0;D<h;D++)W[d[m+D]]++;for(ee=L,$=15;1<=$&&W[$]===0;$--);if($<ee&&(ee=$),$===0)return b[g++]=20971520,b[g++]=20971520,v.bits=1,0;for(w=1;w<$&&W[w]===0;w++);for(ee<w&&(ee=w),E=V=1;E<=15;E++)if(V<<=1,(V-=W[E])<0)return-1;if(0<V&&(f===0||$!==1))return-1;for(Y[1]=0,E=1;E<15;E++)Y[E+1]=Y[E]+W[E];for(D=0;D<h;D++)d[m+D]!==0&&(x[Y[d[m+D]]++]=D);if(T=f===0?(B=_e=x,19):f===1?(B=a,ce-=257,_e=l,fe-=257,256):(B=c,_e=u,-1),E=w,N=g,te=D=H=0,j=-1,S=(X=1<<(F=ee))-1,f===1&&852<X||f===2&&592<X)return 1;for(;;){for(A=E-te,P=x[D]<T?(I=0,x[D]):x[D]>T?(I=_e[fe+x[D]],B[ce+x[D]]):(I=96,0),y=1<<E-te,w=_=1<<F;b[N+(H>>te)+(_-=y)]=A<<24|I<<16|P|0,_!==0;);for(y=1<<E-1;H&y;)y>>=1;if(y!==0?(H&=y-1,H+=y):H=0,D++,--W[E]==0){if(E===$)break;E=d[m+x[D]]}if(ee<E&&(H&S)!==j){for(te===0&&(te=ee),N+=w,V=1<<(F=E-te);F+te<$&&!((V-=W[F+te])<=0);)F++,V<<=1;if(X+=1<<F,f===1&&852<X||f===2&&592<X)return 1;b[j=H&S]=ee<<24|F<<16|N-g|0}}return H!==0&&(b[N+H]=E-te<<24|64<<16|0),v.bits=ee,0}},{"../utils/common":41}],51:[function(n,s,o){s.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,s,o){var i=n("../utils/common"),a=0,l=1;function c(R){for(var U=R.length;0<=--U;)R[U]=0}var u=0,f=29,d=256,m=d+1+f,h=30,b=19,g=2*m+1,x=15,v=16,y=7,_=256,j=16,S=17,N=18,T=[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],A=[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],P=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],L=new Array(2*(m+2));c(L);var E=new Array(2*h);c(E);var D=new Array(512);c(D);var w=new Array(256);c(w);var $=new Array(f);c($);var ee,F,te,V=new Array(h);function X(R,U,re,se,Z){this.static_tree=R,this.extra_bits=U,this.extra_base=re,this.elems=se,this.max_length=Z,this.has_stree=R&&R.length}function H(R,U){this.dyn_tree=R,this.max_code=0,this.stat_desc=U}function B(R){return R<256?D[R]:D[256+(R>>>7)]}function ce(R,U){R.pending_buf[R.pending++]=255&U,R.pending_buf[R.pending++]=U>>>8&255}function W(R,U,re){R.bi_valid>v-re?(R.bi_buf|=U<<R.bi_valid&65535,ce(R,R.bi_buf),R.bi_buf=U>>v-R.bi_valid,R.bi_valid+=re-v):(R.bi_buf|=U<<R.bi_valid&65535,R.bi_valid+=re)}function Y(R,U,re){W(R,re[2*U],re[2*U+1])}function _e(R,U){for(var re=0;re|=1&R,R>>>=1,re<<=1,0<--U;);return re>>>1}function fe(R,U,re){var se,Z,le=new Array(x+1),z=0;for(se=1;se<=x;se++)le[se]=z=z+re[se-1]<<1;for(Z=0;Z<=U;Z++){var M=R[2*Z+1];M!==0&&(R[2*Z]=_e(le[M]++,M))}}function xe(R){var U;for(U=0;U<m;U++)R.dyn_ltree[2*U]=0;for(U=0;U<h;U++)R.dyn_dtree[2*U]=0;for(U=0;U<b;U++)R.bl_tree[2*U]=0;R.dyn_ltree[2*_]=1,R.opt_len=R.static_len=0,R.last_lit=R.matches=0}function de(R){8<R.bi_valid?ce(R,R.bi_buf):0<R.bi_valid&&(R.pending_buf[R.pending++]=R.bi_buf),R.bi_buf=0,R.bi_valid=0}function ge(R,U,re,se){var Z=2*U,le=2*re;return R[Z]<R[le]||R[Z]===R[le]&&se[U]<=se[re]}function be(R,U,re){for(var se=R.heap[re],Z=re<<1;Z<=R.heap_len&&(Z<R.heap_len&&ge(U,R.heap[Z+1],R.heap[Z],R.depth)&&Z++,!ge(U,se,R.heap[Z],R.depth));)R.heap[re]=R.heap[Z],re=Z,Z<<=1;R.heap[re]=se}function Ce(R,U,re){var se,Z,le,z,M=0;if(R.last_lit!==0)for(;se=R.pending_buf[R.d_buf+2*M]<<8|R.pending_buf[R.d_buf+2*M+1],Z=R.pending_buf[R.l_buf+M],M++,se===0?Y(R,Z,U):(Y(R,(le=w[Z])+d+1,U),(z=T[le])!==0&&W(R,Z-=$[le],z),Y(R,le=B(--se),re),(z=A[le])!==0&&W(R,se-=V[le],z)),M<R.last_lit;);Y(R,_,U)}function Re(R,U){var re,se,Z,le=U.dyn_tree,z=U.stat_desc.static_tree,M=U.stat_desc.has_stree,J=U.stat_desc.elems,oe=-1;for(R.heap_len=0,R.heap_max=g,re=0;re<J;re++)le[2*re]!==0?(R.heap[++R.heap_len]=oe=re,R.depth[re]=0):le[2*re+1]=0;for(;R.heap_len<2;)le[2*(Z=R.heap[++R.heap_len]=oe<2?++oe:0)]=1,R.depth[Z]=0,R.opt_len--,M&&(R.static_len-=z[2*Z+1]);for(U.max_code=oe,re=R.heap_len>>1;1<=re;re--)be(R,le,re);for(Z=J;re=R.heap[1],R.heap[1]=R.heap[R.heap_len--],be(R,le,1),se=R.heap[1],R.heap[--R.heap_max]=re,R.heap[--R.heap_max]=se,le[2*Z]=le[2*re]+le[2*se],R.depth[Z]=(R.depth[re]>=R.depth[se]?R.depth[re]:R.depth[se])+1,le[2*re+1]=le[2*se+1]=Z,R.heap[1]=Z++,be(R,le,1),2<=R.heap_len;);R.heap[--R.heap_max]=R.heap[1],(function(ie,we){var he,me,Ie,$e,Ft,zn,gt=we.dyn_tree,at=we.max_code,en=we.stat_desc.static_tree,Bs=we.stat_desc.has_stree,Ue=we.stat_desc.extra_bits,St=we.stat_desc.extra_base,tt=we.stat_desc.max_length,Ut=0;for($e=0;$e<=x;$e++)ie.bl_count[$e]=0;for(gt[2*ie.heap[ie.heap_max]+1]=0,he=ie.heap_max+1;he<g;he++)tt<($e=gt[2*gt[2*(me=ie.heap[he])+1]+1]+1)&&($e=tt,Ut++),gt[2*me+1]=$e,at<me||(ie.bl_count[$e]++,Ft=0,St<=me&&(Ft=Ue[me-St]),zn=gt[2*me],ie.opt_len+=zn*($e+Ft),Bs&&(ie.static_len+=zn*(en[2*me+1]+Ft)));if(Ut!==0){do{for($e=tt-1;ie.bl_count[$e]===0;)$e--;ie.bl_count[$e]--,ie.bl_count[$e+1]+=2,ie.bl_count[tt]--,Ut-=2}while(0<Ut);for($e=tt;$e!==0;$e--)for(me=ie.bl_count[$e];me!==0;)at<(Ie=ie.heap[--he])||(gt[2*Ie+1]!==$e&&(ie.opt_len+=($e-gt[2*Ie+1])*gt[2*Ie],gt[2*Ie+1]=$e),me--)}})(R,U),fe(le,oe,R.bl_count)}function k(R,U,re){var se,Z,le=-1,z=U[1],M=0,J=7,oe=4;for(z===0&&(J=138,oe=3),U[2*(re+1)+1]=65535,se=0;se<=re;se++)Z=z,z=U[2*(se+1)+1],++M<J&&Z===z||(M<oe?R.bl_tree[2*Z]+=M:Z!==0?(Z!==le&&R.bl_tree[2*Z]++,R.bl_tree[2*j]++):M<=10?R.bl_tree[2*S]++:R.bl_tree[2*N]++,le=Z,oe=(M=0)===z?(J=138,3):Z===z?(J=6,3):(J=7,4))}function Q(R,U,re){var se,Z,le=-1,z=U[1],M=0,J=7,oe=4;for(z===0&&(J=138,oe=3),se=0;se<=re;se++)if(Z=z,z=U[2*(se+1)+1],!(++M<J&&Z===z)){if(M<oe)for(;Y(R,Z,R.bl_tree),--M!=0;);else Z!==0?(Z!==le&&(Y(R,Z,R.bl_tree),M--),Y(R,j,R.bl_tree),W(R,M-3,2)):M<=10?(Y(R,S,R.bl_tree),W(R,M-3,3)):(Y(R,N,R.bl_tree),W(R,M-11,7));le=Z,oe=(M=0)===z?(J=138,3):Z===z?(J=6,3):(J=7,4)}}c(V);var q=!1;function O(R,U,re,se){W(R,(u<<1)+(se?1:0),3),(function(Z,le,z,M){de(Z),ce(Z,z),ce(Z,~z),i.arraySet(Z.pending_buf,Z.window,le,z,Z.pending),Z.pending+=z})(R,U,re)}o._tr_init=function(R){q||((function(){var U,re,se,Z,le,z=new Array(x+1);for(Z=se=0;Z<f-1;Z++)for($[Z]=se,U=0;U<1<<T[Z];U++)w[se++]=Z;for(w[se-1]=Z,Z=le=0;Z<16;Z++)for(V[Z]=le,U=0;U<1<<A[Z];U++)D[le++]=Z;for(le>>=7;Z<h;Z++)for(V[Z]=le<<7,U=0;U<1<<A[Z]-7;U++)D[256+le++]=Z;for(re=0;re<=x;re++)z[re]=0;for(U=0;U<=143;)L[2*U+1]=8,U++,z[8]++;for(;U<=255;)L[2*U+1]=9,U++,z[9]++;for(;U<=279;)L[2*U+1]=7,U++,z[7]++;for(;U<=287;)L[2*U+1]=8,U++,z[8]++;for(fe(L,m+1,z),U=0;U<h;U++)E[2*U+1]=5,E[2*U]=_e(U,5);ee=new X(L,T,d+1,m,x),F=new X(E,A,0,h,x),te=new X(new Array(0),I,0,b,y)})(),q=!0),R.l_desc=new H(R.dyn_ltree,ee),R.d_desc=new H(R.dyn_dtree,F),R.bl_desc=new H(R.bl_tree,te),R.bi_buf=0,R.bi_valid=0,xe(R)},o._tr_stored_block=O,o._tr_flush_block=function(R,U,re,se){var Z,le,z=0;0<R.level?(R.strm.data_type===2&&(R.strm.data_type=(function(M){var J,oe=4093624447;for(J=0;J<=31;J++,oe>>>=1)if(1&oe&&M.dyn_ltree[2*J]!==0)return a;if(M.dyn_ltree[18]!==0||M.dyn_ltree[20]!==0||M.dyn_ltree[26]!==0)return l;for(J=32;J<d;J++)if(M.dyn_ltree[2*J]!==0)return l;return a})(R)),Re(R,R.l_desc),Re(R,R.d_desc),z=(function(M){var J;for(k(M,M.dyn_ltree,M.l_desc.max_code),k(M,M.dyn_dtree,M.d_desc.max_code),Re(M,M.bl_desc),J=b-1;3<=J&&M.bl_tree[2*P[J]+1]===0;J--);return M.opt_len+=3*(J+1)+5+5+4,J})(R),Z=R.opt_len+3+7>>>3,(le=R.static_len+3+7>>>3)<=Z&&(Z=le)):Z=le=re+5,re+4<=Z&&U!==-1?O(R,U,re,se):R.strategy===4||le===Z?(W(R,2+(se?1:0),3),Ce(R,L,E)):(W(R,4+(se?1:0),3),(function(M,J,oe,ie){var we;for(W(M,J-257,5),W(M,oe-1,5),W(M,ie-4,4),we=0;we<ie;we++)W(M,M.bl_tree[2*P[we]+1],3);Q(M,M.dyn_ltree,J-1),Q(M,M.dyn_dtree,oe-1)})(R,R.l_desc.max_code+1,R.d_desc.max_code+1,z+1),Ce(R,R.dyn_ltree,R.dyn_dtree)),xe(R),se&&de(R)},o._tr_tally=function(R,U,re){return R.pending_buf[R.d_buf+2*R.last_lit]=U>>>8&255,R.pending_buf[R.d_buf+2*R.last_lit+1]=255&U,R.pending_buf[R.l_buf+R.last_lit]=255&re,R.last_lit++,U===0?R.dyn_ltree[2*re]++:(R.matches++,U--,R.dyn_ltree[2*(w[re]+d+1)]++,R.dyn_dtree[2*B(U)]++),R.last_lit===R.lit_bufsize-1},o._tr_align=function(R){W(R,2,3),Y(R,_,L),(function(U){U.bi_valid===16?(ce(U,U.bi_buf),U.bi_buf=0,U.bi_valid=0):8<=U.bi_valid&&(U.pending_buf[U.pending++]=255&U.bi_buf,U.bi_buf>>=8,U.bi_valid-=8)})(R)}},{"../utils/common":41}],53:[function(n,s,o){s.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,s,o){(function(i){(function(a,l){if(!a.setImmediate){var c,u,f,d,m=1,h={},b=!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}})()?(d="setImmediate$"+Math.random()+"$",a.addEventListener?a.addEventListener("message",_,!1):a.attachEvent("onmessage",_),function(j){a.postMessage(d+j,"*")}):a.MessageChannel?((f=new MessageChannel).port1.onmessage=function(j){y(j.data)},function(j){f.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),N=0;N<S.length;N++)S[N]=arguments[N+1];var T={callback:j,args:S};return h[m]=T,c(m),m++},x.clearImmediate=v}function v(j){delete h[j]}function y(j){if(b)setTimeout(y,0,j);else{var S=h[j];if(S){b=!0;try{(function(N){var T=N.callback,A=N.args;switch(A.length){case 0:T();break;case 1:T(A[0]);break;case 2:T(A[0],A[1]);break;case 3:T(A[0],A[1],A[2]);break;default:T.apply(l,A)}})(S)}finally{v(j),b=!1}}}}function _(j){j.source===a&&typeof j.data=="string"&&j.data.indexOf(d)===0&&y(+j.data.slice(d.length))}})(typeof self>"u"?i===void 0?this:i:self)}).call(this,typeof Cr<"u"?Cr:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(Ii)),Ii.exports}var X_=Y_();const Q_=kg(X_),ek="3.0.20",ja={version:ek},xp="[REDACTED]",tk=/(^|[-_])(api[-_]?key|authorization|cookie|token|secret|password|access[-_]?token|refresh[-_]?token)([-_]|$)/i,nk=[/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],cu=200,sk=25e6,bp=50,rk=1e4;function ok(e){return e<1024?`${e} chars`:e<1024*1024?`${Math.ceil(e/1024)} KB`:`${Math.ceil(e/(1024*1024))} MB`}function ik(e){let t=0;for(const n of e)t+=n.rawRequestBody?.length??0,t+=n.responseText?.length??0;return t}function ak(e){if(e.length>cu)return`Export is limited to ${cu} logs at once. Narrow the filter and try again.`;const t=ik(e);return t>sk?`Export is too large (${ok(t)} of text). Narrow the filter and try again.`:null}function Rr(e){return e?.aborted===!0?{ok:!1,message:"Export canceled.",canceled:!0}:null}async function lk(e,t){try{const n=await Fn(`/api/logs/${e}/chunks`,rk,{signal:t});if(!n.ok)return null;const s=await n.json();return JSON.stringify(s,null,2)}catch{return null}}function ck(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Sa(e){if(Array.isArray(e))return e.map(n=>Sa(n));if(!ck(e))return e;const t={};for(const[n,s]of Object.entries(e))t[n]=tk.test(n)?xp:Sa(s);return t}function uk(e){const t=n=>{let s=n;for(const o of nk)s=s.replace(o,xp);return s};try{const n=JSON.parse(e);return t(JSON.stringify(Sa(n),null,2))}catch{return t(e)}}function Ri(e,t){return t==="redacted"?uk(e):e}function dk(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 fk(e,t,n,s=new Date().toISOString()){return{version:ja.version,exportedAt:s,mode:t,redacted:t==="redacted",logCount:e.length,logIds:e.map(o=>o.id),streamingChunkExportLimit:bp,streamingChunkLogIds:n.map(o=>o.id)}}async function pk(e,t="redacted",n={}){const s=Rr(n.signal);if(s!==null)return s;const o=ak(e);if(o!==null)return{ok:!1,message:o};const i=new Q_,a=t==="redacted"?"redacted":"raw",l=e.filter(m=>m.streaming).slice(0,bp);i.file("manifest.json",JSON.stringify(fk(e,t,l),null,2)),i.file("logs.json",JSON.stringify(e.map(m=>dk(m,t)),null,2));for(const m of e){const h=Rr(n.signal);if(h!==null)return h;m.rawRequestBody!==null&&i.file(`#${m.id}.Request.json`,Ri(m.rawRequestBody,t)),m.responseText!==null&&i.file(`#${m.id}.Response.json`,Ri(m.responseText,t))}for(const m of l){const h=Rr(n.signal);if(h!==null)return h;const b=await lk(m.id,n.signal);b!==null&&i.file(`#${m.id}.SSE.Response.json`,Ri(b,t))}const c=await i.generateAsync({type:"blob"}),u=Rr(n.signal);if(u!==null)return u;const f=URL.createObjectURL(c),d=document.createElement("a");return d.href=f,d.download=`agent-inspector-export-${a}-${new Date().toISOString().slice(0,10)}.zip`,document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(f),{ok:!0}}function hk(e,t){if(e!==null){e.removeAllRanges();for(const n of t)e.addRange(n)}}function mk(e){if(e===null)return[];const t=[];for(let n=0;n<e.rangeCount;n++)t.push(e.getRangeAt(n));return t}function gk(e){if(typeof document>"u")return!1;const t=document.activeElement,n=document.getSelection(),s=mk(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),hk(n,s),typeof HTMLElement<"u"&&t instanceof HTMLElement&&t.focus({preventScroll:!0})}return i}async function Tt(e){const t=globalThis.navigator?.clipboard;if(t!==void 0)try{return await t.writeText(e),!0}catch{}return gk(e)}function Ca(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 Dl(e,t,n){return`${Ca(e,n)} - ${Ca(t,n)}`}function zr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function xk(e){switch(e){case"end_turn":case"tool_use":return e;case"max_tokens":return"length";default:return null}}function bk(e){switch(e){case"stop":case"length":return e;case"max_tokens":return"length";default:return null}}function vk(e){switch(e){case"max_output_tokens":case"max_tokens":return!0;default:return!1}}function vp(e){if(e.responseText===null)return null;try{let t=JSON.parse(e.responseText);if(typeof t=="string"&&(t=JSON.parse(t)),!zr(t))return null;if(typeof t.stop_reason=="string")return xk(t.stop_reason);if(Array.isArray(t.choices))for(const n of t.choices){if(!zr(n)||typeof n.finish_reason!="string")continue;const s=bk(n.finish_reason);if(s!==null)return s}if(Array.isArray(t.output)){for(const n of t.output)if(zr(n)&&n.type==="function_call")return"tool_use";if(t.status==="completed")return"stop"}if(t.status==="incomplete"&&zr(t.incomplete_details)){const n=t.incomplete_details.reason;if(typeof n=="string"&&vk(n))return"length"}return null}catch{return null}}function $l(e){return e==="end_turn"||e==="stop"||e==="length"}function yp(e){var t,n,s="";if(typeof e=="string"||typeof e=="number")s+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=yp(e[t]))&&(s&&(s+=" "),s+=n)}else for(n in e)e[n]&&(s&&(s+=" "),s+=n);return s}function wp(){for(var e,t,n=0,s="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=yp(e))&&(s&&(s+=" "),s+=t);return s}const yk=(e,t)=>{const n=new Array(e.length+t.length);for(let s=0;s<e.length;s++)n[s]=e[s];for(let s=0;s<t.length;s++)n[e.length+s]=t[s];return n},wk=(e,t)=>({classGroupId:e,validator:t}),_p=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),jo="-",uu=[],_k="arbitrary..",kk=e=>{const t=Sk(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:s}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return jk(a);const l=a.split(jo),c=l[0]===""&&l.length>1?1:0;return kp(l,c,t)},getConflictingClassGroupIds:(a,l)=>{if(l){const c=s[a],u=n[a];return c?u?yk(u,c):c:u||uu}return n[a]||uu}}},kp=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const o=e[t],i=n.nextPart.get(o);if(i){const u=kp(e,t+1,i);if(u)return u}const a=n.validators;if(a===null)return;const l=t===0?e.join(jo):e.slice(t).join(jo),c=a.length;for(let u=0;u<c;u++){const f=a[u];if(f.validator(l))return f.classGroupId}},jk=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),s=t.slice(0,n);return s?_k+s:void 0})(),Sk=e=>{const{theme:t,classGroups:n}=e;return Ck(n,t)},Ck=(e,t)=>{const n=_p();for(const s in e){const o=e[s];Fl(o,n,s,t)}return n},Fl=(e,t,n,s)=>{const o=e.length;for(let i=0;i<o;i++){const a=e[i];Nk(a,t,n,s)}},Nk=(e,t,n,s)=>{if(typeof e=="string"){Tk(e,t,n);return}if(typeof e=="function"){Ek(e,t,n,s);return}Ak(e,t,n,s)},Tk=(e,t,n)=>{const s=e===""?t:jp(t,e);s.classGroupId=n},Ek=(e,t,n,s)=>{if(Ik(e)){Fl(e(s),t,n,s);return}t.validators===null&&(t.validators=[]),t.validators.push(wk(n,e))},Ak=(e,t,n,s)=>{const o=Object.entries(e),i=o.length;for(let a=0;a<i;a++){const[l,c]=o[a];Fl(c,jp(t,l),n,s)}},jp=(e,t)=>{let n=e;const s=t.split(jo),o=s.length;for(let i=0;i<o;i++){const a=s[i];let l=n.nextPart.get(a);l||(l=_p(),n.nextPart.set(a,l)),n=l}return n},Ik=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Rk=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),s=Object.create(null);const o=(i,a)=>{n[i]=a,t++,t>e&&(t=0,s=n,n=Object.create(null))};return{get(i){let a=n[i];if(a!==void 0)return a;if((a=s[i])!==void 0)return o(i,a),a},set(i,a){i in n?n[i]=a:o(i,a)}}},Na="!",du=":",zk=[],fu=(e,t,n,s,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:s,isExternal:o}),Pk=e=>{const{prefix:t,experimentalParseClassName:n}=e;let s=o=>{const i=[];let a=0,l=0,c=0,u;const f=o.length;for(let g=0;g<f;g++){const x=o[g];if(a===0&&l===0){if(x===du){i.push(o.slice(c,g)),c=g+1;continue}if(x==="/"){u=g;continue}}x==="["?a++:x==="]"?a--:x==="("?l++:x===")"&&l--}const d=i.length===0?o:o.slice(c);let m=d,h=!1;d.endsWith(Na)?(m=d.slice(0,-1),h=!0):d.startsWith(Na)&&(m=d.slice(1),h=!0);const b=u&&u>c?u-c:void 0;return fu(i,h,m,b)};if(t){const o=t+du,i=s;s=a=>a.startsWith(o)?i(a.slice(o.length)):fu(zk,!1,a,void 0,!0)}if(n){const o=s;s=i=>n({className:i,parseClassName:o})}return s},Ok=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,s)=>{t.set(n,1e6+s)}),n=>{const s=[];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(),s.push(...o),o=[]),s.push(a)):o.push(a)}return o.length>0&&(o.sort(),s.push(...o)),s}},Mk=e=>({cache:Rk(e.cacheSize),parseClassName:Pk(e),sortModifiers:Ok(e),postfixLookupClassGroupIds:Lk(e),...kk(e)}),Lk=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let s=0;s<n.length;s++)t[n[s]]=!0;return t},Dk=/\s+/,$k=(e,t)=>{const{parseClassName:n,getClassGroupId:s,getConflictingClassGroupIds:o,sortModifiers:i,postfixLookupClassGroupIds:a}=t,l=[],c=e.trim().split(Dk);let u="";for(let f=c.length-1;f>=0;f-=1){const d=c[f],{isExternal:m,modifiers:h,hasImportantModifier:b,baseClassName:g,maybePostfixModifierPosition:x}=n(d);if(m){u=d+(u.length>0?" "+u:u);continue}let v=!!x,y;if(v){const T=g.substring(0,x);y=s(T);const A=y&&a[y]?s(g):void 0;A&&A!==y&&(y=A,v=!1)}else y=s(g);if(!y){if(!v){u=d+(u.length>0?" "+u:u);continue}if(y=s(g),!y){u=d+(u.length>0?" "+u:u);continue}v=!1}const _=h.length===0?"":h.length===1?h[0]:i(h).join(":"),j=b?_+Na:_,S=j+y;if(l.indexOf(S)>-1)continue;l.push(S);const N=o(y,v);for(let T=0;T<N.length;++T){const A=N[T];l.push(j+A)}u=d+(u.length>0?" "+u:u)}return u},Fk=(...e)=>{let t=0,n,s,o="";for(;t<e.length;)(n=e[t++])&&(s=Sp(n))&&(o&&(o+=" "),o+=s);return o},Sp=e=>{if(typeof e=="string")return e;let t,n="";for(let s=0;s<e.length;s++)e[s]&&(t=Sp(e[s]))&&(n&&(n+=" "),n+=t);return n},Uk=(e,...t)=>{let n,s,o,i;const a=c=>{const u=t.reduce((f,d)=>d(f),e());return n=Mk(u),s=n.cache.get,o=n.cache.set,i=l,l(c)},l=c=>{const u=s(c);if(u)return u;const f=$k(c,n);return o(c,f),f};return i=a,(...c)=>i(Fk(...c))},Bk=[],et=e=>{const t=n=>n[e]||Bk;return t.isThemeGetter=!0,t},Cp=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Np=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Wk=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Hk=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Vk=/\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$/,Zk=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,qk=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Gk=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,fn=e=>Wk.test(e),Pe=e=>!!e&&!Number.isNaN(Number(e)),Bt=e=>!!e&&Number.isInteger(Number(e)),zi=e=>e.endsWith("%")&&Pe(e.slice(0,-1)),tn=e=>Hk.test(e),Tp=()=>!0,Kk=e=>Vk.test(e)&&!Zk.test(e),Ul=()=>!1,Jk=e=>qk.test(e),Yk=e=>Gk.test(e),Xk=e=>!ve(e)&&!ye(e),Qk=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),e5=e=>Tn(e,Ip,Ul),ve=e=>Cp.test(e),Pn=e=>Tn(e,Rp,Kk),pu=e=>Tn(e,l5,Pe),t5=e=>Tn(e,Pp,Tp),n5=e=>Tn(e,zp,Ul),hu=e=>Tn(e,Ep,Ul),s5=e=>Tn(e,Ap,Yk),Pr=e=>Tn(e,Op,Jk),ye=e=>Np.test(e),Ws=e=>Kn(e,Rp),r5=e=>Kn(e,zp),mu=e=>Kn(e,Ep),o5=e=>Kn(e,Ip),i5=e=>Kn(e,Ap),Or=e=>Kn(e,Op,!0),a5=e=>Kn(e,Pp,!0),Tn=(e,t,n)=>{const s=Cp.exec(e);return s?s[1]?t(s[1]):n(s[2]):!1},Kn=(e,t,n=!1)=>{const s=Np.exec(e);return s?s[1]?t(s[1]):n:!1},Ep=e=>e==="position"||e==="percentage",Ap=e=>e==="image"||e==="url",Ip=e=>e==="length"||e==="size"||e==="bg-size",Rp=e=>e==="length",l5=e=>e==="number",zp=e=>e==="family-name",Pp=e=>e==="number"||e==="weight",Op=e=>e==="shadow",c5=()=>{const e=et("color"),t=et("font"),n=et("text"),s=et("font-weight"),o=et("tracking"),i=et("leading"),a=et("breakpoint"),l=et("container"),c=et("spacing"),u=et("radius"),f=et("shadow"),d=et("inset-shadow"),m=et("text-shadow"),h=et("drop-shadow"),b=et("blur"),g=et("perspective"),x=et("aspect"),v=et("ease"),y=et("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],N=()=>["auto","hidden","clip","visible","scroll"],T=()=>["auto","contain","none"],A=()=>[ye,ve,c],I=()=>[fn,"full","auto",...A()],P=()=>[Bt,"none","subgrid",ye,ve],L=()=>["auto",{span:["full",Bt,ye,ve]},Bt,ye,ve],E=()=>[Bt,"auto",ye,ve],D=()=>["auto","min","max","fr",ye,ve],w=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],$=()=>["start","end","center","stretch","center-safe","end-safe"],ee=()=>["auto",...A()],F=()=>[fn,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...A()],te=()=>[fn,"screen","full","dvw","lvw","svw","min","max","fit",...A()],V=()=>[fn,"screen","full","lh","dvh","lvh","svh","min","max","fit",...A()],X=()=>[e,ye,ve],H=()=>[...j(),mu,hu,{position:[ye,ve]}],B=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ce=()=>["auto","cover","contain",o5,e5,{size:[ye,ve]}],W=()=>[zi,Ws,Pn],Y=()=>["","none","full",u,ye,ve],_e=()=>["",Pe,Ws,Pn],fe=()=>["solid","dashed","dotted","double"],xe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],de=()=>[Pe,zi,mu,hu],ge=()=>["","none",b,ye,ve],be=()=>["none",Pe,ye,ve],Ce=()=>["none",Pe,ye,ve],Re=()=>[Pe,ye,ve],k=()=>[fn,"full",...A()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[tn],breakpoint:[tn],color:[Tp],container:[tn],"drop-shadow":[tn],ease:["in","out","in-out"],font:[Xk],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[tn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[tn],shadow:[tn],spacing:["px",Pe],text:[tn],"text-shadow":[tn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",fn,ve,ye,x]}],container:["container"],"container-type":[{"@container":["","normal","size",ye,ve]}],"container-named":[Qk],columns:[{columns:[Pe,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:N()}],"overflow-x":[{"overflow-x":N()}],"overflow-y":[{"overflow-y":N()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{"inset-s":I(),start:I()}],end:[{"inset-e":I(),end:I()}],"inset-bs":[{"inset-bs":I()}],"inset-be":[{"inset-be":I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[Bt,"auto",ye,ve]}],basis:[{basis:[fn,"full","auto",l,...A()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Pe,fn,"auto","initial","none",ve]}],grow:[{grow:["",Pe,ye,ve]}],shrink:[{shrink:["",Pe,ye,ve]}],order:[{order:[Bt,"first","last","none",ye,ve]}],"grid-cols":[{"grid-cols":P()}],"col-start-end":[{col:L()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":P()}],"row-start-end":[{row:L()}],"row-start":[{"row-start":E()}],"row-end":[{"row-end":E()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:A()}],"gap-x":[{"gap-x":A()}],"gap-y":[{"gap-y":A()}],"justify-content":[{justify:[...w(),"normal"]}],"justify-items":[{"justify-items":[...$(),"normal"]}],"justify-self":[{"justify-self":["auto",...$()]}],"align-content":[{content:["normal",...w()]}],"align-items":[{items:[...$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...$(),{baseline:["","last"]}]}],"place-content":[{"place-content":w()}],"place-items":[{"place-items":[...$(),"baseline"]}],"place-self":[{"place-self":["auto",...$()]}],p:[{p:A()}],px:[{px:A()}],py:[{py:A()}],ps:[{ps:A()}],pe:[{pe:A()}],pbs:[{pbs:A()}],pbe:[{pbe:A()}],pt:[{pt:A()}],pr:[{pr:A()}],pb:[{pb:A()}],pl:[{pl:A()}],m:[{m:ee()}],mx:[{mx:ee()}],my:[{my:ee()}],ms:[{ms:ee()}],me:[{me:ee()}],mbs:[{mbs:ee()}],mbe:[{mbe:ee()}],mt:[{mt:ee()}],mr:[{mr:ee()}],mb:[{mb:ee()}],ml:[{ml:ee()}],"space-x":[{"space-x":A()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":A()}],"space-y-reverse":["space-y-reverse"],size:[{size:F()}],"inline-size":[{inline:["auto",...te()]}],"min-inline-size":[{"min-inline":["auto",...te()]}],"max-inline-size":[{"max-inline":["none",...te()]}],"block-size":[{block:["auto",...V()]}],"min-block-size":[{"min-block":["auto",...V()]}],"max-block-size":[{"max-block":["none",...V()]}],w:[{w:[l,"screen",...F()]}],"min-w":[{"min-w":[l,"screen","none",...F()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...F()]}],h:[{h:["screen","lh",...F()]}],"min-h":[{"min-h":["screen","lh","none",...F()]}],"max-h":[{"max-h":["screen","lh",...F()]}],"font-size":[{text:["base",n,Ws,Pn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,a5,t5]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",zi,ve]}],"font-family":[{font:[r5,n5,t]}],"font-features":[{"font-features":[ve]}],"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":[Pe,"none",ye,pu]}],leading:[{leading:[i,...A()]}],"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:X()}],"text-color":[{text:X()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...fe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Pe,"from-font","auto",ye,Pn]}],"text-decoration-color":[{decoration:X()}],"underline-offset":[{"underline-offset":[Pe,"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:A()}],"tab-size":[{tab:[Bt,ye,ve]}],"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:H()}],"bg-repeat":[{bg:B()}],"bg-size":[{bg:ce()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Bt,ye,ve],radial:["",ye,ve],conic:[Bt,ye,ve]},i5,s5]}],"bg-color":[{bg:X()}],"gradient-from-pos":[{from:W()}],"gradient-via-pos":[{via:W()}],"gradient-to-pos":[{to:W()}],"gradient-from":[{from:X()}],"gradient-via":[{via:X()}],"gradient-to":[{to:X()}],rounded:[{rounded:Y()}],"rounded-s":[{"rounded-s":Y()}],"rounded-e":[{"rounded-e":Y()}],"rounded-t":[{"rounded-t":Y()}],"rounded-r":[{"rounded-r":Y()}],"rounded-b":[{"rounded-b":Y()}],"rounded-l":[{"rounded-l":Y()}],"rounded-ss":[{"rounded-ss":Y()}],"rounded-se":[{"rounded-se":Y()}],"rounded-ee":[{"rounded-ee":Y()}],"rounded-es":[{"rounded-es":Y()}],"rounded-tl":[{"rounded-tl":Y()}],"rounded-tr":[{"rounded-tr":Y()}],"rounded-br":[{"rounded-br":Y()}],"rounded-bl":[{"rounded-bl":Y()}],"border-w":[{border:_e()}],"border-w-x":[{"border-x":_e()}],"border-w-y":[{"border-y":_e()}],"border-w-s":[{"border-s":_e()}],"border-w-e":[{"border-e":_e()}],"border-w-bs":[{"border-bs":_e()}],"border-w-be":[{"border-be":_e()}],"border-w-t":[{"border-t":_e()}],"border-w-r":[{"border-r":_e()}],"border-w-b":[{"border-b":_e()}],"border-w-l":[{"border-l":_e()}],"divide-x":[{"divide-x":_e()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":_e()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...fe(),"hidden","none"]}],"divide-style":[{divide:[...fe(),"hidden","none"]}],"border-color":[{border:X()}],"border-color-x":[{"border-x":X()}],"border-color-y":[{"border-y":X()}],"border-color-s":[{"border-s":X()}],"border-color-e":[{"border-e":X()}],"border-color-bs":[{"border-bs":X()}],"border-color-be":[{"border-be":X()}],"border-color-t":[{"border-t":X()}],"border-color-r":[{"border-r":X()}],"border-color-b":[{"border-b":X()}],"border-color-l":[{"border-l":X()}],"divide-color":[{divide:X()}],"outline-style":[{outline:[...fe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Pe,ye,ve]}],"outline-w":[{outline:["",Pe,Ws,Pn]}],"outline-color":[{outline:X()}],shadow:[{shadow:["","none",f,Or,Pr]}],"shadow-color":[{shadow:X()}],"inset-shadow":[{"inset-shadow":["none",d,Or,Pr]}],"inset-shadow-color":[{"inset-shadow":X()}],"ring-w":[{ring:_e()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:X()}],"ring-offset-w":[{"ring-offset":[Pe,Pn]}],"ring-offset-color":[{"ring-offset":X()}],"inset-ring-w":[{"inset-ring":_e()}],"inset-ring-color":[{"inset-ring":X()}],"text-shadow":[{"text-shadow":["none",m,Or,Pr]}],"text-shadow-color":[{"text-shadow":X()}],opacity:[{opacity:[Pe,ye,ve]}],"mix-blend":[{"mix-blend":[...xe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":xe()}],"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":[Pe]}],"mask-image-linear-from-pos":[{"mask-linear-from":de()}],"mask-image-linear-to-pos":[{"mask-linear-to":de()}],"mask-image-linear-from-color":[{"mask-linear-from":X()}],"mask-image-linear-to-color":[{"mask-linear-to":X()}],"mask-image-t-from-pos":[{"mask-t-from":de()}],"mask-image-t-to-pos":[{"mask-t-to":de()}],"mask-image-t-from-color":[{"mask-t-from":X()}],"mask-image-t-to-color":[{"mask-t-to":X()}],"mask-image-r-from-pos":[{"mask-r-from":de()}],"mask-image-r-to-pos":[{"mask-r-to":de()}],"mask-image-r-from-color":[{"mask-r-from":X()}],"mask-image-r-to-color":[{"mask-r-to":X()}],"mask-image-b-from-pos":[{"mask-b-from":de()}],"mask-image-b-to-pos":[{"mask-b-to":de()}],"mask-image-b-from-color":[{"mask-b-from":X()}],"mask-image-b-to-color":[{"mask-b-to":X()}],"mask-image-l-from-pos":[{"mask-l-from":de()}],"mask-image-l-to-pos":[{"mask-l-to":de()}],"mask-image-l-from-color":[{"mask-l-from":X()}],"mask-image-l-to-color":[{"mask-l-to":X()}],"mask-image-x-from-pos":[{"mask-x-from":de()}],"mask-image-x-to-pos":[{"mask-x-to":de()}],"mask-image-x-from-color":[{"mask-x-from":X()}],"mask-image-x-to-color":[{"mask-x-to":X()}],"mask-image-y-from-pos":[{"mask-y-from":de()}],"mask-image-y-to-pos":[{"mask-y-to":de()}],"mask-image-y-from-color":[{"mask-y-from":X()}],"mask-image-y-to-color":[{"mask-y-to":X()}],"mask-image-radial":[{"mask-radial":[ye,ve]}],"mask-image-radial-from-pos":[{"mask-radial-from":de()}],"mask-image-radial-to-pos":[{"mask-radial-to":de()}],"mask-image-radial-from-color":[{"mask-radial-from":X()}],"mask-image-radial-to-color":[{"mask-radial-to":X()}],"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":[Pe]}],"mask-image-conic-from-pos":[{"mask-conic-from":de()}],"mask-image-conic-to-pos":[{"mask-conic-to":de()}],"mask-image-conic-from-color":[{"mask-conic-from":X()}],"mask-image-conic-to-color":[{"mask-conic-to":X()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:H()}],"mask-repeat":[{mask:B()}],"mask-size":[{mask:ce()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ye,ve]}],filter:[{filter:["","none",ye,ve]}],blur:[{blur:ge()}],brightness:[{brightness:[Pe,ye,ve]}],contrast:[{contrast:[Pe,ye,ve]}],"drop-shadow":[{"drop-shadow":["","none",h,Or,Pr]}],"drop-shadow-color":[{"drop-shadow":X()}],grayscale:[{grayscale:["",Pe,ye,ve]}],"hue-rotate":[{"hue-rotate":[Pe,ye,ve]}],invert:[{invert:["",Pe,ye,ve]}],saturate:[{saturate:[Pe,ye,ve]}],sepia:[{sepia:["",Pe,ye,ve]}],"backdrop-filter":[{"backdrop-filter":["","none",ye,ve]}],"backdrop-blur":[{"backdrop-blur":ge()}],"backdrop-brightness":[{"backdrop-brightness":[Pe,ye,ve]}],"backdrop-contrast":[{"backdrop-contrast":[Pe,ye,ve]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Pe,ye,ve]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Pe,ye,ve]}],"backdrop-invert":[{"backdrop-invert":["",Pe,ye,ve]}],"backdrop-opacity":[{"backdrop-opacity":[Pe,ye,ve]}],"backdrop-saturate":[{"backdrop-saturate":[Pe,ye,ve]}],"backdrop-sepia":[{"backdrop-sepia":["",Pe,ye,ve]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":A()}],"border-spacing-x":[{"border-spacing-x":A()}],"border-spacing-y":[{"border-spacing-y":A()}],"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:[Pe,"initial",ye,ve]}],ease:[{ease:["linear","initial",v,ye,ve]}],delay:[{delay:[Pe,ye,ve]}],animate:[{animate:["none",y,ye,ve]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,ye,ve]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:be()}],"rotate-x":[{"rotate-x":be()}],"rotate-y":[{"rotate-y":be()}],"rotate-z":[{"rotate-z":be()}],scale:[{scale:Ce()}],"scale-x":[{"scale-x":Ce()}],"scale-y":[{"scale-y":Ce()}],"scale-z":[{"scale-z":Ce()}],"scale-3d":["scale-3d"],skew:[{skew:Re()}],"skew-x":[{"skew-x":Re()}],"skew-y":[{"skew-y":Re()}],transform:[{transform:[ye,ve,"","none","gpu","cpu"]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:k()}],"translate-x":[{"translate-x":k()}],"translate-y":[{"translate-y":k()}],"translate-z":[{"translate-z":k()}],"translate-none":["translate-none"],zoom:[{zoom:[Bt,ye,ve]}],accent:[{accent:X()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:X()}],"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"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":X()}],"scrollbar-track-color":[{"scrollbar-track":X()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mbs":[{"scroll-mbs":A()}],"scroll-mbe":[{"scroll-mbe":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pbs":[{"scroll-pbs":A()}],"scroll-pbe":[{"scroll-pbe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"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",...X()]}],"stroke-w":[{stroke:[Pe,Ws,Pn,pu]}],stroke:[{stroke:["none",...X()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","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","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","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-bs","border-w-be","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-bs","border-color-be","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-mbs","scroll-mbe","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-pbs","scroll-pbe","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"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},u5=Uk(c5);function ae(...e){return u5(wp(e))}function Fe(e){return e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":(e/1e3).toFixed(1).replace(/\.0$/,"")+"K"}function Mp(e){return e>=1024*1024?(e/(1024*1024)).toFixed(1).replace(/\.0$/,"")+"M":(e/1024).toFixed(1).replace(/\.0$/,"")+"K"}function gu(e,t,n){const s=e*10;return!Number.isSafeInteger(s)||s%t!==0?null:(s/t/10).toFixed(1).replace(/\.0$/,"")+n}function d5(e){if(!Number.isSafeInteger(e)||e<=0)return e.toString();if(e>=1024*1024){const n=gu(e,1048576,"M");if(n!==null)return n}const t=gu(e,1024,"K");return t!==null?t:e.toString()}function f5(e){if(e===void 0||e==="")return 1;switch(e.toLowerCase()){case"k":return 1024;case"m":return 1024*1024;default:return null}}function So(e){const t=e.trim().replaceAll(",","");if(t==="")return null;const n=/^(\d+(?:\.\d+)?)\s*([kKmM])?$/.exec(t);if(n===null)return null;const s=n[1];if(s===void 0)return null;const o=Number(s),i=n[2],a=f5(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 p5(e){return e===null?"pending":e>=200&&e<300?"success":e>=400&&e<500?"client_error":e>=500?"server_error":"pending"}function Mr(){return C().refine(e=>{if(e.length===0)return!0;try{const t=new URL(e);return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}},"Must be a valid http(s) URL")}const h5=K({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()}),Co=K({id:C(),name:C(),apiKey:C(),model:C().optional(),models:pe(C()).optional().default([]),format:Ee(["anthropic","openai"]).optional(),baseUrl:Mr().optional(),anthropicBaseUrl:Mr().optional(),openaiBaseUrl:Mr().optional(),openaiResponsesBaseUrl:Mr().optional(),authHeader:Ee(["bearer","x-api-key"]).optional().default("bearer"),apiDocsUrl:C().optional(),modelMetadataUrl:C().optional(),modelMetadata:pe(h5).optional(),source:Ee(["company","personal"]).optional(),createdAt:C(),updatedAt:C()});async function m5(e){return ht(e,Co.array(),void 0,t=>`Failed to fetch ${e}: ${t.status}`)}function Bl(){const e=Zt("/api/providers?includeSecrets=1",m5,{revalidateOnFocus:!1,revalidateIfStale:!1});return{providers:e.data??[],isLoading:e.isLoading,isError:e.error,mutate:e.mutate}}function xu(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function g5(...e){return t=>{let n=!1;const s=e.map(o=>{const i=xu(o,t);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let o=0;o<s.length;o++){const i=s[o];typeof i=="function"?i():xu(e[o],null)}}}}function De(...e){return p.useCallback(g5(...e),e)}function Cs(e){const t=p.forwardRef((n,s)=>{let{children:o,...i}=n,a=null,l=!1;const c=[];bu(o)&&typeof Lr=="function"&&(o=Lr(o._payload)),p.Children.forEach(o,m=>{if(_5(m)){l=!0;const h=m;let b="child"in h.props?h.props.child:h.props.children;bu(b)&&typeof Lr=="function"&&(b=Lr(b._payload)),a=v5(h,b),c.push(a?.props?.children)}else c.push(m)}),a?a=p.cloneElement(a,void 0,c):!l&&p.Children.count(o)===1&&p.isValidElement(o)&&(a=o);const u=a?w5(a):void 0,f=De(s,u);if(!a){if(o||o===0)throw new Error(l?C5(e):S5(e));return o}const d=y5(i,a.props??{});return a.type!==p.Fragment&&(d.ref=s?f:u),p.cloneElement(a,d)});return t.displayName=`${e}.Slot`,t}var x5=Cs("Slot"),Lp=Symbol.for("radix.slottable");function b5(e){const t=n=>"child"in n?n.children(n.child):n.children;return t.displayName=`${e}.Slottable`,t.__radixId=Lp,t}var v5=(e,t)=>{if("child"in e.props){const n=e.props.child;return p.isValidElement(n)?p.cloneElement(n,void 0,e.props.children(n.props.children)):null}return p.isValidElement(t)?t:null};function y5(e,t){const n={...t};for(const s in t){const o=e[s],i=t[s];/^on[A-Z]/.test(s)?o&&i?n[s]=(...l)=>{const c=i(...l);return o(...l),c}:o&&(n[s]=o):s==="style"?n[s]={...o,...i}:s==="className"&&(n[s]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function w5(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)}function _5(e){return p.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Lp}var k5=Symbol.for("react.lazy");function bu(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===k5&&"_payload"in e&&j5(e._payload)}function j5(e){return typeof e=="object"&&e!==null&&"then"in e}var S5=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,C5=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Lr=Zo[" use ".trim().toString()],N5=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],ze=N5.reduce((e,t)=>{const n=Cs(`Primitive.${t}`),s=p.forwardRef((o,i)=>{const{asChild:a,...l}=o,c=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),r.jsx(c,{...l,ref:i})});return s.displayName=`Primitive.${t}`,{...e,[t]:s}},{});function T5(e,t){e&&Ms.flushSync(()=>e.dispatchEvent(t))}var Dp=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"}),E5="VisuallyHidden",$p=p.forwardRef((e,t)=>r.jsx(ze.span,{...e,ref:t,style:{...Dp,...e.style}}));$p.displayName=E5;var A5=$p;function dn(e,t=[]){let n=[];function s(i,a){const l=p.createContext(a);l.displayName=i+"Context";const c=n.length;n=[...n,a];const u=d=>{const{scope:m,children:h,...b}=d,g=m?.[e]?.[c]||l,x=p.useMemo(()=>b,Object.values(b));return r.jsx(g.Provider,{value:x,children:h})};u.displayName=i+"Provider";function f(d,m,h={}){const{optional:b=!1}=h,g=m?.[e]?.[c]||l,x=p.useContext(g);if(x)return x;if(a!==void 0)return a;if(!b)throw new Error(`\`${d}\` must be used within \`${i}\``)}return[u,f]}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,[s,I5(o,...t)]}function I5(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const s=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=s.reduce((l,{useScope:c,scopeName:u})=>{const d=c(i)[`__scope${u}`];return{...l,...d}},{});return p.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}function Fp(e){const t=e+"CollectionProvider",[n,s]=dn(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=g=>{const{scope:x,children:v}=g,y=p.useRef(null),_=p.useRef(new Map).current;return r.jsx(o,{scope:x,itemMap:_,collectionRef:y,children:v})};a.displayName=t;const l=e+"CollectionSlot",c=Cs(l),u=p.forwardRef((g,x)=>{const{scope:v,children:y}=g,_=i(l,v),j=De(x,_.collectionRef);return r.jsx(c,{ref:j,children:y})});u.displayName=l;const f=e+"CollectionItemSlot",d="data-radix-collection-item",m=Cs(f),h=p.forwardRef((g,x)=>{const{scope:v,children:y,..._}=g,j=p.useRef(null),S=De(x,j),N=i(f,v);return p.useEffect(()=>(N.itemMap.set(j,{ref:j,..._}),()=>{N.itemMap.delete(j)})),r.jsx(m,{[d]:"",ref:S,children:y})});h.displayName=f;function b(g){const x=i(e+"CollectionConsumer",g);return p.useCallback(()=>{const y=x.collectionRef.current;if(!y)return[];const _=Array.from(y.querySelectorAll(`[${d}]`));return Array.from(x.itemMap.values()).sort((N,T)=>_.indexOf(N.ref.current)-_.indexOf(T.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:a,Slot:u,ItemSlot:h},b,s]}function Te(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e?.(o),n===!1||!o||!o.defaultPrevented)return t?.(o)}}var Xe=globalThis?.document?p.useLayoutEffect:()=>{},R5=Zo[" useInsertionEffect ".trim().toString()]||Xe;function Bn({prop:e,defaultProp:t,onChange:n=()=>{},caller:s}){const[o,i,a]=z5({defaultProp:t,onChange:n}),l=e!==void 0,c=l?e:o;{const f=p.useRef(e!==void 0);p.useEffect(()=>{const d=f.current;d!==l&&console.warn(`${s} is changing from ${d?"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.`),f.current=l},[l,s])}const u=p.useCallback(f=>{if(l){const d=P5(f)?f(e):f;d!==e&&a.current?.(d)}else i(f)},[l,e,i,a]);return[c,u]}function z5({defaultProp:e,onChange:t}){const[n,s]=p.useState(e),o=p.useRef(n),i=p.useRef(t);return R5(()=>{i.current=t},[t]),p.useEffect(()=>{o.current!==n&&(i.current?.(n),o.current=n)},[n,o]),[n,s,i]}function P5(e){return typeof e=="function"}function O5(e,t){return p.useReducer((n,s)=>t[n][s]??n,e)}var jt=e=>{const{present:t,children:n}=e,s=M5(t),o=typeof n=="function"?n({present:s.isPresent}):p.Children.only(n),i=L5(s.ref,D5(o));return typeof n=="function"||s.isPresent?p.cloneElement(o,{ref:i}):null};jt.displayName="Presence";function M5(e){const[t,n]=p.useState(),s=p.useRef(null),o=p.useRef(e),i=p.useRef("none"),a=p.useRef(void 0),l=e?"mounted":"unmounted",[c,u]=O5(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return p.useEffect(()=>{c==="mounted"?(i.current=a.current??Hs(s.current),a.current=void 0):i.current="none"},[c]),Xe(()=>{const f=s.current,d=o.current;if(d!==e){const h=i.current,b=Hs(f);e?(a.current=b,u("MOUNT")):b==="none"||f?.display==="none"?u("UNMOUNT"):u(d&&h!==b?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,u]),Xe(()=>{if(t){let f;const d=t.ownerDocument.defaultView??window,m=b=>{const x=Hs(s.current).includes(CSS.escape(b.animationName));if(b.target===t&&x&&(u("ANIMATION_END"),!o.current)){const v=t.style.animationFillMode;t.style.animationFillMode="forwards",f=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},h=b=>{b.target===t&&(i.current=Hs(s.current))};return t.addEventListener("animationstart",h),t.addEventListener("animationcancel",m),t.addEventListener("animationend",m),()=>{d.clearTimeout(f),t.removeEventListener("animationstart",h),t.removeEventListener("animationcancel",m),t.removeEventListener("animationend",m)}}else u("ANIMATION_END")},[t,u]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:p.useCallback(f=>{if(f){const d=getComputedStyle(f);s.current=d,a.current=Hs(d)}else s.current=null;n(f)},[])}}function vu(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function L5(...e){const t=p.useRef(e);return t.current=e,p.useCallback(n=>{const s=t.current;let o=!1;const i=s.map(a=>{const l=vu(a,n);return!o&&typeof l=="function"&&(o=!0),l});if(o)return()=>{for(let a=0;a<i.length;a++){const l=i[a];typeof l=="function"?l():vu(s[a],null)}}},[])}function Hs(e){return e?.animationName||"none"}function D5(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 $5=Zo[" useId ".trim().toString()]||(()=>{}),F5=0;function qt(e){const[t,n]=p.useState($5());return Xe(()=>{n(s=>s??String(F5++))},[e]),t?`radix-${t}`:""}var ei="Collapsible",[U5]=dn(ei),[B5,Wl]=U5(ei),Up=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:s,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[c,u]=Bn({prop:s,defaultProp:o??!1,onChange:a,caller:ei});return r.jsx(B5,{scope:n,disabled:i,contentId:qt(),open:c,onOpenToggle:p.useCallback(()=>u(f=>!f),[u]),children:r.jsx(ze.div,{"data-state":Vl(c),"data-disabled":i?"":void 0,...l,ref:t})})});Up.displayName=ei;var Bp="CollapsibleTrigger",Wp=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,...s}=e,o=Wl(Bp,n);return r.jsx(ze.button,{type:"button","aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open||!1,"data-state":Vl(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...s,ref:t,onClick:Te(e.onClick,o.onOpenToggle)})});Wp.displayName=Bp;var Hl="CollapsibleContent",Hp=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Wl(Hl,e.__scopeCollapsible);return r.jsx(jt,{present:n||o.open,children:({present:i})=>r.jsx(W5,{...s,ref:t,present:i})})});Hp.displayName=Hl;var W5=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:s,children:o,...i}=e,a=Wl(Hl,n),[l,c]=p.useState(s),u=p.useRef(null),f=De(t,u),d=p.useRef(0),m=d.current,h=p.useRef(0),b=h.current,g=a.open||l,x=p.useRef(g),v=p.useRef(void 0);return p.useEffect(()=>{const y=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(y)},[]),Xe(()=>{const y=u.current;if(y){v.current=v.current||{transitionDuration:y.style.transitionDuration,animationName:y.style.animationName},y.style.transitionDuration="0s",y.style.animationName="none";const _=y.getBoundingClientRect();d.current=_.height,h.current=_.width,x.current||(y.style.transitionDuration=v.current.transitionDuration,y.style.animationName=v.current.animationName),c(s)}},[a.open,s]),r.jsx(ze.div,{"data-state":Vl(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g,...i,ref:f,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":b?`${b}px`:void 0,...e.style},children:g&&o})});function Vl(e){return e?"open":"closed"}var H5=Up,V5=p.createContext(void 0);function ti(e){const t=p.useContext(V5);return e||t||"ltr"}function nt(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>((...n)=>t.current?.(...n)),[])}var Z5="DismissableLayer",Ta="dismissableLayer.update",q5="dismissableLayer.pointerDownOutside",G5="dismissableLayer.focusOutside",yu,Zl=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),ni=p.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:s=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:l,onDismiss:c,...u}=e,f=p.useContext(Zl),[d,m]=p.useState(null),h=d?.ownerDocument??globalThis?.document,[,b]=p.useState({}),g=De(t,m),x=Array.from(f.layers),[v]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=v?x.indexOf(v):-1,_=d?x.indexOf(d):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,S=_>=y,N=p.useRef(!1),T=Q5(L=>{i?.(L),l?.(L),L.defaultPrevented||c?.()},{ownerDocument:h,deferPointerDownOutside:s,isDeferredPointerDownOutsideRef:N,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:p.useCallback(L=>{if(!(L instanceof Node))return!1;const E=[...f.branches].some(D=>D.contains(L));return S&&!E},[f.branches,S])}),A=ej(L=>{if(s&&N.current)return;const E=L.target;[...f.branches].some(w=>w.contains(E))||(a?.(L),l?.(L),L.defaultPrevented||c?.())},h),I=d?_===x.length-1:!1,P=nt(L=>{L.key==="Escape"&&(o?.(L),!L.defaultPrevented&&c&&(L.preventDefault(),c()))});return p.useEffect(()=>{if(I)return h.addEventListener("keydown",P,{capture:!0}),()=>h.removeEventListener("keydown",P,{capture:!0})},[h,I,P]),p.useEffect(()=>{if(d)return n&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(yu=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(d)),f.layers.add(d),wu(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(d),f.layersWithOutsidePointerEventsDisabled.size===0&&(h.body.style.pointerEvents=yu))}},[d,h,n,f]),p.useEffect(()=>()=>{d&&(f.layers.delete(d),f.layersWithOutsidePointerEventsDisabled.delete(d),wu())},[d,f]),p.useEffect(()=>{const L=()=>b({});return document.addEventListener(Ta,L),()=>document.removeEventListener(Ta,L)},[]),r.jsx(ze.div,{...u,ref:g,style:{pointerEvents:j?S?"auto":"none":void 0,...e.style},onFocusCapture:Te(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Te(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Te(e.onPointerDownCapture,T.onPointerDownCapture)})});ni.displayName=Z5;var K5="DismissableLayerBranch",J5=p.forwardRef((e,t)=>{const n=p.useContext(Zl),s=p.useRef(null),o=De(t,s);return p.useEffect(()=>{const i=s.current;if(i)return n.branches.add(i),()=>{n.branches.delete(i)}},[n.branches]),r.jsx(ze.div,{...e,ref:o})});J5.displayName=K5;function Y5(){const e=p.useContext(Zl),[t,n]=p.useState(null);return p.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}var X5=()=>!0;function Q5(e,t){const{ownerDocument:n=globalThis?.document,deferPointerDownOutside:s=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:i,shouldHandlePointerDownOutside:a=X5}=t,l=nt(e),c=p.useRef(!1),u=p.useRef(!1),f=p.useRef(new Map),d=p.useRef(()=>{});return p.useEffect(()=>{function m(){u.current=!1,o.current=!1,f.current.clear()}function h(){return Array.from(f.current.values()).some(Boolean)}function b(_){if(!u.current)return;const j=_.target;j instanceof Node&&[...i].some(N=>N.contains(j))||f.current.set(_.type,!0),_.type==="click"&&window.setTimeout(()=>{u.current&&d.current()},0)}function g(_){u.current&&f.current.set(_.type,!1)}const x=_=>{if(_.target&&!c.current){let j=function(){n.removeEventListener("click",d.current);const N=h();m(),N||Vp(q5,l,S,{discrete:!0})};if(!a(_.target)){n.removeEventListener("click",d.current),m(),c.current=!1;return}const S={originalEvent:_};u.current=!0,o.current=s&&_.button===0,f.current.clear(),!s||_.button!==0?j():(n.removeEventListener("click",d.current),d.current=j,n.addEventListener("click",d.current,{once:!0}))}else n.removeEventListener("click",d.current),m();c.current=!1},v=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const _ of v)n.addEventListener(_,b,!0),n.addEventListener(_,g);const y=window.setTimeout(()=>{n.addEventListener("pointerdown",x)},0);return()=>{window.clearTimeout(y),n.removeEventListener("pointerdown",x),n.removeEventListener("click",d.current);for(const _ of v)n.removeEventListener(_,b,!0),n.removeEventListener(_,g)}},[n,l,s,o,i,a]),{onPointerDownCapture:()=>c.current=!0}}function ej(e,t=globalThis?.document){const n=nt(e),s=p.useRef(!1);return p.useEffect(()=>{const o=i=>{i.target&&!s.current&&Vp(G5,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>s.current=!0,onBlurCapture:()=>s.current=!1}}function wu(){const e=new CustomEvent(Ta);document.dispatchEvent(e)}function Vp(e,t,n,{discrete:s}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),s?T5(o,i):o.dispatchEvent(i)}var Pi="focusScope.autoFocusOnMount",Oi="focusScope.autoFocusOnUnmount",_u={bubbles:!1,cancelable:!0},tj="FocusScope",ql=p.forwardRef((e,t)=>{const{loop:n=!1,trapped:s=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,c]=p.useState(null),u=nt(o),f=nt(i),d=p.useRef(null),m=De(t,c),h=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(s){let g=function(_){if(h.paused||!l)return;const j=_.target;l.contains(j)?d.current=j:xn(d.current,{select:!0})},x=function(_){if(h.paused||!l)return;const j=_.relatedTarget;j!==null&&(l.contains(j)||xn(d.current,{select:!0}))},v=function(_){if(document.activeElement===document.body)for(const S of _)S.removedNodes.length>0&&xn(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",x);const y=new MutationObserver(v);return l&&y.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",x),y.disconnect()}}},[s,l,h.paused]),p.useEffect(()=>{if(l){ju.add(h);const g=document.activeElement;if(!l.contains(g)){const v=new CustomEvent(Pi,_u);l.addEventListener(Pi,u),l.dispatchEvent(v),v.defaultPrevented||(nj(aj(Zp(l)),{select:!0}),document.activeElement===g&&xn(l))}return()=>{l.removeEventListener(Pi,u),setTimeout(()=>{const v=new CustomEvent(Oi,_u);l.addEventListener(Oi,f),l.dispatchEvent(v),v.defaultPrevented||xn(g??document.body,{select:!0}),l.removeEventListener(Oi,f),ju.remove(h)},0)}}},[l,u,f,h]);const b=p.useCallback(g=>{if(!n&&!s||h.paused)return;const x=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,v=document.activeElement;if(x&&v){const y=g.currentTarget,[_,j]=sj(y);_&&j?!g.shiftKey&&v===j?(g.preventDefault(),n&&xn(_,{select:!0})):g.shiftKey&&v===_&&(g.preventDefault(),n&&xn(j,{select:!0})):v===y&&g.preventDefault()}},[n,s,h.paused]);return r.jsx(ze.div,{tabIndex:-1,...a,ref:m,onKeyDown:b})});ql.displayName=tj;function nj(e,{select:t=!1}={}){const n=document.activeElement;for(const s of e)if(xn(s,{select:t}),document.activeElement!==n)return}function sj(e){const t=Zp(e),n=ku(t,e),s=ku(t.reverse(),e);return[n,s]}function Zp(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:s=>{const o=s.tagName==="INPUT"&&s.type==="hidden";return s.disabled||s.hidden||o?NodeFilter.FILTER_SKIP:s.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function ku(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const s of e)if(!(n?!s.checkVisibility({checkVisibilityCSS:!0}):rj(s,{upTo:t})))return s}function rj(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 oj(e){return e instanceof HTMLInputElement&&"select"in e}function xn(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&oj(e)&&t&&e.select()}}var ju=ij();function ij(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=Su(e,t),e.unshift(t)},remove(t){e=Su(e,t),e[0]?.resume()}}}function Su(e,t){const n=[...e],s=n.indexOf(t);return s!==-1&&n.splice(s,1),n}function aj(e){return e.filter(t=>t.tagName!=="A")}var lj="Portal",si=p.forwardRef((e,t)=>{const{container:n,...s}=e,[o,i]=p.useState(!1);Xe(()=>i(!0),[]);const a=n||o&&globalThis?.document?.body;return a?Ms.createPortal(r.jsx(ze.div,{...s,ref:t}),a):null});si.displayName=lj;var Dr=0,ss=null;function qp(){p.useEffect(()=>{ss||(ss={start:Cu(),end:Cu()});const{start:e,end:t}=ss;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),Dr++,()=>{Dr===1&&(ss?.start.remove(),ss?.end.remove(),ss=null),Dr=Math.max(0,Dr-1)}},[])}function Cu(){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 Ht=function(){return Ht=Object.assign||function(t){for(var n,s=1,o=arguments.length;s<o;s++){n=arguments[s];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Ht.apply(this,arguments)};function Gp(e,t){var n={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(n[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,s=Object.getOwnPropertySymbols(e);o<s.length;o++)t.indexOf(s[o])<0&&Object.prototype.propertyIsEnumerable.call(e,s[o])&&(n[s[o]]=e[s[o]]);return n}function cj(e,t,n){if(n||arguments.length===2)for(var s=0,o=t.length,i;s<o;s++)(i||!(s in t))&&(i||(i=Array.prototype.slice.call(t,0,s)),i[s]=t[s]);return e.concat(i||Array.prototype.slice.call(t))}var ao="right-scroll-bar-position",lo="width-before-scroll-bar",uj="with-scroll-bars-hidden",dj="--removed-body-scroll-bar-size";function Mi(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function fj(e,t){var n=p.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(s){var o=n.value;o!==s&&(n.value=s,n.callback(s,o))}}}})[0];return n.callback=t,n.facade}var pj=typeof window<"u"?p.useLayoutEffect:p.useEffect,Nu=new WeakMap;function hj(e,t){var n=fj(null,function(s){return e.forEach(function(o){return Mi(o,s)})});return pj(function(){var s=Nu.get(n);if(s){var o=new Set(s),i=new Set(e),a=n.current;o.forEach(function(l){i.has(l)||Mi(l,null)}),i.forEach(function(l){o.has(l)||Mi(l,a)})}Nu.set(n,e)},[e]),n}function mj(e){return e}function gj(e,t){t===void 0&&(t=mj);var n=[],s=!1,o={read:function(){if(s)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,s);return n.push(a),function(){n=n.filter(function(l){return l!==a})}},assignSyncMedium:function(i){for(s=!0;n.length;){var a=n;n=[],a.forEach(i)}n={push:function(l){return i(l)},filter:function(){return n}}},assignMedium:function(i){s=!0;var a=[];if(n.length){var l=n;n=[],l.forEach(i),a=n}var c=function(){var f=a;a=[],f.forEach(i)},u=function(){return Promise.resolve().then(c)};u(),n={push:function(f){a.push(f),u()},filter:function(f){return a=a.filter(f),n}}}};return o}function xj(e){e===void 0&&(e={});var t=gj(null);return t.options=Ht({async:!0,ssr:!1},e),t}var Kp=function(e){var t=e.sideCar,n=Gp(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var s=t.read();if(!s)throw new Error("Sidecar medium not found");return p.createElement(s,Ht({},n))};Kp.isSideCarExport=!0;function bj(e,t){return e.useMedium(t),Kp}var Jp=xj(),Li=function(){},ri=p.forwardRef(function(e,t){var n=p.useRef(null),s=p.useState({onScrollCapture:Li,onWheelCapture:Li,onTouchMoveCapture:Li}),o=s[0],i=s[1],a=e.forwardProps,l=e.children,c=e.className,u=e.removeScrollBar,f=e.enabled,d=e.shards,m=e.sideCar,h=e.noRelative,b=e.noIsolation,g=e.inert,x=e.allowPinchZoom,v=e.as,y=v===void 0?"div":v,_=e.gapMode,j=Gp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=m,N=hj([n,t]),T=Ht(Ht({},j),o);return p.createElement(p.Fragment,null,f&&p.createElement(S,{sideCar:Jp,removeScrollBar:u,shards:d,noRelative:h,noIsolation:b,inert:g,setCallbacks:i,allowPinchZoom:!!x,lockRef:n,gapMode:_}),a?p.cloneElement(p.Children.only(l),Ht(Ht({},T),{ref:N})):p.createElement(y,Ht({},T,{className:c,ref:N}),l))});ri.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};ri.classNames={fullWidth:lo,zeroRight:ao};var vj=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function yj(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=vj();return t&&e.setAttribute("nonce",t),e}function wj(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _j(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var kj=function(){var e=0,t=null;return{add:function(n){e==0&&(t=yj())&&(wj(t,n),_j(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},jj=function(){var e=kj();return function(t,n){p.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Yp=function(){var e=jj(),t=function(n){var s=n.styles,o=n.dynamic;return e(s,o),null};return t},Sj={left:0,top:0,right:0,gap:0},Di=function(e){return parseInt(e||"",10)||0},Cj=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],s=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Di(n),Di(s),Di(o)]},Nj=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Sj;var t=Cj(e),n=document.documentElement.clientWidth,s=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,s-n+t[2]-t[0])}},Tj=Yp(),bs="data-scroll-locked",Ej=function(e,t,n,s){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),`
|
|
66
|
+
\0`,W+=i(H,2),W+=N.magic,W+=i(_,2),W+=i(j,2),W+=i(X.crc32,4),W+=i(X.compressedSize,4),W+=i(X.uncompressedSize,4),W+=i(A.length,2),W+=i($.length,2),{fileRecord:d.LOCAL_FILE_HEADER+W+A+$,dirRecord:d.CENTRAL_FILE_HEADER+i(ce,2)+W+i(L.length,2)+"\0\0\0\0"+i(B,4)+i(x,4)+A+$+L}}var l=n("../utils"),c=n("../stream/GenericWorker"),u=n("../utf8"),f=n("../crc32"),d=n("../signature");function m(h,b,g,x){c.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,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 b=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?(b+100*(g-x-1))/g:100}}))},m.prototype.openedSource=function(h){this.currentSourceOffset=this.bytesWritten,this.currentFile=h.file.name;var b=this.streamFiles&&!h.file.dir;if(b){var g=a(h,b,!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 b=this.streamFiles&&!h.file.dir,g=a(h,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(g.dirRecord),b)this.push({data:(function(x){return d.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,b=0;b<this.dirRecords.length;b++)this.push({data:this.dirRecords[b],meta:{percent:100}});var g=this.bytesWritten-h,x=(function(v,y,_,j,S){var N=l.transformTo("string",S(j));return d.CENTRAL_DIRECTORY_END+"\0\0\0\0"+i(v,2)+i(v,2)+i(y,4)+i(_,4)+i(N.length,2)+N})(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 b=this;return h.on("data",function(g){b.processChunk(g)}),h.on("end",function(){b.closedSource(b.previous.streamInfo),b._sources.length?b.prepareNextSource():b.end()}),h.on("error",function(g){b.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 b=this._sources;if(!c.prototype.error.call(this,h))return!1;for(var g=0;g<b.length;g++)try{b[g].error(h)}catch{}return!0},m.prototype.lock=function(){c.prototype.lock.call(this);for(var h=this._sources,b=0;b<h.length;b++)h[b].lock()},s.exports=m},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(n,s,o){var i=n("../compressions"),a=n("./ZipFileWorker");o.generateWorker=function(l,c,u){var f=new a(c.streamFiles,u,c.platform,c.encodeFileName),d=0;try{l.forEach(function(m,h){d++;var b=(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,v=h.date;h._compressWorker(b,g).withStreamInfo("file",{name:m,dir:x,date:v,comment:h.comment||"",unixPermissions:h.unixPermissions,dosPermissions:h.dosPermissions}).pipe(f)}),f.entriesCount=d}catch(m){f.error(m)}return f}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(n,s,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"),s.exports=i},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(n,s,o){var i=n("./utils"),a=n("./external"),l=n("./utf8"),c=n("./zipEntries"),u=n("./stream/Crc32Probe"),f=n("./nodejsUtils");function d(m){return new a.Promise(function(h,b){var g=m.decompressed.getContentWorker().pipe(new u);g.on("error",function(x){b(x)}).on("end",function(){g.streamInfo.crc32!==m.decompressed.crc32?b(new Error("Corrupted zip : CRC32 mismatch")):h()}).resume()})}s.exports=function(m,h){var b=this;return h=i.extend(h||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:l.utf8decode}),f.isNode&&f.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)],v=g.files;if(h.checkCRC32)for(var y=0;y<v.length;y++)x.push(d(v[y]));return a.Promise.all(x)}).then(function(g){for(var x=g.shift(),v=x.files,y=0;y<v.length;y++){var _=v[y],j=_.fileNameStr,S=i.resolve(_.fileNameStr);b.file(S,_.decompressed,{binary:!0,optimizedBinaryString:!0,date:_.date,dir:_.dir,comment:_.fileCommentStr.length?_.fileCommentStr:null,unixPermissions:_.unixPermissions,dosPermissions:_.dosPermissions,createFolders:h.createFolders}),_.dir||(b.file(S).unsafeOriginalName=j)}return x.zipComment.length&&(b.comment=x.zipComment),b})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(n,s,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(f){u.push({data:f,meta:{percent:0}})}).on("error",function(f){u.isPaused?this.generatedError=f:u.error(f)}).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)},s.exports=l},{"../stream/GenericWorker":28,"../utils":32}],13:[function(n,s,o){var i=n("readable-stream").Readable;function a(l,c,u){i.call(this,c),this._helper=l;var f=this;l.on("data",function(d,m){f.push(d)||f._helper.pause(),u&&u(m)}).on("error",function(d){f.emit("error",d)}).on("end",function(){f.push(null)})}n("../utils").inherits(a,i),a.prototype._read=function(){this._helper.resume()},s.exports=a},{"../utils":32,"readable-stream":16}],14:[function(n,s,o){s.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,s,o){function i(S,N,T){var A,I=l.getTypeOf(N),P=l.extend(T||{},f);P.date=P.date||new Date,P.compression!==null&&(P.compression=P.compression.toUpperCase()),typeof P.unixPermissions=="string"&&(P.unixPermissions=parseInt(P.unixPermissions,8)),P.unixPermissions&&16384&P.unixPermissions&&(P.dir=!0),P.dosPermissions&&16&P.dosPermissions&&(P.dir=!0),P.dir&&(S=v(S)),P.createFolders&&(A=x(S))&&y.call(this,A,!0);var L=I==="string"&&P.binary===!1&&P.base64===!1;T&&T.binary!==void 0||(P.binary=!L),(N instanceof d&&N.uncompressedSize===0||P.dir||!N||N.length===0)&&(P.base64=!1,P.binary=!0,N="",P.compression="STORE",I="string");var E=null;E=N instanceof d||N instanceof c?N:b.isNode&&b.isStream(N)?new g(S,N):l.prepareContent(S,N,P.binary,P.optimizedBinaryString,P.base64);var D=new m(S,E,P);this.files[S]=D}var a=n("./utf8"),l=n("./utils"),c=n("./stream/GenericWorker"),u=n("./stream/StreamHelper"),f=n("./defaults"),d=n("./compressedObject"),m=n("./zipObject"),h=n("./generate"),b=n("./nodejsUtils"),g=n("./nodejs/NodejsStreamInputAdapter"),x=function(S){S.slice(-1)==="/"&&(S=S.substring(0,S.length-1));var N=S.lastIndexOf("/");return 0<N?S.substring(0,N):""},v=function(S){return S.slice(-1)!=="/"&&(S+="/"),S},y=function(S,N){return N=N!==void 0?N:f.createFolders,S=v(S),this.files[S]||i.call(this,S,null,{dir:!0,createFolders:N}),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 N,T,A;for(N in this.files)A=this.files[N],(T=N.slice(this.root.length,N.length))&&N.slice(0,this.root.length)===this.root&&S(T,A)},filter:function(S){var N=[];return this.forEach(function(T,A){S(T,A)&&N.push(A)}),N},file:function(S,N,T){if(arguments.length!==1)return S=this.root+S,i.call(this,S,N,T),this;if(_(S)){var A=S;return this.filter(function(P,L){return!L.dir&&A.test(P)})}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,P){return P.dir&&S.test(I)});var N=this.root+S,T=y.call(this,N),A=this.clone();return A.root=T.name,A},remove:function(S){S=this.root+S;var N=this.files[S];if(N||(S.slice(-1)!=="/"&&(S+="/"),N=this.files[S]),N&&!N.dir)delete this.files[S];else for(var T=this.filter(function(I,P){return P.name.slice(0,S.length)===S}),A=0;A<T.length;A++)delete this.files[T[A].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 N,T={};try{if((T=l.extend(S||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:a.utf8encode})).type=T.type.toLowerCase(),T.compression=T.compression.toUpperCase(),T.type==="binarystring"&&(T.type="string"),!T.type)throw new Error("No output type specified.");l.checkSupport(T.type),T.platform!=="darwin"&&T.platform!=="freebsd"&&T.platform!=="linux"&&T.platform!=="sunos"||(T.platform="UNIX"),T.platform==="win32"&&(T.platform="DOS");var A=T.comment||this.comment||"";N=h.generateWorker(this,T,A)}catch(I){(N=new c("error")).error(I)}return new u(N,T.type||"string",T.mimeType)},generateAsync:function(S,N){return this.generateInternalStream(S).accumulate(N)},generateNodeStream:function(S,N){return(S=S||{}).type||(S.type="nodebuffer"),this.generateInternalStream(S).toNodejsStream(N)}};s.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,s,o){s.exports=n("stream")},{stream:void 0}],17:[function(n,s,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),f=l.charCodeAt(2),d=l.charCodeAt(3),m=this.length-4;0<=m;--m)if(this.data[m]===c&&this.data[m+1]===u&&this.data[m+2]===f&&this.data[m+3]===d)return m-this.zero;return-1},a.prototype.readAndCheckSignature=function(l){var c=l.charCodeAt(0),u=l.charCodeAt(1),f=l.charCodeAt(2),d=l.charCodeAt(3),m=this.readData(4);return c===m[0]&&u===m[1]&&f===m[2]&&d===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},s.exports=a},{"../utils":32,"./DataReader":18}],18:[function(n,s,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))}},s.exports=a},{"../utils":32}],19:[function(n,s,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},s.exports=a},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(n,s,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},s.exports=a},{"../utils":32,"./DataReader":18}],21:[function(n,s,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},s.exports=a},{"../utils":32,"./ArrayReader":17}],22:[function(n,s,o){var i=n("../utils"),a=n("../support"),l=n("./ArrayReader"),c=n("./StringReader"),u=n("./NodeBufferReader"),f=n("./Uint8ArrayReader");s.exports=function(d){var m=i.getTypeOf(d);return i.checkSupport(m),m!=="string"||a.uint8array?m==="nodebuffer"?new u(d):a.uint8array?new f(i.transformTo("uint8array",d)):new l(i.transformTo("array",d)):new c(d)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(n,s,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,s,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})},s.exports=l},{"../utils":32,"./GenericWorker":28}],25:[function(n,s,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)},s.exports=l},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(n,s,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)},s.exports=l},{"../utils":32,"./GenericWorker":28}],27:[function(n,s,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(f){u.dataIsReady=!0,u.data=f,u.max=f&&f.length||0,u.type=i.getTypeOf(f),u.isPaused||u._tickAndRepeat()},function(f){u.error(f)})}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}})},s.exports=l},{"../utils":32,"./GenericWorker":28}],28:[function(n,s,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}},s.exports=i},{}],29:[function(n,s,o){var i=n("../utils"),a=n("./ConvertWorker"),l=n("./GenericWorker"),c=n("../base64"),u=n("../support"),f=n("../external"),d=null;if(u.nodestream)try{d=n("../nodejs/NodejsStreamOutputAdapter")}catch{}function m(b,g){return new f.Promise(function(x,v){var y=[],_=b._internalType,j=b._outputType,S=b._mimeType;b.on("data",function(N,T){y.push(N),g&&g(T)}).on("error",function(N){y=[],v(N)}).on("end",function(){try{var N=(function(T,A,I){switch(T){case"blob":return i.newBlob(i.transformTo("arraybuffer",A),I);case"base64":return c.encode(A);default:return i.transformTo(T,A)}})(j,(function(T,A){var I,P=0,L=null,E=0;for(I=0;I<A.length;I++)E+=A[I].length;switch(T){case"string":return A.join("");case"array":return Array.prototype.concat.apply([],A);case"uint8array":for(L=new Uint8Array(E),I=0;I<A.length;I++)L.set(A[I],P),P+=A[I].length;return L;case"nodebuffer":return Buffer.concat(A);default:throw new Error("concat : unsupported type '"+T+"'")}})(_,y),S);x(N)}catch(T){v(T)}y=[]}).resume()})}function h(b,g,x){var v=g;switch(g){case"blob":case"arraybuffer":v="uint8array";break;case"base64":v="string"}try{this._internalType=v,this._outputType=g,this._mimeType=x,i.checkSupport(v),this._worker=b.pipe(new a(v)),b.lock()}catch(y){this._worker=new l("error"),this._worker.error(y)}}h.prototype={accumulate:function(b){return m(this,b)},on:function(b,g){var x=this;return b==="data"?this._worker.on(b,function(v){g.call(x,v.data,v.meta)}):this._worker.on(b,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(b){if(i.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new d(this,{objectMode:this._outputType!=="nodebuffer"},b)}},s.exports=h},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(n,s,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,s,o){for(var i=n("./utils"),a=n("./support"),l=n("./nodejsUtils"),c=n("./stream/GenericWorker"),u=new Array(256),f=0;f<256;f++)u[f]=252<=f?6:248<=f?5:240<=f?4:224<=f?3:192<=f?2:1;u[254]=u[254]=1;function d(){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(b){var g,x,v,y,_,j=b.length,S=0;for(y=0;y<j;y++)(64512&(x=b.charCodeAt(y)))==55296&&y+1<j&&(64512&(v=b.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(v-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=b.charCodeAt(y)))==55296&&y+1<j&&(64512&(v=b.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(v-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(b){var g,x,v,y,_=b.length,j=new Array(2*_);for(g=x=0;g<_;)if((v=b[g++])<128)j[x++]=v;else if(4<(y=u[v]))j[x++]=65533,g+=y-1;else{for(v&=y===2?31:y===3?15:7;1<y&&g<_;)v=v<<6|63&b[g++],y--;1<y?j[x++]=65533:v<65536?j[x++]=v:(v-=65536,j[x++]=55296|v>>10&1023,j[x++]=56320|1023&v)}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(d,c),d.prototype.processChunk=function(h){var b=i.transformTo(a.uint8array?"uint8array":"array",h.data);if(this.leftOver&&this.leftOver.length){if(a.uint8array){var g=b;(b=new Uint8Array(g.length+this.leftOver.length)).set(this.leftOver,0),b.set(g,this.leftOver.length)}else b=this.leftOver.concat(b);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:_})(b),v=b;x!==b.length&&(a.uint8array?(v=b.subarray(0,x),this.leftOver=b.subarray(x,b.length)):(v=b.slice(0,x),this.leftOver=b.slice(x,b.length))),this.push({data:o.utf8decode(v),meta:h.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=d,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,s,o){var i=n("./support"),a=n("./base64"),l=n("./nodejsUtils"),c=n("./external");function u(g){return g}function f(g,x){for(var v=0;v<g.length;++v)x[v]=255&g.charCodeAt(v);return x}n("setimmediate"),o.newBlob=function(g,x){o.checkSupport("blob");try{return new Blob([g],{type:x})}catch{try{var v=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return v.append(g),v.getBlob(x)}catch{throw new Error("Bug : can't construct the Blob.")}}};var d={stringifyByChunk:function(g,x,v){var y=[],_=0,j=g.length;if(j<=v)return String.fromCharCode.apply(null,g);for(;_<j;)x==="array"||x==="nodebuffer"?y.push(String.fromCharCode.apply(null,g.slice(_,Math.min(_+v,j)))):y.push(String.fromCharCode.apply(null,g.subarray(_,Math.min(_+v,j)))),_+=v;return y.join("")},stringifyByChar:function(g){for(var x="",v=0;v<g.length;v++)x+=String.fromCharCode(g[v]);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,v=o.getTypeOf(g),y=!0;if(v==="uint8array"?y=d.applyCanBeUsed.uint8array:v==="nodebuffer"&&(y=d.applyCanBeUsed.nodebuffer),y)for(;1<x;)try{return d.stringifyByChunk(g,v,x)}catch{x=Math.floor(x/2)}return d.stringifyByChar(g)}function h(g,x){for(var v=0;v<g.length;v++)x[v]=g[v];return x}o.applyFromCharCode=m;var b={};b.string={string:u,array:function(g){return f(g,new Array(g.length))},arraybuffer:function(g){return b.string.uint8array(g).buffer},uint8array:function(g){return f(g,new Uint8Array(g.length))},nodebuffer:function(g){return f(g,l.allocBuffer(g.length))}},b.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)}},b.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))}},b.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)}},b.nodebuffer={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return b.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 v=o.getTypeOf(x);return b[v][g](x)},o.resolve=function(g){for(var x=g.split("/"),v=[],y=0;y<x.length;y++){var _=x[y];_==="."||_===""&&y!==0&&y!==x.length-1||(_===".."?v.pop():v.push(_))}return v.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,v,y="";for(v=0;v<(g||"").length;v++)y+="\\x"+((x=g.charCodeAt(v))<16?"0":"")+x.toString(16).toUpperCase();return y},o.delay=function(g,x,v){setImmediate(function(){g.apply(v||null,x||[])})},o.inherits=function(g,x){function v(){}v.prototype=x.prototype,g.prototype=new v},o.extend=function(){var g,x,v={};for(g=0;g<arguments.length;g++)for(x in arguments[g])Object.prototype.hasOwnProperty.call(arguments[g],x)&&v[x]===void 0&&(v[x]=arguments[g][x]);return v},o.prepareContent=function(g,x,v,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,N){var T=new FileReader;T.onload=function(A){S(A.target.result)},T.onerror=function(A){N(A.target.error)},T.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):v&&y!==!0&&(j=(function(N){return f(N,i.uint8array?new Uint8Array(N.length):new Array(N.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,s,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./signature"),c=n("./zipEntry"),u=n("./support");function f(d){this.files=[],this.loadOptions=d}f.prototype={checkSignature:function(d){if(!this.reader.readAndCheckSignature(d)){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(d)+")")}},isSignature:function(d,m){var h=this.reader.index;this.reader.setIndex(d);var b=this.reader.readString(4)===m;return this.reader.setIndex(h),b},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 d=this.reader.readData(this.zipCommentLength),m=u.uint8array?"uint8array":"array",h=a.transformTo(m,d);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 d,m,h,b=this.zip64EndOfCentralSize-44;0<b;)d=this.reader.readInt(2),m=this.reader.readInt(4),h=this.reader.readData(m),this.zip64ExtensibleData[d]={id:d,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 d,m;for(d=0;d<this.files.length;d++)m=this.files[d],this.reader.setIndex(m.localHeaderOffset),this.checkSignature(l.LOCAL_FILE_HEADER),m.readLocalPart(this.reader),m.handleUTF8(),m.processAttributes()},readCentralDir:function(){var d;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(l.CENTRAL_FILE_HEADER);)(d=new c({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(d);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 d=this.reader.lastIndexOfSignature(l.CENTRAL_DIRECTORY_END);if(d<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(d);var m=d;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,(d=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(d),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 b=m-h;if(0<b)this.isSignature(m,l.CENTRAL_FILE_HEADER)||(this.reader.zero=b);else if(b<0)throw new Error("Corrupted zip: missing "+Math.abs(b)+" bytes.")},prepareReader:function(d){this.reader=i(d)},load:function(d){this.prepareReader(d),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},s.exports=f},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(n,s,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./compressedObject"),c=n("./crc32"),u=n("./utf8"),f=n("./compressions"),d=n("./support");function m(h,b){this.options=h,this.loadOptions=b}m.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(h){var b,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((b=(function(x){for(var v in f)if(Object.prototype.hasOwnProperty.call(f,v)&&f[v].magic===x)return f[v];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,b,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 b=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(b),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 b,g,x,v=h.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});h.index+4<v;)b=h.readInt(2),g=h.readInt(2),x=h.readData(g),this.extraFields[b]={id:b,length:g,value:x};h.setIndex(v)},handleUTF8:function(){var h=d.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=u.utf8decode(this.fileName),this.fileCommentStr=u.utf8decode(this.fileComment);else{var b=this.findExtraFieldUnicodePath();if(b!==null)this.fileNameStr=b;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 v=a.transformTo(h,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(v)}}},findExtraFieldUnicodePath:function(){var h=this.extraFields[28789];if(h){var b=i(h.value);return b.readInt(1)!==1||c(this.fileName)!==b.readInt(4)?null:u.utf8decode(b.readData(h.length-5))}return null},findExtraFieldUnicodeComment:function(){var h=this.extraFields[25461];if(h){var b=i(h.value);return b.readInt(1)!==1||c(this.fileComment)!==b.readInt(4)?null:u.utf8decode(b.readData(h.length-5))}return null}},s.exports=m},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(n,s,o){function i(b,g,x){this.name=b,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"),f=n("./stream/GenericWorker");i.prototype={internalStream:function(b){var g=null,x="string";try{if(!b)throw new Error("No output type specified.");var v=(x=b.toLowerCase())==="string"||x==="text";x!=="binarystring"&&x!=="text"||(x="string"),g=this._decompressWorker();var y=!this._dataBinary;y&&!v&&(g=g.pipe(new c.Utf8EncodeWorker)),!y&&v&&(g=g.pipe(new c.Utf8DecodeWorker))}catch(_){(g=new f("error")).error(_)}return new a(g,x,"")},async:function(b,g){return this.internalStream(b).accumulate(g)},nodeStream:function(b,g){return this.internalStream(b||"nodebuffer").toNodejsStream(g)},_compressWorker:function(b,g){if(this._data instanceof u&&this._data.compression.magic===b.magic)return this._data.getCompressedWorker();var x=this._decompressWorker();return this._dataBinary||(x=x.pipe(new c.Utf8EncodeWorker)),u.createWorkerFrom(x,b,g)},_decompressWorker:function(){return this._data instanceof u?this._data.getContentWorker():this._data instanceof f?this._data:new l(this._data)}};for(var d=["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<d.length;h++)i.prototype[d[h]]=m;s.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(n,s,o){(function(i){var a,l,c=i.MutationObserver||i.WebKitMutationObserver;if(c){var u=0,f=new c(b),d=i.document.createTextNode("");f.observe(d,{characterData:!0}),a=function(){d.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(){b(),g.onreadystatechange=null,g.parentNode.removeChild(g),g=null},i.document.documentElement.appendChild(g)}:function(){setTimeout(b,0)};else{var m=new i.MessageChannel;m.port1.onmessage=b,a=function(){m.port2.postMessage(0)}}var h=[];function b(){var g,x;l=!0;for(var v=h.length;v;){for(x=h,h=[],g=-1;++g<v;)x[g]();v=h.length}l=!1}s.exports=function(g){h.push(g)!==1||l||a()}}).call(this,typeof Cr<"u"?Cr:typeof self<"u"?self:typeof window<"u"?window:{})},{}],37:[function(n,s,o){var i=n("immediate");function a(){}var l={},c=["REJECTED"],u=["FULFILLED"],f=["PENDING"];function d(v){if(typeof v!="function")throw new TypeError("resolver must be a function");this.state=f,this.queue=[],this.outcome=void 0,v!==a&&g(this,v)}function m(v,y,_){this.promise=v,typeof y=="function"&&(this.onFulfilled=y,this.callFulfilled=this.otherCallFulfilled),typeof _=="function"&&(this.onRejected=_,this.callRejected=this.otherCallRejected)}function h(v,y,_){i(function(){var j;try{j=y(_)}catch(S){return l.reject(v,S)}j===v?l.reject(v,new TypeError("Cannot resolve promise with itself")):l.resolve(v,j)})}function b(v){var y=v&&v.then;if(v&&(typeof v=="object"||typeof v=="function")&&typeof y=="function")return function(){y.apply(v,arguments)}}function g(v,y){var _=!1;function j(T){_||(_=!0,l.reject(v,T))}function S(T){_||(_=!0,l.resolve(v,T))}var N=x(function(){y(S,j)});N.status==="error"&&j(N.value)}function x(v,y){var _={};try{_.value=v(y),_.status="success"}catch(j){_.status="error",_.value=j}return _}(s.exports=d).prototype.finally=function(v){if(typeof v!="function")return this;var y=this.constructor;return this.then(function(_){return y.resolve(v()).then(function(){return _})},function(_){return y.resolve(v()).then(function(){throw _})})},d.prototype.catch=function(v){return this.then(null,v)},d.prototype.then=function(v,y){if(typeof v!="function"&&this.state===u||typeof y!="function"&&this.state===c)return this;var _=new this.constructor(a);return this.state!==f?h(_,this.state===u?v:y,this.outcome):this.queue.push(new m(_,v,y)),_},m.prototype.callFulfilled=function(v){l.resolve(this.promise,v)},m.prototype.otherCallFulfilled=function(v){h(this.promise,this.onFulfilled,v)},m.prototype.callRejected=function(v){l.reject(this.promise,v)},m.prototype.otherCallRejected=function(v){h(this.promise,this.onRejected,v)},l.resolve=function(v,y){var _=x(b,y);if(_.status==="error")return l.reject(v,_.value);var j=_.value;if(j)g(v,j);else{v.state=u,v.outcome=y;for(var S=-1,N=v.queue.length;++S<N;)v.queue[S].callFulfilled(y)}return v},l.reject=function(v,y){v.state=c,v.outcome=y;for(var _=-1,j=v.queue.length;++_<j;)v.queue[_].callRejected(y);return v},d.resolve=function(v){return v instanceof this?v:l.resolve(new this(a),v)},d.reject=function(v){var y=new this(a);return l.reject(y,v)},d.all=function(v){var y=this;if(Object.prototype.toString.call(v)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=v.length,j=!1;if(!_)return this.resolve([]);for(var S=new Array(_),N=0,T=-1,A=new this(a);++T<_;)I(v[T],T);return A;function I(P,L){y.resolve(P).then(function(E){S[L]=E,++N!==_||j||(j=!0,l.resolve(A,S))},function(E){j||(j=!0,l.reject(A,E))})}},d.race=function(v){var y=this;if(Object.prototype.toString.call(v)!=="[object Array]")return this.reject(new TypeError("must be an array"));var _=v.length,j=!1;if(!_)return this.resolve([]);for(var S=-1,N=new this(a);++S<_;)T=v[S],y.resolve(T).then(function(A){j||(j=!0,l.resolve(N,A))},function(A){j||(j=!0,l.reject(N,A))});var T;return N}},{immediate:36}],38:[function(n,s,o){var i={};(0,n("./lib/utils/common").assign)(i,n("./lib/deflate"),n("./lib/inflate"),n("./lib/zlib/constants")),s.exports=i},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(n,s,o){var i=n("./zlib/deflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/messages"),u=n("./zlib/zstream"),f=Object.prototype.toString,d=0,m=-1,h=0,b=8;function g(v){if(!(this instanceof g))return new g(v);this.options=a.assign({level:m,method:b,chunkSize:16384,windowBits:15,memLevel:8,strategy:h,to:""},v||{});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(_!==d)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):f.call(y.dictionary)==="[object ArrayBuffer]"?new Uint8Array(y.dictionary):y.dictionary,(_=i.deflateSetDictionary(this.strm,j))!==d)throw new Error(c[_]);this._dict_set=!0}}function x(v,y){var _=new g(y);if(_.push(v,!0),_.err)throw _.msg||c[_.err];return _.result}g.prototype.push=function(v,y){var _,j,S=this.strm,N=this.options.chunkSize;if(this.ended)return!1;j=y===~~y?y:y===!0?4:0,typeof v=="string"?S.input=l.string2buf(v):f.call(v)==="[object ArrayBuffer]"?S.input=new Uint8Array(v):S.input=v,S.next_in=0,S.avail_in=S.input.length;do{if(S.avail_out===0&&(S.output=new a.Buf8(N),S.next_out=0,S.avail_out=N),(_=i.deflate(S,j))!==1&&_!==d)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,_===d):j!==2||(this.onEnd(d),!(S.avail_out=0))},g.prototype.onData=function(v){this.chunks.push(v)},g.prototype.onEnd=function(v){v===d&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=v,this.msg=this.strm.msg},o.Deflate=g,o.deflate=x,o.deflateRaw=function(v,y){return(y=y||{}).raw=!0,x(v,y)},o.gzip=function(v,y){return(y=y||{}).gzip=!0,x(v,y)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(n,s,o){var i=n("./zlib/inflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/constants"),u=n("./zlib/messages"),f=n("./zlib/zstream"),d=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 f,this.strm.avail_out=0;var v=i.inflateInit2(this.strm,x.windowBits);if(v!==c.Z_OK)throw new Error(u[v]);this.header=new d,i.inflateGetHeader(this.strm,this.header)}function b(g,x){var v=new h(x);if(v.push(g,!0),v.err)throw v.msg||u[v.err];return v.result}h.prototype.push=function(g,x){var v,y,_,j,S,N,T=this.strm,A=this.options.chunkSize,I=this.options.dictionary,P=!1;if(this.ended)return!1;y=x===~~x?x:x===!0?c.Z_FINISH:c.Z_NO_FLUSH,typeof g=="string"?T.input=l.binstring2buf(g):m.call(g)==="[object ArrayBuffer]"?T.input=new Uint8Array(g):T.input=g,T.next_in=0,T.avail_in=T.input.length;do{if(T.avail_out===0&&(T.output=new a.Buf8(A),T.next_out=0,T.avail_out=A),(v=i.inflate(T,c.Z_NO_FLUSH))===c.Z_NEED_DICT&&I&&(N=typeof I=="string"?l.string2buf(I):m.call(I)==="[object ArrayBuffer]"?new Uint8Array(I):I,v=i.inflateSetDictionary(this.strm,N)),v===c.Z_BUF_ERROR&&P===!0&&(v=c.Z_OK,P=!1),v!==c.Z_STREAM_END&&v!==c.Z_OK)return this.onEnd(v),!(this.ended=!0);T.next_out&&(T.avail_out!==0&&v!==c.Z_STREAM_END&&(T.avail_in!==0||y!==c.Z_FINISH&&y!==c.Z_SYNC_FLUSH)||(this.options.to==="string"?(_=l.utf8border(T.output,T.next_out),j=T.next_out-_,S=l.buf2string(T.output,_),T.next_out=j,T.avail_out=A-j,j&&a.arraySet(T.output,T.output,_,j,0),this.onData(S)):this.onData(a.shrinkBuf(T.output,T.next_out)))),T.avail_in===0&&T.avail_out===0&&(P=!0)}while((0<T.avail_in||T.avail_out===0)&&v!==c.Z_STREAM_END);return v===c.Z_STREAM_END&&(y=c.Z_FINISH),y===c.Z_FINISH?(v=i.inflateEnd(this.strm),this.onEnd(v),this.ended=!0,v===c.Z_OK):y!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),!(T.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=b,o.inflateRaw=function(g,x){return(x=x||{}).raw=!0,b(g,x)},o.ungzip=b},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(n,s,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 f=u.shift();if(f){if(typeof f!="object")throw new TypeError(f+"must be non-object");for(var d in f)f.hasOwnProperty(d)&&(c[d]=f[d])}}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,f,d,m){if(u.subarray&&c.subarray)c.set(u.subarray(f,f+d),m);else for(var h=0;h<d;h++)c[m+h]=u[f+h]},flattenChunks:function(c){var u,f,d,m,h,b;for(u=d=0,f=c.length;u<f;u++)d+=c[u].length;for(b=new Uint8Array(d),u=m=0,f=c.length;u<f;u++)h=c[u],b.set(h,m),m+=h.length;return b}},l={arraySet:function(c,u,f,d,m){for(var h=0;h<d;h++)c[m+h]=u[f+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,s,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 f(d,m){if(m<65537&&(d.subarray&&l||!d.subarray&&a))return String.fromCharCode.apply(null,i.shrinkBuf(d,m));for(var h="",b=0;b<m;b++)h+=String.fromCharCode(d[b]);return h}c[254]=c[254]=1,o.string2buf=function(d){var m,h,b,g,x,v=d.length,y=0;for(g=0;g<v;g++)(64512&(h=d.charCodeAt(g)))==55296&&g+1<v&&(64512&(b=d.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(b-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=d.charCodeAt(g)))==55296&&g+1<v&&(64512&(b=d.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(b-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(d){return f(d,d.length)},o.binstring2buf=function(d){for(var m=new i.Buf8(d.length),h=0,b=m.length;h<b;h++)m[h]=d.charCodeAt(h);return m},o.buf2string=function(d,m){var h,b,g,x,v=m||d.length,y=new Array(2*v);for(h=b=0;h<v;)if((g=d[h++])<128)y[b++]=g;else if(4<(x=c[g]))y[b++]=65533,h+=x-1;else{for(g&=x===2?31:x===3?15:7;1<x&&h<v;)g=g<<6|63&d[h++],x--;1<x?y[b++]=65533:g<65536?y[b++]=g:(g-=65536,y[b++]=55296|g>>10&1023,y[b++]=56320|1023&g)}return f(y,b)},o.utf8border=function(d,m){var h;for((m=m||d.length)>d.length&&(m=d.length),h=m-1;0<=h&&(192&d[h])==128;)h--;return h<0||h===0?m:h+c[d[h]]>m?h:m}},{"./common":41}],43:[function(n,s,o){s.exports=function(i,a,l,c){for(var u=65535&i|0,f=i>>>16&65535|0,d=0;l!==0;){for(l-=d=2e3<l?2e3:l;f=f+(u=u+a[c++]|0)|0,--d;);u%=65521,f%=65521}return u|f<<16|0}},{}],44:[function(n,s,o){s.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,s,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})();s.exports=function(a,l,c,u){var f=i,d=u+c;a^=-1;for(var m=u;m<d;m++)a=a>>>8^f[255&(a^l[m])];return-1^a}},{}],46:[function(n,s,o){var i,a=n("../utils/common"),l=n("./trees"),c=n("./adler32"),u=n("./crc32"),f=n("./messages"),d=0,m=4,h=0,b=-2,g=-1,x=4,v=2,y=8,_=9,j=286,S=30,N=19,T=2*j+1,A=15,I=3,P=258,L=P+I+1,E=42,D=113,w=1,$=2,ee=3,F=4;function te(k,Q){return k.msg=f[Q],Q}function V(k){return(k<<1)-(4<k?9:0)}function X(k){for(var Q=k.length;0<=--Q;)k[Q]=0}function H(k){var Q=k.state,q=Q.pending;q>k.avail_out&&(q=k.avail_out),q!==0&&(a.arraySet(k.output,Q.pending_buf,Q.pending_out,q,k.next_out),k.next_out+=q,Q.pending_out+=q,k.total_out+=q,k.avail_out-=q,Q.pending-=q,Q.pending===0&&(Q.pending_out=0))}function B(k,Q){l._tr_flush_block(k,0<=k.block_start?k.block_start:-1,k.strstart-k.block_start,Q),k.block_start=k.strstart,H(k.strm)}function ce(k,Q){k.pending_buf[k.pending++]=Q}function W(k,Q){k.pending_buf[k.pending++]=Q>>>8&255,k.pending_buf[k.pending++]=255&Q}function Y(k,Q){var q,O,R=k.max_chain_length,U=k.strstart,re=k.prev_length,se=k.nice_match,Z=k.strstart>k.w_size-L?k.strstart-(k.w_size-L):0,le=k.window,z=k.w_mask,M=k.prev,J=k.strstart+P,oe=le[U+re-1],ie=le[U+re];k.prev_length>=k.good_match&&(R>>=2),se>k.lookahead&&(se=k.lookahead);do if(le[(q=Q)+re]===ie&&le[q+re-1]===oe&&le[q]===le[U]&&le[++q]===le[U+1]){U+=2,q++;do;while(le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&le[++U]===le[++q]&&U<J);if(O=P-(J-U),U=J-P,re<O){if(k.match_start=Q,se<=(re=O))break;oe=le[U+re-1],ie=le[U+re]}}while((Q=M[Q&z])>Z&&--R!=0);return re<=k.lookahead?re:k.lookahead}function _e(k){var Q,q,O,R,U,re,se,Z,le,z,M=k.w_size;do{if(R=k.window_size-k.lookahead-k.strstart,k.strstart>=M+(M-L)){for(a.arraySet(k.window,k.window,M,M,0),k.match_start-=M,k.strstart-=M,k.block_start-=M,Q=q=k.hash_size;O=k.head[--Q],k.head[Q]=M<=O?O-M:0,--q;);for(Q=q=M;O=k.prev[--Q],k.prev[Q]=M<=O?O-M:0,--q;);R+=M}if(k.strm.avail_in===0)break;if(re=k.strm,se=k.window,Z=k.strstart+k.lookahead,le=R,z=void 0,z=re.avail_in,le<z&&(z=le),q=z===0?0:(re.avail_in-=z,a.arraySet(se,re.input,re.next_in,z,Z),re.state.wrap===1?re.adler=c(re.adler,se,z,Z):re.state.wrap===2&&(re.adler=u(re.adler,se,z,Z)),re.next_in+=z,re.total_in+=z,z),k.lookahead+=q,k.lookahead+k.insert>=I)for(U=k.strstart-k.insert,k.ins_h=k.window[U],k.ins_h=(k.ins_h<<k.hash_shift^k.window[U+1])&k.hash_mask;k.insert&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[U+I-1])&k.hash_mask,k.prev[U&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=U,U++,k.insert--,!(k.lookahead+k.insert<I)););}while(k.lookahead<L&&k.strm.avail_in!==0)}function fe(k,Q){for(var q,O;;){if(k.lookahead<L){if(_e(k),k.lookahead<L&&Q===d)return w;if(k.lookahead===0)break}if(q=0,k.lookahead>=I&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),q!==0&&k.strstart-q<=k.w_size-L&&(k.match_length=Y(k,q)),k.match_length>=I)if(O=l._tr_tally(k,k.strstart-k.match_start,k.match_length-I),k.lookahead-=k.match_length,k.match_length<=k.max_lazy_match&&k.lookahead>=I){for(k.match_length--;k.strstart++,k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart,--k.match_length!=0;);k.strstart++}else k.strstart+=k.match_length,k.match_length=0,k.ins_h=k.window[k.strstart],k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+1])&k.hash_mask;else O=l._tr_tally(k,0,k.window[k.strstart]),k.lookahead--,k.strstart++;if(O&&(B(k,!1),k.strm.avail_out===0))return w}return k.insert=k.strstart<I-1?k.strstart:I-1,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):k.last_lit&&(B(k,!1),k.strm.avail_out===0)?w:$}function xe(k,Q){for(var q,O,R;;){if(k.lookahead<L){if(_e(k),k.lookahead<L&&Q===d)return w;if(k.lookahead===0)break}if(q=0,k.lookahead>=I&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),k.prev_length=k.match_length,k.prev_match=k.match_start,k.match_length=I-1,q!==0&&k.prev_length<k.max_lazy_match&&k.strstart-q<=k.w_size-L&&(k.match_length=Y(k,q),k.match_length<=5&&(k.strategy===1||k.match_length===I&&4096<k.strstart-k.match_start)&&(k.match_length=I-1)),k.prev_length>=I&&k.match_length<=k.prev_length){for(R=k.strstart+k.lookahead-I,O=l._tr_tally(k,k.strstart-1-k.prev_match,k.prev_length-I),k.lookahead-=k.prev_length-1,k.prev_length-=2;++k.strstart<=R&&(k.ins_h=(k.ins_h<<k.hash_shift^k.window[k.strstart+I-1])&k.hash_mask,q=k.prev[k.strstart&k.w_mask]=k.head[k.ins_h],k.head[k.ins_h]=k.strstart),--k.prev_length!=0;);if(k.match_available=0,k.match_length=I-1,k.strstart++,O&&(B(k,!1),k.strm.avail_out===0))return w}else if(k.match_available){if((O=l._tr_tally(k,0,k.window[k.strstart-1]))&&B(k,!1),k.strstart++,k.lookahead--,k.strm.avail_out===0)return w}else k.match_available=1,k.strstart++,k.lookahead--}return k.match_available&&(O=l._tr_tally(k,0,k.window[k.strstart-1]),k.match_available=0),k.insert=k.strstart<I-1?k.strstart:I-1,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):k.last_lit&&(B(k,!1),k.strm.avail_out===0)?w:$}function de(k,Q,q,O,R){this.good_length=k,this.max_lazy=Q,this.nice_length=q,this.max_chain=O,this.func=R}function ge(){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*T),this.dyn_dtree=new a.Buf16(2*(2*S+1)),this.bl_tree=new a.Buf16(2*(2*N+1)),X(this.dyn_ltree),X(this.dyn_dtree),X(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new a.Buf16(A+1),this.heap=new a.Buf16(2*j+1),X(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new a.Buf16(2*j+1),X(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 be(k){var Q;return k&&k.state?(k.total_in=k.total_out=0,k.data_type=v,(Q=k.state).pending=0,Q.pending_out=0,Q.wrap<0&&(Q.wrap=-Q.wrap),Q.status=Q.wrap?E:D,k.adler=Q.wrap===2?0:1,Q.last_flush=d,l._tr_init(Q),h):te(k,b)}function Ce(k){var Q=be(k);return Q===h&&(function(q){q.window_size=2*q.w_size,X(q.head),q.max_lazy_match=i[q.level].max_lazy,q.good_match=i[q.level].good_length,q.nice_match=i[q.level].nice_length,q.max_chain_length=i[q.level].max_chain,q.strstart=0,q.block_start=0,q.lookahead=0,q.insert=0,q.match_length=q.prev_length=I-1,q.match_available=0,q.ins_h=0})(k.state),Q}function Re(k,Q,q,O,R,U){if(!k)return b;var re=1;if(Q===g&&(Q=6),O<0?(re=0,O=-O):15<O&&(re=2,O-=16),R<1||_<R||q!==y||O<8||15<O||Q<0||9<Q||U<0||x<U)return te(k,b);O===8&&(O=9);var se=new ge;return(k.state=se).strm=k,se.wrap=re,se.gzhead=null,se.w_bits=O,se.w_size=1<<se.w_bits,se.w_mask=se.w_size-1,se.hash_bits=R+7,se.hash_size=1<<se.hash_bits,se.hash_mask=se.hash_size-1,se.hash_shift=~~((se.hash_bits+I-1)/I),se.window=new a.Buf8(2*se.w_size),se.head=new a.Buf16(se.hash_size),se.prev=new a.Buf16(se.w_size),se.lit_bufsize=1<<R+6,se.pending_buf_size=4*se.lit_bufsize,se.pending_buf=new a.Buf8(se.pending_buf_size),se.d_buf=1*se.lit_bufsize,se.l_buf=3*se.lit_bufsize,se.level=Q,se.strategy=U,se.method=q,Ce(k)}i=[new de(0,0,0,0,function(k,Q){var q=65535;for(q>k.pending_buf_size-5&&(q=k.pending_buf_size-5);;){if(k.lookahead<=1){if(_e(k),k.lookahead===0&&Q===d)return w;if(k.lookahead===0)break}k.strstart+=k.lookahead,k.lookahead=0;var O=k.block_start+q;if((k.strstart===0||k.strstart>=O)&&(k.lookahead=k.strstart-O,k.strstart=O,B(k,!1),k.strm.avail_out===0)||k.strstart-k.block_start>=k.w_size-L&&(B(k,!1),k.strm.avail_out===0))return w}return k.insert=0,Q===m?(B(k,!0),k.strm.avail_out===0?ee:F):(k.strstart>k.block_start&&(B(k,!1),k.strm.avail_out),w)}),new de(4,4,8,4,fe),new de(4,5,16,8,fe),new de(4,6,32,32,fe),new de(4,4,16,16,xe),new de(8,16,32,32,xe),new de(8,16,128,128,xe),new de(8,32,128,256,xe),new de(32,128,258,1024,xe),new de(32,258,258,4096,xe)],o.deflateInit=function(k,Q){return Re(k,Q,y,15,8,0)},o.deflateInit2=Re,o.deflateReset=Ce,o.deflateResetKeep=be,o.deflateSetHeader=function(k,Q){return k&&k.state?k.state.wrap!==2?b:(k.state.gzhead=Q,h):b},o.deflate=function(k,Q){var q,O,R,U;if(!k||!k.state||5<Q||Q<0)return k?te(k,b):b;if(O=k.state,!k.output||!k.input&&k.avail_in!==0||O.status===666&&Q!==m)return te(k,k.avail_out===0?-5:b);if(O.strm=k,q=O.last_flush,O.last_flush=Q,O.status===E)if(O.wrap===2)k.adler=0,ce(O,31),ce(O,139),ce(O,8),O.gzhead?(ce(O,(O.gzhead.text?1:0)+(O.gzhead.hcrc?2:0)+(O.gzhead.extra?4:0)+(O.gzhead.name?8:0)+(O.gzhead.comment?16:0)),ce(O,255&O.gzhead.time),ce(O,O.gzhead.time>>8&255),ce(O,O.gzhead.time>>16&255),ce(O,O.gzhead.time>>24&255),ce(O,O.level===9?2:2<=O.strategy||O.level<2?4:0),ce(O,255&O.gzhead.os),O.gzhead.extra&&O.gzhead.extra.length&&(ce(O,255&O.gzhead.extra.length),ce(O,O.gzhead.extra.length>>8&255)),O.gzhead.hcrc&&(k.adler=u(k.adler,O.pending_buf,O.pending,0)),O.gzindex=0,O.status=69):(ce(O,0),ce(O,0),ce(O,0),ce(O,0),ce(O,0),ce(O,O.level===9?2:2<=O.strategy||O.level<2?4:0),ce(O,3),O.status=D);else{var re=y+(O.w_bits-8<<4)<<8;re|=(2<=O.strategy||O.level<2?0:O.level<6?1:O.level===6?2:3)<<6,O.strstart!==0&&(re|=32),re+=31-re%31,O.status=D,W(O,re),O.strstart!==0&&(W(O,k.adler>>>16),W(O,65535&k.adler)),k.adler=1}if(O.status===69)if(O.gzhead.extra){for(R=O.pending;O.gzindex<(65535&O.gzhead.extra.length)&&(O.pending!==O.pending_buf_size||(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending!==O.pending_buf_size));)ce(O,255&O.gzhead.extra[O.gzindex]),O.gzindex++;O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),O.gzindex===O.gzhead.extra.length&&(O.gzindex=0,O.status=73)}else O.status=73;if(O.status===73)if(O.gzhead.name){R=O.pending;do{if(O.pending===O.pending_buf_size&&(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending===O.pending_buf_size)){U=1;break}U=O.gzindex<O.gzhead.name.length?255&O.gzhead.name.charCodeAt(O.gzindex++):0,ce(O,U)}while(U!==0);O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),U===0&&(O.gzindex=0,O.status=91)}else O.status=91;if(O.status===91)if(O.gzhead.comment){R=O.pending;do{if(O.pending===O.pending_buf_size&&(O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),H(k),R=O.pending,O.pending===O.pending_buf_size)){U=1;break}U=O.gzindex<O.gzhead.comment.length?255&O.gzhead.comment.charCodeAt(O.gzindex++):0,ce(O,U)}while(U!==0);O.gzhead.hcrc&&O.pending>R&&(k.adler=u(k.adler,O.pending_buf,O.pending-R,R)),U===0&&(O.status=103)}else O.status=103;if(O.status===103&&(O.gzhead.hcrc?(O.pending+2>O.pending_buf_size&&H(k),O.pending+2<=O.pending_buf_size&&(ce(O,255&k.adler),ce(O,k.adler>>8&255),k.adler=0,O.status=D)):O.status=D),O.pending!==0){if(H(k),k.avail_out===0)return O.last_flush=-1,h}else if(k.avail_in===0&&V(Q)<=V(q)&&Q!==m)return te(k,-5);if(O.status===666&&k.avail_in!==0)return te(k,-5);if(k.avail_in!==0||O.lookahead!==0||Q!==d&&O.status!==666){var se=O.strategy===2?(function(Z,le){for(var z;;){if(Z.lookahead===0&&(_e(Z),Z.lookahead===0)){if(le===d)return w;break}if(Z.match_length=0,z=l._tr_tally(Z,0,Z.window[Z.strstart]),Z.lookahead--,Z.strstart++,z&&(B(Z,!1),Z.strm.avail_out===0))return w}return Z.insert=0,le===m?(B(Z,!0),Z.strm.avail_out===0?ee:F):Z.last_lit&&(B(Z,!1),Z.strm.avail_out===0)?w:$})(O,Q):O.strategy===3?(function(Z,le){for(var z,M,J,oe,ie=Z.window;;){if(Z.lookahead<=P){if(_e(Z),Z.lookahead<=P&&le===d)return w;if(Z.lookahead===0)break}if(Z.match_length=0,Z.lookahead>=I&&0<Z.strstart&&(M=ie[J=Z.strstart-1])===ie[++J]&&M===ie[++J]&&M===ie[++J]){oe=Z.strstart+P;do;while(M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&M===ie[++J]&&J<oe);Z.match_length=P-(oe-J),Z.match_length>Z.lookahead&&(Z.match_length=Z.lookahead)}if(Z.match_length>=I?(z=l._tr_tally(Z,1,Z.match_length-I),Z.lookahead-=Z.match_length,Z.strstart+=Z.match_length,Z.match_length=0):(z=l._tr_tally(Z,0,Z.window[Z.strstart]),Z.lookahead--,Z.strstart++),z&&(B(Z,!1),Z.strm.avail_out===0))return w}return Z.insert=0,le===m?(B(Z,!0),Z.strm.avail_out===0?ee:F):Z.last_lit&&(B(Z,!1),Z.strm.avail_out===0)?w:$})(O,Q):i[O.level].func(O,Q);if(se!==ee&&se!==F||(O.status=666),se===w||se===ee)return k.avail_out===0&&(O.last_flush=-1),h;if(se===$&&(Q===1?l._tr_align(O):Q!==5&&(l._tr_stored_block(O,0,0,!1),Q===3&&(X(O.head),O.lookahead===0&&(O.strstart=0,O.block_start=0,O.insert=0))),H(k),k.avail_out===0))return O.last_flush=-1,h}return Q!==m?h:O.wrap<=0?1:(O.wrap===2?(ce(O,255&k.adler),ce(O,k.adler>>8&255),ce(O,k.adler>>16&255),ce(O,k.adler>>24&255),ce(O,255&k.total_in),ce(O,k.total_in>>8&255),ce(O,k.total_in>>16&255),ce(O,k.total_in>>24&255)):(W(O,k.adler>>>16),W(O,65535&k.adler)),H(k),0<O.wrap&&(O.wrap=-O.wrap),O.pending!==0?h:1)},o.deflateEnd=function(k){var Q;return k&&k.state?(Q=k.state.status)!==E&&Q!==69&&Q!==73&&Q!==91&&Q!==103&&Q!==D&&Q!==666?te(k,b):(k.state=null,Q===D?te(k,-3):h):b},o.deflateSetDictionary=function(k,Q){var q,O,R,U,re,se,Z,le,z=Q.length;if(!k||!k.state||(U=(q=k.state).wrap)===2||U===1&&q.status!==E||q.lookahead)return b;for(U===1&&(k.adler=c(k.adler,Q,z,0)),q.wrap=0,z>=q.w_size&&(U===0&&(X(q.head),q.strstart=0,q.block_start=0,q.insert=0),le=new a.Buf8(q.w_size),a.arraySet(le,Q,z-q.w_size,q.w_size,0),Q=le,z=q.w_size),re=k.avail_in,se=k.next_in,Z=k.input,k.avail_in=z,k.next_in=0,k.input=Q,_e(q);q.lookahead>=I;){for(O=q.strstart,R=q.lookahead-(I-1);q.ins_h=(q.ins_h<<q.hash_shift^q.window[O+I-1])&q.hash_mask,q.prev[O&q.w_mask]=q.head[q.ins_h],q.head[q.ins_h]=O,O++,--R;);q.strstart=O,q.lookahead=I-1,_e(q)}return q.strstart+=q.lookahead,q.block_start=q.strstart,q.insert=q.lookahead,q.lookahead=0,q.match_length=q.prev_length=I-1,q.match_available=0,k.next_in=se,k.input=Z,k.avail_in=re,q.wrap=U,h},o.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(n,s,o){s.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,s,o){s.exports=function(i,a){var l,c,u,f,d,m,h,b,g,x,v,y,_,j,S,N,T,A,I,P,L,E,D,w,$;l=i.state,c=i.next_in,w=i.input,u=c+(i.avail_in-5),f=i.next_out,$=i.output,d=f-(a-i.avail_out),m=f+(i.avail_out-257),h=l.dmax,b=l.wsize,g=l.whave,x=l.wnext,v=l.window,y=l.hold,_=l.bits,j=l.lencode,S=l.distcode,N=(1<<l.lenbits)-1,T=(1<<l.distbits)-1;e:do{_<15&&(y+=w[c++]<<_,_+=8,y+=w[c++]<<_,_+=8),A=j[y&N];t:for(;;){if(y>>>=I=A>>>24,_-=I,(I=A>>>16&255)===0)$[f++]=65535&A;else{if(!(16&I)){if((64&I)==0){A=j[(65535&A)+(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}P=65535&A,(I&=15)&&(_<I&&(y+=w[c++]<<_,_+=8),P+=y&(1<<I)-1,y>>>=I,_-=I),_<15&&(y+=w[c++]<<_,_+=8,y+=w[c++]<<_,_+=8),A=S[y&T];n:for(;;){if(y>>>=I=A>>>24,_-=I,!(16&(I=A>>>16&255))){if((64&I)==0){A=S[(65535&A)+(y&(1<<I)-1)];continue n}i.msg="invalid distance code",l.mode=30;break e}if(L=65535&A,_<(I&=15)&&(y+=w[c++]<<_,(_+=8)<I&&(y+=w[c++]<<_,_+=8)),h<(L+=y&(1<<I)-1)){i.msg="invalid distance too far back",l.mode=30;break e}if(y>>>=I,_-=I,(I=f-d)<L){if(g<(I=L-I)&&l.sane){i.msg="invalid distance too far back",l.mode=30;break e}if(D=v,(E=0)===x){if(E+=b-I,I<P){for(P-=I;$[f++]=v[E++],--I;);E=f-L,D=$}}else if(x<I){if(E+=b+x-I,(I-=x)<P){for(P-=I;$[f++]=v[E++],--I;);if(E=0,x<P){for(P-=I=x;$[f++]=v[E++],--I;);E=f-L,D=$}}}else if(E+=x-I,I<P){for(P-=I;$[f++]=v[E++],--I;);E=f-L,D=$}for(;2<P;)$[f++]=D[E++],$[f++]=D[E++],$[f++]=D[E++],P-=3;P&&($[f++]=D[E++],1<P&&($[f++]=D[E++]))}else{for(E=f-L;$[f++]=$[E++],$[f++]=$[E++],$[f++]=$[E++],2<(P-=3););P&&($[f++]=$[E++],1<P&&($[f++]=$[E++]))}break}}break}}while(c<u&&f<m);c-=P=_>>3,y&=(1<<(_-=P<<3))-1,i.next_in=c,i.next_out=f,i.avail_in=c<u?u-c+5:5-(c-u),i.avail_out=f<m?m-f+257:257-(f-m),l.hold=y,l.bits=_}},{}],49:[function(n,s,o){var i=n("../utils/common"),a=n("./adler32"),l=n("./crc32"),c=n("./inffast"),u=n("./inftrees"),f=1,d=2,m=0,h=-2,b=1,g=852,x=592;function v(E){return(E>>>24&255)+(E>>>8&65280)+((65280&E)<<8)+((255&E)<<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 _(E){var D;return E&&E.state?(D=E.state,E.total_in=E.total_out=D.total=0,E.msg="",D.wrap&&(E.adler=1&D.wrap),D.mode=b,D.last=0,D.havedict=0,D.dmax=32768,D.head=null,D.hold=0,D.bits=0,D.lencode=D.lendyn=new i.Buf32(g),D.distcode=D.distdyn=new i.Buf32(x),D.sane=1,D.back=-1,m):h}function j(E){var D;return E&&E.state?((D=E.state).wsize=0,D.whave=0,D.wnext=0,_(E)):h}function S(E,D){var w,$;return E&&E.state?($=E.state,D<0?(w=0,D=-D):(w=1+(D>>4),D<48&&(D&=15)),D&&(D<8||15<D)?h:($.window!==null&&$.wbits!==D&&($.window=null),$.wrap=w,$.wbits=D,j(E))):h}function N(E,D){var w,$;return E?($=new y,(E.state=$).window=null,(w=S(E,D))!==m&&(E.state=null),w):h}var T,A,I=!0;function P(E){if(I){var D;for(T=new i.Buf32(512),A=new i.Buf32(32),D=0;D<144;)E.lens[D++]=8;for(;D<256;)E.lens[D++]=9;for(;D<280;)E.lens[D++]=7;for(;D<288;)E.lens[D++]=8;for(u(f,E.lens,0,288,T,0,E.work,{bits:9}),D=0;D<32;)E.lens[D++]=5;u(d,E.lens,0,32,A,0,E.work,{bits:5}),I=!1}E.lencode=T,E.lenbits=9,E.distcode=A,E.distbits=5}function L(E,D,w,$){var ee,F=E.state;return F.window===null&&(F.wsize=1<<F.wbits,F.wnext=0,F.whave=0,F.window=new i.Buf8(F.wsize)),$>=F.wsize?(i.arraySet(F.window,D,w-F.wsize,F.wsize,0),F.wnext=0,F.whave=F.wsize):($<(ee=F.wsize-F.wnext)&&(ee=$),i.arraySet(F.window,D,w-$,ee,F.wnext),($-=ee)?(i.arraySet(F.window,D,w-$,$,0),F.wnext=$,F.whave=F.wsize):(F.wnext+=ee,F.wnext===F.wsize&&(F.wnext=0),F.whave<F.wsize&&(F.whave+=ee))),0}o.inflateReset=j,o.inflateReset2=S,o.inflateResetKeep=_,o.inflateInit=function(E){return N(E,15)},o.inflateInit2=N,o.inflate=function(E,D){var w,$,ee,F,te,V,X,H,B,ce,W,Y,_e,fe,xe,de,ge,be,Ce,Re,k,Q,q,O,R=0,U=new i.Buf8(4),re=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!E||!E.state||!E.output||!E.input&&E.avail_in!==0)return h;(w=E.state).mode===12&&(w.mode=13),te=E.next_out,ee=E.output,X=E.avail_out,F=E.next_in,$=E.input,V=E.avail_in,H=w.hold,B=w.bits,ce=V,W=X,Q=m;e:for(;;)switch(w.mode){case b:if(w.wrap===0){w.mode=13;break}for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(2&w.wrap&&H===35615){U[w.check=0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0),B=H=0,w.mode=2;break}if(w.flags=0,w.head&&(w.head.done=!1),!(1&w.wrap)||(((255&H)<<8)+(H>>8))%31){E.msg="incorrect header check",w.mode=30;break}if((15&H)!=8){E.msg="unknown compression method",w.mode=30;break}if(B-=4,k=8+(15&(H>>>=4)),w.wbits===0)w.wbits=k;else if(k>w.wbits){E.msg="invalid window size",w.mode=30;break}w.dmax=1<<k,E.adler=w.check=1,w.mode=512&H?10:12,B=H=0;break;case 2:for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(w.flags=H,(255&w.flags)!=8){E.msg="unknown compression method",w.mode=30;break}if(57344&w.flags){E.msg="unknown header flags set",w.mode=30;break}w.head&&(w.head.text=H>>8&1),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0,w.mode=3;case 3:for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.head&&(w.head.time=H),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,U[2]=H>>>16&255,U[3]=H>>>24&255,w.check=l(w.check,U,4,0)),B=H=0,w.mode=4;case 4:for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.head&&(w.head.xflags=255&H,w.head.os=H>>8),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0,w.mode=5;case 5:if(1024&w.flags){for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.length=H,w.head&&(w.head.extra_len=H),512&w.flags&&(U[0]=255&H,U[1]=H>>>8&255,w.check=l(w.check,U,2,0)),B=H=0}else w.head&&(w.head.extra=null);w.mode=6;case 6:if(1024&w.flags&&(V<(Y=w.length)&&(Y=V),Y&&(w.head&&(k=w.head.extra_len-w.length,w.head.extra||(w.head.extra=new Array(w.head.extra_len)),i.arraySet(w.head.extra,$,F,Y,k)),512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,w.length-=Y),w.length))break e;w.length=0,w.mode=7;case 7:if(2048&w.flags){if(V===0)break e;for(Y=0;k=$[F+Y++],w.head&&k&&w.length<65536&&(w.head.name+=String.fromCharCode(k)),k&&Y<V;);if(512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,k)break e}else w.head&&(w.head.name=null);w.length=0,w.mode=8;case 8:if(4096&w.flags){if(V===0)break e;for(Y=0;k=$[F+Y++],w.head&&k&&w.length<65536&&(w.head.comment+=String.fromCharCode(k)),k&&Y<V;);if(512&w.flags&&(w.check=l(w.check,$,Y,F)),V-=Y,F+=Y,k)break e}else w.head&&(w.head.comment=null);w.mode=9;case 9:if(512&w.flags){for(;B<16;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H!==(65535&w.check)){E.msg="header crc mismatch",w.mode=30;break}B=H=0}w.head&&(w.head.hcrc=w.flags>>9&1,w.head.done=!0),E.adler=w.check=0,w.mode=12;break;case 10:for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}E.adler=w.check=v(H),B=H=0,w.mode=11;case 11:if(w.havedict===0)return E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,2;E.adler=w.check=1,w.mode=12;case 12:if(D===5||D===6)break e;case 13:if(w.last){H>>>=7&B,B-=7&B,w.mode=27;break}for(;B<3;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}switch(w.last=1&H,B-=1,3&(H>>>=1)){case 0:w.mode=14;break;case 1:if(P(w),w.mode=20,D!==6)break;H>>>=2,B-=2;break e;case 2:w.mode=17;break;case 3:E.msg="invalid block type",w.mode=30}H>>>=2,B-=2;break;case 14:for(H>>>=7&B,B-=7&B;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if((65535&H)!=(H>>>16^65535)){E.msg="invalid stored block lengths",w.mode=30;break}if(w.length=65535&H,B=H=0,w.mode=15,D===6)break e;case 15:w.mode=16;case 16:if(Y=w.length){if(V<Y&&(Y=V),X<Y&&(Y=X),Y===0)break e;i.arraySet(ee,$,F,Y,te),V-=Y,F+=Y,X-=Y,te+=Y,w.length-=Y;break}w.mode=12;break;case 17:for(;B<14;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(w.nlen=257+(31&H),H>>>=5,B-=5,w.ndist=1+(31&H),H>>>=5,B-=5,w.ncode=4+(15&H),H>>>=4,B-=4,286<w.nlen||30<w.ndist){E.msg="too many length or distance symbols",w.mode=30;break}w.have=0,w.mode=18;case 18:for(;w.have<w.ncode;){for(;B<3;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.lens[re[w.have++]]=7&H,H>>>=3,B-=3}for(;w.have<19;)w.lens[re[w.have++]]=0;if(w.lencode=w.lendyn,w.lenbits=7,q={bits:w.lenbits},Q=u(0,w.lens,0,19,w.lencode,0,w.work,q),w.lenbits=q.bits,Q){E.msg="invalid code lengths set",w.mode=30;break}w.have=0,w.mode=19;case 19:for(;w.have<w.nlen+w.ndist;){for(;de=(R=w.lencode[H&(1<<w.lenbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(ge<16)H>>>=xe,B-=xe,w.lens[w.have++]=ge;else{if(ge===16){for(O=xe+2;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H>>>=xe,B-=xe,w.have===0){E.msg="invalid bit length repeat",w.mode=30;break}k=w.lens[w.have-1],Y=3+(3&H),H>>>=2,B-=2}else if(ge===17){for(O=xe+3;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}B-=xe,k=0,Y=3+(7&(H>>>=xe)),H>>>=3,B-=3}else{for(O=xe+7;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}B-=xe,k=0,Y=11+(127&(H>>>=xe)),H>>>=7,B-=7}if(w.have+Y>w.nlen+w.ndist){E.msg="invalid bit length repeat",w.mode=30;break}for(;Y--;)w.lens[w.have++]=k}}if(w.mode===30)break;if(w.lens[256]===0){E.msg="invalid code -- missing end-of-block",w.mode=30;break}if(w.lenbits=9,q={bits:w.lenbits},Q=u(f,w.lens,0,w.nlen,w.lencode,0,w.work,q),w.lenbits=q.bits,Q){E.msg="invalid literal/lengths set",w.mode=30;break}if(w.distbits=6,w.distcode=w.distdyn,q={bits:w.distbits},Q=u(d,w.lens,w.nlen,w.ndist,w.distcode,0,w.work,q),w.distbits=q.bits,Q){E.msg="invalid distances set",w.mode=30;break}if(w.mode=20,D===6)break e;case 20:w.mode=21;case 21:if(6<=V&&258<=X){E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,c(E,W),te=E.next_out,ee=E.output,X=E.avail_out,F=E.next_in,$=E.input,V=E.avail_in,H=w.hold,B=w.bits,w.mode===12&&(w.back=-1);break}for(w.back=0;de=(R=w.lencode[H&(1<<w.lenbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(de&&(240&de)==0){for(be=xe,Ce=de,Re=ge;de=(R=w.lencode[Re+((H&(1<<be+Ce)-1)>>be)])>>>16&255,ge=65535&R,!(be+(xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}H>>>=be,B-=be,w.back+=be}if(H>>>=xe,B-=xe,w.back+=xe,w.length=ge,de===0){w.mode=26;break}if(32&de){w.back=-1,w.mode=12;break}if(64&de){E.msg="invalid literal/length code",w.mode=30;break}w.extra=15&de,w.mode=22;case 22:if(w.extra){for(O=w.extra;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.length+=H&(1<<w.extra)-1,H>>>=w.extra,B-=w.extra,w.back+=w.extra}w.was=w.length,w.mode=23;case 23:for(;de=(R=w.distcode[H&(1<<w.distbits)-1])>>>16&255,ge=65535&R,!((xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if((240&de)==0){for(be=xe,Ce=de,Re=ge;de=(R=w.distcode[Re+((H&(1<<be+Ce)-1)>>be)])>>>16&255,ge=65535&R,!(be+(xe=R>>>24)<=B);){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}H>>>=be,B-=be,w.back+=be}if(H>>>=xe,B-=xe,w.back+=xe,64&de){E.msg="invalid distance code",w.mode=30;break}w.offset=ge,w.extra=15&de,w.mode=24;case 24:if(w.extra){for(O=w.extra;B<O;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}w.offset+=H&(1<<w.extra)-1,H>>>=w.extra,B-=w.extra,w.back+=w.extra}if(w.offset>w.dmax){E.msg="invalid distance too far back",w.mode=30;break}w.mode=25;case 25:if(X===0)break e;if(Y=W-X,w.offset>Y){if((Y=w.offset-Y)>w.whave&&w.sane){E.msg="invalid distance too far back",w.mode=30;break}_e=Y>w.wnext?(Y-=w.wnext,w.wsize-Y):w.wnext-Y,Y>w.length&&(Y=w.length),fe=w.window}else fe=ee,_e=te-w.offset,Y=w.length;for(X<Y&&(Y=X),X-=Y,w.length-=Y;ee[te++]=fe[_e++],--Y;);w.length===0&&(w.mode=21);break;case 26:if(X===0)break e;ee[te++]=w.length,X--,w.mode=21;break;case 27:if(w.wrap){for(;B<32;){if(V===0)break e;V--,H|=$[F++]<<B,B+=8}if(W-=X,E.total_out+=W,w.total+=W,W&&(E.adler=w.check=w.flags?l(w.check,ee,W,te-W):a(w.check,ee,W,te-W)),W=X,(w.flags?H:v(H))!==w.check){E.msg="incorrect data check",w.mode=30;break}B=H=0}w.mode=28;case 28:if(w.wrap&&w.flags){for(;B<32;){if(V===0)break e;V--,H+=$[F++]<<B,B+=8}if(H!==(4294967295&w.total)){E.msg="incorrect length check",w.mode=30;break}B=H=0}w.mode=29;case 29:Q=1;break e;case 30:Q=-3;break e;case 31:return-4;default:return h}return E.next_out=te,E.avail_out=X,E.next_in=F,E.avail_in=V,w.hold=H,w.bits=B,(w.wsize||W!==E.avail_out&&w.mode<30&&(w.mode<27||D!==4))&&L(E,E.output,E.next_out,W-E.avail_out)?(w.mode=31,-4):(ce-=E.avail_in,W-=E.avail_out,E.total_in+=ce,E.total_out+=W,w.total+=W,w.wrap&&W&&(E.adler=w.check=w.flags?l(w.check,ee,W,E.next_out-W):a(w.check,ee,W,E.next_out-W)),E.data_type=w.bits+(w.last?64:0)+(w.mode===12?128:0)+(w.mode===20||w.mode===15?256:0),(ce==0&&W===0||D===4)&&Q===m&&(Q=-5),Q)},o.inflateEnd=function(E){if(!E||!E.state)return h;var D=E.state;return D.window&&(D.window=null),E.state=null,m},o.inflateGetHeader=function(E,D){var w;return E&&E.state?(2&(w=E.state).wrap)==0?h:((w.head=D).done=!1,m):h},o.inflateSetDictionary=function(E,D){var w,$=D.length;return E&&E.state?(w=E.state).wrap!==0&&w.mode!==11?h:w.mode===11&&a(1,D,$,0)!==w.check?-3:L(E,D,$,$)?(w.mode=31,-4):(w.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,s,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];s.exports=function(f,d,m,h,b,g,x,v){var y,_,j,S,N,T,A,I,P,L=v.bits,E=0,D=0,w=0,$=0,ee=0,F=0,te=0,V=0,X=0,H=0,B=null,ce=0,W=new i.Buf16(16),Y=new i.Buf16(16),_e=null,fe=0;for(E=0;E<=15;E++)W[E]=0;for(D=0;D<h;D++)W[d[m+D]]++;for(ee=L,$=15;1<=$&&W[$]===0;$--);if($<ee&&(ee=$),$===0)return b[g++]=20971520,b[g++]=20971520,v.bits=1,0;for(w=1;w<$&&W[w]===0;w++);for(ee<w&&(ee=w),E=V=1;E<=15;E++)if(V<<=1,(V-=W[E])<0)return-1;if(0<V&&(f===0||$!==1))return-1;for(Y[1]=0,E=1;E<15;E++)Y[E+1]=Y[E]+W[E];for(D=0;D<h;D++)d[m+D]!==0&&(x[Y[d[m+D]]++]=D);if(T=f===0?(B=_e=x,19):f===1?(B=a,ce-=257,_e=l,fe-=257,256):(B=c,_e=u,-1),E=w,N=g,te=D=H=0,j=-1,S=(X=1<<(F=ee))-1,f===1&&852<X||f===2&&592<X)return 1;for(;;){for(A=E-te,P=x[D]<T?(I=0,x[D]):x[D]>T?(I=_e[fe+x[D]],B[ce+x[D]]):(I=96,0),y=1<<E-te,w=_=1<<F;b[N+(H>>te)+(_-=y)]=A<<24|I<<16|P|0,_!==0;);for(y=1<<E-1;H&y;)y>>=1;if(y!==0?(H&=y-1,H+=y):H=0,D++,--W[E]==0){if(E===$)break;E=d[m+x[D]]}if(ee<E&&(H&S)!==j){for(te===0&&(te=ee),N+=w,V=1<<(F=E-te);F+te<$&&!((V-=W[F+te])<=0);)F++,V<<=1;if(X+=1<<F,f===1&&852<X||f===2&&592<X)return 1;b[j=H&S]=ee<<24|F<<16|N-g|0}}return H!==0&&(b[N+H]=E-te<<24|64<<16|0),v.bits=ee,0}},{"../utils/common":41}],51:[function(n,s,o){s.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,s,o){var i=n("../utils/common"),a=0,l=1;function c(R){for(var U=R.length;0<=--U;)R[U]=0}var u=0,f=29,d=256,m=d+1+f,h=30,b=19,g=2*m+1,x=15,v=16,y=7,_=256,j=16,S=17,N=18,T=[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],A=[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],P=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],L=new Array(2*(m+2));c(L);var E=new Array(2*h);c(E);var D=new Array(512);c(D);var w=new Array(256);c(w);var $=new Array(f);c($);var ee,F,te,V=new Array(h);function X(R,U,re,se,Z){this.static_tree=R,this.extra_bits=U,this.extra_base=re,this.elems=se,this.max_length=Z,this.has_stree=R&&R.length}function H(R,U){this.dyn_tree=R,this.max_code=0,this.stat_desc=U}function B(R){return R<256?D[R]:D[256+(R>>>7)]}function ce(R,U){R.pending_buf[R.pending++]=255&U,R.pending_buf[R.pending++]=U>>>8&255}function W(R,U,re){R.bi_valid>v-re?(R.bi_buf|=U<<R.bi_valid&65535,ce(R,R.bi_buf),R.bi_buf=U>>v-R.bi_valid,R.bi_valid+=re-v):(R.bi_buf|=U<<R.bi_valid&65535,R.bi_valid+=re)}function Y(R,U,re){W(R,re[2*U],re[2*U+1])}function _e(R,U){for(var re=0;re|=1&R,R>>>=1,re<<=1,0<--U;);return re>>>1}function fe(R,U,re){var se,Z,le=new Array(x+1),z=0;for(se=1;se<=x;se++)le[se]=z=z+re[se-1]<<1;for(Z=0;Z<=U;Z++){var M=R[2*Z+1];M!==0&&(R[2*Z]=_e(le[M]++,M))}}function xe(R){var U;for(U=0;U<m;U++)R.dyn_ltree[2*U]=0;for(U=0;U<h;U++)R.dyn_dtree[2*U]=0;for(U=0;U<b;U++)R.bl_tree[2*U]=0;R.dyn_ltree[2*_]=1,R.opt_len=R.static_len=0,R.last_lit=R.matches=0}function de(R){8<R.bi_valid?ce(R,R.bi_buf):0<R.bi_valid&&(R.pending_buf[R.pending++]=R.bi_buf),R.bi_buf=0,R.bi_valid=0}function ge(R,U,re,se){var Z=2*U,le=2*re;return R[Z]<R[le]||R[Z]===R[le]&&se[U]<=se[re]}function be(R,U,re){for(var se=R.heap[re],Z=re<<1;Z<=R.heap_len&&(Z<R.heap_len&&ge(U,R.heap[Z+1],R.heap[Z],R.depth)&&Z++,!ge(U,se,R.heap[Z],R.depth));)R.heap[re]=R.heap[Z],re=Z,Z<<=1;R.heap[re]=se}function Ce(R,U,re){var se,Z,le,z,M=0;if(R.last_lit!==0)for(;se=R.pending_buf[R.d_buf+2*M]<<8|R.pending_buf[R.d_buf+2*M+1],Z=R.pending_buf[R.l_buf+M],M++,se===0?Y(R,Z,U):(Y(R,(le=w[Z])+d+1,U),(z=T[le])!==0&&W(R,Z-=$[le],z),Y(R,le=B(--se),re),(z=A[le])!==0&&W(R,se-=V[le],z)),M<R.last_lit;);Y(R,_,U)}function Re(R,U){var re,se,Z,le=U.dyn_tree,z=U.stat_desc.static_tree,M=U.stat_desc.has_stree,J=U.stat_desc.elems,oe=-1;for(R.heap_len=0,R.heap_max=g,re=0;re<J;re++)le[2*re]!==0?(R.heap[++R.heap_len]=oe=re,R.depth[re]=0):le[2*re+1]=0;for(;R.heap_len<2;)le[2*(Z=R.heap[++R.heap_len]=oe<2?++oe:0)]=1,R.depth[Z]=0,R.opt_len--,M&&(R.static_len-=z[2*Z+1]);for(U.max_code=oe,re=R.heap_len>>1;1<=re;re--)be(R,le,re);for(Z=J;re=R.heap[1],R.heap[1]=R.heap[R.heap_len--],be(R,le,1),se=R.heap[1],R.heap[--R.heap_max]=re,R.heap[--R.heap_max]=se,le[2*Z]=le[2*re]+le[2*se],R.depth[Z]=(R.depth[re]>=R.depth[se]?R.depth[re]:R.depth[se])+1,le[2*re+1]=le[2*se+1]=Z,R.heap[1]=Z++,be(R,le,1),2<=R.heap_len;);R.heap[--R.heap_max]=R.heap[1],(function(ie,we){var he,me,Ie,$e,Ft,zn,gt=we.dyn_tree,at=we.max_code,en=we.stat_desc.static_tree,Bs=we.stat_desc.has_stree,Ue=we.stat_desc.extra_bits,St=we.stat_desc.extra_base,tt=we.stat_desc.max_length,Ut=0;for($e=0;$e<=x;$e++)ie.bl_count[$e]=0;for(gt[2*ie.heap[ie.heap_max]+1]=0,he=ie.heap_max+1;he<g;he++)tt<($e=gt[2*gt[2*(me=ie.heap[he])+1]+1]+1)&&($e=tt,Ut++),gt[2*me+1]=$e,at<me||(ie.bl_count[$e]++,Ft=0,St<=me&&(Ft=Ue[me-St]),zn=gt[2*me],ie.opt_len+=zn*($e+Ft),Bs&&(ie.static_len+=zn*(en[2*me+1]+Ft)));if(Ut!==0){do{for($e=tt-1;ie.bl_count[$e]===0;)$e--;ie.bl_count[$e]--,ie.bl_count[$e+1]+=2,ie.bl_count[tt]--,Ut-=2}while(0<Ut);for($e=tt;$e!==0;$e--)for(me=ie.bl_count[$e];me!==0;)at<(Ie=ie.heap[--he])||(gt[2*Ie+1]!==$e&&(ie.opt_len+=($e-gt[2*Ie+1])*gt[2*Ie],gt[2*Ie+1]=$e),me--)}})(R,U),fe(le,oe,R.bl_count)}function k(R,U,re){var se,Z,le=-1,z=U[1],M=0,J=7,oe=4;for(z===0&&(J=138,oe=3),U[2*(re+1)+1]=65535,se=0;se<=re;se++)Z=z,z=U[2*(se+1)+1],++M<J&&Z===z||(M<oe?R.bl_tree[2*Z]+=M:Z!==0?(Z!==le&&R.bl_tree[2*Z]++,R.bl_tree[2*j]++):M<=10?R.bl_tree[2*S]++:R.bl_tree[2*N]++,le=Z,oe=(M=0)===z?(J=138,3):Z===z?(J=6,3):(J=7,4))}function Q(R,U,re){var se,Z,le=-1,z=U[1],M=0,J=7,oe=4;for(z===0&&(J=138,oe=3),se=0;se<=re;se++)if(Z=z,z=U[2*(se+1)+1],!(++M<J&&Z===z)){if(M<oe)for(;Y(R,Z,R.bl_tree),--M!=0;);else Z!==0?(Z!==le&&(Y(R,Z,R.bl_tree),M--),Y(R,j,R.bl_tree),W(R,M-3,2)):M<=10?(Y(R,S,R.bl_tree),W(R,M-3,3)):(Y(R,N,R.bl_tree),W(R,M-11,7));le=Z,oe=(M=0)===z?(J=138,3):Z===z?(J=6,3):(J=7,4)}}c(V);var q=!1;function O(R,U,re,se){W(R,(u<<1)+(se?1:0),3),(function(Z,le,z,M){de(Z),ce(Z,z),ce(Z,~z),i.arraySet(Z.pending_buf,Z.window,le,z,Z.pending),Z.pending+=z})(R,U,re)}o._tr_init=function(R){q||((function(){var U,re,se,Z,le,z=new Array(x+1);for(Z=se=0;Z<f-1;Z++)for($[Z]=se,U=0;U<1<<T[Z];U++)w[se++]=Z;for(w[se-1]=Z,Z=le=0;Z<16;Z++)for(V[Z]=le,U=0;U<1<<A[Z];U++)D[le++]=Z;for(le>>=7;Z<h;Z++)for(V[Z]=le<<7,U=0;U<1<<A[Z]-7;U++)D[256+le++]=Z;for(re=0;re<=x;re++)z[re]=0;for(U=0;U<=143;)L[2*U+1]=8,U++,z[8]++;for(;U<=255;)L[2*U+1]=9,U++,z[9]++;for(;U<=279;)L[2*U+1]=7,U++,z[7]++;for(;U<=287;)L[2*U+1]=8,U++,z[8]++;for(fe(L,m+1,z),U=0;U<h;U++)E[2*U+1]=5,E[2*U]=_e(U,5);ee=new X(L,T,d+1,m,x),F=new X(E,A,0,h,x),te=new X(new Array(0),I,0,b,y)})(),q=!0),R.l_desc=new H(R.dyn_ltree,ee),R.d_desc=new H(R.dyn_dtree,F),R.bl_desc=new H(R.bl_tree,te),R.bi_buf=0,R.bi_valid=0,xe(R)},o._tr_stored_block=O,o._tr_flush_block=function(R,U,re,se){var Z,le,z=0;0<R.level?(R.strm.data_type===2&&(R.strm.data_type=(function(M){var J,oe=4093624447;for(J=0;J<=31;J++,oe>>>=1)if(1&oe&&M.dyn_ltree[2*J]!==0)return a;if(M.dyn_ltree[18]!==0||M.dyn_ltree[20]!==0||M.dyn_ltree[26]!==0)return l;for(J=32;J<d;J++)if(M.dyn_ltree[2*J]!==0)return l;return a})(R)),Re(R,R.l_desc),Re(R,R.d_desc),z=(function(M){var J;for(k(M,M.dyn_ltree,M.l_desc.max_code),k(M,M.dyn_dtree,M.d_desc.max_code),Re(M,M.bl_desc),J=b-1;3<=J&&M.bl_tree[2*P[J]+1]===0;J--);return M.opt_len+=3*(J+1)+5+5+4,J})(R),Z=R.opt_len+3+7>>>3,(le=R.static_len+3+7>>>3)<=Z&&(Z=le)):Z=le=re+5,re+4<=Z&&U!==-1?O(R,U,re,se):R.strategy===4||le===Z?(W(R,2+(se?1:0),3),Ce(R,L,E)):(W(R,4+(se?1:0),3),(function(M,J,oe,ie){var we;for(W(M,J-257,5),W(M,oe-1,5),W(M,ie-4,4),we=0;we<ie;we++)W(M,M.bl_tree[2*P[we]+1],3);Q(M,M.dyn_ltree,J-1),Q(M,M.dyn_dtree,oe-1)})(R,R.l_desc.max_code+1,R.d_desc.max_code+1,z+1),Ce(R,R.dyn_ltree,R.dyn_dtree)),xe(R),se&&de(R)},o._tr_tally=function(R,U,re){return R.pending_buf[R.d_buf+2*R.last_lit]=U>>>8&255,R.pending_buf[R.d_buf+2*R.last_lit+1]=255&U,R.pending_buf[R.l_buf+R.last_lit]=255&re,R.last_lit++,U===0?R.dyn_ltree[2*re]++:(R.matches++,U--,R.dyn_ltree[2*(w[re]+d+1)]++,R.dyn_dtree[2*B(U)]++),R.last_lit===R.lit_bufsize-1},o._tr_align=function(R){W(R,2,3),Y(R,_,L),(function(U){U.bi_valid===16?(ce(U,U.bi_buf),U.bi_buf=0,U.bi_valid=0):8<=U.bi_valid&&(U.pending_buf[U.pending++]=255&U.bi_buf,U.bi_buf>>=8,U.bi_valid-=8)})(R)}},{"../utils/common":41}],53:[function(n,s,o){s.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,s,o){(function(i){(function(a,l){if(!a.setImmediate){var c,u,f,d,m=1,h={},b=!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}})()?(d="setImmediate$"+Math.random()+"$",a.addEventListener?a.addEventListener("message",_,!1):a.attachEvent("onmessage",_),function(j){a.postMessage(d+j,"*")}):a.MessageChannel?((f=new MessageChannel).port1.onmessage=function(j){y(j.data)},function(j){f.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),N=0;N<S.length;N++)S[N]=arguments[N+1];var T={callback:j,args:S};return h[m]=T,c(m),m++},x.clearImmediate=v}function v(j){delete h[j]}function y(j){if(b)setTimeout(y,0,j);else{var S=h[j];if(S){b=!0;try{(function(N){var T=N.callback,A=N.args;switch(A.length){case 0:T();break;case 1:T(A[0]);break;case 2:T(A[0],A[1]);break;case 3:T(A[0],A[1],A[2]);break;default:T.apply(l,A)}})(S)}finally{v(j),b=!1}}}}function _(j){j.source===a&&typeof j.data=="string"&&j.data.indexOf(d)===0&&y(+j.data.slice(d.length))}})(typeof self>"u"?i===void 0?this:i:self)}).call(this,typeof Cr<"u"?Cr:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(Ii)),Ii.exports}var X_=Y_();const Q_=kg(X_),ek="3.0.21",ja={version:ek},xp="[REDACTED]",tk=/(^|[-_])(api[-_]?key|authorization|cookie|token|secret|password|access[-_]?token|refresh[-_]?token)([-_]|$)/i,nk=[/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],cu=200,sk=25e6,bp=50,rk=1e4;function ok(e){return e<1024?`${e} chars`:e<1024*1024?`${Math.ceil(e/1024)} KB`:`${Math.ceil(e/(1024*1024))} MB`}function ik(e){let t=0;for(const n of e)t+=n.rawRequestBody?.length??0,t+=n.responseText?.length??0;return t}function ak(e){if(e.length>cu)return`Export is limited to ${cu} logs at once. Narrow the filter and try again.`;const t=ik(e);return t>sk?`Export is too large (${ok(t)} of text). Narrow the filter and try again.`:null}function Rr(e){return e?.aborted===!0?{ok:!1,message:"Export canceled.",canceled:!0}:null}async function lk(e,t){try{const n=await Fn(`/api/logs/${e}/chunks`,rk,{signal:t});if(!n.ok)return null;const s=await n.json();return JSON.stringify(s,null,2)}catch{return null}}function ck(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Sa(e){if(Array.isArray(e))return e.map(n=>Sa(n));if(!ck(e))return e;const t={};for(const[n,s]of Object.entries(e))t[n]=tk.test(n)?xp:Sa(s);return t}function uk(e){const t=n=>{let s=n;for(const o of nk)s=s.replace(o,xp);return s};try{const n=JSON.parse(e);return t(JSON.stringify(Sa(n),null,2))}catch{return t(e)}}function Ri(e,t){return t==="redacted"?uk(e):e}function dk(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 fk(e,t,n,s=new Date().toISOString()){return{version:ja.version,exportedAt:s,mode:t,redacted:t==="redacted",logCount:e.length,logIds:e.map(o=>o.id),streamingChunkExportLimit:bp,streamingChunkLogIds:n.map(o=>o.id)}}async function pk(e,t="redacted",n={}){const s=Rr(n.signal);if(s!==null)return s;const o=ak(e);if(o!==null)return{ok:!1,message:o};const i=new Q_,a=t==="redacted"?"redacted":"raw",l=e.filter(m=>m.streaming).slice(0,bp);i.file("manifest.json",JSON.stringify(fk(e,t,l),null,2)),i.file("logs.json",JSON.stringify(e.map(m=>dk(m,t)),null,2));for(const m of e){const h=Rr(n.signal);if(h!==null)return h;m.rawRequestBody!==null&&i.file(`#${m.id}.Request.json`,Ri(m.rawRequestBody,t)),m.responseText!==null&&i.file(`#${m.id}.Response.json`,Ri(m.responseText,t))}for(const m of l){const h=Rr(n.signal);if(h!==null)return h;const b=await lk(m.id,n.signal);b!==null&&i.file(`#${m.id}.SSE.Response.json`,Ri(b,t))}const c=await i.generateAsync({type:"blob"}),u=Rr(n.signal);if(u!==null)return u;const f=URL.createObjectURL(c),d=document.createElement("a");return d.href=f,d.download=`agent-inspector-export-${a}-${new Date().toISOString().slice(0,10)}.zip`,document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(f),{ok:!0}}function hk(e,t){if(e!==null){e.removeAllRanges();for(const n of t)e.addRange(n)}}function mk(e){if(e===null)return[];const t=[];for(let n=0;n<e.rangeCount;n++)t.push(e.getRangeAt(n));return t}function gk(e){if(typeof document>"u")return!1;const t=document.activeElement,n=document.getSelection(),s=mk(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),hk(n,s),typeof HTMLElement<"u"&&t instanceof HTMLElement&&t.focus({preventScroll:!0})}return i}async function Tt(e){const t=globalThis.navigator?.clipboard;if(t!==void 0)try{return await t.writeText(e),!0}catch{}return gk(e)}function Ca(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 Dl(e,t,n){return`${Ca(e,n)} - ${Ca(t,n)}`}function zr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function xk(e){switch(e){case"end_turn":case"tool_use":return e;case"max_tokens":return"length";default:return null}}function bk(e){switch(e){case"stop":case"length":return e;case"max_tokens":return"length";default:return null}}function vk(e){switch(e){case"max_output_tokens":case"max_tokens":return!0;default:return!1}}function vp(e){if(e.responseText===null)return null;try{let t=JSON.parse(e.responseText);if(typeof t=="string"&&(t=JSON.parse(t)),!zr(t))return null;if(typeof t.stop_reason=="string")return xk(t.stop_reason);if(Array.isArray(t.choices))for(const n of t.choices){if(!zr(n)||typeof n.finish_reason!="string")continue;const s=bk(n.finish_reason);if(s!==null)return s}if(Array.isArray(t.output)){for(const n of t.output)if(zr(n)&&n.type==="function_call")return"tool_use";if(t.status==="completed")return"stop"}if(t.status==="incomplete"&&zr(t.incomplete_details)){const n=t.incomplete_details.reason;if(typeof n=="string"&&vk(n))return"length"}return null}catch{return null}}function $l(e){return e==="end_turn"||e==="stop"||e==="length"}function yp(e){var t,n,s="";if(typeof e=="string"||typeof e=="number")s+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=yp(e[t]))&&(s&&(s+=" "),s+=n)}else for(n in e)e[n]&&(s&&(s+=" "),s+=n);return s}function wp(){for(var e,t,n=0,s="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=yp(e))&&(s&&(s+=" "),s+=t);return s}const yk=(e,t)=>{const n=new Array(e.length+t.length);for(let s=0;s<e.length;s++)n[s]=e[s];for(let s=0;s<t.length;s++)n[e.length+s]=t[s];return n},wk=(e,t)=>({classGroupId:e,validator:t}),_p=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),jo="-",uu=[],_k="arbitrary..",kk=e=>{const t=Sk(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:s}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return jk(a);const l=a.split(jo),c=l[0]===""&&l.length>1?1:0;return kp(l,c,t)},getConflictingClassGroupIds:(a,l)=>{if(l){const c=s[a],u=n[a];return c?u?yk(u,c):c:u||uu}return n[a]||uu}}},kp=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const o=e[t],i=n.nextPart.get(o);if(i){const u=kp(e,t+1,i);if(u)return u}const a=n.validators;if(a===null)return;const l=t===0?e.join(jo):e.slice(t).join(jo),c=a.length;for(let u=0;u<c;u++){const f=a[u];if(f.validator(l))return f.classGroupId}},jk=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),s=t.slice(0,n);return s?_k+s:void 0})(),Sk=e=>{const{theme:t,classGroups:n}=e;return Ck(n,t)},Ck=(e,t)=>{const n=_p();for(const s in e){const o=e[s];Fl(o,n,s,t)}return n},Fl=(e,t,n,s)=>{const o=e.length;for(let i=0;i<o;i++){const a=e[i];Nk(a,t,n,s)}},Nk=(e,t,n,s)=>{if(typeof e=="string"){Tk(e,t,n);return}if(typeof e=="function"){Ek(e,t,n,s);return}Ak(e,t,n,s)},Tk=(e,t,n)=>{const s=e===""?t:jp(t,e);s.classGroupId=n},Ek=(e,t,n,s)=>{if(Ik(e)){Fl(e(s),t,n,s);return}t.validators===null&&(t.validators=[]),t.validators.push(wk(n,e))},Ak=(e,t,n,s)=>{const o=Object.entries(e),i=o.length;for(let a=0;a<i;a++){const[l,c]=o[a];Fl(c,jp(t,l),n,s)}},jp=(e,t)=>{let n=e;const s=t.split(jo),o=s.length;for(let i=0;i<o;i++){const a=s[i];let l=n.nextPart.get(a);l||(l=_p(),n.nextPart.set(a,l)),n=l}return n},Ik=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Rk=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),s=Object.create(null);const o=(i,a)=>{n[i]=a,t++,t>e&&(t=0,s=n,n=Object.create(null))};return{get(i){let a=n[i];if(a!==void 0)return a;if((a=s[i])!==void 0)return o(i,a),a},set(i,a){i in n?n[i]=a:o(i,a)}}},Na="!",du=":",zk=[],fu=(e,t,n,s,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:s,isExternal:o}),Pk=e=>{const{prefix:t,experimentalParseClassName:n}=e;let s=o=>{const i=[];let a=0,l=0,c=0,u;const f=o.length;for(let g=0;g<f;g++){const x=o[g];if(a===0&&l===0){if(x===du){i.push(o.slice(c,g)),c=g+1;continue}if(x==="/"){u=g;continue}}x==="["?a++:x==="]"?a--:x==="("?l++:x===")"&&l--}const d=i.length===0?o:o.slice(c);let m=d,h=!1;d.endsWith(Na)?(m=d.slice(0,-1),h=!0):d.startsWith(Na)&&(m=d.slice(1),h=!0);const b=u&&u>c?u-c:void 0;return fu(i,h,m,b)};if(t){const o=t+du,i=s;s=a=>a.startsWith(o)?i(a.slice(o.length)):fu(zk,!1,a,void 0,!0)}if(n){const o=s;s=i=>n({className:i,parseClassName:o})}return s},Ok=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,s)=>{t.set(n,1e6+s)}),n=>{const s=[];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(),s.push(...o),o=[]),s.push(a)):o.push(a)}return o.length>0&&(o.sort(),s.push(...o)),s}},Mk=e=>({cache:Rk(e.cacheSize),parseClassName:Pk(e),sortModifiers:Ok(e),postfixLookupClassGroupIds:Lk(e),...kk(e)}),Lk=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let s=0;s<n.length;s++)t[n[s]]=!0;return t},Dk=/\s+/,$k=(e,t)=>{const{parseClassName:n,getClassGroupId:s,getConflictingClassGroupIds:o,sortModifiers:i,postfixLookupClassGroupIds:a}=t,l=[],c=e.trim().split(Dk);let u="";for(let f=c.length-1;f>=0;f-=1){const d=c[f],{isExternal:m,modifiers:h,hasImportantModifier:b,baseClassName:g,maybePostfixModifierPosition:x}=n(d);if(m){u=d+(u.length>0?" "+u:u);continue}let v=!!x,y;if(v){const T=g.substring(0,x);y=s(T);const A=y&&a[y]?s(g):void 0;A&&A!==y&&(y=A,v=!1)}else y=s(g);if(!y){if(!v){u=d+(u.length>0?" "+u:u);continue}if(y=s(g),!y){u=d+(u.length>0?" "+u:u);continue}v=!1}const _=h.length===0?"":h.length===1?h[0]:i(h).join(":"),j=b?_+Na:_,S=j+y;if(l.indexOf(S)>-1)continue;l.push(S);const N=o(y,v);for(let T=0;T<N.length;++T){const A=N[T];l.push(j+A)}u=d+(u.length>0?" "+u:u)}return u},Fk=(...e)=>{let t=0,n,s,o="";for(;t<e.length;)(n=e[t++])&&(s=Sp(n))&&(o&&(o+=" "),o+=s);return o},Sp=e=>{if(typeof e=="string")return e;let t,n="";for(let s=0;s<e.length;s++)e[s]&&(t=Sp(e[s]))&&(n&&(n+=" "),n+=t);return n},Uk=(e,...t)=>{let n,s,o,i;const a=c=>{const u=t.reduce((f,d)=>d(f),e());return n=Mk(u),s=n.cache.get,o=n.cache.set,i=l,l(c)},l=c=>{const u=s(c);if(u)return u;const f=$k(c,n);return o(c,f),f};return i=a,(...c)=>i(Fk(...c))},Bk=[],et=e=>{const t=n=>n[e]||Bk;return t.isThemeGetter=!0,t},Cp=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Np=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Wk=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Hk=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Vk=/\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$/,Zk=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,qk=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Gk=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,fn=e=>Wk.test(e),Pe=e=>!!e&&!Number.isNaN(Number(e)),Bt=e=>!!e&&Number.isInteger(Number(e)),zi=e=>e.endsWith("%")&&Pe(e.slice(0,-1)),tn=e=>Hk.test(e),Tp=()=>!0,Kk=e=>Vk.test(e)&&!Zk.test(e),Ul=()=>!1,Jk=e=>qk.test(e),Yk=e=>Gk.test(e),Xk=e=>!ve(e)&&!ye(e),Qk=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),e5=e=>Tn(e,Ip,Ul),ve=e=>Cp.test(e),Pn=e=>Tn(e,Rp,Kk),pu=e=>Tn(e,l5,Pe),t5=e=>Tn(e,Pp,Tp),n5=e=>Tn(e,zp,Ul),hu=e=>Tn(e,Ep,Ul),s5=e=>Tn(e,Ap,Yk),Pr=e=>Tn(e,Op,Jk),ye=e=>Np.test(e),Ws=e=>Kn(e,Rp),r5=e=>Kn(e,zp),mu=e=>Kn(e,Ep),o5=e=>Kn(e,Ip),i5=e=>Kn(e,Ap),Or=e=>Kn(e,Op,!0),a5=e=>Kn(e,Pp,!0),Tn=(e,t,n)=>{const s=Cp.exec(e);return s?s[1]?t(s[1]):n(s[2]):!1},Kn=(e,t,n=!1)=>{const s=Np.exec(e);return s?s[1]?t(s[1]):n:!1},Ep=e=>e==="position"||e==="percentage",Ap=e=>e==="image"||e==="url",Ip=e=>e==="length"||e==="size"||e==="bg-size",Rp=e=>e==="length",l5=e=>e==="number",zp=e=>e==="family-name",Pp=e=>e==="number"||e==="weight",Op=e=>e==="shadow",c5=()=>{const e=et("color"),t=et("font"),n=et("text"),s=et("font-weight"),o=et("tracking"),i=et("leading"),a=et("breakpoint"),l=et("container"),c=et("spacing"),u=et("radius"),f=et("shadow"),d=et("inset-shadow"),m=et("text-shadow"),h=et("drop-shadow"),b=et("blur"),g=et("perspective"),x=et("aspect"),v=et("ease"),y=et("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],N=()=>["auto","hidden","clip","visible","scroll"],T=()=>["auto","contain","none"],A=()=>[ye,ve,c],I=()=>[fn,"full","auto",...A()],P=()=>[Bt,"none","subgrid",ye,ve],L=()=>["auto",{span:["full",Bt,ye,ve]},Bt,ye,ve],E=()=>[Bt,"auto",ye,ve],D=()=>["auto","min","max","fr",ye,ve],w=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],$=()=>["start","end","center","stretch","center-safe","end-safe"],ee=()=>["auto",...A()],F=()=>[fn,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...A()],te=()=>[fn,"screen","full","dvw","lvw","svw","min","max","fit",...A()],V=()=>[fn,"screen","full","lh","dvh","lvh","svh","min","max","fit",...A()],X=()=>[e,ye,ve],H=()=>[...j(),mu,hu,{position:[ye,ve]}],B=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ce=()=>["auto","cover","contain",o5,e5,{size:[ye,ve]}],W=()=>[zi,Ws,Pn],Y=()=>["","none","full",u,ye,ve],_e=()=>["",Pe,Ws,Pn],fe=()=>["solid","dashed","dotted","double"],xe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],de=()=>[Pe,zi,mu,hu],ge=()=>["","none",b,ye,ve],be=()=>["none",Pe,ye,ve],Ce=()=>["none",Pe,ye,ve],Re=()=>[Pe,ye,ve],k=()=>[fn,"full",...A()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[tn],breakpoint:[tn],color:[Tp],container:[tn],"drop-shadow":[tn],ease:["in","out","in-out"],font:[Xk],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[tn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[tn],shadow:[tn],spacing:["px",Pe],text:[tn],"text-shadow":[tn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",fn,ve,ye,x]}],container:["container"],"container-type":[{"@container":["","normal","size",ye,ve]}],"container-named":[Qk],columns:[{columns:[Pe,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:N()}],"overflow-x":[{"overflow-x":N()}],"overflow-y":[{"overflow-y":N()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{"inset-s":I(),start:I()}],end:[{"inset-e":I(),end:I()}],"inset-bs":[{"inset-bs":I()}],"inset-be":[{"inset-be":I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[Bt,"auto",ye,ve]}],basis:[{basis:[fn,"full","auto",l,...A()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Pe,fn,"auto","initial","none",ve]}],grow:[{grow:["",Pe,ye,ve]}],shrink:[{shrink:["",Pe,ye,ve]}],order:[{order:[Bt,"first","last","none",ye,ve]}],"grid-cols":[{"grid-cols":P()}],"col-start-end":[{col:L()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":P()}],"row-start-end":[{row:L()}],"row-start":[{"row-start":E()}],"row-end":[{"row-end":E()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:A()}],"gap-x":[{"gap-x":A()}],"gap-y":[{"gap-y":A()}],"justify-content":[{justify:[...w(),"normal"]}],"justify-items":[{"justify-items":[...$(),"normal"]}],"justify-self":[{"justify-self":["auto",...$()]}],"align-content":[{content:["normal",...w()]}],"align-items":[{items:[...$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...$(),{baseline:["","last"]}]}],"place-content":[{"place-content":w()}],"place-items":[{"place-items":[...$(),"baseline"]}],"place-self":[{"place-self":["auto",...$()]}],p:[{p:A()}],px:[{px:A()}],py:[{py:A()}],ps:[{ps:A()}],pe:[{pe:A()}],pbs:[{pbs:A()}],pbe:[{pbe:A()}],pt:[{pt:A()}],pr:[{pr:A()}],pb:[{pb:A()}],pl:[{pl:A()}],m:[{m:ee()}],mx:[{mx:ee()}],my:[{my:ee()}],ms:[{ms:ee()}],me:[{me:ee()}],mbs:[{mbs:ee()}],mbe:[{mbe:ee()}],mt:[{mt:ee()}],mr:[{mr:ee()}],mb:[{mb:ee()}],ml:[{ml:ee()}],"space-x":[{"space-x":A()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":A()}],"space-y-reverse":["space-y-reverse"],size:[{size:F()}],"inline-size":[{inline:["auto",...te()]}],"min-inline-size":[{"min-inline":["auto",...te()]}],"max-inline-size":[{"max-inline":["none",...te()]}],"block-size":[{block:["auto",...V()]}],"min-block-size":[{"min-block":["auto",...V()]}],"max-block-size":[{"max-block":["none",...V()]}],w:[{w:[l,"screen",...F()]}],"min-w":[{"min-w":[l,"screen","none",...F()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...F()]}],h:[{h:["screen","lh",...F()]}],"min-h":[{"min-h":["screen","lh","none",...F()]}],"max-h":[{"max-h":["screen","lh",...F()]}],"font-size":[{text:["base",n,Ws,Pn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,a5,t5]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",zi,ve]}],"font-family":[{font:[r5,n5,t]}],"font-features":[{"font-features":[ve]}],"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":[Pe,"none",ye,pu]}],leading:[{leading:[i,...A()]}],"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:X()}],"text-color":[{text:X()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...fe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Pe,"from-font","auto",ye,Pn]}],"text-decoration-color":[{decoration:X()}],"underline-offset":[{"underline-offset":[Pe,"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:A()}],"tab-size":[{tab:[Bt,ye,ve]}],"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:H()}],"bg-repeat":[{bg:B()}],"bg-size":[{bg:ce()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Bt,ye,ve],radial:["",ye,ve],conic:[Bt,ye,ve]},i5,s5]}],"bg-color":[{bg:X()}],"gradient-from-pos":[{from:W()}],"gradient-via-pos":[{via:W()}],"gradient-to-pos":[{to:W()}],"gradient-from":[{from:X()}],"gradient-via":[{via:X()}],"gradient-to":[{to:X()}],rounded:[{rounded:Y()}],"rounded-s":[{"rounded-s":Y()}],"rounded-e":[{"rounded-e":Y()}],"rounded-t":[{"rounded-t":Y()}],"rounded-r":[{"rounded-r":Y()}],"rounded-b":[{"rounded-b":Y()}],"rounded-l":[{"rounded-l":Y()}],"rounded-ss":[{"rounded-ss":Y()}],"rounded-se":[{"rounded-se":Y()}],"rounded-ee":[{"rounded-ee":Y()}],"rounded-es":[{"rounded-es":Y()}],"rounded-tl":[{"rounded-tl":Y()}],"rounded-tr":[{"rounded-tr":Y()}],"rounded-br":[{"rounded-br":Y()}],"rounded-bl":[{"rounded-bl":Y()}],"border-w":[{border:_e()}],"border-w-x":[{"border-x":_e()}],"border-w-y":[{"border-y":_e()}],"border-w-s":[{"border-s":_e()}],"border-w-e":[{"border-e":_e()}],"border-w-bs":[{"border-bs":_e()}],"border-w-be":[{"border-be":_e()}],"border-w-t":[{"border-t":_e()}],"border-w-r":[{"border-r":_e()}],"border-w-b":[{"border-b":_e()}],"border-w-l":[{"border-l":_e()}],"divide-x":[{"divide-x":_e()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":_e()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...fe(),"hidden","none"]}],"divide-style":[{divide:[...fe(),"hidden","none"]}],"border-color":[{border:X()}],"border-color-x":[{"border-x":X()}],"border-color-y":[{"border-y":X()}],"border-color-s":[{"border-s":X()}],"border-color-e":[{"border-e":X()}],"border-color-bs":[{"border-bs":X()}],"border-color-be":[{"border-be":X()}],"border-color-t":[{"border-t":X()}],"border-color-r":[{"border-r":X()}],"border-color-b":[{"border-b":X()}],"border-color-l":[{"border-l":X()}],"divide-color":[{divide:X()}],"outline-style":[{outline:[...fe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Pe,ye,ve]}],"outline-w":[{outline:["",Pe,Ws,Pn]}],"outline-color":[{outline:X()}],shadow:[{shadow:["","none",f,Or,Pr]}],"shadow-color":[{shadow:X()}],"inset-shadow":[{"inset-shadow":["none",d,Or,Pr]}],"inset-shadow-color":[{"inset-shadow":X()}],"ring-w":[{ring:_e()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:X()}],"ring-offset-w":[{"ring-offset":[Pe,Pn]}],"ring-offset-color":[{"ring-offset":X()}],"inset-ring-w":[{"inset-ring":_e()}],"inset-ring-color":[{"inset-ring":X()}],"text-shadow":[{"text-shadow":["none",m,Or,Pr]}],"text-shadow-color":[{"text-shadow":X()}],opacity:[{opacity:[Pe,ye,ve]}],"mix-blend":[{"mix-blend":[...xe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":xe()}],"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":[Pe]}],"mask-image-linear-from-pos":[{"mask-linear-from":de()}],"mask-image-linear-to-pos":[{"mask-linear-to":de()}],"mask-image-linear-from-color":[{"mask-linear-from":X()}],"mask-image-linear-to-color":[{"mask-linear-to":X()}],"mask-image-t-from-pos":[{"mask-t-from":de()}],"mask-image-t-to-pos":[{"mask-t-to":de()}],"mask-image-t-from-color":[{"mask-t-from":X()}],"mask-image-t-to-color":[{"mask-t-to":X()}],"mask-image-r-from-pos":[{"mask-r-from":de()}],"mask-image-r-to-pos":[{"mask-r-to":de()}],"mask-image-r-from-color":[{"mask-r-from":X()}],"mask-image-r-to-color":[{"mask-r-to":X()}],"mask-image-b-from-pos":[{"mask-b-from":de()}],"mask-image-b-to-pos":[{"mask-b-to":de()}],"mask-image-b-from-color":[{"mask-b-from":X()}],"mask-image-b-to-color":[{"mask-b-to":X()}],"mask-image-l-from-pos":[{"mask-l-from":de()}],"mask-image-l-to-pos":[{"mask-l-to":de()}],"mask-image-l-from-color":[{"mask-l-from":X()}],"mask-image-l-to-color":[{"mask-l-to":X()}],"mask-image-x-from-pos":[{"mask-x-from":de()}],"mask-image-x-to-pos":[{"mask-x-to":de()}],"mask-image-x-from-color":[{"mask-x-from":X()}],"mask-image-x-to-color":[{"mask-x-to":X()}],"mask-image-y-from-pos":[{"mask-y-from":de()}],"mask-image-y-to-pos":[{"mask-y-to":de()}],"mask-image-y-from-color":[{"mask-y-from":X()}],"mask-image-y-to-color":[{"mask-y-to":X()}],"mask-image-radial":[{"mask-radial":[ye,ve]}],"mask-image-radial-from-pos":[{"mask-radial-from":de()}],"mask-image-radial-to-pos":[{"mask-radial-to":de()}],"mask-image-radial-from-color":[{"mask-radial-from":X()}],"mask-image-radial-to-color":[{"mask-radial-to":X()}],"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":[Pe]}],"mask-image-conic-from-pos":[{"mask-conic-from":de()}],"mask-image-conic-to-pos":[{"mask-conic-to":de()}],"mask-image-conic-from-color":[{"mask-conic-from":X()}],"mask-image-conic-to-color":[{"mask-conic-to":X()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:H()}],"mask-repeat":[{mask:B()}],"mask-size":[{mask:ce()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ye,ve]}],filter:[{filter:["","none",ye,ve]}],blur:[{blur:ge()}],brightness:[{brightness:[Pe,ye,ve]}],contrast:[{contrast:[Pe,ye,ve]}],"drop-shadow":[{"drop-shadow":["","none",h,Or,Pr]}],"drop-shadow-color":[{"drop-shadow":X()}],grayscale:[{grayscale:["",Pe,ye,ve]}],"hue-rotate":[{"hue-rotate":[Pe,ye,ve]}],invert:[{invert:["",Pe,ye,ve]}],saturate:[{saturate:[Pe,ye,ve]}],sepia:[{sepia:["",Pe,ye,ve]}],"backdrop-filter":[{"backdrop-filter":["","none",ye,ve]}],"backdrop-blur":[{"backdrop-blur":ge()}],"backdrop-brightness":[{"backdrop-brightness":[Pe,ye,ve]}],"backdrop-contrast":[{"backdrop-contrast":[Pe,ye,ve]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Pe,ye,ve]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Pe,ye,ve]}],"backdrop-invert":[{"backdrop-invert":["",Pe,ye,ve]}],"backdrop-opacity":[{"backdrop-opacity":[Pe,ye,ve]}],"backdrop-saturate":[{"backdrop-saturate":[Pe,ye,ve]}],"backdrop-sepia":[{"backdrop-sepia":["",Pe,ye,ve]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":A()}],"border-spacing-x":[{"border-spacing-x":A()}],"border-spacing-y":[{"border-spacing-y":A()}],"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:[Pe,"initial",ye,ve]}],ease:[{ease:["linear","initial",v,ye,ve]}],delay:[{delay:[Pe,ye,ve]}],animate:[{animate:["none",y,ye,ve]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,ye,ve]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:be()}],"rotate-x":[{"rotate-x":be()}],"rotate-y":[{"rotate-y":be()}],"rotate-z":[{"rotate-z":be()}],scale:[{scale:Ce()}],"scale-x":[{"scale-x":Ce()}],"scale-y":[{"scale-y":Ce()}],"scale-z":[{"scale-z":Ce()}],"scale-3d":["scale-3d"],skew:[{skew:Re()}],"skew-x":[{"skew-x":Re()}],"skew-y":[{"skew-y":Re()}],transform:[{transform:[ye,ve,"","none","gpu","cpu"]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:k()}],"translate-x":[{"translate-x":k()}],"translate-y":[{"translate-y":k()}],"translate-z":[{"translate-z":k()}],"translate-none":["translate-none"],zoom:[{zoom:[Bt,ye,ve]}],accent:[{accent:X()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:X()}],"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"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":X()}],"scrollbar-track-color":[{"scrollbar-track":X()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mbs":[{"scroll-mbs":A()}],"scroll-mbe":[{"scroll-mbe":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pbs":[{"scroll-pbs":A()}],"scroll-pbe":[{"scroll-pbe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"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",...X()]}],"stroke-w":[{stroke:[Pe,Ws,Pn,pu]}],stroke:[{stroke:["none",...X()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","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","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","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-bs","border-w-be","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-bs","border-color-be","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-mbs","scroll-mbe","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-pbs","scroll-pbe","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"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},u5=Uk(c5);function ae(...e){return u5(wp(e))}function Fe(e){return e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":(e/1e3).toFixed(1).replace(/\.0$/,"")+"K"}function Mp(e){return e>=1024*1024?(e/(1024*1024)).toFixed(1).replace(/\.0$/,"")+"M":(e/1024).toFixed(1).replace(/\.0$/,"")+"K"}function gu(e,t,n){const s=e*10;return!Number.isSafeInteger(s)||s%t!==0?null:(s/t/10).toFixed(1).replace(/\.0$/,"")+n}function d5(e){if(!Number.isSafeInteger(e)||e<=0)return e.toString();if(e>=1024*1024){const n=gu(e,1048576,"M");if(n!==null)return n}const t=gu(e,1024,"K");return t!==null?t:e.toString()}function f5(e){if(e===void 0||e==="")return 1;switch(e.toLowerCase()){case"k":return 1024;case"m":return 1024*1024;default:return null}}function So(e){const t=e.trim().replaceAll(",","");if(t==="")return null;const n=/^(\d+(?:\.\d+)?)\s*([kKmM])?$/.exec(t);if(n===null)return null;const s=n[1];if(s===void 0)return null;const o=Number(s),i=n[2],a=f5(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 p5(e){return e===null?"pending":e>=200&&e<300?"success":e>=400&&e<500?"client_error":e>=500?"server_error":"pending"}function Mr(){return C().refine(e=>{if(e.length===0)return!0;try{const t=new URL(e);return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}},"Must be a valid http(s) URL")}const h5=K({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()}),Co=K({id:C(),name:C(),apiKey:C(),model:C().optional(),models:pe(C()).optional().default([]),format:Ee(["anthropic","openai"]).optional(),baseUrl:Mr().optional(),anthropicBaseUrl:Mr().optional(),openaiBaseUrl:Mr().optional(),openaiResponsesBaseUrl:Mr().optional(),authHeader:Ee(["bearer","x-api-key"]).optional().default("bearer"),apiDocsUrl:C().optional(),modelMetadataUrl:C().optional(),modelMetadata:pe(h5).optional(),source:Ee(["company","personal"]).optional(),createdAt:C(),updatedAt:C()});async function m5(e){return ht(e,Co.array(),void 0,t=>`Failed to fetch ${e}: ${t.status}`)}function Bl(){const e=Zt("/api/providers?includeSecrets=1",m5,{revalidateOnFocus:!1,revalidateIfStale:!1});return{providers:e.data??[],isLoading:e.isLoading,isError:e.error,mutate:e.mutate}}function xu(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function g5(...e){return t=>{let n=!1;const s=e.map(o=>{const i=xu(o,t);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let o=0;o<s.length;o++){const i=s[o];typeof i=="function"?i():xu(e[o],null)}}}}function De(...e){return p.useCallback(g5(...e),e)}function Cs(e){const t=p.forwardRef((n,s)=>{let{children:o,...i}=n,a=null,l=!1;const c=[];bu(o)&&typeof Lr=="function"&&(o=Lr(o._payload)),p.Children.forEach(o,m=>{if(_5(m)){l=!0;const h=m;let b="child"in h.props?h.props.child:h.props.children;bu(b)&&typeof Lr=="function"&&(b=Lr(b._payload)),a=v5(h,b),c.push(a?.props?.children)}else c.push(m)}),a?a=p.cloneElement(a,void 0,c):!l&&p.Children.count(o)===1&&p.isValidElement(o)&&(a=o);const u=a?w5(a):void 0,f=De(s,u);if(!a){if(o||o===0)throw new Error(l?C5(e):S5(e));return o}const d=y5(i,a.props??{});return a.type!==p.Fragment&&(d.ref=s?f:u),p.cloneElement(a,d)});return t.displayName=`${e}.Slot`,t}var x5=Cs("Slot"),Lp=Symbol.for("radix.slottable");function b5(e){const t=n=>"child"in n?n.children(n.child):n.children;return t.displayName=`${e}.Slottable`,t.__radixId=Lp,t}var v5=(e,t)=>{if("child"in e.props){const n=e.props.child;return p.isValidElement(n)?p.cloneElement(n,void 0,e.props.children(n.props.children)):null}return p.isValidElement(t)?t:null};function y5(e,t){const n={...t};for(const s in t){const o=e[s],i=t[s];/^on[A-Z]/.test(s)?o&&i?n[s]=(...l)=>{const c=i(...l);return o(...l),c}:o&&(n[s]=o):s==="style"?n[s]={...o,...i}:s==="className"&&(n[s]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function w5(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)}function _5(e){return p.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Lp}var k5=Symbol.for("react.lazy");function bu(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===k5&&"_payload"in e&&j5(e._payload)}function j5(e){return typeof e=="object"&&e!==null&&"then"in e}var S5=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,C5=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Lr=Zo[" use ".trim().toString()],N5=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],ze=N5.reduce((e,t)=>{const n=Cs(`Primitive.${t}`),s=p.forwardRef((o,i)=>{const{asChild:a,...l}=o,c=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),r.jsx(c,{...l,ref:i})});return s.displayName=`Primitive.${t}`,{...e,[t]:s}},{});function T5(e,t){e&&Ms.flushSync(()=>e.dispatchEvent(t))}var Dp=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"}),E5="VisuallyHidden",$p=p.forwardRef((e,t)=>r.jsx(ze.span,{...e,ref:t,style:{...Dp,...e.style}}));$p.displayName=E5;var A5=$p;function dn(e,t=[]){let n=[];function s(i,a){const l=p.createContext(a);l.displayName=i+"Context";const c=n.length;n=[...n,a];const u=d=>{const{scope:m,children:h,...b}=d,g=m?.[e]?.[c]||l,x=p.useMemo(()=>b,Object.values(b));return r.jsx(g.Provider,{value:x,children:h})};u.displayName=i+"Provider";function f(d,m,h={}){const{optional:b=!1}=h,g=m?.[e]?.[c]||l,x=p.useContext(g);if(x)return x;if(a!==void 0)return a;if(!b)throw new Error(`\`${d}\` must be used within \`${i}\``)}return[u,f]}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,[s,I5(o,...t)]}function I5(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const s=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=s.reduce((l,{useScope:c,scopeName:u})=>{const d=c(i)[`__scope${u}`];return{...l,...d}},{});return p.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}function Fp(e){const t=e+"CollectionProvider",[n,s]=dn(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=g=>{const{scope:x,children:v}=g,y=p.useRef(null),_=p.useRef(new Map).current;return r.jsx(o,{scope:x,itemMap:_,collectionRef:y,children:v})};a.displayName=t;const l=e+"CollectionSlot",c=Cs(l),u=p.forwardRef((g,x)=>{const{scope:v,children:y}=g,_=i(l,v),j=De(x,_.collectionRef);return r.jsx(c,{ref:j,children:y})});u.displayName=l;const f=e+"CollectionItemSlot",d="data-radix-collection-item",m=Cs(f),h=p.forwardRef((g,x)=>{const{scope:v,children:y,..._}=g,j=p.useRef(null),S=De(x,j),N=i(f,v);return p.useEffect(()=>(N.itemMap.set(j,{ref:j,..._}),()=>{N.itemMap.delete(j)})),r.jsx(m,{[d]:"",ref:S,children:y})});h.displayName=f;function b(g){const x=i(e+"CollectionConsumer",g);return p.useCallback(()=>{const y=x.collectionRef.current;if(!y)return[];const _=Array.from(y.querySelectorAll(`[${d}]`));return Array.from(x.itemMap.values()).sort((N,T)=>_.indexOf(N.ref.current)-_.indexOf(T.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:a,Slot:u,ItemSlot:h},b,s]}function Te(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e?.(o),n===!1||!o||!o.defaultPrevented)return t?.(o)}}var Xe=globalThis?.document?p.useLayoutEffect:()=>{},R5=Zo[" useInsertionEffect ".trim().toString()]||Xe;function Bn({prop:e,defaultProp:t,onChange:n=()=>{},caller:s}){const[o,i,a]=z5({defaultProp:t,onChange:n}),l=e!==void 0,c=l?e:o;{const f=p.useRef(e!==void 0);p.useEffect(()=>{const d=f.current;d!==l&&console.warn(`${s} is changing from ${d?"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.`),f.current=l},[l,s])}const u=p.useCallback(f=>{if(l){const d=P5(f)?f(e):f;d!==e&&a.current?.(d)}else i(f)},[l,e,i,a]);return[c,u]}function z5({defaultProp:e,onChange:t}){const[n,s]=p.useState(e),o=p.useRef(n),i=p.useRef(t);return R5(()=>{i.current=t},[t]),p.useEffect(()=>{o.current!==n&&(i.current?.(n),o.current=n)},[n,o]),[n,s,i]}function P5(e){return typeof e=="function"}function O5(e,t){return p.useReducer((n,s)=>t[n][s]??n,e)}var jt=e=>{const{present:t,children:n}=e,s=M5(t),o=typeof n=="function"?n({present:s.isPresent}):p.Children.only(n),i=L5(s.ref,D5(o));return typeof n=="function"||s.isPresent?p.cloneElement(o,{ref:i}):null};jt.displayName="Presence";function M5(e){const[t,n]=p.useState(),s=p.useRef(null),o=p.useRef(e),i=p.useRef("none"),a=p.useRef(void 0),l=e?"mounted":"unmounted",[c,u]=O5(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return p.useEffect(()=>{c==="mounted"?(i.current=a.current??Hs(s.current),a.current=void 0):i.current="none"},[c]),Xe(()=>{const f=s.current,d=o.current;if(d!==e){const h=i.current,b=Hs(f);e?(a.current=b,u("MOUNT")):b==="none"||f?.display==="none"?u("UNMOUNT"):u(d&&h!==b?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,u]),Xe(()=>{if(t){let f;const d=t.ownerDocument.defaultView??window,m=b=>{const x=Hs(s.current).includes(CSS.escape(b.animationName));if(b.target===t&&x&&(u("ANIMATION_END"),!o.current)){const v=t.style.animationFillMode;t.style.animationFillMode="forwards",f=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},h=b=>{b.target===t&&(i.current=Hs(s.current))};return t.addEventListener("animationstart",h),t.addEventListener("animationcancel",m),t.addEventListener("animationend",m),()=>{d.clearTimeout(f),t.removeEventListener("animationstart",h),t.removeEventListener("animationcancel",m),t.removeEventListener("animationend",m)}}else u("ANIMATION_END")},[t,u]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:p.useCallback(f=>{if(f){const d=getComputedStyle(f);s.current=d,a.current=Hs(d)}else s.current=null;n(f)},[])}}function vu(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function L5(...e){const t=p.useRef(e);return t.current=e,p.useCallback(n=>{const s=t.current;let o=!1;const i=s.map(a=>{const l=vu(a,n);return!o&&typeof l=="function"&&(o=!0),l});if(o)return()=>{for(let a=0;a<i.length;a++){const l=i[a];typeof l=="function"?l():vu(s[a],null)}}},[])}function Hs(e){return e?.animationName||"none"}function D5(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 $5=Zo[" useId ".trim().toString()]||(()=>{}),F5=0;function qt(e){const[t,n]=p.useState($5());return Xe(()=>{n(s=>s??String(F5++))},[e]),t?`radix-${t}`:""}var ei="Collapsible",[U5]=dn(ei),[B5,Wl]=U5(ei),Up=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:s,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[c,u]=Bn({prop:s,defaultProp:o??!1,onChange:a,caller:ei});return r.jsx(B5,{scope:n,disabled:i,contentId:qt(),open:c,onOpenToggle:p.useCallback(()=>u(f=>!f),[u]),children:r.jsx(ze.div,{"data-state":Vl(c),"data-disabled":i?"":void 0,...l,ref:t})})});Up.displayName=ei;var Bp="CollapsibleTrigger",Wp=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,...s}=e,o=Wl(Bp,n);return r.jsx(ze.button,{type:"button","aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open||!1,"data-state":Vl(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...s,ref:t,onClick:Te(e.onClick,o.onOpenToggle)})});Wp.displayName=Bp;var Hl="CollapsibleContent",Hp=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Wl(Hl,e.__scopeCollapsible);return r.jsx(jt,{present:n||o.open,children:({present:i})=>r.jsx(W5,{...s,ref:t,present:i})})});Hp.displayName=Hl;var W5=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:s,children:o,...i}=e,a=Wl(Hl,n),[l,c]=p.useState(s),u=p.useRef(null),f=De(t,u),d=p.useRef(0),m=d.current,h=p.useRef(0),b=h.current,g=a.open||l,x=p.useRef(g),v=p.useRef(void 0);return p.useEffect(()=>{const y=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(y)},[]),Xe(()=>{const y=u.current;if(y){v.current=v.current||{transitionDuration:y.style.transitionDuration,animationName:y.style.animationName},y.style.transitionDuration="0s",y.style.animationName="none";const _=y.getBoundingClientRect();d.current=_.height,h.current=_.width,x.current||(y.style.transitionDuration=v.current.transitionDuration,y.style.animationName=v.current.animationName),c(s)}},[a.open,s]),r.jsx(ze.div,{"data-state":Vl(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g,...i,ref:f,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":b?`${b}px`:void 0,...e.style},children:g&&o})});function Vl(e){return e?"open":"closed"}var H5=Up,V5=p.createContext(void 0);function ti(e){const t=p.useContext(V5);return e||t||"ltr"}function nt(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>((...n)=>t.current?.(...n)),[])}var Z5="DismissableLayer",Ta="dismissableLayer.update",q5="dismissableLayer.pointerDownOutside",G5="dismissableLayer.focusOutside",yu,Zl=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),ni=p.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:s=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:l,onDismiss:c,...u}=e,f=p.useContext(Zl),[d,m]=p.useState(null),h=d?.ownerDocument??globalThis?.document,[,b]=p.useState({}),g=De(t,m),x=Array.from(f.layers),[v]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=v?x.indexOf(v):-1,_=d?x.indexOf(d):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,S=_>=y,N=p.useRef(!1),T=Q5(L=>{i?.(L),l?.(L),L.defaultPrevented||c?.()},{ownerDocument:h,deferPointerDownOutside:s,isDeferredPointerDownOutsideRef:N,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:p.useCallback(L=>{if(!(L instanceof Node))return!1;const E=[...f.branches].some(D=>D.contains(L));return S&&!E},[f.branches,S])}),A=ej(L=>{if(s&&N.current)return;const E=L.target;[...f.branches].some(w=>w.contains(E))||(a?.(L),l?.(L),L.defaultPrevented||c?.())},h),I=d?_===x.length-1:!1,P=nt(L=>{L.key==="Escape"&&(o?.(L),!L.defaultPrevented&&c&&(L.preventDefault(),c()))});return p.useEffect(()=>{if(I)return h.addEventListener("keydown",P,{capture:!0}),()=>h.removeEventListener("keydown",P,{capture:!0})},[h,I,P]),p.useEffect(()=>{if(d)return n&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(yu=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(d)),f.layers.add(d),wu(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(d),f.layersWithOutsidePointerEventsDisabled.size===0&&(h.body.style.pointerEvents=yu))}},[d,h,n,f]),p.useEffect(()=>()=>{d&&(f.layers.delete(d),f.layersWithOutsidePointerEventsDisabled.delete(d),wu())},[d,f]),p.useEffect(()=>{const L=()=>b({});return document.addEventListener(Ta,L),()=>document.removeEventListener(Ta,L)},[]),r.jsx(ze.div,{...u,ref:g,style:{pointerEvents:j?S?"auto":"none":void 0,...e.style},onFocusCapture:Te(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Te(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Te(e.onPointerDownCapture,T.onPointerDownCapture)})});ni.displayName=Z5;var K5="DismissableLayerBranch",J5=p.forwardRef((e,t)=>{const n=p.useContext(Zl),s=p.useRef(null),o=De(t,s);return p.useEffect(()=>{const i=s.current;if(i)return n.branches.add(i),()=>{n.branches.delete(i)}},[n.branches]),r.jsx(ze.div,{...e,ref:o})});J5.displayName=K5;function Y5(){const e=p.useContext(Zl),[t,n]=p.useState(null);return p.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}var X5=()=>!0;function Q5(e,t){const{ownerDocument:n=globalThis?.document,deferPointerDownOutside:s=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:i,shouldHandlePointerDownOutside:a=X5}=t,l=nt(e),c=p.useRef(!1),u=p.useRef(!1),f=p.useRef(new Map),d=p.useRef(()=>{});return p.useEffect(()=>{function m(){u.current=!1,o.current=!1,f.current.clear()}function h(){return Array.from(f.current.values()).some(Boolean)}function b(_){if(!u.current)return;const j=_.target;j instanceof Node&&[...i].some(N=>N.contains(j))||f.current.set(_.type,!0),_.type==="click"&&window.setTimeout(()=>{u.current&&d.current()},0)}function g(_){u.current&&f.current.set(_.type,!1)}const x=_=>{if(_.target&&!c.current){let j=function(){n.removeEventListener("click",d.current);const N=h();m(),N||Vp(q5,l,S,{discrete:!0})};if(!a(_.target)){n.removeEventListener("click",d.current),m(),c.current=!1;return}const S={originalEvent:_};u.current=!0,o.current=s&&_.button===0,f.current.clear(),!s||_.button!==0?j():(n.removeEventListener("click",d.current),d.current=j,n.addEventListener("click",d.current,{once:!0}))}else n.removeEventListener("click",d.current),m();c.current=!1},v=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const _ of v)n.addEventListener(_,b,!0),n.addEventListener(_,g);const y=window.setTimeout(()=>{n.addEventListener("pointerdown",x)},0);return()=>{window.clearTimeout(y),n.removeEventListener("pointerdown",x),n.removeEventListener("click",d.current);for(const _ of v)n.removeEventListener(_,b,!0),n.removeEventListener(_,g)}},[n,l,s,o,i,a]),{onPointerDownCapture:()=>c.current=!0}}function ej(e,t=globalThis?.document){const n=nt(e),s=p.useRef(!1);return p.useEffect(()=>{const o=i=>{i.target&&!s.current&&Vp(G5,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>s.current=!0,onBlurCapture:()=>s.current=!1}}function wu(){const e=new CustomEvent(Ta);document.dispatchEvent(e)}function Vp(e,t,n,{discrete:s}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),s?T5(o,i):o.dispatchEvent(i)}var Pi="focusScope.autoFocusOnMount",Oi="focusScope.autoFocusOnUnmount",_u={bubbles:!1,cancelable:!0},tj="FocusScope",ql=p.forwardRef((e,t)=>{const{loop:n=!1,trapped:s=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,c]=p.useState(null),u=nt(o),f=nt(i),d=p.useRef(null),m=De(t,c),h=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(s){let g=function(_){if(h.paused||!l)return;const j=_.target;l.contains(j)?d.current=j:xn(d.current,{select:!0})},x=function(_){if(h.paused||!l)return;const j=_.relatedTarget;j!==null&&(l.contains(j)||xn(d.current,{select:!0}))},v=function(_){if(document.activeElement===document.body)for(const S of _)S.removedNodes.length>0&&xn(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",x);const y=new MutationObserver(v);return l&&y.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",x),y.disconnect()}}},[s,l,h.paused]),p.useEffect(()=>{if(l){ju.add(h);const g=document.activeElement;if(!l.contains(g)){const v=new CustomEvent(Pi,_u);l.addEventListener(Pi,u),l.dispatchEvent(v),v.defaultPrevented||(nj(aj(Zp(l)),{select:!0}),document.activeElement===g&&xn(l))}return()=>{l.removeEventListener(Pi,u),setTimeout(()=>{const v=new CustomEvent(Oi,_u);l.addEventListener(Oi,f),l.dispatchEvent(v),v.defaultPrevented||xn(g??document.body,{select:!0}),l.removeEventListener(Oi,f),ju.remove(h)},0)}}},[l,u,f,h]);const b=p.useCallback(g=>{if(!n&&!s||h.paused)return;const x=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,v=document.activeElement;if(x&&v){const y=g.currentTarget,[_,j]=sj(y);_&&j?!g.shiftKey&&v===j?(g.preventDefault(),n&&xn(_,{select:!0})):g.shiftKey&&v===_&&(g.preventDefault(),n&&xn(j,{select:!0})):v===y&&g.preventDefault()}},[n,s,h.paused]);return r.jsx(ze.div,{tabIndex:-1,...a,ref:m,onKeyDown:b})});ql.displayName=tj;function nj(e,{select:t=!1}={}){const n=document.activeElement;for(const s of e)if(xn(s,{select:t}),document.activeElement!==n)return}function sj(e){const t=Zp(e),n=ku(t,e),s=ku(t.reverse(),e);return[n,s]}function Zp(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:s=>{const o=s.tagName==="INPUT"&&s.type==="hidden";return s.disabled||s.hidden||o?NodeFilter.FILTER_SKIP:s.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function ku(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const s of e)if(!(n?!s.checkVisibility({checkVisibilityCSS:!0}):rj(s,{upTo:t})))return s}function rj(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 oj(e){return e instanceof HTMLInputElement&&"select"in e}function xn(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&oj(e)&&t&&e.select()}}var ju=ij();function ij(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=Su(e,t),e.unshift(t)},remove(t){e=Su(e,t),e[0]?.resume()}}}function Su(e,t){const n=[...e],s=n.indexOf(t);return s!==-1&&n.splice(s,1),n}function aj(e){return e.filter(t=>t.tagName!=="A")}var lj="Portal",si=p.forwardRef((e,t)=>{const{container:n,...s}=e,[o,i]=p.useState(!1);Xe(()=>i(!0),[]);const a=n||o&&globalThis?.document?.body;return a?Ms.createPortal(r.jsx(ze.div,{...s,ref:t}),a):null});si.displayName=lj;var Dr=0,ss=null;function qp(){p.useEffect(()=>{ss||(ss={start:Cu(),end:Cu()});const{start:e,end:t}=ss;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),Dr++,()=>{Dr===1&&(ss?.start.remove(),ss?.end.remove(),ss=null),Dr=Math.max(0,Dr-1)}},[])}function Cu(){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 Ht=function(){return Ht=Object.assign||function(t){for(var n,s=1,o=arguments.length;s<o;s++){n=arguments[s];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Ht.apply(this,arguments)};function Gp(e,t){var n={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(n[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,s=Object.getOwnPropertySymbols(e);o<s.length;o++)t.indexOf(s[o])<0&&Object.prototype.propertyIsEnumerable.call(e,s[o])&&(n[s[o]]=e[s[o]]);return n}function cj(e,t,n){if(n||arguments.length===2)for(var s=0,o=t.length,i;s<o;s++)(i||!(s in t))&&(i||(i=Array.prototype.slice.call(t,0,s)),i[s]=t[s]);return e.concat(i||Array.prototype.slice.call(t))}var ao="right-scroll-bar-position",lo="width-before-scroll-bar",uj="with-scroll-bars-hidden",dj="--removed-body-scroll-bar-size";function Mi(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function fj(e,t){var n=p.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(s){var o=n.value;o!==s&&(n.value=s,n.callback(s,o))}}}})[0];return n.callback=t,n.facade}var pj=typeof window<"u"?p.useLayoutEffect:p.useEffect,Nu=new WeakMap;function hj(e,t){var n=fj(null,function(s){return e.forEach(function(o){return Mi(o,s)})});return pj(function(){var s=Nu.get(n);if(s){var o=new Set(s),i=new Set(e),a=n.current;o.forEach(function(l){i.has(l)||Mi(l,null)}),i.forEach(function(l){o.has(l)||Mi(l,a)})}Nu.set(n,e)},[e]),n}function mj(e){return e}function gj(e,t){t===void 0&&(t=mj);var n=[],s=!1,o={read:function(){if(s)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,s);return n.push(a),function(){n=n.filter(function(l){return l!==a})}},assignSyncMedium:function(i){for(s=!0;n.length;){var a=n;n=[],a.forEach(i)}n={push:function(l){return i(l)},filter:function(){return n}}},assignMedium:function(i){s=!0;var a=[];if(n.length){var l=n;n=[],l.forEach(i),a=n}var c=function(){var f=a;a=[],f.forEach(i)},u=function(){return Promise.resolve().then(c)};u(),n={push:function(f){a.push(f),u()},filter:function(f){return a=a.filter(f),n}}}};return o}function xj(e){e===void 0&&(e={});var t=gj(null);return t.options=Ht({async:!0,ssr:!1},e),t}var Kp=function(e){var t=e.sideCar,n=Gp(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var s=t.read();if(!s)throw new Error("Sidecar medium not found");return p.createElement(s,Ht({},n))};Kp.isSideCarExport=!0;function bj(e,t){return e.useMedium(t),Kp}var Jp=xj(),Li=function(){},ri=p.forwardRef(function(e,t){var n=p.useRef(null),s=p.useState({onScrollCapture:Li,onWheelCapture:Li,onTouchMoveCapture:Li}),o=s[0],i=s[1],a=e.forwardProps,l=e.children,c=e.className,u=e.removeScrollBar,f=e.enabled,d=e.shards,m=e.sideCar,h=e.noRelative,b=e.noIsolation,g=e.inert,x=e.allowPinchZoom,v=e.as,y=v===void 0?"div":v,_=e.gapMode,j=Gp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=m,N=hj([n,t]),T=Ht(Ht({},j),o);return p.createElement(p.Fragment,null,f&&p.createElement(S,{sideCar:Jp,removeScrollBar:u,shards:d,noRelative:h,noIsolation:b,inert:g,setCallbacks:i,allowPinchZoom:!!x,lockRef:n,gapMode:_}),a?p.cloneElement(p.Children.only(l),Ht(Ht({},T),{ref:N})):p.createElement(y,Ht({},T,{className:c,ref:N}),l))});ri.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};ri.classNames={fullWidth:lo,zeroRight:ao};var vj=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function yj(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=vj();return t&&e.setAttribute("nonce",t),e}function wj(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _j(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var kj=function(){var e=0,t=null;return{add:function(n){e==0&&(t=yj())&&(wj(t,n),_j(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},jj=function(){var e=kj();return function(t,n){p.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Yp=function(){var e=jj(),t=function(n){var s=n.styles,o=n.dynamic;return e(s,o),null};return t},Sj={left:0,top:0,right:0,gap:0},Di=function(e){return parseInt(e||"",10)||0},Cj=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],s=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Di(n),Di(s),Di(o)]},Nj=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Sj;var t=Cj(e),n=document.documentElement.clientWidth,s=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,s-n+t[2]-t[0])}},Tj=Yp(),bs="data-scroll-locked",Ej=function(e,t,n,s){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),`
|
|
67
67
|
.`.concat(uj,` {
|
|
68
68
|
overflow: hidden `).concat(s,`;
|
|
69
69
|
padding-right: `).concat(l,"px ").concat(s,`;
|
|
@@ -113,7 +113,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
113
113
|
`)}function Zi(e,t,n,s){return{role:e,label:t,text:n,size:xc(n),characters:bc(n),path:s}}const w4={format:"anthropic",analyzeRequest(e){if(e===null)return Un(e);try{const t=JSON.parse(e),n=yc(t)?.tools.length??null,s=Ff.safeParse(t);return s.success?{parsed:s.data,comparisonValue:s.data,messageCount:s.data.messages.length,toolCount:n}:Un(e)}catch{return Un(e)}},analyzeResponse(e){if(e===null)return ys;try{let t=JSON.parse(e);typeof t=="string"&&(t=JSON.parse(t));const n=Uf.safeParse(t);if(!n.success)return ys;const s=n.data.content.filter(o=>o.type==="tool_use").map(o=>o.name);return{parsed:n.data,toolNames:s.length>0?s:null}}catch{return ys}},anatomySegments(e){if(e===null||typeof e!="object")return null;const t=e,n=[];if(t.system!==void 0){const s=v4(t.system);s.length>0&&n.push(Zi("system","system",s,"/system"))}if(Array.isArray(t.messages)&&t.messages.forEach((s,o)=>{if(s===null||typeof s!="object")return;const i=s,a=i.role==="user"||i.role==="assistant"?i.role:"user",l=b4(i.content);n.push(Zi(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.tools)&&t.tools.length>0){const s=y4(t.tools);n.push(Zi("tools","tools",s,"/tools"))}return n.length>0?n:null}};function Va(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 s=n,o=s.type;(o==="text"||o==="input_text"||o==="output_text")&&typeof s.text=="string"?t.push(s.text):(o==="image_url"||o==="input_image")&&t.push("[image]")}return t.join(`
|
|
114
114
|
`)}function _4(e){const t=[],n=Va(e.content);n.length>0&&t.push(n);const s=typeof e.reasoning_content=="string"?e.reasoning_content:typeof e.thinking=="string"?e.thinking:typeof e.think=="string"?e.think:"";s.length>0&&t.push(s);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(`
|
|
115
115
|
`)}function k4(e){if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const s=ke(n,"function"),o=ke(s,"name")??ke(n,"name"),i=ke(s,"description")??ke(n,"description"),a=ke(s,"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(`
|
|
116
|
-
`)}function j4(e){return typeof e=="string"?e.length>0?1:0:Array.isArray(e)?e.length:e==null?null:1}function S4(e){if(typeof e=="string")return e;const t=ke(e,"text");if(typeof t=="string")return t;const n=Va(ke(e,"content"));if(n.length>0)return n;const s=Va(ke(e,"output"));if(s.length>0)return s;const o=ke(e,"arguments");return typeof o=="string"?o:""}function C4(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 N4(e){const t=ke(e,"output");if(!Array.isArray(t))return[];const n=[];for(const s of t){if(ke(s,"type")!=="function_call")continue;const o=ke(s,"name");typeof o=="string"&&o.length>0&&n.push(o)}return n}function Zs(e,t,n,s){return{role:e,label:t,text:n,size:xc(n),characters:bc(n),path:s}}const T4={format:"openai",analyzeRequest(e){if(e===null)return Un(e);try{const t=JSON.parse(e),n=yc(t)?.tools.length??null,s=Hf.safeParse(t);if(!s.success){const o=Vf.safeParse(t);return o.success?{parsed:o.data,comparisonValue:o.data,messageCount:j4(o.data.input),toolCount:n}:Un(e)}return{parsed:s.data,comparisonValue:s.data,messageCount:s.data.messages.length,toolCount:n}}catch{return Un(e)}},analyzeResponse(e){if(e===null)return ys;const t=qf(e);if(t===null){const s=Gf(e);if(s===null)return ys;const o=N4(s);return{parsed:s,toolNames:o.length>0?o:null}}const n=t.choices[0]?.message?.tool_calls?.map(s=>s.function?.name??"").filter(s=>s!=="")??[];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(Zs("system","instructions",t.instructions,"/instructions")),Array.isArray(t.messages)&&t.messages.forEach((s,o)=>{if(s===null||typeof s!="object")return;const i=s,a=i.role==="user"||i.role==="assistant"||i.role==="system"||i.role==="tool"?i.role:"user",l=_4(i);n.push(Zs(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.messages)||(typeof t.input=="string"&&t.input.length>0?n.push(Zs("user","input",t.input,"/input")):Array.isArray(t.input)&&t.input.forEach((s,o)=>{const i=C4(s),a=S4(s);n.push(Zs(i,`[${o}] ${i}`,a,`/input/${o}`))})),Array.isArray(t.tools)&&t.tools.length>0){const s=k4(t.tools);n.push(Zs("tools","tools",s,"/tools"))}return n.length>0?n:null}},E4={format:"unknown",analyzeRequest(e){return Un(e)},analyzeResponse(){return ys},anatomySegments(){return null}},A4={anthropic:w4,openai:T4,unknown:E4};function m0(e){return A4[e]}function dr(e){const t=P3(e.path);return t==="unknown"?e.apiFormat:t}const Ku="bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground";function qi({icon:e,children:t,title:n,className:s}){return r.jsxs("span",{className:ae("bg-white/[0.045] inline-flex h-7 min-w-0 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground",s),title:n,children:[e,r.jsx("span",{className:"min-w-0 font-mono tabular-nums",children:t})]})}function I4(){return r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1.5 rounded-md bg-amber-300/[0.10] px-1.5 font-mono text-[10px] uppercase tracking-[0.14em] text-amber-100/90 ring-1 ring-amber-200/10",title:"This session has a turn that has not finished yet",children:[r.jsx(Qe,{className:"size-3 animate-spin"}),"Turn open"]})}function R4({conversationId:e,startTime:t,endTime:n,totalCalls:s,totalInputTokens:o,totalOutputTokens:i,expanded:a,onToggle:l,providers:c,isLoading:u=!1,userAgent:f,clientPid:d,clientProjectFolder:m,showClientIdentity:h=!0,showProcessMetadata:b=!0,timeDisplayFormat:g,onClear:x}){const[v,y]=p.useState(!1),_=$=>{$.stopPropagation(),x!==void 0&&y(!0)},j=p.useCallback($=>{$.stopPropagation(),window.open(nf(e),"_blank","noopener,noreferrer")},[e]),S=c?.map(({provider:$,models:ee})=>({provider:$,tooltip:ee.length===1?ee[0]??$:ee.join(", ")}))??[],N=hc({userAgent:f,conversationId:e,clientProjectFolder:m}),T=wi(N),A=f!=null&&f!=="",I=T??f??null,P=T!==null&&A?`${T} - ${f}`:null,L=e.startsWith("PID:")||e.includes("|"),E=e.length>24?e.slice(0,12)+"..."+e.slice(-12):e,D=Dl(t,n,g),w=`${s} call${s!==1?"s":""}`;return r.jsxs("div",{role:"button",tabIndex:0,"data-nav-id":`conv-${e}`,"data-nav-action":a?"collapse":"expand",className:ae("bg-card/80 shadow-sm relative flex cursor-pointer items-start gap-3 overflow-hidden rounded-[8px] px-3 py-2.5 transition-colors","hover:bg-card","select-none","sticky top-0 z-10 mb-2","focus-visible:ring-1 focus-visible:ring-cyan-300/35 focus-visible:outline-none"),onClick:l,onKeyDown:$=>{$.target===$.currentTarget&&($.key==="Enter"||$.key===" ")&&($.preventDefault(),l())},children:[r.jsx(N3,{items:S,ariaLabel:"Models used in this session",className:"mt-0.5"}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[L&&b?d!=null?r.jsxs("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:`PID ${d}`,children:["PID ",d]}):r.jsx("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:e,children:e}):r.jsx("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:e,children:L?"sessionless":E}),!L&&b&&d!==null&&d!==void 0&&r.jsxs("span",{className:"bg-white/[0.045] shrink-0 rounded px-1.5 py-0.5 font-mono text-xs tabular-nums text-muted-foreground",title:`Client process ID ${d}`,children:["PID ",d]}),L&&b&&m!==null&&m!==void 0&&m!==""&&r.jsx("span",{className:"min-w-0 max-w-[240px] truncate font-mono text-xs text-muted-foreground",title:m,children:m}),h&&I!==null&&I!==""&&r.jsxs("span",{className:"bg-white/[0.045] inline-flex min-h-6 shrink-0 flex-wrap items-center gap-1 rounded-md px-1.5 py-0.5 text-xs text-muted-foreground",title:P??I,children:[r.jsx(_i,{client:N,className:"size-4 shrink-0"}),r.jsx("span",{className:"font-mono leading-snug tabular-nums",children:I})]}),u&&r.jsx(I4,{})]}),r.jsxs("span",{className:"mt-1.5 flex min-w-0 flex-wrap items-center gap-1.5",children:[r.jsx(qi,{icon:r.jsx(sn,{className:"size-3 shrink-0"}),title:D,children:D}),r.jsx(qi,{icon:r.jsx(Qo,{className:"size-3 shrink-0"}),children:w}),r.jsxs(qi,{icon:r.jsx(lr,{className:"size-3 shrink-0"}),className:"max-w-full",children:[r.jsx("span",{className:"text-blue-400",children:Fe(o)})," / ",r.jsx("span",{className:"text-amber-400",children:Fe(i)})]})]})]}),r.jsxs("span",{className:"flex shrink-0 items-start gap-1.5",children:[r.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:Ku,children:r.jsx(Pl,{className:"size-3.5"})}),x!==void 0&&r.jsx("button",{type:"button",onClick:_,"aria-label":`Clear group (${s} request${s!==1?"s":""})`,title:"Clear this group from the current view",className:Ku,children:r.jsx(wn,{className:"size-3.5"})}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:a?r.jsx(it,{className:"size-4 shrink-0"}):u?r.jsx(Qe,{className:"size-4 shrink-0 animate-spin"}):r.jsx(Et,{className:"size-4 shrink-0"})})]}),u&&r.jsx("span",{className:"pointer-events-none absolute inset-x-3 bottom-0 h-px overflow-hidden rounded-full bg-white/[0.06]","aria-hidden":"true",children:r.jsx("span",{className:"absolute inset-y-0 left-0 w-1/3 animate-pulse rounded-full bg-amber-200/65 shadow-[0_0_14px_rgba(252,211,77,0.32)]"})}),r.jsx(r0,{open:v,onOpenChange:y,title:"Clear this group from the current view?",description:`This will hide ${s} request${s!==1?"s":""} from the current view. Stored logs remain reloadable.`,confirmLabel:"Clear",variant:"destructive",onConfirm:()=>{x?.()}})]})}function z4(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 s=t?`PID:${e.clientPid}`:"unknown",o=n?e.clientProjectFolder:"no-folder";return`${s}|${o}`}function P4(e){const t=new Map;for(const s of e){const o=z4(s),i=t.get(o);i!==void 0?i.push(s):t.set(o,[s])}const n=[];for(const[s,o]of t){const i=[...o].sort((a,l)=>a.timestamp.localeCompare(l.timestamp));n.push({id:s,conversationId:s,logs:i})}return n.sort((s,o)=>(s.logs[0]?.timestamp??"").localeCompare(o.logs[0]?.timestamp??"")),n}function O4(e,t,n){const s=new Array(e);return new Proxy(s,{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 f=t[c*2];u=o[c]={index:c,key:n(c),start:f,size:t[c*2+1],end:f+t[c*2+1],lane:0}}return u}}if(i==="length")return e}return Reflect.get(o,i,a)}})}function ls(e,t,n){let s=n.initialDeps??[],o,i=!0;function a(){const l=e();return(l.length!==s.length||l.some((u,f)=>s[f]!==u))&&(s=l,o=t(...l),n?.onChange&&!(i&&n.skipInitialOnChange)&&n.onChange(o),i=!1),o}return a.updateDeps=l=>{s=l},a}function Ju(e,t){if(e===void 0)throw new Error("Unexpected undefined");return e}const M4=(e,t)=>Math.abs(e-t)<1.01,L4=(e,t,n)=>{let s;return function(...o){e.clearTimeout(s),s=e.setTimeout(()=>t.apply(this,o),n)}};let qs;const Gi=()=>{if(qs!==void 0)return qs;if(typeof navigator>"u")return qs=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return qs=!0;const e=navigator.maxTouchPoints;return qs=navigator.platform==="MacIntel"&&e!==void 0&&e>0},Yu=e=>{const{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},D4=e=>e,$4=e=>{const t=Math.max(e.startIndex-e.overscan,0),s=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,o=new Array(s);for(let i=0;i<s;i++)o[i]=t+i;return o},F4=(e,t)=>{const n=e.scrollElement;if(!n)return;const s=e.targetWindow;if(!s)return;const o=a=>{const{width:l,height:c}=a;t({width:Math.round(l),height:Math.round(c)})};if(o(Yu(n)),!s.ResizeObserver)return()=>{};const i=new s.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(Yu(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()});return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},fr={passive:!0},U4=(e,t)=>{const n=e.scrollElement;if(!n)return;const s=()=>{t({width:n.innerWidth,height:n.innerHeight})};return s(),n.addEventListener("resize",s,fr),()=>{n.removeEventListener("resize",s)}},B4=typeof window>"u"?!0:"onscrollend"in window,g0=(e,t,n)=>{const s=e.scrollElement;if(!s)return;const o=e.targetWindow;if(!o)return;const i=e.options.useScrollendEvent&&B4;let a=0;const l=i?null:L4(o,()=>t(a,!1),e.options.isScrollingResetDelay),c=d=>()=>{a=n(s),l?.(),t(a,d)},u=c(!0),f=c(!1);return s.addEventListener("scroll",u,fr),i&&s.addEventListener("scrollend",f,fr),()=>{s.removeEventListener("scroll",u),i&&s.removeEventListener("scrollend",f)}},W4=(e,t)=>g0(e,t,n=>{const{horizontal:s,isRtl:o}=e.options;return s?n.scrollLeft*(o&&-1||1):n.scrollTop}),H4=(e,t)=>g0(e,t,n=>e.options.horizontal?n.scrollX:n.scrollY),V4=(e,t,n)=>{if(n.options.useCachedMeasurements){const s=n.indexFromElement(e),o=n.options.getItemKey(s);return n.itemSizeCache.get(o)??n.options.estimateSize(s)}if(t?.borderBoxSize){const s=t.borderBoxSize[0];if(s)return Math.round(s[n.options.horizontal?"inlineSize":"blockSize"])}if(!t){const s=n.indexFromElement(e),o=n.options.getItemKey(s),i=n.itemSizeCache.get(o);if(i!==void 0)return i}return e[n.options.horizontal?"offsetWidth":"offsetHeight"]},x0=(e,{adjustments:t=0,behavior:n},s)=>{var o,i;(i=(o=s.scrollElement)==null?void 0:o.scrollTo)==null||i.call(o,{[s.options.horizontal?"left":"top"]:e+t,behavior:n})},Z4=x0,q4=x0;class G4{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,s,o;return((o=(s=(n=this.targetWindow)==null?void 0:n.performance)==null?void 0:s.now)==null?void 0:o.call(s))??Date.now()},this.observer=(()=>{let n=null;const s=()=>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,f]of this.elementsCache)if(f===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=s())==null||o.disconnect(),n=null},observe:o=>{var i;return(i=s())==null?void 0:i.observe(o,{box:"border-box"})},unobserve:o=>{var i;return(i=s())==null?void 0:i.unobserve(o)}}})(),this.range=null,this.setOptions=n=>{var s,o;const i={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:D4,rangeExtractor:$4,onChange:()=>{},measureElement:V4,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",useCachedMeasurements:!1};for(const m in n){const h=n[m];h!==void 0&&(i[m]=h)}const a=this.options;let l=null,c=null,u=!1;if(a!==void 0&&a.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){const m=a.count,h=i.count,b=this.getMeasurements(),g=m>0?((s=b[0])==null?void 0:s.key)??a.getItemKey(0):null,x=m>0?((o=b[m-1])==null?void 0:o.key)??a.getItemKey(m-1):null;if(h!==m||m>0&&h>0&&(i.getItemKey(0)!==g||i.getItemKey(h-1)!==x)){u=!0;const _=m>0?this.getVirtualItemForOffset(this.getScrollOffset())??b[0]:null;_&&(l=[_.key,this.getScrollOffset()-_.start]);const j=i.followOnAppend===!0?"auto":i.followOnAppend||null;j&&h>m&&this.isAtEnd(a.scrollEndThreshold)&&(m===0||i.getItemKey(h-1)!==x)&&(c=j)}}this.options=i,u&&(this.pendingMin=0,this.itemSizeCacheVersion++);let f=!1,d=0;if(l&&this.scrollOffset!==null){const[m,h]=l,b=this.getMeasurements(),{count:g,getItemKey:x}=this.options;let v=0;for(;v<g&&x(v)!==m;)v++;if(v<g){const y=b[v];if(y){const _=y.start+h;_!==this.scrollOffset&&(d=_-this.scrollOffset,this.scrollOffset=_,f=!0)}}}(f||c)&&(this.pendingScrollAnchor=[f?l[0]:null,f?l[1]:0,c,d])},this.notify=n=>{var s,o;(o=(s=this.options).onChange)==null||o.call(s,this,n)},this.maybeNotify=ls(()=>(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 s=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==s){if(this.cleanup(),!s){this.maybeNotify();return}if(this.scrollElement=s,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)=>{if(a&&this._intendedScrollOffset===null&&i===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5&&(i=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;const l=this.getScrollOffset();this.scrollDirection=a?l===i?this.scrollDirection:l<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,!(!Gi()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};i.addEventListener("touchstart",a,fr),i.addEventListener("touchend",l,fr),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,c]=o;i!==null&&!l&&(Gi()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?c!==0&&(this._iosDeferredAdjustment+=c):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),l&&this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const n=this.getScrollOffset(),s=this.getMaxScrollOffset();if(n<0||n>s)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,s)=>{const o=new Map,i=new Map;for(let a=s-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=ls(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(n,s,o,i,a,l,c)=>(this.prevLanes!==void 0&&this.prevLanes!==l&&(this.lanesChangedFlag=!0),this.prevLanes=l,this.pendingMin=null,{count:n,paddingStart:s,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c}),{key:!1}),this.getMeasurements=ls(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:n,paddingStart:s,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c},u)=>{const f=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n)for(const b of this.laneAssignments.keys())b>=n&&this.laneAssignments.delete(b);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(b=>{this.itemSizeCache.set(b.key,b.size)}));const d=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n&&(this.lanesSettling=!1),l===1){const b=this.options.gap,g=n*2;let x=this._flatMeasurements;if(!x||x.length<g){const _=new Float64Array(g);x&&d>0&&_.set(x.subarray(0,d*2)),x=_,this._flatMeasurements=x}let v;if(d===0)v=s+o;else{const _=d-1;v=x[_*2]+x[_*2+1]+b}for(let _=d;_<n;_++){const j=i(_),S=f.get(j),N=typeof S=="number"?S:this.options.estimateSize(_);x[_*2]=v,x[_*2+1]=N,v+=N+b}const y=O4(n,x,i);return this.measurementsCache=y,y}const m=this.measurementsCache.slice(0,d),h=new Array(l).fill(void 0);for(let b=0;b<d;b++){const g=m[b];g&&(h[g.lane]=b)}for(let b=d;b<n;b++){const g=i(b),x=this.laneAssignments.get(b);let v,y;const _=c==="estimate"||f.has(g);if(x!==void 0&&this.options.lanes>1){v=x;const T=h[v],A=T!==void 0?m[T]:void 0;y=A?A.end+this.options.gap:s+o}else{const T=this.options.lanes===1?m[b-1]:this.getFurthestMeasurement(m,b);y=T?T.end+this.options.gap:s+o,v=T?T.lane:b%this.options.lanes,this.options.lanes>1&&_&&this.laneAssignments.set(b,v)}const j=f.get(g),S=typeof j=="number"?j:this.options.estimateSize(b),N=y+S;m[b]={index:b,start:y,size:S,end:N,key:g,lane:v},h[v]=b}return this.measurementsCache=m,m},{key:!1,debug:()=>this.options.debug}),this.calculateRange=ls(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,s,o,i)=>n.length===0||s===0?(this.range=null,null):(this.range=J4(n,s,o,i,i===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ls(()=>{let n=null,s=null;const o=this.calculateRange();return o&&(n=o.startIndex,s=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,n,s]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,s]},(n,s,o,i,a)=>i===null||a===null?[]:n({startIndex:i,endIndex:a,overscan:s,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=n=>{const s=this.options.indexAttribute,o=n.getAttribute(s);return o?parseInt(o,10):(console.warn(`Missing attribute name '${s}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=n=>{var s;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const o=this.scrollState.index??((s=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:s.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 s=this.indexFromElement(n),o=this.options.getItemKey(s),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(s)&&this.resizeItem(s,this.options.measureElement(n,void 0,this))},this.resizeItem=(n,s)=>{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 f=this.itemSizeCache.get(c)??a,d=s-f;if(d!==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,b=((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},d,this):l<this.getScrollOffset()+this.scrollAdjustments&&(!this.itemSizeCache.has(c)||this.scrollDirection!=="backward"));(this.pendingMin===null||n<this.pendingMin)&&(this.pendingMin=n),this.itemSizeCache.set(c,s),this.itemSizeCacheVersion++,m?this.applyScrollAdjustment(this.getTotalSize()-h):b&&this.applyScrollAdjustment(d),this.notify(!1)}},this.getVirtualItems=ls(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,s)=>{const o=[];for(let i=0,a=n.length;i<a;i++){const l=n[i],c=s[l];o.push(c)}return o},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=n=>{const s=this.getMeasurements();if(s.length===0)return;const o=this._flatMeasurements,i=this.options.lanes===1&&o!=null,a=b0(0,s.length-1,i?l=>o[l*2]:l=>Ju(s[l]).start,n);return Ju(s[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,s,o=0)=>{if(!this.scrollElement)return 0;const i=this.getSize(),a=this.getScrollOffset();s==="auto"&&(s=n>=a+i?"end":"start"),s==="center"?n+=(o-i)/2:s==="end"&&(n-=i);const l=this.getMaxScrollOffset();return Math.max(Math.min(l,n),0)},this.getOffsetForIndex=(n,s="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(s==="auto")if(a.end>=i+o-this.options.scrollPaddingEnd)s="end";else if(a.start<=i+this.options.scrollPaddingStart)s="start";else return[i,s];if(s==="end"&&n===this.options.count-1)return[this.getMaxScrollOffset(),s];const l=s==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,s,a.size),s]},this.scrollToOffset=(n,{align:s="start",behavior:o="auto"}={})=>{const i=this.getOffsetForAlignment(n,s),a=this.now();this.scrollState={index:null,align:s,behavior:o,startedAt:a,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollToIndex=(n,{align:s="auto",behavior:o="auto"}={})=>{n=Math.max(0,Math.min(n,this.options.count-1));const i=this.getOffsetForIndex(n,s);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:s="auto"}={})=>{const o=this.getScrollOffset()+n,i=this.now();this.scrollState={index:null,align:"start",behavior:s,startedAt:i,lastTargetOffset:o,stableFrames:0},this._scrollToOffset(o,{adjustments:void 0,behavior:s}),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 s=this.getMeasurements();let o;if(s.length===0)o=this.options.paddingStart;else if(this.options.lanes===1){const i=s.length-1,a=this._flatMeasurements;a!=null?o=a[i*2]+a[i*2+1]:o=((n=s[i])==null?void 0:n.end)??0}else{const i=Array(this.options.lanes).fill(null);let a=s.length-1;for(;a>=0&&i.some(l=>l===null);){const l=s[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 s=this.getMeasurements();for(const o of s)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:s,behavior:o})=>{this._intendedScrollOffset=n+(s??0),this.options.scrollToFn(n,{behavior:o,adjustments:s},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&&(Gi()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:n}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollAdjustments=0)))}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 s=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,o=s?s[0]:this.scrollState.lastTargetOffset,i=1,a=o!==this.scrollState.lastTargetOffset;if(!a&&M4(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 b0=(e,t,n,s)=>{for(;e<=t;){const o=(e+t)/2|0,i=n(o);if(i<s)e=o+1;else if(i>s)t=o-1;else return o}return e>0?e-1:0};function K4(e,t,n){let s=0;for(;s<=t;){const o=(s+t)/2|0,i=e[o*2];if(i<n)s=o+1;else if(i>n)t=o-1;else return o}return s>0?s-1:0}function J4(e,t,n,s,o){const i=e.length-1;if(e.length<=s)return{startIndex:0,endIndex:i};if(s===1&&o!==null){const u=K4(o,i,n);let f=u;const d=n+t;for(;f<i&&o[f*2]+o[f*2+1]<d;)f++;return{startIndex:u,endIndex:f}}let l=b0(0,i,u=>e[u].start,n),c=l;if(s===1)for(;c<i&&e[c].end<n+t;)c++;else if(s>1){const u=Array(s).fill(0);for(;c<i&&u.some(d=>d<n+t);){const d=e[c];u[d.lane]=d.end,c++}const f=Array(s).fill(n+t);for(;l>=0&&f.some(d=>d>=n);){const d=e[l];f[d.lane]=d.start,l--}l=Math.max(0,l-l%s),c=Math.min(i,c+(s-1-c%s))}return{startIndex:l,endIndex:c}}const Ki=typeof document<"u"?p.useLayoutEffect:p.useEffect;function v0({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n="transform",...s}){const o=p.useReducer(u=>u+1,0)[1],i=p.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});i.current.enabled=t,i.current.mode=n;const a=u=>{const f=i.current;if(!f.enabled||!f.container)return;const d=u.getTotalSize();if(d!==f.lastSize){f.lastSize=d;const v=u.options.horizontal?"width":"height";f.container.style[v]=`${d}px`}const m=!!u.options.horizontal,h=f.mode==="transform",b=m?"left":"top",g=u.options.scrollMargin,x=u.getVirtualItems();for(const v of x){const y=v.start-g,_=u.elementsCache.get(v.key);_&&f.lastPositions.get(_)!==y&&(f.lastPositions.set(_,y),h?_.style.transform=m?`translate3d(${y}px, 0, 0)`:`translate3d(0, ${y}px, 0)`:_.style[b]=`${y}px`)}},l={...s,onChange:(u,f)=>{var d;const m=i.current;let h=!0;if(m.enabled){a(u);const b=u.range,g=m.prevRange;h=!g||g.isScrolling!==u.isScrolling||g.startIndex!==b?.startIndex||g.endIndex!==b?.endIndex,h&&(m.prevRange=b?{startIndex:b.startIndex,endIndex:b.endIndex,isScrolling:u.isScrolling}:null)}h&&(e&&f?Ms.flushSync(o):o()),(d=s.onChange)==null||d.call(s,u,f)}},[c]=p.useState(()=>{const u=new G4(l);return Object.assign(u,{containerRef:f=>{const d=i.current;if(d.container=f,d.lastSize=null,f&&d.enabled){const m=u.getTotalSize();d.lastSize=m;const h=u.options.horizontal?"width":"height";f.style[h]=`${m}px`}}})});return c.setOptions(l),Ki(()=>c._didMount(),[]),Ki(()=>c._willUpdate()),Ki(()=>{a(c)}),c}function Y4(e){return v0({observeElementRect:F4,observeElementOffset:W4,scrollToFn:q4,...e})}function X4(e){return v0({getScrollElement:()=>typeof document<"u"?window:null,observeElementRect:U4,observeElementOffset:H4,scrollToFn:Z4,initialOffset:()=>typeof document<"u"?window.scrollY:0,...e})}const un="agent-inspector:focus-log";function pr(e){window.dispatchEvent(new CustomEvent(un,{detail:e}))}function Si(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 s=ke(t,"tab");switch(s){case"anatomy":case"request":case"response":break;case void 0:break;default:return null}const o=ke(t,"source"),i=ke(t,"toolCallIndex"),a=typeof i=="number"&&Number.isInteger(i)&&i>=0?{logId:n,tab:s??"request",toolCallIndex:i}:{logId:n,tab:s??"request"};switch(o){case"virtualizer":return{...a,source:o};case void 0:return a;default:return null}}function zt({className:e,style:t,d:n,eyeStalks:s,eyes:o,legs:i,extras:a}){return r.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:t,className:ae("inline-block size-5",e),children:[r.jsx("path",{d:n}),s,o,i,a]})}const Rn=r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"6.5",y1:"16",x2:"4.5",y2:"19.5"}),r.jsx("line",{x1:"9",y1:"17.5",x2:"8",y2:"20.5"}),r.jsx("line",{x1:"15",y1:"17.5",x2:"16",y2:"20.5"}),r.jsx("line",{x1:"17.5",y1:"16",x2:"19.5",y2:"19.5"})]}),y0=r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"16",x2:"5.5",y2:"18.5"}),r.jsx("line",{x1:"9.5",y1:"17",x2:"8.5",y2:"19.5"}),r.jsx("line",{x1:"14.5",y1:"17",x2:"15.5",y2:"19.5"}),r.jsx("line",{x1:"17",y1:"16",x2:"18.5",y2:"18.5"})]});function w0({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 Q4({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9.5",y1:"6.5",x2:"9.5",y2:"4.5"}),r.jsx("line",{x1:"14.5",y1:"6.5",x2:"14.5",y2:"4.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"})]}),legs:y0,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C4 9.5 2.5 10 3 12 C3.5 13.5 4.5 13 5 12"}),r.jsx("path",{d:"M19 11 C20 9.5 21.5 10 21 12 C20.5 13.5 19.5 13 19 12"})]})})}function eT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"7",x2:"6.5",y2:"4.5"}),r.jsx("line",{x1:"17",y1:"7",x2:"17.5",y2:"4.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"6.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"17.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M4 12 C2.5 10.5 1 11 1.5 13 C2 14.5 3.5 14 4.5 13"}),r.jsx("path",{d:"M20 12 C21.5 10.5 23 11 22.5 13 C22 14.5 20.5 14 19.5 13"})]})})}function tT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"6.5",x2:"10",y2:"3.5"}),r.jsx("line",{x1:"14",y1:"6.5",x2:"14",y2:"3.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"10",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"17",x2:"5",y2:"20.5"}),r.jsx("line",{x1:"9.5",y1:"18.5",x2:"8.5",y2:"21.5"}),r.jsx("line",{x1:"14.5",y1:"18.5",x2:"15.5",y2:"21.5"}),r.jsx("line",{x1:"17",y1:"17",x2:"19",y2:"20.5"})]}),extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M6.5 11 C5 8.5 3 9 3.5 11.5 C4 13.5 5 13 6 12"}),r.jsx("path",{d:"M17.5 11 C19 8.5 21 9 20.5 11.5 C20 13.5 19 13 18 12"})]})})}function nT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 sT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("line",{x1:"13.5",y1:"4",x2:"15.5",y2:"5"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 rT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"8",x2:"10",y2:"6"}),r.jsx("line",{x1:"14",y1:"8",x2:"14",y2:"6"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9",y1:"6",x2:"11",y2:"6.5"}),r.jsx("line",{x1:"13",y1:"6",x2:"15",y2:"6.5"})]}),legs:y0,extras:r.jsxs(r.Fragment,{children:[r.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"}),r.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 oT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("line",{x1:"8.5",y1:"4",x2:"10.5",y2:"4.5"}),r.jsx("line",{x1:"15.5",y1:"4",x2:"13.5",y2:"4.5"}),r.jsx("path",{d:"M9 15.5 C10 14.5 14 14.5 15 15.5"})]})})}function iT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("ellipse",{cx:"12",cy:"15",rx:"2",ry:"1.5",fill:"currentColor",stroke:"none"})]})})}function aT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9.5",y1:"7",x2:"9",y2:"5"}),r.jsx("line",{x1:"14.5",y1:"7",x2:"15",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"15",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9 2 9.5 2.5 12 C3 14 4 13 5 12"}),r.jsx("path",{d:"M19 11 C20.5 9 22 9.5 21.5 12 C21 14 20 13 19 12"}),r.jsx("path",{d:"M9 14.5 C10 16 14 16 15 14.5"}),r.jsx("circle",{cx:"7",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"}),r.jsx("circle",{cx:"17",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"})]})})}function lT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5.5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7.5",y1:"5.5",x2:"16.5",y2:"5.5"}),r.jsx("rect",{x:"7",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"}),r.jsx("rect",{x:"13",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("path",{d:"M9.5 15 C10.5 16 13.5 16 14.5 15"})]})})}function cT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10.5",y1:"9.5",x2:"10.5",y2:"8"}),r.jsx("line",{x1:"13.5",y1:"9.5",x2:"13.5",y2:"8"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"10.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"13.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"8",y1:"16",x2:"6.5",y2:"18"}),r.jsx("line",{x1:"10",y1:"17",x2:"9.5",y2:"19"}),r.jsx("line",{x1:"14",y1:"17",x2:"14.5",y2:"19"}),r.jsx("line",{x1:"16",y1:"16",x2:"17.5",y2:"18"})]}),extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M7.5 12 C6.5 11 5.5 11.5 6 13 C6.5 14 7 13.5 7.5 13"}),r.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 hr=[w0,Q4,eT,tT,nT,sT,rT,oT,iT,aT,lT,cT];function wc(e){return hr[Math.abs(e)%hr.length]??w0}function uT(e){const t=hr.length-2;return t<=0?0:1+((Number.isFinite(e)?Math.trunc(e):0)%t+t)%t}function dT(e){return wc(uT(e))}const fT="x-anthropic-billing-header:";function pT(e){return e.trimStart().toLowerCase().startsWith(fT)}function hT(e){return vc(e)?Object.prototype.hasOwnProperty.call(e,"system"):!1}function mT(e){if(!vc(e))return!1;const t=ke(e,"type"),n=ke(e,"text");return typeof t!="string"||t!=="text"||typeof n!="string"?!1:pT(n)}function gT(e){let t;try{t=JSON.parse(e)}catch{return{body:e,removed:0}}if(!hT(t))return{body:e,removed:0};const n=t.system;if(!Array.isArray(n)||n.length===0)return{body:e,removed:0};const s=[];let o=0;for(const i of n){if(mT(i)){o+=1;continue}s.push(i)}return o===0?{body:e,removed:0}:(s.length===0?delete t.system:t.system=s,{body:JSON.stringify(t),removed:o})}const xT=400,Xu=2e3;function bT(e){return Array.isArray(e)}function vT(e,t){const n=[e];let s=0;for(;n.length>0;){const o=n.pop();if(o!==void 0){if(s+=1,s>t)return s;if(!(o===null||typeof o!="object")){if(bT(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 s}function yT(e){const t=vT(e,Xu+1);return t<=xT?{depth:Number.POSITIVE_INFINITY}:t<=Xu?{depth:3}:{depth:2}}function wT(e){try{const t=JSON.parse(e);return{kind:"json",data:Mo(t)}}catch{return{kind:"text"}}}function Ji(e){const t=p.useMemo(()=>e===null?null:wT(e),[e]),n=t?.kind==="json"?t.data:null,s=p.useMemo(()=>n===null?null:yT(n),[n]),[o,i]=p.useState(!1),[a,l]=p.useState(0),[c,u]=p.useState(0),[f,d]=p.useTransition(),m=p.useCallback(()=>{const h=!o,b=h&&s!==null?s.depth:0;d(()=>{i(h),l(b),u(g=>g+1)})},[o,s]);return{parsedData:n,policy:s,isExpanded:o,toggle:m,isPending:f,bulkDepth:a,bulkRevision:c}}function Mo(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=>Mo(n));const t={};for(const n of Object.keys(e)){const s=Object.getOwnPropertyDescriptor(e,n);t[n]=Mo(s?.value)}return t}case"bigint":case"symbol":case"function":case"undefined":return String(e)}return null}function _0({className:e,orientation:t="horizontal",...n}){return r.jsx(SN,{"data-slot":"tabs","data-orientation":t,orientation:t,className:ae("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const _T=pc("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 k0({className:e,variant:t="default",...n}){return r.jsx(CN,{"data-slot":"tabs-list","data-variant":t,className:ae(_T({variant:t}),e),...n})}function Ct({className:e,...t}){return r.jsx(NN,{"data-slot":"tabs-trigger",className:ae("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 Nt({className:e,...t}){return r.jsx(TN,{"data-slot":"tabs-content",className:ae("flex-1 outline-none",e),...t})}function bn(e){const[t,n]=p.useState(!1),s=p.useRef(null);p.useEffect(()=>()=>{s.current!==null&&clearTimeout(s.current)},[]);const o=p.useCallback(i=>{i.stopPropagation(),e!==null&&Tt(e).then(a=>{a&&(n(!0),s.current!==null&&clearTimeout(s.current),s.current=setTimeout(()=>n(!1),2e3))})},[e]);return{copied:t,copy:o}}const kT=p.lazy(()=>Zn(()=>import("./CompareDrawer-CV7rBBty.js"),__vite__mapDeps([0,1])).then(e=>({default:e.CompareDrawer}))),jT=p.lazy(()=>Zn(()=>import("./ReplayDialog-yDeF-z9y.js"),__vite__mapDeps([2,1,3])).then(e=>({default:e.ReplayDialog}))),ST=p.lazy(()=>Zn(()=>import("./RequestAnatomy-BXxKNdgk.js"),__vite__mapDeps([4,1])).then(e=>({default:e.RequestAnatomy}))),CT=p.lazy(()=>Zn(()=>import("./ResponseView-BIYNgUNB.js"),__vite__mapDeps([3,1])).then(e=>({default:e.ResponseView}))),NT=p.lazy(()=>Zn(()=>import("./StreamingChunkSequence-C1faiChu.js"),__vite__mapDeps([5,1])).then(e=>({default:e.StreamingChunkSequence}))),Za=p.lazy(()=>Zn(()=>import("./json-viewer-C1S08J_2.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewer}))),TT=p.lazy(()=>Zn(()=>import("./json-viewer-C1S08J_2.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewerFromString}))),ET=1200,AT=12;function IT(e){const{containerRef:t,setExpandToPath:n,ensureTabActive:s,highlightMs:o}=e,i=p.useRef(null);return p.useCallback(a=>{s?.(),n(a.path);const l=d=>{d.scrollIntoView({behavior:"smooth",block:"center"}),d.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(()=>{d.classList.remove("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),n(null)},o??ET)},u=`[data-anatomy-path="${(d=>typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(d):d.replace(/(["'\\[\](){}])/g,"\\$1"))(a.path)}"]`,f=d=>{const m=t.current;if(m!==null){const h=m.querySelector(u);if(h!==null){l(h);return}}d>0?window.requestAnimationFrame(()=>f(d-1)):n(null)};window.requestAnimationFrame(()=>f(AT))},[t,s,o,n])}const Qu="The compact log metadata is still available. Retry if the local server was restarting or the body store was briefly unavailable.";function gs(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 RT(e,t){const n=[];return e!=null&&n.push(`Request ${gs(e)}`),t!=null&&n.push(`Response ${gs(t)}`),n.length===0?null:n.join(" · ")}function zT(e){if(e instanceof Yo)return{title:"Full bodies timed out",detail:"The log store did not answer before the UI timeout. Compact metadata is still available; retry loading the bodies."};if(e instanceof Error){const t=e.message.trim();return{title:"Full bodies could not be loaded",detail:t===""?Qu:t}}return{title:"Full bodies could not be loaded",detail:Qu}}class j0{diff(t,n,s={}){let o;typeof s=="function"?(o=s,s={}):"callback"in s&&(o=s.callback);const i=this.castInput(t,s),a=this.castInput(n,s),l=this.removeEmpty(this.tokenize(i,s)),c=this.removeEmpty(this.tokenize(a,s));return this.diffWithOptionsObj(l,c,s,o)}diffWithOptionsObj(t,n,s,o){var i;const a=y=>{if(y=this.postProcess(y,s),o){setTimeout(function(){o(y)},0);return}else return y},l=n.length,c=t.length;let u=1,f=l+c;s.maxEditLength!=null&&(f=Math.min(f,s.maxEditLength));const d=(i=s.timeout)!==null&&i!==void 0?i:1/0,m=Date.now()+d,h=[{oldPos:-1,lastComponent:void 0}];let b=this.extractCommon(h[0],n,t,0,s);if(h[0].oldPos+1>=c&&b+1>=l)return a(this.buildValues(h[0].lastComponent,n,t));let g=-1/0,x=1/0;const v=()=>{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 N=!1;if(S){const A=S.oldPos-y;N=S&&0<=A&&A<l}const T=j&&j.oldPos+1<c;if(!N&&!T){h[y]=void 0;continue}if(!T||N&&j.oldPos<S.oldPos?_=this.addToPath(S,!0,!1,0,s):_=this.addToPath(j,!1,!0,1,s),b=this.extractCommon(_,n,t,y,s),_.oldPos+1>=c&&b+1>=l)return a(this.buildValues(_.lastComponent,n,t))||!0;h[y]=_,_.oldPos+1>=c&&(x=Math.min(x,y-1)),b+1>=l&&(g=Math.max(g,y+1))}u++};if(o)(function y(){setTimeout(function(){if(u>f||Date.now()>m)return o(void 0);v()||y()},0)})();else for(;u<=f&&Date.now()<=m;){const y=v();if(y)return y}}addToPath(t,n,s,o,i){const a=t.lastComponent;return a&&!i.oneChangePerToken&&a.added===n&&a.removed===s?{oldPos:t.oldPos+o,lastComponent:{count:a.count+1,added:n,removed:s,previousComponent:a.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:n,removed:s,previousComponent:a}}}extractCommon(t,n,s,o,i){const a=n.length,l=s.length;let c=t.oldPos,u=c-o,f=0;for(;u+1<a&&c+1<l&&this.equals(s[c+1],n[u+1],i);)u++,c++,f++,i.oneChangePerToken&&(t.lastComponent={count:1,previousComponent:t.lastComponent,added:!1,removed:!1});return f&&!i.oneChangePerToken&&(t.lastComponent={count:f,previousComponent:t.lastComponent,added:!1,removed:!1}),t.oldPos=c,u}equals(t,n,s){return s.comparator?s.comparator(t,n):t===n||!!s.ignoreCase&&t.toLowerCase()===n.toLowerCase()}removeEmpty(t){const n=[];for(let s=0;s<t.length;s++)t[s]&&n.push(t[s]);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,s){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 f=o[l];if(f.removed)f.value=this.join(s.slice(u,u+f.count)),u+=f.count;else{if(!f.added&&this.useLongestToken){let d=n.slice(c,c+f.count);d=d.map(function(m,h){const b=s[u+h];return b.length>m.length?b:m}),f.value=this.join(d)}else f.value=this.join(n.slice(c,c+f.count));c+=f.count,f.added||(u+=f.count)}}return o}}class PT extends j0{constructor(){super(...arguments),this.tokenize=C0}equals(t,n,s){return s.ignoreWhitespace?((!s.newlineIsToken||!t.includes(`
|
|
116
|
+
`)}function j4(e){return typeof e=="string"?e.length>0?1:0:Array.isArray(e)?e.length:e==null?null:1}function S4(e){if(typeof e=="string")return e;const t=ke(e,"text");if(typeof t=="string")return t;const n=Va(ke(e,"content"));if(n.length>0)return n;const s=Va(ke(e,"output"));if(s.length>0)return s;const o=ke(e,"arguments");return typeof o=="string"?o:""}function C4(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 N4(e){const t=ke(e,"output");if(!Array.isArray(t))return[];const n=[];for(const s of t){if(ke(s,"type")!=="function_call")continue;const o=ke(s,"name");typeof o=="string"&&o.length>0&&n.push(o)}return n}function Zs(e,t,n,s){return{role:e,label:t,text:n,size:xc(n),characters:bc(n),path:s}}const T4={format:"openai",analyzeRequest(e){if(e===null)return Un(e);try{const t=JSON.parse(e),n=yc(t)?.tools.length??null,s=Hf.safeParse(t);if(!s.success){const o=Vf.safeParse(t);return o.success?{parsed:o.data,comparisonValue:o.data,messageCount:j4(o.data.input),toolCount:n}:Un(e)}return{parsed:s.data,comparisonValue:s.data,messageCount:s.data.messages.length,toolCount:n}}catch{return Un(e)}},analyzeResponse(e){if(e===null)return ys;const t=qf(e);if(t===null){const s=Gf(e);if(s===null)return ys;const o=N4(s);return{parsed:s,toolNames:o.length>0?o:null}}const n=t.choices[0]?.message?.tool_calls?.map(s=>s.function?.name??"").filter(s=>s!=="")??[];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(Zs("system","instructions",t.instructions,"/instructions")),Array.isArray(t.messages)&&t.messages.forEach((s,o)=>{if(s===null||typeof s!="object")return;const i=s,a=i.role==="user"||i.role==="assistant"||i.role==="system"||i.role==="tool"?i.role:"user",l=_4(i);n.push(Zs(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.messages)||(typeof t.input=="string"&&t.input.length>0?n.push(Zs("user","input",t.input,"/input")):Array.isArray(t.input)&&t.input.forEach((s,o)=>{const i=C4(s),a=S4(s);n.push(Zs(i,`[${o}] ${i}`,a,`/input/${o}`))})),Array.isArray(t.tools)&&t.tools.length>0){const s=k4(t.tools);n.push(Zs("tools","tools",s,"/tools"))}return n.length>0?n:null}},E4={format:"unknown",analyzeRequest(e){return Un(e)},analyzeResponse(){return ys},anatomySegments(){return null}},A4={anthropic:w4,openai:T4,unknown:E4};function m0(e){return A4[e]}function dr(e){const t=P3(e.path);return t==="unknown"?e.apiFormat:t}const Ku="bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground";function qi({icon:e,children:t,title:n,className:s}){return r.jsxs("span",{className:ae("bg-white/[0.045] inline-flex h-7 min-w-0 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground",s),title:n,children:[e,r.jsx("span",{className:"min-w-0 font-mono tabular-nums",children:t})]})}function I4(){return r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1.5 rounded-md bg-amber-300/[0.10] px-1.5 font-mono text-[10px] uppercase tracking-[0.14em] text-amber-100/90 ring-1 ring-amber-200/10",title:"This session has a turn that has not finished yet",children:[r.jsx(Qe,{className:"size-3 animate-spin"}),"Turn open"]})}function R4({conversationId:e,startTime:t,endTime:n,totalCalls:s,totalInputTokens:o,totalOutputTokens:i,expanded:a,onToggle:l,providers:c,isLoading:u=!1,userAgent:f,clientPid:d,clientProjectFolder:m,showClientIdentity:h=!0,showProcessMetadata:b=!0,timeDisplayFormat:g,onClear:x}){const[v,y]=p.useState(!1),_=$=>{$.stopPropagation(),x!==void 0&&y(!0)},j=p.useCallback($=>{$.stopPropagation(),window.open(nf(e),"_blank","noopener,noreferrer")},[e]),S=c?.map(({provider:$,models:ee})=>({provider:$,tooltip:ee.length===1?ee[0]??$:ee.join(", ")}))??[],N=hc({userAgent:f,conversationId:e,clientProjectFolder:m}),T=wi(N),A=f!=null&&f!=="",I=T??f??null,P=T!==null&&A?`${T} - ${f}`:null,L=e.startsWith("PID:")||e.includes("|"),E=e.length>24?e.slice(0,12)+"..."+e.slice(-12):e,D=Dl(t,n,g),w=`${s} call${s!==1?"s":""}`;return r.jsxs("div",{role:"button",tabIndex:0,"data-nav-id":`conv-${e}`,"data-nav-action":a?"collapse":"expand",className:ae("bg-card/80 shadow-sm relative flex cursor-pointer items-start gap-3 overflow-hidden rounded-[8px] px-3 py-2.5 transition-colors","hover:bg-card","select-none","sticky top-0 z-10 mb-2","focus-visible:ring-1 focus-visible:ring-cyan-300/35 focus-visible:outline-none"),onClick:l,onKeyDown:$=>{$.target===$.currentTarget&&($.key==="Enter"||$.key===" ")&&($.preventDefault(),l())},children:[r.jsx(N3,{items:S,ariaLabel:"Models used in this session",className:"mt-0.5"}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[L&&b?d!=null?r.jsxs("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:`PID ${d}`,children:["PID ",d]}):r.jsx("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:e,children:e}):r.jsx("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:e,children:L?"sessionless":E}),!L&&b&&d!==null&&d!==void 0&&r.jsxs("span",{className:"bg-white/[0.045] shrink-0 rounded px-1.5 py-0.5 font-mono text-xs tabular-nums text-muted-foreground",title:`Client process ID ${d}`,children:["PID ",d]}),L&&b&&m!==null&&m!==void 0&&m!==""&&r.jsx("span",{className:"min-w-0 max-w-[240px] truncate font-mono text-xs text-muted-foreground",title:m,children:m}),h&&I!==null&&I!==""&&r.jsxs("span",{className:"bg-white/[0.045] inline-flex min-h-6 shrink-0 flex-wrap items-center gap-1 rounded-md px-1.5 py-0.5 text-xs text-muted-foreground",title:P??I,children:[r.jsx(_i,{client:N,className:"size-4 shrink-0"}),r.jsx("span",{className:"font-mono leading-snug tabular-nums",children:I})]}),u&&r.jsx(I4,{})]}),r.jsxs("span",{className:"mt-1.5 flex min-w-0 flex-wrap items-center gap-1.5",children:[r.jsx(qi,{icon:r.jsx(sn,{className:"size-3 shrink-0"}),title:D,children:D}),r.jsx(qi,{icon:r.jsx(Qo,{className:"size-3 shrink-0"}),children:w}),r.jsxs(qi,{icon:r.jsx(lr,{className:"size-3 shrink-0"}),className:"max-w-full",children:[r.jsx("span",{className:"text-blue-400",children:Fe(o)})," / ",r.jsx("span",{className:"text-amber-400",children:Fe(i)})]})]})]}),r.jsxs("span",{className:"flex shrink-0 items-start gap-1.5",children:[r.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:Ku,children:r.jsx(Pl,{className:"size-3.5"})}),x!==void 0&&r.jsx("button",{type:"button",onClick:_,"aria-label":`Clear group (${s} request${s!==1?"s":""})`,title:"Clear this group from the current view",className:Ku,children:r.jsx(wn,{className:"size-3.5"})}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:a?r.jsx(it,{className:"size-4 shrink-0"}):u?r.jsx(Qe,{className:"size-4 shrink-0 animate-spin"}):r.jsx(Et,{className:"size-4 shrink-0"})})]}),u&&r.jsx("span",{className:"pointer-events-none absolute inset-x-3 bottom-0 h-px overflow-hidden rounded-full bg-white/[0.06]","aria-hidden":"true",children:r.jsx("span",{className:"absolute inset-y-0 left-0 w-1/3 animate-pulse rounded-full bg-amber-200/65 shadow-[0_0_14px_rgba(252,211,77,0.32)]"})}),r.jsx(r0,{open:v,onOpenChange:y,title:"Clear this group from the current view?",description:`This will hide ${s} request${s!==1?"s":""} from the current view. Stored logs remain reloadable.`,confirmLabel:"Clear",variant:"destructive",onConfirm:()=>{x?.()}})]})}function z4(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 s=t?`PID:${e.clientPid}`:"unknown",o=n?e.clientProjectFolder:"no-folder";return`${s}|${o}`}function P4(e){const t=new Map;for(const s of e){const o=z4(s),i=t.get(o);i!==void 0?i.push(s):t.set(o,[s])}const n=[];for(const[s,o]of t){const i=[...o].sort((a,l)=>a.timestamp.localeCompare(l.timestamp));n.push({id:s,conversationId:s,logs:i})}return n.sort((s,o)=>(s.logs[0]?.timestamp??"").localeCompare(o.logs[0]?.timestamp??"")),n}function O4(e,t,n){const s=new Array(e);return new Proxy(s,{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 f=t[c*2];u=o[c]={index:c,key:n(c),start:f,size:t[c*2+1],end:f+t[c*2+1],lane:0}}return u}}if(i==="length")return e}return Reflect.get(o,i,a)}})}function ls(e,t,n){let s=n.initialDeps??[],o,i=!0;function a(){const l=e();return(l.length!==s.length||l.some((u,f)=>s[f]!==u))&&(s=l,o=t(...l),n?.onChange&&!(i&&n.skipInitialOnChange)&&n.onChange(o),i=!1),o}return a.updateDeps=l=>{s=l},a}function Ju(e,t){if(e===void 0)throw new Error("Unexpected undefined");return e}const M4=(e,t)=>Math.abs(e-t)<1.01,L4=(e,t,n)=>{let s;return function(...o){e.clearTimeout(s),s=e.setTimeout(()=>t.apply(this,o),n)}};let qs;const Gi=()=>{if(qs!==void 0)return qs;if(typeof navigator>"u")return qs=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return qs=!0;const e=navigator.maxTouchPoints;return qs=navigator.platform==="MacIntel"&&e!==void 0&&e>0},Yu=e=>{const{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},D4=e=>e,$4=e=>{const t=Math.max(e.startIndex-e.overscan,0),s=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,o=new Array(s);for(let i=0;i<s;i++)o[i]=t+i;return o},F4=(e,t)=>{const n=e.scrollElement;if(!n)return;const s=e.targetWindow;if(!s)return;const o=a=>{const{width:l,height:c}=a;t({width:Math.round(l),height:Math.round(c)})};if(o(Yu(n)),!s.ResizeObserver)return()=>{};const i=new s.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(Yu(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()});return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},fr={passive:!0},U4=(e,t)=>{const n=e.scrollElement;if(!n)return;const s=()=>{t({width:n.innerWidth,height:n.innerHeight})};return s(),n.addEventListener("resize",s,fr),()=>{n.removeEventListener("resize",s)}},B4=typeof window>"u"?!0:"onscrollend"in window,g0=(e,t,n)=>{const s=e.scrollElement;if(!s)return;const o=e.targetWindow;if(!o)return;const i=e.options.useScrollendEvent&&B4;let a=0;const l=i?null:L4(o,()=>t(a,!1),e.options.isScrollingResetDelay),c=d=>()=>{a=n(s),l?.(),t(a,d)},u=c(!0),f=c(!1);return s.addEventListener("scroll",u,fr),i&&s.addEventListener("scrollend",f,fr),()=>{s.removeEventListener("scroll",u),i&&s.removeEventListener("scrollend",f)}},W4=(e,t)=>g0(e,t,n=>{const{horizontal:s,isRtl:o}=e.options;return s?n.scrollLeft*(o&&-1||1):n.scrollTop}),H4=(e,t)=>g0(e,t,n=>e.options.horizontal?n.scrollX:n.scrollY),V4=(e,t,n)=>{if(n.options.useCachedMeasurements){const s=n.indexFromElement(e),o=n.options.getItemKey(s);return n.itemSizeCache.get(o)??n.options.estimateSize(s)}if(t?.borderBoxSize){const s=t.borderBoxSize[0];if(s)return Math.round(s[n.options.horizontal?"inlineSize":"blockSize"])}if(!t){const s=n.indexFromElement(e),o=n.options.getItemKey(s),i=n.itemSizeCache.get(o);if(i!==void 0)return i}return e[n.options.horizontal?"offsetWidth":"offsetHeight"]},x0=(e,{adjustments:t=0,behavior:n},s)=>{var o,i;(i=(o=s.scrollElement)==null?void 0:o.scrollTo)==null||i.call(o,{[s.options.horizontal?"left":"top"]:e+t,behavior:n})},Z4=x0,q4=x0;class G4{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,s,o;return((o=(s=(n=this.targetWindow)==null?void 0:n.performance)==null?void 0:s.now)==null?void 0:o.call(s))??Date.now()},this.observer=(()=>{let n=null;const s=()=>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,f]of this.elementsCache)if(f===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=s())==null||o.disconnect(),n=null},observe:o=>{var i;return(i=s())==null?void 0:i.observe(o,{box:"border-box"})},unobserve:o=>{var i;return(i=s())==null?void 0:i.unobserve(o)}}})(),this.range=null,this.setOptions=n=>{var s,o;const i={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:D4,rangeExtractor:$4,onChange:()=>{},measureElement:V4,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",useCachedMeasurements:!1};for(const m in n){const h=n[m];h!==void 0&&(i[m]=h)}const a=this.options;let l=null,c=null,u=!1;if(a!==void 0&&a.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){const m=a.count,h=i.count,b=this.getMeasurements(),g=m>0?((s=b[0])==null?void 0:s.key)??a.getItemKey(0):null,x=m>0?((o=b[m-1])==null?void 0:o.key)??a.getItemKey(m-1):null;if(h!==m||m>0&&h>0&&(i.getItemKey(0)!==g||i.getItemKey(h-1)!==x)){u=!0;const _=m>0?this.getVirtualItemForOffset(this.getScrollOffset())??b[0]:null;_&&(l=[_.key,this.getScrollOffset()-_.start]);const j=i.followOnAppend===!0?"auto":i.followOnAppend||null;j&&h>m&&this.isAtEnd(a.scrollEndThreshold)&&(m===0||i.getItemKey(h-1)!==x)&&(c=j)}}this.options=i,u&&(this.pendingMin=0,this.itemSizeCacheVersion++);let f=!1,d=0;if(l&&this.scrollOffset!==null){const[m,h]=l,b=this.getMeasurements(),{count:g,getItemKey:x}=this.options;let v=0;for(;v<g&&x(v)!==m;)v++;if(v<g){const y=b[v];if(y){const _=y.start+h;_!==this.scrollOffset&&(d=_-this.scrollOffset,this.scrollOffset=_,f=!0)}}}(f||c)&&(this.pendingScrollAnchor=[f?l[0]:null,f?l[1]:0,c,d])},this.notify=n=>{var s,o;(o=(s=this.options).onChange)==null||o.call(s,this,n)},this.maybeNotify=ls(()=>(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 s=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==s){if(this.cleanup(),!s){this.maybeNotify();return}if(this.scrollElement=s,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)=>{if(a&&this._intendedScrollOffset===null&&i===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5&&(i=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;const l=this.getScrollOffset();this.scrollDirection=a?l===i?this.scrollDirection:l<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,!(!Gi()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};i.addEventListener("touchstart",a,fr),i.addEventListener("touchend",l,fr),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,c]=o;i!==null&&!l&&(Gi()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?c!==0&&(this._iosDeferredAdjustment+=c):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),l&&this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const n=this.getScrollOffset(),s=this.getMaxScrollOffset();if(n<0||n>s)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,s)=>{const o=new Map,i=new Map;for(let a=s-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=ls(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(n,s,o,i,a,l,c)=>(this.prevLanes!==void 0&&this.prevLanes!==l&&(this.lanesChangedFlag=!0),this.prevLanes=l,this.pendingMin=null,{count:n,paddingStart:s,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c}),{key:!1}),this.getMeasurements=ls(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:n,paddingStart:s,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c},u)=>{const f=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n)for(const b of this.laneAssignments.keys())b>=n&&this.laneAssignments.delete(b);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(b=>{this.itemSizeCache.set(b.key,b.size)}));const d=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n&&(this.lanesSettling=!1),l===1){const b=this.options.gap,g=n*2;let x=this._flatMeasurements;if(!x||x.length<g){const _=new Float64Array(g);x&&d>0&&_.set(x.subarray(0,d*2)),x=_,this._flatMeasurements=x}let v;if(d===0)v=s+o;else{const _=d-1;v=x[_*2]+x[_*2+1]+b}for(let _=d;_<n;_++){const j=i(_),S=f.get(j),N=typeof S=="number"?S:this.options.estimateSize(_);x[_*2]=v,x[_*2+1]=N,v+=N+b}const y=O4(n,x,i);return this.measurementsCache=y,y}const m=this.measurementsCache.slice(0,d),h=new Array(l).fill(void 0);for(let b=0;b<d;b++){const g=m[b];g&&(h[g.lane]=b)}for(let b=d;b<n;b++){const g=i(b),x=this.laneAssignments.get(b);let v,y;const _=c==="estimate"||f.has(g);if(x!==void 0&&this.options.lanes>1){v=x;const T=h[v],A=T!==void 0?m[T]:void 0;y=A?A.end+this.options.gap:s+o}else{const T=this.options.lanes===1?m[b-1]:this.getFurthestMeasurement(m,b);y=T?T.end+this.options.gap:s+o,v=T?T.lane:b%this.options.lanes,this.options.lanes>1&&_&&this.laneAssignments.set(b,v)}const j=f.get(g),S=typeof j=="number"?j:this.options.estimateSize(b),N=y+S;m[b]={index:b,start:y,size:S,end:N,key:g,lane:v},h[v]=b}return this.measurementsCache=m,m},{key:!1,debug:()=>this.options.debug}),this.calculateRange=ls(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,s,o,i)=>n.length===0||s===0?(this.range=null,null):(this.range=J4(n,s,o,i,i===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ls(()=>{let n=null,s=null;const o=this.calculateRange();return o&&(n=o.startIndex,s=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,n,s]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,s]},(n,s,o,i,a)=>i===null||a===null?[]:n({startIndex:i,endIndex:a,overscan:s,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=n=>{const s=this.options.indexAttribute,o=n.getAttribute(s);return o?parseInt(o,10):(console.warn(`Missing attribute name '${s}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=n=>{var s;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const o=this.scrollState.index??((s=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:s.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 s=this.indexFromElement(n),o=this.options.getItemKey(s),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(s)&&this.resizeItem(s,this.options.measureElement(n,void 0,this))},this.resizeItem=(n,s)=>{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 f=this.itemSizeCache.get(c)??a,d=s-f;if(d!==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,b=((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},d,this):l<this.getScrollOffset()+this.scrollAdjustments&&(!this.itemSizeCache.has(c)||this.scrollDirection!=="backward"));(this.pendingMin===null||n<this.pendingMin)&&(this.pendingMin=n),this.itemSizeCache.set(c,s),this.itemSizeCacheVersion++,m?this.applyScrollAdjustment(this.getTotalSize()-h):b&&this.applyScrollAdjustment(d),this.notify(!1)}},this.getVirtualItems=ls(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,s)=>{const o=[];for(let i=0,a=n.length;i<a;i++){const l=n[i],c=s[l];o.push(c)}return o},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=n=>{const s=this.getMeasurements();if(s.length===0)return;const o=this._flatMeasurements,i=this.options.lanes===1&&o!=null,a=b0(0,s.length-1,i?l=>o[l*2]:l=>Ju(s[l]).start,n);return Ju(s[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,s,o=0)=>{if(!this.scrollElement)return 0;const i=this.getSize(),a=this.getScrollOffset();s==="auto"&&(s=n>=a+i?"end":"start"),s==="center"?n+=(o-i)/2:s==="end"&&(n-=i);const l=this.getMaxScrollOffset();return Math.max(Math.min(l,n),0)},this.getOffsetForIndex=(n,s="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(s==="auto")if(a.end>=i+o-this.options.scrollPaddingEnd)s="end";else if(a.start<=i+this.options.scrollPaddingStart)s="start";else return[i,s];if(s==="end"&&n===this.options.count-1)return[this.getMaxScrollOffset(),s];const l=s==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,s,a.size),s]},this.scrollToOffset=(n,{align:s="start",behavior:o="auto"}={})=>{const i=this.getOffsetForAlignment(n,s),a=this.now();this.scrollState={index:null,align:s,behavior:o,startedAt:a,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollToIndex=(n,{align:s="auto",behavior:o="auto"}={})=>{n=Math.max(0,Math.min(n,this.options.count-1));const i=this.getOffsetForIndex(n,s);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:s="auto"}={})=>{const o=this.getScrollOffset()+n,i=this.now();this.scrollState={index:null,align:"start",behavior:s,startedAt:i,lastTargetOffset:o,stableFrames:0},this._scrollToOffset(o,{adjustments:void 0,behavior:s}),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 s=this.getMeasurements();let o;if(s.length===0)o=this.options.paddingStart;else if(this.options.lanes===1){const i=s.length-1,a=this._flatMeasurements;a!=null?o=a[i*2]+a[i*2+1]:o=((n=s[i])==null?void 0:n.end)??0}else{const i=Array(this.options.lanes).fill(null);let a=s.length-1;for(;a>=0&&i.some(l=>l===null);){const l=s[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 s=this.getMeasurements();for(const o of s)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:s,behavior:o})=>{this._intendedScrollOffset=n+(s??0),this.options.scrollToFn(n,{behavior:o,adjustments:s},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&&(Gi()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:n}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollAdjustments=0)))}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 s=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,o=s?s[0]:this.scrollState.lastTargetOffset,i=1,a=o!==this.scrollState.lastTargetOffset;if(!a&&M4(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 b0=(e,t,n,s)=>{for(;e<=t;){const o=(e+t)/2|0,i=n(o);if(i<s)e=o+1;else if(i>s)t=o-1;else return o}return e>0?e-1:0};function K4(e,t,n){let s=0;for(;s<=t;){const o=(s+t)/2|0,i=e[o*2];if(i<n)s=o+1;else if(i>n)t=o-1;else return o}return s>0?s-1:0}function J4(e,t,n,s,o){const i=e.length-1;if(e.length<=s)return{startIndex:0,endIndex:i};if(s===1&&o!==null){const u=K4(o,i,n);let f=u;const d=n+t;for(;f<i&&o[f*2]+o[f*2+1]<d;)f++;return{startIndex:u,endIndex:f}}let l=b0(0,i,u=>e[u].start,n),c=l;if(s===1)for(;c<i&&e[c].end<n+t;)c++;else if(s>1){const u=Array(s).fill(0);for(;c<i&&u.some(d=>d<n+t);){const d=e[c];u[d.lane]=d.end,c++}const f=Array(s).fill(n+t);for(;l>=0&&f.some(d=>d>=n);){const d=e[l];f[d.lane]=d.start,l--}l=Math.max(0,l-l%s),c=Math.min(i,c+(s-1-c%s))}return{startIndex:l,endIndex:c}}const Ki=typeof document<"u"?p.useLayoutEffect:p.useEffect;function v0({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n="transform",...s}){const o=p.useReducer(u=>u+1,0)[1],i=p.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});i.current.enabled=t,i.current.mode=n;const a=u=>{const f=i.current;if(!f.enabled||!f.container)return;const d=u.getTotalSize();if(d!==f.lastSize){f.lastSize=d;const v=u.options.horizontal?"width":"height";f.container.style[v]=`${d}px`}const m=!!u.options.horizontal,h=f.mode==="transform",b=m?"left":"top",g=u.options.scrollMargin,x=u.getVirtualItems();for(const v of x){const y=v.start-g,_=u.elementsCache.get(v.key);_&&f.lastPositions.get(_)!==y&&(f.lastPositions.set(_,y),h?_.style.transform=m?`translate3d(${y}px, 0, 0)`:`translate3d(0, ${y}px, 0)`:_.style[b]=`${y}px`)}},l={...s,onChange:(u,f)=>{var d;const m=i.current;let h=!0;if(m.enabled){a(u);const b=u.range,g=m.prevRange;h=!g||g.isScrolling!==u.isScrolling||g.startIndex!==b?.startIndex||g.endIndex!==b?.endIndex,h&&(m.prevRange=b?{startIndex:b.startIndex,endIndex:b.endIndex,isScrolling:u.isScrolling}:null)}h&&(e&&f?Ms.flushSync(o):o()),(d=s.onChange)==null||d.call(s,u,f)}},[c]=p.useState(()=>{const u=new G4(l);return Object.assign(u,{containerRef:f=>{const d=i.current;if(d.container=f,d.lastSize=null,f&&d.enabled){const m=u.getTotalSize();d.lastSize=m;const h=u.options.horizontal?"width":"height";f.style[h]=`${m}px`}}})});return c.setOptions(l),Ki(()=>c._didMount(),[]),Ki(()=>c._willUpdate()),Ki(()=>{a(c)}),c}function Y4(e){return v0({observeElementRect:F4,observeElementOffset:W4,scrollToFn:q4,...e})}function X4(e){return v0({getScrollElement:()=>typeof document<"u"?window:null,observeElementRect:U4,observeElementOffset:H4,scrollToFn:Z4,initialOffset:()=>typeof document<"u"?window.scrollY:0,...e})}const un="agent-inspector:focus-log";function pr(e){window.dispatchEvent(new CustomEvent(un,{detail:e}))}function Si(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 s=ke(t,"tab");switch(s){case"anatomy":case"request":case"response":break;case void 0:break;default:return null}const o=ke(t,"source"),i=ke(t,"toolCallIndex"),a=typeof i=="number"&&Number.isInteger(i)&&i>=0?{logId:n,tab:s??"request",toolCallIndex:i}:{logId:n,tab:s??"request"};switch(o){case"virtualizer":return{...a,source:o};case void 0:return a;default:return null}}function zt({className:e,style:t,d:n,eyeStalks:s,eyes:o,legs:i,extras:a}){return r.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:t,className:ae("inline-block size-5",e),children:[r.jsx("path",{d:n}),s,o,i,a]})}const Rn=r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"6.5",y1:"16",x2:"4.5",y2:"19.5"}),r.jsx("line",{x1:"9",y1:"17.5",x2:"8",y2:"20.5"}),r.jsx("line",{x1:"15",y1:"17.5",x2:"16",y2:"20.5"}),r.jsx("line",{x1:"17.5",y1:"16",x2:"19.5",y2:"19.5"})]}),y0=r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"16",x2:"5.5",y2:"18.5"}),r.jsx("line",{x1:"9.5",y1:"17",x2:"8.5",y2:"19.5"}),r.jsx("line",{x1:"14.5",y1:"17",x2:"15.5",y2:"19.5"}),r.jsx("line",{x1:"17",y1:"16",x2:"18.5",y2:"18.5"})]});function w0({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 Q4({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9.5",y1:"6.5",x2:"9.5",y2:"4.5"}),r.jsx("line",{x1:"14.5",y1:"6.5",x2:"14.5",y2:"4.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4",r:"1.1",fill:"currentColor",stroke:"none"})]}),legs:y0,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C4 9.5 2.5 10 3 12 C3.5 13.5 4.5 13 5 12"}),r.jsx("path",{d:"M19 11 C20 9.5 21.5 10 21 12 C20.5 13.5 19.5 13 19 12"})]})})}function eT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"7",x2:"6.5",y2:"4.5"}),r.jsx("line",{x1:"17",y1:"7",x2:"17.5",y2:"4.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"6.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"17.5",cy:"4",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M4 12 C2.5 10.5 1 11 1.5 13 C2 14.5 3.5 14 4.5 13"}),r.jsx("path",{d:"M20 12 C21.5 10.5 23 11 22.5 13 C22 14.5 20.5 14 19.5 13"})]})})}function tT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"6.5",x2:"10",y2:"3.5"}),r.jsx("line",{x1:"14",y1:"6.5",x2:"14",y2:"3.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"10",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14",cy:"3",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7",y1:"17",x2:"5",y2:"20.5"}),r.jsx("line",{x1:"9.5",y1:"18.5",x2:"8.5",y2:"21.5"}),r.jsx("line",{x1:"14.5",y1:"18.5",x2:"15.5",y2:"21.5"}),r.jsx("line",{x1:"17",y1:"17",x2:"19",y2:"20.5"})]}),extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M6.5 11 C5 8.5 3 9 3.5 11.5 C4 13.5 5 13 6 12"}),r.jsx("path",{d:"M17.5 11 C19 8.5 21 9 20.5 11.5 C20 13.5 19 13 18 12"})]})})}function nT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 sT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("line",{x1:"13.5",y1:"4",x2:"15.5",y2:"5"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.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 rT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"8",x2:"10",y2:"6"}),r.jsx("line",{x1:"14",y1:"8",x2:"14",y2:"6"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9",y1:"6",x2:"11",y2:"6.5"}),r.jsx("line",{x1:"13",y1:"6",x2:"15",y2:"6.5"})]}),legs:y0,extras:r.jsxs(r.Fragment,{children:[r.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"}),r.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 oT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.7",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("line",{x1:"8.5",y1:"4",x2:"10.5",y2:"4.5"}),r.jsx("line",{x1:"15.5",y1:"4",x2:"13.5",y2:"4.5"}),r.jsx("path",{d:"M9 15.5 C10 14.5 14 14.5 15 15.5"})]})})}function iT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"1.2",fill:"none",stroke:"currentColor"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("ellipse",{cx:"12",cy:"15",rx:"2",ry:"1.5",fill:"currentColor",stroke:"none"})]})})}function aT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"9.5",y1:"7",x2:"9",y2:"5"}),r.jsx("line",{x1:"14.5",y1:"7",x2:"15",y2:"5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"9",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"15",cy:"4.5",r:"1",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9 2 9.5 2.5 12 C3 14 4 13 5 12"}),r.jsx("path",{d:"M19 11 C20.5 9 22 9.5 21.5 12 C21 14 20 13 19 12"}),r.jsx("path",{d:"M9 14.5 C10 16 14 16 15 14.5"}),r.jsx("circle",{cx:"7",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"}),r.jsx("circle",{cx:"17",cy:"13",r:"1",fill:"currentColor",stroke:"none",opacity:"0.3"})]})})}function lT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5.5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5.5"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"7.5",y1:"5.5",x2:"16.5",y2:"5.5"}),r.jsx("rect",{x:"7",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"}),r.jsx("rect",{x:"13",y:"5",width:"4",height:"2",rx:"0.5",fill:"currentColor",stroke:"none"})]}),legs:Rn,extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("path",{d:"M9.5 15 C10.5 16 13.5 16 14.5 15"})]})})}function cT({className:e}){return r.jsx(zt,{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:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"10.5",y1:"9.5",x2:"10.5",y2:"8"}),r.jsx("line",{x1:"13.5",y1:"9.5",x2:"13.5",y2:"8"})]}),eyes:r.jsxs(r.Fragment,{children:[r.jsx("circle",{cx:"10.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"13.5",cy:"7.5",r:"0.8",fill:"currentColor",stroke:"none"})]}),legs:r.jsxs(r.Fragment,{children:[r.jsx("line",{x1:"8",y1:"16",x2:"6.5",y2:"18"}),r.jsx("line",{x1:"10",y1:"17",x2:"9.5",y2:"19"}),r.jsx("line",{x1:"14",y1:"17",x2:"14.5",y2:"19"}),r.jsx("line",{x1:"16",y1:"16",x2:"17.5",y2:"18"})]}),extras:r.jsxs(r.Fragment,{children:[r.jsx("path",{d:"M7.5 12 C6.5 11 5.5 11.5 6 13 C6.5 14 7 13.5 7.5 13"}),r.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 hr=[w0,Q4,eT,tT,nT,sT,rT,oT,iT,aT,lT,cT];function wc(e){return hr[Math.abs(e)%hr.length]??w0}function uT(e){const t=hr.length-2;return t<=0?0:1+((Number.isFinite(e)?Math.trunc(e):0)%t+t)%t}function dT(e){return wc(uT(e))}const fT="x-anthropic-billing-header:";function pT(e){return e.trimStart().toLowerCase().startsWith(fT)}function hT(e){return vc(e)?Object.prototype.hasOwnProperty.call(e,"system"):!1}function mT(e){if(!vc(e))return!1;const t=ke(e,"type"),n=ke(e,"text");return typeof t!="string"||t!=="text"||typeof n!="string"?!1:pT(n)}function gT(e){let t;try{t=JSON.parse(e)}catch{return{body:e,removed:0}}if(!hT(t))return{body:e,removed:0};const n=t.system;if(!Array.isArray(n)||n.length===0)return{body:e,removed:0};const s=[];let o=0;for(const i of n){if(mT(i)){o+=1;continue}s.push(i)}return o===0?{body:e,removed:0}:(s.length===0?delete t.system:t.system=s,{body:JSON.stringify(t),removed:o})}const xT=400,Xu=2e3;function bT(e){return Array.isArray(e)}function vT(e,t){const n=[e];let s=0;for(;n.length>0;){const o=n.pop();if(o!==void 0){if(s+=1,s>t)return s;if(!(o===null||typeof o!="object")){if(bT(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 s}function yT(e){const t=vT(e,Xu+1);return t<=xT?{depth:Number.POSITIVE_INFINITY}:t<=Xu?{depth:3}:{depth:2}}function wT(e){try{const t=JSON.parse(e);return{kind:"json",data:Mo(t)}}catch{return{kind:"text"}}}function Ji(e){const t=p.useMemo(()=>e===null?null:wT(e),[e]),n=t?.kind==="json"?t.data:null,s=p.useMemo(()=>n===null?null:yT(n),[n]),[o,i]=p.useState(!1),[a,l]=p.useState(0),[c,u]=p.useState(0),[f,d]=p.useTransition(),m=p.useCallback(()=>{const h=!o,b=h&&s!==null?s.depth:0;d(()=>{i(h),l(b),u(g=>g+1)})},[o,s]);return{parsedData:n,policy:s,isExpanded:o,toggle:m,isPending:f,bulkDepth:a,bulkRevision:c}}function Mo(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=>Mo(n));const t={};for(const n of Object.keys(e)){const s=Object.getOwnPropertyDescriptor(e,n);t[n]=Mo(s?.value)}return t}case"bigint":case"symbol":case"function":case"undefined":return String(e)}return null}function _0({className:e,orientation:t="horizontal",...n}){return r.jsx(SN,{"data-slot":"tabs","data-orientation":t,orientation:t,className:ae("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const _T=pc("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 k0({className:e,variant:t="default",...n}){return r.jsx(CN,{"data-slot":"tabs-list","data-variant":t,className:ae(_T({variant:t}),e),...n})}function Ct({className:e,...t}){return r.jsx(NN,{"data-slot":"tabs-trigger",className:ae("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 Nt({className:e,...t}){return r.jsx(TN,{"data-slot":"tabs-content",className:ae("flex-1 outline-none",e),...t})}function bn(e){const[t,n]=p.useState(!1),s=p.useRef(null);p.useEffect(()=>()=>{s.current!==null&&clearTimeout(s.current)},[]);const o=p.useCallback(i=>{i.stopPropagation(),e!==null&&Tt(e).then(a=>{a&&(n(!0),s.current!==null&&clearTimeout(s.current),s.current=setTimeout(()=>n(!1),2e3))})},[e]);return{copied:t,copy:o}}const kT=p.lazy(()=>Zn(()=>import("./CompareDrawer-BhQ8UZBt.js"),__vite__mapDeps([0,1])).then(e=>({default:e.CompareDrawer}))),jT=p.lazy(()=>Zn(()=>import("./ReplayDialog-CqUvVWFk.js"),__vite__mapDeps([2,1,3])).then(e=>({default:e.ReplayDialog}))),ST=p.lazy(()=>Zn(()=>import("./RequestAnatomy-DU8c0Ysb.js"),__vite__mapDeps([4,1])).then(e=>({default:e.RequestAnatomy}))),CT=p.lazy(()=>Zn(()=>import("./ResponseView-Ce2JAKBf.js"),__vite__mapDeps([3,1])).then(e=>({default:e.ResponseView}))),NT=p.lazy(()=>Zn(()=>import("./StreamingChunkSequence-DvMcBgID.js"),__vite__mapDeps([5,1])).then(e=>({default:e.StreamingChunkSequence}))),Za=p.lazy(()=>Zn(()=>import("./json-viewer-Bjmt-Mdw.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewer}))),TT=p.lazy(()=>Zn(()=>import("./json-viewer-Bjmt-Mdw.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewerFromString}))),ET=1200,AT=12;function IT(e){const{containerRef:t,setExpandToPath:n,ensureTabActive:s,highlightMs:o}=e,i=p.useRef(null);return p.useCallback(a=>{s?.(),n(a.path);const l=d=>{d.scrollIntoView({behavior:"smooth",block:"center"}),d.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(()=>{d.classList.remove("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),n(null)},o??ET)},u=`[data-anatomy-path="${(d=>typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(d):d.replace(/(["'\\[\](){}])/g,"\\$1"))(a.path)}"]`,f=d=>{const m=t.current;if(m!==null){const h=m.querySelector(u);if(h!==null){l(h);return}}d>0?window.requestAnimationFrame(()=>f(d-1)):n(null)};window.requestAnimationFrame(()=>f(AT))},[t,s,o,n])}const Qu="The compact log metadata is still available. Retry if the local server was restarting or the body store was briefly unavailable.";function gs(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 RT(e,t){const n=[];return e!=null&&n.push(`Request ${gs(e)}`),t!=null&&n.push(`Response ${gs(t)}`),n.length===0?null:n.join(" · ")}function zT(e){if(e instanceof Yo)return{title:"Full bodies timed out",detail:"The log store did not answer before the UI timeout. Compact metadata is still available; retry loading the bodies."};if(e instanceof Error){const t=e.message.trim();return{title:"Full bodies could not be loaded",detail:t===""?Qu:t}}return{title:"Full bodies could not be loaded",detail:Qu}}class j0{diff(t,n,s={}){let o;typeof s=="function"?(o=s,s={}):"callback"in s&&(o=s.callback);const i=this.castInput(t,s),a=this.castInput(n,s),l=this.removeEmpty(this.tokenize(i,s)),c=this.removeEmpty(this.tokenize(a,s));return this.diffWithOptionsObj(l,c,s,o)}diffWithOptionsObj(t,n,s,o){var i;const a=y=>{if(y=this.postProcess(y,s),o){setTimeout(function(){o(y)},0);return}else return y},l=n.length,c=t.length;let u=1,f=l+c;s.maxEditLength!=null&&(f=Math.min(f,s.maxEditLength));const d=(i=s.timeout)!==null&&i!==void 0?i:1/0,m=Date.now()+d,h=[{oldPos:-1,lastComponent:void 0}];let b=this.extractCommon(h[0],n,t,0,s);if(h[0].oldPos+1>=c&&b+1>=l)return a(this.buildValues(h[0].lastComponent,n,t));let g=-1/0,x=1/0;const v=()=>{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 N=!1;if(S){const A=S.oldPos-y;N=S&&0<=A&&A<l}const T=j&&j.oldPos+1<c;if(!N&&!T){h[y]=void 0;continue}if(!T||N&&j.oldPos<S.oldPos?_=this.addToPath(S,!0,!1,0,s):_=this.addToPath(j,!1,!0,1,s),b=this.extractCommon(_,n,t,y,s),_.oldPos+1>=c&&b+1>=l)return a(this.buildValues(_.lastComponent,n,t))||!0;h[y]=_,_.oldPos+1>=c&&(x=Math.min(x,y-1)),b+1>=l&&(g=Math.max(g,y+1))}u++};if(o)(function y(){setTimeout(function(){if(u>f||Date.now()>m)return o(void 0);v()||y()},0)})();else for(;u<=f&&Date.now()<=m;){const y=v();if(y)return y}}addToPath(t,n,s,o,i){const a=t.lastComponent;return a&&!i.oneChangePerToken&&a.added===n&&a.removed===s?{oldPos:t.oldPos+o,lastComponent:{count:a.count+1,added:n,removed:s,previousComponent:a.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:n,removed:s,previousComponent:a}}}extractCommon(t,n,s,o,i){const a=n.length,l=s.length;let c=t.oldPos,u=c-o,f=0;for(;u+1<a&&c+1<l&&this.equals(s[c+1],n[u+1],i);)u++,c++,f++,i.oneChangePerToken&&(t.lastComponent={count:1,previousComponent:t.lastComponent,added:!1,removed:!1});return f&&!i.oneChangePerToken&&(t.lastComponent={count:f,previousComponent:t.lastComponent,added:!1,removed:!1}),t.oldPos=c,u}equals(t,n,s){return s.comparator?s.comparator(t,n):t===n||!!s.ignoreCase&&t.toLowerCase()===n.toLowerCase()}removeEmpty(t){const n=[];for(let s=0;s<t.length;s++)t[s]&&n.push(t[s]);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,s){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 f=o[l];if(f.removed)f.value=this.join(s.slice(u,u+f.count)),u+=f.count;else{if(!f.added&&this.useLongestToken){let d=n.slice(c,c+f.count);d=d.map(function(m,h){const b=s[u+h];return b.length>m.length?b:m}),f.value=this.join(d)}else f.value=this.join(n.slice(c,c+f.count));c+=f.count,f.added||(u+=f.count)}}return o}}class PT extends j0{constructor(){super(...arguments),this.tokenize=C0}equals(t,n,s){return s.ignoreWhitespace?((!s.newlineIsToken||!t.includes(`
|
|
117
117
|
`))&&(t=t.trim()),(!s.newlineIsToken||!n.includes(`
|
|
118
118
|
`))&&(n=n.trim())):s.ignoreNewlineAtEof&&!s.newlineIsToken&&(t.endsWith(`
|
|
119
119
|
`)&&(t=t.slice(0,-1)),n.endsWith(`
|
|
@@ -122,6 +122,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
122
122
|
`);i.length>0&&i[i.length-1]===""&&i.pop();for(const a of i)o.added?(s+=1,t.push({kind:"added",text:a,oldLineNumber:null,newLineNumber:s})):o.removed?(n+=1,t.push({kind:"removed",text:a,oldLineNumber:n,newLineNumber:null})):(n+=1,s+=1,t.push({kind:"context",text:a,oldLineNumber:n,newLineNumber:s}))}return t}function $T(e,t){const n=ed(e).map(td).join(`
|
|
123
123
|
`),s=ed(t).map(td).join(`
|
|
124
124
|
`);if(n===s)return{lines:[],isEmpty:!0};const o=S0(n,s);return{lines:Ga(o),isEmpty:!1}}function nd(e){try{const t=JSON.parse(e);return t===null||typeof t=="string"||typeof t=="object"?t:null}catch{return null}}function FT(e,t){const n=e??"",s=t??"";if(n===s)return{lines:[],isEmpty:!0};const o=nd(n),i=nd(s);if(o!==null&&i!==null){const l=DT(o,i)??[];if(l.length===1){const c=l[0];if(c!==void 0&&!c.added&&!c.removed)return{lines:[],isEmpty:!0}}return{lines:Ga(l),isEmpty:!1}}const a=S0(n,s);return{lines:Ga(a),isEmpty:!1}}const UT=22,Yi=1e4;function BT(e){return e==="added"?"+":e==="removed"?"-":" "}function WT(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 HT=function({result:t,emptyLabel:n}){const[s,o]=p.useState("unified"),i=p.useRef(null),a=Y4({count:t.lines.length,getScrollElement:()=>i.current,estimateSize:()=>UT,overscan:10});if(t.isEmpty)return r.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>Yi,u=c?t.lines.slice(0,Yi):t.lines;return r.jsxs("div",{className:"space-y-2",children:[r.jsxs("div",{className:"flex items-center justify-between text-xs text-muted-foreground",children:[r.jsxs("span",{children:[l.toLocaleString()," line",l===1?"":"s",c&&` (showing first ${Yi.toLocaleString()})`]}),r.jsxs("div",{className:"inline-flex rounded-md border border-border overflow-hidden",children:[r.jsxs("button",{type:"button",onClick:()=>o("unified"),"aria-pressed":s==="unified",className:ae("flex items-center gap-1 px-2 py-1 transition-colors",s==="unified"?"bg-muted text-foreground":"hover:bg-muted/50"),title:"Unified diff (single column)",children:[r.jsx(x_,{className:"size-3"}),"Unified"]}),r.jsxs("button",{type:"button",onClick:()=>o("split"),"aria-pressed":s==="split",className:ae("flex items-center gap-1 px-2 py-1 transition-colors border-l border-border",s==="split"?"bg-muted text-foreground":"hover:bg-muted/50"),title:"Split diff (side by side)",children:[r.jsx(uw,{className:"size-3"}),"Split"]})]})]}),r.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:s==="unified"?r.jsx(VT,{virtualizer:a,lines:u}):r.jsx(GT,{lines:u})})]})};function VT({virtualizer:e,lines:t}){return r.jsx("div",{style:{height:`${e.getTotalSize()}px`,width:"100%",position:"relative"},children:e.getVirtualItems().map(n=>{const s=t[n.index];return s===void 0?null:r.jsxs("div",{"data-index":n.index,ref:e.measureElement,className:ae("flex items-start gap-3 px-2",WT(s.kind)),style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${n.start}px)`},children:[r.jsx("span",{className:"select-none text-muted-foreground/60 w-10 text-right tabular-nums",children:s.oldLineNumber??""}),r.jsx("span",{className:"select-none text-muted-foreground/60 w-10 text-right tabular-nums",children:s.newLineNumber??""}),r.jsx("span",{className:ae("select-none w-3 text-right font-bold",s.kind==="added"&&"text-green-600 dark:text-green-400",s.kind==="removed"&&"text-red-600 dark:text-red-400"),children:BT(s.kind)}),r.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:s.text})]},n.key)})})}function ZT(e){const t=[];let n=0;for(;n<e.length;){const s=e[n];if(s===void 0)break;if(s.kind==="context"){t.push({left:{text:s.text,lineNumber:s.oldLineNumber},right:{text:s.text,lineNumber:s.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 qT(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 GT({lines:e}){const t=ZT(e);return r.jsx("div",{"data-testid":"diff-split",children:t.map((n,s)=>r.jsxs("div",{className:ae("grid grid-cols-2 font-mono text-xs",qT(n.kind)),children:[r.jsxs("div",{className:"flex items-start gap-2 px-2 border-r border-border/50",children:[r.jsx("span",{className:"select-none text-muted-foreground/60 w-8 text-right tabular-nums",children:n.left?.lineNumber??""}),r.jsx("span",{className:ae("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?"-":" "}),r.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:n.left?.text??""})]}),r.jsxs("div",{className:"flex items-start gap-2 px-2",children:[r.jsx("span",{className:"select-none text-muted-foreground/60 w-8 text-right tabular-nums",children:n.right?.lineNumber??""}),r.jsx("span",{className:ae("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?"+":" "}),r.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:n.right?.text??""})]})]},s))})}const N0=p.memo(HT),KT=pc("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 Oe({className:e,variant:t="default",asChild:n=!1,...s}){const o=n?x5:"span";return r.jsx(o,{"data-slot":"badge","data-variant":t,className:ae(KT({variant:t}),e),...s})}const JT={success:"bg-slate-300/[0.08] text-slate-100 border-transparent",client_error:"bg-amber-300/[0.10] text-amber-100 border-transparent",server_error:"bg-rose-400/[0.10] text-rose-100 border-transparent",pending:"bg-cyan-300/[0.08] text-cyan-100 border-transparent"},YT={success:{frame:"border-cyan-200/15 bg-white/[0.04] text-slate-100"},client_error:{frame:"border-amber-300/25 bg-amber-300/[0.08] text-amber-100"},server_error:{frame:"border-rose-300/25 bg-rose-300/[0.08] text-rose-100"},pending:{frame:"border-cyan-300/25 bg-cyan-300/[0.08] text-cyan-100"}},Gs="border border-transparent bg-white/[0.045] hover:bg-white/[0.075] size-8 text-muted-foreground shadow-none hover:text-cyan-100",Ot="bg-white/[0.045] flex h-7 items-center gap-1 rounded-md px-2 text-xs";function Ks(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function XT(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function QT(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 sd({trend:e}){if(e===null)return null;const t=e.direction==="up",n=t?Sy:vy,s=t?"+":"-";return r.jsxs("span",{className:"flex items-center gap-0.5 text-muted-foreground tabular-nums",children:[r.jsx(n,{className:t?"size-3 text-cyan-300":"size-3 text-rose-400"}),r.jsxs("span",{className:"font-mono",children:[s,Fe(e.delta)]})]})}const eE=p.memo(function({log:e,displayNumber:t,messageCount:n=null,toolCount:s=null,expanded:o,onToggle:i,cacheTrend:a=null,activeTab:l,tabActions:c,onReplay:u,slowResponseThresholdSeconds:f=0,showClientMetadata:d=!0,timeDisplayFormat:m}){const h=p5(e.responseStatus),b=e.elapsedMs!==null&&f>0&&e.elapsedMs>f*1e3,g=e.inputTokens!==null||e.outputTokens!==null,x=e.firstChunkMs??null,v=e.tokensPerSecond??null,y=x===null?null:Ks(x),_=v===null||v<=0?null:XT(v),j=e.warnings?.length??0,S=e.clientPid!==null&&e.clientPid!==void 0,N=e.clientProjectFolder!==null&&e.clientProjectFolder!==void 0&&e.clientProjectFolder!=="";e.clientCwd!==null&&e.clientCwd!==void 0&&e.clientCwd;const T=YT[h],A=QT(h,e.responseStatus),I=h!=="success"||e.responseStatus!==200,P=e.streaming&&y===null&&_===null;return r.jsx(Sn,{children:r.jsxs("div",{id:`log-${e.id}`,role:"button",tabIndex:0,"data-nav-id":`log-${e.id}`,"data-nav-action":o?"collapse":"expand",className:ae("group/header relative isolate flex min-w-0 cursor-pointer items-start gap-2 overflow-hidden px-3 py-2 transition-[background-color,border-color,box-shadow]",o?"bg-white/[0.04]":"bg-transparent hover:bg-white/[0.035]","select-none","focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none"),onClick:i,onKeyDown:L=>{(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),i())},children:[r.jsxs("span",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:ae("inline-flex h-8 shrink-0 items-center rounded-md px-2 font-mono",T.frame),children:r.jsxs("span",{className:"text-xs font-semibold tabular-nums",title:`Log ID ${String(e.id)}`,children:["#",t]})}),r.jsxs("span",{className:"bg-white/[0.045] flex h-7 shrink-0 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground",children:[r.jsx(sn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",title:e.timestamp,children:Ca(e.timestamp,m)})]}),I&&r.jsxs(Oe,{variant:"outline",className:ae("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)]",JT[h]),children:[h==="success"?r.jsx(Ge,{className:"size-3","aria-label":"Success"}):h==="server_error"?r.jsx(t_,{className:"size-3","aria-label":"Server error"}):h==="client_error"?r.jsx(rn,{className:"size-3","aria-label":"Client error"}):r.jsx(Qe,{className:"size-3 animate-spin","aria-label":"Pending"}),A]}),j>0&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsxs(Oe,{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:[r.jsx(rn,{className:"size-3","aria-label":"Tool schema warnings"}),j]})}),r.jsx(ft,{children:j===1?"1 tool schema warning":`${j} tool schema warnings`})]}),e.elapsedMs!==null&&(b?r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsxs("span",{className:ae(Ot,"shrink-0 border-amber-300/25 text-amber-200"),children:[r.jsx(sn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:Ks(e.elapsedMs)}),r.jsx(rn,{className:"size-3","aria-label":"Slow response"})]})}),r.jsxs(ft,{children:["Slow response: ",Ks(e.elapsedMs)," exceeds"," ",Ks(f*1e3)]})]}):r.jsxs("span",{className:ae(Ot,"shrink-0 text-muted-foreground"),children:[r.jsx(sn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:Ks(e.elapsedMs)})]})),e.streaming&&y!==null&&r.jsxs("span",{className:ae(Ot,"shrink-0 text-cyan-300"),children:[r.jsx(ou,{className:"size-3"}),r.jsxs("span",{className:"font-mono tabular-nums",children:["first ",y]})]}),e.streaming&&_!==null&&r.jsxs("span",{className:ae(Ot,"shrink-0 text-cyan-300"),children:[r.jsx(Ll,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:_})]}),g&&r.jsxs("span",{className:ae(Ot,"min-w-0 sm:shrink-0"),children:[r.jsx(lr,{className:"size-3 text-muted-foreground"}),r.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-1 font-mono tabular-nums",children:[r.jsxs("span",{className:ae("whitespace-nowrap",e.inputTokens!==null?"text-blue-400":"text-muted-foreground"),children:["IN ",e.inputTokens!==null?Fe(e.inputTokens):"n/a"]}),r.jsx("span",{className:"text-muted-foreground",children:"/"}),r.jsxs("span",{className:ae("whitespace-nowrap",e.outputTokens!==null?"text-amber-400":"text-muted-foreground"),children:["OUT ",e.outputTokens!==null?Fe(e.outputTokens):"n/a"]})]})]}),e.cacheCreationInputTokens!==null&&e.cacheCreationInputTokens>0&&r.jsxs("span",{className:ae(Ot,"shrink-0"),children:[r.jsx(sd,{trend:a?.creation??null}),r.jsxs("span",{className:"font-mono tabular-nums text-cyan-300",children:["KV Cache +",Fe(e.cacheCreationInputTokens)]})]}),e.cacheReadInputTokens!==null&&e.cacheReadInputTokens>0&&r.jsxs("span",{className:ae(Ot,"shrink-0"),children:[r.jsx(sd,{trend:a?.read??null}),r.jsxs("span",{className:"font-mono tabular-nums text-purple-400",children:["KV Cache ~",Fe(e.cacheReadInputTokens)]})]}),n!==null&&r.jsxs("span",{className:ae(Ot,"shrink-0 text-muted-foreground"),children:[r.jsx(Qo,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:n})]}),s!==null&&r.jsxs("span",{className:ae(Ot,"shrink-0 text-muted-foreground"),children:[r.jsx($s,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:s})]}),e.origin!==null&&r.jsxs("span",{className:ae(Ot,"hidden shrink-0 text-muted-foreground xl:flex"),title:`Origin: ${e.origin}`,children:[r.jsx(up,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums truncate max-w-[120px]",title:e.origin,children:e.origin})]}),d&&(S||N)&&r.jsxs("span",{className:ae(Ot,"hidden shrink-0 text-purple-300 xl:flex"),children:[r.jsx(Nw,{className:"size-3"}),N?r.jsx("span",{className:"font-mono tabular-nums",children:e.clientProjectFolder}):r.jsxs("span",{className:"font-mono tabular-nums",children:["PID ",e.clientPid]})]}),P&&r.jsx(ou,{className:"size-3 shrink-0 text-muted-foreground/60"})]}),r.jsxs("span",{className:"flex shrink-0 items-start gap-1.5",children:[o&&r.jsxs("span",{className:"flex items-center gap-1.5 shrink-0",onClick:L=>L.stopPropagation(),onKeyDown:L=>L.stopPropagation(),children:[c!==void 0&&l!==void 0&&(()=>{const L=c[l];return L===void 0?null:r.jsxs(r.Fragment,{children:[L.expansion!==null&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx(je,{variant:"outline",size:"icon",className:Gs,onClick:L.expansion.onToggle,disabled:L.expansion.isPending,"aria-pressed":L.expansion.isExpanded,"aria-label":L.expansion.isExpanded?"Collapse all JSON":"Expand all JSON",children:L.expansion.isExpanded?r.jsx(qy,{className:"size-3.5"}):r.jsx(Uy,{className:"size-3.5"})})}),r.jsx(ft,{children:L.expansion.isExpanded?"Collapse all JSON nodes":"Expand all JSON nodes"})]}),L.diffWithRaw!==void 0&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx(je,{variant:"outline",size:"icon",className:ae(Gs,L.diffWithRaw.active&&"border-cyan-300/35 bg-cyan-400/15 text-cyan-100"),onClick:L.diffWithRaw.onToggle,"aria-pressed":L.diffWithRaw.active,"aria-label":L.diffWithRaw.active?"Hide raw diff":"Diff with raw",children:r.jsx(kw,{className:"size-3.5"})})}),r.jsx(ft,{children:L.diffWithRaw.active?"Hide diff with raw request":"Show diff between displayed and raw request body"})]}),L.diffWithPrevious!==void 0&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx(je,{variant:"outline",size:"icon",className:Gs,onClick:L.diffWithPrevious,"aria-label":"Diff with previous",children:r.jsx(dp,{className:"size-3.5"})})}),r.jsx(ft,{children:"Compare this request with the immediately preceding one"})]}),L.copyText!==null&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx(je,{variant:"outline",size:"icon",className:Gs,onClick:L.onCopy,"aria-label":L.copyCopied?"Copied":L.copyLabel,children:L.copyCopied?r.jsx(Ge,{className:"size-3.5 text-cyan-300"}):r.jsx(It,{className:"size-3.5"})})}),r.jsx(ft,{children:L.copyCopied?"Copied to clipboard":L.copyLabel})]})]})})(),u!==void 0&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx(je,{variant:"outline",size:"icon",className:Gs,onClick:u,"aria-label":"Replay request",children:r.jsx(h_,{className:"size-3.5"})})}),r.jsx(ft,{children:"Re-send this request to the provider"})]})]}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:o?r.jsx(it,{className:"size-4 shrink-0"}):r.jsx(Et,{className:"size-4 shrink-0"})})]})]})})});function tE({...e}){return r.jsx(H5,{"data-slot":"collapsible",...e})}function Hz({...e}){return r.jsx(Wp,{"data-slot":"collapsible-trigger",...e})}function nE({...e}){return r.jsx(Hp,{"data-slot":"collapsible-content",...e})}function sE({className:e,children:t,...n}){return r.jsxs(KC,{"data-slot":"scroll-area",className:ae("relative overflow-hidden",e),...n,children:[r.jsx(JC,{"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}),r.jsx(rE,{}),r.jsx(YC,{})]})}function rE({className:e,orientation:t="vertical",...n}){return r.jsx(Qh,{"data-slot":"scroll-area-scrollbar",orientation:t,className:ae("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:r.jsx(sm,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}const T0={file:"file",shell:"shell",browser:"browser",web:"web",mcp:"MCP",code:"code",other:"other"},oE={file:"border-transparent bg-blue-400/5 text-blue-300",shell:"border-transparent bg-teal-400/5 text-teal-300",browser:"border-transparent bg-cyan-400/5 text-cyan-300",web:"border-transparent bg-sky-400/5 text-sky-300",mcp:"border-transparent bg-violet-400/5 text-violet-300",code:"border-transparent bg-emerald-400/5 text-emerald-300",other:"border-transparent bg-muted/30 text-muted-foreground"};function iE({category:e}){switch(e){case"file":return r.jsx(Ew,{className:"size-3.5"});case"shell":return r.jsx(Ds,{className:"size-3.5"});case"browser":return r.jsx(Yw,{className:"size-3.5"});case"web":return r.jsx(up,{className:"size-3.5"});case"mcp":return r.jsx(Ay,{className:"size-3.5"});case"code":return r.jsx(lw,{className:"size-3.5"});case"other":return r.jsx(gw,{className:"size-3.5"})}}function aE({names:e}){return e.length===0?null:r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1",children:[r.jsx("span",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:"required"}),e.slice(0,4).map(t=>r.jsx(Oe,{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&&r.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["+",e.length-4]})]})}function lE({tool:e,called:t}){const[n,s]=p.useState(!1),o=bn(e.name),i=e.description!==null||e.requiredParameters.length>0||e.schema!==null;return r.jsx(tE,{open:n,onOpenChange:s,children:r.jsxs("div",{className:"bg-white/[0.035] rounded-[8px]",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2 px-2.5 py-2",children:[r.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:()=>s(a=>!a),"aria-expanded":n,disabled:!i,children:[r.jsx(iE,{category:e.category}),r.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold text-foreground/90",children:e.name}),t&&r.jsx(Oe,{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"}),r.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:[e.parameterCount," params"]}),e.descriptionPreview!==null&&r.jsx("span",{className:"hidden min-w-0 truncate text-xs text-muted-foreground md:inline",children:e.descriptionPreview}),r.jsx("span",{className:"flex-1"}),i&&(n?r.jsx(it,{className:"size-3.5 shrink-0 text-muted-foreground"}):r.jsx(Et,{className:"size-3.5 shrink-0 text-muted-foreground"}))]}),r.jsx("button",{type:"button",className:"bg-white/[0.045] hover:bg-white/[0.075] 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?r.jsx(Ge,{className:"size-3.5 text-emerald-400"}):r.jsx(It,{className:"size-3.5"})})]}),r.jsx(nE,{children:n&&r.jsxs("div",{className:"space-y-2 bg-white/[0.025] px-2.5 py-2",children:[e.description!==null&&r.jsx("p",{className:"text-xs leading-relaxed text-muted-foreground",children:e.description}),r.jsx(aE,{names:e.requiredParameters}),e.schema!==null&&r.jsx(sE,{className:"bg-black/[0.16] max-h-64 rounded-[8px] p-2",children:r.jsx(p.Suspense,{fallback:r.jsx("div",{className:"text-xs text-muted-foreground",children:"Loading JSON..."}),children:r.jsx(Za,{data:Mo(e.schema),defaultExpandDepth:0})})})]})})]})})}function cE(e,t){return t.length===0?!0:`${e.name} ${e.description??""} ${T0[e.category]}`.toLowerCase().trim().includes(t)}const uE=p.memo(function({summary:t,calledToolNames:n}){const[s,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=>cE(m,c)),[c,t]);if(t===null)return null;const f=t.tools.slice(0,6),d=t.tools.length-f.length;return r.jsxs("section",{className:"bg-black/[0.10] mb-3 overflow-hidden rounded-[8px]",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2 px-3 py-2",children:[r.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[r.jsx($s,{className:"size-4 shrink-0 text-sky-300/80"}),r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[r.jsx("span",{className:"text-sm font-semibold text-foreground",children:"Request Tools"}),r.jsx(Oe,{variant:"outline",className:"h-5 rounded-md px-1.5 py-0 font-mono text-[10px]",children:t.tools.length}),t.toolChoiceLabel!==null&&r.jsxs(Oe,{variant:"outline",className:"h-5 rounded-md px-1.5 py-0 font-mono text-[10px] text-muted-foreground",children:["tool_choice: ",t.toolChoiceLabel]})]}),r.jsx("div",{className:"mt-1 flex min-w-0 flex-wrap gap-1",children:t.categories.map(m=>r.jsxs(Oe,{variant:"outline",className:ae("h-5 rounded-md px-1.5 py-0 font-mono text-[10px]",oE[m.category]),children:[m.count," ",T0[m.category]]},m.category))})]})]}),r.jsxs(je,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2 text-muted-foreground hover:text-cyan-100",onClick:()=>o(m=>!m),"aria-expanded":s,children:[s?r.jsx(it,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"}),s?"Hide":"Show"]})]}),r.jsxs("div",{className:"flex min-w-0 flex-wrap gap-1.5 bg-white/[0.025] px-3 py-2",children:[f.map(m=>r.jsx(Oe,{variant:"outline",className:ae("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)),d>0&&r.jsxs("span",{className:"font-mono text-[10px] leading-5 text-muted-foreground",children:["+",d]})]}),s&&r.jsxs("div",{className:"space-y-2 bg-black/10 px-3 py-3",children:[r.jsxs("label",{className:"bg-white/[0.045] hover:bg-white/[0.075] flex h-8 items-center gap-2 rounded-md px-2 text-xs",children:[r.jsx(mp,{className:"size-3.5 shrink-0 text-muted-foreground"}),r.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"})]}),r.jsx("div",{className:"grid gap-1.5",children:u.length>0?u.map(m=>r.jsx(lE,{tool:m,called:l.has(m.name)},m.name)):r.jsx("p",{className:"py-2 text-xs text-muted-foreground",children:"No matching tools"})})]})]})});function rd(e,t,n){return e==="anthropic"&&t==="full"&&n}function dE(e,t){return e==="full"&&t}function Xi(e,t){return e==="full"&&t}function Qi(e,t){return e==="full"&&t}function fE(e,t,n,s){return e==="anthropic"&&t==="full"&&n&&s}function cs(){return r.jsx("div",{className:"h-1","aria-hidden":"true"})}function pE(e,t){switch(e){case"anatomy":return t===null?"request":"anatomy";case"request":return"request";case"response":return"parsed"}}const hE=15e3,mE=15e3,gE=256*1024,Lo=1024*1024,On="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:bg-white/[0.045] hover:text-foreground data-[state=active]:bg-cyan-300/[0.08] data-[state=active]:text-cyan-100 data-[state=active]:shadow-none";function Hr(e=null){return{status:"idle",text:"",offset:0,totalBytes:e,hasMore:e!==null&&e>0,error:null}}function Do(e){return e??0}function E0(e){return e.bodyContentMode==="compact"||e.bodyContentMode==="truncated"}function A0(e){return E0(e)?Do(e.rawRequestBodyBytes)>Lo||Do(e.responseTextBytes)>Lo:!1}function xE(e){return E0(e)&&!A0(e)}function bE(e){return e instanceof Yo?"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 Vr({status:e,error:t,footprint:n,onRetry:s}){switch(e){case"idle":return null;case"loading":return r.jsx(mr,{tone:"loading",title:"Loading full bodies",children:r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(Qe,{className:"size-3.5 shrink-0 animate-spin text-cyan-200"}),r.jsx("span",{children:"Loading full request and response bodies from the log store."})]}),n!==null&&r.jsx("span",{className:"rounded border border-cyan-300/15 bg-cyan-300/[0.06] px-2 py-0.5 font-mono text-[11px] text-cyan-100",children:n})]})});case"failed":return r.jsx(mr,{tone:"warning",title:t?.title??"Full bodies could not be loaded",children:r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[r.jsx("span",{children:t?.detail??"Compact metadata is still available."}),r.jsxs(je,{type:"button",variant:"outline",size:"sm",className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 gap-1.5 text-xs text-amber-100",onClick:s,children:[r.jsx(yn,{className:"size-3"}),"Retry"]})]})})}}function od(e,t){return e?t.text!==""?t.text:t.status==="success"?"":null:null}function Mn({children:e,className:t}){return r.jsx("div",{className:ae("bg-black/[0.14] inspector-scrollbar mx-3 mb-3 max-h-[72vh] overflow-auto rounded-[8px] p-3",t),children:e})}function uo({children:e}){return r.jsx("div",{className:"bg-white/[0.035] rounded-md px-3 py-5 text-center text-xs italic text-muted-foreground",children:e})}function Zr({children:e}){return r.jsx("pre",{className:"bg-black/[0.18] 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 vE={loading:"border-transparent bg-cyan-400/[0.06] text-cyan-100",warning:"border-transparent bg-amber-400/[0.08] text-amber-100",danger:"border-transparent bg-rose-400/[0.08] text-rose-100"};function mr({tone:e,title:t,children:n}){return r.jsxs("div",{className:ae("mb-3 rounded-md border px-3 py-2 text-xs shadow-[inset_0_1px_0_rgba(255,255,255,0.04)]",vE[e]),children:[t!==void 0&&r.jsx("div",{className:"mb-1 font-semibold",children:t}),r.jsx("div",{className:"leading-relaxed text-muted-foreground",children:n})]})}function qr({label:e,state:t,expectedBytes:n,onLoadMore:s}){const o=t.totalBytes??n,i=o===null?gs(t.offset):`${gs(t.offset)} / ${gs(o)}`,a=t.status!=="loading"&&t.hasMore,l=t.status==="failed"?"Retry":"Load more";return r.jsx(mr,{tone:t.status==="failed"?"warning":"loading",title:`${e} body preview`,children:r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[r.jsxs("span",{children:[t.status==="idle"&&o!==null?`${e} body is ${gs(o)}. Loading the first preview chunk.`:`Loaded ${i}.`,t.status==="failed"&&t.error!==null&&` ${t.error}`]}),a&&r.jsx(je,{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:s,children:l})]})})}function id({headers:e,emptyLabel:t}){const n=e===void 0?[]:Object.entries(e).sort(([s],[o])=>s.localeCompare(o));return n.length===0?r.jsx(uo,{children:t}):r.jsx("div",{className:"bg-black/[0.14] overflow-hidden rounded-[8px] font-mono text-xs",children:n.map(([s,o])=>r.jsxs("div",{className:"grid min-w-0 grid-cols-[minmax(140px,0.32fr)_minmax(0,1fr)] border-b border-white/[0.055] last:border-b-0",children:[r.jsx("div",{className:"min-w-0 truncate bg-white/[0.035] px-2.5 py-2 font-semibold text-cyan-200",children:s}),r.jsx("div",{className:"min-w-0 truncate px-2.5 py-2 text-muted-foreground",title:o,children:o})]},s))})}function yE({active:e,onClick:t}){return r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsxs(je,{variant:e?"default":"outline",size:"sm",className:ae("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:[r.jsx(Lw,{className:"size-3.5 mr-1"}),e?"Showing diff":"Diff with Raw"]})}),r.jsx(ft,{children:e?"Hide diff view":"Compare proxy output against the original raw version"})]})}const wE=p.memo(function({rawBody:e,displayedBody:t,emptyLabel:n}){const s=p.useMemo(()=>FT(e,t),[e,t]);return r.jsx(N0,{result:s,emptyLabel:n})}),_E=p.memo(function({rawHeaders:e,headers:t,emptyLabel:n}){const s=p.useMemo(()=>$T(e,t),[e,t]);return r.jsx(N0,{result:s,emptyLabel:n})}),kE=p.memo(function({log:e,displayNumber:t,viewMode:n="simple",strip:s,slowResponseThresholdSeconds:o,timeDisplayFormat:i,cacheTrend:a=null,onCompareWithPrevious:l,showClientMetadata:c=!0}){const[u,f]=p.useState(!1),[d,m]=p.useState(!1),[h,b]=p.useState(!1),[g,x]=p.useState(!1),[v,y]=p.useState("request"),[_,j]=p.useState(null),[S,N]=p.useState(0),[T,A]=p.useState(null),[I,P]=p.useState(null),[L,E]=p.useState("idle"),[D,w]=p.useState(null),[$,ee]=p.useState(0),[F,te]=p.useState(()=>Hr(e.rawRequestBodyBytes??null)),[V,X]=p.useState(()=>Hr(e.responseTextBytes??null)),H=p.useRef(null),B=p.useRef(e.id),ce=p.useRef(!1),W=I??e,Y=I===null&&A0(e),_e=p.useMemo(()=>RT(e.rawRequestBodyBytes,e.responseTextBytes),[e.rawRequestBodyBytes,e.responseTextBytes]),fe=od(Y,F),xe=od(Y,V),de=W.rawRequestBody??fe,ge=W.responseText??xe,be=W.rawRequestBody===null&&fe!==null,Ce=W.responseText===null&&xe!==null,Re=!be||F.hasMore===!1&&Do(F.totalBytes)<=Lo,k=!Ce||V.hasMore===!1&&Do(V.totalBytes)<=Lo,Q=dr(W),q=m0(Q),O=p.useMemo(()=>q.analyzeRequest(W.rawRequestBody),[q,W.rawRequestBody]),R=p.useMemo(()=>q.analyzeResponse(W.responseText),[q,W.responseText]),re=p.useMemo(()=>!s||Q!=="anthropic"||W.rawRequestBody===null?null:gT(W.rawRequestBody).body,[W.rawRequestBody,Q,s])??de,se=Ji(Re?re:null),Z=Ji(v==="raw-request"&&Re?de:null),le=Ji(v==="raw"&&k?ge:null),z=p.useMemo(()=>W.headers&&Object.keys(W.headers).length>0?JSON.stringify(W.headers,null,2):null,[W.headers]),M=p.useMemo(()=>W.rawHeaders&&Object.keys(W.rawHeaders).length>0?JSON.stringify(W.rawHeaders,null,2):null,[W.rawHeaders]),J=bn(re),oe=bn(de),ie=bn(z),we=bn(M),he=bn(ge),me=p.useMemo(()=>({request:{copyLabel:be?"Copy loaded request preview":"Copy request body",copyText:re,copyCopied:J.copied,onCopy:J.copy,expansion:Re?{isExpanded:se.isExpanded,isPending:se.isPending,onToggle:se.toggle}:null,diffWithRaw:fE(Q,n,s,W.rawRequestBody!==null)?{active:g,onToggle:()=>x(!g)}:void 0,diffWithPrevious:l===void 0?void 0:()=>{l(W)}},"raw-request":{copyLabel:be?"Copy loaded raw request preview":"Copy raw request",copyText:de,copyCopied:oe.copied,onCopy:oe.copy,expansion:Re?{isExpanded:Z.isExpanded,isPending:Z.isPending,onToggle:Z.toggle}:null},...Qi(n,W.headers!==void 0&&Object.keys(W.headers).length>0)?{headers:{copyLabel:"Copy headers",copyText:z,copyCopied:ie.copied,onCopy:ie.copy,expansion:null}}:{},...Xi(n,W.rawHeaders!==void 0&&Object.keys(W.rawHeaders).length>0)?{"raw-headers":{copyLabel:"Copy raw headers",copyText:M,copyCopied:we.copied,onCopy:we.copy,expansion:null}}:{},raw:{copyLabel:Ce?"Copy loaded response preview":"Copy response",copyText:ge,copyCopied:he.copied,onCopy:he.copy,expansion:k?{isExpanded:le.isExpanded,isPending:le.isPending,onToggle:le.toggle}:null}}),[re,be,Re,J,se,g,W,W.rawRequestBody,de,oe,Z,z,ie,M,we,W.responseText,Ce,k,ge,he,le,Q,n,s,l]),Ie=p.useMemo(()=>se.parsedData!==null?q.anatomySegments(se.parsedData):null,[q,se.parsedData]),$e=p.useMemo(()=>yc(se.parsedData),[se.parsedData]),Ft=W.warnings??[],zn=p.useMemo(()=>{if(Ie!==null)return new Set(Ie.map(Ue=>Ue.path))},[Ie]),gt=IT({containerRef:H,setExpandToPath:A,ensureTabActive:()=>{v!=="request"&&y("request")}}),at=p.useCallback((Ue,St)=>{const tt=Ue==="request"?te:X;tt(xt=>({...xt,status:"loading",error:null}));const Ut=new URLSearchParams({part:Ue,offset:String(St),limit:String(gE)});Ke(`/api/logs/${String(e.id)}/body?${Ut.toString()}`,x2,mE).then(xt=>{B.current===e.id&&tt(ns=>({status:"success",text:xt.offset===0?xt.text:`${ns.text}${xt.text}`,offset:xt.nextOffset??xt.totalBytes,totalBytes:xt.totalBytes,hasMore:xt.hasMore,error:null}))}).catch(xt=>{B.current===e.id&&tt(ns=>({...ns,status:"failed",error:bE(xt)}))})},[e.id]),en=p.useCallback(()=>{ce.current||(P(null),E("idle"),w(null),ee(Ue=>Ue+1))},[]),Bs=p.useCallback(()=>{const Ue=!u;Ue&&y(Ie!==null?"anatomy":"request"),f(Ue)},[Ie,u]);return p.useEffect(()=>{B.current=e.id,ce.current=!1,P(null),E("idle"),w(null),ee(0),te(Hr(e.rawRequestBodyBytes??null)),X(Hr(e.responseTextBytes??null))},[e.id,e.rawRequestBodyBytes,e.responseTextBytes]),p.useEffect(()=>{if(!u||!xE(e)||I!==null||ce.current)return;let Ue=!1;return ce.current=!0,E("loading"),w(null),Ke(`/api/logs/${String(e.id)}`,ar,hE).then(St=>{Ue||(ce.current=!1,P(St),E("idle"),w(null))}).catch(St=>{Ue||(ce.current=!1,E("failed"),w(zT(St)))}),()=>{Ue=!0,ce.current=!1}},[u,I,e.bodyContentMode,e.id,e.rawRequestBodyBytes,e.responseTextBytes,$]),p.useEffect(()=>{u&&Y&&F.status==="idle"&&(v!=="request"&&v!=="raw-request"&&v!=="anatomy"||at("request",0))},[v,u,at,F.status,Y]),p.useEffect(()=>{u&&Y&&V.status==="idle"&&(v!=="parsed"&&v!=="raw"||at("response",0))},[v,u,at,V.status,Y]),p.useEffect(()=>{const Ue=St=>{const tt=Si(St);tt!==null&&tt.logId===e.id&&(f(!0),y(pE(tt.tab,Ie)),tt.tab==="response"&&tt.toolCallIndex!==void 0&&(j(tt.toolCallIndex),N(Ut=>Ut+1)))};return window.addEventListener(un,Ue),()=>{window.removeEventListener(un,Ue)}},[Ie,e.id]),r.jsxs(Sn,{children:[r.jsxs("div",{className:ae("bg-card/80 relative mb-1.5 overflow-hidden rounded-[8px] transition-[background-color,box-shadow]",u?"bg-card shadow-[0_18px_60px_rgba(0,0,0,0.30),0_0_0_1px_rgba(103,232,249,0.08)]":"hover:bg-card"),children:[r.jsx(eE,{log:W,displayNumber:t,messageCount:O.messageCount,toolCount:O.toolCount,expanded:u,onToggle:Bs,cacheTrend:a,slowResponseThresholdSeconds:o,showClientMetadata:c,timeDisplayFormat:i,activeTab:v,tabActions:me,onReplay:l===void 0?void 0:()=>{m(!0)}}),u&&r.jsxs("div",{className:"relative bg-black/[0.14] pt-2",onClick:Ue=>Ue.stopPropagation(),onKeyDown:Ue=>Ue.stopPropagation(),children:[r.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"}),r.jsxs(_0,{value:v,onValueChange:y,className:"gap-2",children:[r.jsxs(k0,{variant:"line",className:"bg-white/[0.04] inspector-scrollbar relative mx-3 h-auto w-[calc(100%-1.5rem)] justify-start overflow-x-auto rounded-[8px] p-1",children:[Xi(n,W.rawHeaders!==void 0&&Object.keys(W.rawHeaders).length>0)&&r.jsx(Ct,{className:On,value:"raw-headers",children:"Raw Headers"}),Qi(n,W.headers!==void 0&&Object.keys(W.headers).length>0)&&r.jsx(Ct,{className:On,value:"headers",children:"Headers"}),Ie!==null&&r.jsx(Ct,{className:On,value:"anatomy",children:"Context"}),rd(Q,n,s)&&r.jsx(Ct,{className:On,value:"raw-request",children:"Raw Request"}),r.jsx(Ct,{className:On,value:"request",children:"Request"}),n==="full"&&r.jsx(Ct,{className:On,value:"raw",children:"Raw Response"}),r.jsx(Ct,{className:On,value:"parsed",children:"Response"})]}),rd(Q,n,s)&&r.jsx(Nt,{value:"raw-request",children:v==="raw-request"&&r.jsxs(Mn,{children:[r.jsx(Vr,{status:L,error:D,footprint:_e,onRetry:en}),Y&&r.jsx(qr,{label:"Request",state:F,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>at("request",F.offset)}),de===null?r.jsx(uo,{children:Y?"Request preview is loading":"No request body"}):Z.parsedData!==null?r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(Za,{data:Z.parsedData,bulkDepth:Z.bulkDepth,bulkRevision:Z.bulkRevision})}):r.jsx(Zr,{children:de})]})}),r.jsx(Nt,{value:"request",children:v==="request"&&r.jsxs(Mn,{children:[r.jsx(Vr,{status:L,error:D,footprint:_e,onRetry:en}),Y&&r.jsx(qr,{label:"Request",state:F,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>at("request",F.offset)}),Ft.length>0&&r.jsxs(mr,{tone:"warning",children:[r.jsxs("div",{className:"flex items-center gap-2 font-semibold text-amber-300",children:[r.jsx(rn,{className:"size-3.5"}),"Tool schema warnings"]}),r.jsx("ul",{className:"mt-2 space-y-1 text-muted-foreground",children:Ft.map(Ue=>r.jsx("li",{children:Ue},Ue))})]}),r.jsx(uE,{summary:$e,calledToolNames:R.toolNames??[]}),g?r.jsx(wE,{rawBody:W.rawRequestBody,displayedBody:re,emptyLabel:"No transformation applied; raw and sent request bodies are identical."}):r.jsx("div",{ref:H,children:re===null?r.jsx(uo,{children:Y?"Request preview is loading":"No request body"}):se.parsedData!==null?r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(Za,{data:se.parsedData,bulkDepth:se.bulkDepth,bulkRevision:se.bulkRevision,anatomyPaths:zn,expandToPath:T})}):r.jsx(Zr,{children:re})})]})}),Ie!==null&&r.jsx(Nt,{value:"anatomy",children:v==="anatomy"&&r.jsx(Mn,{className:"p-0",children:r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(ST,{parsed:se.parsedData,inputTokens:W.inputTokens??null,model:W.model,segments:Ie,onSegmentActivate:gt})})})}),Qi(n,W.headers!==void 0&&Object.keys(W.headers).length>0)&&r.jsx(Nt,{value:"headers",children:v==="headers"&&r.jsxs(Mn,{children:[r.jsx("div",{className:"flex justify-end gap-2 mb-2",children:dE(n,W.rawHeaders!==void 0&&Object.keys(W.rawHeaders).length>0)&&r.jsx(yE,{active:h,onClick:Ue=>{Ue.stopPropagation(),b(!h)}})}),h?r.jsx(_E,{rawHeaders:W.rawHeaders,headers:W.headers,emptyLabel:"No transformation applied; raw and processed headers are identical."}):r.jsx(id,{headers:W.headers,emptyLabel:"No headers captured"})]})}),Xi(n,W.rawHeaders!==void 0&&Object.keys(W.rawHeaders).length>0)&&r.jsx(Nt,{value:"raw-headers",children:v==="raw-headers"&&r.jsx(Mn,{children:r.jsx(id,{headers:W.rawHeaders,emptyLabel:"No raw headers captured"})})}),r.jsx(Nt,{value:"raw",children:v==="raw"&&r.jsxs(Mn,{className:"space-y-3",children:[r.jsx(Vr,{status:L,error:D,footprint:_e,onRetry:en}),Y&&r.jsx(qr,{label:"Response",state:V,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>at("response",V.offset)}),W.error!==void 0&&W.error!==null&&r.jsx(mr,{tone:"danger",title:"SSE Error",children:r.jsx("span",{className:"font-mono",children:W.error})}),ge!==null&&k?r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(TT,{text:ge,defaultExpandDepth:0,bulkDepth:le.bulkDepth,bulkRevision:le.bulkRevision})}):ge!==null?r.jsx(Zr,{children:ge}):r.jsx(uo,{children:Y?"Response preview is loading":"No response"}),W.streaming===!0&&r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(NT,{logId:W.id,truncated:W.streamingChunksPath!==null})})]})}),r.jsx(Nt,{value:"parsed",children:v==="parsed"&&r.jsxs(Mn,{children:[r.jsx(Vr,{status:L,error:D,footprint:_e,onRetry:en}),Y&&r.jsx(qr,{label:"Response",state:V,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>at("response",V.offset)}),Ce&&!k?r.jsx(Zr,{children:ge}):r.jsx(p.Suspense,{fallback:r.jsx(cs,{}),children:r.jsx(CT,{responseText:ge,responseStatus:W.responseStatus,streaming:W.streaming,inputTokens:W.inputTokens,outputTokens:W.outputTokens,cacheCreationInputTokens:W.cacheCreationInputTokens,cacheReadInputTokens:W.cacheReadInputTokens,apiFormat:Q,error:W.error,focusedToolIndex:_,toolFocusNonce:S})})]})})]})]})]}),r.jsx(p.Suspense,{fallback:null,children:r.jsx(jT,{log:W,displayNumber:t,open:d,onOpenChange:m})})]})});function jE(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 ea(e){return e?"cursor-pointer transition-transform hover:scale-110":""}function SE({stopReason:e,isPending:t,isFirst:n,isTurnStart:s,isOnlyEntry:o=!1,crabIndex:i=0,collapsible:a=!1,onToggle:l}){const c=$l(e),u=o&&s&&c,f=t&&!c,d=a&&l!==void 0,m=p.useMemo(()=>wc(i),[i]),h=p.useMemo(()=>dT(i),[i]),b=x=>{!d||l===void 0||(x.stopPropagation(),l())},g=x=>{!d||l===void 0||x.key!=="Enter"&&x.key!==" "||(x.preventDefault(),l())};return r.jsxs("div",{className:"flex flex-col items-center w-6 shrink-0 pt-0.5 pb-0.5",children:[r.jsx("div",{className:"flex justify-center h-[calc(0.75rem-8px)]",children:!n&&r.jsx("div",{className:"w-px bg-muted-foreground/18 h-full"})}),u?r.jsx("span",{role:d?"button":void 0,tabIndex:d?0:void 0,title:"Single-request turn",className:ea(d),onClick:b,onKeyDown:g,children:r.jsx(h,{className:ae("size-3.5 text-[#80FF00]","animate-crab-settle","drop-shadow-[0_0_4px_rgba(128,255,0,0.5)]")})}):c?r.jsx("span",{role:d?"button":void 0,tabIndex:d?0:void 0,title:jE(e),className:ea(d),onClick:b,onKeyDown:g,children:r.jsx(m,{className:ae("size-3.5 text-amber-400","animate-crab-settle","drop-shadow-[0_0_4px_rgba(251,191,36,0.5)]")})}):s?r.jsx("span",{role:d?"button":void 0,tabIndex:d?0:void 0,title:"Start of turn",className:ea(d),onClick:b,onKeyDown:g,children:r.jsx(m,{className:ae("size-3.5 text-emerald-400","animate-crab-appear","drop-shadow-[0_0_4px_rgba(52,211,153,0.5)]")})}):f?r.jsx("span",{title:"Processing",children:r.jsx(m,{className:ae("size-3.5 text-amber-300/80","animate-crab-crawl")})}):r.jsx("span",{title:"Request in turn",children:r.jsx(m,{className:"size-3.5 text-muted-foreground/40"})}),r.jsx("div",{className:"flex-1 flex justify-center min-h-0",children:!c&&r.jsx("div",{className:ae("w-0.5 h-full",t?"border-dashed bg-transparent border-l border-muted-foreground/14":"bg-muted-foreground/18")})})]})}const CE=4;function NE({event:e}){return r.jsxs("button",{type:"button",className:"inline-flex h-6 max-w-[11rem] min-w-0 items-center gap-1 rounded-md bg-white/[0.028] px-1.5 text-[11px] text-muted-foreground transition-colors hover:bg-sky-400/[0.08] hover:text-sky-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",onClick:()=>pr({logId:e.logId,tab:"response",toolCallIndex:e.index}),"aria-label":`Open response tool call ${e.name}`,children:[r.jsx($s,{className:"size-3 shrink-0 text-sky-400/65"}),r.jsx("span",{className:"min-w-0 truncate font-mono font-semibold",children:e.name})]},e.id)}function TE({events:e,warnings:t=[]}){if(e.length===0&&t.length===0)return null;const n=e.slice(0,CE),s=Math.max(0,e.length-n.length);return r.jsxs("div",{className:"mx-3 mb-2 flex min-w-0 items-center gap-1.5 overflow-hidden rounded-md bg-black/[0.10] px-2 py-1 shadow-[inset_0_1px_0_rgba(255,255,255,0.025)]",children:[e.length>0&&r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1 rounded-md px-1.5 font-mono text-[10px] font-semibold uppercase tracking-[0.12em] text-sky-300/70",children:[r.jsx($s,{className:"size-3"}),e.length]}),t.length>0&&r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1 rounded-md border border-amber-300/20 bg-amber-300/[0.08] px-1.5 font-mono text-[10px] font-semibold text-amber-100",children:[r.jsx(rn,{className:"size-3"}),t.length]}),r.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-1 overflow-hidden",children:[n.map(o=>r.jsx(NE,{event:o},o.id)),s>0&&r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center rounded-md bg-white/[0.025] px-1.5 font-mono text-[11px] font-semibold text-muted-foreground",children:["+",s]})]})]})}const ad=180,ta=new WeakMap;function EE(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 AE(e,t,n){return e>1&&t&&!n}function Ka(e){const t=[];let n=[],s=0;for(let o=0;o<e.length;o+=1){const i=e[o];if(i===void 0)continue;n.push({log:i,stopReason:vp(i),sessionLogNumber:o+1});const a=n[n.length-1];a!==void 0&&$l(a.stopReason)&&(t.push({entries:n,turnIndex:s}),n=[],s+=1)}return n.length>0&&t.push({entries:n,turnIndex:s}),t}function IE(e){const t=new Map;for(const n of e)for(let s=1;s<n.logs.length;s+=1){const o=n.logs[s],i=n.logs[s-1];if(o===void 0||i===void 0)continue;const a=dr(o),l=dr(i);a==="unknown"||a!==l||t.set(o.id,i)}return t}function I0(e){if(e===null)return null;try{const t=JSON.parse(e);return typeof t=="string"?JSON.parse(t):t}catch{return null}}function fo(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>ad?`${n.slice(0,ad-1)}...`:n}function po(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 RE(e){const t=I0(e.responseText),n=ke(t,"content");if(!Array.isArray(n))return[];const s=[];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");s.push({id:`${String(e.id)}-anthropic-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"anthropic",name:a,argumentsText:po(l),argumentsPreview:fo(l)})}return s}function zE(e){const t=I0(e.responseText),n=ke(t,"choices");if(!Array.isArray(n))return[];const s=[];for(const i of n){const a=ke(i,"message"),l=ke(a,"tool_calls");if(Array.isArray(l))for(const f of l){const d=ke(f,"function"),m=ke(d,"name");if(typeof m!="string"||m.length===0)continue;const h=ke(d,"arguments");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:m,argumentsText:po(h),argumentsPreview:fo(h)})}const c=ke(a,"function_call"),u=ke(c,"name");if(typeof u=="string"&&u.length>0){const f=ke(c,"arguments");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:u,argumentsText:po(f),argumentsPreview:fo(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");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:a,argumentsText:po(l),argumentsPreview:fo(l)})}return s}function _c(e){const t=ta.get(e);if(t!==void 0&&t.apiFormat===e.apiFormat&&t.responseText===e.responseText)return t.events;const n=dr(e);if(!EE(e,n)){const o=[];return ta.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:o}),o}let s;switch(n){case"anthropic":s=RE(e);break;case"openai":s=zE(e);break;case"unknown":s=[];break}return ta.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:s}),s}function PE(e,t,n=0){let s=0,o=0,i=0,a=0,l=0,c=0,u=0,f=0,d=null,m=0;for(const h of e)h.responseStatus===null?o+=1:h.responseStatus>=400&&(s+=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&&(f+=h.elapsedMs,d=d===null?h.elapsedMs:Math.max(d,h.elapsedMs)),m+=_c(h).length;return{llmCallCount:e.length,toolCallCount:m,failedCallCount:s,pendingCallCount:o,slowCallCount:i,totalInputTokens:a,totalOutputTokens:l,totalCacheCreationInputTokens:c,totalCacheReadInputTokens:u,totalElapsedMs:f,maxElapsedMs:d,startedAt:e[0]?.timestamp??null,endedAt:e[e.length-1]?.timestamp??null,knowledgeCandidateCount:n}}function na(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}const OE=p.memo(function({entries:t,viewMode:n,strip:s,slowResponseThresholdSeconds:o,cacheTrends:i,onCompareWithPrevious:a,comparisonPredecessors:l,turnIndex:c=0,timeDisplayFormat:u,pendingFocusRequest:f,showLogClientMetadata:d=!0}){const m=t.length-1,h=t[m]?.stopReason??null,b=h!==null?$l(h):!1,g=t[m]?.log.responseStatus===null,x=t.length===1,v=AE(t.length,b,g),[y,_]=p.useState(!1),j=p.useRef(!1);p.useEffect(()=>{v?b&&!j.current&&_(!0):_(!1),j.current=b},[v,b]),p.useEffect(()=>{const F=te=>{const V=Si(te);V!==null&&t.some(X=>X.log.id===V.logId)&&v&&_(!1)};return window.addEventListener(un,F),()=>{window.removeEventListener(un,F)}},[v,t]),p.useEffect(()=>{if(f===void 0||!t.some(te=>te.log.id===f.logId))return;v&&_(!1);const F=window.setTimeout(()=>{pr({logId:f.logId,tab:f.tab,source:"virtualizer"})},0);return()=>window.clearTimeout(F)},[v,t,f]);const S=p.useCallback(()=>{v&&_(F=>!F)},[v]),N=p.useMemo(()=>{let F=0,te=0,V=null,X=!1;for(const H of t)H.log.inputTokens!==null&&(F+=H.log.inputTokens,X=!0),H.log.outputTokens!==null&&(te+=H.log.outputTokens,X=!0),H.log.elapsedMs!==null&&(V=V===null?H.log.elapsedMs:Math.max(V,H.log.elapsedMs));return{totalInput:F,totalOutput:te,hasTokens:X,maxElapsed:V}},[t,m]),T=c%2===0?"bg-white/[0.008]":"bg-cyan-300/[0.008]",A=N.maxElapsed!==null&&o>0&&N.maxElapsed>o*1e3,I=p.useMemo(()=>{const F=new Map;for(const te of t){const V=_c(te.log);V.length>0&&F.set(te.log.id,V)}return F},[t]),[P,L]=p.useState(0),E=p.useRef(null);p.useEffect(()=>{const F=E.current;if(!F)return;let te=0;const V=new ResizeObserver(()=>{window.cancelAnimationFrame(te),te=window.requestAnimationFrame(()=>L(X=>X+1))});return V.observe(F),()=>{V.disconnect(),window.cancelAnimationFrame(te)}},[]);const D=t[0]?.log.id??c,w=`Turn ${String(c+1)}`,$=p.useMemo(()=>wc(D%12),[D]),ee=p.useMemo(()=>({contentVisibility:"auto",containIntrinsicSize:y?"48px":"160px"}),[y]);return r.jsx("div",{ref:E,style:ee,tabIndex:y?void 0:0,role:y?void 0:"group","aria-label":y?void 0:w,"data-nav-id":y?void 0:`turn-${String(D)}`,className:ae("rounded-[8px] transition-[background-color,box-shadow]",g?"bg-amber-300/[0.018] shadow-[0_0_0_1px_rgba(252,211,77,0.035)]":"",!y&&"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-none"),children:y?r.jsxs("div",{"data-nav-id":`turn-collapsed-${String(D)}`,"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:F=>{(F.key==="Enter"||F.key===" ")&&(F.preventDefault(),S())},children:[r.jsxs("div",{className:"w-6 shrink-0 flex flex-col items-center pt-1.5 pb-1.5",children:[r.jsx("div",{className:"flex justify-center h-[calc(0.75rem-8px)]"}),r.jsx($,{className:ae("size-3.5",g?"animate-crab-crawl text-amber-300/80":"animate-crab-appear text-emerald-400",g?"drop-shadow-[0_0_4px_rgba(252,211,77,0.42)]":"drop-shadow-[0_0_4px_rgba(52,211,153,0.45)]")}),r.jsx("div",{className:"flex-1 flex justify-center min-h-0",children:r.jsx("div",{className:"w-px bg-muted-foreground/14 h-full"})}),b&&r.jsx($,{className:ae("size-3.5 animate-crab-settle text-amber-400","drop-shadow-[0_0_4px_rgba(251,191,36,0.45)]")})]}),t.length>1&&r.jsxs("div",{className:ae("flex-1 min-w-0 mb-0.5 rounded-[8px] py-1.5 px-3 flex items-center gap-3 text-xs","bg-card/80 transition-colors hover:bg-card",T),children:[r.jsx("span",{className:"font-mono text-[10px] font-semibold uppercase tracking-[0.14em] text-muted-foreground/70",children:w}),r.jsxs("span",{className:"text-blue-300/85 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??"?"]}),r.jsxs("span",{className:"text-muted-foreground shrink-0",children:[t.length," request",t.length>1?"s":""]}),N.maxElapsed!==null&&r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsxs("span",{className:ae("flex items-center gap-1 shrink-0",A?"text-amber-400":"text-muted-foreground"),children:[r.jsx(sn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:na(N.maxElapsed)}),A&&r.jsx(rn,{className:"size-3","aria-label":"Slow response"})]})}),r.jsx(ft,{children:A?`Slow response: ${na(N.maxElapsed)} exceeds ${na(o*1e3)}`:"Slowest request in this turn"})]})}),N.hasTokens&&r.jsxs("span",{className:"flex items-center gap-1 shrink-0",children:[r.jsx(lr,{className:"size-3 text-muted-foreground"}),r.jsxs("span",{className:"font-mono tabular-nums",children:[r.jsxs("span",{className:"text-blue-400",children:["IN ",Fe(N.totalInput)]})," / ",r.jsxs("span",{className:"text-amber-400",children:["OUT ",Fe(N.totalOutput)]})]})]}),r.jsx("span",{className:"flex-1 min-w-0"}),r.jsx("span",{className:"bg-white/[0.045] inline-flex size-7 shrink-0 items-center justify-center rounded-md text-slate-200","aria-hidden":"true",children:r.jsx(Et,{className:"size-4 shrink-0"})})]})]}):t.map((F,te)=>{const{log:V,stopReason:X}=F,H=te===0;return r.jsxs("div",{className:"flex items-stretch",children:[r.jsx(SE,{stopReason:X,isPending:V.responseStatus===null,isFirst:te===0,isTurnStart:H,isOnlyEntry:x,crabIndex:V.id%12,collapsible:v&&H,onToggle:S}),r.jsxs("div",{className:ae("flex-1 min-w-0 mb-0.5 rounded-[8px]",T),children:[r.jsx(kE,{log:V,displayNumber:F.sessionLogNumber,viewMode:n,strip:s,slowResponseThresholdSeconds:o,timeDisplayFormat:u,cacheTrend:i?.get(V.id)??null,showClientMetadata:d,onCompareWithPrevious:l.has(V.id)?a:void 0}),r.jsx(TE,{events:I.get(V.id)??[],warnings:V.warnings??[]})]})]},V.id)})})}),ME=24,LE=132,DE=8;function $E(e){return e>ME}function FE(e){const t=new Map;for(let n=0;n<e.length;n++){const s=e[n];if(s!==void 0)for(const o of s.entries)t.set(o.log.id,n)}return t}function R0(e,t,n){return r.jsx(OE,{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 UE(e){return $E(e.turnGroups.length)?r.jsx(BE,{...e}):r.jsx(r.Fragment,{children:e.turnGroups.map(t=>R0(t,e))})}function BE(e){const{turnGroups:t}=e,[n,s]=p.useState(null),o=X4({count:t.length,estimateSize:()=>LE,overscan:DE,getItemKey:a=>t[a]?.turnIndex??a}),i=p.useMemo(()=>FE(t),[t]);return p.useEffect(()=>{const a=l=>{const c=Si(l);if(c===null||c.source==="virtualizer")return;const u=i.get(c.logId);u!==void 0&&(o.scrollToIndex(u,{align:"center"}),s(f=>({...c,turnIndex:u,nonce:f===null?1:f.nonce+1})))};return window.addEventListener(un,a),()=>{window.removeEventListener(un,a)}},[i,o]),r.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 r.jsx("div",{"data-index":a.index,ref:o.measureElement,className:"absolute left-0 top-0 w-full",style:{transform:`translateY(${a.start}px)`},children:R0(l,e,c)},a.key)})})}const kc=Ee(["episode","procedure","preference","project-fact"]),WE=Ee(["draft","promoted","failed"]),z0=K({source:Ae("agent-inspector"),sessionId:C(),logIds:pe(G().int().positive()),project:C().nullable(),models:pe(C())}),HE=K({redacted:Le(),patterns:pe(C())}),jr=K({id:C(),type:kc,title:C(),content:C(),tags:pe(C()),source:Ae("agent-inspector"),sessionId:C(),logIds:pe(G().int().positive()),evidence:z0,status:WE,createdAt:C(),updatedAt:C(),openClawMemoryId:C().nullable(),error:C().nullable(),redaction:HE});K({idempotencyKey:C(),type:kc,title:C(),content:C(),tags:pe(C()),source:Ae("agent-inspector"),project:C().nullable(),evidence:z0});const VE=K({id:C(),type:kc.or(C()),title:C(),content:C(),score:G().nullable(),source:C().nullable(),project:C().nullable(),evidence:$n().optional()});K({results:pe(VE),warning:C().nullable()});const ZE=K({candidates:pe(jr)}),qE=K({candidate:jr}),GE=K({error:C().optional(),candidate:jr.optional()}),KE=K({candidate:jr}),JE=3e4,YE=15e3,XE=15e3,QE={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 Ja(e){return e===null?"-":e<1e3?`${String(e)}ms`:`${(e/1e3).toFixed(1)}s`}function eA(e,t,n){return e===null||t===null?null:Dl(e,t,n)}function tA(e){return`${String(e)} candidate${e===1?"":"s"}`}function P0(e){return`log-${String(e)}`}function O0(e){const t=P0(e),n=document.getElementById(t);window.history.replaceState(null,"",`#${t}`),n instanceof HTMLElement&&(n.scrollIntoView({block:"center",behavior:"smooth"}),n.focus({preventScroll:!0}))}function nA(e){for(const t of e)if(t.responseStatus!==null&&t.responseStatus>=400)return t;return null}function sA(e){let t=null,n=-1;for(const s of e)s.elapsedMs!==null&&s.elapsedMs>n&&(t=s,n=s.elapsedMs);return t}function rA(e){for(const t of e)if(_c(t).length>0)return t;return null}function oA(e){const t=new Map;for(let n=0;n<e.length;n+=1){const s=e[n];s!==void 0&&t.set(s.id,n+1)}return t}function ws(e,t){return String(t.get(e)??e)}function iA(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=rA(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 #${ws(n.id,e.displayNumberByLogId)}`,logId:n.id});const s=nA(e.logs);s!==null&&t.push({kind:"failure",title:`Failure #${String(s.responseStatus)}`,detail:`First failed request is #${ws(s.id,e.displayNumberByLogId)}`,logId:s.id});const o=sA(e.logs);if(o!==null&&e.summary.maxElapsedMs!==null&&t.push({kind:"slow",title:`Slowest ${Ja(e.summary.maxElapsedMs)}`,detail:`Max latency observed at #${ws(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 aA(e){switch(e){case"session":return r.jsx(Qo,{className:"size-3.5 text-blue-400"});case"tool":return r.jsx($s,{className:"size-3.5 text-sky-400/70"});case"slow":return r.jsx(sn,{className:"size-3.5 text-amber-400"});case"failure":return r.jsx(lp,{className:"size-3.5 text-destructive"});case"candidate":return r.jsx(ap,{className:"size-3.5 text-emerald-400"})}}function lA({insights:e}){return e.length===0?null:r.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=>r.jsxs("button",{type:"button",className:ae("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&&O0(t.logId)},disabled:t.logId===null,children:[aA(t.kind),r.jsxs("span",{className:"min-w-0",children:[r.jsx("span",{className:"block truncate font-medium text-foreground/90",children:t.title}),r.jsx("span",{className:"block truncate font-mono text-[10px]",children:t.detail})]})]},`${t.kind}-${t.title}`))})}function cA(e){switch(e){case"draft":return"Draft";case"promoted":return"Promoted";case"failed":return"Failed"}}function uA(e,t){if(t)return"Promoting";switch(e.status){case"draft":return"Promote";case"failed":return"Retry";case"promoted":return"Promoted"}}function dA(e){return e.redaction.redacted?`Redacted ${e.redaction.patterns.join(", ")}`:"No sensitive pattern matched"}function fA(e,t){const n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-3)}...`}function pA(e,t){const n=e[0],s=e[e.length-1];if(n===void 0)return"No evidence logs";const o=ws(n,t);return s===void 0||n===s?`#${o}`:`#${o}-#${ws(s,t)}`}function ld(e){return e.join(", ")}function hA(e){return e.split(",").map(t=>t.trim()).filter(t=>t.length>0)}function mA({candidate:e,isPromoting:t,isUpdating:n,onPromoteCandidate:s,onUpdateCandidate:o,displayNumberByLogId:i}){const[a,l]=p.useState(!1),[c,u]=p.useState(e.type),[f,d]=p.useState(e.title),[m,h]=p.useState(e.content),[b,g]=p.useState(ld(e.tags)),[x,v]=p.useState(null),y=e.status!=="promoted",_=e.status!=="promoted",j=p.useCallback(()=>{u(e.type),d(e.title),h(e.content),g(ld(e.tags)),v(null)},[e.content,e.tags,e.title,e.type]),S=p.useCallback(async()=>{const N=f.trim(),T=m.trim(),A=hA(b);if(N.length===0){v("Title is required.");return}if(T.length===0){v("Content is required.");return}if(A.length===0){v("At least one tag is required.");return}v(null),await o(e.id,{type:c,title:N,content:T,tags:A})&&l(!1)},[e.id,m,b,f,c,o]);return a?r.jsx("div",{className:"border border-border bg-card shadow-sm rounded-[8px] px-2.5 py-2",children:r.jsxs("div",{className:"grid gap-2",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsxs("select",{value:c,disabled:n,onChange:N=>{const T=jr.shape.type.safeParse(N.currentTarget.value);T.success&&u(T.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:[r.jsx("option",{value:"episode",children:"episode"}),r.jsx("option",{value:"procedure",children:"procedure"}),r.jsx("option",{value:"preference",children:"preference"}),r.jsx("option",{value:"project-fact",children:"project-fact"})]}),r.jsx("input",{value:f,disabled:n,onChange:N=>d(N.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"})]}),r.jsx("textarea",{value:m,disabled:n,onChange:N=>h(N.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"}),r.jsx("input",{value:b,disabled:n,onChange:N=>g(N.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"}),r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsxs("span",{className:"inline-flex items-center gap-1 text-[10px] text-muted-foreground",children:[r.jsx(iu,{className:"size-3"}),"Saving reruns Inspector redaction before promotion."]}),r.jsx("span",{className:"flex-1"}),x!==null&&r.jsx("span",{className:"text-[10px] text-destructive",children:x}),r.jsxs(je,{type:"button",variant:"ghost",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:n,onClick:()=>{j(),l(!1)},children:[r.jsx(vr,{className:"size-3.5"}),"Cancel"]}),r.jsxs(je,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:n,onClick:()=>{S()},children:[n?r.jsx(yn,{className:"size-3.5 animate-spin"}):r.jsx(v_,{className:"size-3.5"}),"Save"]})]})]})}):r.jsxs("div",{className:"rounded-md border border-border/80 bg-background/60 px-2.5 py-2",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(Oe,{variant:"outline",className:"h-5 px-1.5 text-[10px] font-mono",children:e.type}),r.jsx("span",{className:"min-w-0 flex-1 truncate text-xs font-medium",title:e.title,children:e.title}),r.jsx(Oe,{variant:"outline",className:ae("h-5 shrink-0 px-1.5 text-[10px] font-mono",QE[e.status]),children:cA(e.status)})]}),r.jsx("p",{className:"mt-1 text-[11px] leading-relaxed text-muted-foreground",title:e.content,children:fA(e.content,360)}),r.jsxs("div",{className:"mt-2 flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] text-muted-foreground",children:[r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(Sw,{className:"size-3"}),pA(e.logIds,i)]}),r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(iu,{className:"size-3"}),dA(e)]}),e.status==="promoted"&&r.jsxs("span",{className:"inline-flex items-center gap-1 text-emerald-500",children:[r.jsx(ya,{className:"size-3"}),e.openClawMemoryId??"OpenClaw"]}),e.status==="failed"&&e.error!==null&&r.jsxs("span",{className:"inline-flex items-center gap-1 text-destructive",children:[r.jsx(lp,{className:"size-3"}),e.error]})]}),r.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-1.5",children:[e.logIds.map(N=>{const T=ws(N,i);return r.jsxs("a",{href:`#${P0(N)}`,onClick:A=>{A.preventDefault(),O0(N)},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 ${T}`,title:`Log ID ${String(N)}`,children:["#",T]},N)}),r.jsx("span",{className:"flex-1"}),_&&r.jsxs(je,{type:"button",variant:"ghost",size:"sm",className:"h-6 gap-1.5 px-2 text-[10px]",disabled:n||t,onClick:()=>l(!0),children:[r.jsx(pp,{className:"size-3"}),"Review"]}),r.jsxs(je,{type:"button",variant:y?"outline":"ghost",size:"sm",className:"h-6 gap-1.5 px-2 text-[10px]",onClick:()=>s(e.id),disabled:!y||t||n,children:[t?r.jsx(yn,{className:"size-3 animate-spin"}):y?r.jsx(iw,{className:"size-3"}):r.jsx(ya,{className:"size-3"}),uA(e,t)]})]})]})}function gA({candidates:e,promotingCandidateIds:t,updatingCandidateIds:n,onPromoteCandidate:s,onUpdateCandidate:o,displayNumberByLogId:i}){return e.length===0?null:r.jsx("div",{className:"mt-2 grid gap-1.5",children:e.map(a=>r.jsx(mA,{candidate:a,isPromoting:t.has(a.id),isUpdating:n.has(a.id),onPromoteCandidate:s,onUpdateCandidate:o,displayNumberByLogId:i},a.id))})}function xA({logs:e,scopeId:t,slowResponseThresholdSeconds:n,showRollupMetrics:s,timeDisplayFormat:o}){const[i,a]=p.useState([]),[l,c]=p.useState(!0),[u,f]=p.useState({status:"idle",error:null}),[d,m]=p.useState(()=>new Set),[h,b]=p.useState(()=>new Set),g=i.length>0,x=p.useMemo(()=>PE(e,n,i.length),[i.length,e,n]),v=p.useMemo(()=>oA(e),[e]),y=p.useMemo(()=>iA({logs:e,scopeId:t,summary:x,candidates:i,displayNumberByLogId:v}),[i,v,e,t,x]),_=s||x.maxElapsedMs!==null,j=p.useMemo(()=>eA(x.startedAt,x.endedAt,o),[x.endedAt,x.startedAt,o]),S=p.useCallback(()=>{e.length===0||u.status==="loading"||(f({status:"loading",error:null}),(async()=>{try{const A=await Ke(`/api/knowledge/sessions/${encodeURIComponent(t)}/candidates`,ZE,JE,{method:"POST"},I=>`Candidate generation failed with ${String(I.status)}`);a(A.candidates),c(A.candidates.length>0),f(A.candidates.length>0?{status:"ready",error:null}:{status:"failed",error:"No candidate was generated for this trace scope."})}catch(A){f({status:"failed",error:A instanceof Error?A.message:"Candidate response was invalid"})}})())},[u.status,e.length,t]),N=p.useCallback(A=>{m(I=>{if(I.has(A))return I;const P=new Set(I);return P.add(A),P}),(async()=>{try{const I=await Fn(`/api/knowledge/candidates/${encodeURIComponent(A)}/promote`,YE,{method:"POST"}),P=await I.json().catch(()=>null),L=qE.safeParse(P);if(I.ok&&L.success){a(D=>D.map(w=>w.id===L.data.candidate.id?L.data.candidate:w)),f({status:"ready",error:null});return}const E=GE.safeParse(P);E.success&&E.data.candidate!==void 0&&a(D=>D.map(w=>w.id===E.data.candidate?.id?E.data.candidate:w)),f({status:"failed",error:E.success?E.data.error??"Candidate promotion failed":`Candidate promotion failed with ${String(I.status)}`})}catch(I){f({status:"failed",error:I instanceof Error?I.message:"Candidate promotion failed"})}finally{m(I=>{const P=new Set(I);return P.delete(A),P})}})()},[]),T=p.useCallback(async(A,I)=>{b(P=>{if(P.has(A))return P;const L=new Set(P);return L.add(A),L});try{const P=await Ke(`/api/knowledge/candidates/${encodeURIComponent(A)}`,KE,XE,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)},L=>`Candidate update failed with ${String(L.status)}`);return a(L=>L.map(E=>E.id===P.candidate.id?P.candidate:E)),f({status:"ready",error:null}),!0}catch(P){return f({status:"failed",error:P instanceof Error?P.message:"Candidate update failed"}),!1}finally{b(P=>{const L=new Set(P);return L.delete(A),L})}},[]);return e.length===0?null:r.jsxs("section",{className:"border border-border bg-card shadow-sm mb-2 rounded-[8px] px-3 py-2",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2 text-xs",children:[s&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 font-semibold text-foreground",children:[r.jsx(Qo,{className:"size-3.5 text-blue-400"}),x.llmCallCount," LLM"]}),r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[r.jsx($s,{className:"size-3.5 text-sky-400/70"}),x.toolCallCount," tools"]}),s&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[r.jsx(lr,{className:"size-3.5 text-emerald-400"}),r.jsxs("span",{className:"font-mono",children:[Fe(x.totalInputTokens)," / ",Fe(x.totalOutputTokens)]})]}),(x.totalCacheCreationInputTokens>0||x.totalCacheReadInputTokens>0)&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[r.jsx(lr,{className:"size-3.5 text-purple-400"}),r.jsxs("span",{className:"font-mono",children:["KV Cache +",Fe(x.totalCacheCreationInputTokens)," / ~",Fe(x.totalCacheReadInputTokens)]})]}),_&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[r.jsx(sn,{className:"size-3.5"}),s&&r.jsx("span",{className:"font-mono",children:Ja(x.totalElapsedMs)}),x.maxElapsedMs!==null&&r.jsxs("span",{className:"font-mono text-muted-foreground/70",children:["max ",Ja(x.maxElapsedMs)]})]}),s&&j!==null&&r.jsx("span",{className:"font-mono text-muted-foreground/70",children:j}),(x.failedCallCount>0||x.pendingCallCount>0||x.slowCallCount>0)&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-amber-400",children:[r.jsx(rn,{className:"size-3.5"}),r.jsxs("span",{className:"font-mono",children:[x.failedCallCount," fail / ",x.pendingCallCount," pending /"," ",x.slowCallCount," slow"]})]}),r.jsx("span",{className:"flex-1"}),g&&r.jsx(Oe,{variant:"outline",className:"h-6 px-2 text-[10px] font-mono",children:tA(x.knowledgeCandidateCount)}),r.jsxs(je,{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"?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(ap,{className:"size-3.5"}),"Candidate"]}),g&&r.jsx(je,{type:"button",variant:"ghost",size:"icon",className:"size-7 text-muted-foreground",onClick:()=>c(A=>!A),"aria-expanded":l,"aria-label":l?"Collapse memory candidates":"Expand memory candidates",children:l?r.jsx(it,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"})})]}),u.status==="failed"&&r.jsx("p",{className:"mt-2 text-xs text-destructive",children:u.error}),r.jsx(lA,{insights:y}),l&&r.jsx(gA,{candidates:i,promotingCandidateIds:d,updatingCandidateIds:h,onPromoteCandidate:N,onUpdateCandidate:T,displayNumberByLogId:v})]})}function bA(e){let t=0,n=0;for(const s of e)s.inputTokens!==null&&(t+=s.inputTokens),s.outputTokens!==null&&(n+=s.outputTokens);return{totalInputTokens:t,totalOutputTokens:n}}function vA(e){const t=new Map;for(const n of e){if(n.model===null)continue;const s=x3(n.model);if(s==="unknown")continue;let o=t.get(s);o===void 0&&(o=new Set,t.set(s,o)),o.add(n.model)}return[...t.entries()].map(([n,s])=>({provider:n,models:[...s]}))}function yA(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function wA(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}const _A=p.memo(function({group:e,viewMode:t="simple",strip:n,slowResponseThresholdSeconds:s,cacheTrends:o,onCompareWithPrevious:i,comparisonPredecessors:a,onClearGroup:l,showClientIdentity:c=!0,showProcessMetadata:u=!0,showLogClientMetadata:f=!0,defaultExpanded:d=!1,timeDisplayFormat:m,expanded:h,onExpandedChange:b}){const[g,x]=p.useState(d),v=h??g,y=p.useCallback(L=>{if(b!==void 0){b(L);return}x(L)},[b]);p.useEffect(()=>{!d||h!==void 0||x(!0)},[h,d]);const _=p.useMemo(()=>bA(e.logs),[e.logs]),j=p.useMemo(()=>vA(e.logs),[e.logs]),S=e.logs[0]?.timestamp??new Date().toISOString(),N=e.logs[e.logs.length-1]?.timestamp??new Date().toISOString(),T=e.logs.some(L=>L.responseStatus===null),A=p.useMemo(()=>yA(e.logs),[e.logs]),I=p.useMemo(()=>wA(e.logs),[e.logs]),P=p.useMemo(()=>Ka(e.logs),[e.logs]);return p.useEffect(()=>{const L=E=>{const D=Si(E);D!==null&&e.logs.some(w=>w.id===D.logId)&&y(!0)};return window.addEventListener(un,L),()=>{window.removeEventListener(un,L)}},[e.logs,y]),r.jsxs("div",{className:"mb-2",children:[r.jsx(R4,{conversationId:e.conversationId,startTime:S,endTime:N,totalCalls:e.logs.length,totalInputTokens:_.totalInputTokens,totalOutputTokens:_.totalOutputTokens,expanded:v,onToggle:()=>y(!v),providers:j,isLoading:T,userAgent:e.logs[0]?.userAgent??null,clientPid:A,clientProjectFolder:I,showClientIdentity:c,showProcessMetadata:u,timeDisplayFormat:m,onClear:()=>l(e.logs.map(L=>L.id))}),v&&r.jsxs("div",{children:[r.jsx(xA,{logs:e.logs,scopeId:e.conversationId,slowResponseThresholdSeconds:s,showRollupMetrics:!1,timeDisplayFormat:m}),r.jsx(UE,{turnGroups:P,viewMode:t,strip:n,slowResponseThresholdSeconds:s,timeDisplayFormat:m,cacheTrends:o,onCompareWithPrevious:i,comparisonPredecessors:a,showLogClientMetadata:f})]})]})});function Ya({className:e}){return r.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",className:ae("inline-block size-5",e),children:[r.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"}),r.jsx("path",{d:"M5 11 C3.5 9.5 1.5 10 2 12.5 C2.5 14 4 13.5 5 12.5"}),r.jsx("path",{d:"M19 11 C20.5 9.5 22.5 10 22 12.5 C21.5 14 20 13.5 19 12.5"}),r.jsx("line",{x1:"10",y1:"7",x2:"9.5",y2:"5"}),r.jsx("line",{x1:"14",y1:"7",x2:"14.5",y2:"5"}),r.jsx("circle",{cx:"9.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("circle",{cx:"14.5",cy:"4.5",r:"0.9",fill:"currentColor",stroke:"none"}),r.jsx("line",{x1:"6.5",y1:"16",x2:"4.5",y2:"19.5"}),r.jsx("line",{x1:"9",y1:"17.5",x2:"8",y2:"20.5"}),r.jsx("line",{x1:"15",y1:"17.5",x2:"16",y2:"20.5"}),r.jsx("line",{x1:"17.5",y1:"16",x2:"19.5",y2:"19.5"})]})}const kA="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 jA({className:e}){return r.jsx("img",{src:kA,alt:"Model Context Protocol","aria-hidden":"true",className:ae("inline-block size-8 object-contain invert",e)})}function Is({...e}){return r.jsx(cm,{"data-slot":"select",...e})}function Rs({...e}){return r.jsx(pm,{"data-slot":"select-value",...e})}function zs({className:e,size:t="default",children:n,...s}){return r.jsxs(dm,{"data-slot":"select-trigger","data-size":t,className:ae("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),...s,children:[n,r.jsx(hm,{asChild:!0,children:r.jsx(it,{className:"size-4 opacity-50"})})]})}function Ps({className:e,children:t,position:n="popper",align:s="center",...o}){return r.jsx(gm,{children:r.jsxs(xm,{"data-slot":"select-content",className:ae("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:s,...o,children:[r.jsx(SA,{}),r.jsx(_m,{className:ae("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),r.jsx(CA,{})]})})}function pt({className:e,children:t,...n}){return r.jsxs(Cm,{"data-slot":"select-item",className:ae("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:[r.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:r.jsx(Em,{children:r.jsx(Ge,{className:"size-4"})})}),r.jsx(Nm,{children:t})]})}function SA({className:e,...t}){return r.jsx(Am,{"data-slot":"select-scroll-up-button",className:ae("flex cursor-default items-center justify-center py-1",e),...t,children:r.jsx(Rl,{className:"size-4"})})}function CA({className:e,...t}){return r.jsx(Im,{"data-slot":"select-scroll-down-button",className:ae("flex cursor-default items-center justify-center py-1",e),...t,children:r.jsx(it,{className:"size-4"})})}const NA=Ee(["critical","warning","notice"]),TA=Ee(["open"]),EA=Ee(["proxy","tool-schema","run","group"]),M0=Ee(["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"]),AA=Ee(["log","session","run","group"]),IA=Ee(["anthropic","openai","unknown"]),RA=K({kind:AA,id:C(),label:C(),href:C().nullable()}),zA=K({id:C(),fingerprint:C(),severity:NA,category:M0,source:EA,status:TA,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:IA.nullable(),evidence:pe(RA),metadata:Ye(C(),st)}),PA=K({category:M0,count:G().int().nonnegative()}),L0=K({total:G().int().nonnegative(),open:G().int().nonnegative(),critical:G().int().nonnegative(),warning:G().int().nonnegative(),notice:G().int().nonnegative(),byCategory:pe(PA)}),OA=K({alerts:pe(zA),total:G().int().nonnegative(),limit:G().int().positive(),summary:L0}),MA=8e3,LA=1e4;function DA(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 $A(e,t){const n=Zt(t?DA(e):null,s=>Ke(s,OA,LA));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 FA(){const e=Zt("/api/alerts/summary",t=>Ke(t,L0,MA),{refreshInterval:5e3,revalidateOnFocus:!0});return{summary:e.data??null,isLoading:e.isLoading,error:e.error,mutate:e.mutate}}const Ci="relative size-8 rounded-md border-0 bg-white/[0.035] text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:bg-white/[0.065] hover:text-accent-foreground focus-visible:ring-ring/50",UA=["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"];function D0(e){switch(e){case"critical":return"Critical";case"warning":return"Warning";case"notice":return"Notice"}}function BA(e){switch(e){case"proxy":return"Proxy";case"tool-schema":return"Tool schema";case"run":return"Run";case"group":return"Group"}}function jc(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 WA(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 HA(e){switch(e){case"critical":return"bg-red-400";case"warning":return"bg-amber-300";case"notice":return"bg-sky-300"}}function VA(e){switch(e){case"critical":return"text-red-200";case"warning":return"text-amber-100";case"notice":return"text-sky-100"}}function ZA(e){switch(e){case"request-failure":case"run-failure":case"group-failure":return r.jsx(A_,{className:"size-3.5"});case"request-timeout":case"slow-response":return r.jsx(sw,{className:"size-3.5"});case"tool-schema":return r.jsx(rn,{className:"size-3.5"});case"group-incomplete":return r.jsx(Ty,{className:"size-3.5"})}}function Xa(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 _t(e){return e.toLocaleString()}function $0(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 qA(e,t){const n={limit:100};return e!=="all"&&(n.severity=e),t!=="all"&&(n.category=t),n}function GA(e,t){if(t!==null){const n=e.find(s=>s.id===t);if(n!==void 0)return n}return e[0]??null}function Gr({label:e,count:t,tone:n}){const s=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 r.jsxs("div",{className:ae("rounded-md border px-3 py-2",s),children:[r.jsx("div",{className:"text-[10px] font-semibold uppercase opacity-75",children:e}),r.jsx("div",{className:"mt-1 text-lg font-semibold leading-none",children:_t(t)})]})}function Kr({value:e,active:t,label:n,count:s,onClick:o}){return r.jsxs(je,{type:"button",variant:t?"secondary":"ghost",size:"sm","aria-pressed":t,onClick:()=>o(e),className:"h-7 px-2",children:[n,s!==null?r.jsx(Oe,{variant:"outline",children:_t(s)}):null]})}function KA({category:e,active:t,count:n,onClick:s}){return r.jsxs(je,{type:"button",variant:t?"secondary":"ghost",size:"sm","aria-pressed":t,onClick:()=>s(e),className:"h-7 px-2",children:[ZA(e),jc(e),r.jsx(Oe,{variant:"outline",children:_t(n)})]})}function JA({alerts:e,selectedAlertId:t,isLoading:n,error:s,onSelect:o}){return n?r.jsxs("div",{className:"flex min-h-56 items-center justify-center rounded-md border border-dashed border-border text-xs text-muted-foreground",children:[r.jsx(Qe,{className:"mr-2 size-3.5 animate-spin"}),"Loading alerts..."]}):s!==void 0?r.jsx("div",{className:"rounded-md border border-red-300/30 bg-red-500/10 px-3 py-2 text-xs text-red-100",children:s.message}):e.length===0?r.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."}):r.jsx("div",{className:"min-h-0 space-y-2 overflow-y-auto pr-1",children:e.map(i=>{const a=i.id===t;return r.jsxs("button",{type:"button",onClick:()=>o(i.id),className:ae("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:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:ae("size-2 rounded-full",HA(i.severity))}),r.jsx("span",{className:ae("text-xs font-semibold",VA(i.severity)),children:D0(i.severity)}),r.jsx("span",{className:"truncate text-xs text-muted-foreground",children:jc(i.category)})]}),r.jsx("div",{className:"mt-1 text-sm font-semibold leading-snug",children:i.title}),r.jsx("div",{className:"mt-1 line-clamp-2 text-xs text-muted-foreground",children:i.message})]}),i.count>1?r.jsxs(Oe,{variant:"outline",className:"shrink-0",children:["x",_t(i.count)]}):null]}),r.jsxs("div",{className:"mt-2 flex min-w-0 items-start justify-between gap-2 text-[11px] text-muted-foreground",children:[r.jsx("span",{className:"min-w-0 leading-snug",children:$0(i)}),r.jsx("span",{className:"shrink-0",children:Xa(i.lastSeenAt)})]})]},i.id)})})}function YA({alert:e,onNavigate:t}){return e.evidence.length===0?r.jsx("span",{className:"text-xs text-muted-foreground",children:"No linked evidence"}):r.jsx("div",{className:"flex flex-wrap gap-2",children:e.evidence.map(n=>n.href===null?r.jsx(Oe,{variant:"outline",children:n.label},`${n.kind}:${n.id}`):r.jsx(Oe,{variant:"outline",asChild:!0,children:r.jsx("a",{href:n.href,onClick:t,children:n.label})},`${n.kind}:${n.id}`))})}function XA({alert:e,onNavigate:t}){return e===null?r.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."}):r.jsxs("div",{className:"min-h-0 overflow-y-auto rounded-md border border-border bg-background/70",children:[r.jsx("div",{className:ae("border-b px-4 py-3",WA(e.severity)),children:r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsx(Oe,{variant:"outline",children:D0(e.severity)}),r.jsx(Oe,{variant:"outline",children:BA(e.source)}),r.jsx(Oe,{variant:"outline",children:jc(e.category)})]}),r.jsx("h3",{className:"mt-3 text-base font-semibold",children:e.title}),r.jsx("p",{className:"mt-1 text-sm opacity-85",children:e.message})]}),e.count>1?r.jsxs(Oe,{variant:"outline",className:"shrink-0",children:[_t(e.count)," hits"]}):null]})}),r.jsxs("div",{className:"space-y-4 p-4",children:[r.jsxs("div",{className:"grid gap-2 text-xs sm:grid-cols-2",children:[r.jsx(pn,{label:"Target",value:$0(e)}),r.jsx(pn,{label:"Last seen",value:Xa(e.lastSeenAt)}),r.jsx(pn,{label:"First seen",value:Xa(e.firstSeenAt)}),r.jsx(pn,{label:"Protocol",value:e.apiFormat??"n/a"})]}),r.jsxs("div",{children:[r.jsx("div",{className:"mb-2 text-xs font-semibold text-muted-foreground",children:"Evidence"}),r.jsx(YA,{alert:e,onNavigate:t})]}),r.jsxs("div",{className:"grid gap-2 text-xs sm:grid-cols-2",children:[r.jsx(pn,{label:"Logs",value:e.logIds.length===0?"n/a":_t(e.logIds.length)}),r.jsx(pn,{label:"Sessions",value:e.sessionIds.length===0?"n/a":_t(e.sessionIds.length)}),r.jsx(pn,{label:"Runs",value:e.runIds.length===0?"n/a":_t(e.runIds.length)}),r.jsx(pn,{label:"Groups",value:e.groupIds.length===0?"n/a":_t(e.groupIds.length)})]})]})]})}function pn({label:e,value:t}){return r.jsxs("div",{className:"rounded-md border border-border bg-muted/30 px-3 py-2",children:[r.jsx("div",{className:"text-[10px] font-semibold uppercase text-muted-foreground",children:e}),r.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-foreground",children:t})]})}function cd(){const[e,t]=p.useState(!1),[n,s]=p.useState("all"),[o,i]=p.useState("all"),[a,l]=p.useState(null),{summary:c,isLoading:u}=FA(),f=p.useMemo(()=>qA(n,o),[o,n]),{alerts:d,total:m,isLoading:h,error:b,mutate:g}=$A(f,e),x=p.useMemo(()=>GA(d,a),[d,a]);p.useEffect(()=>{!e||a!==null&&d.some(T=>T.id===a)||l(d[0]?.id??null)},[d,e,a]);const v=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 r.jsxs(Yn,{open:e,onOpenChange:t,children:[r.jsx(yi,{asChild:!0,children:r.jsxs(je,{type:"button",variant:"ghost",size:"icon",className:Ci,"aria-label":"Alerts",title:"Alerts",children:[r.jsx(_a,{className:"size-4"}),u?r.jsx(Qe,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):v>0?r.jsx("span",{className:ae("absolute -right-1 -top-1 min-w-4 rounded-full px-1 text-[10px] font-semibold leading-4 text-white",S),children:_t(v)}):null,r.jsx("span",{className:"sr-only",children:"Alerts"})]})}),r.jsxs(Xn,{className:"flex max-h-[86vh] max-w-6xl flex-col overflow-hidden",children:[r.jsxs(Qn,{children:[r.jsxs(es,{className:"flex items-center gap-2 pr-8",children:[r.jsx(_a,{className:"size-5 text-red-300"}),r.jsx("span",{children:"Alerts"}),r.jsx(Oe,{variant:"outline",children:_t(v)})]}),r.jsx(s0,{className:"sr-only",children:"Local alert board for captured Inspector evidence."})]}),r.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[r.jsx(Gr,{label:"Open",count:c?.open??0,tone:"neutral"}),r.jsx(Gr,{label:"Critical",count:y,tone:"critical"}),r.jsx(Gr,{label:"Warning",count:_,tone:"warning"}),r.jsx(Gr,{label:"Notice",count:j,tone:"notice"})]}),r.jsxs("div",{className:"flex min-h-0 flex-wrap items-center justify-between gap-2 border-y border-border py-3",children:[r.jsxs("div",{className:"flex flex-wrap gap-1",children:[r.jsx(Kr,{value:"all",active:n==="all",label:"All",count:c?.total??null,onClick:s}),r.jsx(Kr,{value:"critical",active:n==="critical",label:"Critical",count:y,onClick:s}),r.jsx(Kr,{value:"warning",active:n==="warning",label:"Warning",count:_,onClick:s}),r.jsx(Kr,{value:"notice",active:n==="notice",label:"Notice",count:j,onClick:s})]}),r.jsxs(je,{type:"button",variant:"outline",size:"sm",className:"h-7 shrink-0 px-2",onClick:()=>{g()},children:[r.jsx(yn,{className:"size-3.5"}),"Refresh"]})]}),r.jsxs("div",{className:"flex flex-wrap gap-1",children:[r.jsx(je,{type:"button",variant:o==="all"?"secondary":"ghost",size:"sm","aria-pressed":o==="all",onClick:()=>i("all"),className:"h-7 px-2",children:"All categories"}),UA.map(N=>{const T=c?.byCategory.find(A=>A.category===N)?.count??0;return T===0?null:r.jsx(KA,{category:N,active:o===N,count:T,onClick:i},N)})]}),r.jsxs("div",{className:"grid min-h-0 flex-1 gap-4 md:grid-cols-[360px_minmax(0,1fr)]",children:[r.jsxs("div",{className:"flex min-h-0 flex-col",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between text-xs text-muted-foreground",children:[r.jsxs("span",{children:[_t(m)," matched"]}),r.jsx("span",{children:d.length<m?`${_t(d.length)} shown`:"Latest"})]}),r.jsx(JA,{alerts:d,selectedAlertId:x?.id??null,isLoading:h,error:b,onSelect:l})]}),r.jsx(XA,{alert:x,onNavigate:()=>t(!1)})]})]})]})}const QA=12e3;function eI(e){return e===null||e.evidence===null?null:`/api/groups/${encodeURIComponent(e.id)}/evidence`}function tI(e){const t=Zt(eI(e),n=>Ke(n,ry,QA));return{evidenceResponse:t.data??null,isLoading:t.isLoading,error:t.error,mutate:t.mutate}}const nI=8e3;function sI(){const e=Zt("/api/groups",t=>Ke(t,rp,nI));return{groups:e.data?.groups??[],isLoading:e.isLoading,error:e.error,mutate:e.mutate}}const rI=3e3;function oI(e,t){return{id:(e?.id??0)+1,message:t.message,tone:t.tone??"error"}}function F0(){const[e,t]=p.useState(null),n=p.useCallback(o=>{t(i=>oI(i,o))},[]),s=p.useCallback(()=>{t(null)},[]);return p.useEffect(()=>{if(e===null)return;const o=window.setTimeout(()=>{t(null)},rI);return()=>{window.clearTimeout(o)}},[e]),{notice:e,showToast:n,dismissToast:s}}function U0({notice:e,onDismiss:t}){if(e===null)return null;const n=e.tone==="error",s=n?rn:ya;return r.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:r.jsxs("div",{className:ae("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:[r.jsx(s,{className:ae("mt-0.5 size-4 shrink-0",n?"text-red-300":"text-cyan-200")}),r.jsx("div",{className:"min-w-0 flex-1 break-words leading-5",children:e.message}),r.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:r.jsx(vr,{className:"size-3.5"})})]},e.id)})}const sa=2e4;function iI(e,t){const n=`/api/groups/${encodeURIComponent(e)}`;return t?`${n}?deleteEvidence=1`:n}function aI(e){return"/api/groups"}function B0(e){let t=0,n=0,s=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":s+=1;break;case"created":break;case null:o+=1;break}return{memberCount:e.members.length,completedMembers:t,failedMembers:n,runningMembers:s,missingStatusMembers:o}}function lI(e,t,n=null){return t!==null&&t.group.id===e.id?t.members.map(s=>({member:s.member,exportMember:s,source:"export"})):n!==null&&n.group.id===e.id&&n.members!==null?n.members.map(s=>({member:s.member,exportMember:s,source:"evidence"})):e.members.map(s=>({member:s,exportMember:null,source:"group"}))}function Sc(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 Cc(e){return e??"unknown"}function cI(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 Ni(e){return e===null||e.trim().length===0?"-":e}function wt(e){return e.toLocaleString()}function Qa(e){return e==null?"-":e<1e3?`${wt(e)} ms`:`${(e/1e3).toFixed(1)} s`}function Os(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 ud(e){return e===null?"-":Os(e)}function uI(e){const t=JSON.stringify(e),n=t===void 0?String(e):t;return n.length<=160?n:`${n.slice(0,157)}...`}function W0(...e){for(const t of e)if(t!==null&&t.trim().length>0)return t;return"-"}function dI(...e){for(const t of e)if(t!=null&&t.trim().length>0)return t;return null}function fI(e){const t=e.provider,n=e.model;return t!==null&&t.length>0&&n!==null&&n.length>0?`${t} / ${n}`:W0(t,n)}function pI(e,t){if(t!==null){const n=e.find(s=>s.id===t);if(n!==void 0)return n}return e[0]??null}function hI(e){return(e.exportMember?.session?.latestLogs??[])[0]??null}function mI(e){switch(e){case"export":return"fresh export";case"evidence":return"evidence";case"group":return"group"}}function gI(e,t){return t!==null&&t.group.id===e.id?t.evidence:e.evidence}function xI(e,t,n){return t!==null&&t.group.id===e.id?t.summary:n!==null&&n.group.id===e.id?n.summary:null}function bI(e,t,n){return t!==null&&t.group.id===e.id?t.jenkinsReport:n!==null&&n.group.id===e.id?n.report:null}function dd(){const[e,t]=p.useState(!1),[n,s]=p.useState(null),[o,i]=p.useState(null),[a,l]=p.useState(null),[c,u]=p.useState(null),[f,d]=p.useState(null),[m,h]=p.useState(!1),[b,g]=p.useState(null),[x,v]=p.useState(null),[y,_]=p.useState(!1),{notice:j,showToast:S,dismissToast:N}=F0(),{groups:T,isLoading:A,error:I,mutate:P}=sI(),L=p.useMemo(()=>pI(T,n),[T,n]);p.useEffect(()=>{!e||n!==null&&T.some(Y=>Y.id===n)||s(T[0]?.id??null)},[T,e,n]);const E=L!==null&&c!==null&&c.group.id===L.id?c:null,{evidenceResponse:D,isLoading:w,error:$,mutate:ee}=tI(L),F=p.useCallback(()=>{P()},[P]),te=p.useCallback(async()=>{if(!(T.length===0||y)){_(!0),d(null),h(!1),v(null),l(null);try{const W=await Ke(aI(!1),tp,sa,{method:"DELETE"},Y=>`Clear failed with status ${String(Y.status)}`);u(null),s(null),await P(),await ee(),S({message:`Cleared ${wt(W.deleted)} group${W.deleted===1?"":"s"}.`,tone:"success"})}catch(W){S({message:W instanceof Error?W.message:"Unknown error clearing groups",tone:"error"})}finally{_(!1)}}},[y,T.length,P,ee,S]),V=p.useCallback(async W=>{i(W.id),l(null);try{const Y=await Ke(`/api/groups/${encodeURIComponent(W.id)}/evidence`,oy,sa,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({latestLogLimit:10})},_e=>`Export failed with status ${String(_e.status)}`);u(Y),await P(),await ee()}catch(Y){l(Y instanceof Error?Y.message:String(Y))}finally{i(null)}},[P,ee]),X=p.useCallback(W=>{d(W),h(!1),v(null)},[]),H=p.useCallback(()=>{b===null&&(d(null),h(!1),v(null))},[b]),B=p.useCallback(W=>{s(W),d(null),h(!1),v(null)},[]),ce=p.useCallback(async()=>{const W=f;if(W!==null){g(W.id),v(null);try{await Ke(iI(W.id,m),ep,sa,{method:"DELETE"},Y=>`Delete failed with status ${String(Y.status)}`),u(Y=>Y!==null&&Y.group.id===W.id?null:Y),s(Y=>Y===W.id?null:Y),d(null),h(!1),await P(),await ee()}catch(Y){v(Y instanceof Error?Y.message:String(Y))}finally{g(null)}}},[m,f,P,ee]);return r.jsxs(Yn,{open:e,onOpenChange:t,children:[r.jsx(U0,{notice:j,onDismiss:N}),r.jsx(yi,{asChild:!0,children:r.jsxs(je,{type:"button",variant:"ghost",size:"icon",className:Ci,"aria-label":"Evaluation groups",title:"Evaluation groups",children:[r.jsx(ru,{className:"size-4"}),A?r.jsx(Qe,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):T.length>0?r.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:T.length}):null,r.jsx("span",{className:"sr-only",children:"Evaluation groups"})]})}),r.jsxs(Xn,{className:"flex max-h-[85vh] max-w-5xl flex-col overflow-hidden",children:[r.jsx(Qn,{children:r.jsxs(es,{className:"flex items-center gap-2 pr-8",children:[r.jsx(ru,{className:"size-5 text-muted-foreground"}),r.jsx("span",{children:"Groups"}),r.jsx(Oe,{variant:"outline",children:wt(T.length)})]})}),r.jsxs("div",{className:"flex min-h-0 items-center justify-between gap-3 border-b border-border pb-3",children:[r.jsx("p",{className:"text-xs text-muted-foreground",children:"Evaluation batches, model runs, and exported evidence packs."}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsxs(je,{type:"button",variant:"outline",size:"sm",disabled:T.length===0||y,onClick:()=>{te()},title:"Clear all groups. Session logs and run records stay intact.",children:[y?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(wn,{className:"size-3.5"}),"Clear"]}),r.jsxs(je,{type:"button",variant:"outline",size:"sm",onClick:F,children:[r.jsx(yn,{className:"size-3.5"}),"Refresh"]})]})]}),r.jsxs("div",{className:"grid min-h-0 flex-1 gap-4 md:grid-cols-[260px_minmax(0,1fr)]",children:[r.jsx(vI,{groups:T,selectedGroupId:L?.id??null,isLoading:A,error:I,onSelect:B}),r.jsx(yI,{group:L,deleteTarget:f,deleteEvidence:m,exportResult:E,evidenceResponse:D,evidenceLoading:w,evidenceError:$,exportError:a,deleteError:x,exportingGroupId:o,deletingGroupId:b,onDeleteEvidenceChange:h,onExport:V,onRequestDelete:X,onCancelDelete:H,onConfirmDelete:()=>{ce()}})]})]})]})}function vI({groups:e,selectedGroupId:t,isLoading:n,error:s,onSelect:o}){return n?r.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..."}):s!==void 0?r.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:s.message}):e.length===0?r.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."}):r.jsx("div",{className:"min-h-0 overflow-y-auto pr-1",children:r.jsx("div",{className:"space-y-2",children:e.map(i=>{const a=B0(i),l=t===i.id;return r.jsxs("button",{type:"button",onClick:()=>o(i.id),className:ae("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:[r.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2",children:[r.jsx("span",{className:"min-w-0 text-sm font-medium leading-snug",children:i.title}),r.jsx(Oe,{variant:"outline",className:Sc(i.status),children:Cc(i.status)})]}),r.jsxs("div",{className:"mt-1 flex items-center gap-2 text-muted-foreground",children:[r.jsxs("span",{children:[a.memberCount," sessions"]}),r.jsx("span",{children:Os(i.updatedAt)})]})]},i.id)})})})}function yI({group:e,deleteTarget:t,deleteEvidence:n,exportResult:s,evidenceResponse:o,evidenceLoading:i,evidenceError:a,exportError:l,deleteError:c,exportingGroupId:u,deletingGroupId:f,onDeleteEvidenceChange:d,onExport:m,onRequestDelete:h,onCancelDelete:b,onConfirmDelete:g}){if(e===null)return r.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=B0(e),v=xI(e,s,o),y=bI(e,s,o),_=gI(e,s),j=lI(e,s,o),S=u===e.id,N=f===e.id,T=t?.id===e.id;return r.jsx("div",{className:"min-h-0 overflow-y-auto pr-1",children:r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[r.jsxs("div",{className:"min-w-0 space-y-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[r.jsx("h3",{className:"min-w-0 text-base font-semibold leading-snug",children:e.title}),r.jsx(Oe,{variant:"outline",className:Sc(e.status),children:Cc(e.status)}),r.jsx(Oe,{variant:"outline",children:e.kind})]}),r.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-xs text-muted-foreground",children:[r.jsx("span",{children:Ni(e.project)}),r.jsxs("span",{children:["updated ",Os(e.updatedAt)]})]})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsx(je,{type:"button",variant:"outline",size:"icon",className:"size-8 text-red-600 hover:text-red-700","aria-label":"Delete group",title:"Delete group",disabled:N,onClick:()=>h(e),children:N?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(wn,{className:"size-3.5"})}),r.jsxs(je,{type:"button",variant:"default",size:"sm",className:"shrink-0",disabled:S||N,onClick:()=>{m(e)},children:[S?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(br,{className:"size-3.5"}),"Export evidence"]})]})]}),e.task!==null&&e.task.trim().length>0&&r.jsx("p",{className:"rounded-md border border-border bg-muted/20 px-3 py-2 text-xs text-muted-foreground",children:e.task}),T&&r.jsx(wI,{group:e,deleteEvidence:n,isDeleting:N,error:c,onDeleteEvidenceChange:d,onCancel:b,onConfirm:g}),r.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[r.jsx(hn,{label:"Members",value:x.memberCount}),r.jsx(hn,{label:"Done",value:x.completedMembers}),r.jsx(hn,{label:"Failed",value:x.failedMembers}),r.jsx(hn,{label:"Running",value:x.runningMembers})]}),v!==null&&r.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[r.jsx(hn,{label:"Requests",value:v.requestCount}),r.jsx(hn,{label:"Errors",value:v.errorCount}),r.jsx(hn,{label:"Tokens",value:v.tokenUsage.total}),r.jsx(hn,{label:"Missing",value:v.missingSessions})]}),r.jsx(_I,{report:y,loading:i,error:a,hasEvidence:_!==null}),r.jsx(kI,{evidence:_}),l!==null&&r.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&&!T&&r.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:c}),r.jsx(jI,{rows:j})]})})}function wI({group:e,deleteEvidence:t,isDeleting:n,error:s,onDeleteEvidenceChange:o,onCancel:i,onConfirm:a}){const l=e.evidence!==null,c=e.evidence?.markdownPath??"No evidence pack exported.";return r.jsx("div",{className:"rounded-md border border-red-200 bg-red-50 px-3 py-3 text-red-900",children:r.jsxs("div",{className:"flex min-w-0 flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[r.jsxs("div",{className:"min-w-0 space-y-2",children:[r.jsxs("div",{className:"flex items-center gap-2 text-sm font-semibold",children:[r.jsx(wn,{className:"size-4 text-red-600"}),r.jsx("span",{children:"Delete group?"})]}),r.jsxs("p",{className:"text-xs text-red-800",children:["Delete ",r.jsx("span",{className:"font-medium",children:e.title}),". Session logs and run records stay intact."]}),r.jsxs("label",{className:ae("flex min-w-0 items-start gap-2 text-xs",l?"cursor-pointer":"opacity-60"),children:[r.jsx("input",{type:"checkbox",className:"mt-0.5 size-4 shrink-0",checked:t,disabled:!l||n,onChange:u=>o(u.currentTarget.checked)}),r.jsxs("span",{className:"min-w-0",children:[r.jsx("span",{className:"block font-medium",children:"Also delete exported evidence files"}),r.jsx("code",{className:"mt-1 block truncate font-mono text-[11px] text-red-700",children:c})]})]}),s!==null&&r.jsx("div",{className:"rounded-md border border-red-200 bg-white px-2 py-1.5 text-xs text-red-700",children:s})]}),r.jsxs("div",{className:"flex shrink-0 justify-end gap-2",children:[r.jsx(je,{type:"button",variant:"outline",size:"sm",disabled:n,onClick:i,children:"Cancel"}),r.jsxs(je,{type:"button",variant:"destructive",size:"sm",disabled:n,onClick:a,children:[n?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(wn,{className:"size-3.5"}),"Delete"]})]})]})})}function hn({label:e,value:t}){return r.jsxs("div",{className:"rounded-md border border-border bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"text-[11px] font-medium uppercase text-muted-foreground",children:e}),r.jsx("div",{className:"mt-1 font-mono text-sm font-semibold",children:wt(t)})]})}function _I({report:e,loading:t,error:n,hasEvidence:s}){const{copied:o,copy:i}=bn(e?.markdown??null);return e===null&&!t&&n===void 0?null:t?r.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:[r.jsx(Qe,{className:"size-3.5 animate-spin"}),"Loading evidence report..."]}):n!==void 0&&s?r.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:r.jsxs("div",{className:"rounded-md border border-border bg-muted/20 px-3 py-2",children:[r.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:"text-xs font-semibold",children:"Evidence report"}),r.jsx(Oe,{variant:"outline",className:cI(e.status),children:e.status})]}),r.jsx(je,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":o?"Copied evidence report":"Copy evidence report",onClick:i,children:o?r.jsx(Ge,{className:"size-3.5 text-emerald-500"}):r.jsx(It,{className:"size-3.5"})})]}),r.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:e.summary})]})}function kI({evidence:e}){return e===null?r.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."}):r.jsxs("div",{className:"space-y-2 rounded-md border border-border bg-muted/20 px-3 py-2",children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsx("span",{className:"text-xs font-semibold",children:"Evidence paths"}),r.jsx("span",{className:"text-[11px] text-muted-foreground",children:Os(e.exportedAt)})]}),r.jsxs("div",{className:"grid gap-2",children:[r.jsx(ra,{label:"JSON",value:e.jsonPath}),r.jsx(ra,{label:"Markdown",value:e.markdownPath}),r.jsx(ra,{label:"HTML",value:e.htmlPath})]})]})}function ra({label:e,value:t}){const{copied:n,copy:s}=bn(t);return r.jsxs("div",{className:"flex min-w-0 items-center gap-2 rounded-md border border-border bg-background px-2 py-1.5",children:[r.jsx("span",{className:"w-16 shrink-0 text-[11px] font-medium text-muted-foreground",children:e}),r.jsx("code",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t}),r.jsx(je,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":n?`Copied ${e} path`:`Copy ${e} path`,onClick:s,children:n?r.jsx(Ge,{className:"size-3.5 text-emerald-500"}):r.jsx(It,{className:"size-3.5"})})]})}function jI({rows:e}){const[t,n]=p.useState(null),s=p.useCallback(o=>{n(i=>i===o?null:o)},[]);return e.length===0?r.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."}):r.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[r.jsx("div",{className:"border-b border-border bg-muted/30 px-3 py-2 text-xs font-semibold",children:"Members"}),r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full min-w-[760px] text-left text-xs",children:[r.jsx("thead",{className:"border-b border-border bg-muted/20 text-muted-foreground",children:r.jsxs("tr",{children:[r.jsx("th",{className:"px-3 py-2 font-medium",children:"Session"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"Provider / Model"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"Status"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"Requests"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"Errors"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"First chunk"}),r.jsx("th",{className:"px-3 py-2 font-medium",children:"Tokens"})]})}),r.jsx("tbody",{children:e.map(o=>{const i=t===o.member.id;return r.jsxs(p.Fragment,{children:[r.jsx(SI,{row:o,isExpanded:i,onToggleDetails:s}),r.jsx(CI,{row:o,isExpanded:i})]},o.member.id)})})]})})]})}function SI({row:e,isExpanded:t,onToggleDetails:n}){const s=e.member,o=e.exportMember?.session??null,i=hI(e),a=o?.inspectorPath??nf(s.sessionId),l=e.source!=="evidence",c=o?.requestCount??null,u=o?.errorCount??null,f=o?.tokenUsage.total??null,d=i?.firstChunkMs??null,m=W0(s.label,s.sessionId),h=dI(o?.clientUserAgent,i?.userAgent,s.agent),b=o?.clientProjectFolder??null,g=hc({userAgent:h,conversationId:s.sessionId,clientProjectFolder:b}),x=wi(g);return r.jsxs("tr",{className:"border-b border-border last:border-0 hover:bg-muted/20",children:[r.jsxs("td",{className:"max-w-56 px-3 py-2",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-1.5",children:[r.jsx(je,{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(s.id)},children:t?r.jsx(it,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"})}),x!==null&&r.jsx(_i,{client:g,className:"size-5"}),l?r.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:[r.jsx("span",{className:"min-w-0 truncate",children:m}),r.jsx(Pl,{className:"size-3 shrink-0 text-muted-foreground"})]}):r.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(s.id)},children:[r.jsx("span",{className:"min-w-0 truncate",children:m}),r.jsx(Oe,{variant:"outline",className:"shrink-0 border-zinc-200 bg-zinc-50 text-zinc-600",children:"evidence"})]})]}),r.jsx("div",{className:"mt-0.5 truncate text-[11px] text-muted-foreground",children:Ni(s.agent)})]}),r.jsx("td",{className:"max-w-52 px-3 py-2",children:r.jsx("span",{className:"block whitespace-normal leading-snug",children:fI(s)})}),r.jsx("td",{className:"px-3 py-2",children:r.jsx(Oe,{variant:"outline",className:Sc(s.status),children:Cc(s.status)})}),r.jsx("td",{className:"px-3 py-2 font-mono",children:c===null?"-":wt(c)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:u===null?"-":wt(u)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:Qa(d)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:f===null?"-":wt(f)})]})}function CI({row:e,isExpanded:t}){if(!t)return null;const n=e.member,s=e.exportMember,o=s?.session??null,i=s?.run??null,a=Object.entries(n.metadata);return r.jsx("tr",{className:"border-b border-border bg-muted/10",children:r.jsx("td",{colSpan:7,className:"px-3 pb-4 pt-2",children:r.jsxs("div",{className:"space-y-3 rounded-md border border-border bg-background p-3",children:[r.jsxs("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-4",children:[r.jsx(rt,{label:"Source",value:mI(e.source)}),r.jsx(rt,{label:"Member ID",value:n.id,mono:!0}),r.jsx(rt,{label:"Session ID",value:n.sessionId,mono:!0}),r.jsx(rt,{label:"Run ID",value:i?.id??n.runId??"-",mono:!0}),r.jsx(rt,{label:"Created",value:Os(n.addedAt)}),r.jsx(rt,{label:"Updated",value:Os(n.updatedAt)}),r.jsx(rt,{label:"Session created",value:ud(o?.createdAt??null)}),r.jsx(rt,{label:"Session updated",value:ud(o?.updatedAt??null)})]}),o===null?r.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."}):r.jsxs("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-4",children:[r.jsx(rt,{label:"Log coverage",value:o.logCoverage}),r.jsx(rt,{label:"Runtime",value:Ni(o.runtimeMode)}),r.jsx(rt,{label:"Requests",value:wt(o.requestCount),mono:!0}),r.jsx(rt,{label:"Errors",value:wt(o.errorCount),mono:!0}),r.jsx(rt,{label:"Input tokens",value:wt(o.tokenUsage.input),mono:!0}),r.jsx(rt,{label:"Output tokens",value:wt(o.tokenUsage.output),mono:!0}),r.jsx(rt,{label:"Cache read",value:wt(o.tokenUsage.cacheRead),mono:!0}),r.jsx(rt,{label:"Total tokens",value:wt(o.tokenUsage.total),mono:!0})]}),r.jsx(NI,{logs:o?.latestLogs??[]}),r.jsx(TI,{entries:a})]})})})}function rt({label:e,value:t,mono:n=!1}){return r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:e}),r.jsx("div",{className:ae("truncate text-xs text-foreground",n?"font-mono":""),title:t,children:t})]})}function NI({logs:e}){const t=e.slice(0,5);return t.length===0?r.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."}):r.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[r.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"}),r.jsx("div",{className:"divide-y divide-border",children:t.map(n=>{const s=n.sessionLogNumber??n.id;return r.jsxs("div",{className:"grid gap-2 px-3 py-2 text-xs sm:grid-cols-[72px_1fr_88px_88px]",children:[r.jsxs("span",{className:"font-mono text-muted-foreground",title:`Log ID ${String(n.id)}`,children:["#",s]}),r.jsxs("span",{className:"min-w-0 truncate",children:[Ni(n.model)," · ",n.apiFormat," · ",n.path]}),r.jsx("span",{className:"font-mono text-muted-foreground",children:Qa(n.firstChunkMs)}),r.jsx("span",{className:"font-mono text-muted-foreground",children:Qa(n.latencyMs)})]},n.id)})})]})}function TI({entries:e}){return e.length===0?null:r.jsxs("div",{className:"overflow-hidden rounded-md border border-border",children:[r.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"}),r.jsx("div",{className:"grid gap-x-3 gap-y-2 p-3 text-xs sm:grid-cols-2",children:e.map(([t,n])=>{const s=uI(n);return r.jsxs("div",{className:"min-w-0",children:[r.jsx("span",{className:"mr-2 text-muted-foreground",children:t}),r.jsx("span",{className:"font-mono text-foreground",title:s,children:s})]},t)})})]})}const EI=K({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:Le()}),AI=K({providers:pe(EI),warnings:pe(C()).optional()}),II=K({success:Le().optional(),imported:G().optional(),message:C().optional(),errors:pe(C()).optional()}),fd=2e4;function RI({open:e,onOpenChange:t,onImportComplete:n}){const[s,o]=p.useState(!1),[i,a]=p.useState(null),[l,c]=p.useState([]),[u,f]=p.useState([]),[d,m]=p.useState(new Set),[h,b]=p.useState(!1),[g,x]=p.useState(null),[v,y]=p.useState(null),_=p.useRef(0),j=p.useRef(0),S=p.useCallback(()=>{const I=_.current+1;_.current=I,o(!0),a(null),f([]),c([]),m(new Set),x(null),y(null),Ke("/api/providers/scan",AI,fd,void 0,P=>`Scan failed (${String(P.status)})`).then(P=>{if(_.current!==I)return;c(P.providers),f(P.warnings??[]);const L=new Set;P.providers.forEach((E,D)=>{E.alreadyExists||L.add(D)}),m(L)}).catch(P=>{_.current===I&&a(P instanceof Error?P.message:String(P))}).finally(()=>{_.current===I&&o(!1)})},[]);p.useEffect(()=>{e&&S()},[e,S]),p.useEffect(()=>{e||(_.current+=1,j.current+=1,o(!1),b(!1))},[e]);const N=p.useCallback(I=>{m(P=>{const L=new Set(P);return L.has(I)?L.delete(I):L.add(I),L})},[]),T=p.useCallback(()=>{const I=l.filter((D,w)=>d.has(w));if(I.length===0)return;const P=j.current+1;j.current=P,b(!0),y(null),x(null);const L=new Date().toISOString(),E=I.map(D=>({id:window.crypto.randomUUID(),name:D.name,apiKey:D.apiKey,format:D.format,anthropicBaseUrl:D.anthropicBaseUrl,openaiBaseUrl:D.openaiBaseUrl,openaiResponsesBaseUrl:D.openaiResponsesBaseUrl,models:D.models,createdAt:L,updatedAt:L}));Ke("/api/providers/import",II,fd,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({providers:E})},D=>`Import failed (${String(D.status)})`).then(D=>{j.current===P&&(c(w=>w.map(($,ee)=>d.has(ee)?{...$,alreadyExists:!0}:$)),m(new Set),D.errors!==void 0&&D.errors.length>0&&D.message!==void 0?x(D.message):x(`Imported ${D.imported??I.length} provider(s)`),n())}).catch(D=>{j.current===P&&y(D instanceof Error?D.message:String(D))}).finally(()=>{j.current===P&&b(!1)})},[l,d,n]),A=l.some(I=>!I.alreadyExists);return r.jsx(Yn,{open:e,onOpenChange:t,children:r.jsxs(Xn,{className:"max-w-xl max-h-[80vh] overflow-hidden flex flex-col",children:[r.jsxs(Qn,{children:[r.jsx(es,{children:"Import from External Tools"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Detect provider configurations from Claude Code, OpenCode, and MiMo Code."})]}),r.jsxs("div",{className:"flex-1 overflow-y-auto space-y-3",children:[s&&r.jsxs("div",{className:"flex items-center justify-center py-8 gap-2 text-muted-foreground",children:[r.jsx(Qe,{className:"size-4 animate-spin"}),r.jsx("span",{className:"text-sm",children:"Scanning for external providers..."})]}),i!==null&&r.jsxs("div",{className:"flex items-center gap-2 text-destructive text-sm py-4",children:[r.jsx(Ss,{className:"size-4"}),i]}),!s&&i===null&&l.length===0&&r.jsxs("p",{className:"text-sm text-muted-foreground py-8 text-center",children:["No external provider configurations found.",r.jsx("br",{}),r.jsx("span",{className:"text-xs",children:"Supported tools: Claude Code (~/.claude/settings.json), OpenCode (~/.config/opencode/opencode.json), MiMo Code (~/.config/mimocode/mimocode.jsonc)"})]}),!s&&l.map((I,P)=>r.jsxs("label",{className:`flex items-start gap-3 p-3 border rounded-md ${I.alreadyExists?"":"cursor-pointer hover:bg-muted/50"}`,children:[!I.alreadyExists&&r.jsx("input",{type:"checkbox",checked:d.has(P),disabled:h,onChange:()=>N(P),className:"mt-0.5 size-4"}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx(_i,{client:I.sourceTool,className:"size-7 rounded-[8px]"}),I.alreadyExists&&r.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Already added"})]}),r.jsxs("div",{className:"mt-1 text-xs leading-snug text-muted-foreground",children:[I.models.slice(0,4).join(", "),I.models.length>4?` +${I.models.length-4} more`:""]}),r.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 truncate",children:I.format==="anthropic"?I.anthropicBaseUrl:I.openaiResponsesBaseUrl!==""?I.openaiResponsesBaseUrl:I.openaiBaseUrl}),r.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 font-mono",children:I.apiKey.length>8?`${I.apiKey.slice(0,4)}••••${I.apiKey.slice(-4)}`:"••••"})]})]},`${I.sourceTool}-${I.name}`)),u.length>0&&r.jsx("div",{className:"text-xs text-muted-foreground space-y-1 border-t pt-2",children:u.map((I,P)=>r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx(Ss,{className:"size-3"}),I]},P))}),g!==null&&r.jsx("div",{className:"text-sm text-green-500 border-t pt-2",children:g}),v!==null&&r.jsx("div",{className:"text-sm text-destructive border-t pt-2",children:v})]}),r.jsxs("div",{className:"flex items-center justify-between pt-3 border-t",children:[r.jsxs(je,{variant:"outline",size:"sm",onClick:S,disabled:s,children:[r.jsx(Qe,{className:`size-3 mr-1 ${s?"animate-spin":""}`}),"Rescan"]}),r.jsxs(je,{size:"sm",onClick:T,disabled:!A||d.size===0||h,children:[r.jsx(br,{className:"size-3 mr-1"}),h?"Importing...":`Import Selected (${d.size})`]})]})]})})}function H0(e){return e.length<=8?"••••••••":e.slice(0,4)+"••••••••"+e.slice(-4)}const V0=K({id:C().min(1),aliases:pe(C()).optional().default([]),contextWindow:G().int().positive().optional(),outputLimit:G().int().positive().optional(),sourceUrl:C().optional()}),zI=K({name:C().min(1).optional(),aliases:pe(C()).optional().default([]),baseUrls:pe(C()).optional().default([]),models:pe(V0).min(1)});K({version:G().int().positive().optional(),updatedAt:C().optional(),providers:pe(zI).optional().default([]),models:pe(V0).optional().default([])});function pd(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function PI(e){const t=e.models.filter(n=>n.trim()!=="");return t.length>0?t:e.model!==void 0&&e.model.trim()!==""?[e.model]:[]}function Nc(e,t){const n=pd(t);return(e.modelMetadata??[]).find(o=>pd(o.model)===n)??null}function OI(e){const t=PI(e);return t.length===0?!1:t.every(n=>{const s=Nc(e,n);return s!==null&&s.contextWindow!==void 0})}function MI(e,t){if(e===null)return null;for(const n of t){const s=Nc(n,e);if(s!==null&&s.contextWindow!==void 0)return{providerName:n.name,model:s.model,tokens:s.contextWindow,sourceUrl:s.sourceUrl}}return null}const LI={deepseek:"https://api-docs.deepseek.com/zh-cn/"};function Z0(e){return Object.prototype.hasOwnProperty.call(e,"success")}function q0(e){return Object.prototype.hasOwnProperty.call(e,"notConfigured")}function vt(e){return e!==void 0&&e.trim()!==""}function el(e){if(e===void 0)return;const t=Object.entries(e).map(([n,s])=>`${n}: ${s}`);if(t.length!==0)return t.join(`
|
|
125
|
-
`)}function hd(e){return el(e)!==void 0}function md(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function DI(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function $I(e){const t=e.debug;return vt(e.error?.hint)||vt(e.error?.details)||vt(e.rawResponse)||vt(t?.requestUrl)||vt(t?.requestBody)||vt(t?.responseBody)||hd(t?.requestHeaders)||hd(t?.responseHeaders)||t?.responseStatus!==void 0}function mn({title:e,children:t}){return r.jsxs("div",{className:"space-y-1",children:[r.jsx("div",{className:"font-medium text-foreground/80",children:e}),t]})}function Js({value:e}){return r.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 FI({result:e}){const t=e.debug,n=t?.requestUrl,s=t?.requestMethod??"POST",o=el(t?.requestHeaders),i=el(t?.responseHeaders),a=t?.responseStatus!==void 0?`${t.responseStatus}${vt(t.responseStatusText)?` ${t.responseStatusText}`:""}`:void 0,l=t?.responseBody??e.rawResponse;return r.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:[vt(e.error?.hint)&&r.jsx(mn,{title:"Hint",children:r.jsx("div",{children:e.error.hint})}),vt(e.error?.details)&&r.jsx(mn,{title:"Error",children:r.jsx(Js,{value:e.error.details})}),vt(n)&&r.jsx(mn,{title:"Request",children:r.jsxs("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] break-all text-foreground/80",children:[s," ",n]})}),o!==void 0&&r.jsx(mn,{title:"Request Headers",children:r.jsx(Js,{value:o})}),vt(t?.requestBody)&&r.jsx(mn,{title:"Request Body",children:r.jsx(Js,{value:t.requestBody})}),vt(a)&&r.jsx(mn,{title:"Response Status",children:r.jsx("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] text-foreground/80",children:a})}),i!==void 0&&r.jsx(mn,{title:"Response Headers",children:r.jsx(Js,{value:i})}),vt(l)&&r.jsx(mn,{title:"Response Body",children:r.jsx(Js,{value:l})})]})}function us({results:e}){return r.jsxs("div",{className:"grid min-w-0 gap-2 sm:grid-cols-2",children:[r.jsxs("div",{className:"min-w-0 rounded-md border border-border/60 bg-muted/20 px-2 py-1.5",children:[r.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Non-stream"}),r.jsx(gd,{result:e.nonStreaming})]}),r.jsxs("div",{className:"min-w-0 rounded-md border border-border/60 bg-muted/20 px-2 py-1.5",children:[r.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Stream"}),r.jsx(gd,{result:e.streaming})]})]})}function oa({label:e,children:t}){return r.jsxs("div",{className:"min-w-0 space-y-2 rounded-md border border-border/60 bg-muted/15 p-2",children:[r.jsx("div",{className:"text-xs font-medium text-foreground/80",children:e}),t]})}function qe(e){return e!==void 0&&e!==""}function UI(e){const t=[];return qe(e.anthropicBaseUrl)&&t.push("Anthropic"),qe(e.openaiBaseUrl)&&t.push("Chat"),qe(e.openaiResponsesBaseUrl)&&t.push("Responses"),t}function ia({label:e,enabled:t,tone:n}){const o=(n??(t?"active":"quiet"))==="response"&&t?"border-sky-300/30 bg-sky-300/[0.09] text-sky-100":t?"border-border/70 bg-muted/25 text-foreground/80":"border-border/50 bg-transparent text-muted-foreground/70";return r.jsxs("span",{className:`inline-flex items-center gap-1 rounded border px-1.5 py-0.5 ${o}`,children:[t?r.jsx(zl,{className:"size-3"}):r.jsx(fp,{className:"size-3"}),e]})}function BI({provider:e}){const t=qe(e.anthropicBaseUrl),n=qe(e.openaiBaseUrl),s=qe(e.openaiResponsesBaseUrl);return!t&&!n&&!s?r.jsx("div",{className:"text-xs text-muted-foreground",children:"Test requires at least one configured endpoint."}):r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Capabilities"}),t&&r.jsx(ia,{label:"Anthropic",enabled:!0}),n&&r.jsx(ia,{label:"OpenAI Chat",enabled:!0}),r.jsx(ia,{label:s?"OpenAI Responses":"No OpenAI Responses",enabled:s,tone:"response"}),r.jsx("span",{children:"tested non-stream + stream"})]})}function WI(e,t){if(t===void 0)return[];const n=[];return qe(e.anthropicBaseUrl)&&n.push(t.anthropic),qe(e.openaiBaseUrl)&&n.push(t.openaiChat),qe(e.openaiResponsesBaseUrl)&&n.push(t.openaiResponses),n}function HI(e,t){const n={total:0,passed:0,failed:0,testing:0};for(const s of WI(e,t))for(const o of[s.nonStreaming,s.streaming])q0(o)||(n.total+=1,Z0(o)?o.success?n.passed+=1:n.failed+=1:n.testing+=1);return n}function VI({provider:e,testResults:t,isTesting:n}){const s=UI(e),o=HI(e,t);return n?r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-cyan-300/25 bg-cyan-300/[0.08] px-2 py-1 text-xs text-cyan-100",children:[r.jsx(ko,{className:"size-3 animate-spin"}),"Testing"]}):s.length===0?r.jsx("span",{className:"rounded border border-border/70 bg-muted/20 px-2 py-1 text-xs text-muted-foreground",children:"No endpoint"}):t===void 0||o.total===0?r.jsx("span",{className:"rounded border border-border/70 bg-muted/20 px-2 py-1 text-xs text-muted-foreground",children:"Not tested"}):o.failed>0?r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-red-400/25 bg-red-500/[0.08] px-2 py-1 text-xs text-red-200",children:[r.jsx(Ss,{className:"size-3"}),o.passed,"/",o.total," passed"]}):o.testing>0||o.passed<o.total?r.jsxs("span",{className:"rounded border border-amber-300/25 bg-amber-400/[0.08] px-2 py-1 text-xs text-amber-100",children:["Partial ",o.passed,"/",o.total]}):r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-cyan-300/25 bg-cyan-300/[0.08] px-2 py-1 text-xs text-cyan-100",children:[r.jsx(zl,{className:"size-3"}),"OK ",o.passed,"/",o.total]})}function ZI(e){const t=e.models??[];if(t.length===0)return"No models configured";const n=t.slice(0,2).join(", "),s=t.length-2;return s>0?`${n} +${s} more`:n}function qI({provider:e,model:t}){const n=Nc(e,t),s=YI(n?.sourceUrl);return r.jsxs("span",{className:"inline-flex items-center gap-1 rounded bg-muted px-1.5 py-0.5 text-xs text-muted-foreground",children:[r.jsx("span",{children:t}),n!==null&&n.contextWindow!==void 0&&r.jsx("span",{className:"font-mono text-foreground/80",children:Mp(n.contextWindow)}),s!==null&&r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("a",{href:s.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":s.title,children:s.label})}),r.jsx(ft,{children:s.title})]})})]})}function GI(e){const t=e?.models;if(t===void 0)return null;const n=Object.keys(t).length;return n===0?null:`${n} model${n===1?"":"s"} tested`}function KI(e){const t={className:"size-3",strokeWidth:2};switch(e){case"timeout":return r.jsx(sn,{...t});case"network_unreachable":return r.jsx(U_,{...t});case"connection_refused":return r.jsx(W_,{...t});case"auth_failed":return r.jsx(Vw,{...t});case"rate_limited":return r.jsx(Ll,{...t});case"server_error":return r.jsx(C_,{...t});case"invalid_response":return r.jsx(Xy,{...t});case"unknown":return r.jsx(Ss,{...t});default:return r.jsx(Ss,{...t})}}function gd({result:e}){const[t,n]=p.useState(!1);if(!Z0(e))return q0(e)?r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[r.jsx(fp,{className:"size-3"}),r.jsx("span",{children:"Not configured"})]}):r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[r.jsx(ko,{className:"size-3 animate-spin"}),r.jsx("span",{children:"Testing..."})]});if(e.success){const l=[],c=[];e.inputTokens!==void 0&&l.push(r.jsxs("span",{children:[e.inputTokens," in"]},"in")),e.outputTokens!==void 0&&l.push(r.jsxs("span",{children:[e.outputTokens," out"]},"out")),e.cacheCreationInputTokens!==void 0&&e.cacheCreationInputTokens>0&&l.push(r.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(r.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(r.jsxs("span",{children:["first ",md(e.firstChunkMs)]},"first")),e.totalStreamMs!==void 0&&e.totalStreamMs!==null&&c.push(r.jsxs("span",{children:["total ",md(e.totalStreamMs)]},"total")),e.tokensPerSecond!==void 0&&e.tokensPerSecond!==null&&e.tokensPerSecond>0&&c.push(r.jsxs("span",{children:[DI(e.tokensPerSecond)," tok/s"]},"rate"));const u=[];for(let d=0;d<l.length;d++)d>0&&u.push(", "),u.push(l[d]);const f=[];for(let d=0;d<c.length;d++)d>0&&f.push(", "),f.push(c[d]);return r.jsxs("div",{className:"flex shrink-0 items-center gap-1 text-xs text-cyan-100",children:[r.jsx(zl,{className:"size-3 text-cyan-300"}),r.jsx("span",{children:"Connected"}),l.length>0&&r.jsxs("span",{className:"text-muted-foreground",children:["(",u,")"]}),c.length>0&&r.jsxs("span",{className:"hidden text-muted-foreground lg:inline",children:["(",f,")"]})]})}const s=e.error,o=s?.message??"Connection failed",i=s?.type??"unknown",a=$I(e);return r.jsxs("div",{className:"flex flex-col gap-1 shrink-0",children:[r.jsxs("div",{className:"flex items-center gap-1 text-xs text-red-600 max-w-[200px]",children:[KI(i),r.jsx("span",{className:"truncate",children:o}),a&&r.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?r.jsx(Ol,{className:"size-3"}):r.jsx(Ml,{className:"size-3"}),r.jsx("span",{children:t?"Hide":"Details"})]})]}),t&&a&&r.jsx(FI,{result:e})]})}function JI(e){const t=Date.now(),n=new Date(e).getTime(),s=t-n,o=Math.floor(s/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 YI(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(),s=n==="huggingface.co"||n.endsWith(".huggingface.co");return{label:s?"HF":"Source",title:s?"Open Hugging Face model source":"Open model metadata source",url:e}}catch{return null}}function XI({provider:e,testResults:t,isTesting:n,testingTimeLeft:s,isHighlighted:o,onEdit:i,onDelete:a,onTest:l,onRefreshMetadata:c,isRefreshingMetadata:u=!1}){const[f,d]=p.useState(!1),[m,h]=p.useState(!1),[b,g]=p.useState(!1),[x,v]=p.useState(!1);function y(){Tt(e.apiKey).then(P=>{P&&(h(!0),setTimeout(()=>h(!1),2e3))})}const _=e.apiDocsUrl??Object.entries(LI).find(([P])=>e.name.toLowerCase().includes(P))?.[1],j=OI(e),S=e.modelMetadataUrl!==void 0&&e.modelMetadataUrl.trim()!=="",N=S?"Refresh":"Import defaults",T=n??!1,A=GI(t),I=e.source==="company"?r.jsx("span",{className:"shrink-0 rounded border border-cyan-300/20 bg-cyan-300/[0.08] px-1.5 py-0.5 text-xs text-cyan-100",children:"Company"}):e.source==="personal"?r.jsx("span",{className:"shrink-0 rounded border border-violet-300/20 bg-violet-300/[0.08] px-1.5 py-0.5 text-xs text-violet-100",children:"Personal"}):null;return r.jsxs("div",{className:`flex flex-col gap-3 rounded-[8px] border border-border bg-card p-4 shadow-sm transition-all duration-500 ${o===!0?"ring-2 ring-primary shadow-md":""}`,children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-2",children:[r.jsxs("div",{className:"min-w-0 space-y-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[r.jsx("span",{className:"font-medium leading-snug",children:e.name}),I]}),r.jsx("div",{className:"text-xs leading-snug text-muted-foreground",children:ZI(e)})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsx(VI,{provider:e,testResults:t,isTesting:T}),_!==void 0&&r.jsxs("a",{href:_,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground",title:"View API documentation",children:[r.jsx(Pl,{className:"size-3"}),r.jsx("span",{className:"sr-only",children:"Docs"})]})]})]}),r.jsxs("div",{className:"flex flex-col gap-2 text-xs text-muted-foreground sm:flex-row sm:items-center sm:justify-between",children:[r.jsx(BI,{provider:e}),r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsx("span",{children:"Key configured"}),r.jsx("span",{children:e.authHeader==="x-api-key"?"x-api-key":"Bearer"}),A!==null&&r.jsx("span",{children:A}),t?.testedAt!==void 0&&r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(sn,{className:"size-3"}),JI(t.testedAt)]})]})]}),!j&&r.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:[r.jsx("span",{children:"Context window metadata missing"}),r.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[r.jsxs(je,{type:"button",variant:"outline",size:"sm",onClick:()=>c?.(e.id),className:"h-6 gap-1 px-2 text-xs",disabled:u,children:[r.jsx(ko,{className:`size-3 ${u?"animate-spin":""}`}),N]}),!S&&r.jsx(je,{type:"button",variant:"ghost",size:"sm",onClick:()=>i(e),className:"h-6 px-2 text-xs",children:"Set URL"})]})]}),b&&r.jsxs("div",{className:"space-y-3 border-t border-border/60 pt-3",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("code",{className:"flex-1 truncate rounded bg-muted px-2 py-1 text-xs text-muted-foreground",children:f?e.apiKey:H0(e.apiKey)}),r.jsx("button",{type:"button",onClick:()=>d(P=>!P),className:"p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":f?"Hide API key":"Show API key",children:f?r.jsx(Ol,{className:"size-4"}):r.jsx(Ml,{className:"size-4"})}),r.jsx("button",{type:"button",onClick:y,className:"p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":"Copy API key",children:m?r.jsx(Ge,{className:"size-4 text-cyan-300"}):r.jsx(It,{className:"size-4"})})]}),e.models!==void 0&&e.models.length>0&&r.jsx("div",{className:"flex flex-wrap gap-1",children:e.models.map(P=>r.jsx(qI,{provider:e,model:P},P))}),(qe(e.anthropicBaseUrl)||qe(e.openaiBaseUrl)||qe(e.openaiResponsesBaseUrl))&&r.jsxs("div",{className:"grid gap-2 lg:grid-cols-3",children:[qe(e.anthropicBaseUrl)&&r.jsxs(oa,{label:"Anthropic",children:[t!==void 0&&r.jsx(us,{results:t.anthropic}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiBaseUrl)&&r.jsxs(oa,{label:"OpenAI Chat",children:[t!==void 0&&r.jsx(us,{results:t.openaiChat}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiResponsesBaseUrl)&&r.jsxs(oa,{label:"OpenAI Responses",children:[t!==void 0&&r.jsx(us,{results:t.openaiResponses}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),!qe(e.openaiResponsesBaseUrl)&&r.jsx("div",{className:"min-w-0 rounded-md border border-border/50 bg-transparent p-2 text-xs text-muted-foreground/75",children:"OpenAI Responses not configured"})]}),t?.models!==void 0&&Object.keys(t.models).length>0&&r.jsxs("div",{children:[r.jsxs("button",{type:"button",onClick:()=>v(P=>!P),className:"flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground",children:[x?r.jsx(it,{className:"size-3"}):r.jsx(Et,{className:"size-3"}),"Model Test Results (",Object.keys(t.models).length,")"]}),x&&r.jsx("div",{className:"mt-2 overflow-x-auto",children:r.jsxs("table",{className:"w-full border-collapse text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-border",children:[r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Model"}),qe(e.anthropicBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Anthropic"}),qe(e.openaiBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Chat"}),qe(e.openaiResponsesBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Responses"})]})}),r.jsx("tbody",{children:Object.entries(t.models).map(([P,L])=>r.jsxs("tr",{className:"border-b border-border/50 last:border-0",children:[r.jsx("td",{className:"px-2 py-1 font-medium",children:P}),qe(e.anthropicBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.anthropic})}),qe(e.openaiBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.openaiChat})}),qe(e.openaiResponsesBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.openaiResponses})})]},P))})]})})]})]}),r.jsxs("div",{className:"flex flex-col gap-2 border-t pt-1 sm:flex-row sm:items-center sm:justify-between",children:[r.jsxs("button",{type:"button",onClick:()=>g(P=>!P),className:"inline-flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground","aria-expanded":b,children:[b?r.jsx(it,{className:"size-3"}):r.jsx(Et,{className:"size-3"}),"Details"]}),r.jsxs("div",{className:"flex gap-2",children:[l!==void 0&&r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>l(e.id),className:"text-xs h-7 gap-1",disabled:T,children:[r.jsx(ko,{className:`size-3 ${T?"animate-spin":""}`}),T?s!==void 0?`Testing (${s}s)`:"Testing...":"Test"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>i(e),className:"text-xs h-7 gap-1",disabled:T,children:[r.jsx(pp,{className:"size-3"}),"Edit"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>a(e.id),className:"text-xs h-7 gap-1 text-destructive hover:text-destructive",disabled:T,children:[r.jsx(wn,{className:"size-3"}),"Delete"]})]})]})]})}const _s="/v1/chat/completions",tl="/v1/responses",QI="/v1/messages";function eR(e,t){const n=e.endsWith("/")?e.slice(0,-1):e,s=G0(t),o=t.indexOf("?"),i=o>=0?t.slice(o):"";return s!==""&&n.endsWith(s)?n+i:J0(n)&&K0(t)||n.endsWith("/v1")&&t.startsWith("/v1/")?n+t.slice(3):n+t}function tR(e,t,n={}){const s=e.trim().replace(/\/+$/,""),o=G0(t),i=eR(s,t),a=[];return o!==""&&s.endsWith(o)?a.push({severity:"info",message:"This already includes the exact endpoint; no duplicate suffix will be appended."}):J0(s)&&K0(t)?a.push({severity:"info",message:"Zhipu bases already include the API version; only /chat/completions is appended."}):s.endsWith("/v1")&&t.startsWith("/v1/")&&a.push({severity:"info",message:"Base URL already ends with /v1; the suffix will not repeat /v1."}),xd(o)&&sR(s)&&a.push({severity:"warning",message:"This looks like a Chat Completions endpoint, so Responses would append after it."}),nR(o)&&rR(s)&&a.push({severity:"warning",message:"This looks like a Responses endpoint, so Chat Completions would append after it."}),xd(o)&&oR(s,n.providerName)&&a.push({severity:"warning",message:"DeepSeek's official API does not currently expose OpenAI Responses."}),{finalUrl:i,diagnostics:a}}function G0(e){return e.split("?")[0]??e}function K0(e){return e===_s||e.startsWith(`${_s}?`)||e.startsWith(`${_s}/`)}function nR(e){return e===_s||e.startsWith(`${_s}/`)}function xd(e){return e===tl||e.startsWith(`${tl}/`)}function sR(e){return e.toLowerCase().endsWith("/chat/completions")}function rR(e){return e.toLowerCase().endsWith("/responses")}function oR(e,t){const n=t?.toLowerCase();if(n!==void 0&&n.includes("deepseek"))return!0;try{return new URL(e).hostname.toLowerCase().includes("deepseek")}catch{return e.toLowerCase().includes("deepseek")}}function J0(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 bd=["zhipu","zhipuai","bigmodel","z.ai","zai","glm"],vd=["zhipu coding","glm coding","bigmodel coding","z.ai coding","zai coding"],Jr=QI,Yr=_s,Xr=tl,iR={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"}},yd=["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"],wd=["qwen3.6-plus","qwen3.7-max"],_d=["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"],nl="__unset__",$o="__custom__",Y0=[{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 Ln(){return{contextWindow:"",contextWindowMode:"unset",outputLimit:""}}function kd(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function X0(e,t){const n=kd(t);return e?.modelMetadata?.find(s=>kd(s.model)===n)??null}function Q0(e){const t=So(e);if(t===null)return null;for(const n of Y0)if(So(n.value)===t)return n.value;return null}function aR(e){return e.trim()===""?"unset":Q0(e)!==null?"preset":"custom"}function lR(e){switch(e.contextWindowMode){case"unset":return nl;case"custom":return $o;case"preset":return Q0(e.contextWindow)??$o}}function aa(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 s=n[1];if(s===void 0)return{amount:t,unit:"K"};const o=n[2];if(o===void 0||o==="")return{amount:s,unit:"tokens"};switch(o.toLowerCase()){case"k":return{amount:s,unit:"K"};case"m":return{amount:s,unit:"M"};default:return{amount:t,unit:"K"}}}function jd(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 Sd(e,t){return t.map(n=>{const s=X0(e,n),o=s?.contextWindow!==void 0?d5(s.contextWindow):"";return{contextWindow:o,contextWindowMode:aR(o),outputLimit:s?.outputLimit?.toString()??""}})}function Cd(e){const t=e.trim();if(t==="")return null;const n=Number(t);return!Number.isInteger(n)||n<=0?null:n}function ds(e,t){if(e===void 0)return"";const n=e.trim(),s=n.replace(/\/+$/,"");return s.endsWith(t)?s.slice(0,-t.length).replace(/\/+$/,""):n}function cR(e,t,n){const s=e.trim();return s===""?null:tR(s,t,{providerName:n})}function la({baseUrl:e,endpoint:t,providerName:n}){const s=cR(e,t,n);return s===null?null:r.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2 text-xs",children:[r.jsx("div",{className:"text-muted-foreground",children:"Final URL"}),r.jsx("div",{className:"break-all font-mono text-foreground",children:s.finalUrl}),s.diagnostics.length>0&&r.jsx("div",{className:"mt-2 space-y-1",children:s.diagnostics.map(o=>r.jsx("div",{className:o.severity==="warning"?"text-amber-200":"text-muted-foreground",children:o.message},`${o.severity}:${o.message}`))})]})}function uR({provider:e,onSubmit:t,onCancel:n}){const[s,o]=p.useState(e?.name??""),[i,a]=p.useState(e?.apiKey??""),[l,c]=p.useState(!1),[u,f]=p.useState(!1),d=e?.models,[m,h]=p.useState(d!==void 0&&d.length>0?d:[""]),[b,g]=p.useState(()=>Sd(e,d!==void 0&&d.length>0?d:[""])),[x,v]=p.useState("anthropic"),[y,_]=p.useState(ds(e?.anthropicBaseUrl,Jr)),[j,S]=p.useState(ds(e?.openaiBaseUrl,Yr)),[N,T]=p.useState(ds(e?.openaiResponsesBaseUrl,Xr)),[A,I]=p.useState(e?.apiDocsUrl??""),[P,L]=p.useState(e?.modelMetadataUrl??""),[E,D]=p.useState(e?.source),[w,$]=p.useState({}),[ee,F]=p.useState(!1),[te,V]=p.useState(null),X=p.useRef([]);p.useEffect(()=>{if(te===null)return;const z=te;function M(J){if(!(J.target instanceof Node))return;const oe=X.current[z];oe!=null&&!oe.contains(J.target)&&V(null)}return document.addEventListener("mousedown",M),()=>document.removeEventListener("mousedown",M)},[te]);const[H,B]=p.useState(!1),[ce,W]=p.useState(!1),[Y,_e]=p.useState(!1),fe=s.toLowerCase().includes("minimax"),xe=s.toLowerCase().includes("alibaba"),de=[...bd,...vd].some(z=>s.toLowerCase().includes(z)),ge=fe?yd:de?_d:xe?wd:[],be=e?.modelMetadata?.some(z=>z.contextWindow!==void 0)??!1;function Ce(){Tt(i).then(z=>{z&&(f(!0),setTimeout(()=>f(!1),2e3))})}p.useEffect(()=>{if(e){o(e.name),a(e.apiKey);const z=(e.models?.length??0)>0?e.models:[""];h(z),g(Sd(e,z)),_(ds(e.anthropicBaseUrl,Jr)),S(ds(e.openaiBaseUrl,Yr)),T(ds(e.openaiResponsesBaseUrl,Xr)),I(e.apiDocsUrl??""),L(e.modelMetadataUrl??""),D(e.source),B(!1),W(!1),_e(!1)}},[e]),p.useEffect(()=>{const z=s.toLowerCase();for(const[M,J]of Object.entries(iR))if(z.includes(M)){J.anthropicBaseUrl!==void 0&&!H&&_(J.anthropicBaseUrl),J.openaiBaseUrl!==void 0&&!ce&&S(J.openaiBaseUrl),J.openaiResponsesBaseUrl!==void 0&&!Y&&T(J.openaiResponsesBaseUrl),J.apiDocsUrl!==void 0&&!A&&I(J.apiDocsUrl),M==="minimax"&&m.length===1&&m[0]===""&&h([yd[0]??""]),M==="alibaba"&&m.length===1&&m[0]===""&&h([wd[0]??""]),(bd.includes(M)||vd.includes(M))&&m.length===1&&m[0]===""&&h([_d[0]??""]);break}},[s]);function Re(){const z={};return s.trim()||(z.name="Name is required"),i.trim()||(z.apiKey="API key is required"),(m.length===0||m.every(M=>!M.trim()))&&(z.models="At least one model is required"),y.trim()&&!k(y.trim())&&(z.anthropicBaseUrl="Invalid URL format"),j.trim()&&!k(j.trim())&&(z.openaiBaseUrl="Invalid URL format"),N.trim()&&!k(N.trim())&&(z.openaiResponsesBaseUrl="Invalid URL format"),P.trim()&&!k(P.trim())&&(z.modelMetadataUrl="Invalid URL format"),b.forEach((M,J)=>{const oe=So(M.contextWindow),ie=Cd(M.outputLimit);M.contextWindow.trim()!==""&&oe===null&&(z[`modelMetadata.${J}.contextWindow`]="Context window must be a positive number, optionally using K or M"),M.outputLimit.trim()!==""&&ie===null&&(z[`modelMetadata.${J}.outputLimit`]="Output limit must be a positive integer"),oe!==null&&ie!==null&&ie>oe&&(z[`modelMetadata.${J}.outputLimit`]="Output limit should not exceed context window")}),!y.trim()&&!j.trim()&&!N.trim()&&(z.format="At least one format URL (Anthropic or OpenAI) is required"),$(z),Object.keys(z).length===0}function k(z){try{return new URL(z),!0}catch{return!1}}function Q(z,M){h(J=>{const oe=[...J];return oe[z]=M,oe})}function q(z,M){g(J=>{const oe=[...J];return oe[z]={...oe[z]??Ln(),...M},oe})}function O(z,M){switch(M){case nl:q(z,{contextWindow:"",contextWindowMode:"unset"});return;case $o:{const J=b[z]??Ln();q(z,{contextWindow:J.contextWindow,contextWindowMode:"custom"});return}default:q(z,{contextWindow:M,contextWindowMode:"preset"});return}}function R(z,M){const J=b[z]??Ln(),oe=aa(J.contextWindow);q(z,{contextWindow:jd(M,oe.unit),contextWindowMode:"custom"})}function U(z,M){const J=b[z]??Ln(),oe=aa(J.contextWindow);switch(M){case"K":case"M":case"tokens":q(z,{contextWindow:jd(oe.amount,M),contextWindowMode:"custom"});return;default:return}}function re(z){h(M=>M.filter((J,oe)=>oe!==z)),g(M=>M.filter((J,oe)=>oe!==z))}function se(){h(z=>[...z,""]),g(z=>[...z,Ln()])}function Z(){const z=new Date().toISOString(),M=[];return m.forEach((J,oe)=>{const ie=J.trim();if(ie==="")return;const we=b[oe]??Ln(),he=So(we.contextWindow),me=Cd(we.outputLimit);if(he===null&&me===null)return;const Ie=X0(e,ie);if(Ie!==null&&Ie.contextWindow===(he??void 0)&&Ie.outputLimit===(me??void 0)){M.push({...Ie,model:ie});return}const $e={model:ie,source:"manual",updatedAt:z};he!==null&&($e.contextWindow=he),me!==null&&($e.outputLimit=me),M.push($e)}),M.length>0?M:e?.modelMetadata!==void 0?[]:void 0}function le(z){if(z.preventDefault(),!!Re()){F(!0);try{t({name:s.trim(),apiKey:i.trim(),models:m.map(M=>M.trim()).filter(M=>M!==""),anthropicBaseUrl:y.trim()||void 0,openaiBaseUrl:j.trim()||void 0,openaiResponsesBaseUrl:N.trim()||void 0,apiDocsUrl:A.trim()||void 0,modelMetadataUrl:P.trim()||void 0,modelMetadata:Z(),source:E})}finally{F(!1)}}}return r.jsxs("form",{onSubmit:le,className:"space-y-4",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{htmlFor:"provider-name",className:"text-sm font-medium",children:["Name ",r.jsx("span",{className:"text-destructive",children:"*"})]}),r.jsx("input",{id:"provider-name",type:"text",value:s,onChange:z=>o(z.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"}),w.name!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.name})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-source",className:"text-sm font-medium",children:"Token Source"}),r.jsxs("select",{id:"provider-source",value:E??"",onChange:z=>D(z.target.value==="company"||z.target.value==="personal"?z.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:[r.jsx("option",{value:"",children:"Unspecified"}),r.jsx("option",{value:"personal",children:"个人 (Personal)"}),r.jsx("option",{value:"company",children:"公司 (Company)"})]}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Label whether this API key is company-provided or personal."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-model-metadata-url",className:"text-sm font-medium",children:"Model Metadata URL"}),r.jsx("input",{id:"provider-model-metadata-url",type:"text",value:P,onChange:z=>L(z.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"}),w.modelMetadataUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.modelMetadataUrl}),P.trim()===""&&r.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&&!be&&P.trim()===""&&r.jsx("p",{className:"text-xs text-amber-400",children:"This provider has no matching context metadata yet."}),P.trim()!==""&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"Agent Inspector will refresh model limits from this JSON registry after save."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{htmlFor:"provider-apikey",className:"text-sm font-medium",children:["API Key ",r.jsx("span",{className:"text-destructive",children:"*"})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"provider-apikey",type:"text",value:l||i.length===0?i:H0(i),onChange:z=>a(z.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"}),r.jsx("button",{type:"button",onClick:()=>c(z=>!z),className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":l?"Hide API key":"Show API key",children:l?r.jsx(Ol,{className:"size-4"}):r.jsx(Ml,{className:"size-4"})}),r.jsx("button",{type:"button",onClick:Ce,className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":"Copy API key",children:u?r.jsx(Ge,{className:"size-4 text-cyan-300"}):r.jsx(It,{className:"size-4"})})]}),w.apiKey!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.apiKey})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{className:"text-sm font-medium",children:["Models ",r.jsx("span",{className:"text-destructive",children:"*"})]}),m.map((z,M)=>{const J=b[M]??Ln(),oe=w[`modelMetadata.${M}.contextWindow`],ie=w[`modelMetadata.${M}.outputLimit`],we=lR(J),he=aa(J.contextWindow);return r.jsxs("div",{ref:me=>{X.current[M]=me},className:"border border-border bg-card shadow-sm space-y-2 rounded-[8px] p-2",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("input",{type:"text",value:z,onChange:me=>Q(M,me.target.value),placeholder:ge.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"}),ge.length>0&&r.jsxs(r.Fragment,{children:[r.jsx("button",{type:"button",onClick:()=>V(te===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:r.jsx(it,{className:"size-4"})}),te===M&&r.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:ge.map(me=>r.jsx("button",{type:"button",onClick:()=>{Q(M,me),V(null)},className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-white/[0.06]",children:me},me))})]})]}),m.length>1&&r.jsx("button",{type:"button",onClick:()=>re(M),className:"text-muted-foreground hover:text-destructive transition-colors p-1 shrink-0","aria-label":"Remove model",children:r.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:[r.jsx("path",{d:"M3 6h18"}),r.jsx("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),r.jsx("path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"})]})})]}),r.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[r.jsxs("div",{className:"space-y-1 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Context Window"}),r.jsxs(Is,{value:we,onValueChange:me=>O(M,me),children:[r.jsx(zs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(Rs,{})}),r.jsxs(Ps,{className:"max-h-64",children:[r.jsx(pt,{value:nl,children:"Not set"}),Y0.map(me=>r.jsxs(pt,{value:me.value,children:[me.label," · ",me.value]},me.value)),r.jsx(pt,{value:$o,children:"Custom"})]})]}),J.contextWindowMode==="custom"&&r.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_5.75rem] gap-1.5",children:[r.jsx("input",{type:"text",inputMode:"decimal",value:he.amount,onChange:me=>R(M,me.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]"}),r.jsxs(Is,{value:he.unit,onValueChange:me=>U(M,me),children:[r.jsx(zs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(Rs,{})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"K",children:"K"}),r.jsx(pt,{value:"M",children:"M"}),r.jsx(pt,{value:"tokens",children:"tokens"})]})]})]}),oe!==void 0&&r.jsx("span",{className:"block text-destructive",children:oe})]}),r.jsxs("label",{className:"space-y-1 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Output Limit"}),r.jsx("input",{type:"number",min:1,step:1e3,value:J.outputLimit,onChange:me=>q(M,{outputLimit:me.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]"}),ie!==void 0&&r.jsx("span",{className:"block text-destructive",children:ie})]})]})]},M)}),r.jsx("button",{type:"button",onClick:se,className:"text-xs text-primary hover:underline flex items-center gap-1",children:"+ Add Model"}),w.models!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.models})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("div",{className:"border border-border bg-muted/40 flex gap-1 rounded-[8px] p-1",children:[r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>v("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"})}),r.jsx(ft,{children:"Anthropic Messages API format"})]})}),r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>v("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"})}),r.jsx(ft,{children:"OpenAI Chat Completions API format"})]})})]}),w.format!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.format})]}),x==="anthropic"&&r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-anthropic-base-url",className:"text-sm font-medium",children:"Anthropic Base URL"}),r.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:[r.jsx("input",{id:"provider-anthropic-base-url",type:"text",value:y,onChange:z=>{B(!0),_(z.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"}),r.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:Jr})]}),w.anthropicBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.anthropicBaseUrl}),r.jsx(la,{baseUrl:y,endpoint:Jr,providerName:s}),r.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"&&r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-openai-base-url",className:"text-sm font-medium",children:"OpenAI Chat Base URL"}),r.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:[r.jsx("input",{id:"provider-openai-base-url",type:"text",value:j,onChange:z=>{W(!0),S(z.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"}),r.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:Yr})]}),w.openaiBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiBaseUrl}),r.jsx(la,{baseUrl:j,endpoint:Yr,providerName:s}),r.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."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-openai-responses-base-url",className:"text-sm font-medium",children:"OpenAI Responses Base URL"}),r.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:[r.jsx("input",{id:"provider-openai-responses-base-url",type:"text",value:N,onChange:z=>{_e(!0),T(z.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"}),r.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:Xr})]}),w.openaiResponsesBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiResponsesBaseUrl}),r.jsx(la,{baseUrl:N,endpoint:Xr,providerName:s}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional Responses-compatible base URL. Set only when the provider supports the Responses API."})]})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-api-docs-url",className:"text-sm font-medium",children:"API Docs URL"}),r.jsx("input",{id:"provider-api-docs-url",type:"text",value:A,onChange:z=>I(z.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"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional API documentation URL. If not set, uses known provider docs."})]}),r.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:[r.jsx(je,{type:"button",variant:"outline",onClick:n,disabled:ee,children:"Cancel"}),r.jsx(je,{type:"submit",disabled:ee,children:ee?"Saving...":e?"Update Provider":"Add Provider"})]})]})}const dR=Ee(["timeout","network_unreachable","connection_refused","auth_failed","rate_limited","server_error","invalid_response","unknown"]),fR=K({message:C(),type:dR,details:C().optional(),hint:C().optional()}),pR=K({type:Ee(["text","thinking"]),text:C().optional(),thinking:C().optional()}),hR=K({requestUrl:C().optional(),requestMethod:C().optional(),requestHeaders:Ye(C(),C()).optional(),requestBody:C().optional(),responseStatus:G().optional(),responseStatusText:C().optional(),responseHeaders:Ye(C(),C()).optional(),responseBody:C().optional()}),mR=K({success:Le(),error:fR.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(pR).optional(),rawResponse:C().optional(),streaming:Le().optional(),streamingChunks:K({chunks:pe(Mf),truncated:Le().default(!1)}).optional(),requestHeaders:Ye(C(),C()).optional(),debug:hR.optional()}),Nd=Yt([mR,K({notConfigured:Ae(!0)}),K({testing:Ae(!0)})]),vn=K({nonStreaming:Nd,streaming:Nd});function Fo(){return{nonStreaming:{notConfigured:!0},streaming:{notConfigured:!0}}}const gR=K({anthropic:vn,openai:vn.optional(),openaiChat:vn.optional(),openaiResponses:vn.optional()}).transform(e=>{const t=e.openaiChat??e.openai??Fo();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Fo()}}),xR=K({anthropic:vn,openai:vn.optional(),openaiChat:vn.optional(),openaiResponses:vn.optional(),models:Ye(C(),gR).optional(),testedAt:C().optional()}).transform(e=>{const t=e.openaiChat??e.openai??Fo();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Fo()}});function bR(){return{anthropic:{nonStreaming:{testing:!0},streaming:{testing:!0}},openai:{nonStreaming:{testing:!0},streaming:{testing:!0}},openaiChat:{nonStreaming:{testing:!0},streaming:{testing:!0}},openaiResponses:{nonStreaming:{testing:!0},streaming:{testing:!0}}}}function Td(e,t){const n=()=>({nonStreaming:{success:!1,error:{message:e,type:t}},streaming:{notConfigured:!0}});return{anthropic:n(),openai:n(),openaiChat:n(),openaiResponses:n()}}const vR=K({providerConfig:C()}),yR=K({success:Le().optional(),imported:G().optional(),message:C().optional(),errors:pe(C()).optional()}),wR=K({provider:Co,imported:G(),matchedModels:pe(C()),missingModels:pe(C()),sourceUrl:C()}),Qr="Network error: could not reach the server. Is the proxy running?",_R=5e3,kR=5e3,Ed=15e3,jR=1e4,SR=2e4,CR=2e4,NR=3e4;function Ad(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 TR(e,t){const n=e?.models?.map(s=>s.trim()).filter(s=>s!=="").length??0;return Math.max(1,n)*t}async function ER(e,t){if(t.models!==void 0)try{await Fn(`/api/providers/${e}/test/log`,kR,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch{}}function AR({externalProviders:e,isLoading:t=!1,externalTestResults:n,externalTestingProviders:s,externalTestingTimeLeft:o,onProvidersMutate:i,onTestResultsChange:a,onTestingProvidersChange:l,onTestingTimeLeftChange:c}){const[u,f]=p.useState(!1),[d,m]=p.useState(),[h,b]=p.useState(null),[g,x]=p.useState({}),[v,y]=p.useState(new Set),[_,j]=p.useState({}),[S,N]=p.useState(null),[T,A]=p.useState(!1),[I,P]=p.useState(null),[L,E]=p.useState(!1),[D,w]=p.useState(!1),[$,ee]=p.useState(null),[F,te]=p.useState("all"),[V,X]=p.useState(new Set),{providerTestTimeoutSeconds:H}=Al(),B=p.useRef(null),ce=p.useRef(null),W=e??[],Y=p.useMemo(()=>{const z=F==="all"?W:W.filter(M=>M.source===F);return F==="all"?[...z].sort((M,J)=>{const oe={personal:0,company:1};return(oe[M.source??""]??2)-(oe[J.source??""]??2)}):z},[W,F]),_e=n??g,fe=s??v,xe=o??_,de=c?(z,M)=>c(z,M):(z,M)=>{j(M===void 0?J=>{const oe={...J};return delete oe[z],oe}:J=>({...J,[z]:M}))};p.useEffect(()=>{(async()=>{try{const z=await Ke("/api/config/paths",vR,_R);N(z.providerConfig)}catch{}})()},[]);const ge=p.useCallback(z=>{ce.current!==null&&clearTimeout(ce.current),P(z),B.current?.scrollTo({top:B.current.scrollHeight,behavior:"smooth"}),ce.current=setTimeout(()=>{P(null),ce.current=null},2e3)},[]);p.useEffect(()=>()=>{ce.current!==null&&clearTimeout(ce.current)},[]);const be=p.useCallback(()=>{i?.().catch(()=>{})},[i]),Ce=p.useCallback((z,M)=>{a?a(z,M):x(J=>({...J,[z]:M}))},[a]),Re=p.useCallback((z,M)=>{if(l){l(z,M);return}y(J=>{const oe=new Set(J);return M?oe.add(z):oe.delete(z),oe})},[l]),k=p.useCallback(async z=>{Ce(z,bR()),Re(z,!0);const M=new AbortController,J=W.find(he=>he.id===z),oe=TR(J,H);let ie=oe;de(z,ie);const we=setInterval(()=>{ie--,de(z,ie),ie<=0&&(clearInterval(we),M.abort())},1e3);try{const he=await Ke(`/api/providers/${z}/test`,xR,oe*1e3+1e3,{method:"POST",signal:M.signal},me=>`HTTP ${me.status}: ${me.statusText}`);Ce(z,he),await ER(z,he)}catch(he){const me=he instanceof Error&&he.name==="AbortError",Ie=he instanceof Yo;me||Ie?Ce(z,Td("Request timed out","timeout")):he instanceof Error&&Ce(z,Td(he.message,"server_error"))}finally{clearInterval(we),de(z,void 0),Re(z,!1)}},[H,W,de,Ce,Re]),Q=p.useCallback(async(z,M,J=!0)=>{X(oe=>{const ie=new Set(oe);return ie.add(z),ie});try{const oe=M!==void 0&&M.trim()!==""?{url:M}:{},ie=await Ke(`/api/providers/${z}/model-metadata`,wR,NR,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(oe)},()=>"Failed to refresh model metadata");return ie.imported===0&&J?b("No matching model metadata found for this provider."):b(null),ge(ie.provider.id),be(),ie.imported>0}catch(oe){return J&&b(oe instanceof Error?oe.message:Qr),!1}finally{X(oe=>{const ie=new Set(oe);return ie.delete(z),ie})}},[be,ge]);function q(z){(async()=>{try{const M=await Ke("/api/providers",Co,Ed,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Ad(z))},()=>"Failed to add provider");f(!1),ge(M.id),z.modelMetadataUrl!==void 0&&z.modelMetadataUrl.trim()!==""&&await Q(M.id,z.modelMetadataUrl,!1),be(),await k(M.id)}catch(M){b(M instanceof Error?M.message:Qr)}})()}function O(z){d&&(async()=>{try{const M=await Ke(`/api/providers/${d.id}`,Co,Ed,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(Ad(z))},()=>"Failed to update provider");m(void 0),ge(M.id),z.modelMetadataUrl!==void 0&&z.modelMetadataUrl.trim()!==""&&await Q(M.id,z.modelMetadataUrl,!1),be(),((z.apiKey??"")!==(d.apiKey??"")||JSON.stringify(z.models)!==JSON.stringify(d.models)||(z.anthropicBaseUrl??"")!==(d.anthropicBaseUrl??"")||(z.openaiBaseUrl??"")!==(d.openaiBaseUrl??"")||(z.openaiResponsesBaseUrl??"")!==(d.openaiResponsesBaseUrl??""))&&await k(M.id)}catch(M){b(M instanceof Error?M.message:Qr)}})()}function R(z){ee(z),w(!0)}function U(){const z=$;z!==null&&(async()=>{let M;try{M=await Fn(`/api/providers/${z}`,jR,{method:"DELETE"})}catch{b(Qr);return}if(!M.ok){b(await wl(M,"Failed to delete provider"));return}be()})()}const re=p.useRef(null);function se(z){const M="/api/providers/export";(async()=>{try{const J=await Fn(M,SR);if(!J.ok){b("Failed to export providers");return}const oe=await J.blob(),ie=URL.createObjectURL(oe),we=document.createElement("a");we.href=ie,we.download=J.headers.get("Content-Disposition")?.match(/filename="(.+)"/)?.[1]??"providers.json",document.body.appendChild(we),we.click(),document.body.removeChild(we),URL.revokeObjectURL(ie)}catch{b("Failed to export providers")}})()}function Z(){re.current?.click()}function le(z){const M=z.target.files?.[0];M&&(async()=>{try{const J=await M.text(),oe=await Fn("/api/providers/import",CR,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(J)}),ie=await yl(oe,yR);oe.ok&&ie.imported!==void 0&&ie.imported>0?(be(),b(null)):ie.errors&&ie.errors.length>0?b(ie.errors.join("; ")):b(ie.message??"Import failed")}catch{b("Failed to import providers")}z.target.value=""})()}return t?r.jsx("div",{className:"flex items-center justify-center py-8",children:r.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading providers..."})}):u||d?r.jsxs("div",{className:"space-y-4",children:[r.jsx("div",{className:"sticky top-0 z-10 flex items-center justify-between gap-3 rounded-[8px] bg-background/95 px-1 py-1 backdrop-blur",children:r.jsx("h3",{className:"text-lg font-medium",children:d?"Edit Provider":"Add New Provider"})}),r.jsx(uR,{provider:d,onSubmit:d?O:q,onCancel:()=>{f(!1),m(void 0)}})]}):r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"sticky top-0 z-10 flex items-center justify-between gap-3 rounded-[8px] bg-background/95 px-1 py-1 backdrop-blur",children:[r.jsx("h3",{className:"text-lg font-medium",children:"Providers"}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>se(),className:"gap-1 hover:bg-muted",children:[r.jsx(br,{className:"size-3"}),"Export"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:Z,className:"gap-1 hover:bg-muted",children:[r.jsx(gp,{className:"size-3"}),"Import"]}),r.jsx("input",{type:"file",ref:re,accept:".json",onChange:le,style:{display:"none"}}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>E(!0),className:"gap-1",children:[r.jsx(w_,{className:"size-3"}),"Scan"]}),r.jsxs(je,{onClick:()=>f(!0),size:"sm",className:"gap-1",children:[r.jsx(wa,{className:"size-4"}),"Add Provider"]})]})]}),S!==null&&r.jsxs("div",{className:"flex items-center gap-2 rounded-[8px] bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.jsx("span",{className:"shrink-0",children:"Config:"}),r.jsx("span",{className:"font-mono truncate",title:S,children:S}),r.jsx("button",{type:"button",onClick:()=>{Tt(S).then(z=>{z&&(A(!0),setTimeout(()=>A(!1),2e3))})},className:"ml-auto shrink-0 text-muted-foreground transition-colors hover:text-foreground","aria-label":T?"Copied config file path":"Copy config file path",children:T?r.jsx(Ge,{className:"size-3 text-cyan-300"}):r.jsx(It,{className:"size-3"})})]}),h!==null&&r.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:[r.jsx(Ss,{className:"size-4 shrink-0"}),h]}),W.length===0?r.jsxs("div",{className:"border border-border bg-card shadow-sm space-y-3 rounded-[8px] py-12 text-center",children:[r.jsx("p",{className:"text-sm text-muted-foreground",children:"No providers configured yet."}),r.jsxs(je,{onClick:()=>f(!0),variant:"outline",size:"sm",children:[r.jsx(wa,{className:"size-4"}),"Add Your First Provider"]})]}):r.jsxs("div",{className:"space-y-3",children:[r.jsx("div",{className:"inline-flex w-fit gap-1 rounded-[8px] bg-muted/20 p-1",children:["all","personal","company"].map(z=>r.jsx("button",{type:"button",onClick:()=>te(z),className:`rounded-md px-3 py-1.5 text-sm font-medium transition-colors ${F===z?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:z==="all"?"All":z==="personal"?"Personal":"Company"},z))}),r.jsx("div",{ref:B,className:"space-y-3",children:Y.map(z=>r.jsx(XI,{provider:z,testResults:_e[z.id],isTesting:fe.has(z.id),testingTimeLeft:xe[z.id],isHighlighted:z.id===I,onEdit:M=>m(M),onDelete:R,onRefreshMetadata:M=>{Q(M)},isRefreshingMetadata:V.has(z.id),onTest:M=>{k(M)}},z.id))})]}),r.jsx(RI,{open:L,onOpenChange:E,onImportComplete:()=>{i!==void 0&&i()}}),r.jsx(r0,{open:D,onOpenChange:w,title:"Delete Provider",description:"Are you sure you want to delete this provider? This action cannot be undone.",confirmLabel:"Delete",variant:"destructive",onConfirm:U})]})}function Id(){const[e,t]=p.useState(!1),[n,s]=p.useState("providers"),{providers:o,isLoading:i,mutate:a}=Bl(),[l,c]=p.useState({}),[u,f]=p.useState(new Set),[d,m]=p.useState({}),h=p.useCallback((x,v)=>{c(y=>({...y,[x]:v}))},[]),b=p.useCallback((x,v)=>{f(y=>{const _=new Set(y);return v?_.add(x):_.delete(x),_})},[]),g=p.useCallback((x,v)=>{m(y=>{if(v===void 0){const _={...y};return delete _[x],_}return{...y,[x]:v}})},[]);return r.jsxs(Yn,{open:e,onOpenChange:t,children:[r.jsx(yi,{asChild:!0,children:r.jsxs(je,{variant:"ghost",size:"icon",className:Ci,"aria-label":"Settings",title:"Settings",children:[r.jsx(T_,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"Settings"})]})}),r.jsxs(Xn,{className:"flex max-h-[80vh] max-w-2xl flex-col overflow-hidden",children:[r.jsx(Qn,{children:r.jsx(es,{children:"Settings"})}),r.jsxs(_0,{value:n,onValueChange:s,className:"flex-1 overflow-hidden",children:[r.jsxs(k0,{className:"w-full justify-start bg-muted/35",children:[r.jsx(Ct,{value:"providers",children:"Providers"}),r.jsx(Ct,{value:"proxy",children:"Proxy"}),r.jsx(Ct,{value:"storage",children:"Storage"}),r.jsx(Ct,{value:"mcp",children:"MCP"}),r.jsx(Ct,{value:"onboarding",children:"Onboarding"})]}),r.jsxs("div",{className:"mt-4 flex-1 overflow-x-hidden overflow-y-auto pr-2",children:[r.jsx(Nt,{value:"providers",children:r.jsx(AR,{externalProviders:o,isLoading:i,externalTestResults:l,externalTestingProviders:u,externalTestingTimeLeft:d,onProvidersMutate:()=>a(),onTestResultsChange:h,onTestingProvidersChange:b,onTestingTimeLeftChange:g})}),r.jsx(Nt,{value:"proxy",children:r.jsx(MR,{})}),r.jsx(Nt,{value:"storage",children:r.jsx(zR,{})}),r.jsx(Nt,{value:"mcp",children:r.jsx(OR,{})}),r.jsx(Nt,{value:"onboarding",children:r.jsx(PR,{})})]})]})]})]})}const IR=K({memoryCount:G(),logDir:C(),logFileCount:G(),logBytes:G(),chunkDir:C(),chunkFileCount:G(),chunkBytes:G(),sessionArchiveDir:C(),sessionArchiveFileCount:G(),sessionArchiveBytes:G()}),RR=1e4;function ca(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 zR(){const[e,t]=p.useState(null),[n,s]=p.useState(null),[o,i]=p.useState(!1),[a,l]=p.useState(null),c=p.useCallback(async()=>{i(!0),s(null);try{const f=await Ke("/api/logs?stats=1",IR,RR,void 0,d=>`Failed to load storage stats: HTTP ${String(d.status)}`);t(f)}catch(f){s(f instanceof Error?f.message:String(f))}finally{i(!1)}},[]);p.useEffect(()=>{c()},[c]);const u=p.useCallback((f,d)=>{Tt(d).then(m=>{m&&(l(f),setTimeout(()=>l(null),1600))})},[]);return r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("h3",{className:"text-sm font-semibold",children:"Log storage"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Inspect local log and streaming chunk footprint before exporting or clearing sessions."})]}),r.jsx(je,{type:"button",variant:"outline",size:"sm",onClick:()=>{c()},children:o?"Refreshing...":"Refresh"})]}),e!==null&&r.jsxs("div",{className:"grid gap-2 text-xs",children:[r.jsx(tr,{id:"log-dir",label:"Log storage path",value:e.logDir,copiedId:a,onCopy:u}),r.jsx(tr,{id:"chunk-dir",label:"Streaming chunks storage path",value:e.chunkDir,copiedId:a,onCopy:u}),r.jsx(tr,{id:"session-archive-dir",label:"Session archive storage path",value:e.sessionArchiveDir,copiedId:a,onCopy:u}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"In-memory logs"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.memoryCount.toLocaleString()," loaded"]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Log files"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.logFileCount.toLocaleString()," files / ",ca(e.logBytes)]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Streaming chunks"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.chunkFileCount.toLocaleString()," files / ",ca(e.chunkBytes)]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Session archives"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.sessionArchiveFileCount.toLocaleString()," files /"," ",ca(e.sessionArchiveBytes)]})]})]}),n!==null&&r.jsx("p",{className:"text-xs text-destructive",children:n})]})}function tr({id:e,label:t,value:n,copiedId:s,onCopy:o}){const i=s===e;return r.jsxs("div",{className:"min-w-0 rounded-md border border-border/45 bg-muted/15 px-3 py-2 transition-colors hover:bg-muted/25",children:[r.jsx("div",{className:"mb-1 text-xs font-medium text-muted-foreground",children:t}),r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("code",{className:"min-w-0 flex-1 truncate font-mono text-xs text-foreground",children:n}),r.jsx(je,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0",onClick:()=>o(e,n),"aria-label":i?`Copied ${t}`:`Copy ${t}`,children:i?r.jsx(Ge,{className:"size-3.5 text-emerald-500"}):r.jsx(It,{className:"size-3.5"})})]})]})}function PR(){const[e,t]=p.useState(null),n=p.useMemo(()=>typeof window>"u"?"http://localhost:9527":window.location.origin,[]),s=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)=>{Tt(a).then(l=>{l&&(t(i),setTimeout(()=>t(null),1600))})},[]);return r.jsxs("div",{className:"min-w-0 space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ds,{className:"size-4 text-muted-foreground"}),r.jsx("h3",{className:"text-sm font-semibold",children:"Agent onboarding"})]}),r.jsx("div",{className:"grid gap-2",children:s.map(i=>r.jsx(tr,{id:i.id,label:i.label,value:i.value,copiedId:e,onCopy:o},i.id))}),r.jsxs("div",{className:"grid gap-2 rounded-md bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ge,{className:"size-3.5 text-emerald-500"}),r.jsx("span",{children:"Provider test creates a traceable memory probe session."})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ge,{className:"size-3.5 text-emerald-500"}),r.jsx("span",{children:"Captured sessions can produce reviewable memory candidates."})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["Streamable HTTP clients should use the MCP URL directly. Stdio-only clients should use",r.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."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["OpenCode onboarding safely merges"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode.json"}),", then verify with"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode mcp list"}),"."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["MiMo Code onboarding safely merges"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",r.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"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"OPENAI_BASE_URL"}),"."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.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 OR(){const[e,t]=p.useState(null),s=`${p.useMemo(()=>typeof window>"u"?"http://localhost:9527":window.location.origin,[])}/api/mcp`,o=p.useMemo(()=>[{id:"mcp-url",label:"Streamable HTTP MCP URL",value:s},{id:"stdio",label:"Stdio bridge command",value:`agent-inspector-mcp stdio --url ${s}`},{id:"doctor",label:"Bridge doctor",value:`agent-inspector-mcp doctor --url ${s}`},{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:s}}},null,2)},{id:"stdio-json",label:"Stdio MCP JSON",value:JSON.stringify({mcpServers:{"agent-inspector":{command:"agent-inspector-mcp",args:["stdio","--url",s]}}},null,2)},{id:"opencode-local",label:"OpenCode local MCP",value:JSON.stringify({mcp:{"agent-inspector":{type:"local",command:["agent-inspector-mcp","stdio","--url",s],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",s],enabled:!0}}},null,2)},{id:"codex-toml",label:"Codex TOML",value:`[mcp_servers.agent-inspector]
|
|
125
|
+
`)}function hd(e){return el(e)!==void 0}function md(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function DI(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function $I(e){const t=e.debug;return vt(e.error?.hint)||vt(e.error?.details)||vt(e.rawResponse)||vt(t?.requestUrl)||vt(t?.requestBody)||vt(t?.responseBody)||hd(t?.requestHeaders)||hd(t?.responseHeaders)||t?.responseStatus!==void 0}function mn({title:e,children:t}){return r.jsxs("div",{className:"space-y-1",children:[r.jsx("div",{className:"font-medium text-foreground/80",children:e}),t]})}function Js({value:e}){return r.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 FI({result:e}){const t=e.debug,n=t?.requestUrl,s=t?.requestMethod??"POST",o=el(t?.requestHeaders),i=el(t?.responseHeaders),a=t?.responseStatus!==void 0?`${t.responseStatus}${vt(t.responseStatusText)?` ${t.responseStatusText}`:""}`:void 0,l=t?.responseBody??e.rawResponse;return r.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:[vt(e.error?.hint)&&r.jsx(mn,{title:"Hint",children:r.jsx("div",{children:e.error.hint})}),vt(e.error?.details)&&r.jsx(mn,{title:"Error",children:r.jsx(Js,{value:e.error.details})}),vt(n)&&r.jsx(mn,{title:"Request",children:r.jsxs("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] break-all text-foreground/80",children:[s," ",n]})}),o!==void 0&&r.jsx(mn,{title:"Request Headers",children:r.jsx(Js,{value:o})}),vt(t?.requestBody)&&r.jsx(mn,{title:"Request Body",children:r.jsx(Js,{value:t.requestBody})}),vt(a)&&r.jsx(mn,{title:"Response Status",children:r.jsx("div",{className:"rounded-md bg-background/80 p-2 font-mono text-[11px] text-foreground/80",children:a})}),i!==void 0&&r.jsx(mn,{title:"Response Headers",children:r.jsx(Js,{value:i})}),vt(l)&&r.jsx(mn,{title:"Response Body",children:r.jsx(Js,{value:l})})]})}function us({results:e}){return r.jsxs("div",{className:"grid min-w-0 gap-2 sm:grid-cols-2",children:[r.jsxs("div",{className:"min-w-0 rounded-md border border-border/60 bg-muted/20 px-2 py-1.5",children:[r.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Non-stream"}),r.jsx(gd,{result:e.nonStreaming})]}),r.jsxs("div",{className:"min-w-0 rounded-md border border-border/60 bg-muted/20 px-2 py-1.5",children:[r.jsx("span",{className:"text-[10px] text-muted-foreground",children:"Stream"}),r.jsx(gd,{result:e.streaming})]})]})}function oa({label:e,children:t}){return r.jsxs("div",{className:"min-w-0 space-y-2 rounded-md border border-border/60 bg-muted/15 p-2",children:[r.jsx("div",{className:"text-xs font-medium text-foreground/80",children:e}),t]})}function qe(e){return e!==void 0&&e!==""}function UI(e){const t=[];return qe(e.anthropicBaseUrl)&&t.push("Anthropic"),qe(e.openaiBaseUrl)&&t.push("Chat"),qe(e.openaiResponsesBaseUrl)&&t.push("Responses"),t}function ia({label:e,enabled:t,tone:n}){const s=t?"border-border/70 bg-muted/25 text-foreground/80":"border-border/50 bg-transparent text-muted-foreground/70";return r.jsxs("span",{className:`inline-flex items-center gap-1 rounded border px-1.5 py-0.5 ${s}`,children:[t?r.jsx(zl,{className:"size-3"}):r.jsx(fp,{className:"size-3"}),e]})}function BI({provider:e}){const t=qe(e.anthropicBaseUrl),n=qe(e.openaiBaseUrl),s=qe(e.openaiResponsesBaseUrl);return!t&&!n&&!s?r.jsx("div",{className:"text-xs text-muted-foreground",children:"Test requires at least one configured endpoint."}):r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Capabilities"}),t&&r.jsx(ia,{label:"Anthropic",enabled:!0}),n&&r.jsx(ia,{label:"OpenAI Chat",enabled:!0}),s&&r.jsx(ia,{label:"OpenAI Responses",enabled:!0})]})}function WI(e,t){if(t===void 0)return[];const n=[];return qe(e.anthropicBaseUrl)&&n.push(t.anthropic),qe(e.openaiBaseUrl)&&n.push(t.openaiChat),qe(e.openaiResponsesBaseUrl)&&n.push(t.openaiResponses),n}function HI(e,t){const n={total:0,passed:0,failed:0,testing:0};for(const s of WI(e,t))for(const o of[s.nonStreaming,s.streaming])q0(o)||(n.total+=1,Z0(o)?o.success?n.passed+=1:n.failed+=1:n.testing+=1);return n}function VI({provider:e,testResults:t,isTesting:n}){const s=UI(e),o=HI(e,t);return n?r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-cyan-300/25 bg-cyan-300/[0.08] px-2 py-1 text-xs text-cyan-100",children:[r.jsx(ko,{className:"size-3 animate-spin"}),"Testing"]}):s.length===0?r.jsx("span",{className:"rounded border border-border/70 bg-muted/20 px-2 py-1 text-xs text-muted-foreground",children:"No endpoint"}):t===void 0||o.total===0?r.jsx("span",{className:"rounded border border-border/70 bg-muted/20 px-2 py-1 text-xs text-muted-foreground",children:"Not tested"}):o.failed>0?r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-red-400/25 bg-red-500/[0.08] px-2 py-1 text-xs text-red-200",children:[r.jsx(Ss,{className:"size-3"}),o.passed,"/",o.total," passed"]}):o.testing>0||o.passed<o.total?r.jsxs("span",{className:"rounded border border-amber-300/25 bg-amber-400/[0.08] px-2 py-1 text-xs text-amber-100",children:["Partial ",o.passed,"/",o.total]}):r.jsxs("span",{className:"inline-flex items-center gap-1 rounded border border-cyan-300/25 bg-cyan-300/[0.08] px-2 py-1 text-xs text-cyan-100",children:[r.jsx(zl,{className:"size-3"}),"OK ",o.passed,"/",o.total]})}function ZI(e){const t=e.models??[];if(t.length===0)return"No models configured";const n=t.slice(0,2).join(", "),s=t.length-2;return s>0?`${n} +${s} more`:n}function qI({provider:e,model:t}){const n=Nc(e,t),s=YI(n?.sourceUrl);return r.jsxs("span",{className:"inline-flex items-center gap-1 rounded bg-muted px-1.5 py-0.5 text-xs text-muted-foreground",children:[r.jsx("span",{children:t}),n!==null&&n.contextWindow!==void 0&&r.jsx("span",{className:"font-mono text-foreground/80",children:Mp(n.contextWindow)}),s!==null&&r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("a",{href:s.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":s.title,children:s.label})}),r.jsx(ft,{children:s.title})]})})]})}function GI(e){const t=e?.models;if(t===void 0)return null;const n=Object.keys(t).length;return n===0?null:`${n} model${n===1?"":"s"} tested`}function KI(e){const t={className:"size-3",strokeWidth:2};switch(e){case"timeout":return r.jsx(sn,{...t});case"network_unreachable":return r.jsx(U_,{...t});case"connection_refused":return r.jsx(W_,{...t});case"auth_failed":return r.jsx(Vw,{...t});case"rate_limited":return r.jsx(Ll,{...t});case"server_error":return r.jsx(C_,{...t});case"invalid_response":return r.jsx(Xy,{...t});case"unknown":return r.jsx(Ss,{...t});default:return r.jsx(Ss,{...t})}}function gd({result:e}){const[t,n]=p.useState(!1);if(!Z0(e))return q0(e)?r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[r.jsx(fp,{className:"size-3"}),r.jsx("span",{children:"Not configured"})]}):r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[r.jsx(ko,{className:"size-3 animate-spin"}),r.jsx("span",{children:"Testing..."})]});if(e.success){const l=[],c=[];e.inputTokens!==void 0&&l.push(r.jsxs("span",{children:[e.inputTokens," in"]},"in")),e.outputTokens!==void 0&&l.push(r.jsxs("span",{children:[e.outputTokens," out"]},"out")),e.cacheCreationInputTokens!==void 0&&e.cacheCreationInputTokens>0&&l.push(r.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(r.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(r.jsxs("span",{children:["first ",md(e.firstChunkMs)]},"first")),e.totalStreamMs!==void 0&&e.totalStreamMs!==null&&c.push(r.jsxs("span",{children:["total ",md(e.totalStreamMs)]},"total")),e.tokensPerSecond!==void 0&&e.tokensPerSecond!==null&&e.tokensPerSecond>0&&c.push(r.jsxs("span",{children:[DI(e.tokensPerSecond)," tok/s"]},"rate"));const u=[];for(let d=0;d<l.length;d++)d>0&&u.push(", "),u.push(l[d]);const f=[];for(let d=0;d<c.length;d++)d>0&&f.push(", "),f.push(c[d]);return r.jsxs("div",{className:"flex shrink-0 items-center gap-1 text-xs text-cyan-100",children:[r.jsx(zl,{className:"size-3 text-cyan-300"}),r.jsx("span",{children:"Connected"}),l.length>0&&r.jsxs("span",{className:"text-muted-foreground",children:["(",u,")"]}),c.length>0&&r.jsxs("span",{className:"hidden text-muted-foreground lg:inline",children:["(",f,")"]})]})}const s=e.error,o=s?.message??"Connection failed",i=s?.type??"unknown",a=$I(e);return r.jsxs("div",{className:"flex flex-col gap-1 shrink-0",children:[r.jsxs("div",{className:"flex items-center gap-1 text-xs text-red-600 max-w-[200px]",children:[KI(i),r.jsx("span",{className:"truncate",children:o}),a&&r.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?r.jsx(Ol,{className:"size-3"}):r.jsx(Ml,{className:"size-3"}),r.jsx("span",{children:t?"Hide":"Details"})]})]}),t&&a&&r.jsx(FI,{result:e})]})}function JI(e){const t=Date.now(),n=new Date(e).getTime(),s=t-n,o=Math.floor(s/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 YI(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(),s=n==="huggingface.co"||n.endsWith(".huggingface.co");return{label:s?"HF":"Source",title:s?"Open Hugging Face model source":"Open model metadata source",url:e}}catch{return null}}function XI({provider:e,testResults:t,isTesting:n,testingTimeLeft:s,isHighlighted:o,onEdit:i,onDelete:a,onTest:l,onRefreshMetadata:c,isRefreshingMetadata:u=!1}){const[f,d]=p.useState(!1),[m,h]=p.useState(!1),[b,g]=p.useState(!1),[x,v]=p.useState(!1);function y(){Tt(e.apiKey).then(P=>{P&&(h(!0),setTimeout(()=>h(!1),2e3))})}const _=e.apiDocsUrl??Object.entries(LI).find(([P])=>e.name.toLowerCase().includes(P))?.[1],j=OI(e),S=e.modelMetadataUrl!==void 0&&e.modelMetadataUrl.trim()!=="",N=S?"Refresh":"Import defaults",T=n??!1,A=GI(t),I=e.source==="company"?r.jsx("span",{className:"shrink-0 rounded border border-cyan-300/20 bg-cyan-300/[0.08] px-1.5 py-0.5 text-xs text-cyan-100",children:"Company"}):e.source==="personal"?r.jsx("span",{className:"shrink-0 rounded border border-violet-300/20 bg-violet-300/[0.08] px-1.5 py-0.5 text-xs text-violet-100",children:"Personal"}):null;return r.jsxs("div",{className:`flex flex-col gap-3 rounded-[8px] border border-border bg-card p-4 shadow-sm transition-all duration-500 ${o===!0?"ring-2 ring-primary shadow-md":""}`,children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-2",children:[r.jsxs("div",{className:"min-w-0 space-y-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[r.jsx("span",{className:"font-medium leading-snug",children:e.name}),I]}),r.jsx("div",{className:"text-xs leading-snug text-muted-foreground",children:ZI(e)})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsx(VI,{provider:e,testResults:t,isTesting:T}),_!==void 0&&r.jsxs("a",{href:_,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground",title:"View API documentation",children:[r.jsx(Pl,{className:"size-3"}),r.jsx("span",{className:"sr-only",children:"Docs"})]})]})]}),r.jsxs("div",{className:"flex flex-col gap-2 text-xs text-muted-foreground sm:flex-row sm:items-center sm:justify-between",children:[r.jsx(BI,{provider:e}),r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsx("span",{children:"Key configured"}),r.jsx("span",{children:e.authHeader==="x-api-key"?"x-api-key":"Bearer"}),A!==null&&r.jsx("span",{children:A}),t?.testedAt!==void 0&&r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(sn,{className:"size-3"}),JI(t.testedAt)]})]})]}),!j&&r.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:[r.jsx("span",{children:"Context window metadata missing"}),r.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[r.jsxs(je,{type:"button",variant:"outline",size:"sm",onClick:()=>c?.(e.id),className:"h-6 gap-1 px-2 text-xs",disabled:u,children:[r.jsx(ko,{className:`size-3 ${u?"animate-spin":""}`}),N]}),!S&&r.jsx(je,{type:"button",variant:"ghost",size:"sm",onClick:()=>i(e),className:"h-6 px-2 text-xs",children:"Set URL"})]})]}),b&&r.jsxs("div",{className:"space-y-3 border-t border-border/60 pt-3",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("code",{className:"flex-1 truncate rounded bg-muted px-2 py-1 text-xs text-muted-foreground",children:f?e.apiKey:H0(e.apiKey)}),r.jsx("button",{type:"button",onClick:()=>d(P=>!P),className:"p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":f?"Hide API key":"Show API key",children:f?r.jsx(Ol,{className:"size-4"}):r.jsx(Ml,{className:"size-4"})}),r.jsx("button",{type:"button",onClick:y,className:"p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":"Copy API key",children:m?r.jsx(Ge,{className:"size-4 text-cyan-300"}):r.jsx(It,{className:"size-4"})})]}),e.models!==void 0&&e.models.length>0&&r.jsx("div",{className:"flex flex-wrap gap-1",children:e.models.map(P=>r.jsx(qI,{provider:e,model:P},P))}),(qe(e.anthropicBaseUrl)||qe(e.openaiBaseUrl)||qe(e.openaiResponsesBaseUrl))&&r.jsxs("div",{className:"grid gap-2 lg:grid-cols-3",children:[qe(e.anthropicBaseUrl)&&r.jsxs(oa,{label:"Anthropic",children:[t!==void 0&&r.jsx(us,{results:t.anthropic}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiBaseUrl)&&r.jsxs(oa,{label:"OpenAI Chat",children:[t!==void 0&&r.jsx(us,{results:t.openaiChat}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiResponsesBaseUrl)&&r.jsxs(oa,{label:"OpenAI Responses",children:[t!==void 0&&r.jsx(us,{results:t.openaiResponses}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),!qe(e.openaiResponsesBaseUrl)&&r.jsx("div",{className:"min-w-0 rounded-md border border-border/50 bg-transparent p-2 text-xs text-muted-foreground/75",children:"OpenAI Responses not configured"})]}),t?.models!==void 0&&Object.keys(t.models).length>0&&r.jsxs("div",{children:[r.jsxs("button",{type:"button",onClick:()=>v(P=>!P),className:"flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground",children:[x?r.jsx(it,{className:"size-3"}):r.jsx(Et,{className:"size-3"}),"Model Test Results (",Object.keys(t.models).length,")"]}),x&&r.jsx("div",{className:"mt-2 overflow-x-auto",children:r.jsxs("table",{className:"w-full border-collapse text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-border",children:[r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Model"}),qe(e.anthropicBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Anthropic"}),qe(e.openaiBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Chat"}),qe(e.openaiResponsesBaseUrl)&&r.jsx("th",{className:"px-2 py-1 text-left font-medium text-muted-foreground",children:"Responses"})]})}),r.jsx("tbody",{children:Object.entries(t.models).map(([P,L])=>r.jsxs("tr",{className:"border-b border-border/50 last:border-0",children:[r.jsx("td",{className:"px-2 py-1 font-medium",children:P}),qe(e.anthropicBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.anthropic})}),qe(e.openaiBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.openaiChat})}),qe(e.openaiResponsesBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(us,{results:L.openaiResponses})})]},P))})]})})]})]}),r.jsxs("div",{className:"flex flex-col gap-2 border-t pt-1 sm:flex-row sm:items-center sm:justify-between",children:[r.jsxs("button",{type:"button",onClick:()=>g(P=>!P),className:"inline-flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground","aria-expanded":b,children:[b?r.jsx(it,{className:"size-3"}):r.jsx(Et,{className:"size-3"}),"Details"]}),r.jsxs("div",{className:"flex gap-2",children:[l!==void 0&&r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>l(e.id),className:"text-xs h-7 gap-1",disabled:T,children:[r.jsx(ko,{className:`size-3 ${T?"animate-spin":""}`}),T?s!==void 0?`Testing (${s}s)`:"Testing...":"Test"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>i(e),className:"text-xs h-7 gap-1",disabled:T,children:[r.jsx(pp,{className:"size-3"}),"Edit"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>a(e.id),className:"text-xs h-7 gap-1 text-destructive hover:text-destructive",disabled:T,children:[r.jsx(wn,{className:"size-3"}),"Delete"]})]})]})]})}const _s="/v1/chat/completions",tl="/v1/responses",QI="/v1/messages";function e6(e,t){const n=e.endsWith("/")?e.slice(0,-1):e,s=G0(t),o=t.indexOf("?"),i=o>=0?t.slice(o):"";return s!==""&&n.endsWith(s)?n+i:J0(n)&&K0(t)||n.endsWith("/v1")&&t.startsWith("/v1/")?n+t.slice(3):n+t}function t6(e,t,n={}){const s=e.trim().replace(/\/+$/,""),o=G0(t),i=e6(s,t),a=[];return o!==""&&s.endsWith(o)?a.push({severity:"info",message:"This already includes the exact endpoint; no duplicate suffix will be appended."}):J0(s)&&K0(t)?a.push({severity:"info",message:"Zhipu bases already include the API version; only /chat/completions is appended."}):s.endsWith("/v1")&&t.startsWith("/v1/")&&a.push({severity:"info",message:"Base URL already ends with /v1; the suffix will not repeat /v1."}),xd(o)&&s6(s)&&a.push({severity:"warning",message:"This looks like a Chat Completions endpoint, so Responses would append after it."}),n6(o)&&r6(s)&&a.push({severity:"warning",message:"This looks like a Responses endpoint, so Chat Completions would append after it."}),xd(o)&&o6(s,n.providerName)&&a.push({severity:"warning",message:"DeepSeek's official API does not currently expose OpenAI Responses."}),{finalUrl:i,diagnostics:a}}function G0(e){return e.split("?")[0]??e}function K0(e){return e===_s||e.startsWith(`${_s}?`)||e.startsWith(`${_s}/`)}function n6(e){return e===_s||e.startsWith(`${_s}/`)}function xd(e){return e===tl||e.startsWith(`${tl}/`)}function s6(e){return e.toLowerCase().endsWith("/chat/completions")}function r6(e){return e.toLowerCase().endsWith("/responses")}function o6(e,t){const n=t?.toLowerCase();if(n!==void 0&&n.includes("deepseek"))return!0;try{return new URL(e).hostname.toLowerCase().includes("deepseek")}catch{return e.toLowerCase().includes("deepseek")}}function J0(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 bd=["zhipu","zhipuai","bigmodel","z.ai","zai","glm"],vd=["zhipu coding","glm coding","bigmodel coding","z.ai coding","zai coding"],Jr=QI,Yr=_s,Xr=tl,i6={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"}},yd=["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"],wd=["qwen3.6-plus","qwen3.7-max"],_d=["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"],nl="__unset__",$o="__custom__",Y0=[{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 Ln(){return{contextWindow:"",contextWindowMode:"unset",outputLimit:""}}function kd(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function X0(e,t){const n=kd(t);return e?.modelMetadata?.find(s=>kd(s.model)===n)??null}function Q0(e){const t=So(e);if(t===null)return null;for(const n of Y0)if(So(n.value)===t)return n.value;return null}function a6(e){return e.trim()===""?"unset":Q0(e)!==null?"preset":"custom"}function l6(e){switch(e.contextWindowMode){case"unset":return nl;case"custom":return $o;case"preset":return Q0(e.contextWindow)??$o}}function aa(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 s=n[1];if(s===void 0)return{amount:t,unit:"K"};const o=n[2];if(o===void 0||o==="")return{amount:s,unit:"tokens"};switch(o.toLowerCase()){case"k":return{amount:s,unit:"K"};case"m":return{amount:s,unit:"M"};default:return{amount:t,unit:"K"}}}function jd(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 Sd(e,t){return t.map(n=>{const s=X0(e,n),o=s?.contextWindow!==void 0?d5(s.contextWindow):"";return{contextWindow:o,contextWindowMode:a6(o),outputLimit:s?.outputLimit?.toString()??""}})}function Cd(e){const t=e.trim();if(t==="")return null;const n=Number(t);return!Number.isInteger(n)||n<=0?null:n}function ds(e,t){if(e===void 0)return"";const n=e.trim(),s=n.replace(/\/+$/,"");return s.endsWith(t)?s.slice(0,-t.length).replace(/\/+$/,""):n}function c6(e,t,n){const s=e.trim();return s===""?null:t6(s,t,{providerName:n})}function la({baseUrl:e,endpoint:t,providerName:n}){const s=c6(e,t,n);return s===null?null:r.jsxs("div",{className:"border border-border bg-muted/40 rounded-md px-3 py-2 text-xs",children:[r.jsx("div",{className:"text-muted-foreground",children:"Final URL"}),r.jsx("div",{className:"break-all font-mono text-foreground",children:s.finalUrl}),s.diagnostics.length>0&&r.jsx("div",{className:"mt-2 space-y-1",children:s.diagnostics.map(o=>r.jsx("div",{className:o.severity==="warning"?"text-amber-200":"text-muted-foreground",children:o.message},`${o.severity}:${o.message}`))})]})}function u6({provider:e,onSubmit:t,onCancel:n}){const[s,o]=p.useState(e?.name??""),[i,a]=p.useState(e?.apiKey??""),[l,c]=p.useState(!1),[u,f]=p.useState(!1),d=e?.models,[m,h]=p.useState(d!==void 0&&d.length>0?d:[""]),[b,g]=p.useState(()=>Sd(e,d!==void 0&&d.length>0?d:[""])),[x,v]=p.useState("anthropic"),[y,_]=p.useState(ds(e?.anthropicBaseUrl,Jr)),[j,S]=p.useState(ds(e?.openaiBaseUrl,Yr)),[N,T]=p.useState(ds(e?.openaiResponsesBaseUrl,Xr)),[A,I]=p.useState(e?.apiDocsUrl??""),[P,L]=p.useState(e?.modelMetadataUrl??""),[E,D]=p.useState(e?.source),[w,$]=p.useState({}),[ee,F]=p.useState(!1),[te,V]=p.useState(null),X=p.useRef([]);p.useEffect(()=>{if(te===null)return;const z=te;function M(J){if(!(J.target instanceof Node))return;const oe=X.current[z];oe!=null&&!oe.contains(J.target)&&V(null)}return document.addEventListener("mousedown",M),()=>document.removeEventListener("mousedown",M)},[te]);const[H,B]=p.useState(!1),[ce,W]=p.useState(!1),[Y,_e]=p.useState(!1),fe=s.toLowerCase().includes("minimax"),xe=s.toLowerCase().includes("alibaba"),de=[...bd,...vd].some(z=>s.toLowerCase().includes(z)),ge=fe?yd:de?_d:xe?wd:[],be=e?.modelMetadata?.some(z=>z.contextWindow!==void 0)??!1;function Ce(){Tt(i).then(z=>{z&&(f(!0),setTimeout(()=>f(!1),2e3))})}p.useEffect(()=>{if(e){o(e.name),a(e.apiKey);const z=(e.models?.length??0)>0?e.models:[""];h(z),g(Sd(e,z)),_(ds(e.anthropicBaseUrl,Jr)),S(ds(e.openaiBaseUrl,Yr)),T(ds(e.openaiResponsesBaseUrl,Xr)),I(e.apiDocsUrl??""),L(e.modelMetadataUrl??""),D(e.source),B(!1),W(!1),_e(!1)}},[e]),p.useEffect(()=>{const z=s.toLowerCase();for(const[M,J]of Object.entries(i6))if(z.includes(M)){J.anthropicBaseUrl!==void 0&&!H&&_(J.anthropicBaseUrl),J.openaiBaseUrl!==void 0&&!ce&&S(J.openaiBaseUrl),J.openaiResponsesBaseUrl!==void 0&&!Y&&T(J.openaiResponsesBaseUrl),J.apiDocsUrl!==void 0&&!A&&I(J.apiDocsUrl),M==="minimax"&&m.length===1&&m[0]===""&&h([yd[0]??""]),M==="alibaba"&&m.length===1&&m[0]===""&&h([wd[0]??""]),(bd.includes(M)||vd.includes(M))&&m.length===1&&m[0]===""&&h([_d[0]??""]);break}},[s]);function Re(){const z={};return s.trim()||(z.name="Name is required"),i.trim()||(z.apiKey="API key is required"),(m.length===0||m.every(M=>!M.trim()))&&(z.models="At least one model is required"),y.trim()&&!k(y.trim())&&(z.anthropicBaseUrl="Invalid URL format"),j.trim()&&!k(j.trim())&&(z.openaiBaseUrl="Invalid URL format"),N.trim()&&!k(N.trim())&&(z.openaiResponsesBaseUrl="Invalid URL format"),P.trim()&&!k(P.trim())&&(z.modelMetadataUrl="Invalid URL format"),b.forEach((M,J)=>{const oe=So(M.contextWindow),ie=Cd(M.outputLimit);M.contextWindow.trim()!==""&&oe===null&&(z[`modelMetadata.${J}.contextWindow`]="Context window must be a positive number, optionally using K or M"),M.outputLimit.trim()!==""&&ie===null&&(z[`modelMetadata.${J}.outputLimit`]="Output limit must be a positive integer"),oe!==null&&ie!==null&&ie>oe&&(z[`modelMetadata.${J}.outputLimit`]="Output limit should not exceed context window")}),!y.trim()&&!j.trim()&&!N.trim()&&(z.format="At least one format URL (Anthropic or OpenAI) is required"),$(z),Object.keys(z).length===0}function k(z){try{return new URL(z),!0}catch{return!1}}function Q(z,M){h(J=>{const oe=[...J];return oe[z]=M,oe})}function q(z,M){g(J=>{const oe=[...J];return oe[z]={...oe[z]??Ln(),...M},oe})}function O(z,M){switch(M){case nl:q(z,{contextWindow:"",contextWindowMode:"unset"});return;case $o:{const J=b[z]??Ln();q(z,{contextWindow:J.contextWindow,contextWindowMode:"custom"});return}default:q(z,{contextWindow:M,contextWindowMode:"preset"});return}}function R(z,M){const J=b[z]??Ln(),oe=aa(J.contextWindow);q(z,{contextWindow:jd(M,oe.unit),contextWindowMode:"custom"})}function U(z,M){const J=b[z]??Ln(),oe=aa(J.contextWindow);switch(M){case"K":case"M":case"tokens":q(z,{contextWindow:jd(oe.amount,M),contextWindowMode:"custom"});return;default:return}}function re(z){h(M=>M.filter((J,oe)=>oe!==z)),g(M=>M.filter((J,oe)=>oe!==z))}function se(){h(z=>[...z,""]),g(z=>[...z,Ln()])}function Z(){const z=new Date().toISOString(),M=[];return m.forEach((J,oe)=>{const ie=J.trim();if(ie==="")return;const we=b[oe]??Ln(),he=So(we.contextWindow),me=Cd(we.outputLimit);if(he===null&&me===null)return;const Ie=X0(e,ie);if(Ie!==null&&Ie.contextWindow===(he??void 0)&&Ie.outputLimit===(me??void 0)){M.push({...Ie,model:ie});return}const $e={model:ie,source:"manual",updatedAt:z};he!==null&&($e.contextWindow=he),me!==null&&($e.outputLimit=me),M.push($e)}),M.length>0?M:e?.modelMetadata!==void 0?[]:void 0}function le(z){if(z.preventDefault(),!!Re()){F(!0);try{t({name:s.trim(),apiKey:i.trim(),models:m.map(M=>M.trim()).filter(M=>M!==""),anthropicBaseUrl:y.trim()||void 0,openaiBaseUrl:j.trim()||void 0,openaiResponsesBaseUrl:N.trim()||void 0,apiDocsUrl:A.trim()||void 0,modelMetadataUrl:P.trim()||void 0,modelMetadata:Z(),source:E})}finally{F(!1)}}}return r.jsxs("form",{onSubmit:le,className:"space-y-4",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{htmlFor:"provider-name",className:"text-sm font-medium",children:["Name ",r.jsx("span",{className:"text-destructive",children:"*"})]}),r.jsx("input",{id:"provider-name",type:"text",value:s,onChange:z=>o(z.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"}),w.name!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.name})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-source",className:"text-sm font-medium",children:"Token Source"}),r.jsxs("select",{id:"provider-source",value:E??"",onChange:z=>D(z.target.value==="company"||z.target.value==="personal"?z.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:[r.jsx("option",{value:"",children:"Unspecified"}),r.jsx("option",{value:"personal",children:"个人 (Personal)"}),r.jsx("option",{value:"company",children:"公司 (Company)"})]}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Label whether this API key is company-provided or personal."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-model-metadata-url",className:"text-sm font-medium",children:"Model Metadata URL"}),r.jsx("input",{id:"provider-model-metadata-url",type:"text",value:P,onChange:z=>L(z.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"}),w.modelMetadataUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.modelMetadataUrl}),P.trim()===""&&r.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&&!be&&P.trim()===""&&r.jsx("p",{className:"text-xs text-amber-400",children:"This provider has no matching context metadata yet."}),P.trim()!==""&&r.jsx("p",{className:"text-xs text-muted-foreground",children:"Agent Inspector will refresh model limits from this JSON registry after save."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{htmlFor:"provider-apikey",className:"text-sm font-medium",children:["API Key ",r.jsx("span",{className:"text-destructive",children:"*"})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"provider-apikey",type:"text",value:l||i.length===0?i:H0(i),onChange:z=>a(z.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"}),r.jsx("button",{type:"button",onClick:()=>c(z=>!z),className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":l?"Hide API key":"Show API key",children:l?r.jsx(Ol,{className:"size-4"}):r.jsx(Ml,{className:"size-4"})}),r.jsx("button",{type:"button",onClick:Ce,className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":"Copy API key",children:u?r.jsx(Ge,{className:"size-4 text-cyan-300"}):r.jsx(It,{className:"size-4"})})]}),w.apiKey!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.apiKey})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("label",{className:"text-sm font-medium",children:["Models ",r.jsx("span",{className:"text-destructive",children:"*"})]}),m.map((z,M)=>{const J=b[M]??Ln(),oe=w[`modelMetadata.${M}.contextWindow`],ie=w[`modelMetadata.${M}.outputLimit`],we=l6(J),he=aa(J.contextWindow);return r.jsxs("div",{ref:me=>{X.current[M]=me},className:"border border-border bg-card shadow-sm space-y-2 rounded-[8px] p-2",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx("input",{type:"text",value:z,onChange:me=>Q(M,me.target.value),placeholder:ge.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"}),ge.length>0&&r.jsxs(r.Fragment,{children:[r.jsx("button",{type:"button",onClick:()=>V(te===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:r.jsx(it,{className:"size-4"})}),te===M&&r.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:ge.map(me=>r.jsx("button",{type:"button",onClick:()=>{Q(M,me),V(null)},className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-white/[0.06]",children:me},me))})]})]}),m.length>1&&r.jsx("button",{type:"button",onClick:()=>re(M),className:"text-muted-foreground hover:text-destructive transition-colors p-1 shrink-0","aria-label":"Remove model",children:r.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:[r.jsx("path",{d:"M3 6h18"}),r.jsx("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),r.jsx("path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"})]})})]}),r.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[r.jsxs("div",{className:"space-y-1 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Context Window"}),r.jsxs(Is,{value:we,onValueChange:me=>O(M,me),children:[r.jsx(zs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(Rs,{})}),r.jsxs(Ps,{className:"max-h-64",children:[r.jsx(pt,{value:nl,children:"Not set"}),Y0.map(me=>r.jsxs(pt,{value:me.value,children:[me.label," · ",me.value]},me.value)),r.jsx(pt,{value:$o,children:"Custom"})]})]}),J.contextWindowMode==="custom"&&r.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_5.75rem] gap-1.5",children:[r.jsx("input",{type:"text",inputMode:"decimal",value:he.amount,onChange:me=>R(M,me.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]"}),r.jsxs(Is,{value:he.unit,onValueChange:me=>U(M,me),children:[r.jsx(zs,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(Rs,{})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"K",children:"K"}),r.jsx(pt,{value:"M",children:"M"}),r.jsx(pt,{value:"tokens",children:"tokens"})]})]})]}),oe!==void 0&&r.jsx("span",{className:"block text-destructive",children:oe})]}),r.jsxs("label",{className:"space-y-1 text-xs text-muted-foreground",children:[r.jsx("span",{children:"Output Limit"}),r.jsx("input",{type:"number",min:1,step:1e3,value:J.outputLimit,onChange:me=>q(M,{outputLimit:me.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]"}),ie!==void 0&&r.jsx("span",{className:"block text-destructive",children:ie})]})]})]},M)}),r.jsx("button",{type:"button",onClick:se,className:"text-xs text-primary hover:underline flex items-center gap-1",children:"+ Add Model"}),w.models!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.models})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsxs("div",{className:"border border-border bg-muted/40 flex gap-1 rounded-[8px] p-1",children:[r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>v("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"})}),r.jsx(ft,{children:"Anthropic Messages API format"})]})}),r.jsx(Sn,{children:r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>v("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"})}),r.jsx(ft,{children:"OpenAI Chat Completions API format"})]})})]}),w.format!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.format})]}),x==="anthropic"&&r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-anthropic-base-url",className:"text-sm font-medium",children:"Anthropic Base URL"}),r.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:[r.jsx("input",{id:"provider-anthropic-base-url",type:"text",value:y,onChange:z=>{B(!0),_(z.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"}),r.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:Jr})]}),w.anthropicBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.anthropicBaseUrl}),r.jsx(la,{baseUrl:y,endpoint:Jr,providerName:s}),r.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"&&r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-openai-base-url",className:"text-sm font-medium",children:"OpenAI Chat Base URL"}),r.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:[r.jsx("input",{id:"provider-openai-base-url",type:"text",value:j,onChange:z=>{W(!0),S(z.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"}),r.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:Yr})]}),w.openaiBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiBaseUrl}),r.jsx(la,{baseUrl:j,endpoint:Yr,providerName:s}),r.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."})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-openai-responses-base-url",className:"text-sm font-medium",children:"OpenAI Responses Base URL"}),r.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:[r.jsx("input",{id:"provider-openai-responses-base-url",type:"text",value:N,onChange:z=>{_e(!0),T(z.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"}),r.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:Xr})]}),w.openaiResponsesBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiResponsesBaseUrl}),r.jsx(la,{baseUrl:N,endpoint:Xr,providerName:s}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional Responses-compatible base URL. Set only when the provider supports the Responses API."})]})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx("label",{htmlFor:"provider-api-docs-url",className:"text-sm font-medium",children:"API Docs URL"}),r.jsx("input",{id:"provider-api-docs-url",type:"text",value:A,onChange:z=>I(z.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"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional API documentation URL. If not set, uses known provider docs."})]}),r.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:[r.jsx(je,{type:"button",variant:"outline",onClick:n,disabled:ee,children:"Cancel"}),r.jsx(je,{type:"submit",disabled:ee,children:ee?"Saving...":e?"Update Provider":"Add Provider"})]})]})}const d6=Ee(["timeout","network_unreachable","connection_refused","auth_failed","rate_limited","server_error","invalid_response","unknown"]),f6=K({message:C(),type:d6,details:C().optional(),hint:C().optional()}),p6=K({type:Ee(["text","thinking"]),text:C().optional(),thinking:C().optional()}),h6=K({requestUrl:C().optional(),requestMethod:C().optional(),requestHeaders:Ye(C(),C()).optional(),requestBody:C().optional(),responseStatus:G().optional(),responseStatusText:C().optional(),responseHeaders:Ye(C(),C()).optional(),responseBody:C().optional()}),m6=K({success:Le(),error:f6.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(p6).optional(),rawResponse:C().optional(),streaming:Le().optional(),streamingChunks:K({chunks:pe(Mf),truncated:Le().default(!1)}).optional(),requestHeaders:Ye(C(),C()).optional(),debug:h6.optional()}),Nd=Yt([m6,K({notConfigured:Ae(!0)}),K({testing:Ae(!0)})]),vn=K({nonStreaming:Nd,streaming:Nd});function Fo(){return{nonStreaming:{notConfigured:!0},streaming:{notConfigured:!0}}}const g6=K({anthropic:vn,openai:vn.optional(),openaiChat:vn.optional(),openaiResponses:vn.optional()}).transform(e=>{const t=e.openaiChat??e.openai??Fo();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Fo()}}),x6=K({anthropic:vn,openai:vn.optional(),openaiChat:vn.optional(),openaiResponses:vn.optional(),models:Ye(C(),g6).optional(),testedAt:C().optional()}).transform(e=>{const t=e.openaiChat??e.openai??Fo();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Fo()}});function b6(){return{anthropic:{nonStreaming:{testing:!0},streaming:{testing:!0}},openai:{nonStreaming:{testing:!0},streaming:{testing:!0}},openaiChat:{nonStreaming:{testing:!0},streaming:{testing:!0}},openaiResponses:{nonStreaming:{testing:!0},streaming:{testing:!0}}}}function Td(e,t){const n=()=>({nonStreaming:{success:!1,error:{message:e,type:t}},streaming:{notConfigured:!0}});return{anthropic:n(),openai:n(),openaiChat:n(),openaiResponses:n()}}const v6=K({providerConfig:C()}),y6=K({success:Le().optional(),imported:G().optional(),message:C().optional(),errors:pe(C()).optional()}),w6=K({provider:Co,imported:G(),matchedModels:pe(C()),missingModels:pe(C()),sourceUrl:C()}),Qr="Network error: could not reach the server. Is the proxy running?",_6=5e3,k6=5e3,Ed=15e3,j6=1e4,S6=2e4,C6=2e4,N6=3e4;function Ad(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 T6(e,t){const n=e?.models?.map(s=>s.trim()).filter(s=>s!=="").length??0;return Math.max(1,n)*t}async function E6(e,t){if(t.models!==void 0)try{await Fn(`/api/providers/${e}/test/log`,k6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch{}}function A6({externalProviders:e,isLoading:t=!1,externalTestResults:n,externalTestingProviders:s,externalTestingTimeLeft:o,onProvidersMutate:i,onTestResultsChange:a,onTestingProvidersChange:l,onTestingTimeLeftChange:c}){const[u,f]=p.useState(!1),[d,m]=p.useState(),[h,b]=p.useState(null),[g,x]=p.useState({}),[v,y]=p.useState(new Set),[_,j]=p.useState({}),[S,N]=p.useState(null),[T,A]=p.useState(!1),[I,P]=p.useState(null),[L,E]=p.useState(!1),[D,w]=p.useState(!1),[$,ee]=p.useState(null),[F,te]=p.useState("all"),[V,X]=p.useState(new Set),{providerTestTimeoutSeconds:H}=Al(),B=p.useRef(null),ce=p.useRef(null),W=e??[],Y=p.useMemo(()=>{const z=F==="all"?W:W.filter(M=>M.source===F);return F==="all"?[...z].sort((M,J)=>{const oe={personal:0,company:1};return(oe[M.source??""]??2)-(oe[J.source??""]??2)}):z},[W,F]),_e=n??g,fe=s??v,xe=o??_,de=c?(z,M)=>c(z,M):(z,M)=>{j(M===void 0?J=>{const oe={...J};return delete oe[z],oe}:J=>({...J,[z]:M}))};p.useEffect(()=>{(async()=>{try{const z=await Ke("/api/config/paths",v6,_6);N(z.providerConfig)}catch{}})()},[]);const ge=p.useCallback(z=>{ce.current!==null&&clearTimeout(ce.current),P(z),B.current?.scrollTo({top:B.current.scrollHeight,behavior:"smooth"}),ce.current=setTimeout(()=>{P(null),ce.current=null},2e3)},[]);p.useEffect(()=>()=>{ce.current!==null&&clearTimeout(ce.current)},[]);const be=p.useCallback(()=>{i?.().catch(()=>{})},[i]),Ce=p.useCallback((z,M)=>{a?a(z,M):x(J=>({...J,[z]:M}))},[a]),Re=p.useCallback((z,M)=>{if(l){l(z,M);return}y(J=>{const oe=new Set(J);return M?oe.add(z):oe.delete(z),oe})},[l]),k=p.useCallback(async z=>{Ce(z,b6()),Re(z,!0);const M=new AbortController,J=W.find(he=>he.id===z),oe=T6(J,H);let ie=oe;de(z,ie);const we=setInterval(()=>{ie--,de(z,ie),ie<=0&&(clearInterval(we),M.abort())},1e3);try{const he=await Ke(`/api/providers/${z}/test`,x6,oe*1e3+1e3,{method:"POST",signal:M.signal},me=>`HTTP ${me.status}: ${me.statusText}`);Ce(z,he),await E6(z,he)}catch(he){const me=he instanceof Error&&he.name==="AbortError",Ie=he instanceof Yo;me||Ie?Ce(z,Td("Request timed out","timeout")):he instanceof Error&&Ce(z,Td(he.message,"server_error"))}finally{clearInterval(we),de(z,void 0),Re(z,!1)}},[H,W,de,Ce,Re]),Q=p.useCallback(async(z,M,J=!0)=>{X(oe=>{const ie=new Set(oe);return ie.add(z),ie});try{const oe=M!==void 0&&M.trim()!==""?{url:M}:{},ie=await Ke(`/api/providers/${z}/model-metadata`,w6,N6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(oe)},()=>"Failed to refresh model metadata");return ie.imported===0&&J?b("No matching model metadata found for this provider."):b(null),ge(ie.provider.id),be(),ie.imported>0}catch(oe){return J&&b(oe instanceof Error?oe.message:Qr),!1}finally{X(oe=>{const ie=new Set(oe);return ie.delete(z),ie})}},[be,ge]);function q(z){(async()=>{try{const M=await Ke("/api/providers",Co,Ed,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Ad(z))},()=>"Failed to add provider");f(!1),ge(M.id),z.modelMetadataUrl!==void 0&&z.modelMetadataUrl.trim()!==""&&await Q(M.id,z.modelMetadataUrl,!1),be(),await k(M.id)}catch(M){b(M instanceof Error?M.message:Qr)}})()}function O(z){d&&(async()=>{try{const M=await Ke(`/api/providers/${d.id}`,Co,Ed,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(Ad(z))},()=>"Failed to update provider");m(void 0),ge(M.id),z.modelMetadataUrl!==void 0&&z.modelMetadataUrl.trim()!==""&&await Q(M.id,z.modelMetadataUrl,!1),be(),((z.apiKey??"")!==(d.apiKey??"")||JSON.stringify(z.models)!==JSON.stringify(d.models)||(z.anthropicBaseUrl??"")!==(d.anthropicBaseUrl??"")||(z.openaiBaseUrl??"")!==(d.openaiBaseUrl??"")||(z.openaiResponsesBaseUrl??"")!==(d.openaiResponsesBaseUrl??""))&&await k(M.id)}catch(M){b(M instanceof Error?M.message:Qr)}})()}function R(z){ee(z),w(!0)}function U(){const z=$;z!==null&&(async()=>{let M;try{M=await Fn(`/api/providers/${z}`,j6,{method:"DELETE"})}catch{b(Qr);return}if(!M.ok){b(await wl(M,"Failed to delete provider"));return}be()})()}const re=p.useRef(null);function se(z){const M="/api/providers/export";(async()=>{try{const J=await Fn(M,S6);if(!J.ok){b("Failed to export providers");return}const oe=await J.blob(),ie=URL.createObjectURL(oe),we=document.createElement("a");we.href=ie,we.download=J.headers.get("Content-Disposition")?.match(/filename="(.+)"/)?.[1]??"providers.json",document.body.appendChild(we),we.click(),document.body.removeChild(we),URL.revokeObjectURL(ie)}catch{b("Failed to export providers")}})()}function Z(){re.current?.click()}function le(z){const M=z.target.files?.[0];M&&(async()=>{try{const J=await M.text(),oe=await Fn("/api/providers/import",C6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(J)}),ie=await yl(oe,y6);oe.ok&&ie.imported!==void 0&&ie.imported>0?(be(),b(null)):ie.errors&&ie.errors.length>0?b(ie.errors.join("; ")):b(ie.message??"Import failed")}catch{b("Failed to import providers")}z.target.value=""})()}return t?r.jsx("div",{className:"flex items-center justify-center py-8",children:r.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading providers..."})}):u||d?r.jsxs("div",{className:"space-y-4",children:[r.jsx("div",{className:"sticky top-0 z-10 flex items-center justify-between gap-3 rounded-[8px] bg-background/95 px-1 py-1 backdrop-blur",children:r.jsx("h3",{className:"text-lg font-medium",children:d?"Edit Provider":"Add New Provider"})}),r.jsx(u6,{provider:d,onSubmit:d?O:q,onCancel:()=>{f(!1),m(void 0)}})]}):r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"sticky top-0 z-10 flex items-center justify-between gap-3 rounded-[8px] bg-background/95 px-1 py-1 backdrop-blur",children:[r.jsx("h3",{className:"text-lg font-medium",children:"Providers"}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>se(),className:"gap-1 hover:bg-muted",children:[r.jsx(br,{className:"size-3"}),"Export"]}),r.jsxs(je,{variant:"outline",size:"sm",onClick:Z,className:"gap-1 hover:bg-muted",children:[r.jsx(gp,{className:"size-3"}),"Import"]}),r.jsx("input",{type:"file",ref:re,accept:".json",onChange:le,style:{display:"none"}}),r.jsxs(je,{variant:"outline",size:"sm",onClick:()=>E(!0),className:"gap-1",children:[r.jsx(w_,{className:"size-3"}),"Scan"]}),r.jsxs(je,{onClick:()=>f(!0),size:"sm",className:"gap-1",children:[r.jsx(wa,{className:"size-4"}),"Add Provider"]})]})]}),S!==null&&r.jsxs("div",{className:"flex items-center gap-2 rounded-[8px] bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.jsx("span",{className:"shrink-0",children:"Config:"}),r.jsx("span",{className:"font-mono truncate",title:S,children:S}),r.jsx("button",{type:"button",onClick:()=>{Tt(S).then(z=>{z&&(A(!0),setTimeout(()=>A(!1),2e3))})},className:"ml-auto shrink-0 text-muted-foreground transition-colors hover:text-foreground","aria-label":T?"Copied config file path":"Copy config file path",children:T?r.jsx(Ge,{className:"size-3 text-cyan-300"}):r.jsx(It,{className:"size-3"})})]}),h!==null&&r.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:[r.jsx(Ss,{className:"size-4 shrink-0"}),h]}),W.length===0?r.jsxs("div",{className:"border border-border bg-card shadow-sm space-y-3 rounded-[8px] py-12 text-center",children:[r.jsx("p",{className:"text-sm text-muted-foreground",children:"No providers configured yet."}),r.jsxs(je,{onClick:()=>f(!0),variant:"outline",size:"sm",children:[r.jsx(wa,{className:"size-4"}),"Add Your First Provider"]})]}):r.jsxs("div",{className:"space-y-3",children:[r.jsx("div",{className:"inline-flex w-fit gap-1 rounded-[8px] bg-muted/20 p-1",children:["all","personal","company"].map(z=>r.jsx("button",{type:"button",onClick:()=>te(z),className:`rounded-md px-3 py-1.5 text-sm font-medium transition-colors ${F===z?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:z==="all"?"All":z==="personal"?"Personal":"Company"},z))}),r.jsx("div",{ref:B,className:"space-y-3",children:Y.map(z=>r.jsx(XI,{provider:z,testResults:_e[z.id],isTesting:fe.has(z.id),testingTimeLeft:xe[z.id],isHighlighted:z.id===I,onEdit:M=>m(M),onDelete:R,onRefreshMetadata:M=>{Q(M)},isRefreshingMetadata:V.has(z.id),onTest:M=>{k(M)}},z.id))})]}),r.jsx(RI,{open:L,onOpenChange:E,onImportComplete:()=>{i!==void 0&&i()}}),r.jsx(r0,{open:D,onOpenChange:w,title:"Delete Provider",description:"Are you sure you want to delete this provider? This action cannot be undone.",confirmLabel:"Delete",variant:"destructive",onConfirm:U})]})}function Id(){const[e,t]=p.useState(!1),[n,s]=p.useState("providers"),{providers:o,isLoading:i,mutate:a}=Bl(),[l,c]=p.useState({}),[u,f]=p.useState(new Set),[d,m]=p.useState({}),h=p.useCallback((x,v)=>{c(y=>({...y,[x]:v}))},[]),b=p.useCallback((x,v)=>{f(y=>{const _=new Set(y);return v?_.add(x):_.delete(x),_})},[]),g=p.useCallback((x,v)=>{m(y=>{if(v===void 0){const _={...y};return delete _[x],_}return{...y,[x]:v}})},[]);return r.jsxs(Yn,{open:e,onOpenChange:t,children:[r.jsx(yi,{asChild:!0,children:r.jsxs(je,{variant:"ghost",size:"icon",className:Ci,"aria-label":"Settings",title:"Settings",children:[r.jsx(T_,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"Settings"})]})}),r.jsxs(Xn,{className:"flex max-h-[80vh] max-w-2xl flex-col overflow-hidden",children:[r.jsx(Qn,{children:r.jsx(es,{children:"Settings"})}),r.jsxs(_0,{value:n,onValueChange:s,className:"flex-1 overflow-hidden",children:[r.jsxs(k0,{className:"w-full justify-start bg-muted/35",children:[r.jsx(Ct,{value:"providers",children:"Providers"}),r.jsx(Ct,{value:"proxy",children:"Proxy"}),r.jsx(Ct,{value:"storage",children:"Storage"}),r.jsx(Ct,{value:"mcp",children:"MCP"}),r.jsx(Ct,{value:"onboarding",children:"Onboarding"})]}),r.jsxs("div",{className:"mt-4 flex-1 overflow-x-hidden overflow-y-auto pr-2",children:[r.jsx(Nt,{value:"providers",children:r.jsx(A6,{externalProviders:o,isLoading:i,externalTestResults:l,externalTestingProviders:u,externalTestingTimeLeft:d,onProvidersMutate:()=>a(),onTestResultsChange:h,onTestingProvidersChange:b,onTestingTimeLeftChange:g})}),r.jsx(Nt,{value:"proxy",children:r.jsx(M6,{})}),r.jsx(Nt,{value:"storage",children:r.jsx(z6,{})}),r.jsx(Nt,{value:"mcp",children:r.jsx(O6,{})}),r.jsx(Nt,{value:"onboarding",children:r.jsx(P6,{})})]})]})]})]})}const I6=K({memoryCount:G(),logDir:C(),logFileCount:G(),logBytes:G(),chunkDir:C(),chunkFileCount:G(),chunkBytes:G(),sessionArchiveDir:C(),sessionArchiveFileCount:G(),sessionArchiveBytes:G()}),R6=1e4;function ca(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 z6(){const[e,t]=p.useState(null),[n,s]=p.useState(null),[o,i]=p.useState(!1),[a,l]=p.useState(null),c=p.useCallback(async()=>{i(!0),s(null);try{const f=await Ke("/api/logs?stats=1",I6,R6,void 0,d=>`Failed to load storage stats: HTTP ${String(d.status)}`);t(f)}catch(f){s(f instanceof Error?f.message:String(f))}finally{i(!1)}},[]);p.useEffect(()=>{c()},[c]);const u=p.useCallback((f,d)=>{Tt(d).then(m=>{m&&(l(f),setTimeout(()=>l(null),1600))})},[]);return r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("h3",{className:"text-sm font-semibold",children:"Log storage"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Inspect local log and streaming chunk footprint before exporting or clearing sessions."})]}),r.jsx(je,{type:"button",variant:"outline",size:"sm",onClick:()=>{c()},children:o?"Refreshing...":"Refresh"})]}),e!==null&&r.jsxs("div",{className:"grid gap-2 text-xs",children:[r.jsx(tr,{id:"log-dir",label:"Log storage path",value:e.logDir,copiedId:a,onCopy:u}),r.jsx(tr,{id:"chunk-dir",label:"Streaming chunks storage path",value:e.chunkDir,copiedId:a,onCopy:u}),r.jsx(tr,{id:"session-archive-dir",label:"Session archive storage path",value:e.sessionArchiveDir,copiedId:a,onCopy:u}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"In-memory logs"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.memoryCount.toLocaleString()," loaded"]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Log files"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.logFileCount.toLocaleString()," files / ",ca(e.logBytes)]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Streaming chunks"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.chunkFileCount.toLocaleString()," files / ",ca(e.chunkBytes)]})]}),r.jsxs("div",{className:"rounded-md bg-muted/20 px-3 py-2",children:[r.jsx("div",{className:"font-medium",children:"Session archives"}),r.jsxs("div",{className:"mt-1 font-mono text-muted-foreground",children:[e.sessionArchiveFileCount.toLocaleString()," files /"," ",ca(e.sessionArchiveBytes)]})]})]}),n!==null&&r.jsx("p",{className:"text-xs text-destructive",children:n})]})}function tr({id:e,label:t,value:n,copiedId:s,onCopy:o}){const i=s===e;return r.jsxs("div",{className:"min-w-0 rounded-md border border-border/45 bg-muted/15 px-3 py-2 transition-colors hover:bg-muted/25",children:[r.jsx("div",{className:"mb-1 text-xs font-medium text-muted-foreground",children:t}),r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("code",{className:"min-w-0 flex-1 truncate font-mono text-xs text-foreground",children:n}),r.jsx(je,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0",onClick:()=>o(e,n),"aria-label":i?`Copied ${t}`:`Copy ${t}`,children:i?r.jsx(Ge,{className:"size-3.5 text-emerald-500"}):r.jsx(It,{className:"size-3.5"})})]})]})}function P6(){const[e,t]=p.useState(null),n=p.useMemo(()=>typeof window>"u"?"http://localhost:9527":window.location.origin,[]),s=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)=>{Tt(a).then(l=>{l&&(t(i),setTimeout(()=>t(null),1600))})},[]);return r.jsxs("div",{className:"min-w-0 space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ds,{className:"size-4 text-muted-foreground"}),r.jsx("h3",{className:"text-sm font-semibold",children:"Agent onboarding"})]}),r.jsx("div",{className:"grid gap-2",children:s.map(i=>r.jsx(tr,{id:i.id,label:i.label,value:i.value,copiedId:e,onCopy:o},i.id))}),r.jsxs("div",{className:"grid gap-2 rounded-md bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ge,{className:"size-3.5 text-emerald-500"}),r.jsx("span",{children:"Provider test creates a traceable memory probe session."})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ge,{className:"size-3.5 text-emerald-500"}),r.jsx("span",{children:"Captured sessions can produce reviewable memory candidates."})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["Streamable HTTP clients should use the MCP URL directly. Stdio-only clients should use",r.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."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["OpenCode onboarding safely merges"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode.json"}),", then verify with"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"opencode mcp list"}),"."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.jsxs("span",{children:["MiMo Code onboarding safely merges"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"mcp.agent-inspector"})," ","into"," ",r.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"," ",r.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[11px] text-foreground",children:"OPENAI_BASE_URL"}),"."]})]}),r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(Ge,{className:"mt-0.5 size-3.5 text-emerald-500"}),r.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 O6(){const[e,t]=p.useState(null),s=`${p.useMemo(()=>typeof window>"u"?"http://localhost:9527":window.location.origin,[])}/api/mcp`,o=p.useMemo(()=>[{id:"mcp-url",label:"Streamable HTTP MCP URL",value:s},{id:"stdio",label:"Stdio bridge command",value:`agent-inspector-mcp stdio --url ${s}`},{id:"doctor",label:"Bridge doctor",value:`agent-inspector-mcp doctor --url ${s}`},{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:s}}},null,2)},{id:"stdio-json",label:"Stdio MCP JSON",value:JSON.stringify({mcpServers:{"agent-inspector":{command:"agent-inspector-mcp",args:["stdio","--url",s]}}},null,2)},{id:"opencode-local",label:"OpenCode local MCP",value:JSON.stringify({mcp:{"agent-inspector":{type:"local",command:["agent-inspector-mcp","stdio","--url",s],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",s],enabled:!0}}},null,2)},{id:"codex-toml",label:"Codex TOML",value:`[mcp_servers.agent-inspector]
|
|
126
126
|
command = "agent-inspector-mcp"
|
|
127
|
-
args = ["stdio", "--url", "${s}"]`}],[s]),i=p.useCallback((a,l)=>{Tt(l).then(c=>{c&&(t(a),setTimeout(()=>t(null),1600))})},[]);return r.jsxs("div",{className:"min-w-0 space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ds,{className:"size-4 text-muted-foreground"}),r.jsx("h3",{className:"text-sm font-semibold",children:"MCP access"})]}),r.jsxs("div",{className:"grid gap-2 rounded-md bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.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."}),r.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."})]}),r.jsx("div",{className:"grid gap-2",children:o.map(a=>r.jsx(tr,{id:a.id,label:a.label,value:a.value,copiedId:e,onCopy:i},a.id))})]})}function MR(){const{strip:e,slowResponseThresholdSeconds:t,providerTestTimeoutSeconds:n,timeDisplayFormat:s,isLoading:o,setStrip:i,setSlowResponseThresholdSeconds:a,setProviderTestTimeoutSeconds:l,setTimeDisplayFormat:c}=Al(),[u,f]=p.useState(null),[d,m]=p.useState(!1),h=p.useCallback(async v=>{f(null),m(!0);try{await i(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[i]),b=p.useCallback(async v=>{f(null),m(!0);try{await a(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[a]),g=p.useCallback(async v=>{f(null),m(!0);try{await l(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[l]),x=p.useCallback(async v=>{f(null),m(!0);try{await c(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[c]);return r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"space-y-1",children:[r.jsx("h3",{className:"text-sm font-semibold",children:"Claude Code billing header"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Strip Claude Code's synthetic billing block before upstream forwarding. This can improve prefix-cache hits with third-party providers and is persisted to ",r.jsx("code",{children:"config.json"}),"."]})]}),r.jsxs("label",{className:"flex items-center gap-3",children:[r.jsx("input",{type:"checkbox",role:"switch",checked:e,disabled:o||d,onChange:v=>{h(v.currentTarget.checked)},className:"size-4 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50"}),r.jsx("span",{className:"text-sm",children:o?"Loading...":e?"Stripping enabled":"Stripping disabled"})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"slow-response-threshold",className:"text-sm font-semibold",children:"Slow response threshold"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Show a slow marker when elapsed time exceeds this many seconds. Use ",r.jsx("code",{children:"0"})," to disable it."]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"slow-response-threshold",type:"number",min:0,max:ba,step:1,value:t,disabled:o||d,onChange:v=>{const y=Number(v.currentTarget.value);Number.isInteger(y)&&(y<0||y>ba||b(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"}),r.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds"})]})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"provider-test-timeout",className:"text-sm font-semibold",children:"Provider test timeout"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Abort slow Provider Test probes after this many seconds per model."}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"provider-test-timeout",type:"number",min:1,max:va,step:1,value:n,disabled:o||d,onChange:v=>{const y=Number(v.currentTarget.value);Number.isInteger(y)&&(y<1||y>va||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"}),r.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds / model"})]})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"time-display-format",className:"text-sm font-semibold",children:"Time display"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Controls timestamps in session summaries, headers, and log rows."}),r.jsxs("select",{id:"time-display-format",value:s,disabled:o||d,onChange:v=>{const y=op.safeParse(v.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:[r.jsx("option",{value:"time",children:"Time only"}),r.jsx("option",{value:"full",children:"Full ISO"})]})]}),u!==null&&r.jsxs("p",{className:"text-xs text-destructive",children:["Failed to save: ",u]})]})}const LR=Ee(["installed","update-available","available","planned","unknown"]),DR=K({id:C(),name:C(),npmName:C(),capability:C(),description:C(),workflow:C(),installCommand:C(),state:LR,installedVersion:C().nullable(),latestVersion:C().nullable(),primary:Le()}),$R=K({id:C(),name:C(),validatedVersion:C(),binary:C(),modelFlag:C(),variantFlag:C().nullable(),tools:pe(C()),logDir:C(),skillsDir:C(),agentsDir:C()}),FR=K({id:C(),title:C(),stage:C(),packageId:C(),description:C(),command:C(),requiresSession:Le(),runnable:Le()}),UR=K({checkedAt:C(),packages:pe(DR),runnerPresets:pe($R),recipes:pe(FR)}),BR=Ee(["install","upgrade","help","runner-presets","recipe"]),WR=Ee(["queued","running","succeeded","failed"]),eg=K({id:C(),packageId:C(),npmName:C(),recipeId:C().nullable().default(null),action:BR,status:WR,command:C(),output:C(),createdAt:C(),startedAt:C().nullable(),finishedAt:C().nullable(),exitCode:G().nullable(),error:C().nullable()}),Tc=K({task:eg}),HR=K({tasks:pe(eg)}),VR=[{id:"observe",title:"Observe",label:"Live",description:"Capture IDE, process, session, turn, request, response, tools, and providers.",metric:"Inspector core",icon:my},{id:"replay",title:"Replay",label:"Ready",description:"Promote real logs into repeatable replay evidence without losing the raw context.",metric:"Session asset",icon:yn},{id:"evaluate",title:"Evaluate",label:"Next",description:"Use eval-harness to turn sessions into regression cases and provider bakeoffs.",metric:"Eval loop",icon:Il},{id:"connect",title:"Connect",label:"MCP",description:"Expose Inspector state to coding agents as queryable context and durable evidence.",metric:"/api/mcp",icon:Qw}];async function ZR(e){return ht(e,UR,void 0,t=>`Failed to load ecosystem packages: ${String(t.status)}`)}async function qR(e){return ht(e,Tc,void 0,t=>`Failed to load ecosystem task: ${String(t.status)}`)}async function GR(e){return ht(e,HR,void 0,t=>`Failed to load ecosystem tasks: ${String(t.status)}`)}async function KR(e,t){return(await ht(`/api/ecosystem/packages/${encodeURIComponent(e)}/${t}`,Tc,{method:"POST"},s=>`Failed to start ecosystem task: ${String(s.status)}`)).task}async function JR(e){return(await ht(`/api/ecosystem/recipes/${encodeURIComponent(e)}/run`,Tc,{method:"POST"},n=>`Failed to start ecosystem recipe: ${String(n.status)}`)).task}function YR(e){switch(e){case"installed":return"Installed";case"update-available":return"Update";case"available":return"Available";case"planned":return"Planned";case"unknown":return"Unknown"}}function XR(e){switch(e){case"installed":return"border-emerald-400/20 bg-emerald-400/8 text-emerald-200";case"update-available":return"border-amber-400/20 bg-amber-400/8 text-amber-200";case"available":return"border-sky-400/20 bg-sky-400/8 text-sky-200";case"planned":return"border-white/10 bg-white/[0.04] text-white/55";case"unknown":return"border-white/10 bg-white/[0.04] text-white/45"}}function QR(e){return e.installedVersion!==null&&e.latestVersion!==null?e.installedVersion===e.latestVersion?`v${e.installedVersion}`:`v${e.installedVersion} -> v${e.latestVersion}`:e.installedVersion!==null?`v${e.installedVersion}`:e.latestVersion!==null?`latest v${e.latestVersion}`:"not published"}function nr(e){switch(e){case"install":return"Install";case"upgrade":return"Upgrade";case"help":return"Help";case"runner-presets":return"Presets";case"recipe":return"Recipe"}}function e6(e){switch(e.status){case"queued":return"Queued";case"running":return`${nr(e.action)} running`;case"succeeded":return`${nr(e.action)} complete`;case"failed":return`${nr(e.action)} failed`}}function tg(e){switch(e){case"queued":case"running":return"border-cyan-300/20 bg-cyan-300/8 text-cyan-100";case"succeeded":return"border-emerald-400/20 bg-emerald-400/8 text-emerald-100";case"failed":return"border-red-400/20 bg-red-400/8 text-red-100"}}function t6(e){switch(e.state){case"available":return"install";case"update-available":return"upgrade";case"installed":case"planned":case"unknown":return null}}function n6({pkg:e,activeTask:t,onStartTask:n}){const s=t6(e),o=t!==null&&t.packageId===e.id&&t.status==="running";return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(s_,{className:"size-4 shrink-0 text-white/55"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.name})]}),r.jsx("div",{className:"mt-1 break-all font-mono text-[11px] leading-snug text-white/35",children:e.npmName})]}),r.jsx(Oe,{className:ae("shrink-0",XR(e.state)),variant:"outline",children:YR(e.state)})]}),r.jsx("div",{className:"mt-3 text-xs leading-5 text-muted-foreground",children:e.description}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2 text-[11px]",children:[r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-white/50",children:QR(e)}),r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 text-white/45",children:e.capability}),r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-white/35",children:e.installCommand})]}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[s!==null&&r.jsxs(je,{type:"button",size:"sm",variant:"secondary",disabled:o,onClick:()=>n(e.id,s),children:[o?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(br,{className:"size-3.5"}),nr(s)]}),r.jsxs(je,{type:"button",size:"sm",variant:"outline",disabled:o||e.state==="planned",onClick:()=>n(e.id,"help"),children:[r.jsx(Ds,{className:"size-3.5"}),"Help"]}),e.id==="eval-harness"&&r.jsxs(je,{type:"button",size:"sm",variant:"ghost",disabled:o||e.state==="planned",onClick:()=>n(e.id,"runner-presets"),children:[r.jsx(Il,{className:"size-3.5"}),"Presets"]})]})]})}function s6({task:e}){if(e===null)return null;const t=e.status==="queued"||e.status==="running";return r.jsxs("section",{className:"mt-3 rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[t?r.jsx(Qe,{className:"size-4 animate-spin text-cyan-200/75"}):r.jsx(Ds,{className:"size-4 text-white/55"}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-sm font-semibold",children:e6(e)}),r.jsx("div",{className:"break-all font-mono text-[11px] text-white/35",children:e.command})]})]}),r.jsx(Oe,{variant:"outline",className:ae("shrink-0",tg(e.status)),children:e.status})]}),r.jsx("pre",{className:"mt-3 max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-black/30 p-3 font-mono text-[11px] leading-5 text-white/60 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:e.output.trim().length>0?e.output:"Waiting for npm output..."}),e.error!==null&&r.jsx("div",{className:"mt-2 text-xs text-red-100",children:e.error})]})}function r6({workflow:e}){const t=e.icon;return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(t,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold",children:e.title})]}),r.jsx("span",{className:"rounded bg-white/[0.04] px-2 py-0.5 font-mono text-[10px] text-white/45",children:e.label})]}),r.jsx("div",{className:"mt-2 min-h-10 text-xs leading-5 text-muted-foreground",children:e.description}),r.jsx("div",{className:"mt-3 font-mono text-[11px] text-white/35",children:e.metric})]})}function o6(e){return e===null?'npx @tonyclaw/eval-harness inspector-smoke --title "TonyClaw Lab smoke" --latest-log-limit 5':`npx @tonyclaw/eval-harness inspector-smoke --title "TonyClaw Lab smoke ${e}" --latest-log-limit 5`}function i6({preset:e}){return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(hp,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.name})]}),r.jsxs("div",{className:"mt-1 break-all font-mono text-[11px] leading-snug text-white/35",children:[e.binary," ",e.modelFlag,e.variantFlag!==null?` ${e.variantFlag}`:""]})]}),r.jsxs(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:["v",e.validatedVersion]})]}),r.jsxs("div",{className:"mt-3 grid grid-cols-2 gap-2 text-[11px]",children:[r.jsxs("div",{className:"rounded bg-black/15 px-2 py-1 text-white/45",children:["logs/",e.logDir]}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 text-white/45",children:e.tools.join(", ")}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 font-mono text-white/35",children:e.skillsDir}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 font-mono text-white/35",children:e.agentsDir})]})]})}function a6({recipe:e,copied:t,running:n,onCopy:s,onRun:o}){return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(cp,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.title})]}),r.jsx("div",{className:"mt-1 text-xs leading-5 text-muted-foreground",children:e.description})]}),r.jsx(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:e.runnable?e.stage:"Template"})]}),r.jsx("div",{className:"mt-3 rounded-md bg-black/20 p-2 font-mono text-[11px] leading-5 text-white/50 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:e.command}),r.jsxs("div",{className:"mt-3 flex items-center justify-between gap-2",children:[r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-[11px] text-white/35",children:e.packageId}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(je,{type:"button",size:"sm",variant:"outline",onClick:()=>s(e),children:[t?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"}),t?"Copied":"Copy"]}),e.runnable&&r.jsxs(je,{type:"button",size:"sm",variant:"secondary",disabled:n,onClick:()=>o(e),children:[n?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(hp,{className:"size-3.5"}),n?"Running":"Run"]})]})]})]})}function l6({task:e,selected:t,onSelect:n}){const s=e.recipeId??nr(e.action);return r.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md bg-white/[0.025] px-3 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(dp,{className:"size-3.5 shrink-0 text-white/40"}),r.jsx("div",{className:"truncate text-xs font-semibold text-white/75",children:s}),r.jsx(Oe,{variant:"outline",className:ae("shrink-0",tg(e.status)),children:e.status})]}),r.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-2 font-mono text-[10px] text-white/35",children:[r.jsx("span",{children:e.packageId}),r.jsx("span",{children:new Date(e.createdAt).toLocaleTimeString()}),e.exitCode!==null&&r.jsxs("span",{children:["exit ",String(e.exitCode)]})]})]}),r.jsx(je,{type:"button",size:"sm",variant:t?"secondary":"outline",onClick:()=>n(e),children:t?"Open":"View"})]})}function Rd({currentSessionId:e,logCount:t}){const[n,s]=p.useState(!1),[o,i]=p.useState(!1),[a,l]=p.useState(!1),[c,u]=p.useState(null),[f,d]=p.useState(null),[m,h]=p.useState(null),b=Zt("/api/ecosystem/packages",ZR,{revalidateOnFocus:!1,revalidateIfStale:!1}),g=Zt(f===null?null:`/api/ecosystem/tasks/${f}`,qR,{refreshInterval:w=>{const $=w?.task;return $!==void 0&&($.status==="queued"||$.status==="running")?900:0},revalidateOnFocus:!1}),x=Zt(n?"/api/ecosystem/tasks":null,GR,{refreshInterval:2500,revalidateOnFocus:!1}),v=b.data?.packages??[],y=b.data?.runnerPresets??[],_=b.data?.recipes??[],j=(x.data?.tasks??[]).slice(0,6),S=p.useMemo(()=>v.filter(w=>w.state==="installed"||w.state==="update-available").length,[v]),N=o6(e),T="npx @tonyclaw/eval-harness runner-presets",A=()=>{Tt(N).then(()=>{i(!0),window.setTimeout(()=>i(!1),1200)})},I=()=>{Tt(T).then(()=>{l(!0),window.setTimeout(()=>l(!1),1200)})},P=w=>{Tt(w.command).then(()=>{u(w.id),window.setTimeout(()=>u(null),1200)})},L=w=>{h(null),JR(w.id).then($=>{d($.id),g.mutate({task:$},{revalidate:!0}),x.mutate()}).catch($=>{h($ instanceof Error?$.message:"Failed to start ecosystem recipe")})},E=g.data?.task??null;p.useEffect(()=>{E!==null&&(x.mutate(),E.status==="succeeded"&&b.mutate())},[E,b,x]);const D=(w,$)=>{h(null),KR(w,$).then(ee=>{d(ee.id),g.mutate({task:ee},{revalidate:!0}),x.mutate()}).catch(ee=>{h(ee instanceof Error?ee.message:"Failed to start ecosystem task")})};return r.jsxs(Yn,{open:n,onOpenChange:s,children:[r.jsx(yi,{asChild:!0,children:r.jsxs(je,{variant:"ghost",size:"icon",className:Ci,"aria-label":"TonyClaw Lab",title:"TonyClaw Lab",children:[r.jsx(cp,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"TonyClaw Lab"})]})}),r.jsxs(Xn,{className:"flex max-h-[84vh] max-w-5xl flex-col overflow-hidden",children:[r.jsx(Qn,{children:r.jsxs(es,{className:"flex items-center gap-2",children:[r.jsx(au,{className:"size-4 text-cyan-200/80"}),"TonyClaw Lab"]})}),r.jsxs("div",{className:"overflow-y-auto pr-2",children:[r.jsxs("div",{className:"grid gap-3 lg:grid-cols-[1.1fr_0.9fr]",children:[r.jsxs("section",{className:"rounded-lg bg-white/[0.025] p-4 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold",children:"Session asset pipeline"}),r.jsx("div",{className:"mt-1 max-w-2xl text-xs leading-5 text-muted-foreground",children:"Treat captured traffic as durable assets: observe it, replay it, evaluate it, and expose it back to agents through MCP."})]}),r.jsxs(Oe,{variant:"outline",className:"border-cyan-300/20 bg-cyan-300/8 text-cyan-100",children:[String(S),"/",String(v.length)," packages"]})]}),r.jsx("div",{className:"mt-4 grid gap-3 sm:grid-cols-2",children:VR.map(w=>r.jsx(r6,{workflow:w},w.id))})]}),r.jsxs("section",{className:"rounded-lg bg-white/[0.025] p-4 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold",children:"Current session"}),r.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:e===null?"MCP smoke command":e})]}),r.jsxs(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:[String(t)," logs"]})]}),r.jsx("div",{className:"mt-4 rounded-md bg-black/20 p-3 font-mono text-[11px] leading-5 text-white/55 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:N}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[r.jsxs(je,{size:"sm",variant:"secondary",onClick:A,children:[o?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"}),o?"Copied":"Copy"]}),r.jsxs(je,{size:"sm",variant:"outline",onClick:I,children:[r.jsx(Il,{className:"size-3.5"}),a?"Presets copied":"Runner Presets"]})]})]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Lab recipes"}),r.jsxs("div",{className:"hidden items-center gap-1 font-mono text-[11px] text-muted-foreground sm:flex",children:[r.jsx(au,{className:"size-3.5"}),"copy-ready workflows"]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[_.map(w=>r.jsx(a6,{recipe:w,copied:c===w.id,running:E!==null&&E.recipeId===w.id&&(E.status==="queued"||E.status==="running"),onCopy:P,onRun:L},w.id)),b.isLoading&&_.length===0&&[0,1].map(w=>r.jsx("div",{className:"h-40 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Runner presets"}),r.jsxs("div",{className:"hidden items-center gap-1 font-mono text-[11px] text-muted-foreground sm:flex",children:[r.jsx(Ds,{className:"size-3.5"}),T]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2 xl:grid-cols-4",children:[y.map(w=>r.jsx(i6,{preset:w},w.id)),b.isLoading&&y.length===0&&[0,1,2,3].map(w=>r.jsx("div",{className:"h-32 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"TonyClaw packages"}),b.isLoading&&r.jsx("div",{className:"font-mono text-[11px] text-muted-foreground",children:"checking npm..."})]}),b.error!==void 0&&r.jsx("div",{className:"rounded-lg bg-red-500/8 p-3 text-xs text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:"Package status is temporarily unavailable."}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[v.map(w=>r.jsx(n6,{pkg:w,activeTask:E,onStartTask:D},w.id)),b.isLoading&&v.length===0&&[0,1,2].map(w=>r.jsx("div",{className:"h-36 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),m!==null&&r.jsx("div",{className:"mt-3 rounded-lg bg-red-500/8 p-3 text-xs text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:m}),j.length>0&&r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Recent Lab runs"}),r.jsxs("div",{className:"hidden font-mono text-[11px] text-muted-foreground sm:block",children:["last ",String(j.length)]})]}),r.jsx("div",{className:"grid gap-2 md:grid-cols-2",children:j.map(w=>r.jsx(l6,{task:w,selected:f===w.id,onSelect:$=>{d($.id),g.mutate({task:$},{revalidate:!0})}},w.id))})]}),r.jsx(s6,{task:E})]})]})]})}K({question:C().trim().min(1).max(4e3),sessionId:C().trim().min(1).optional(),providerId:C().trim().min(1).optional(),model:C().trim().min(1).optional(),logLimit:G().int().min(1).max(80).optional()});const c6=K({answer:C(),providerId:C(),providerName:C(),model:C(),protocol:Ee(["openaiResponses","openaiChat","anthropic"]),logCount:G().int().nonnegative()}),u6="Analyze the current Inspector session. What looks abnormal, slow, or likely to hang?";function d6(e){return e.openaiResponsesBaseUrl!==void 0||e.openaiBaseUrl!==void 0||e.anthropicBaseUrl!==void 0}function f6(e){return e.openaiResponsesBaseUrl!==void 0&&e.openaiResponsesBaseUrl!==""?"Responses":e.openaiBaseUrl!==void 0&&e.openaiBaseUrl!==""?"Chat":"Anthropic"}function p6(e){return e.toSorted((t,n)=>{const s=t.source==="company"?0:1,o=n.source==="company"?0:1;return s!==o?s-o:t.name.localeCompare(n.name)})}function h6({currentSessionId:e,logCount:t}){const{providers:n}=Bl(),s=p.useMemo(()=>p6(n.filter(d6)),[n]),[o,i]=p.useState(u6),[a,l]=p.useState("__auto__"),[c,u]=p.useState("__auto__"),[f,d]=p.useState(""),[m,h]=p.useState(""),[b,g]=p.useState(!1),v=s.find(N=>N.id===a)?.models??[],y=o.trim()!==""&&s.length>0&&!b,_=N=>{i(N.currentTarget.value)},j=N=>{l(N),u("__auto__")},S=()=>{if(!y)return;g(!0),h(""),d("");const N={question:o.trim(),...e!==null?{sessionId:e}:{},...a!=="__auto__"?{providerId:a}:{},...c!=="__auto__"?{model:c}:{},logLimit:24};fetch("/api/pi-agent",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(N)}).then(async T=>{const A=await T.text();if(!T.ok){h(`Pi Agent failed: HTTP ${String(T.status)}`),d(A);return}const I=JSON.parse(A),P=c6.safeParse(I);if(!P.success){h("Pi Agent returned an unexpected response."),d(A);return}h(`${P.data.providerName} / ${P.data.model} / ${P.data.protocol} / ${String(P.data.logCount)} logs`),d(P.data.answer)}).catch(T=>{h(T instanceof Error?T.message:"Pi Agent request failed.")}).finally(()=>{g(!1)})};return r.jsxs("section",{className:"rounded-md bg-black/20 px-3 py-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ry,{className:"size-4 text-cyan-200"}),r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsx("div",{className:"text-xs font-semibold text-foreground",children:"Pi Agent"}),r.jsx("div",{className:"text-[11px] text-muted-foreground",children:e===null?"Inspector-wide analysis":"Session analysis"})]})]}),r.jsxs("div",{className:"mt-3 grid grid-cols-2 gap-2",children:[r.jsxs(Is,{value:a,onValueChange:j,children:[r.jsx(zs,{className:"h-8 border-0 bg-black/25 text-xs shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"Provider"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__auto__",children:"Auto provider"}),s.map(N=>r.jsxs(pt,{value:N.id,children:[N.name," / ",f6(N)]},N.id))]})]}),r.jsxs(Is,{value:c,onValueChange:u,children:[r.jsx(zs,{className:"h-8 border-0 bg-black/25 text-xs shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"Model"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__auto__",children:"Auto model"}),v.map(N=>r.jsx(pt,{value:N,children:N},N))]})]})]}),r.jsx("textarea",{value:o,onChange:_,className:"mt-2 min-h-24 w-full resize-y rounded-md bg-black/25 px-3 py-2 text-xs leading-5 text-foreground outline-none shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring",placeholder:"Ask Pi Agent about this session..."}),r.jsxs("button",{type:"button",onClick:S,disabled:!y,className:"mt-2 inline-flex h-8 w-full items-center justify-center gap-2 rounded-md bg-cyan-400/12 px-3 text-xs font-medium text-cyan-100 shadow-[inset_0_0_0_1px_rgba(103,232,249,0.18)] transition-colors hover:bg-cyan-400/18 disabled:cursor-not-allowed disabled:opacity-50",children:[b?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(j_,{className:"size-3.5"}),r.jsx("span",{children:b?"Thinking...":"Ask Pi"})]}),s.length===0&&r.jsx("p",{className:"mt-2 text-[11px] leading-5 text-muted-foreground",children:"Configure a Provider with Responses, Chat, or Anthropic URL to enable Pi Agent."}),m!==""&&r.jsx("p",{className:"mt-2 break-words font-mono text-[10px] text-cyan-100/70",children:m}),f!==""&&r.jsx("div",{className:"mt-3 max-h-64 overflow-y-auto whitespace-pre-wrap rounded-md bg-black/25 p-3 text-xs leading-5 text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.05)]",children:f}),t===0&&r.jsx("p",{className:"mt-2 text-[11px] leading-5 text-muted-foreground",children:"No logs are visible in this scope yet; Pi Agent can still answer Provider setup questions."})]})}function m6(e){const t=new Map;for(const n of e){const s=n.logs;for(let o=1;o<s.length;o++){const i=s[o-1],a=s[o];i===void 0||a===void 0||t.set(a.id,{creation:zd(i.cacheCreationInputTokens,a.cacheCreationInputTokens),read:zd(i.cacheReadInputTokens,a.cacheReadInputTokens)})}}return t}function zd(e,t){return t===null||e===null?null:t>e?{direction:"up",delta:t-e}:t<e?{direction:"down",delta:e-t}:null}function ng(e){return e.filter(t=>t.responseStatus===null).length}function sg(e){for(const t of e){const n=t.userAgent;if(n!=null&&n!=="")return n}return null}function g6(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function rg(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}function x6(e){return hc({userAgent:sg(e.logs),conversationId:e.conversationId,clientProjectFolder:rg(e.logs)})}function b6(e){if(e===null||e==="")return"Unknown IDE";const t=e.split(/[ /;]/)[0]??"";return t===""?"Unknown IDE":t}function v6(e,t){const n=wi(e);return n!==null?n:b6(t)}function Uo(e){return e===null||e===""?"unknown":String(e)}function y6(e,t,n){return e!=="unknown"?e:`unknown:${Uo(t)}:${Uo(n)}`}function w6(e,t){return`${Uo(e)}:${Uo(t)}`}function sl(e){return[...e].sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}function Pd(e){return sl(e)[0]?.timestamp??""}function ua(e){return[...e].sort((t,n)=>Pd(t.logs).localeCompare(Pd(n.logs)))}function _6(e){const t=new Map;for(const s of e){const o=sg(s.logs),i=rg(s.logs),a=x6(s),l=y6(a,o,i);let c=t.get(l);c===void 0&&(c={id:l,client:a,label:v6(a,o),userAgent:o,processes:new Map,logs:[]},t.set(l,c)),c.logs.push(...s.logs);const u=g6(s.logs),f=`${l}:${w6(u,i)}`;let d=c.processes.get(f);d===void 0&&(d={id:f,clientPid:u,clientProjectFolder:i,sessions:[],logs:[]},c.processes.set(f,d)),d.sessions.push(s),d.logs.push(...s.logs)}const n=[];for(const s of t.values()){const o=ua([...s.processes.values()].map(i=>({id:i.id,clientPid:i.clientPid,clientProjectFolder:i.clientProjectFolder,sessions:ua(i.sessions),logs:sl(i.logs)})));n.push({id:s.id,client:s.client,label:s.label,userAgent:s.userAgent,processes:o,logs:sl(s.logs)})}return ua(n)}function Bo(e){return e<=0?"0":Fe(e)}function og(e){let t=0,n=0;for(const s of e)s.inputTokens!==null&&s.inputTokens!==void 0&&(t+=s.inputTokens),s.outputTokens!==null&&s.outputTokens!==void 0&&(n+=s.outputTokens);return{inputTokens:t,outputTokens:n}}function k6(e){let t=0;for(const n of e)t+=n.sessions.length;return t}function j6(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 s=t[t.length-2];return s===void 0?n:`${s}/${n}`}function Wo({label:e,value:t,className:n}){return r.jsxs("span",{className:ae("bg-white/[0.045] inline-flex h-7 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground",n),children:[r.jsx("span",{className:"font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e}),r.jsx("span",{className:"font-mono tabular-nums text-slate-100",children:t})]})}function ig({count:e,label:t="Turn open"}){return r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1.5 rounded-md bg-amber-300/[0.10] px-1.5 font-mono text-[10px] uppercase tracking-[0.14em] text-amber-100/90 ring-1 ring-amber-200/10",title:`${e} turn${e!==1?"s":""} not finished yet`,children:[r.jsx(Qe,{className:"size-3 animate-spin"}),t,e>1&&r.jsxs("span",{className:"tabular-nums",children:["x",e]})]})}function ag(){return r.jsx("span",{className:"pointer-events-none absolute inset-x-3 bottom-0 h-px overflow-hidden rounded-full bg-white/[0.06]","aria-hidden":"true",children:r.jsx("span",{className:"absolute inset-y-0 left-0 w-1/3 animate-pulse rounded-full bg-amber-200/65 shadow-[0_0_14px_rgba(252,211,77,0.32)]"})})}function S6({groups:e,...t}){const n=p.useMemo(()=>_6(e),[e]),[s,o]=p.useState(()=>new Set),[i,a]=p.useState(()=>new Set),l=p.useCallback(u=>{o(f=>{const d=new Set(f);return d.has(u)?d.delete(u):d.add(u),d})},[]),c=p.useCallback(u=>{a(f=>{const d=new Set(f);return d.has(u)?d.delete(u):d.add(u),d})},[]);return r.jsx("div",{className:"space-y-4",children:n.map(u=>r.jsx(C6,{group:u,collapsed:s.has(u.id),collapsedProcessIds:i,onToggleIde:()=>l(u.id),onToggleProcess:c,conversationProps:t},u.id))})}function C6({group:e,collapsed:t,collapsedProcessIds:n,onToggleIde:s,onToggleProcess:o,conversationProps:i}){const a=og(e.logs),l=k6(e.processes),c=e.logs.length,u=ng(e.logs),f=u>0;return r.jsxs("section",{className:ae("bg-card/75 shadow-sm relative isolate overflow-hidden rounded-[8px]",f&&"bg-card/85"),"data-ide-group":e.id,children:[r.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:s,"aria-expanded":!t,children:[e.client==="unknown"?r.jsx("span",{className:"bg-white/[0.045] inline-flex size-10 shrink-0 items-center justify-center rounded-[8px] text-slate-200",children:r.jsx(Kw,{className:"size-5"})}):r.jsx(_i,{client:e.client,className:"size-10 rounded-[8px] text-cyan-100"}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:"truncate text-sm font-semibold text-slate-50",title:e.userAgent??e.label,children:e.label}),r.jsx("span",{className:"rounded 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"}),f&&r.jsx(ig,{count:u,label:"Turn open"})]}),r.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[r.jsxs("span",{children:[e.processes.length," process",e.processes.length!==1?"es":""]}),r.jsxs("span",{children:[l," session",l!==1?"s":""]}),r.jsxs("span",{children:[c," log",c!==1?"s":""]})]})]}),r.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[r.jsx(Wo,{label:"IN",value:Bo(a.inputTokens)}),r.jsx(Wo,{label:"OUT",value:Bo(a.outputTokens)})]}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?r.jsx(Et,{className:"size-4"}):r.jsx(it,{className:"size-4"})})]}),f&&r.jsx(ag,{}),!t&&r.jsx("div",{className:"space-y-3 px-3 pb-3 pt-2 sm:px-4",children:e.processes.map(d=>r.jsx(N6,{group:d,collapsed:n.has(d.id),onToggle:()=>o(d.id),conversationProps:i},d.id))})]})}function N6({group:e,collapsed:t,onToggle:n,conversationProps:s}){const o=og(e.logs),i=j6(e.clientProjectFolder),a=e.sessions.length,l=e.logs.length,c=ng(e.logs),u=c>0,f=e.clientPid!==null&&e.clientPid!==void 0?`PID ${e.clientPid}`:"process";return r.jsxs("section",{className:"relative pl-5",children:[r.jsx("span",{className:"absolute bottom-1 left-2 top-1 w-px bg-white/[0.055]","aria-hidden":"true"}),r.jsxs("div",{className:"bg-black/[0.10] relative overflow-hidden rounded-[8px]",children:[r.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:[r.jsx("span",{className:"bg-white/[0.045] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-amber-100",children:r.jsx(pw,{className:"size-4"})}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"font-mono text-xs font-semibold tabular-nums text-slate-100",children:f}),u&&r.jsx(ig,{count:c,label:"Turn open"}),i!==null&&r.jsxs("span",{className:"inline-flex min-w-0 items-center gap-1 text-xs text-muted-foreground",title:e.clientProjectFolder??i,children:[r.jsx(Pw,{className:"size-3 shrink-0"}),r.jsx("span",{className:"truncate font-mono",children:i})]})]}),r.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[r.jsxs("span",{children:[a," session",a!==1?"s":""]}),r.jsxs("span",{children:[l," log",l!==1?"s":""]})]})]}),r.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[r.jsx(Wo,{label:"IN",value:Bo(o.inputTokens)}),r.jsx(Wo,{label:"OUT",value:Bo(o.outputTokens)})]}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-7 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?r.jsx(Et,{className:"size-4"}):r.jsx(it,{className:"size-4"})})]}),u&&r.jsx(ag,{}),!t&&r.jsx("div",{className:"space-y-2 p-2 pt-1 sm:p-3 sm:pt-2",children:e.sessions.map(d=>r.jsx(_A,{group:d,...s,showClientIdentity:!1,showLogClientMetadata:!1,showProcessMetadata:!1},d.id))})]})]})}const Ho="data-nav-id",T6="data-nav-action";function Od(e){return Array.from(e.querySelectorAll(`[${Ho}]`))}function Md(e){return e instanceof HTMLElement}function E6(e,t){let n=e;for(;n!==null&&n!==t;){if(n.hasAttribute(Ho))return n;n=n.parentElement}return e.hasAttribute(Ho)?e:null}function da(e){const t=e.getAttribute(T6);return t==="toggle"||t==="expand"||t==="collapse"?t:null}function Ys(e){e.focus({preventScroll:!0}),e.scrollIntoView({block:"nearest",behavior:"smooth"})}function Xs(e,t){return e[t]??null}function lg(e){const t=e.tagName;return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable)}function Ld(e){const t=e.tagName;return t==="BUTTON"||t==="A"||lg(e)?!0:e.closest("[role='button'],[role='menuitem'],[role='option']")!==null}function A6(e){return e.closest("[role='dialog'],[role='menu'],[role='listbox']")!==null?!0:document.querySelector("[role='dialog'],[role='menu'],[role='listbox']")!==null}function I6(){const e=window.getSelection();return e===null?!1:e.type==="Range"&&e.toString().length>0}function eo(e,t){return e.key===t&&e.shiftKey}function R6(e,t,n={}){const s=t??e,o=n.pageWide===!0,i=p.useCallback(a=>{const l=e.current,c=s.current;if(!l||!c)return;const u=a.target;if(!Md(u)||u!==c)return;const f=Od(l),d=Xs(f,0);d!==null&&Ys(d)},[e,s]);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(!Md(u)||lg(u)||I6())return;const f=c.contains(u);if(f&&Ld(u)&&!u.hasAttribute(Ho)||!f&&(!o||Ld(u)||A6(u)))return;const d=Od(c);if(d.length===0)return;const m=E6(u,c),h=m!==null?d.indexOf(m):-1;let b=!1;switch(l.key){case"ArrowUp":case"W":{if(l.shiftKey&&l.key==="ArrowUp"||l.key==="W"&&!eo(l,"W"))break;l.preventDefault();const g=h>0?h-1:h===-1?d.length-1:-1;if(g!==-1){const x=Xs(d,g);x!==null&&Ys(x)}b=!0;break}case"ArrowDown":case"S":{if(l.shiftKey&&l.key==="ArrowDown"||l.key==="S"&&!eo(l,"S"))break;l.preventDefault();const g=h<d.length-1?h+1:h===-1?0:-1;if(g!==-1){const x=Xs(d,g);x!==null&&Ys(x)}b=!0;break}case"ArrowLeft":case"A":{if(l.shiftKey&&l.key==="ArrowLeft"||l.key==="A"&&!eo(l,"A")||m===null)break;if(l.preventDefault(),da(m)==="collapse")m.click();else if(h>0){const x=Xs(d,h-1);x!==null&&Ys(x)}b=!0;break}case"ArrowRight":case"D":{if(l.shiftKey&&l.key==="ArrowRight"||l.key==="D"&&!eo(l,"D")||m===null)break;if(l.preventDefault(),da(m)==="expand")m.click();else if(h<d.length-1){const x=Xs(d,h+1);x!==null&&Ys(x)}b=!0;break}case" ":{if(m===null)break;l.preventDefault(),da(m)!==null&&m.click(),b=!0;break}}b&&l.stopPropagation()};return document.addEventListener("keydown",a,{capture:!0}),()=>document.removeEventListener("keydown",a,{capture:!0})},[e,o,s]),p.useEffect(()=>(document.addEventListener("focusin",i),()=>document.removeEventListener("focusin",i)),[i])}const z6={system:"System",user:"User",assistant:"Assistant",tool:"Tool Results",tools:"Tool Definitions"},P6={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"},O6={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"},fa=12,to=1,Dd=80,$d=24;function M6(e){return e.length<=$d?e:`${e.slice(0,$d-3)}...`}function L6(e){const t=e.replace(/\s+/g," ").trim();return t.length<=Dd?t:`${t.slice(0,Dd)}...`}function no(e){return e>=10?`${e.toFixed(0)}%`:e>=1?`${e.toFixed(1)}%`:e>0?"<1%":"0%"}const D6=p.memo(function({segments:t,totalTokens:n,showLabels:s=!0,onActivate:o}){const i=p.useMemo(()=>n>0?n:t.reduce((x,v)=>x+v.size,0),[t,n]),a=t.slice(0,fa),l=t.slice(fa),c=l.reduce((x,v)=>x+v.size,0),u=l.length,f=fa,d=f+u-1,m=u>0,h=o!==void 0,b=p.useMemo(()=>a.reduce((x,v)=>x+v.size,0),[a]),g=p.useMemo(()=>`Request context: ~${Fe(i)} tokens across ${t.length} segment${t.length===1?"":"s"}`,[t.length,i]);return t.length===0||i<=0?r.jsx("div",{role:"img","aria-label":g,className:"h-6"}):r.jsx(Sn,{delayDuration:150,children:r.jsxs("div",{role:"img","aria-label":g,className:"flex flex-col gap-1.5",children:[r.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,v)=>{const y=i>0?x.size/i*100:0,_=Math.max(to,y),j=ae("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",P6[x.role],h?O6[x.role]:""),S={width:`${_}%`},N=`${x.label}, ${no(y)}, ~${Fe(x.size)} tokens`;return r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:h?r.jsx("button",{type:"button",role:"button",tabIndex:0,onClick:()=>o(x),onKeyDown:T=>{(T.key==="Enter"||T.key===" ")&&(T.preventDefault(),o(x))},"data-anatomy-path":x.path,"aria-label":N,className:j,style:S}):r.jsx("span",{"aria-label":N,className:j,style:S})}),r.jsxs(ft,{side:"bottom",className:"max-w-sm text-xs p-2 space-y-0.5",children:[r.jsxs("div",{className:"font-semibold",children:[x.label," - ",no(y)," - ~",Fe(x.size)," ","tokens"]}),r.jsx("div",{className:"text-muted-foreground",children:z6[x.role]}),r.jsxs("div",{className:"text-muted-foreground",children:[x.characters.toLocaleString()," chars"]}),x.text.length>0&&r.jsx("div",{className:"text-muted-foreground/90 break-words whitespace-pre-wrap",children:L6(x.text)})]})]},`${x.path}-${v}`)}),m&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.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(to,c/i*100)}%`},children:["... +",u]})}),r.jsxs(ft,{side:"bottom",className:"text-xs",children:[u," more segment",u===1?"":"s"," (indices"," ",f,"-",d,")"]})]})]}),s&&r.jsxs("div",{className:"flex w-full gap-1 text-[10px] text-muted-foreground",children:[a.map((x,v)=>{const y=i>0?x.size/i*100:0,_=Math.max(to,y);return r.jsxs("div",{className:"flex flex-col gap-0.5 truncate",style:{width:`${_}%`},title:`${x.label} - ${no(y)} - ~${Fe(x.size)} tokens`,children:[r.jsx("span",{className:"truncate font-mono text-foreground/80",children:M6(x.label)}),r.jsxs("span",{className:"truncate font-mono text-muted-foreground/70",children:[no(y)," - ~",Fe(x.size)]})]},`label-${x.path}-${v}`)}),m&&r.jsxs("div",{className:"flex flex-col gap-0.5 truncate text-muted-foreground",style:{width:`${Math.max(to,c/i*100)}%`},children:[r.jsxs("span",{className:"truncate font-mono text-foreground/60",children:["... +",u]}),r.jsxs("span",{className:"truncate font-mono text-muted-foreground/60",children:["~",Fe(c)]})]})]}),b<i*.1&&r.jsx("div",{className:"h-0"})]})})}),cg=.75,ug=.9,rl=8e3,$6=.35,dg=40,fg=160,F6=5,U6=8,B6=18,W6=6e4,H6=.7,Fd=3e3,V6=.3,Ud=160,Z6=new Set(["answer","body","content","data","error","message","markdown","output","response","result","stderr","stdout","text","transcript"]),q6=["context_window","contextWindow","context_length","contextLength","max_context_length","maxContextLength","max_input_tokens","maxInputTokens"],G6=["max_tokens","maxTokens","max_completion_tokens","maxCompletionTokens","max_output_tokens","maxOutputTokens"],K6=[{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"]}],J6={system:"System",user:"User messages",assistant:"Assistant messages",tool:"Tool results",tools:"Tool definitions"};function Y6(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 pg(e,t){for(const n of t){const s=Y6(ke(e,n));if(s!==null)return s}return null}function X6(e){const t=ke(e,"model");if(typeof t!="string")return null;const n=t.trim();return n===""?null:n}function Q6(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 e8(e,t,n=[]){const s=pg(t,q6);if(s!==null)return{tokens:s,label:"Request metadata",source:"request"};const o=MI(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 K6)if(Q6(i,a))return{tokens:a.tokens,label:`${a.family} local rule`,source:"model-rule"};return{tokens:null,label:"No local rule",source:"unknown"}}function t8(e){return e<0?0:e>1?1:e}function n8(e){return e===null?"unknown":e>=ug?"danger":e>=cg?"watch":"ok"}function s8(e,t){return e.filter(n=>n.role===t).reduce((n,s)=>n+s.size,0)}function r8(e,t){return["system","user","assistant","tool","tools"].map(s=>{const o=s8(e,s);return{role:s,label:J6[s],tokens:o,percent:t>0?o/t:0}}).filter(s=>s.tokens>0).sort((s,o)=>o.tokens-s.tokens)}function ol(e){return e.replace(/\s+/g," ").trim().toLowerCase()}function o8(e){const t=e.replace(/\s+/g," ").trim();return t.length<=Ud?t:`${t.slice(0,Ud-3)}...`}function i8(e){return{role:e.role,label:e.label,path:e.path,tokens:e.tokens,characters:e.characters}}function a8(e){return{role:e.role,label:e.label,path:e.path,tokens:e.size,characters:e.characters,text:e.text}}function l8(e){const t=e.trim();return t.startsWith("{")||t.startsWith("[")}function c8(e){if(!l8(e))return null;try{return JSON.parse(e)}catch{return null}}function u8(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function d8(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 f8(e){const t=d8(e);return t===null?!1:Z6.has(u8(t))}function p8(e){return e.map(t=>t.startsWith("[")?t:`.${t}`).join("").replace(/^\./,"")}function h8(e,t,n){const s=bc(t);if(s<fg)return null;const o=xc(t);return o<dg?null:{role:e.role,label:`${e.label} ${p8(n)}`,path:e.path,tokens:o,characters:s,text:t}}function il({value:e,segment:t,path:n,depth:s,candidates:o}){if(!(o.length>=U6)&&!(s>F6)){if(typeof e=="string"){if(!f8(n))return;const i=h8(t,e,n);i!==null&&o.push(i);return}if(Array.isArray(e)){e.forEach((i,a)=>il({value:i,segment:t,path:[...n,`[${String(a)}]`],depth:s+1,candidates:o}));return}vc(e)&&Object.entries(e).forEach(([i,a])=>il({value:a,segment:t,path:[...n,i],depth:s+1,candidates:o}))}}function m8(e){const t=a8(e),n=c8(e.text);if(n===null)return[t];const s=[];il({value:n,segment:e,path:[],depth:0,candidates:s});const o=ol(e.text),i=new Set([o]),a=s.filter(l=>{const c=ol(l.text);return c===""||i.has(c)?!1:(i.add(c),!0)});return[t,...a]}function g8(e){const t=new Map;for(const s of e){const o=m8(s);for(const i of o){if(i.tokens<dg||i.characters<fg)continue;const a=ol(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 s of t.values()){if(s.candidates.length<2)continue;const o=s.candidates[0]??null;if(o===null)continue;const i=s.tokens-o.tokens;n.push({key:`${o.path}:${o.label}:${String(s.candidates.length)}:${String(s.tokens)}`,count:s.candidates.length,totalTokens:s.tokens,repeatedTokens:i,preview:o8(o.text),firstLabel:o.label,segments:s.candidates.map(i8)})}return n.sort((s,o)=>o.repeatedTokens-s.repeatedTokens||o.totalTokens-s.totalTokens)}function x8(e){if(e.length===0)return null;const t=e.length,n=e.reduce((o,i)=>o+i.count,0),s=e.reduce((o,i)=>o+i.repeatedTokens,0);return{kind:"duplicate",severity:s>=rl?"danger":"watch",title:"Duplicate context",detail:`${String(n)} repeated blocks across ${String(t)} group${t===1?"":"s"}, ~${String(s)} repeated tokens.`}}function b8(e){return e.reduce((t,n)=>t+n.repeatedTokens,0)}function v8(e,t,n){const s=[],o=e.find(c=>c.role==="tools")??null;o!==null&&(o.tokens>=rl||o.percent>=$6&&o.tokens>=Fd)&&s.push({kind:"tool-schema",severity:o.tokens>=rl?"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>=Fd&&i.percent>=V6&&s.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>=B6&&(a>=W6||l>=H6)&&s.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.`}),s}function y8({risk:e,contextWindow:t,diagnostics:n,duplicateGroups:s}){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:b8(s)}}function w8({segments:e,inputTokens:t,parsed:n,model:s,providers:o=[]}){const i=e.reduce((N,T)=>N+T.size,0),a=s??X6(n),l=t??i,c=pg(n,G6),u=e8(a,n,o),f=c??0,d=u.tokens===null?null:l+f,m=u.tokens===null?null:u.tokens-l,h=u.tokens===null?null:u.tokens-l-f,b=u.tokens===null||d===null?null:t8(d/u.tokens),g=r8(e,i),x=g[0]??null,v=e.filter(N=>N.role!=="tools").length,y=g8(e),_=x8(y),j=v8(g,i,v);_!==null&&j.unshift(_);const S=n8(b);return{model:a,contextWindow:u,estimatedInputTokens:l,outputReserveTokens:c,windowUsedTokens:d,remainingInputTokens:m,remainingAfterReserveTokens:h,usagePercent:b,riskLevel:S,roleUsages:g,largestRole:x,diagnostics:j,duplicateGroups:y,health:y8({risk:S,contextWindow:u,diagnostics:j,duplicateGroups:y})}}const Vz={watch:cg,danger:ug},Bd=new WeakMap;function _8(e){return e.map(t=>{const n=t.modelMetadata?.map(s=>`${s.model}:${String(s.contextWindow??"")}`).join(",")??"";return`${t.id}:${t.updatedAt}:${t.models.join(",")}:${n}`}).join("|")}function k8(e){if(e===null)return null;try{return JSON.parse(e)}catch{return null}}function j8(e){return{role:e.role,label:e.label,size:e.tokens,characters:e.tokens*4,text:"",path:`role:${e.role}`}}function S8(e,t){const n=k8(e.rawRequestBody);if(n===null)return null;const o=m0(dr(e)).anatomySegments(n);if(o===null)return null;const i=w8({segments:o,inputTokens:e.inputTokens??null,parsed:n,model:e.model,providers:t}),a=i.model??e.model??"Unknown model",l=i.roleUsages.map(j8);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 C8(e,t,n){const s=Bd.get(e);if(s!==void 0&&s.id===e.id&&s.rawRequestBody===e.rawRequestBody&&s.inputTokens===e.inputTokens&&s.model===e.model&&s.path===e.path&&s.apiFormat===e.apiFormat&&s.timestamp===e.timestamp&&s.providersSignature===n)return s.snapshot;const o=S8(e,t);return Bd.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 N8(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 Wd(e){switch(e){case"danger":return 4;case"watch":return 3;case"unknown":return 2;case"ok":return 1}}function T8(e,t){const n=Wd(t.latest.riskLevel)-Wd(e.latest.riskLevel);if(n!==0)return n;const s=e.peak.usagePercent??-1,i=(t.peak.usagePercent??-1)-s;return i!==0?i:t.latest.logId-e.latest.logId}function E8(e,t){return e.usagePercent===null||t.usagePercent===null?null:(t.usagePercent-e.usagePercent)*100}function A8(e){for(let t=1;t<e.length;t++){const n=e[t-1],s=e[t];if(!(n===void 0||s===void 0)&&n.id>s.id)return[...e].sort((o,i)=>o.id-i.id)}return e}function I8(e,t=[]){const n=A8(e),s=_8(t),o=new Map;for(const a of n){const l=C8(a,t,s);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:N8(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:E8(a.first,a.latest)})).sort(T8)}}function nn(e){return e.length<=30?e:`${e.slice(0,12)}...${e.slice(-12)}`}function R8(e){const t=new Map;for(const n of e)for(let s=0;s<n.logs.length;s+=1){const o=n.logs[s];o!==void 0&&t.set(o.id,s+1)}return t}function Hd(e,t){return t.get(e.id)??e.id}function z8(e){return e==="full"}function P8(e,t){const n=t>0;return{redacted:n,raw:n&&z8(e)}}function Vd(e){let t=0,n=0;for(const s of e)s.inputTokens!==null&&(t+=s.inputTokens),s.outputTokens!==null&&(n+=s.outputTokens);return{totalIn:t,totalOut:n}}function hg(e,t){const n=e[0],s=e[e.length-1];return n===void 0||s===void 0?null:Dl(n.timestamp,s.timestamp,t)}function O8(e){for(const t of e)if(t.userAgent!==null&&t.userAgent!==void 0&&t.userAgent!=="")return t.userAgent;return null}function M8(e){return e.error!==null&&e.error!==void 0&&e.error.length>0?!0:e.responseStatus!==null&&e.responseStatus>=400}function L8(e){const t=new Set;for(const s of e)s.model!==null&&s.model.length>0&&t.add(s.model);const n=[...t].sort();return n.length===0?"Model unknown":n.length===1?n[0]??"Model unknown":`${n.length} models`}function D8(e){const t=new Set;for(const s of e)s.providerName!==null&&s.providerName!==void 0&&s.providerName.length>0&&t.add(s.providerName);const n=[...t].sort();return n.length===0?"Provider unknown":n.length===1?n[0]??"Provider unknown":`${n.length} providers`}function $8(e){if(e<1e3)return`${e}ms`;if(e<6e4){const o=e/1e3;return`${o<10?o.toFixed(1):o.toFixed(0)}s`}const t=Math.round(e/1e3),n=Math.floor(t/60),s=t%60;return`${n}m ${s}s`}function F8(e,t){return`${Fe(e)} in / ${Fe(t)} out`}function U8(e,t){if(e.length===0)return 0;if(t.length===0)return Ka(e).length;let n=0;for(const s of t)n+=Ka(s.logs).length;return n}function B8({stopReason:e,pending:t,lastFailureLogNumber:n}){if(t>0)return{label:"In flight",detail:`${t} request${t===1?"":"s"} pending`,tone:"cool"};if(n!==null&&e===null)return{label:"Error",detail:`Last failed request #${n}`,tone:"danger"};switch(e){case"end_turn":return{label:"End turn",detail:"Assistant completed the turn",tone:"neutral"};case"stop":return{label:"Stop",detail:"Model reached a stop condition",tone:"neutral"};case"length":return{label:"Output limit",detail:"Turn ended at max output tokens",tone:"watch"};case"tool_use":return{label:"Tool call",detail:"Assistant requested a tool",tone:"cool"};case null:return{label:"Unknown",detail:"No finish reason captured",tone:"neutral"}}}function W8(e){if(e===null)return!1;const t=e.toLowerCase();return t.includes("abort")||t.includes("cancel")||t.includes("client disconnected")||t.includes("stream disconnected")||t.includes("connection closed")}function H8({pending:e,failures:t,lengthStops:n,stopReason:s,lastFailure:o}){if(o!==null&&(o.status===499||W8(o.error)))return{label:"Client aborted",detail:`Request #${o.logNumber} ended before completion`,tone:"watch"};if(e>0)return{label:"In flight",detail:`${e} request${e===1?"":"s"} still running`,tone:"cool"};if(o!==null&&o.status!==null&&o.status>=500)return{label:"Provider error",detail:`Request #${o.logNumber} returned HTTP ${o.status}`,tone:"danger"};if(t>0&&o!==null)return{label:"Failed",detail:`Request #${o.logNumber} needs attention`,tone:"danger"};if(n>0||s==="length")return{label:"Output limited",detail:"Model stopped at the output token limit",tone:"watch"};switch(s){case"end_turn":case"stop":return{label:"Completed",detail:"Assistant completed normally",tone:"neutral"};case"tool_use":return{label:"Tool requested",detail:"Assistant handed off to a tool",tone:"cool"};case null:return{label:"Unknown",detail:"No terminal signal captured",tone:"neutral"}}}function V8({logs:e,conversationGroups:t,isLoading:n,timeDisplayFormat:s,slowResponseThresholdSeconds:o}){let i=0,a=0,l=0,c=0,u=0,f=0,d=null,m=null,h=null,b=null,g=null,x=0,v=0,y=0,_=null;const j=o*1e3;for(let I=0;I<e.length;I+=1){const P=e[I];if(P===void 0)continue;const L=I+1,E=vp(P);E!==null&&(d=E),E==="length"&&(c+=1),M8(P)&&(i+=1,m=L,h={logNumber:L,status:P.responseStatus,error:P.error??null}),P.responseStatus===null&&(a+=1),o>0&&P.elapsedMs!==null&&P.elapsedMs>=j&&(l+=1),P.inputTokens!==null&&(u+=P.inputTokens),P.outputTokens!==null&&(f+=P.outputTokens),P.elapsedMs!==null&&(b===null||P.elapsedMs>b)&&(b=P.elapsedMs,g=L);const D=P.inputTokens??0,w=P.outputTokens??0,$=D+w;$>x&&(x=$,v=D,y=w,_=L)}const S=n||a>0&&i===0?"rolling":i>0?"failed":l>0||c>0?"watch":"clear",N=S==="rolling"?"Rolling":S==="failed"?"Failure":S==="watch"?"Watch":"Clear",T=B8({stopReason:d,pending:a,lastFailureLogNumber:m}),A=H8({pending:a,failures:i,lengthStops:c,stopReason:d,lastFailure:h});return{status:S,statusLabel:N,modelLabel:L8(e),providerLabel:D8(e),requests:e.length,turns:U8(e,t),failures:i,pending:a,slow:l,lengthStops:c,timeRange:hg(e,s),tokenLabel:`${Fe(u)} in / ${Fe(f)} out`,finishLabel:T.label,finishDetail:T.detail,finishTone:T.tone,outcomeLabel:A.label,outcomeDetail:A.detail,outcomeTone:A.tone,slowestLabel:b===null?"n/a":$8(b),slowestDetail:g===null?"Latency pending":`Request #${g}`,heaviestDetail:_===null?"Tokens pending":`#${_} ${F8(v,y)}`}}function Z8(e){switch(e){case"cool":return"text-cyan-100";case"danger":return"text-red-100";case"watch":return"text-amber-100";case"neutral":return"text-foreground"}}function q8(e){switch(e){case"rolling":return"cool";case"failed":return"danger";case"watch":return"watch";case"clear":return"neutral"}}function G8(e){return e.pending>0?`${e.pending} pending / ${e.failures} failed`:e.lengthStops>0?`${e.lengthStops} output limit / ${e.failures} failed`:`${e.failures} failed / ${e.slow} slow`}function fs({label:e,value:t,detail:n,icon:s,tone:o="neutral"}){return r.jsxs("div",{className:"min-w-0 border-t border-white/10 px-4 py-3",children:[r.jsxs("div",{className:"flex items-center gap-1 text-[10px] uppercase text-muted-foreground",children:[s,e]}),r.jsx("div",{className:ae("mt-2 font-mono text-sm font-semibold",Z8(o)),children:t}),r.jsx("div",{className:"mt-1 font-mono text-[11px] leading-snug text-muted-foreground",children:n})]})}function K8({stats:e}){return e.requests===0?null:r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-4 overflow-hidden rounded-[8px]",children:[r.jsx("div",{className:"px-4 py-3",children:r.jsxs("div",{className:"flex flex-wrap items-end justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 text-[10px] font-semibold uppercase text-muted-foreground",children:[r.jsx(tw,{className:"size-3.5 text-slate-300"}),"Flight Recorder"]}),r.jsx("div",{className:"mt-2 min-w-0 font-mono text-sm font-semibold text-foreground",children:e.modelLabel})]}),r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-4 gap-y-1 text-[11px] text-muted-foreground",children:[r.jsx("span",{className:"min-w-0 font-mono",children:e.providerLabel}),r.jsx("span",{className:"min-w-0 font-mono",children:e.timeRange??"Timeline pending"})]})]})}),r.jsxs("div",{className:"grid grid-cols-2 border-t border-white/10 md:grid-cols-3 2xl:grid-cols-6",children:[r.jsx(fs,{label:"Status",value:e.statusLabel,detail:G8(e),tone:q8(e.status)}),r.jsx(fs,{label:"Turns",value:String(e.turns),detail:e.finishLabel,icon:r.jsx(Iw,{className:"size-3 text-muted-foreground"}),tone:e.finishTone}),r.jsx(fs,{label:"Requests",value:String(e.requests),detail:`${e.failures} failed / ${e.slow} slow`,icon:r.jsx(_a,{className:"size-3 text-muted-foreground"}),tone:e.failures>0?"danger":"neutral"}),r.jsx(fs,{label:"Peak",value:e.slowestLabel,detail:e.slowestDetail,icon:r.jsx(M_,{className:"size-3 text-muted-foreground"}),tone:e.slow>0?"watch":"neutral"}),r.jsx(fs,{label:"Tokens",value:e.tokenLabel,detail:e.heaviestDetail,icon:r.jsx(Ll,{className:"size-3 text-muted-foreground"})}),r.jsx(fs,{label:"Outcome",value:e.outcomeLabel,detail:e.outcomeDetail,tone:e.outcomeTone})]})]})}function J8({pinnedSessionId:e,selectedSession:t,sessions:n,logs:s}){if(e!==void 0){const a=s.filter(l=>l.sessionId===e);return a.length===0?null:{label:e,logs:a,showBackLink:!0}}if(t!=="__all__"){const a=s.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&&s.every(l=>l.sessionId===o)?{label:o,logs:[...s],showBackLink:!1}:n.length===0&&s.length>0&&s.every(a=>a.sessionId===null)?{label:"Visible requests",logs:[...s],showBackLink:!1}:null}function sr(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 Y8(e){return e===null?"n/a":Math.abs(e)<.1?"0%":`${e>0?"+":""}${e.toFixed(1)}%`}function al(e){return e===null||!Number.isFinite(e)?0:Math.min(Math.max(e*100,0),100)}function X8(e,t){if(t===null)return null;const n=al(e),s=al(t);return s<=0||Math.abs(s-n)<.5?null:s}function Q8(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 ez(e){const t=e.latest.contextWindow.tokens;return t===null?"Context window unknown":`Context window ${Mp(t)}`}const tz=["score","decision","final_status","validation_pass_ratio","semantic_memory_score","opencode_exit","actual_model","run_dir","workspace","project_dir","work_dir"];function mg(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 pa(e,t){if(e===null)return null;const n=e.metadata[t];return n===void 0?null:mg(n)}function nz(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 sz(e){const t=[];for(const n of tz){const s=e.metadata[n];if(s===void 0)continue;const o=mg(s);o!==null&&t.push({key:n,value:o})}return t}function Zd({memberships:e,defaultOpen:t=!1}){const[n,s]=p.useState(t);if(e.length===0)return null;const o=e[0],i=o?.member??null,a=pa(i,"score"),l=pa(i,"decision"),c=pa(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(f=>f!==null&&f.label.length>0&&f.value.length>0);return r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] text-xs",children:[r.jsxs("button",{type:"button",onClick:()=>s(f=>!f),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:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"font-semibold text-foreground",children:"Case File"}),o!==void 0&&r.jsx("span",{className:"truncate text-muted-foreground",title:o.groupTitle,children:o.groupTitle}),r.jsxs("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:[e.length," group",e.length===1?"":"s"]})]}),u.length>0&&r.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(f=>r.jsx("span",{className:ae("rounded border px-1.5 py-0.5 font-mono text-[10px]",nz(f.value)),children:f.label},f.label))})]}),n?r.jsx(Rl,{className:"size-4 shrink-0 text-muted-foreground"}):r.jsx(it,{className:"size-4 shrink-0 text-muted-foreground"})]}),n&&r.jsx("div",{className:"space-y-2 border-t border-white/10 px-3 py-2",children:e.map(f=>{const d=f.member,m=sz(d);return r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"truncate font-medium text-foreground",title:f.groupTitle,children:f.groupTitle}),r.jsx("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:f.groupStatus}),d.status!==null&&r.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["member ",d.status]})]}),r.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[r.jsx("span",{className:"font-mono",title:d.sessionId,children:nn(d.sessionId)}),d.label!==null&&r.jsx("span",{children:d.label}),d.provider!==null&&r.jsx("span",{children:d.provider}),d.model!==null&&r.jsx("span",{className:"font-mono",children:d.model}),d.runId!==null&&r.jsxs("span",{className:"font-mono",title:d.runId,children:["run ",nn(d.runId)]})]}),m.length>0&&r.jsx("div",{className:"mt-2 grid gap-1 sm:grid-cols-2 xl:grid-cols-3",children:m.map(h=>r.jsxs("div",{className:"border border-border bg-muted/40 min-w-0 rounded-md px-2 py-1",children:[r.jsx("div",{className:"font-mono text-[10px] text-muted-foreground",children:h.key}),r.jsx("div",{className:"truncate font-mono text-[11px] text-foreground",title:h.value,children:h.value})]},h.key))})]},`${f.groupId}:${d.id}`)})})]})}function rz({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],s=e[e.length-1],o=n===void 0||s===void 0?"Current page":`#${n.id}-#${s.id}`;return t.total===null?`Showing ${e.length} logs (${o})`:t.total<=e.length?`Showing all ${t.total} logs`:`Showing ${e.length} of ${t.total} logs (${o})`}function so({label:e,title:t,icon:n,disabled:s,onClick:o}){return r.jsxs("button",{type:"button",onClick:o,disabled:s,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,r.jsx("span",{children:e})]})}function oz(e){return`${Math.max(0,Math.ceil(e/1e3)).toString()}s`}function ho({progress:e}){const t=Math.min(1,e.elapsedMs/e.timeoutMs),n=Math.max(4,Math.round(t*100)),s=Math.max(0,e.timeoutMs-e.elapsedMs),o=t>=.75,i=[e.loadedLogs>0?`${e.loadedLogs.toString()} logs`:null,e.loadedPages>0?`${e.loadedPages.toString()} page${e.loadedPages===1?"":"s"}`:null,`${oz(s)} before timeout`].filter(a=>a!==null);return r.jsxs("div",{className:"min-w-0 space-y-1 px-1 pb-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-3 font-mono text-[10px] text-muted-foreground",children:[r.jsx("span",{className:"min-w-0 truncate",children:e.label}),r.jsx("span",{className:ae("shrink-0 tabular-nums",o&&"text-amber-300"),children:i.join(" / ")})]}),r.jsx("div",{className:"h-1.5 overflow-hidden rounded-full bg-white/[0.06]",children:r.jsx("div",{className:ae("h-full rounded-full transition-all duration-300",o?"bg-amber-300/80":"bg-cyan-300/70"),style:{width:`${n.toString()}%`}})})]})}function qd({logs:e,pagination:t,embedded:n=!1}){if(t===void 0)return null;const s=t.isLoading;return r.jsxs("div",{className:ae("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:[r.jsxs("div",{className:"w-full min-w-0 px-1 font-mono text-[11px] text-muted-foreground sm:flex-1",children:[rz({logs:e,pagination:t}),t.isLoading&&e.length>0&&r.jsx("span",{className:"ml-2",children:"Loading..."}),t.loadProgress!==void 0&&r.jsx(ho,{progress:t.loadProgress})]}),r.jsxs("div",{className:"flex w-full items-center gap-1 overflow-x-auto sm:w-auto",children:[r.jsx(so,{label:"Oldest",title:"Load the oldest logs in this session",icon:r.jsx(Wy,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOldest}),r.jsx(so,{label:"Older",title:"Load older logs",icon:r.jsx(Ly,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOlder}),r.jsx(so,{label:"Newer",title:"Load newer logs",icon:r.jsx(Et,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewer}),r.jsx(so,{label:"Newest",title:"Load the newest logs in this session",icon:r.jsx(Vy,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewest})]})]})}function iz(e){return`${e} ${e===1?"request":"requests"}`}function Gd(e){return`#${String(e)}`}function Kd(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 az(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 lz(e){switch(e){case"risk":return"Risk";case"optimizable":return"Optimizable";case"ok":return"OK"}}const cz=10,uz=80;function dz(e){e.setAttribute("data-deep-link-highlight","true"),window.setTimeout(()=>{e.removeAttribute("data-deep-link-highlight")},1800)}function fz(e){const t=document.getElementById(`log-${String(e)}`);return t instanceof HTMLElement?(t.scrollIntoView({block:"center",behavior:"smooth"}),t.focus({preventScroll:!0}),dz(t),!0):!1}function gg(e){pr({logId:e,tab:"anatomy"});let t=0;const n=()=>{pr({logId:e,tab:"anatomy"}),!fz(e)&&(t+=1,t<cz&&window.setTimeout(n,uz))};window.setTimeout(n,0)}function Jd({command:e}){const[t,n]=p.useState(!1),s=p.useCallback(()=>{Tt(e).then(o=>{o&&(n(!0),setTimeout(()=>n(!1),2e3))})},[e]);return r.jsxs("div",{className:"bg-black/20 inline-flex max-w-full items-center gap-2 rounded-md px-3 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsx("pre",{className:"m-0 overflow-x-auto font-mono text-sm text-cyan-200",children:e}),r.jsx("button",{type:"button",onClick:s,className:"shrink-0 cursor-pointer text-muted-foreground transition-colors hover:text-foreground","aria-label":"Copy command",children:t?r.jsx(Ge,{className:"size-4"}):r.jsx(It,{className:"size-4"})})]})}function ha({label:e,children:t,className:n}){return r.jsxs("section",{className:ae("bg-white/[0.028] shadow-[inset_0_1px_0_rgba(255,255,255,0.035)] rounded-[8px]",n),children:[r.jsx("div",{className:"px-3 pt-3",children:r.jsx("div",{className:"font-mono text-[10px] font-semibold uppercase tracking-[0.14em] text-white/35",children:e})}),r.jsx("div",{className:"p-3 pt-2",children:t})]})}function ro({label:e,value:t}){return r.jsxs("div",{className:"bg-black/20 min-w-0 rounded-md px-2 py-2 shadow-[inset_0_1px_0_rgba(255,255,255,0.035)]",children:[r.jsx("div",{className:"truncate font-mono text-lg font-semibold leading-6 text-slate-100",children:t}),r.jsx("div",{className:"mt-0.5 truncate font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e})]})}const pz=["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 Yd({compact:e,entrancePhase:t}){return e?r.jsx(Ya,{className:"size-14 text-amber-500"}):r.jsxs("span",{className:"flex shrink-0 items-end gap-1 group cursor-default","aria-hidden":"true",children:[r.jsx(Ya,{className:"size-10 text-amber-500 transition-all duration-300 group-hover:scale-125 group-hover:-translate-y-1.5"}),r.jsx("span",{className:"hidden items-end gap-0.5 sm:flex",children:hr.map((n,s)=>{const o=pz[s]??"text-amber-500",i=t==="hidden"?"opacity-0 scale-0":t==="playing"?"animate-crab-piano-pop":"";return r.jsx(n,{className:`size-5 ${o} transition-all duration-300 ease-out group-hover:scale-125 group-hover:-translate-y-1 ${i}`,style:{transitionDelay:`${s*50}ms`,...t==="playing"?{animationDelay:`${s*400}ms`}:{}}},s)})})]})}function hz({compact:e,crabEntrancePhase:t,currentSessionId:n,logCount:s}){return e?r.jsx("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_16px_44px_rgba(0,0,0,0.18)] rounded-[8px] p-3",children:r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-fit items-start gap-3",children:[r.jsx(Yd,{compact:!0,entrancePhase:t}),r.jsxs("div",{className:"min-w-fit",children:[r.jsxs("div",{className:"flex min-w-fit flex-wrap items-baseline gap-x-2 gap-y-0.5",children:[r.jsx("span",{className:"whitespace-nowrap text-base font-bold",children:"Agent Inspector"}),r.jsxs("span",{className:"hidden shrink-0 font-mono text-[11px] font-semibold text-muted-foreground sm:inline",children:["v",ja.version]})]}),r.jsx("div",{className:"hidden text-[11px] font-semibold text-muted-foreground sm:block",children:"Local First. Evidence First."})]})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[r.jsx(cd,{}),r.jsx(dd,{}),r.jsx(Rd,{currentSessionId:n,logCount:s}),r.jsx(Id,{})]})]})}):r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-x-4 gap-y-3 pb-6",children:[r.jsx("div",{className:"min-w-10 flex-1","aria-hidden":"true"}),r.jsxs("h1",{className:"flex min-w-fit flex-col items-center gap-2 text-center",children:[r.jsxs("span",{className:"flex max-w-full flex-wrap items-end justify-center gap-x-2 gap-y-1",children:[r.jsx(Yd,{compact:!1,entrancePhase:t}),r.jsxs("span",{className:"flex min-w-fit flex-wrap items-baseline justify-center gap-x-2 gap-y-0.5 pl-1",children:[r.jsx("span",{className:"whitespace-nowrap text-lg font-bold",children:"Agent Inspector"}),r.jsxs("span",{className:"shrink-0 font-mono text-xs font-semibold text-muted-foreground",children:["v",ja.version]})]}),r.jsx(wa,{className:"size-4 shrink-0 text-muted-foreground/70","aria-hidden":"true"}),r.jsx(jA,{className:"size-10 shrink-0"})]}),r.jsx("span",{className:"max-w-full text-sm font-semibold text-muted-foreground",children:"Local First. Evidence First."})]}),r.jsxs("div",{className:"flex flex-1 justify-end gap-1",children:[r.jsx(cd,{}),r.jsx(dd,{}),r.jsx(Rd,{currentSessionId:n,logCount:s}),r.jsx(Id,{})]})]})}const Jt=56,Ne=14,mz=5200,gz=2400,Xd=72,xz=156,xg="agent-inspector.detailsPanelCollapsed";function bz(){if(typeof window>"u")return!0;const e=window.localStorage.getItem(xg);return e===null||e==="1"}function Ec(e){const t=Math.max(Ne,window.innerWidth-Jt-Ne),n=Math.max(Ne,window.innerHeight-Jt-Ne);return{x:Math.min(Math.max(e.x,Ne),t),y:Math.min(Math.max(e.y,Ne),n)}}function ll(e){const t=Ec(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne),o=t.x-Ne,i=n-t.x,a=t.y-Ne,l=s-t.y,c=Math.min(o,i,a,l);return c===o?{x:Ne,y:t.y}:c===i?{x:n,y:t.y}:c===a?{x:t.x,y:Ne}:{x:t.x,y:s}}function vz(){const e=Math.max(Ne,window.innerWidth-Jt-Ne),t=Math.max(Ne,window.innerHeight-Jt-Ne),n=Ne+Math.random()*(e-Ne),s=Ne+Math.random()*(t-Ne);switch(Math.floor(Math.random()*4)){case 0:return{x:Ne,y:s};case 1:return{x:e,y:s};case 2:return{x:n,y:Ne};case 3:return{x:n,y:t};default:return{x:e,y:Ne}}}function yz(e){const t=Ec(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne);return[{edge:"left",distance:t.x-Ne},{edge:"right",distance:n-t.x},{edge:"top",distance:t.y-Ne},{edge:"bottom",distance:s-t.y}].reduce((i,a)=>a.distance<i.distance?a:i).edge}function wz(e){const t=ll(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne),o=Xd+Math.random()*(xz-Xd),i=Math.random()>.5?1:-1;switch(yz(t)){case"left":{const l=t.y+o*i;return l<=Ne?{x:Ne,y:Ne}:l>=s?{x:Ne,y:s}:{x:Ne,y:l}}case"right":{const l=t.y+o*i;return l<=Ne?{x:n,y:Ne}:l>=s?{x:n,y:s}:{x:n,y:l}}case"top":{const l=t.x+o*i;return l<=Ne?{x:Ne,y:Ne}:l>=n?{x:n,y:Ne}:{x:l,y:Ne}}case"bottom":{const l=t.x+o*i;return l<=Ne?{x:Ne,y:s}:l>=n?{x:n,y:s}:{x:l,y:s}}}}function _z(){const[e,t]=p.useState({x:Ne,y:Ne}),[n,s]=p.useState(0),[o,i]=p.useState(!1),a=p.useRef(null);p.useEffect(()=>{t(vz())},[]),p.useEffect(()=>{if(o)return;let d=null;const m=()=>{const h=mz+Math.random()*gz;d=window.setTimeout(()=>{s(b=>b+1),t(b=>wz(b)),m()},h)};return m(),()=>{d!==null&&window.clearTimeout(d)}},[o]),p.useEffect(()=>{const d=()=>{t(m=>ll(m))};return window.addEventListener("resize",d),()=>window.removeEventListener("resize",d)},[]);const l=p.useCallback(d=>{const m=d.currentTarget.getBoundingClientRect();a.current={pointerId:d.pointerId,offsetX:d.clientX-m.left,offsetY:d.clientY-m.top},d.currentTarget.setPointerCapture(d.pointerId),i(!0)},[]),c=p.useCallback(d=>{const m=a.current;m===null||m.pointerId!==d.pointerId||t(Ec({x:d.clientX-m.offsetX,y:d.clientY-m.offsetY}))},[]),u=p.useCallback(d=>{const m=a.current;m===null||m.pointerId!==d.pointerId||(d.currentTarget.hasPointerCapture(d.pointerId)&&d.currentTarget.releasePointerCapture(d.pointerId),a.current=null,i(!1),t(h=>ll(h)))},[]),f=p.useMemo(()=>({transform:`translate3d(${e.x}px, ${e.y}px, 0) rotate(${n%2===0?"-4deg":"5deg"}) scale(${o?"1.08":"1"})`,transition:o?"none":"transform 4800ms cubic-bezier(0.33, 1, 0.68, 1)",touchAction:"none"}),[o,n,e.x,e.y]);return r.jsx("button",{type:"button",className:ae("fixed left-0 top-0 z-40 flex size-14 items-center justify-center rounded-full bg-transparent text-foreground outline-none transition-[filter,opacity] duration-200 hover:opacity-95 hover:drop-shadow-[0_0_24px_rgba(245,158,11,0.36)] focus-visible:ring-1 focus-visible:ring-amber-300/55",o?"cursor-grabbing":"cursor-grab"),style:f,onPointerDown:l,onPointerMove:c,onPointerUp:u,onPointerCancel:u,"aria-label":"Floating Inspector logo",title:"Drag Inspector logo",children:r.jsxs("span",{className:ae("relative flex size-12 items-center justify-center",!o&&"floating-crab-body"),"aria-hidden":"true",children:[r.jsx(Ya,{className:"relative z-10 size-11 text-amber-500 drop-shadow-[0_0_15px_rgba(245,158,11,0.30)]"}),r.jsx("span",{className:"pointer-events-none absolute inset-x-0 bottom-0 z-0 flex items-end justify-center gap-1 text-amber-400/80",children:[0,1,2,3,4,5].map(d=>r.jsx("span",{className:ae("floating-crab-leg h-2 w-0.5 rounded-full bg-current shadow-[0_0_7px_rgba(245,158,11,0.24)]",d<3?"floating-crab-leg-left":"floating-crab-leg-right",o&&"animate-none"),style:{animationDelay:`${d%2===0?0:180}ms`}},d))})]})})}function Qd({label:e,logId:t}){return r.jsxs("button",{type:"button",onClick:()=>gg(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 ${Gd(t)}`,children:[e," ",Gd(t)]})}function kz({latestPercent:e,peakPercent:t,risk:n,onOpenContext:s}){const o=al(e),i=X8(e,t),a=t===null?`Latest context window usage ${sr(e)}`:`Latest context window usage ${sr(e)}, peak ${sr(t)}`;return r.jsx("button",{type:"button",onClick:s,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:r.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:[r.jsx("span",{className:ae("block h-full rounded-full transition-[width]",Q8(n)),style:{width:`${o}%`}}),i!==null&&r.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 jz({summary:e}){const t=e.trendPercent,n=t===null||Math.abs(t)<.1?null:t>0?ky:xy,s=e.latest.diagnostics[0]??null,o=sr(e.latest.usagePercent),i=sr(e.peak.usagePercent),a=()=>{gg(e.latest.logId)};return r.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:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.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}),r.jsx("span",{className:ae("inline-flex h-5 shrink-0 items-center rounded border px-1.5 font-mono text-[10px]",az(e.latest.health.level)),children:lz(e.latest.health.level)})]}),r.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:[r.jsx("span",{children:iz(e.requestCount)}),r.jsx("span",{children:ez(e)})]})]}),r.jsxs("div",{className:"min-w-0 space-y-2 text-xs",children:[r.jsx(kz,{latestPercent:e.latest.usagePercent,peakPercent:e.peak.usagePercent,risk:e.latest.riskLevel,onOpenContext:a}),r.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Latest"}),r.jsx("div",{className:ae("mt-0.5 font-mono",Kd(e.latest.riskLevel)),children:o}),r.jsx(Qd,{label:"Log",logId:e.latest.logId})]}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Peak"}),r.jsx("div",{className:ae("mt-0.5 font-mono",Kd(e.peak.riskLevel)),children:i}),r.jsx(Qd,{label:"Log",logId:e.peak.logId})]}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Trend"}),r.jsxs("div",{className:"mt-0.5 flex items-center gap-1 font-mono text-foreground",children:[n!==null&&r.jsx(n,{className:ae("size-3",t!==null&&t>0?"text-amber-300":"text-cyan-300")}),Y8(t)]}),r.jsx("div",{className:"h-5","aria-hidden":"true"})]})]})]}),r.jsxs("div",{className:"min-w-0 space-y-1.5",children:[r.jsx(D6,{segments:e.latest.roleSegments,totalTokens:e.latest.roleTotalTokens,showLabels:!1}),r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-muted-foreground",children:[r.jsxs("span",{className:"font-mono",children:["~",Fe(e.latest.estimatedInputTokens)," input"]}),e.latest.windowUsedTokens!==null&&r.jsxs("span",{className:"font-mono",children:["~",Fe(e.latest.windowUsedTokens)," used"]}),s!==null&&r.jsx("span",{className:"truncate",children:s})]})]})]})}function Sz({summary:e}){return e.models.length===0?null:r.jsxs("div",{className:"mt-3 border-t border-white/10 pt-2",children:[r.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[r.jsx("div",{className:"text-[11px] font-semibold uppercase tracking-normal text-muted-foreground",children:"Session Context"}),r.jsxs("div",{className:"font-mono text-[10px] text-muted-foreground",children:[e.models.length," model",e.models.length===1?"":"s"]})]}),r.jsx("div",{className:"max-h-52 overflow-y-auto pr-1",children:e.models.map(t=>r.jsx(jz,{summary:t},t.model))})]})}function Cz(e){const t=e.models.filter(s=>s.latest.health.level==="risk").length;if(t>0)return`${t} risk`;const n=e.models.filter(s=>s.latest.health.level==="optimizable").length;return n>0?`${n} optimizable`:`${e.models.length} model${e.models.length===1?"":"s"}`}function Nz({label:e,logs:t,totalIn:n,totalOut:s,timeDisplayFormat:o,contextSummary:i,showBackLink:a}){const[l,c]=p.useState(!1),[u,f]=p.useState(!1),d=p.useMemo(()=>hg(t,o),[t,o]),m=p.useMemo(()=>O8(t),[t]),h=p.useMemo(()=>Cz(i),[i]),b=p.useCallback(()=>{Tt(window.location.href).then(g=>{g&&(c(!0),setTimeout(()=>c(!1),2e3))})},[]);return r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] px-3 py-2 text-xs",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a&&r.jsx("a",{href:"/",className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-label":"Back to all sessions",title:"Back to all sessions",children:r.jsx(wy,{className:"size-3.5"})}),r.jsxs("div",{className:"min-w-[180px] flex-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:"font-mono font-semibold text-purple-400/90 truncate",title:e,children:nn(e)}),m!==null&&r.jsx("span",{className:"font-mono text-muted-foreground truncate max-w-[220px]",title:m,children:m})]}),r.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[r.jsxs("span",{children:[t.length," request",t.length!==1?"s":""]}),d!==null&&r.jsx("span",{children:d}),(n>0||s>0)&&r.jsxs("span",{className:"font-mono",children:[Fe(n)," in / ",Fe(s)," out"]})]})]}),i.models.length>0&&r.jsxs("button",{type:"button",onClick:()=>f(g=>!g),className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md px-2.5 font-mono text-[11px] text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-expanded":u,title:u?"Hide context details":"Show context details",children:[r.jsx("span",{children:h}),u?r.jsx(Rl,{className:"size-3.5"}):r.jsx(it,{className:"size-3.5"})]}),r.jsx("button",{type:"button",onClick:b,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-label":l?"Copied session link":"Copy session link",title:l?"Copied session link":"Copy session link",children:l?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"})})]}),u&&r.jsx(Sz,{summary:i})]})}function Tz({logs:e,sessions:t,models:n,selectedSession:s,selectedModel:o,onSessionChange:i,onModelChange:a,onClearAll:l,onDeleteCurrentView:c,onReloadSession:u,onClearGroup:f,onNotify:d,onImportLogs:m,viewMode:h,captureMode:b,strip:g,slowResponseThresholdSeconds:x,timeDisplayFormat:v,isLoading:y=!1,pagination:_,sessionLoadProgress:j,sessionMemberships:S=[],hideSessionFilter:N=!1,pinnedSessionId:T}){const{totalIn:A,totalOut:I}=p.useMemo(()=>Vd(e),[e]),{providers:P}=Bl(),[L,E]=p.useState(null),[D,w]=p.useState(null),[$,ee]=p.useState(!1),[F,te]=p.useState(null),[V,X]=p.useState(null),[H,B]=p.useState(!1),[ce,W]=p.useState(!1),[Y,_e]=p.useState(!0),[fe,xe]=p.useState(!1),[de,ge]=p.useState(null),[be,Ce]=p.useState("hidden"),Re=p.useRef(null),k=p.useRef(null),Q=p.useRef(null),q=p.useRef(null),O=p.useRef(0);R6(Re,k,{pageWide:!0});const R=p.useCallback(()=>{O.current+=1,q.current?.abort(),q.current=null,E(null),w(null)},[]);p.useEffect(()=>()=>{O.current+=1,q.current?.abort(),q.current=null},[]),p.useEffect(()=>{const bt=50+hr.length*400,Pt=setTimeout(()=>Ce("playing"),50),Sr=setTimeout(()=>Ce("done"),bt);return()=>{clearTimeout(Pt),clearTimeout(Sr)}},[]),p.useEffect(()=>{_e(bz()),xe(!0)},[]),p.useEffect(()=>{fe&&window.localStorage.setItem(xg,Y?"1":"0")},[Y,fe]),p.useEffect(()=>{if(T===void 0){document.title="Agent Inspector";return}const Be=e.length===1?"1 req":`${e.length} req`;document.title=`${nn(T)} - ${Be} - Agent Inspector`},[e.length,T]);const U=p.useCallback(async Be=>{q.current?.abort();const lt=new AbortController;q.current=lt;const bt=O.current+1;O.current=bt,E(Be),w(null);try{const Pt=await pk(e,Be,{signal:lt.signal});if(O.current!==bt)return;if(!Pt.ok){if(Pt.canceled===!0)return;d!==void 0?d({message:Pt.message,tone:"error"}):w(Pt.message)}}finally{O.current===bt&&(q.current=null,E(null))}},[e,d]),re=p.useCallback(()=>{Q.current?.click()},[]),se=p.useCallback(Be=>{const lt=Be.currentTarget.files?.[0];Be.currentTarget.value="",!(lt===void 0||m===void 0)&&(ee(!0),X(null),te(null),m(lt).then(bt=>{const Pt=bt.skipped>0?`, skipped ${String(bt.skipped)}`:"",Sr=`Imported ${String(bt.imported)} logs as ${bt.sessionId}${Pt}.`;d!==void 0?d({message:Sr,tone:"success"}):te(Sr)}).catch(bt=>{const Pt=bt instanceof Error?bt.message:"Failed to import logs";d!==void 0?d({message:Pt,tone:"error"}):X(Pt)}).finally(()=>{ee(!1)}))},[m,d]);p.useEffect(()=>{R(),ge(null)},[R,s,o]);const Z=p.useCallback(()=>{R(),te(null),X(null),ge(null),l()},[R,l]),le=p.useCallback(()=>{B(!0)},[]),z=p.useCallback(()=>{R(),te(null),X(null),ge(null),c!==void 0&&(W(!0),c().then(()=>{B(!1)}).catch(Be=>{const lt=Be instanceof Error?Be.message:"Failed to delete stored logs";d!==void 0?d({message:lt,tone:"error"}):X(lt)}).finally(()=>{W(!1)}))},[R,c,d]),M=p.useCallback(()=>{u!==void 0&&(R(),te(null),X(null),ge(null),u())},[R,u]),J=p.useCallback(()=>{ge(null)},[]),oe=p.useCallback(()=>{_e(Be=>!Be)},[]),ie=p.useMemo(()=>P4(e),[e]),we=p.useMemo(()=>R8(ie),[ie]),he=p.useMemo(()=>J8({pinnedSessionId:T,selectedSession:s,sessions:t,logs:e}),[e,T,s,t]),me=he?.logs??[],Ie=he!==null&&me.length>0,{totalIn:$e,totalOut:Ft}=p.useMemo(()=>Vd(me),[me]),zn=p.useMemo(()=>I8(me,P),[me,P]),gt=p.useMemo(()=>m6(ie),[ie]),at=p.useMemo(()=>IE(ie),[ie]),en=P8(b,e.length),Bs=T!==void 0,Ue=e.length>0,St=c!==void 0&&(e.length>0||s!=="__all__"),tt=s==="__all__"?"all sessions":"this session",Ut=s==="__all__"?"Deletes every stored log, streaming chunk, and session archive entry across all sessions.":"Deletes every stored log, streaming chunk, and session archive entry for this session, including history that is not currently loaded.",xt=e.length===0?"Load":"Reload",ns=s==="__all__"?"":s,Ic=s==="__all__"||t.includes(s)?s:"__typed__",Ti=Ie&&he!==null?nn(he.label):s==="__all__"?"All sessions":nn(s),vg=p.useMemo(()=>V8({logs:e,conversationGroups:ie,isLoading:y,timeDisplayFormat:v,slowResponseThresholdSeconds:x}),[ie,y,e,x,v]),yg=p.useCallback(Be=>{const lt=at.get(Be.id);lt!==void 0&&ge([lt,Be])},[at]),wg=p.useCallback(Be=>{const lt=Be.currentTarget.value.trim();i(lt===""?"__all__":lt)},[i]),_g=p.useCallback(Be=>{Be!=="__typed__"&&i(Be)},[i]),Rc=T!==void 0?T:s==="__all__"?null:s;return r.jsxs("div",{className:"bg-background min-h-screen w-full text-foreground",children:[r.jsxs("button",{type:"button",onClick:oe,className:ae("group fixed top-1/2 right-3 z-40 inline-flex h-14 w-7 -translate-y-1/2 items-center justify-center rounded-l-md border border-white/[0.08] bg-background/90 text-muted-foreground shadow-[0_12px_34px_rgba(0,0,0,0.26),inset_0_1px_0_rgba(255,255,255,0.06)] backdrop-blur transition-[right,background-color,color,border-color] duration-200 hover:border-white/[0.16] hover:bg-white/[0.07] hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-none",Y?"right-3":"lg:right-[326px] xl:right-[346px]"),"aria-label":Y?"Show details panel":"Hide details panel",title:Y?"Show details panel":"Hide details panel",children:[r.jsx("span",{className:"absolute left-1 top-2 bottom-2 w-px rounded-full bg-white/[0.16] transition-colors group-hover:bg-white/[0.28]"}),Y?r.jsx(a_,{className:"size-3.5"}):r.jsx(o_,{className:"size-3.5"})]}),Y&&r.jsx(_z,{}),r.jsxs("div",{className:ae("grid min-h-screen w-full grid-cols-1",Y?"lg:grid-cols-[minmax(0,1fr)]":"lg:grid-cols-[minmax(0,1fr)_340px] xl:grid-cols-[minmax(0,1fr)_360px]"),children:[!Y&&r.jsx("aside",{className:"bg-background/95 order-1 border-b border-white/[0.045] lg:sticky lg:top-0 lg:order-2 lg:h-screen lg:overflow-y-auto lg:border-b-0 lg:border-l lg:border-white/[0.055]",children:r.jsxs("div",{className:"space-y-4 p-4",children:[r.jsx(hz,{compact:!0,crabEntrancePhase:be,currentSessionId:Rc,logCount:e.length}),r.jsxs(ha,{label:"Session",children:[r.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[r.jsx(ro,{label:"Requests",value:e.length}),r.jsx(ro,{label:"Sessions",value:t.length}),r.jsx(ro,{label:"Input",value:Fe(Ie?$e:A)}),r.jsx(ro,{label:"Output",value:Fe(Ie?Ft:I)})]}),j!==void 0&&r.jsx("div",{className:"mt-2 rounded-md bg-black/20 px-2 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})})]}),r.jsx(ha,{label:"Workspace",children:r.jsxs("div",{className:"bg-black/20 rounded-md px-3 py-2 shadow-[inset_0_1px_0_rgba(255,255,255,0.035)]",children:[r.jsx("div",{className:"truncate font-mono text-xs font-semibold text-cyan-100",title:Ti,children:Ti}),r.jsx("div",{className:"mt-1 text-[11px] text-muted-foreground",children:Bs?"Session workspace":"Live workspace"})]})}),r.jsx(h6,{currentSessionId:Rc,logCount:e.length}),Ie&&he!==null&&r.jsx(Nz,{label:he.label,logs:me,totalIn:$e,totalOut:Ft,timeDisplayFormat:v,contextSummary:zn,showBackLink:he.showBackLink}),Ie&&T!==void 0&&S.length>0&&r.jsx(Zd,{memberships:S}),r.jsx(ha,{label:"Filters",children:r.jsxs("div",{className:"space-y-2",children:[!N&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"relative",children:[r.jsx(mp,{className:"pointer-events-none absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"search",value:ns,onChange:wg,placeholder:"Paste session ID",className:"bg-black/25 hover:bg-white/[0.045] focus-visible:ring-ring h-9 w-full rounded-md px-8 font-mono text-xs text-foreground outline-none shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors placeholder:font-sans placeholder:text-muted-foreground focus-visible:ring-1","aria-label":"Filter by session ID",title:"Filter by exact session ID"}),ns!==""&&r.jsx("button",{type:"button",onClick:()=>i("__all__"),className:"absolute right-1.5 top-1/2 inline-flex size-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground","aria-label":"Clear session filter",title:"Clear session filter",children:r.jsx(vr,{className:"size-3.5"})})]}),r.jsxs(Is,{value:Ic,onValueChange:_g,children:[r.jsx(zs,{className:"bg-black/25 hover:bg-white/[0.045] h-9 w-full border-0 text-xs text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"All sessions"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__all__",children:"All sessions"}),Ic==="__typed__"&&r.jsxs(pt,{value:"__typed__",children:["Typed: ",nn(s)]}),t.map(Be=>r.jsx(pt,{value:Be,children:nn(Be)},Be))]})]})]}),r.jsxs(Is,{value:o,onValueChange:a,children:[r.jsx(zs,{className:"bg-black/25 hover:bg-white/[0.045] h-9 w-full border-0 text-xs text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"All models"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__all__",children:"All models"}),n.map(Be=>r.jsx(pt,{value:Be,children:Be},Be))]})]})]})})]})}),r.jsxs("main",{className:"order-2 min-w-0 lg:order-1",children:[r.jsxs("div",{className:"bg-background/95 shadow-[0_12px_36px_rgba(0,0,0,0.18),inset_0_-1px_0_rgba(255,255,255,0.045)] sticky top-0 z-30 px-4 py-3 lg:px-5",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsxs("div",{className:"min-w-[180px] flex-1",children:[r.jsx("div",{className:"text-sm font-semibold text-foreground",children:"Logs"}),r.jsx("div",{className:"mt-0.5 font-mono text-[11px] text-muted-foreground",children:Ti})]}),m!==void 0&&r.jsxs(r.Fragment,{children:[r.jsx("input",{ref:Q,type:"file",accept:".zip,.json,.jsonl,application/zip,application/json",className:"hidden",onChange:se}),r.jsx("button",{type:"button",onClick:re,disabled:$,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Import Agent Inspector export",children:$?r.jsx("span",{children:"Importing..."}):r.jsxs(r.Fragment,{children:[r.jsx(gp,{className:"size-3.5"}),r.jsx("span",{children:"Import"})]})})]}),en.redacted&&r.jsx("button",{type:"button",onClick:()=>{U("redacted")},disabled:L!==null,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export redacted logs as JSON ZIP",children:L==="redacted"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(br,{className:"size-3.5"}),r.jsx("span",{children:"Export"})]})}),en.raw&&r.jsx("button",{type:"button",onClick:()=>{U("raw")},disabled:L!==null,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export raw logs without redaction",children:L==="raw"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(ww,{className:"size-3.5"}),r.jsx("span",{children:"Raw"})]})}),u!==void 0&&r.jsxs("button",{type:"button",onClick:M,disabled:y,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Reload this session from stored logs",children:[r.jsx(yn,{className:ae("size-3.5",y&&"animate-spin")}),r.jsx("span",{children:xt})]}),r.jsxs("button",{type:"button",onClick:Z,disabled:!Ue,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Clear the current view. Stored logs remain reloadable.",children:[r.jsx(wn,{className:"size-3.5"}),r.jsx("span",{children:"Clear"})]}),c!==void 0&&r.jsxs("button",{type:"button",onClick:le,disabled:!St||ce,className:"bg-red-500/[0.07] hover:bg-red-500/[0.12] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-red-200 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.14)] transition-colors hover:text-red-100 disabled:cursor-not-allowed disabled:opacity-50",title:"Delete persisted history for the selected session.",children:[r.jsx(wn,{className:"size-3.5"}),r.jsx("span",{children:"Delete"})]})]}),_===void 0&&j!==void 0&&r.jsx("div",{className:"mt-2 rounded-md bg-black/20 px-2 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})}),r.jsx(qd,{logs:e,pagination:_,embedded:!0}),d===void 0&&D!==null&&r.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:D}),d===void 0&&V!==null&&r.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:V}),d===void 0&&F!==null&&V===null&&r.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:F})]}),r.jsxs("div",{className:"px-4 py-4 lg:px-5",children:[r.jsx(K8,{stats:vg}),e.length===0?s!=="__all__"?r.jsx("div",{className:"py-16 text-center text-muted-foreground",children:r.jsxs("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_18px_52px_rgba(0,0,0,0.18)] mx-auto max-w-xl space-y-4 rounded-[8px] px-4 py-8",children:[r.jsx("p",{className:"text-sm font-medium",children:y?"Loading session data...":"No logs loaded for this session"}),r.jsx("p",{className:"inline-block max-w-full rounded bg-muted px-3 py-1 font-mono text-xs break-all",children:nn(s)}),j!==void 0&&r.jsx("div",{className:"mx-auto max-w-md rounded-md bg-black/20 px-2 py-2 text-left shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})}),S.length>0&&r.jsx("div",{className:"text-left",children:r.jsx(Zd,{memberships:S})}),!y&&r.jsxs("div",{className:"flex flex-col items-center gap-3 text-xs",children:[r.jsx("p",{children:"Stored logs may still be available."}),r.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-2",children:[u!==void 0&&r.jsxs("button",{type:"button",onClick:M,className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground",children:[r.jsx(yn,{className:"size-3.5"}),r.jsx("span",{children:"Load session"})]}),N?r.jsx("a",{href:"/",className:"inline-flex h-8 items-center rounded-md px-3 text-xs text-muted-foreground underline transition-colors hover:text-foreground",children:"Back to all sessions"}):r.jsx("button",{type:"button",onClick:()=>i("__all__"),className:"inline-flex h-8 items-center rounded-md px-3 text-xs text-muted-foreground underline transition-colors hover:text-foreground",children:"Show all sessions"})]})]})]})}):r.jsx("div",{className:"py-16 text-center text-muted-foreground",children:r.jsxs("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_18px_52px_rgba(0,0,0,0.18)] mx-auto max-w-2xl space-y-4 rounded-[8px] px-4 py-8",children:[r.jsx("p",{className:"text-sm",children:"No logs loaded in the current view."}),t.length>0&&r.jsx("p",{className:"mx-auto max-w-xl text-xs leading-relaxed text-muted-foreground",children:"Pick a session from the filter panel to load stored logs on demand."}),r.jsxs("div",{className:"flex flex-col items-center gap-2",children:[r.jsx(Jd,{command:"ANTHROPIC_BASE_URL=http://localhost:9527/proxy <your-tool>"}),r.jsx(Jd,{command:"OPENAI_BASE_URL=http://localhost:9527/proxy <your-tool>"})]}),r.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."})]})}):r.jsxs("div",{ref:k,tabIndex:0,className:"flex flex-col gap-2 focus:outline-none",children:[r.jsx("div",{ref:Re,children:r.jsx(S6,{groups:ie,viewMode:h,strip:g,slowResponseThresholdSeconds:x,cacheTrends:gt,onCompareWithPrevious:yg,comparisonPredecessors:at,onClearGroup:f,defaultExpanded:ie.length===1,timeDisplayFormat:v})}),r.jsx("div",{className:"mt-3",children:r.jsx(qd,{logs:e,pagination:_})})]})]})]})]}),r.jsx(Yn,{open:H,onOpenChange:B,children:r.jsxs(Xn,{className:"border-red-500/20 bg-zinc-950 text-zinc-100 sm:max-w-md",children:[r.jsxs(Qn,{children:[r.jsxs(es,{children:["Delete ",tt," history?"]}),r.jsx(s0,{children:"Clear only hides logs from the UI. Delete removes stored history from disk."})]}),r.jsxs("div",{className:"rounded-md bg-red-500/[0.08] px-3 py-3 text-sm text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:[r.jsx("span",{className:"block font-medium",children:"This is a full history delete."}),r.jsx("span",{className:"mt-1 block text-xs text-red-200/80",children:Ut})]}),r.jsxs("div",{className:"flex justify-end gap-2",children:[r.jsx(je,{type:"button",variant:"outline",size:"sm",disabled:ce,onClick:()=>B(!1),children:"Cancel"}),r.jsx(je,{type:"button",variant:"destructive",size:"sm",disabled:ce,onClick:z,children:ce?"Deleting...":"Delete history"})]})]})}),de!==null&&r.jsx(p.Suspense,{fallback:null,children:r.jsx(kT,{left:de[0],right:de[1],leftDisplayNumber:Hd(de[0],we),rightDisplayNumber:Hd(de[1],we),onClose:J})})]})}const Ez=Yt([K({type:Ae("init"),logs:pe(ar)}),K({type:Ae("update"),log:ar})]),Az=K({logs:pe(ar),total:G().int().nonnegative(),limit:G().int().positive(),hasOlder:Le(),hasNewer:Le(),oldestLogId:G().int().positive().nullable(),newestLogId:G().int().positive().nullable()}),Iz=pe(C()),ef=K({success:Le(),cleared:G().int().nonnegative(),logFilesRewritten:G().int().nonnegative().optional(),chunkFilesDeleted:G().int().nonnegative(),sessionArchiveLogsDeleted:G().int().nonnegative().optional()});function Rz(e,t){const n=[];for(const s of e)for(const o of s.members)o.sessionId===t&&n.push({groupId:s.id,groupTitle:s.title,groupKind:s.kind,groupStatus:s.status,groupTask:s.task,groupProject:s.project,groupEvidence:s.evidence,member:o});return n}function oo(e){const t=new Set;for(const n of e)n.sessionId!==null&&n.sessionId!==""&&t.add(n.sessionId);return[...t]}function zz(e){const t=new Set;for(const n of e)n.model!==null&&n.model!==""&&t.add(n.model);return[...t]}function Pz(e,t,n){return t==="__all__"&&n==="__all__"?e:e.filter(s=>!(t!=="__all__"&&s.sessionId!==t||n!=="__all__"&&s.model!==n))}const Oz=100,Mz=12,Lz=1800,Ac=100,Vo=500,bg=200,cl=2e4,Dz=1e4;function $z(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 Fz(e,t,n=Ac){const s=new URLSearchParams({cursor:"1",compact:"1",limit:String(n),sessionId:e});switch(t.kind){case"oldest":s.set("anchor","oldest");break;case"older":s.set("beforeLogId",String(t.beforeLogId));break;case"newer":s.set("afterLogId",String(t.afterLogId));break}return`/api/logs?${s.toString()}`}function gn(e){const t=new Map;for(let n=0;n<e.length;n++){const s=e[n];s!==void 0&&t.set(s.id,n)}return t}function rr(e,t,n=Ac){return Ke(Fz(e,t,n),Az,cl)}async function Uz(e,t){const n=new Set;let s=await rr(e,{kind:"oldest"},Vo);for(const i of s.logs)n.add(i.id);t(n.size,1);let o=1;for(;s.hasNewer&&s.newestLogId!==null&&o<bg;){s=await rr(e,{kind:"newer",afterLogId:s.newestLogId},Vo);for(const i of s.logs)n.add(i.id);o+=1,t(n.size,o)}return{ids:[...n],truncated:s.hasNewer}}async function Bz(){try{return{deleted:(await ht("/api/groups",tp,{method:"DELETE"})).deleted,ok:!0}}catch{return{deleted:0,ok:!1}}}function io(e,t){if(t.length===0)return[...e];const n=new Map;for(const s of e)n.set(s.id,s);for(const s of t)n.set(s.id,s);return[...n.values()].sort((s,o)=>s.id-o.id)}function Dn(e,t){const n=new Set;for(const s of e)s!==""&&n.add(s);for(const s of t)s!==""&&n.add(s);return[...n].sort()}function Zz({initialSessionId:e}={}){const[t,n]=p.useState([]),[s,o]=p.useState(e??"__all__"),[i,a]=p.useState("__all__"),[l,c]=p.useState([]),{notice:u,showToast:f,dismissToast:d}=F0(),[m,h]=p.useState(e===void 0),[b,g]=p.useState(null),[x,v]=p.useState(e!==void 0),[y,_]=p.useState(void 0),[j,S]=p.useState([]),[,N]=p.useTransition(),T=p.useRef(null),A=p.useRef(null),I=p.useRef(null),P=p.useRef(0),L=p.useRef(null),E=p.useRef(null),D=p.useRef(new Map),w=p.useRef([]),$=p.useRef(null),ee=p.useCallback(z=>{f({message:z,tone:"error"})},[f]),F=p.useCallback(()=>{E.current!==null&&(clearInterval(E.current),E.current=null),L.current=null,_(void 0)},[]),te=p.useCallback((z,M,J=0,oe=0)=>{E.current!==null&&clearInterval(E.current);const ie=Date.now();L.current=ie;const we=()=>{P.current===M&&_({label:z,elapsedMs:Date.now()-ie,timeoutMs:cl,loadedLogs:J,loadedPages:oe})};we(),E.current=setInterval(we,250)},[]),V=p.useCallback((z,M,J,oe)=>{const ie=L.current;ie===null||P.current!==M||_({label:z,elapsedMs:Date.now()-ie,timeoutMs:cl,loadedLogs:J,loadedPages:oe})},[]),X=p.useMemo(()=>Pz(t,s,i),[t,s,i]),H=p.useMemo(()=>Dn(l,oo(t)),[t,l]),B=p.useMemo(()=>zz(t),[t]),ce=p.useCallback(()=>{ht("/api/sessions",Iz).then(z=>{c(M=>Dn(M,z))}).catch(()=>{})},[]),W=p.useCallback(()=>{$.current=null;const z=w.current;w.current=[],z.length!==0&&N(()=>{n(M=>{const J=io(M,z);return D.current=gn(J),J})})},[N]),Y=p.useCallback(z=>{w.current.push(z),$.current===null&&($.current=setTimeout(W,Oz))},[W]),_e=p.useCallback(()=>{T.current&&T.current.close(),h(!1);const z=new EventSource($z(e));T.current=z,z.onmessage=M=>{try{const J=String(M.data),oe=JSON.parse(J),ie=Ez.safeParse(oe);if(!ie.success){ee("Failed to parse SSE data");return}const we=ie.data;we.type==="init"?($.current!==null&&(clearTimeout($.current),$.current=null),w.current=[],n(he=>{const me=io(he,we.logs);return D.current=gn(me),me}),c(he=>Dn(he,oo(we.logs))),h(!0),d()):we.type==="update"&&(c(he=>we.log.sessionId===null||we.log.sessionId===""?he:Dn(he,[we.log.sessionId])),Y(we.log))}catch{ee("Failed to parse SSE data")}},z.onerror=()=>{ee("SSE connection lost, reconnecting..."),h(!0),z.close(),A.current!==null&&clearTimeout(A.current),A.current=setTimeout(_e,3e3)}},[d,e,Y,ee]),fe=p.useCallback(z=>{if(e===void 0)return;const M=P.current+1;P.current=M,v(!0),te("Loading session logs",M),d(),rr(e,z).then(J=>{if(P.current!==M)return;const oe=J.logs;D.current=gn(oe),n(oe),g(J),o(e),v(!1),F(),d()}).catch(J=>{P.current===M&&(n([]),g(null),v(!1),F(),ee(J instanceof Error?J.message:"Failed to load session logs"))})},[d,e,ee,te,F]),xe=p.useCallback(z=>{const M=P.current+1;P.current=M,v(!0),te("Reloading full session",M),d(),(async()=>{const J=[];let oe=await rr(z,{kind:"oldest"},Vo);J.push(...oe.logs),V("Reloading full session",M,J.length,1);let ie=1;for(;oe.hasNewer&&oe.newestLogId!==null&&ie<bg;)oe=await rr(z,{kind:"newer",afterLogId:oe.newestLogId},Vo),J.push(...oe.logs),ie+=1,V("Reloading full session",M,J.length,ie);P.current===M&&(n(we=>{const he=io(we,J);return D.current=gn(he),he}),c(we=>Dn(we,[z])),v(!1),F(),oe.hasNewer?f({message:`Loaded ${String(J.length)} logs for this session. More history is available.`,tone:"success"}):d())})().catch(J=>{P.current===M&&(v(!1),F(),ee(J instanceof Error?J.message:"Failed to reload session logs"))})},[d,ee,f,te,F,V]);p.useEffect(()=>{if(e===void 0){S([]);return}let z=!1;return Ke("/api/groups",rp,Dz).then(M=>M.groups).then(M=>{z||M===null||S(Rz(M,e))}).catch(()=>{z||S([])}),()=>{z=!0}},[e]),p.useEffect(()=>{ce()},[ce]),p.useEffect(()=>()=>{F()},[F]),p.useEffect(()=>{e!==void 0&&fe({kind:"newest"})},[e,fe]),p.useEffect(()=>{e===void 0&&s!=="__all__"&&xe(s)},[e,xe,s]),p.useEffect(()=>{if(e===void 0)return _e(),()=>{T.current&&(T.current.close(),T.current=null),A.current!==null&&(clearTimeout(A.current),A.current=null),$.current!==null&&(clearTimeout($.current),$.current=null)}},[_e,e]),p.useEffect(()=>{const z=window.location.hash;if(!z.startsWith("#log-")||I.current===z)return;const M=z.slice(1),J=Number(M.replace(/^log-/,""));Number.isInteger(J)&&J>0&&pr({logId:J,tab:"request"});let oe=!1,ie=0,we=null,he=null;const me=()=>{if(oe)return;const Ie=document.getElementById(M);if(Ie!==null){I.current=z,Ie.scrollIntoView({block:"center",behavior:"smooth"}),Ie instanceof HTMLElement&&(we=Ie,Ie.setAttribute("data-deep-link-highlight","true"),he=window.setTimeout(()=>{Ie.removeAttribute("data-deep-link-highlight")},Lz),Ie.focus({preventScroll:!0}),Ie.getAttribute("data-nav-action")==="expand"&&Ie.click());return}ie+=1,ie<Mz&&window.setTimeout(me,100)};return me(),()=>{oe=!0,he!==null&&window.clearTimeout(he),we!==null&&we.removeAttribute("data-deep-link-highlight")}},[X.length]);const de=p.useCallback(()=>{const z=oo(t);F(),v(!1),D.current.clear(),n([]),g(null),c(M=>Dn(M,z)),f({message:"Cleared the current view. Stored logs are still reloadable.",tone:"success"})},[t,f,F]),ge=p.useCallback(z=>{if(z.length===0)return;const M=new Set(z);n(J=>{const oe=J.filter(we=>M.has(we.id)),ie=J.filter(we=>!M.has(we.id));return c(we=>Dn(we,oo(oe))),D.current=gn(ie),ie}),f({message:"Cleared this group from the current view.",tone:"success"})},[f]),be=p.useCallback(async()=>{const z=P.current+1;P.current=z,v(!0),F(),d();try{if(s==="__all__"){te("Deleting stored history",z);const he=await ht("/api/logs",ef,{method:"DELETE"}),me=await Bz();if(P.current!==z)return;n([]),D.current.clear(),g(null),c([]),S([]),v(!1),F();const Ie=me.ok?` Cleared ${me.deleted.toString()} group${me.deleted===1?"":"s"}.`:" Group cleanup failed; open Groups to retry Clear.";f({message:`Deleted ${he.cleared.toString()} stored log${he.cleared===1?"":"s"} across all sessions.${Ie}`,tone:me.ok?"success":"error"});return}const M=s;te("Deleting session history",z);const J=await Uz(M,(he,me)=>{V("Deleting session history",z,he,me)}),oe=new Set(J.ids);for(const he of t)he.sessionId===M&&oe.add(he.id);const ie=[...oe].filter(he=>Number.isInteger(he)&&he>=0);if(ie.length===0){if(P.current!==z)return;n(he=>{const me=he.filter(Ie=>Ie.sessionId!==M);return D.current=gn(me),me}),g(he=>he===null?null:{...he,logs:he.logs.filter(me=>me.sessionId!==M)}),c(he=>he.filter(me=>me!==M)),v(!1),F(),f({message:"No stored log records were found for this session.",tone:"success"});return}const we=await ht("/api/logs",ef,{method:"DELETE",headers:{"content-type":"application/json"},body:JSON.stringify({ids:ie})});if(P.current!==z)return;n(he=>{const me=he.filter(Ie=>Ie.sessionId!==M);return D.current=gn(me),me}),g(he=>he===null?null:{...he,logs:he.logs.filter(me=>me.sessionId!==M)}),c(he=>he.filter(me=>me!==M)),v(!1),F(),f({message:`Deleted ${we.cleared.toString()} stored log${we.cleared===1?"":"s"} for this session${J.truncated?". More history may remain.":"."}`,tone:J.truncated?"error":"success"})}finally{P.current===z&&(v(!1),F())}},[t,d,s,f,te,F,V]),Ce=p.useCallback(()=>{if(e!==void 0){fe({kind:"newest"});return}if(s==="__all__"){ce();return}xe(s)},[e,fe,ce,xe,s]),Re=p.useCallback(async z=>{const M=new FormData;M.set("file",z);const J=await ht("/api/logs/import",iy,{method:"POST",body:M});return n(oe=>{const ie=new Set(J.logs.map(he=>he.id)),we=io(oe.filter(he=>!ie.has(he.id)),J.logs);return D.current=gn(we),we}),o(J.sessionId),a("__all__"),g(null),d(),J},[d]),{strip:k,captureMode:Q,slowResponseThresholdSeconds:q,timeDisplayFormat:O}=Al(),R=Q,U=p.useCallback(()=>{fe({kind:"oldest"})},[fe]),re=p.useCallback(()=>{fe({kind:"newest"})},[fe]),se=p.useCallback(()=>{const z=t[0],M=b?.oldestLogId??z?.id??null;M!==null&&fe({kind:"older",beforeLogId:M})},[t,fe,b]),Z=p.useCallback(()=>{const z=t[t.length-1],M=b?.newestLogId??z?.id??null;M!==null&&fe({kind:"newer",afterLogId:M})},[t,fe,b]),le=p.useMemo(()=>{if(e!==void 0)return{isLoading:x,loadProgress:y,total:b?.total??null,pageSize:b?.limit??Ac,hasOlder:b?.hasOlder??!1,hasNewer:b?.hasNewer??!1,oldestLogId:b?.oldestLogId??null,newestLogId:b?.newestLogId??null,onOldest:U,onOlder:se,onNewer:Z,onNewest:re}},[e,re,Z,se,U,b,y,x]);return r.jsxs(r.Fragment,{children:[r.jsx(U0,{notice:u,onDismiss:d}),r.jsx(J_,{}),r.jsx(Tz,{logs:X,sessions:H,models:B,selectedSession:s,selectedModel:i,onSessionChange:o,onModelChange:a,onClearAll:de,onDeleteCurrentView:be,onReloadSession:e!==void 0||s!=="__all__"?Ce:void 0,onClearGroup:ge,onNotify:f,onImportLogs:e===void 0?Re:void 0,isLoading:e===void 0&&!m||x,pagination:le,sessionLoadProgress:y,sessionMemberships:j,viewMode:R,captureMode:Q,strip:k,slowResponseThresholdSeconds:q,timeDisplayFormat:O,hideSessionFilter:e!==void 0,pinnedSessionId:e})]})}export{Hz as $,K as A,Oe as B,uw as C,Yn as D,G as E,pe as F,pr as G,Yo as H,Le as I,C as J,ar as K,TT as L,fp as M,w8 as N,Uw as O,Zz as P,P6 as Q,x_ as R,D6 as S,_0 as T,z6 as U,Mp as V,Vz as W,vr as X,it as Y,ze as Z,tE as _,z4 as a,ap as a0,nE as a1,sE as a2,Ds as a3,Za as a4,Mo as a5,lr as a6,ke as a7,rn as a8,p5 as a9,Qe as aa,Mf as ab,wT as ac,Uy as ad,ae as b,ue as c,wa as d,pp as e,Fe as f,m0 as g,Et as h,Ge as i,It as j,Tt as k,Ke as l,Xn as m,Qn as n,es as o,h_ as p,k0 as q,dr as r,Ct as s,Nt as t,Bl as u,je as v,Sn as w,ut as x,dt as y,ft as z};
|
|
127
|
+
args = ["stdio", "--url", "${s}"]`}],[s]),i=p.useCallback((a,l)=>{Tt(l).then(c=>{c&&(t(a),setTimeout(()=>t(null),1600))})},[]);return r.jsxs("div",{className:"min-w-0 space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ds,{className:"size-4 text-muted-foreground"}),r.jsx("h3",{className:"text-sm font-semibold",children:"MCP access"})]}),r.jsxs("div",{className:"grid gap-2 rounded-md bg-muted/15 px-3 py-2 text-xs text-muted-foreground",children:[r.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."}),r.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."})]}),r.jsx("div",{className:"grid gap-2",children:o.map(a=>r.jsx(tr,{id:a.id,label:a.label,value:a.value,copiedId:e,onCopy:i},a.id))})]})}function M6(){const{strip:e,slowResponseThresholdSeconds:t,providerTestTimeoutSeconds:n,timeDisplayFormat:s,isLoading:o,setStrip:i,setSlowResponseThresholdSeconds:a,setProviderTestTimeoutSeconds:l,setTimeDisplayFormat:c}=Al(),[u,f]=p.useState(null),[d,m]=p.useState(!1),h=p.useCallback(async v=>{f(null),m(!0);try{await i(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[i]),b=p.useCallback(async v=>{f(null),m(!0);try{await a(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[a]),g=p.useCallback(async v=>{f(null),m(!0);try{await l(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[l]),x=p.useCallback(async v=>{f(null),m(!0);try{await c(v)}catch(y){f(y instanceof Error?y.message:String(y))}finally{m(!1)}},[c]);return r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"space-y-1",children:[r.jsx("h3",{className:"text-sm font-semibold",children:"Claude Code billing header"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Strip Claude Code's synthetic billing block before upstream forwarding. This can improve prefix-cache hits with third-party providers and is persisted to ",r.jsx("code",{children:"config.json"}),"."]})]}),r.jsxs("label",{className:"flex items-center gap-3",children:[r.jsx("input",{type:"checkbox",role:"switch",checked:e,disabled:o||d,onChange:v=>{h(v.currentTarget.checked)},className:"size-4 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50"}),r.jsx("span",{className:"text-sm",children:o?"Loading...":e?"Stripping enabled":"Stripping disabled"})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"slow-response-threshold",className:"text-sm font-semibold",children:"Slow response threshold"}),r.jsxs("p",{className:"text-xs text-muted-foreground",children:["Show a slow marker when elapsed time exceeds this many seconds. Use ",r.jsx("code",{children:"0"})," to disable it."]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"slow-response-threshold",type:"number",min:0,max:ba,step:1,value:t,disabled:o||d,onChange:v=>{const y=Number(v.currentTarget.value);Number.isInteger(y)&&(y<0||y>ba||b(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"}),r.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds"})]})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"provider-test-timeout",className:"text-sm font-semibold",children:"Provider test timeout"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Abort slow Provider Test probes after this many seconds per model."}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("input",{id:"provider-test-timeout",type:"number",min:1,max:va,step:1,value:n,disabled:o||d,onChange:v=>{const y=Number(v.currentTarget.value);Number.isInteger(y)&&(y<1||y>va||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"}),r.jsx("span",{className:"text-xs text-muted-foreground",children:"seconds / model"})]})]}),r.jsxs("div",{className:"space-y-1",children:[r.jsx("label",{htmlFor:"time-display-format",className:"text-sm font-semibold",children:"Time display"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"Controls timestamps in session summaries, headers, and log rows."}),r.jsxs("select",{id:"time-display-format",value:s,disabled:o||d,onChange:v=>{const y=op.safeParse(v.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:[r.jsx("option",{value:"time",children:"Time only"}),r.jsx("option",{value:"full",children:"Full ISO"})]})]}),u!==null&&r.jsxs("p",{className:"text-xs text-destructive",children:["Failed to save: ",u]})]})}const L6=Ee(["installed","update-available","available","planned","unknown"]),D6=K({id:C(),name:C(),npmName:C(),capability:C(),description:C(),workflow:C(),installCommand:C(),state:L6,installedVersion:C().nullable(),latestVersion:C().nullable(),primary:Le()}),$6=K({id:C(),name:C(),validatedVersion:C(),binary:C(),modelFlag:C(),variantFlag:C().nullable(),tools:pe(C()),logDir:C(),skillsDir:C(),agentsDir:C()}),F6=K({id:C(),title:C(),stage:C(),packageId:C(),description:C(),command:C(),requiresSession:Le(),runnable:Le()}),U6=K({checkedAt:C(),packages:pe(D6),runnerPresets:pe($6),recipes:pe(F6)}),B6=Ee(["install","upgrade","help","runner-presets","recipe"]),W6=Ee(["queued","running","succeeded","failed"]),eg=K({id:C(),packageId:C(),npmName:C(),recipeId:C().nullable().default(null),action:B6,status:W6,command:C(),output:C(),createdAt:C(),startedAt:C().nullable(),finishedAt:C().nullable(),exitCode:G().nullable(),error:C().nullable()}),Tc=K({task:eg}),H6=K({tasks:pe(eg)}),V6=[{id:"observe",title:"Observe",label:"Live",description:"Capture IDE, process, session, turn, request, response, tools, and providers.",metric:"Inspector core",icon:my},{id:"replay",title:"Replay",label:"Ready",description:"Promote real logs into repeatable replay evidence without losing the raw context.",metric:"Session asset",icon:yn},{id:"evaluate",title:"Evaluate",label:"Next",description:"Use eval-harness to turn sessions into regression cases and provider bakeoffs.",metric:"Eval loop",icon:Il},{id:"connect",title:"Connect",label:"MCP",description:"Expose Inspector state to coding agents as queryable context and durable evidence.",metric:"/api/mcp",icon:Qw}];async function Z6(e){return ht(e,U6,void 0,t=>`Failed to load ecosystem packages: ${String(t.status)}`)}async function q6(e){return ht(e,Tc,void 0,t=>`Failed to load ecosystem task: ${String(t.status)}`)}async function G6(e){return ht(e,H6,void 0,t=>`Failed to load ecosystem tasks: ${String(t.status)}`)}async function K6(e,t){return(await ht(`/api/ecosystem/packages/${encodeURIComponent(e)}/${t}`,Tc,{method:"POST"},s=>`Failed to start ecosystem task: ${String(s.status)}`)).task}async function J6(e){return(await ht(`/api/ecosystem/recipes/${encodeURIComponent(e)}/run`,Tc,{method:"POST"},n=>`Failed to start ecosystem recipe: ${String(n.status)}`)).task}function Y6(e){switch(e){case"installed":return"Installed";case"update-available":return"Update";case"available":return"Available";case"planned":return"Planned";case"unknown":return"Unknown"}}function X6(e){switch(e){case"installed":return"border-emerald-400/20 bg-emerald-400/8 text-emerald-200";case"update-available":return"border-amber-400/20 bg-amber-400/8 text-amber-200";case"available":return"border-sky-400/20 bg-sky-400/8 text-sky-200";case"planned":return"border-white/10 bg-white/[0.04] text-white/55";case"unknown":return"border-white/10 bg-white/[0.04] text-white/45"}}function Q6(e){return e.installedVersion!==null&&e.latestVersion!==null?e.installedVersion===e.latestVersion?`v${e.installedVersion}`:`v${e.installedVersion} -> v${e.latestVersion}`:e.installedVersion!==null?`v${e.installedVersion}`:e.latestVersion!==null?`latest v${e.latestVersion}`:"not published"}function nr(e){switch(e){case"install":return"Install";case"upgrade":return"Upgrade";case"help":return"Help";case"runner-presets":return"Presets";case"recipe":return"Recipe"}}function eR(e){switch(e.status){case"queued":return"Queued";case"running":return`${nr(e.action)} running`;case"succeeded":return`${nr(e.action)} complete`;case"failed":return`${nr(e.action)} failed`}}function tg(e){switch(e){case"queued":case"running":return"border-cyan-300/20 bg-cyan-300/8 text-cyan-100";case"succeeded":return"border-emerald-400/20 bg-emerald-400/8 text-emerald-100";case"failed":return"border-red-400/20 bg-red-400/8 text-red-100"}}function tR(e){switch(e.state){case"available":return"install";case"update-available":return"upgrade";case"installed":case"planned":case"unknown":return null}}function nR({pkg:e,activeTask:t,onStartTask:n}){const s=tR(e),o=t!==null&&t.packageId===e.id&&t.status==="running";return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(s_,{className:"size-4 shrink-0 text-white/55"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.name})]}),r.jsx("div",{className:"mt-1 break-all font-mono text-[11px] leading-snug text-white/35",children:e.npmName})]}),r.jsx(Oe,{className:ae("shrink-0",X6(e.state)),variant:"outline",children:Y6(e.state)})]}),r.jsx("div",{className:"mt-3 text-xs leading-5 text-muted-foreground",children:e.description}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2 text-[11px]",children:[r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-white/50",children:Q6(e)}),r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 text-white/45",children:e.capability}),r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-white/35",children:e.installCommand})]}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[s!==null&&r.jsxs(je,{type:"button",size:"sm",variant:"secondary",disabled:o,onClick:()=>n(e.id,s),children:[o?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(br,{className:"size-3.5"}),nr(s)]}),r.jsxs(je,{type:"button",size:"sm",variant:"outline",disabled:o||e.state==="planned",onClick:()=>n(e.id,"help"),children:[r.jsx(Ds,{className:"size-3.5"}),"Help"]}),e.id==="eval-harness"&&r.jsxs(je,{type:"button",size:"sm",variant:"ghost",disabled:o||e.state==="planned",onClick:()=>n(e.id,"runner-presets"),children:[r.jsx(Il,{className:"size-3.5"}),"Presets"]})]})]})}function sR({task:e}){if(e===null)return null;const t=e.status==="queued"||e.status==="running";return r.jsxs("section",{className:"mt-3 rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[t?r.jsx(Qe,{className:"size-4 animate-spin text-cyan-200/75"}):r.jsx(Ds,{className:"size-4 text-white/55"}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-sm font-semibold",children:eR(e)}),r.jsx("div",{className:"break-all font-mono text-[11px] text-white/35",children:e.command})]})]}),r.jsx(Oe,{variant:"outline",className:ae("shrink-0",tg(e.status)),children:e.status})]}),r.jsx("pre",{className:"mt-3 max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-black/30 p-3 font-mono text-[11px] leading-5 text-white/60 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:e.output.trim().length>0?e.output:"Waiting for npm output..."}),e.error!==null&&r.jsx("div",{className:"mt-2 text-xs text-red-100",children:e.error})]})}function rR({workflow:e}){const t=e.icon;return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(t,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold",children:e.title})]}),r.jsx("span",{className:"rounded bg-white/[0.04] px-2 py-0.5 font-mono text-[10px] text-white/45",children:e.label})]}),r.jsx("div",{className:"mt-2 min-h-10 text-xs leading-5 text-muted-foreground",children:e.description}),r.jsx("div",{className:"mt-3 font-mono text-[11px] text-white/35",children:e.metric})]})}function oR(e){return e===null?'npx @tonyclaw/eval-harness inspector-smoke --title "TonyClaw Lab smoke" --latest-log-limit 5':`npx @tonyclaw/eval-harness inspector-smoke --title "TonyClaw Lab smoke ${e}" --latest-log-limit 5`}function iR({preset:e}){return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(hp,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.name})]}),r.jsxs("div",{className:"mt-1 break-all font-mono text-[11px] leading-snug text-white/35",children:[e.binary," ",e.modelFlag,e.variantFlag!==null?` ${e.variantFlag}`:""]})]}),r.jsxs(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:["v",e.validatedVersion]})]}),r.jsxs("div",{className:"mt-3 grid grid-cols-2 gap-2 text-[11px]",children:[r.jsxs("div",{className:"rounded bg-black/15 px-2 py-1 text-white/45",children:["logs/",e.logDir]}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 text-white/45",children:e.tools.join(", ")}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 font-mono text-white/35",children:e.skillsDir}),r.jsx("div",{className:"rounded bg-black/15 px-2 py-1 font-mono text-white/35",children:e.agentsDir})]})]})}function aR({recipe:e,copied:t,running:n,onCopy:s,onRun:o}){return r.jsxs("div",{className:"rounded-lg bg-white/[0.025] p-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-start gap-2",children:[r.jsx(cp,{className:"size-4 shrink-0 text-cyan-200/75"}),r.jsx("div",{className:"text-sm font-semibold leading-snug",children:e.title})]}),r.jsx("div",{className:"mt-1 text-xs leading-5 text-muted-foreground",children:e.description})]}),r.jsx(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:e.runnable?e.stage:"Template"})]}),r.jsx("div",{className:"mt-3 rounded-md bg-black/20 p-2 font-mono text-[11px] leading-5 text-white/50 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:e.command}),r.jsxs("div",{className:"mt-3 flex items-center justify-between gap-2",children:[r.jsx("span",{className:"rounded bg-white/[0.035] px-2 py-1 font-mono text-[11px] text-white/35",children:e.packageId}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsxs(je,{type:"button",size:"sm",variant:"outline",onClick:()=>s(e),children:[t?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"}),t?"Copied":"Copy"]}),e.runnable&&r.jsxs(je,{type:"button",size:"sm",variant:"secondary",disabled:n,onClick:()=>o(e),children:[n?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(hp,{className:"size-3.5"}),n?"Running":"Run"]})]})]})]})}function lR({task:e,selected:t,onSelect:n}){const s=e.recipeId??nr(e.action);return r.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md bg-white/[0.025] px-3 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx(dp,{className:"size-3.5 shrink-0 text-white/40"}),r.jsx("div",{className:"truncate text-xs font-semibold text-white/75",children:s}),r.jsx(Oe,{variant:"outline",className:ae("shrink-0",tg(e.status)),children:e.status})]}),r.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-2 font-mono text-[10px] text-white/35",children:[r.jsx("span",{children:e.packageId}),r.jsx("span",{children:new Date(e.createdAt).toLocaleTimeString()}),e.exitCode!==null&&r.jsxs("span",{children:["exit ",String(e.exitCode)]})]})]}),r.jsx(je,{type:"button",size:"sm",variant:t?"secondary":"outline",onClick:()=>n(e),children:t?"Open":"View"})]})}function Rd({currentSessionId:e,logCount:t}){const[n,s]=p.useState(!1),[o,i]=p.useState(!1),[a,l]=p.useState(!1),[c,u]=p.useState(null),[f,d]=p.useState(null),[m,h]=p.useState(null),b=Zt("/api/ecosystem/packages",Z6,{revalidateOnFocus:!1,revalidateIfStale:!1}),g=Zt(f===null?null:`/api/ecosystem/tasks/${f}`,q6,{refreshInterval:w=>{const $=w?.task;return $!==void 0&&($.status==="queued"||$.status==="running")?900:0},revalidateOnFocus:!1}),x=Zt(n?"/api/ecosystem/tasks":null,G6,{refreshInterval:2500,revalidateOnFocus:!1}),v=b.data?.packages??[],y=b.data?.runnerPresets??[],_=b.data?.recipes??[],j=(x.data?.tasks??[]).slice(0,6),S=p.useMemo(()=>v.filter(w=>w.state==="installed"||w.state==="update-available").length,[v]),N=oR(e),T="npx @tonyclaw/eval-harness runner-presets",A=()=>{Tt(N).then(()=>{i(!0),window.setTimeout(()=>i(!1),1200)})},I=()=>{Tt(T).then(()=>{l(!0),window.setTimeout(()=>l(!1),1200)})},P=w=>{Tt(w.command).then(()=>{u(w.id),window.setTimeout(()=>u(null),1200)})},L=w=>{h(null),J6(w.id).then($=>{d($.id),g.mutate({task:$},{revalidate:!0}),x.mutate()}).catch($=>{h($ instanceof Error?$.message:"Failed to start ecosystem recipe")})},E=g.data?.task??null;p.useEffect(()=>{E!==null&&(x.mutate(),E.status==="succeeded"&&b.mutate())},[E,b,x]);const D=(w,$)=>{h(null),K6(w,$).then(ee=>{d(ee.id),g.mutate({task:ee},{revalidate:!0}),x.mutate()}).catch(ee=>{h(ee instanceof Error?ee.message:"Failed to start ecosystem task")})};return r.jsxs(Yn,{open:n,onOpenChange:s,children:[r.jsx(yi,{asChild:!0,children:r.jsxs(je,{variant:"ghost",size:"icon",className:Ci,"aria-label":"TonyClaw Lab",title:"TonyClaw Lab",children:[r.jsx(cp,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"TonyClaw Lab"})]})}),r.jsxs(Xn,{className:"flex max-h-[84vh] max-w-5xl flex-col overflow-hidden",children:[r.jsx(Qn,{children:r.jsxs(es,{className:"flex items-center gap-2",children:[r.jsx(au,{className:"size-4 text-cyan-200/80"}),"TonyClaw Lab"]})}),r.jsxs("div",{className:"overflow-y-auto pr-2",children:[r.jsxs("div",{className:"grid gap-3 lg:grid-cols-[1.1fr_0.9fr]",children:[r.jsxs("section",{className:"rounded-lg bg-white/[0.025] p-4 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold",children:"Session asset pipeline"}),r.jsx("div",{className:"mt-1 max-w-2xl text-xs leading-5 text-muted-foreground",children:"Treat captured traffic as durable assets: observe it, replay it, evaluate it, and expose it back to agents through MCP."})]}),r.jsxs(Oe,{variant:"outline",className:"border-cyan-300/20 bg-cyan-300/8 text-cyan-100",children:[String(S),"/",String(v.length)," packages"]})]}),r.jsx("div",{className:"mt-4 grid gap-3 sm:grid-cols-2",children:V6.map(w=>r.jsx(rR,{workflow:w},w.id))})]}),r.jsxs("section",{className:"rounded-lg bg-white/[0.025] p-4 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold",children:"Current session"}),r.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:e===null?"MCP smoke command":e})]}),r.jsxs(Oe,{variant:"outline",className:"border-white/10 bg-white/[0.04] text-white/55",children:[String(t)," logs"]})]}),r.jsx("div",{className:"mt-4 rounded-md bg-black/20 p-3 font-mono text-[11px] leading-5 text-white/55 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:N}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[r.jsxs(je,{size:"sm",variant:"secondary",onClick:A,children:[o?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"}),o?"Copied":"Copy"]}),r.jsxs(je,{size:"sm",variant:"outline",onClick:I,children:[r.jsx(Il,{className:"size-3.5"}),a?"Presets copied":"Runner Presets"]})]})]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Lab recipes"}),r.jsxs("div",{className:"hidden items-center gap-1 font-mono text-[11px] text-muted-foreground sm:flex",children:[r.jsx(au,{className:"size-3.5"}),"copy-ready workflows"]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[_.map(w=>r.jsx(aR,{recipe:w,copied:c===w.id,running:E!==null&&E.recipeId===w.id&&(E.status==="queued"||E.status==="running"),onCopy:P,onRun:L},w.id)),b.isLoading&&_.length===0&&[0,1].map(w=>r.jsx("div",{className:"h-40 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Runner presets"}),r.jsxs("div",{className:"hidden items-center gap-1 font-mono text-[11px] text-muted-foreground sm:flex",children:[r.jsx(Ds,{className:"size-3.5"}),T]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2 xl:grid-cols-4",children:[y.map(w=>r.jsx(iR,{preset:w},w.id)),b.isLoading&&y.length===0&&[0,1,2,3].map(w=>r.jsx("div",{className:"h-32 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"TonyClaw packages"}),b.isLoading&&r.jsx("div",{className:"font-mono text-[11px] text-muted-foreground",children:"checking npm..."})]}),b.error!==void 0&&r.jsx("div",{className:"rounded-lg bg-red-500/8 p-3 text-xs text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:"Package status is temporarily unavailable."}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[v.map(w=>r.jsx(nR,{pkg:w,activeTask:E,onStartTask:D},w.id)),b.isLoading&&v.length===0&&[0,1,2].map(w=>r.jsx("div",{className:"h-36 animate-pulse rounded-lg bg-white/[0.025] shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]"},w))]})]}),m!==null&&r.jsx("div",{className:"mt-3 rounded-lg bg-red-500/8 p-3 text-xs text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:m}),j.length>0&&r.jsxs("section",{className:"mt-3",children:[r.jsxs("div",{className:"mb-2 flex items-center justify-between gap-3",children:[r.jsx("div",{className:"text-sm font-semibold",children:"Recent Lab runs"}),r.jsxs("div",{className:"hidden font-mono text-[11px] text-muted-foreground sm:block",children:["last ",String(j.length)]})]}),r.jsx("div",{className:"grid gap-2 md:grid-cols-2",children:j.map(w=>r.jsx(lR,{task:w,selected:f===w.id,onSelect:$=>{d($.id),g.mutate({task:$},{revalidate:!0})}},w.id))})]}),r.jsx(sR,{task:E})]})]})]})}K({question:C().trim().min(1).max(4e3),sessionId:C().trim().min(1).optional(),providerId:C().trim().min(1).optional(),model:C().trim().min(1).optional(),logLimit:G().int().min(1).max(80).optional()});const cR=K({answer:C(),providerId:C(),providerName:C(),model:C(),protocol:Ee(["openaiResponses","openaiChat","anthropic"]),logCount:G().int().nonnegative()}),uR="Analyze the current Inspector session. What looks abnormal, slow, or likely to hang?";function dR(e){return e.openaiResponsesBaseUrl!==void 0||e.openaiBaseUrl!==void 0||e.anthropicBaseUrl!==void 0}function fR(e){return e.openaiResponsesBaseUrl!==void 0&&e.openaiResponsesBaseUrl!==""?"Responses":e.openaiBaseUrl!==void 0&&e.openaiBaseUrl!==""?"Chat":"Anthropic"}function pR(e){return e.toSorted((t,n)=>{const s=t.source==="company"?0:1,o=n.source==="company"?0:1;return s!==o?s-o:t.name.localeCompare(n.name)})}function hR({currentSessionId:e,logCount:t}){const{providers:n}=Bl(),s=p.useMemo(()=>pR(n.filter(dR)),[n]),[o,i]=p.useState(uR),[a,l]=p.useState("__auto__"),[c,u]=p.useState("__auto__"),[f,d]=p.useState(""),[m,h]=p.useState(""),[b,g]=p.useState(!1),v=s.find(N=>N.id===a)?.models??[],y=o.trim()!==""&&s.length>0&&!b,_=N=>{i(N.currentTarget.value)},j=N=>{l(N),u("__auto__")},S=()=>{if(!y)return;g(!0),h(""),d("");const N={question:o.trim(),...e!==null?{sessionId:e}:{},...a!=="__auto__"?{providerId:a}:{},...c!=="__auto__"?{model:c}:{},logLimit:24};fetch("/api/pi-agent",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(N)}).then(async T=>{const A=await T.text();if(!T.ok){h(`Pi Agent failed: HTTP ${String(T.status)}`),d(A);return}const I=JSON.parse(A),P=cR.safeParse(I);if(!P.success){h("Pi Agent returned an unexpected response."),d(A);return}h(`${P.data.providerName} / ${P.data.model} / ${P.data.protocol} / ${String(P.data.logCount)} logs`),d(P.data.answer)}).catch(T=>{h(T instanceof Error?T.message:"Pi Agent request failed.")}).finally(()=>{g(!1)})};return r.jsxs("section",{className:"rounded-md bg-black/20 px-3 py-3 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(Ry,{className:"size-4 text-cyan-200"}),r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsx("div",{className:"text-xs font-semibold text-foreground",children:"Pi Agent"}),r.jsx("div",{className:"text-[11px] text-muted-foreground",children:e===null?"Inspector-wide analysis":"Session analysis"})]})]}),r.jsxs("div",{className:"mt-3 grid grid-cols-2 gap-2",children:[r.jsxs(Is,{value:a,onValueChange:j,children:[r.jsx(zs,{className:"h-8 border-0 bg-black/25 text-xs shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"Provider"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__auto__",children:"Auto provider"}),s.map(N=>r.jsxs(pt,{value:N.id,children:[N.name," / ",fR(N)]},N.id))]})]}),r.jsxs(Is,{value:c,onValueChange:u,children:[r.jsx(zs,{className:"h-8 border-0 bg-black/25 text-xs shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"Model"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__auto__",children:"Auto model"}),v.map(N=>r.jsx(pt,{value:N,children:N},N))]})]})]}),r.jsx("textarea",{value:o,onChange:_,className:"mt-2 min-h-24 w-full resize-y rounded-md bg-black/25 px-3 py-2 text-xs leading-5 text-foreground outline-none shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring",placeholder:"Ask Pi Agent about this session..."}),r.jsxs("button",{type:"button",onClick:S,disabled:!y,className:"mt-2 inline-flex h-8 w-full items-center justify-center gap-2 rounded-md bg-cyan-400/12 px-3 text-xs font-medium text-cyan-100 shadow-[inset_0_0_0_1px_rgba(103,232,249,0.18)] transition-colors hover:bg-cyan-400/18 disabled:cursor-not-allowed disabled:opacity-50",children:[b?r.jsx(Qe,{className:"size-3.5 animate-spin"}):r.jsx(j_,{className:"size-3.5"}),r.jsx("span",{children:b?"Thinking...":"Ask Pi"})]}),s.length===0&&r.jsx("p",{className:"mt-2 text-[11px] leading-5 text-muted-foreground",children:"Configure a Provider with Responses, Chat, or Anthropic URL to enable Pi Agent."}),m!==""&&r.jsx("p",{className:"mt-2 break-words font-mono text-[10px] text-cyan-100/70",children:m}),f!==""&&r.jsx("div",{className:"mt-3 max-h-64 overflow-y-auto whitespace-pre-wrap rounded-md bg-black/25 p-3 text-xs leading-5 text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.05)]",children:f}),t===0&&r.jsx("p",{className:"mt-2 text-[11px] leading-5 text-muted-foreground",children:"No logs are visible in this scope yet; Pi Agent can still answer Provider setup questions."})]})}function mR(e){const t=new Map;for(const n of e){const s=n.logs;for(let o=1;o<s.length;o++){const i=s[o-1],a=s[o];i===void 0||a===void 0||t.set(a.id,{creation:zd(i.cacheCreationInputTokens,a.cacheCreationInputTokens),read:zd(i.cacheReadInputTokens,a.cacheReadInputTokens)})}}return t}function zd(e,t){return t===null||e===null?null:t>e?{direction:"up",delta:t-e}:t<e?{direction:"down",delta:e-t}:null}function ng(e){return e.filter(t=>t.responseStatus===null).length}function sg(e){for(const t of e){const n=t.userAgent;if(n!=null&&n!=="")return n}return null}function gR(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function rg(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}function xR(e){return hc({userAgent:sg(e.logs),conversationId:e.conversationId,clientProjectFolder:rg(e.logs)})}function bR(e){if(e===null||e==="")return"Unknown IDE";const t=e.split(/[ /;]/)[0]??"";return t===""?"Unknown IDE":t}function vR(e,t){const n=wi(e);return n!==null?n:bR(t)}function Uo(e){return e===null||e===""?"unknown":String(e)}function yR(e,t,n){return e!=="unknown"?e:`unknown:${Uo(t)}:${Uo(n)}`}function wR(e,t){return`${Uo(e)}:${Uo(t)}`}function sl(e){return[...e].sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}function Pd(e){return sl(e)[0]?.timestamp??""}function ua(e){return[...e].sort((t,n)=>Pd(t.logs).localeCompare(Pd(n.logs)))}function _R(e){const t=new Map;for(const s of e){const o=sg(s.logs),i=rg(s.logs),a=xR(s),l=yR(a,o,i);let c=t.get(l);c===void 0&&(c={id:l,client:a,label:vR(a,o),userAgent:o,processes:new Map,logs:[]},t.set(l,c)),c.logs.push(...s.logs);const u=gR(s.logs),f=`${l}:${wR(u,i)}`;let d=c.processes.get(f);d===void 0&&(d={id:f,clientPid:u,clientProjectFolder:i,sessions:[],logs:[]},c.processes.set(f,d)),d.sessions.push(s),d.logs.push(...s.logs)}const n=[];for(const s of t.values()){const o=ua([...s.processes.values()].map(i=>({id:i.id,clientPid:i.clientPid,clientProjectFolder:i.clientProjectFolder,sessions:ua(i.sessions),logs:sl(i.logs)})));n.push({id:s.id,client:s.client,label:s.label,userAgent:s.userAgent,processes:o,logs:sl(s.logs)})}return ua(n)}function Bo(e){return e<=0?"0":Fe(e)}function og(e){let t=0,n=0;for(const s of e)s.inputTokens!==null&&s.inputTokens!==void 0&&(t+=s.inputTokens),s.outputTokens!==null&&s.outputTokens!==void 0&&(n+=s.outputTokens);return{inputTokens:t,outputTokens:n}}function kR(e){let t=0;for(const n of e)t+=n.sessions.length;return t}function jR(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 s=t[t.length-2];return s===void 0?n:`${s}/${n}`}function Wo({label:e,value:t,className:n}){return r.jsxs("span",{className:ae("bg-white/[0.045] inline-flex h-7 items-center gap-1 rounded-md px-2 text-xs text-muted-foreground",n),children:[r.jsx("span",{className:"font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e}),r.jsx("span",{className:"font-mono tabular-nums text-slate-100",children:t})]})}function ig({count:e,label:t="Turn open"}){return r.jsxs("span",{className:"inline-flex h-6 shrink-0 items-center gap-1.5 rounded-md bg-amber-300/[0.10] px-1.5 font-mono text-[10px] uppercase tracking-[0.14em] text-amber-100/90 ring-1 ring-amber-200/10",title:`${e} turn${e!==1?"s":""} not finished yet`,children:[r.jsx(Qe,{className:"size-3 animate-spin"}),t,e>1&&r.jsxs("span",{className:"tabular-nums",children:["x",e]})]})}function ag(){return r.jsx("span",{className:"pointer-events-none absolute inset-x-3 bottom-0 h-px overflow-hidden rounded-full bg-white/[0.06]","aria-hidden":"true",children:r.jsx("span",{className:"absolute inset-y-0 left-0 w-1/3 animate-pulse rounded-full bg-amber-200/65 shadow-[0_0_14px_rgba(252,211,77,0.32)]"})})}function SR({groups:e,...t}){const n=p.useMemo(()=>_R(e),[e]),[s,o]=p.useState(()=>new Set),[i,a]=p.useState(()=>new Set),l=p.useCallback(u=>{o(f=>{const d=new Set(f);return d.has(u)?d.delete(u):d.add(u),d})},[]),c=p.useCallback(u=>{a(f=>{const d=new Set(f);return d.has(u)?d.delete(u):d.add(u),d})},[]);return r.jsx("div",{className:"space-y-4",children:n.map(u=>r.jsx(CR,{group:u,collapsed:s.has(u.id),collapsedProcessIds:i,onToggleIde:()=>l(u.id),onToggleProcess:c,conversationProps:t},u.id))})}function CR({group:e,collapsed:t,collapsedProcessIds:n,onToggleIde:s,onToggleProcess:o,conversationProps:i}){const a=og(e.logs),l=kR(e.processes),c=e.logs.length,u=ng(e.logs),f=u>0;return r.jsxs("section",{className:ae("bg-card/75 shadow-sm relative isolate overflow-hidden rounded-[8px]",f&&"bg-card/85"),"data-ide-group":e.id,children:[r.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:s,"aria-expanded":!t,children:[e.client==="unknown"?r.jsx("span",{className:"bg-white/[0.045] inline-flex size-10 shrink-0 items-center justify-center rounded-[8px] text-slate-200",children:r.jsx(Kw,{className:"size-5"})}):r.jsx(_i,{client:e.client,className:"size-10 rounded-[8px] text-cyan-100"}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:"truncate text-sm font-semibold text-slate-50",title:e.userAgent??e.label,children:e.label}),r.jsx("span",{className:"rounded 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"}),f&&r.jsx(ig,{count:u,label:"Turn open"})]}),r.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[r.jsxs("span",{children:[e.processes.length," process",e.processes.length!==1?"es":""]}),r.jsxs("span",{children:[l," session",l!==1?"s":""]}),r.jsxs("span",{children:[c," log",c!==1?"s":""]})]})]}),r.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[r.jsx(Wo,{label:"IN",value:Bo(a.inputTokens)}),r.jsx(Wo,{label:"OUT",value:Bo(a.outputTokens)})]}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?r.jsx(Et,{className:"size-4"}):r.jsx(it,{className:"size-4"})})]}),f&&r.jsx(ag,{}),!t&&r.jsx("div",{className:"space-y-3 px-3 pb-3 pt-2 sm:px-4",children:e.processes.map(d=>r.jsx(NR,{group:d,collapsed:n.has(d.id),onToggle:()=>o(d.id),conversationProps:i},d.id))})]})}function NR({group:e,collapsed:t,onToggle:n,conversationProps:s}){const o=og(e.logs),i=jR(e.clientProjectFolder),a=e.sessions.length,l=e.logs.length,c=ng(e.logs),u=c>0,f=e.clientPid!==null&&e.clientPid!==void 0?`PID ${e.clientPid}`:"process";return r.jsxs("section",{className:"relative pl-5",children:[r.jsx("span",{className:"absolute bottom-1 left-2 top-1 w-px bg-white/[0.055]","aria-hidden":"true"}),r.jsxs("div",{className:"bg-black/[0.10] relative overflow-hidden rounded-[8px]",children:[r.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:[r.jsx("span",{className:"bg-white/[0.045] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-amber-100",children:r.jsx(pw,{className:"size-4"})}),r.jsxs("span",{className:"min-w-0 flex-1",children:[r.jsxs("span",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"font-mono text-xs font-semibold tabular-nums text-slate-100",children:f}),u&&r.jsx(ig,{count:c,label:"Turn open"}),i!==null&&r.jsxs("span",{className:"inline-flex min-w-0 items-center gap-1 text-xs text-muted-foreground",title:e.clientProjectFolder??i,children:[r.jsx(Pw,{className:"size-3 shrink-0"}),r.jsx("span",{className:"truncate font-mono",children:i})]})]}),r.jsxs("span",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[r.jsxs("span",{children:[a," session",a!==1?"s":""]}),r.jsxs("span",{children:[l," log",l!==1?"s":""]})]})]}),r.jsxs("span",{className:"hidden shrink-0 items-center gap-2 md:flex",children:[r.jsx(Wo,{label:"IN",value:Bo(o.inputTokens)}),r.jsx(Wo,{label:"OUT",value:Bo(o.outputTokens)})]}),r.jsx("span",{className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex size-7 shrink-0 items-center justify-center rounded-md text-slate-200",children:t?r.jsx(Et,{className:"size-4"}):r.jsx(it,{className:"size-4"})})]}),u&&r.jsx(ag,{}),!t&&r.jsx("div",{className:"space-y-2 p-2 pt-1 sm:p-3 sm:pt-2",children:e.sessions.map(d=>r.jsx(_A,{group:d,...s,showClientIdentity:!1,showLogClientMetadata:!1,showProcessMetadata:!1},d.id))})]})]})}const Ho="data-nav-id",TR="data-nav-action";function Od(e){return Array.from(e.querySelectorAll(`[${Ho}]`))}function Md(e){return e instanceof HTMLElement}function ER(e,t){let n=e;for(;n!==null&&n!==t;){if(n.hasAttribute(Ho))return n;n=n.parentElement}return e.hasAttribute(Ho)?e:null}function da(e){const t=e.getAttribute(TR);return t==="toggle"||t==="expand"||t==="collapse"?t:null}function Ys(e){e.focus({preventScroll:!0}),e.scrollIntoView({block:"nearest",behavior:"smooth"})}function Xs(e,t){return e[t]??null}function lg(e){const t=e.tagName;return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable)}function Ld(e){const t=e.tagName;return t==="BUTTON"||t==="A"||lg(e)?!0:e.closest("[role='button'],[role='menuitem'],[role='option']")!==null}function AR(e){return e.closest("[role='dialog'],[role='menu'],[role='listbox']")!==null?!0:document.querySelector("[role='dialog'],[role='menu'],[role='listbox']")!==null}function IR(){const e=window.getSelection();return e===null?!1:e.type==="Range"&&e.toString().length>0}function eo(e,t){return e.key===t&&e.shiftKey}function RR(e,t,n={}){const s=t??e,o=n.pageWide===!0,i=p.useCallback(a=>{const l=e.current,c=s.current;if(!l||!c)return;const u=a.target;if(!Md(u)||u!==c)return;const f=Od(l),d=Xs(f,0);d!==null&&Ys(d)},[e,s]);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(!Md(u)||lg(u)||IR())return;const f=c.contains(u);if(f&&Ld(u)&&!u.hasAttribute(Ho)||!f&&(!o||Ld(u)||AR(u)))return;const d=Od(c);if(d.length===0)return;const m=ER(u,c),h=m!==null?d.indexOf(m):-1;let b=!1;switch(l.key){case"ArrowUp":case"W":{if(l.shiftKey&&l.key==="ArrowUp"||l.key==="W"&&!eo(l,"W"))break;l.preventDefault();const g=h>0?h-1:h===-1?d.length-1:-1;if(g!==-1){const x=Xs(d,g);x!==null&&Ys(x)}b=!0;break}case"ArrowDown":case"S":{if(l.shiftKey&&l.key==="ArrowDown"||l.key==="S"&&!eo(l,"S"))break;l.preventDefault();const g=h<d.length-1?h+1:h===-1?0:-1;if(g!==-1){const x=Xs(d,g);x!==null&&Ys(x)}b=!0;break}case"ArrowLeft":case"A":{if(l.shiftKey&&l.key==="ArrowLeft"||l.key==="A"&&!eo(l,"A")||m===null)break;if(l.preventDefault(),da(m)==="collapse")m.click();else if(h>0){const x=Xs(d,h-1);x!==null&&Ys(x)}b=!0;break}case"ArrowRight":case"D":{if(l.shiftKey&&l.key==="ArrowRight"||l.key==="D"&&!eo(l,"D")||m===null)break;if(l.preventDefault(),da(m)==="expand")m.click();else if(h<d.length-1){const x=Xs(d,h+1);x!==null&&Ys(x)}b=!0;break}case" ":{if(m===null)break;l.preventDefault(),da(m)!==null&&m.click(),b=!0;break}}b&&l.stopPropagation()};return document.addEventListener("keydown",a,{capture:!0}),()=>document.removeEventListener("keydown",a,{capture:!0})},[e,o,s]),p.useEffect(()=>(document.addEventListener("focusin",i),()=>document.removeEventListener("focusin",i)),[i])}const zR={system:"System",user:"User",assistant:"Assistant",tool:"Tool Results",tools:"Tool Definitions"},PR={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"},OR={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"},fa=12,to=1,Dd=80,$d=24;function MR(e){return e.length<=$d?e:`${e.slice(0,$d-3)}...`}function LR(e){const t=e.replace(/\s+/g," ").trim();return t.length<=Dd?t:`${t.slice(0,Dd)}...`}function no(e){return e>=10?`${e.toFixed(0)}%`:e>=1?`${e.toFixed(1)}%`:e>0?"<1%":"0%"}const DR=p.memo(function({segments:t,totalTokens:n,showLabels:s=!0,onActivate:o}){const i=p.useMemo(()=>n>0?n:t.reduce((x,v)=>x+v.size,0),[t,n]),a=t.slice(0,fa),l=t.slice(fa),c=l.reduce((x,v)=>x+v.size,0),u=l.length,f=fa,d=f+u-1,m=u>0,h=o!==void 0,b=p.useMemo(()=>a.reduce((x,v)=>x+v.size,0),[a]),g=p.useMemo(()=>`Request context: ~${Fe(i)} tokens across ${t.length} segment${t.length===1?"":"s"}`,[t.length,i]);return t.length===0||i<=0?r.jsx("div",{role:"img","aria-label":g,className:"h-6"}):r.jsx(Sn,{delayDuration:150,children:r.jsxs("div",{role:"img","aria-label":g,className:"flex flex-col gap-1.5",children:[r.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,v)=>{const y=i>0?x.size/i*100:0,_=Math.max(to,y),j=ae("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",PR[x.role],h?OR[x.role]:""),S={width:`${_}%`},N=`${x.label}, ${no(y)}, ~${Fe(x.size)} tokens`;return r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:h?r.jsx("button",{type:"button",role:"button",tabIndex:0,onClick:()=>o(x),onKeyDown:T=>{(T.key==="Enter"||T.key===" ")&&(T.preventDefault(),o(x))},"data-anatomy-path":x.path,"aria-label":N,className:j,style:S}):r.jsx("span",{"aria-label":N,className:j,style:S})}),r.jsxs(ft,{side:"bottom",className:"max-w-sm text-xs p-2 space-y-0.5",children:[r.jsxs("div",{className:"font-semibold",children:[x.label," - ",no(y)," - ~",Fe(x.size)," ","tokens"]}),r.jsx("div",{className:"text-muted-foreground",children:zR[x.role]}),r.jsxs("div",{className:"text-muted-foreground",children:[x.characters.toLocaleString()," chars"]}),x.text.length>0&&r.jsx("div",{className:"text-muted-foreground/90 break-words whitespace-pre-wrap",children:LR(x.text)})]})]},`${x.path}-${v}`)}),m&&r.jsxs(ut,{children:[r.jsx(dt,{asChild:!0,children:r.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(to,c/i*100)}%`},children:["... +",u]})}),r.jsxs(ft,{side:"bottom",className:"text-xs",children:[u," more segment",u===1?"":"s"," (indices"," ",f,"-",d,")"]})]})]}),s&&r.jsxs("div",{className:"flex w-full gap-1 text-[10px] text-muted-foreground",children:[a.map((x,v)=>{const y=i>0?x.size/i*100:0,_=Math.max(to,y);return r.jsxs("div",{className:"flex flex-col gap-0.5 truncate",style:{width:`${_}%`},title:`${x.label} - ${no(y)} - ~${Fe(x.size)} tokens`,children:[r.jsx("span",{className:"truncate font-mono text-foreground/80",children:MR(x.label)}),r.jsxs("span",{className:"truncate font-mono text-muted-foreground/70",children:[no(y)," - ~",Fe(x.size)]})]},`label-${x.path}-${v}`)}),m&&r.jsxs("div",{className:"flex flex-col gap-0.5 truncate text-muted-foreground",style:{width:`${Math.max(to,c/i*100)}%`},children:[r.jsxs("span",{className:"truncate font-mono text-foreground/60",children:["... +",u]}),r.jsxs("span",{className:"truncate font-mono text-muted-foreground/60",children:["~",Fe(c)]})]})]}),b<i*.1&&r.jsx("div",{className:"h-0"})]})})}),cg=.75,ug=.9,rl=8e3,$R=.35,dg=40,fg=160,FR=5,UR=8,BR=18,WR=6e4,HR=.7,Fd=3e3,VR=.3,Ud=160,ZR=new Set(["answer","body","content","data","error","message","markdown","output","response","result","stderr","stdout","text","transcript"]),qR=["context_window","contextWindow","context_length","contextLength","max_context_length","maxContextLength","max_input_tokens","maxInputTokens"],GR=["max_tokens","maxTokens","max_completion_tokens","maxCompletionTokens","max_output_tokens","maxOutputTokens"],KR=[{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"]}],JR={system:"System",user:"User messages",assistant:"Assistant messages",tool:"Tool results",tools:"Tool definitions"};function YR(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 pg(e,t){for(const n of t){const s=YR(ke(e,n));if(s!==null)return s}return null}function XR(e){const t=ke(e,"model");if(typeof t!="string")return null;const n=t.trim();return n===""?null:n}function QR(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 e8(e,t,n=[]){const s=pg(t,qR);if(s!==null)return{tokens:s,label:"Request metadata",source:"request"};const o=MI(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 KR)if(QR(i,a))return{tokens:a.tokens,label:`${a.family} local rule`,source:"model-rule"};return{tokens:null,label:"No local rule",source:"unknown"}}function t8(e){return e<0?0:e>1?1:e}function n8(e){return e===null?"unknown":e>=ug?"danger":e>=cg?"watch":"ok"}function s8(e,t){return e.filter(n=>n.role===t).reduce((n,s)=>n+s.size,0)}function r8(e,t){return["system","user","assistant","tool","tools"].map(s=>{const o=s8(e,s);return{role:s,label:JR[s],tokens:o,percent:t>0?o/t:0}}).filter(s=>s.tokens>0).sort((s,o)=>o.tokens-s.tokens)}function ol(e){return e.replace(/\s+/g," ").trim().toLowerCase()}function o8(e){const t=e.replace(/\s+/g," ").trim();return t.length<=Ud?t:`${t.slice(0,Ud-3)}...`}function i8(e){return{role:e.role,label:e.label,path:e.path,tokens:e.tokens,characters:e.characters}}function a8(e){return{role:e.role,label:e.label,path:e.path,tokens:e.size,characters:e.characters,text:e.text}}function l8(e){const t=e.trim();return t.startsWith("{")||t.startsWith("[")}function c8(e){if(!l8(e))return null;try{return JSON.parse(e)}catch{return null}}function u8(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function d8(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 f8(e){const t=d8(e);return t===null?!1:ZR.has(u8(t))}function p8(e){return e.map(t=>t.startsWith("[")?t:`.${t}`).join("").replace(/^\./,"")}function h8(e,t,n){const s=bc(t);if(s<fg)return null;const o=xc(t);return o<dg?null:{role:e.role,label:`${e.label} ${p8(n)}`,path:e.path,tokens:o,characters:s,text:t}}function il({value:e,segment:t,path:n,depth:s,candidates:o}){if(!(o.length>=UR)&&!(s>FR)){if(typeof e=="string"){if(!f8(n))return;const i=h8(t,e,n);i!==null&&o.push(i);return}if(Array.isArray(e)){e.forEach((i,a)=>il({value:i,segment:t,path:[...n,`[${String(a)}]`],depth:s+1,candidates:o}));return}vc(e)&&Object.entries(e).forEach(([i,a])=>il({value:a,segment:t,path:[...n,i],depth:s+1,candidates:o}))}}function m8(e){const t=a8(e),n=c8(e.text);if(n===null)return[t];const s=[];il({value:n,segment:e,path:[],depth:0,candidates:s});const o=ol(e.text),i=new Set([o]),a=s.filter(l=>{const c=ol(l.text);return c===""||i.has(c)?!1:(i.add(c),!0)});return[t,...a]}function g8(e){const t=new Map;for(const s of e){const o=m8(s);for(const i of o){if(i.tokens<dg||i.characters<fg)continue;const a=ol(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 s of t.values()){if(s.candidates.length<2)continue;const o=s.candidates[0]??null;if(o===null)continue;const i=s.tokens-o.tokens;n.push({key:`${o.path}:${o.label}:${String(s.candidates.length)}:${String(s.tokens)}`,count:s.candidates.length,totalTokens:s.tokens,repeatedTokens:i,preview:o8(o.text),firstLabel:o.label,segments:s.candidates.map(i8)})}return n.sort((s,o)=>o.repeatedTokens-s.repeatedTokens||o.totalTokens-s.totalTokens)}function x8(e){if(e.length===0)return null;const t=e.length,n=e.reduce((o,i)=>o+i.count,0),s=e.reduce((o,i)=>o+i.repeatedTokens,0);return{kind:"duplicate",severity:s>=rl?"danger":"watch",title:"Duplicate context",detail:`${String(n)} repeated blocks across ${String(t)} group${t===1?"":"s"}, ~${String(s)} repeated tokens.`}}function b8(e){return e.reduce((t,n)=>t+n.repeatedTokens,0)}function v8(e,t,n){const s=[],o=e.find(c=>c.role==="tools")??null;o!==null&&(o.tokens>=rl||o.percent>=$R&&o.tokens>=Fd)&&s.push({kind:"tool-schema",severity:o.tokens>=rl?"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>=Fd&&i.percent>=VR&&s.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>=BR&&(a>=WR||l>=HR)&&s.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.`}),s}function y8({risk:e,contextWindow:t,diagnostics:n,duplicateGroups:s}){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:b8(s)}}function w8({segments:e,inputTokens:t,parsed:n,model:s,providers:o=[]}){const i=e.reduce((N,T)=>N+T.size,0),a=s??XR(n),l=t??i,c=pg(n,GR),u=e8(a,n,o),f=c??0,d=u.tokens===null?null:l+f,m=u.tokens===null?null:u.tokens-l,h=u.tokens===null?null:u.tokens-l-f,b=u.tokens===null||d===null?null:t8(d/u.tokens),g=r8(e,i),x=g[0]??null,v=e.filter(N=>N.role!=="tools").length,y=g8(e),_=x8(y),j=v8(g,i,v);_!==null&&j.unshift(_);const S=n8(b);return{model:a,contextWindow:u,estimatedInputTokens:l,outputReserveTokens:c,windowUsedTokens:d,remainingInputTokens:m,remainingAfterReserveTokens:h,usagePercent:b,riskLevel:S,roleUsages:g,largestRole:x,diagnostics:j,duplicateGroups:y,health:y8({risk:S,contextWindow:u,diagnostics:j,duplicateGroups:y})}}const Vz={watch:cg,danger:ug},Bd=new WeakMap;function _8(e){return e.map(t=>{const n=t.modelMetadata?.map(s=>`${s.model}:${String(s.contextWindow??"")}`).join(",")??"";return`${t.id}:${t.updatedAt}:${t.models.join(",")}:${n}`}).join("|")}function k8(e){if(e===null)return null;try{return JSON.parse(e)}catch{return null}}function j8(e){return{role:e.role,label:e.label,size:e.tokens,characters:e.tokens*4,text:"",path:`role:${e.role}`}}function S8(e,t){const n=k8(e.rawRequestBody);if(n===null)return null;const o=m0(dr(e)).anatomySegments(n);if(o===null)return null;const i=w8({segments:o,inputTokens:e.inputTokens??null,parsed:n,model:e.model,providers:t}),a=i.model??e.model??"Unknown model",l=i.roleUsages.map(j8);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 C8(e,t,n){const s=Bd.get(e);if(s!==void 0&&s.id===e.id&&s.rawRequestBody===e.rawRequestBody&&s.inputTokens===e.inputTokens&&s.model===e.model&&s.path===e.path&&s.apiFormat===e.apiFormat&&s.timestamp===e.timestamp&&s.providersSignature===n)return s.snapshot;const o=S8(e,t);return Bd.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 N8(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 Wd(e){switch(e){case"danger":return 4;case"watch":return 3;case"unknown":return 2;case"ok":return 1}}function T8(e,t){const n=Wd(t.latest.riskLevel)-Wd(e.latest.riskLevel);if(n!==0)return n;const s=e.peak.usagePercent??-1,i=(t.peak.usagePercent??-1)-s;return i!==0?i:t.latest.logId-e.latest.logId}function E8(e,t){return e.usagePercent===null||t.usagePercent===null?null:(t.usagePercent-e.usagePercent)*100}function A8(e){for(let t=1;t<e.length;t++){const n=e[t-1],s=e[t];if(!(n===void 0||s===void 0)&&n.id>s.id)return[...e].sort((o,i)=>o.id-i.id)}return e}function I8(e,t=[]){const n=A8(e),s=_8(t),o=new Map;for(const a of n){const l=C8(a,t,s);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:N8(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:E8(a.first,a.latest)})).sort(T8)}}function nn(e){return e.length<=30?e:`${e.slice(0,12)}...${e.slice(-12)}`}function R8(e){const t=new Map;for(const n of e)for(let s=0;s<n.logs.length;s+=1){const o=n.logs[s];o!==void 0&&t.set(o.id,s+1)}return t}function Hd(e,t){return t.get(e.id)??e.id}function z8(e){return e==="full"}function P8(e,t){const n=t>0;return{redacted:n,raw:n&&z8(e)}}function Vd(e){let t=0,n=0;for(const s of e)s.inputTokens!==null&&(t+=s.inputTokens),s.outputTokens!==null&&(n+=s.outputTokens);return{totalIn:t,totalOut:n}}function hg(e,t){const n=e[0],s=e[e.length-1];return n===void 0||s===void 0?null:Dl(n.timestamp,s.timestamp,t)}function O8(e){for(const t of e)if(t.userAgent!==null&&t.userAgent!==void 0&&t.userAgent!=="")return t.userAgent;return null}function M8(e){return e.error!==null&&e.error!==void 0&&e.error.length>0?!0:e.responseStatus!==null&&e.responseStatus>=400}function L8(e){const t=new Set;for(const s of e)s.model!==null&&s.model.length>0&&t.add(s.model);const n=[...t].sort();return n.length===0?"Model unknown":n.length===1?n[0]??"Model unknown":`${n.length} models`}function D8(e){const t=new Set;for(const s of e)s.providerName!==null&&s.providerName!==void 0&&s.providerName.length>0&&t.add(s.providerName);const n=[...t].sort();return n.length===0?"Provider unknown":n.length===1?n[0]??"Provider unknown":`${n.length} providers`}function $8(e){if(e<1e3)return`${e}ms`;if(e<6e4){const o=e/1e3;return`${o<10?o.toFixed(1):o.toFixed(0)}s`}const t=Math.round(e/1e3),n=Math.floor(t/60),s=t%60;return`${n}m ${s}s`}function F8(e,t){return`${Fe(e)} in / ${Fe(t)} out`}function U8(e,t){if(e.length===0)return 0;if(t.length===0)return Ka(e).length;let n=0;for(const s of t)n+=Ka(s.logs).length;return n}function B8({stopReason:e,pending:t,lastFailureLogNumber:n}){if(t>0)return{label:"In flight",detail:`${t} request${t===1?"":"s"} pending`,tone:"cool"};if(n!==null&&e===null)return{label:"Error",detail:`Last failed request #${n}`,tone:"danger"};switch(e){case"end_turn":return{label:"End turn",detail:"Assistant completed the turn",tone:"neutral"};case"stop":return{label:"Stop",detail:"Model reached a stop condition",tone:"neutral"};case"length":return{label:"Output limit",detail:"Turn ended at max output tokens",tone:"watch"};case"tool_use":return{label:"Tool call",detail:"Assistant requested a tool",tone:"cool"};case null:return{label:"Unknown",detail:"No finish reason captured",tone:"neutral"}}}function W8(e){if(e===null)return!1;const t=e.toLowerCase();return t.includes("abort")||t.includes("cancel")||t.includes("client disconnected")||t.includes("stream disconnected")||t.includes("connection closed")}function H8({pending:e,failures:t,lengthStops:n,stopReason:s,lastFailure:o}){if(o!==null&&(o.status===499||W8(o.error)))return{label:"Client aborted",detail:`Request #${o.logNumber} ended before completion`,tone:"watch"};if(e>0)return{label:"In flight",detail:`${e} request${e===1?"":"s"} still running`,tone:"cool"};if(o!==null&&o.status!==null&&o.status>=500)return{label:"Provider error",detail:`Request #${o.logNumber} returned HTTP ${o.status}`,tone:"danger"};if(t>0&&o!==null)return{label:"Failed",detail:`Request #${o.logNumber} needs attention`,tone:"danger"};if(n>0||s==="length")return{label:"Output limited",detail:"Model stopped at the output token limit",tone:"watch"};switch(s){case"end_turn":case"stop":return{label:"Completed",detail:"Assistant completed normally",tone:"neutral"};case"tool_use":return{label:"Tool requested",detail:"Assistant handed off to a tool",tone:"cool"};case null:return{label:"Unknown",detail:"No terminal signal captured",tone:"neutral"}}}function V8({logs:e,conversationGroups:t,isLoading:n,timeDisplayFormat:s,slowResponseThresholdSeconds:o}){let i=0,a=0,l=0,c=0,u=0,f=0,d=null,m=null,h=null,b=null,g=null,x=0,v=0,y=0,_=null;const j=o*1e3;for(let I=0;I<e.length;I+=1){const P=e[I];if(P===void 0)continue;const L=I+1,E=vp(P);E!==null&&(d=E),E==="length"&&(c+=1),M8(P)&&(i+=1,m=L,h={logNumber:L,status:P.responseStatus,error:P.error??null}),P.responseStatus===null&&(a+=1),o>0&&P.elapsedMs!==null&&P.elapsedMs>=j&&(l+=1),P.inputTokens!==null&&(u+=P.inputTokens),P.outputTokens!==null&&(f+=P.outputTokens),P.elapsedMs!==null&&(b===null||P.elapsedMs>b)&&(b=P.elapsedMs,g=L);const D=P.inputTokens??0,w=P.outputTokens??0,$=D+w;$>x&&(x=$,v=D,y=w,_=L)}const S=n||a>0&&i===0?"rolling":i>0?"failed":l>0||c>0?"watch":"clear",N=S==="rolling"?"Rolling":S==="failed"?"Failure":S==="watch"?"Watch":"Clear",T=B8({stopReason:d,pending:a,lastFailureLogNumber:m}),A=H8({pending:a,failures:i,lengthStops:c,stopReason:d,lastFailure:h});return{status:S,statusLabel:N,modelLabel:L8(e),providerLabel:D8(e),requests:e.length,turns:U8(e,t),failures:i,pending:a,slow:l,lengthStops:c,timeRange:hg(e,s),tokenLabel:`${Fe(u)} in / ${Fe(f)} out`,finishLabel:T.label,finishDetail:T.detail,finishTone:T.tone,outcomeLabel:A.label,outcomeDetail:A.detail,outcomeTone:A.tone,slowestLabel:b===null?"n/a":$8(b),slowestDetail:g===null?"Latency pending":`Request #${g}`,heaviestDetail:_===null?"Tokens pending":`#${_} ${F8(v,y)}`}}function Z8(e){switch(e){case"cool":return"text-cyan-100";case"danger":return"text-red-100";case"watch":return"text-amber-100";case"neutral":return"text-foreground"}}function q8(e){switch(e){case"rolling":return"cool";case"failed":return"danger";case"watch":return"watch";case"clear":return"neutral"}}function G8(e){return e.pending>0?`${e.pending} pending / ${e.failures} failed`:e.lengthStops>0?`${e.lengthStops} output limit / ${e.failures} failed`:`${e.failures} failed / ${e.slow} slow`}function fs({label:e,value:t,detail:n,icon:s,tone:o="neutral"}){return r.jsxs("div",{className:"min-w-0 border-t border-white/10 px-4 py-3",children:[r.jsxs("div",{className:"flex items-center gap-1 text-[10px] uppercase text-muted-foreground",children:[s,e]}),r.jsx("div",{className:ae("mt-2 font-mono text-sm font-semibold",Z8(o)),children:t}),r.jsx("div",{className:"mt-1 font-mono text-[11px] leading-snug text-muted-foreground",children:n})]})}function K8({stats:e}){return e.requests===0?null:r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-4 overflow-hidden rounded-[8px]",children:[r.jsx("div",{className:"px-4 py-3",children:r.jsxs("div",{className:"flex flex-wrap items-end justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 text-[10px] font-semibold uppercase text-muted-foreground",children:[r.jsx(tw,{className:"size-3.5 text-slate-300"}),"Flight Recorder"]}),r.jsx("div",{className:"mt-2 min-w-0 font-mono text-sm font-semibold text-foreground",children:e.modelLabel})]}),r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-4 gap-y-1 text-[11px] text-muted-foreground",children:[r.jsx("span",{className:"min-w-0 font-mono",children:e.providerLabel}),r.jsx("span",{className:"min-w-0 font-mono",children:e.timeRange??"Timeline pending"})]})]})}),r.jsxs("div",{className:"grid grid-cols-2 border-t border-white/10 md:grid-cols-3 2xl:grid-cols-6",children:[r.jsx(fs,{label:"Status",value:e.statusLabel,detail:G8(e),tone:q8(e.status)}),r.jsx(fs,{label:"Turns",value:String(e.turns),detail:e.finishLabel,icon:r.jsx(Iw,{className:"size-3 text-muted-foreground"}),tone:e.finishTone}),r.jsx(fs,{label:"Requests",value:String(e.requests),detail:`${e.failures} failed / ${e.slow} slow`,icon:r.jsx(_a,{className:"size-3 text-muted-foreground"}),tone:e.failures>0?"danger":"neutral"}),r.jsx(fs,{label:"Peak",value:e.slowestLabel,detail:e.slowestDetail,icon:r.jsx(M_,{className:"size-3 text-muted-foreground"}),tone:e.slow>0?"watch":"neutral"}),r.jsx(fs,{label:"Tokens",value:e.tokenLabel,detail:e.heaviestDetail,icon:r.jsx(Ll,{className:"size-3 text-muted-foreground"})}),r.jsx(fs,{label:"Outcome",value:e.outcomeLabel,detail:e.outcomeDetail,tone:e.outcomeTone})]})]})}function J8({pinnedSessionId:e,selectedSession:t,sessions:n,logs:s}){if(e!==void 0){const a=s.filter(l=>l.sessionId===e);return a.length===0?null:{label:e,logs:a,showBackLink:!0}}if(t!=="__all__"){const a=s.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&&s.every(l=>l.sessionId===o)?{label:o,logs:[...s],showBackLink:!1}:n.length===0&&s.length>0&&s.every(a=>a.sessionId===null)?{label:"Visible requests",logs:[...s],showBackLink:!1}:null}function sr(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 Y8(e){return e===null?"n/a":Math.abs(e)<.1?"0%":`${e>0?"+":""}${e.toFixed(1)}%`}function al(e){return e===null||!Number.isFinite(e)?0:Math.min(Math.max(e*100,0),100)}function X8(e,t){if(t===null)return null;const n=al(e),s=al(t);return s<=0||Math.abs(s-n)<.5?null:s}function Q8(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 ez(e){const t=e.latest.contextWindow.tokens;return t===null?"Context window unknown":`Context window ${Mp(t)}`}const tz=["score","decision","final_status","validation_pass_ratio","semantic_memory_score","opencode_exit","actual_model","run_dir","workspace","project_dir","work_dir"];function mg(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 pa(e,t){if(e===null)return null;const n=e.metadata[t];return n===void 0?null:mg(n)}function nz(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 sz(e){const t=[];for(const n of tz){const s=e.metadata[n];if(s===void 0)continue;const o=mg(s);o!==null&&t.push({key:n,value:o})}return t}function Zd({memberships:e,defaultOpen:t=!1}){const[n,s]=p.useState(t);if(e.length===0)return null;const o=e[0],i=o?.member??null,a=pa(i,"score"),l=pa(i,"decision"),c=pa(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(f=>f!==null&&f.label.length>0&&f.value.length>0);return r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] text-xs",children:[r.jsxs("button",{type:"button",onClick:()=>s(f=>!f),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:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"font-semibold text-foreground",children:"Case File"}),o!==void 0&&r.jsx("span",{className:"truncate text-muted-foreground",title:o.groupTitle,children:o.groupTitle}),r.jsxs("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:[e.length," group",e.length===1?"":"s"]})]}),u.length>0&&r.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(f=>r.jsx("span",{className:ae("rounded border px-1.5 py-0.5 font-mono text-[10px]",nz(f.value)),children:f.label},f.label))})]}),n?r.jsx(Rl,{className:"size-4 shrink-0 text-muted-foreground"}):r.jsx(it,{className:"size-4 shrink-0 text-muted-foreground"})]}),n&&r.jsx("div",{className:"space-y-2 border-t border-white/10 px-3 py-2",children:e.map(f=>{const d=f.member,m=sz(d);return r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[r.jsx("span",{className:"truncate font-medium text-foreground",title:f.groupTitle,children:f.groupTitle}),r.jsx("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:f.groupStatus}),d.status!==null&&r.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["member ",d.status]})]}),r.jsxs("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[r.jsx("span",{className:"font-mono",title:d.sessionId,children:nn(d.sessionId)}),d.label!==null&&r.jsx("span",{children:d.label}),d.provider!==null&&r.jsx("span",{children:d.provider}),d.model!==null&&r.jsx("span",{className:"font-mono",children:d.model}),d.runId!==null&&r.jsxs("span",{className:"font-mono",title:d.runId,children:["run ",nn(d.runId)]})]}),m.length>0&&r.jsx("div",{className:"mt-2 grid gap-1 sm:grid-cols-2 xl:grid-cols-3",children:m.map(h=>r.jsxs("div",{className:"border border-border bg-muted/40 min-w-0 rounded-md px-2 py-1",children:[r.jsx("div",{className:"font-mono text-[10px] text-muted-foreground",children:h.key}),r.jsx("div",{className:"truncate font-mono text-[11px] text-foreground",title:h.value,children:h.value})]},h.key))})]},`${f.groupId}:${d.id}`)})})]})}function rz({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],s=e[e.length-1],o=n===void 0||s===void 0?"Current page":`#${n.id}-#${s.id}`;return t.total===null?`Showing ${e.length} logs (${o})`:t.total<=e.length?`Showing all ${t.total} logs`:`Showing ${e.length} of ${t.total} logs (${o})`}function so({label:e,title:t,icon:n,disabled:s,onClick:o}){return r.jsxs("button",{type:"button",onClick:o,disabled:s,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,r.jsx("span",{children:e})]})}function oz(e){return`${Math.max(0,Math.ceil(e/1e3)).toString()}s`}function ho({progress:e}){const t=Math.min(1,e.elapsedMs/e.timeoutMs),n=Math.max(4,Math.round(t*100)),s=Math.max(0,e.timeoutMs-e.elapsedMs),o=t>=.75,i=[e.loadedLogs>0?`${e.loadedLogs.toString()} logs`:null,e.loadedPages>0?`${e.loadedPages.toString()} page${e.loadedPages===1?"":"s"}`:null,`${oz(s)} before timeout`].filter(a=>a!==null);return r.jsxs("div",{className:"min-w-0 space-y-1 px-1 pb-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-3 font-mono text-[10px] text-muted-foreground",children:[r.jsx("span",{className:"min-w-0 truncate",children:e.label}),r.jsx("span",{className:ae("shrink-0 tabular-nums",o&&"text-amber-300"),children:i.join(" / ")})]}),r.jsx("div",{className:"h-1.5 overflow-hidden rounded-full bg-white/[0.06]",children:r.jsx("div",{className:ae("h-full rounded-full transition-all duration-300",o?"bg-amber-300/80":"bg-cyan-300/70"),style:{width:`${n.toString()}%`}})})]})}function qd({logs:e,pagination:t,embedded:n=!1}){if(t===void 0)return null;const s=t.isLoading;return r.jsxs("div",{className:ae("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:[r.jsxs("div",{className:"w-full min-w-0 px-1 font-mono text-[11px] text-muted-foreground sm:flex-1",children:[rz({logs:e,pagination:t}),t.isLoading&&e.length>0&&r.jsx("span",{className:"ml-2",children:"Loading..."}),t.loadProgress!==void 0&&r.jsx(ho,{progress:t.loadProgress})]}),r.jsxs("div",{className:"flex w-full items-center gap-1 overflow-x-auto sm:w-auto",children:[r.jsx(so,{label:"Oldest",title:"Load the oldest logs in this session",icon:r.jsx(Wy,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOldest}),r.jsx(so,{label:"Older",title:"Load older logs",icon:r.jsx(Ly,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOlder}),r.jsx(so,{label:"Newer",title:"Load newer logs",icon:r.jsx(Et,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewer}),r.jsx(so,{label:"Newest",title:"Load the newest logs in this session",icon:r.jsx(Vy,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewest})]})]})}function iz(e){return`${e} ${e===1?"request":"requests"}`}function Gd(e){return`#${String(e)}`}function Kd(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 az(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 lz(e){switch(e){case"risk":return"Risk";case"optimizable":return"Optimizable";case"ok":return"OK"}}const cz=10,uz=80;function dz(e){e.setAttribute("data-deep-link-highlight","true"),window.setTimeout(()=>{e.removeAttribute("data-deep-link-highlight")},1800)}function fz(e){const t=document.getElementById(`log-${String(e)}`);return t instanceof HTMLElement?(t.scrollIntoView({block:"center",behavior:"smooth"}),t.focus({preventScroll:!0}),dz(t),!0):!1}function gg(e){pr({logId:e,tab:"anatomy"});let t=0;const n=()=>{pr({logId:e,tab:"anatomy"}),!fz(e)&&(t+=1,t<cz&&window.setTimeout(n,uz))};window.setTimeout(n,0)}function Jd({command:e}){const[t,n]=p.useState(!1),s=p.useCallback(()=>{Tt(e).then(o=>{o&&(n(!0),setTimeout(()=>n(!1),2e3))})},[e]);return r.jsxs("div",{className:"bg-black/20 inline-flex max-w-full items-center gap-2 rounded-md px-3 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.055)]",children:[r.jsx("pre",{className:"m-0 overflow-x-auto font-mono text-sm text-cyan-200",children:e}),r.jsx("button",{type:"button",onClick:s,className:"shrink-0 cursor-pointer text-muted-foreground transition-colors hover:text-foreground","aria-label":"Copy command",children:t?r.jsx(Ge,{className:"size-4"}):r.jsx(It,{className:"size-4"})})]})}function ha({label:e,children:t,className:n}){return r.jsxs("section",{className:ae("bg-white/[0.028] shadow-[inset_0_1px_0_rgba(255,255,255,0.035)] rounded-[8px]",n),children:[r.jsx("div",{className:"px-3 pt-3",children:r.jsx("div",{className:"font-mono text-[10px] font-semibold uppercase tracking-[0.14em] text-white/35",children:e})}),r.jsx("div",{className:"p-3 pt-2",children:t})]})}function ro({label:e,value:t}){return r.jsxs("div",{className:"bg-black/20 min-w-0 rounded-md px-2 py-2 shadow-[inset_0_1px_0_rgba(255,255,255,0.035)]",children:[r.jsx("div",{className:"truncate font-mono text-lg font-semibold leading-6 text-slate-100",children:t}),r.jsx("div",{className:"mt-0.5 truncate font-mono text-[10px] uppercase tracking-[0.12em] text-white/35",children:e})]})}const pz=["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 Yd({compact:e,entrancePhase:t}){return e?r.jsx(Ya,{className:"size-14 text-amber-500"}):r.jsxs("span",{className:"flex shrink-0 items-end gap-1 group cursor-default","aria-hidden":"true",children:[r.jsx(Ya,{className:"size-10 text-amber-500 transition-all duration-300 group-hover:scale-125 group-hover:-translate-y-1.5"}),r.jsx("span",{className:"hidden items-end gap-0.5 sm:flex",children:hr.map((n,s)=>{const o=pz[s]??"text-amber-500",i=t==="hidden"?"opacity-0 scale-0":t==="playing"?"animate-crab-piano-pop":"";return r.jsx(n,{className:`size-5 ${o} transition-all duration-300 ease-out group-hover:scale-125 group-hover:-translate-y-1 ${i}`,style:{transitionDelay:`${s*50}ms`,...t==="playing"?{animationDelay:`${s*400}ms`}:{}}},s)})})]})}function hz({compact:e,crabEntrancePhase:t,currentSessionId:n,logCount:s}){return e?r.jsx("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_16px_44px_rgba(0,0,0,0.18)] rounded-[8px] p-3",children:r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex min-w-fit items-start gap-3",children:[r.jsx(Yd,{compact:!0,entrancePhase:t}),r.jsxs("div",{className:"min-w-fit",children:[r.jsxs("div",{className:"flex min-w-fit flex-wrap items-baseline gap-x-2 gap-y-0.5",children:[r.jsx("span",{className:"whitespace-nowrap text-base font-bold",children:"Agent Inspector"}),r.jsxs("span",{className:"hidden shrink-0 font-mono text-[11px] font-semibold text-muted-foreground sm:inline",children:["v",ja.version]})]}),r.jsx("div",{className:"hidden text-[11px] font-semibold text-muted-foreground sm:block",children:"Local First. Evidence First."})]})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[r.jsx(cd,{}),r.jsx(dd,{}),r.jsx(Rd,{currentSessionId:n,logCount:s}),r.jsx(Id,{})]})]})}):r.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-x-4 gap-y-3 pb-6",children:[r.jsx("div",{className:"min-w-10 flex-1","aria-hidden":"true"}),r.jsxs("h1",{className:"flex min-w-fit flex-col items-center gap-2 text-center",children:[r.jsxs("span",{className:"flex max-w-full flex-wrap items-end justify-center gap-x-2 gap-y-1",children:[r.jsx(Yd,{compact:!1,entrancePhase:t}),r.jsxs("span",{className:"flex min-w-fit flex-wrap items-baseline justify-center gap-x-2 gap-y-0.5 pl-1",children:[r.jsx("span",{className:"whitespace-nowrap text-lg font-bold",children:"Agent Inspector"}),r.jsxs("span",{className:"shrink-0 font-mono text-xs font-semibold text-muted-foreground",children:["v",ja.version]})]}),r.jsx(wa,{className:"size-4 shrink-0 text-muted-foreground/70","aria-hidden":"true"}),r.jsx(jA,{className:"size-10 shrink-0"})]}),r.jsx("span",{className:"max-w-full text-sm font-semibold text-muted-foreground",children:"Local First. Evidence First."})]}),r.jsxs("div",{className:"flex flex-1 justify-end gap-1",children:[r.jsx(cd,{}),r.jsx(dd,{}),r.jsx(Rd,{currentSessionId:n,logCount:s}),r.jsx(Id,{})]})]})}const Jt=56,Ne=14,mz=5200,gz=2400,Xd=72,xz=156,xg="agent-inspector.detailsPanelCollapsed";function bz(){if(typeof window>"u")return!0;const e=window.localStorage.getItem(xg);return e===null||e==="1"}function Ec(e){const t=Math.max(Ne,window.innerWidth-Jt-Ne),n=Math.max(Ne,window.innerHeight-Jt-Ne);return{x:Math.min(Math.max(e.x,Ne),t),y:Math.min(Math.max(e.y,Ne),n)}}function ll(e){const t=Ec(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne),o=t.x-Ne,i=n-t.x,a=t.y-Ne,l=s-t.y,c=Math.min(o,i,a,l);return c===o?{x:Ne,y:t.y}:c===i?{x:n,y:t.y}:c===a?{x:t.x,y:Ne}:{x:t.x,y:s}}function vz(){const e=Math.max(Ne,window.innerWidth-Jt-Ne),t=Math.max(Ne,window.innerHeight-Jt-Ne),n=Ne+Math.random()*(e-Ne),s=Ne+Math.random()*(t-Ne);switch(Math.floor(Math.random()*4)){case 0:return{x:Ne,y:s};case 1:return{x:e,y:s};case 2:return{x:n,y:Ne};case 3:return{x:n,y:t};default:return{x:e,y:Ne}}}function yz(e){const t=Ec(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne);return[{edge:"left",distance:t.x-Ne},{edge:"right",distance:n-t.x},{edge:"top",distance:t.y-Ne},{edge:"bottom",distance:s-t.y}].reduce((i,a)=>a.distance<i.distance?a:i).edge}function wz(e){const t=ll(e),n=Math.max(Ne,window.innerWidth-Jt-Ne),s=Math.max(Ne,window.innerHeight-Jt-Ne),o=Xd+Math.random()*(xz-Xd),i=Math.random()>.5?1:-1;switch(yz(t)){case"left":{const l=t.y+o*i;return l<=Ne?{x:Ne,y:Ne}:l>=s?{x:Ne,y:s}:{x:Ne,y:l}}case"right":{const l=t.y+o*i;return l<=Ne?{x:n,y:Ne}:l>=s?{x:n,y:s}:{x:n,y:l}}case"top":{const l=t.x+o*i;return l<=Ne?{x:Ne,y:Ne}:l>=n?{x:n,y:Ne}:{x:l,y:Ne}}case"bottom":{const l=t.x+o*i;return l<=Ne?{x:Ne,y:s}:l>=n?{x:n,y:s}:{x:l,y:s}}}}function _z(){const[e,t]=p.useState({x:Ne,y:Ne}),[n,s]=p.useState(0),[o,i]=p.useState(!1),a=p.useRef(null);p.useEffect(()=>{t(vz())},[]),p.useEffect(()=>{if(o)return;let d=null;const m=()=>{const h=mz+Math.random()*gz;d=window.setTimeout(()=>{s(b=>b+1),t(b=>wz(b)),m()},h)};return m(),()=>{d!==null&&window.clearTimeout(d)}},[o]),p.useEffect(()=>{const d=()=>{t(m=>ll(m))};return window.addEventListener("resize",d),()=>window.removeEventListener("resize",d)},[]);const l=p.useCallback(d=>{const m=d.currentTarget.getBoundingClientRect();a.current={pointerId:d.pointerId,offsetX:d.clientX-m.left,offsetY:d.clientY-m.top},d.currentTarget.setPointerCapture(d.pointerId),i(!0)},[]),c=p.useCallback(d=>{const m=a.current;m===null||m.pointerId!==d.pointerId||t(Ec({x:d.clientX-m.offsetX,y:d.clientY-m.offsetY}))},[]),u=p.useCallback(d=>{const m=a.current;m===null||m.pointerId!==d.pointerId||(d.currentTarget.hasPointerCapture(d.pointerId)&&d.currentTarget.releasePointerCapture(d.pointerId),a.current=null,i(!1),t(h=>ll(h)))},[]),f=p.useMemo(()=>({transform:`translate3d(${e.x}px, ${e.y}px, 0) rotate(${n%2===0?"-4deg":"5deg"}) scale(${o?"1.08":"1"})`,transition:o?"none":"transform 4800ms cubic-bezier(0.33, 1, 0.68, 1)",touchAction:"none"}),[o,n,e.x,e.y]);return r.jsx("button",{type:"button",className:ae("fixed left-0 top-0 z-40 flex size-14 items-center justify-center rounded-full bg-transparent text-foreground outline-none transition-[filter,opacity] duration-200 hover:opacity-95 hover:drop-shadow-[0_0_24px_rgba(245,158,11,0.36)] focus-visible:ring-1 focus-visible:ring-amber-300/55",o?"cursor-grabbing":"cursor-grab"),style:f,onPointerDown:l,onPointerMove:c,onPointerUp:u,onPointerCancel:u,"aria-label":"Floating Inspector logo",title:"Drag Inspector logo",children:r.jsxs("span",{className:ae("relative flex size-12 items-center justify-center",!o&&"floating-crab-body"),"aria-hidden":"true",children:[r.jsx(Ya,{className:"relative z-10 size-11 text-amber-500 drop-shadow-[0_0_15px_rgba(245,158,11,0.30)]"}),r.jsx("span",{className:"pointer-events-none absolute inset-x-0 bottom-0 z-0 flex items-end justify-center gap-1 text-amber-400/80",children:[0,1,2,3,4,5].map(d=>r.jsx("span",{className:ae("floating-crab-leg h-2 w-0.5 rounded-full bg-current shadow-[0_0_7px_rgba(245,158,11,0.24)]",d<3?"floating-crab-leg-left":"floating-crab-leg-right",o&&"animate-none"),style:{animationDelay:`${d%2===0?0:180}ms`}},d))})]})})}function Qd({label:e,logId:t}){return r.jsxs("button",{type:"button",onClick:()=>gg(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 ${Gd(t)}`,children:[e," ",Gd(t)]})}function kz({latestPercent:e,peakPercent:t,risk:n,onOpenContext:s}){const o=al(e),i=X8(e,t),a=t===null?`Latest context window usage ${sr(e)}`:`Latest context window usage ${sr(e)}, peak ${sr(t)}`;return r.jsx("button",{type:"button",onClick:s,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:r.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:[r.jsx("span",{className:ae("block h-full rounded-full transition-[width]",Q8(n)),style:{width:`${o}%`}}),i!==null&&r.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 jz({summary:e}){const t=e.trendPercent,n=t===null||Math.abs(t)<.1?null:t>0?ky:xy,s=e.latest.diagnostics[0]??null,o=sr(e.latest.usagePercent),i=sr(e.peak.usagePercent),a=()=>{gg(e.latest.logId)};return r.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:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.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}),r.jsx("span",{className:ae("inline-flex h-5 shrink-0 items-center rounded border px-1.5 font-mono text-[10px]",az(e.latest.health.level)),children:lz(e.latest.health.level)})]}),r.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:[r.jsx("span",{children:iz(e.requestCount)}),r.jsx("span",{children:ez(e)})]})]}),r.jsxs("div",{className:"min-w-0 space-y-2 text-xs",children:[r.jsx(kz,{latestPercent:e.latest.usagePercent,peakPercent:e.peak.usagePercent,risk:e.latest.riskLevel,onOpenContext:a}),r.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Latest"}),r.jsx("div",{className:ae("mt-0.5 font-mono",Kd(e.latest.riskLevel)),children:o}),r.jsx(Qd,{label:"Log",logId:e.latest.logId})]}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Peak"}),r.jsx("div",{className:ae("mt-0.5 font-mono",Kd(e.peak.riskLevel)),children:i}),r.jsx(Qd,{label:"Log",logId:e.peak.logId})]}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase text-muted-foreground",children:"Trend"}),r.jsxs("div",{className:"mt-0.5 flex items-center gap-1 font-mono text-foreground",children:[n!==null&&r.jsx(n,{className:ae("size-3",t!==null&&t>0?"text-amber-300":"text-cyan-300")}),Y8(t)]}),r.jsx("div",{className:"h-5","aria-hidden":"true"})]})]})]}),r.jsxs("div",{className:"min-w-0 space-y-1.5",children:[r.jsx(DR,{segments:e.latest.roleSegments,totalTokens:e.latest.roleTotalTokens,showLabels:!1}),r.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-muted-foreground",children:[r.jsxs("span",{className:"font-mono",children:["~",Fe(e.latest.estimatedInputTokens)," input"]}),e.latest.windowUsedTokens!==null&&r.jsxs("span",{className:"font-mono",children:["~",Fe(e.latest.windowUsedTokens)," used"]}),s!==null&&r.jsx("span",{className:"truncate",children:s})]})]})]})}function Sz({summary:e}){return e.models.length===0?null:r.jsxs("div",{className:"mt-3 border-t border-white/10 pt-2",children:[r.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[r.jsx("div",{className:"text-[11px] font-semibold uppercase tracking-normal text-muted-foreground",children:"Session Context"}),r.jsxs("div",{className:"font-mono text-[10px] text-muted-foreground",children:[e.models.length," model",e.models.length===1?"":"s"]})]}),r.jsx("div",{className:"max-h-52 overflow-y-auto pr-1",children:e.models.map(t=>r.jsx(jz,{summary:t},t.model))})]})}function Cz(e){const t=e.models.filter(s=>s.latest.health.level==="risk").length;if(t>0)return`${t} risk`;const n=e.models.filter(s=>s.latest.health.level==="optimizable").length;return n>0?`${n} optimizable`:`${e.models.length} model${e.models.length===1?"":"s"}`}function Nz({label:e,logs:t,totalIn:n,totalOut:s,timeDisplayFormat:o,contextSummary:i,showBackLink:a}){const[l,c]=p.useState(!1),[u,f]=p.useState(!1),d=p.useMemo(()=>hg(t,o),[t,o]),m=p.useMemo(()=>O8(t),[t]),h=p.useMemo(()=>Cz(i),[i]),b=p.useCallback(()=>{Tt(window.location.href).then(g=>{g&&(c(!0),setTimeout(()=>c(!1),2e3))})},[]);return r.jsxs("div",{className:"border border-border bg-card shadow-sm mb-3 rounded-[8px] px-3 py-2 text-xs",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a&&r.jsx("a",{href:"/",className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-label":"Back to all sessions",title:"Back to all sessions",children:r.jsx(wy,{className:"size-3.5"})}),r.jsxs("div",{className:"min-w-[180px] flex-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx("span",{className:"font-mono font-semibold text-purple-400/90 truncate",title:e,children:nn(e)}),m!==null&&r.jsx("span",{className:"font-mono text-muted-foreground truncate max-w-[220px]",title:m,children:m})]}),r.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-muted-foreground",children:[r.jsxs("span",{children:[t.length," request",t.length!==1?"s":""]}),d!==null&&r.jsx("span",{children:d}),(n>0||s>0)&&r.jsxs("span",{className:"font-mono",children:[Fe(n)," in / ",Fe(s)," out"]})]})]}),i.models.length>0&&r.jsxs("button",{type:"button",onClick:()=>f(g=>!g),className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md px-2.5 font-mono text-[11px] text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-expanded":u,title:u?"Hide context details":"Show context details",children:[r.jsx("span",{children:h}),u?r.jsx(Rl,{className:"size-3.5"}):r.jsx(it,{className:"size-3.5"})]}),r.jsx("button",{type:"button",onClick:b,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground","aria-label":l?"Copied session link":"Copy session link",title:l?"Copied session link":"Copy session link",children:l?r.jsx(Ge,{className:"size-3.5"}):r.jsx(It,{className:"size-3.5"})})]}),u&&r.jsx(Sz,{summary:i})]})}function Tz({logs:e,sessions:t,models:n,selectedSession:s,selectedModel:o,onSessionChange:i,onModelChange:a,onClearAll:l,onDeleteCurrentView:c,onReloadSession:u,onClearGroup:f,onNotify:d,onImportLogs:m,viewMode:h,captureMode:b,strip:g,slowResponseThresholdSeconds:x,timeDisplayFormat:v,isLoading:y=!1,pagination:_,sessionLoadProgress:j,sessionMemberships:S=[],hideSessionFilter:N=!1,pinnedSessionId:T}){const{totalIn:A,totalOut:I}=p.useMemo(()=>Vd(e),[e]),{providers:P}=Bl(),[L,E]=p.useState(null),[D,w]=p.useState(null),[$,ee]=p.useState(!1),[F,te]=p.useState(null),[V,X]=p.useState(null),[H,B]=p.useState(!1),[ce,W]=p.useState(!1),[Y,_e]=p.useState(!0),[fe,xe]=p.useState(!1),[de,ge]=p.useState(null),[be,Ce]=p.useState("hidden"),Re=p.useRef(null),k=p.useRef(null),Q=p.useRef(null),q=p.useRef(null),O=p.useRef(0);RR(Re,k,{pageWide:!0});const R=p.useCallback(()=>{O.current+=1,q.current?.abort(),q.current=null,E(null),w(null)},[]);p.useEffect(()=>()=>{O.current+=1,q.current?.abort(),q.current=null},[]),p.useEffect(()=>{const bt=50+hr.length*400,Pt=setTimeout(()=>Ce("playing"),50),Sr=setTimeout(()=>Ce("done"),bt);return()=>{clearTimeout(Pt),clearTimeout(Sr)}},[]),p.useEffect(()=>{_e(bz()),xe(!0)},[]),p.useEffect(()=>{fe&&window.localStorage.setItem(xg,Y?"1":"0")},[Y,fe]),p.useEffect(()=>{if(T===void 0){document.title="Agent Inspector";return}const Be=e.length===1?"1 req":`${e.length} req`;document.title=`${nn(T)} - ${Be} - Agent Inspector`},[e.length,T]);const U=p.useCallback(async Be=>{q.current?.abort();const lt=new AbortController;q.current=lt;const bt=O.current+1;O.current=bt,E(Be),w(null);try{const Pt=await pk(e,Be,{signal:lt.signal});if(O.current!==bt)return;if(!Pt.ok){if(Pt.canceled===!0)return;d!==void 0?d({message:Pt.message,tone:"error"}):w(Pt.message)}}finally{O.current===bt&&(q.current=null,E(null))}},[e,d]),re=p.useCallback(()=>{Q.current?.click()},[]),se=p.useCallback(Be=>{const lt=Be.currentTarget.files?.[0];Be.currentTarget.value="",!(lt===void 0||m===void 0)&&(ee(!0),X(null),te(null),m(lt).then(bt=>{const Pt=bt.skipped>0?`, skipped ${String(bt.skipped)}`:"",Sr=`Imported ${String(bt.imported)} logs as ${bt.sessionId}${Pt}.`;d!==void 0?d({message:Sr,tone:"success"}):te(Sr)}).catch(bt=>{const Pt=bt instanceof Error?bt.message:"Failed to import logs";d!==void 0?d({message:Pt,tone:"error"}):X(Pt)}).finally(()=>{ee(!1)}))},[m,d]);p.useEffect(()=>{R(),ge(null)},[R,s,o]);const Z=p.useCallback(()=>{R(),te(null),X(null),ge(null),l()},[R,l]),le=p.useCallback(()=>{B(!0)},[]),z=p.useCallback(()=>{R(),te(null),X(null),ge(null),c!==void 0&&(W(!0),c().then(()=>{B(!1)}).catch(Be=>{const lt=Be instanceof Error?Be.message:"Failed to delete stored logs";d!==void 0?d({message:lt,tone:"error"}):X(lt)}).finally(()=>{W(!1)}))},[R,c,d]),M=p.useCallback(()=>{u!==void 0&&(R(),te(null),X(null),ge(null),u())},[R,u]),J=p.useCallback(()=>{ge(null)},[]),oe=p.useCallback(()=>{_e(Be=>!Be)},[]),ie=p.useMemo(()=>P4(e),[e]),we=p.useMemo(()=>R8(ie),[ie]),he=p.useMemo(()=>J8({pinnedSessionId:T,selectedSession:s,sessions:t,logs:e}),[e,T,s,t]),me=he?.logs??[],Ie=he!==null&&me.length>0,{totalIn:$e,totalOut:Ft}=p.useMemo(()=>Vd(me),[me]),zn=p.useMemo(()=>I8(me,P),[me,P]),gt=p.useMemo(()=>mR(ie),[ie]),at=p.useMemo(()=>IE(ie),[ie]),en=P8(b,e.length),Bs=T!==void 0,Ue=e.length>0,St=c!==void 0&&(e.length>0||s!=="__all__"),tt=s==="__all__"?"all sessions":"this session",Ut=s==="__all__"?"Deletes every stored log, streaming chunk, and session archive entry across all sessions.":"Deletes every stored log, streaming chunk, and session archive entry for this session, including history that is not currently loaded.",xt=e.length===0?"Load":"Reload",ns=s==="__all__"?"":s,Ic=s==="__all__"||t.includes(s)?s:"__typed__",Ti=Ie&&he!==null?nn(he.label):s==="__all__"?"All sessions":nn(s),vg=p.useMemo(()=>V8({logs:e,conversationGroups:ie,isLoading:y,timeDisplayFormat:v,slowResponseThresholdSeconds:x}),[ie,y,e,x,v]),yg=p.useCallback(Be=>{const lt=at.get(Be.id);lt!==void 0&&ge([lt,Be])},[at]),wg=p.useCallback(Be=>{const lt=Be.currentTarget.value.trim();i(lt===""?"__all__":lt)},[i]),_g=p.useCallback(Be=>{Be!=="__typed__"&&i(Be)},[i]),Rc=T!==void 0?T:s==="__all__"?null:s;return r.jsxs("div",{className:"bg-background min-h-screen w-full text-foreground",children:[r.jsxs("button",{type:"button",onClick:oe,className:ae("group fixed top-1/2 right-3 z-40 inline-flex h-14 w-7 -translate-y-1/2 items-center justify-center rounded-l-md border border-white/[0.08] bg-background/90 text-muted-foreground shadow-[0_12px_34px_rgba(0,0,0,0.26),inset_0_1px_0_rgba(255,255,255,0.06)] backdrop-blur transition-[right,background-color,color,border-color] duration-200 hover:border-white/[0.16] hover:bg-white/[0.07] hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-none",Y?"right-3":"lg:right-[326px] xl:right-[346px]"),"aria-label":Y?"Show details panel":"Hide details panel",title:Y?"Show details panel":"Hide details panel",children:[r.jsx("span",{className:"absolute left-1 top-2 bottom-2 w-px rounded-full bg-white/[0.16] transition-colors group-hover:bg-white/[0.28]"}),Y?r.jsx(a_,{className:"size-3.5"}):r.jsx(o_,{className:"size-3.5"})]}),Y&&r.jsx(_z,{}),r.jsxs("div",{className:ae("grid min-h-screen w-full grid-cols-1",Y?"lg:grid-cols-[minmax(0,1fr)]":"lg:grid-cols-[minmax(0,1fr)_340px] xl:grid-cols-[minmax(0,1fr)_360px]"),children:[!Y&&r.jsx("aside",{className:"bg-background/95 order-1 border-b border-white/[0.045] lg:sticky lg:top-0 lg:order-2 lg:h-screen lg:overflow-y-auto lg:border-b-0 lg:border-l lg:border-white/[0.055]",children:r.jsxs("div",{className:"space-y-4 p-4",children:[r.jsx(hz,{compact:!0,crabEntrancePhase:be,currentSessionId:Rc,logCount:e.length}),r.jsxs(ha,{label:"Session",children:[r.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[r.jsx(ro,{label:"Requests",value:e.length}),r.jsx(ro,{label:"Sessions",value:t.length}),r.jsx(ro,{label:"Input",value:Fe(Ie?$e:A)}),r.jsx(ro,{label:"Output",value:Fe(Ie?Ft:I)})]}),j!==void 0&&r.jsx("div",{className:"mt-2 rounded-md bg-black/20 px-2 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})})]}),r.jsx(ha,{label:"Workspace",children:r.jsxs("div",{className:"bg-black/20 rounded-md px-3 py-2 shadow-[inset_0_1px_0_rgba(255,255,255,0.035)]",children:[r.jsx("div",{className:"truncate font-mono text-xs font-semibold text-cyan-100",title:Ti,children:Ti}),r.jsx("div",{className:"mt-1 text-[11px] text-muted-foreground",children:Bs?"Session workspace":"Live workspace"})]})}),r.jsx(hR,{currentSessionId:Rc,logCount:e.length}),Ie&&he!==null&&r.jsx(Nz,{label:he.label,logs:me,totalIn:$e,totalOut:Ft,timeDisplayFormat:v,contextSummary:zn,showBackLink:he.showBackLink}),Ie&&T!==void 0&&S.length>0&&r.jsx(Zd,{memberships:S}),r.jsx(ha,{label:"Filters",children:r.jsxs("div",{className:"space-y-2",children:[!N&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"relative",children:[r.jsx(mp,{className:"pointer-events-none absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"search",value:ns,onChange:wg,placeholder:"Paste session ID",className:"bg-black/25 hover:bg-white/[0.045] focus-visible:ring-ring h-9 w-full rounded-md px-8 font-mono text-xs text-foreground outline-none shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors placeholder:font-sans placeholder:text-muted-foreground focus-visible:ring-1","aria-label":"Filter by session ID",title:"Filter by exact session ID"}),ns!==""&&r.jsx("button",{type:"button",onClick:()=>i("__all__"),className:"absolute right-1.5 top-1/2 inline-flex size-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground","aria-label":"Clear session filter",title:"Clear session filter",children:r.jsx(vr,{className:"size-3.5"})})]}),r.jsxs(Is,{value:Ic,onValueChange:_g,children:[r.jsx(zs,{className:"bg-black/25 hover:bg-white/[0.045] h-9 w-full border-0 text-xs text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"All sessions"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__all__",children:"All sessions"}),Ic==="__typed__"&&r.jsxs(pt,{value:"__typed__",children:["Typed: ",nn(s)]}),t.map(Be=>r.jsx(pt,{value:Be,children:nn(Be)},Be))]})]})]}),r.jsxs(Is,{value:o,onValueChange:a,children:[r.jsx(zs,{className:"bg-black/25 hover:bg-white/[0.045] h-9 w-full border-0 text-xs text-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",children:r.jsx(Rs,{placeholder:"All models"})}),r.jsxs(Ps,{children:[r.jsx(pt,{value:"__all__",children:"All models"}),n.map(Be=>r.jsx(pt,{value:Be,children:Be},Be))]})]})]})})]})}),r.jsxs("main",{className:"order-2 min-w-0 lg:order-1",children:[r.jsxs("div",{className:"bg-background/95 shadow-[0_12px_36px_rgba(0,0,0,0.18),inset_0_-1px_0_rgba(255,255,255,0.045)] sticky top-0 z-30 px-4 py-3 lg:px-5",children:[r.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[r.jsxs("div",{className:"min-w-[180px] flex-1",children:[r.jsx("div",{className:"text-sm font-semibold text-foreground",children:"Logs"}),r.jsx("div",{className:"mt-0.5 font-mono text-[11px] text-muted-foreground",children:Ti})]}),m!==void 0&&r.jsxs(r.Fragment,{children:[r.jsx("input",{ref:Q,type:"file",accept:".zip,.json,.jsonl,application/zip,application/json",className:"hidden",onChange:se}),r.jsx("button",{type:"button",onClick:re,disabled:$,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Import Agent Inspector export",children:$?r.jsx("span",{children:"Importing..."}):r.jsxs(r.Fragment,{children:[r.jsx(gp,{className:"size-3.5"}),r.jsx("span",{children:"Import"})]})})]}),en.redacted&&r.jsx("button",{type:"button",onClick:()=>{U("redacted")},disabled:L!==null,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export redacted logs as JSON ZIP",children:L==="redacted"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(br,{className:"size-3.5"}),r.jsx("span",{children:"Export"})]})}),en.raw&&r.jsx("button",{type:"button",onClick:()=>{U("raw")},disabled:L!==null,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Export raw logs without redaction",children:L==="raw"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(ww,{className:"size-3.5"}),r.jsx("span",{children:"Raw"})]})}),u!==void 0&&r.jsxs("button",{type:"button",onClick:M,disabled:y,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Reload this session from stored logs",children:[r.jsx(yn,{className:ae("size-3.5",y&&"animate-spin")}),r.jsx("span",{children:xt})]}),r.jsxs("button",{type:"button",onClick:Z,disabled:!Ue,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:"Clear the current view. Stored logs remain reloadable.",children:[r.jsx(wn,{className:"size-3.5"}),r.jsx("span",{children:"Clear"})]}),c!==void 0&&r.jsxs("button",{type:"button",onClick:le,disabled:!St||ce,className:"bg-red-500/[0.07] hover:bg-red-500/[0.12] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-red-200 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.14)] transition-colors hover:text-red-100 disabled:cursor-not-allowed disabled:opacity-50",title:"Delete persisted history for the selected session.",children:[r.jsx(wn,{className:"size-3.5"}),r.jsx("span",{children:"Delete"})]})]}),_===void 0&&j!==void 0&&r.jsx("div",{className:"mt-2 rounded-md bg-black/20 px-2 py-2 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})}),r.jsx(qd,{logs:e,pagination:_,embedded:!0}),d===void 0&&D!==null&&r.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:D}),d===void 0&&V!==null&&r.jsx("div",{className:"mt-2 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:V}),d===void 0&&F!==null&&V===null&&r.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:F})]}),r.jsxs("div",{className:"px-4 py-4 lg:px-5",children:[r.jsx(K8,{stats:vg}),e.length===0?s!=="__all__"?r.jsx("div",{className:"py-16 text-center text-muted-foreground",children:r.jsxs("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_18px_52px_rgba(0,0,0,0.18)] mx-auto max-w-xl space-y-4 rounded-[8px] px-4 py-8",children:[r.jsx("p",{className:"text-sm font-medium",children:y?"Loading session data...":"No logs loaded for this session"}),r.jsx("p",{className:"inline-block max-w-full rounded bg-muted px-3 py-1 font-mono text-xs break-all",children:nn(s)}),j!==void 0&&r.jsx("div",{className:"mx-auto max-w-md rounded-md bg-black/20 px-2 py-2 text-left shadow-[inset_0_0_0_1px_rgba(255,255,255,0.045)]",children:r.jsx(ho,{progress:j})}),S.length>0&&r.jsx("div",{className:"text-left",children:r.jsx(Zd,{memberships:S})}),!y&&r.jsxs("div",{className:"flex flex-col items-center gap-3 text-xs",children:[r.jsx("p",{children:"Stored logs may still be available."}),r.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-2",children:[u!==void 0&&r.jsxs("button",{type:"button",onClick:M,className:"bg-white/[0.045] hover:bg-white/[0.075] inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs text-muted-foreground shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)] transition-colors hover:text-foreground",children:[r.jsx(yn,{className:"size-3.5"}),r.jsx("span",{children:"Load session"})]}),N?r.jsx("a",{href:"/",className:"inline-flex h-8 items-center rounded-md px-3 text-xs text-muted-foreground underline transition-colors hover:text-foreground",children:"Back to all sessions"}):r.jsx("button",{type:"button",onClick:()=>i("__all__"),className:"inline-flex h-8 items-center rounded-md px-3 text-xs text-muted-foreground underline transition-colors hover:text-foreground",children:"Show all sessions"})]})]})]})}):r.jsx("div",{className:"py-16 text-center text-muted-foreground",children:r.jsxs("div",{className:"bg-white/[0.035] shadow-[inset_0_1px_0_rgba(255,255,255,0.045),0_18px_52px_rgba(0,0,0,0.18)] mx-auto max-w-2xl space-y-4 rounded-[8px] px-4 py-8",children:[r.jsx("p",{className:"text-sm",children:"No logs loaded in the current view."}),t.length>0&&r.jsx("p",{className:"mx-auto max-w-xl text-xs leading-relaxed text-muted-foreground",children:"Pick a session from the filter panel to load stored logs on demand."}),r.jsxs("div",{className:"flex flex-col items-center gap-2",children:[r.jsx(Jd,{command:"ANTHROPIC_BASE_URL=http://localhost:9527/proxy <your-tool>"}),r.jsx(Jd,{command:"OPENAI_BASE_URL=http://localhost:9527/proxy <your-tool>"})]}),r.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."})]})}):r.jsxs("div",{ref:k,tabIndex:0,className:"flex flex-col gap-2 focus:outline-none",children:[r.jsx("div",{ref:Re,children:r.jsx(SR,{groups:ie,viewMode:h,strip:g,slowResponseThresholdSeconds:x,cacheTrends:gt,onCompareWithPrevious:yg,comparisonPredecessors:at,onClearGroup:f,defaultExpanded:ie.length===1,timeDisplayFormat:v})}),r.jsx("div",{className:"mt-3",children:r.jsx(qd,{logs:e,pagination:_})})]})]})]})]}),r.jsx(Yn,{open:H,onOpenChange:B,children:r.jsxs(Xn,{className:"border-red-500/20 bg-zinc-950 text-zinc-100 sm:max-w-md",children:[r.jsxs(Qn,{children:[r.jsxs(es,{children:["Delete ",tt," history?"]}),r.jsx(s0,{children:"Clear only hides logs from the UI. Delete removes stored history from disk."})]}),r.jsxs("div",{className:"rounded-md bg-red-500/[0.08] px-3 py-3 text-sm text-red-100 shadow-[inset_0_0_0_1px_rgba(248,113,113,0.16)]",children:[r.jsx("span",{className:"block font-medium",children:"This is a full history delete."}),r.jsx("span",{className:"mt-1 block text-xs text-red-200/80",children:Ut})]}),r.jsxs("div",{className:"flex justify-end gap-2",children:[r.jsx(je,{type:"button",variant:"outline",size:"sm",disabled:ce,onClick:()=>B(!1),children:"Cancel"}),r.jsx(je,{type:"button",variant:"destructive",size:"sm",disabled:ce,onClick:z,children:ce?"Deleting...":"Delete history"})]})]})}),de!==null&&r.jsx(p.Suspense,{fallback:null,children:r.jsx(kT,{left:de[0],right:de[1],leftDisplayNumber:Hd(de[0],we),rightDisplayNumber:Hd(de[1],we),onClose:J})})]})}const Ez=Yt([K({type:Ae("init"),logs:pe(ar)}),K({type:Ae("update"),log:ar})]),Az=K({logs:pe(ar),total:G().int().nonnegative(),limit:G().int().positive(),hasOlder:Le(),hasNewer:Le(),oldestLogId:G().int().positive().nullable(),newestLogId:G().int().positive().nullable()}),Iz=pe(C()),ef=K({success:Le(),cleared:G().int().nonnegative(),logFilesRewritten:G().int().nonnegative().optional(),chunkFilesDeleted:G().int().nonnegative(),sessionArchiveLogsDeleted:G().int().nonnegative().optional()});function Rz(e,t){const n=[];for(const s of e)for(const o of s.members)o.sessionId===t&&n.push({groupId:s.id,groupTitle:s.title,groupKind:s.kind,groupStatus:s.status,groupTask:s.task,groupProject:s.project,groupEvidence:s.evidence,member:o});return n}function oo(e){const t=new Set;for(const n of e)n.sessionId!==null&&n.sessionId!==""&&t.add(n.sessionId);return[...t]}function zz(e){const t=new Set;for(const n of e)n.model!==null&&n.model!==""&&t.add(n.model);return[...t]}function Pz(e,t,n){return t==="__all__"&&n==="__all__"?e:e.filter(s=>!(t!=="__all__"&&s.sessionId!==t||n!=="__all__"&&s.model!==n))}const Oz=100,Mz=12,Lz=1800,Ac=100,Vo=500,bg=200,cl=2e4,Dz=1e4;function $z(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 Fz(e,t,n=Ac){const s=new URLSearchParams({cursor:"1",compact:"1",limit:String(n),sessionId:e});switch(t.kind){case"oldest":s.set("anchor","oldest");break;case"older":s.set("beforeLogId",String(t.beforeLogId));break;case"newer":s.set("afterLogId",String(t.afterLogId));break}return`/api/logs?${s.toString()}`}function gn(e){const t=new Map;for(let n=0;n<e.length;n++){const s=e[n];s!==void 0&&t.set(s.id,n)}return t}function rr(e,t,n=Ac){return Ke(Fz(e,t,n),Az,cl)}async function Uz(e,t){const n=new Set;let s=await rr(e,{kind:"oldest"},Vo);for(const i of s.logs)n.add(i.id);t(n.size,1);let o=1;for(;s.hasNewer&&s.newestLogId!==null&&o<bg;){s=await rr(e,{kind:"newer",afterLogId:s.newestLogId},Vo);for(const i of s.logs)n.add(i.id);o+=1,t(n.size,o)}return{ids:[...n],truncated:s.hasNewer}}async function Bz(){try{return{deleted:(await ht("/api/groups",tp,{method:"DELETE"})).deleted,ok:!0}}catch{return{deleted:0,ok:!1}}}function io(e,t){if(t.length===0)return[...e];const n=new Map;for(const s of e)n.set(s.id,s);for(const s of t)n.set(s.id,s);return[...n.values()].sort((s,o)=>s.id-o.id)}function Dn(e,t){const n=new Set;for(const s of e)s!==""&&n.add(s);for(const s of t)s!==""&&n.add(s);return[...n].sort()}function Zz({initialSessionId:e}={}){const[t,n]=p.useState([]),[s,o]=p.useState(e??"__all__"),[i,a]=p.useState("__all__"),[l,c]=p.useState([]),{notice:u,showToast:f,dismissToast:d}=F0(),[m,h]=p.useState(e===void 0),[b,g]=p.useState(null),[x,v]=p.useState(e!==void 0),[y,_]=p.useState(void 0),[j,S]=p.useState([]),[,N]=p.useTransition(),T=p.useRef(null),A=p.useRef(null),I=p.useRef(null),P=p.useRef(0),L=p.useRef(null),E=p.useRef(null),D=p.useRef(new Map),w=p.useRef([]),$=p.useRef(null),ee=p.useCallback(z=>{f({message:z,tone:"error"})},[f]),F=p.useCallback(()=>{E.current!==null&&(clearInterval(E.current),E.current=null),L.current=null,_(void 0)},[]),te=p.useCallback((z,M,J=0,oe=0)=>{E.current!==null&&clearInterval(E.current);const ie=Date.now();L.current=ie;const we=()=>{P.current===M&&_({label:z,elapsedMs:Date.now()-ie,timeoutMs:cl,loadedLogs:J,loadedPages:oe})};we(),E.current=setInterval(we,250)},[]),V=p.useCallback((z,M,J,oe)=>{const ie=L.current;ie===null||P.current!==M||_({label:z,elapsedMs:Date.now()-ie,timeoutMs:cl,loadedLogs:J,loadedPages:oe})},[]),X=p.useMemo(()=>Pz(t,s,i),[t,s,i]),H=p.useMemo(()=>Dn(l,oo(t)),[t,l]),B=p.useMemo(()=>zz(t),[t]),ce=p.useCallback(()=>{ht("/api/sessions",Iz).then(z=>{c(M=>Dn(M,z))}).catch(()=>{})},[]),W=p.useCallback(()=>{$.current=null;const z=w.current;w.current=[],z.length!==0&&N(()=>{n(M=>{const J=io(M,z);return D.current=gn(J),J})})},[N]),Y=p.useCallback(z=>{w.current.push(z),$.current===null&&($.current=setTimeout(W,Oz))},[W]),_e=p.useCallback(()=>{T.current&&T.current.close(),h(!1);const z=new EventSource($z(e));T.current=z,z.onmessage=M=>{try{const J=String(M.data),oe=JSON.parse(J),ie=Ez.safeParse(oe);if(!ie.success){ee("Failed to parse SSE data");return}const we=ie.data;we.type==="init"?($.current!==null&&(clearTimeout($.current),$.current=null),w.current=[],n(he=>{const me=io(he,we.logs);return D.current=gn(me),me}),c(he=>Dn(he,oo(we.logs))),h(!0),d()):we.type==="update"&&(c(he=>we.log.sessionId===null||we.log.sessionId===""?he:Dn(he,[we.log.sessionId])),Y(we.log))}catch{ee("Failed to parse SSE data")}},z.onerror=()=>{ee("SSE connection lost, reconnecting..."),h(!0),z.close(),A.current!==null&&clearTimeout(A.current),A.current=setTimeout(_e,3e3)}},[d,e,Y,ee]),fe=p.useCallback(z=>{if(e===void 0)return;const M=P.current+1;P.current=M,v(!0),te("Loading session logs",M),d(),rr(e,z).then(J=>{if(P.current!==M)return;const oe=J.logs;D.current=gn(oe),n(oe),g(J),o(e),v(!1),F(),d()}).catch(J=>{P.current===M&&(n([]),g(null),v(!1),F(),ee(J instanceof Error?J.message:"Failed to load session logs"))})},[d,e,ee,te,F]),xe=p.useCallback(z=>{const M=P.current+1;P.current=M,v(!0),te("Reloading full session",M),d(),(async()=>{const J=[];let oe=await rr(z,{kind:"oldest"},Vo);J.push(...oe.logs),V("Reloading full session",M,J.length,1);let ie=1;for(;oe.hasNewer&&oe.newestLogId!==null&&ie<bg;)oe=await rr(z,{kind:"newer",afterLogId:oe.newestLogId},Vo),J.push(...oe.logs),ie+=1,V("Reloading full session",M,J.length,ie);P.current===M&&(n(we=>{const he=io(we,J);return D.current=gn(he),he}),c(we=>Dn(we,[z])),v(!1),F(),oe.hasNewer?f({message:`Loaded ${String(J.length)} logs for this session. More history is available.`,tone:"success"}):d())})().catch(J=>{P.current===M&&(v(!1),F(),ee(J instanceof Error?J.message:"Failed to reload session logs"))})},[d,ee,f,te,F,V]);p.useEffect(()=>{if(e===void 0){S([]);return}let z=!1;return Ke("/api/groups",rp,Dz).then(M=>M.groups).then(M=>{z||M===null||S(Rz(M,e))}).catch(()=>{z||S([])}),()=>{z=!0}},[e]),p.useEffect(()=>{ce()},[ce]),p.useEffect(()=>()=>{F()},[F]),p.useEffect(()=>{e!==void 0&&fe({kind:"newest"})},[e,fe]),p.useEffect(()=>{e===void 0&&s!=="__all__"&&xe(s)},[e,xe,s]),p.useEffect(()=>{if(e===void 0)return _e(),()=>{T.current&&(T.current.close(),T.current=null),A.current!==null&&(clearTimeout(A.current),A.current=null),$.current!==null&&(clearTimeout($.current),$.current=null)}},[_e,e]),p.useEffect(()=>{const z=window.location.hash;if(!z.startsWith("#log-")||I.current===z)return;const M=z.slice(1),J=Number(M.replace(/^log-/,""));Number.isInteger(J)&&J>0&&pr({logId:J,tab:"request"});let oe=!1,ie=0,we=null,he=null;const me=()=>{if(oe)return;const Ie=document.getElementById(M);if(Ie!==null){I.current=z,Ie.scrollIntoView({block:"center",behavior:"smooth"}),Ie instanceof HTMLElement&&(we=Ie,Ie.setAttribute("data-deep-link-highlight","true"),he=window.setTimeout(()=>{Ie.removeAttribute("data-deep-link-highlight")},Lz),Ie.focus({preventScroll:!0}),Ie.getAttribute("data-nav-action")==="expand"&&Ie.click());return}ie+=1,ie<Mz&&window.setTimeout(me,100)};return me(),()=>{oe=!0,he!==null&&window.clearTimeout(he),we!==null&&we.removeAttribute("data-deep-link-highlight")}},[X.length]);const de=p.useCallback(()=>{const z=oo(t);F(),v(!1),D.current.clear(),n([]),g(null),c(M=>Dn(M,z)),f({message:"Cleared the current view. Stored logs are still reloadable.",tone:"success"})},[t,f,F]),ge=p.useCallback(z=>{if(z.length===0)return;const M=new Set(z);n(J=>{const oe=J.filter(we=>M.has(we.id)),ie=J.filter(we=>!M.has(we.id));return c(we=>Dn(we,oo(oe))),D.current=gn(ie),ie}),f({message:"Cleared this group from the current view.",tone:"success"})},[f]),be=p.useCallback(async()=>{const z=P.current+1;P.current=z,v(!0),F(),d();try{if(s==="__all__"){te("Deleting stored history",z);const he=await ht("/api/logs",ef,{method:"DELETE"}),me=await Bz();if(P.current!==z)return;n([]),D.current.clear(),g(null),c([]),S([]),v(!1),F();const Ie=me.ok?` Cleared ${me.deleted.toString()} group${me.deleted===1?"":"s"}.`:" Group cleanup failed; open Groups to retry Clear.";f({message:`Deleted ${he.cleared.toString()} stored log${he.cleared===1?"":"s"} across all sessions.${Ie}`,tone:me.ok?"success":"error"});return}const M=s;te("Deleting session history",z);const J=await Uz(M,(he,me)=>{V("Deleting session history",z,he,me)}),oe=new Set(J.ids);for(const he of t)he.sessionId===M&&oe.add(he.id);const ie=[...oe].filter(he=>Number.isInteger(he)&&he>=0);if(ie.length===0){if(P.current!==z)return;n(he=>{const me=he.filter(Ie=>Ie.sessionId!==M);return D.current=gn(me),me}),g(he=>he===null?null:{...he,logs:he.logs.filter(me=>me.sessionId!==M)}),c(he=>he.filter(me=>me!==M)),v(!1),F(),f({message:"No stored log records were found for this session.",tone:"success"});return}const we=await ht("/api/logs",ef,{method:"DELETE",headers:{"content-type":"application/json"},body:JSON.stringify({ids:ie})});if(P.current!==z)return;n(he=>{const me=he.filter(Ie=>Ie.sessionId!==M);return D.current=gn(me),me}),g(he=>he===null?null:{...he,logs:he.logs.filter(me=>me.sessionId!==M)}),c(he=>he.filter(me=>me!==M)),v(!1),F(),f({message:`Deleted ${we.cleared.toString()} stored log${we.cleared===1?"":"s"} for this session${J.truncated?". More history may remain.":"."}`,tone:J.truncated?"error":"success"})}finally{P.current===z&&(v(!1),F())}},[t,d,s,f,te,F,V]),Ce=p.useCallback(()=>{if(e!==void 0){fe({kind:"newest"});return}if(s==="__all__"){ce();return}xe(s)},[e,fe,ce,xe,s]),Re=p.useCallback(async z=>{const M=new FormData;M.set("file",z);const J=await ht("/api/logs/import",iy,{method:"POST",body:M});return n(oe=>{const ie=new Set(J.logs.map(he=>he.id)),we=io(oe.filter(he=>!ie.has(he.id)),J.logs);return D.current=gn(we),we}),o(J.sessionId),a("__all__"),g(null),d(),J},[d]),{strip:k,captureMode:Q,slowResponseThresholdSeconds:q,timeDisplayFormat:O}=Al(),R=Q,U=p.useCallback(()=>{fe({kind:"oldest"})},[fe]),re=p.useCallback(()=>{fe({kind:"newest"})},[fe]),se=p.useCallback(()=>{const z=t[0],M=b?.oldestLogId??z?.id??null;M!==null&&fe({kind:"older",beforeLogId:M})},[t,fe,b]),Z=p.useCallback(()=>{const z=t[t.length-1],M=b?.newestLogId??z?.id??null;M!==null&&fe({kind:"newer",afterLogId:M})},[t,fe,b]),le=p.useMemo(()=>{if(e!==void 0)return{isLoading:x,loadProgress:y,total:b?.total??null,pageSize:b?.limit??Ac,hasOlder:b?.hasOlder??!1,hasNewer:b?.hasNewer??!1,oldestLogId:b?.oldestLogId??null,newestLogId:b?.newestLogId??null,onOldest:U,onOlder:se,onNewer:Z,onNewest:re}},[e,re,Z,se,U,b,y,x]);return r.jsxs(r.Fragment,{children:[r.jsx(U0,{notice:u,onDismiss:d}),r.jsx(J_,{}),r.jsx(Tz,{logs:X,sessions:H,models:B,selectedSession:s,selectedModel:i,onSessionChange:o,onModelChange:a,onClearAll:de,onDeleteCurrentView:be,onReloadSession:e!==void 0||s!=="__all__"?Ce:void 0,onClearGroup:ge,onNotify:f,onImportLogs:e===void 0?Re:void 0,isLoading:e===void 0&&!m||x,pagination:le,sessionLoadProgress:y,sessionMemberships:j,viewMode:R,captureMode:Q,strip:k,slowResponseThresholdSeconds:q,timeDisplayFormat:O,hideSessionFilter:e!==void 0,pinnedSessionId:e})]})}export{Hz as $,K as A,Oe as B,uw as C,Yn as D,G as E,pe as F,pr as G,Yo as H,Le as I,C as J,ar as K,TT as L,fp as M,w8 as N,Uw as O,Zz as P,PR as Q,x_ as R,DR as S,_0 as T,zR as U,Mp as V,Vz as W,vr as X,it as Y,ze as Z,tE as _,z4 as a,ap as a0,nE as a1,sE as a2,Ds as a3,Za as a4,Mo as a5,lr as a6,ke as a7,rn as a8,p5 as a9,Qe as aa,Mf as ab,wT as ac,Uy as ad,ae as b,ue as c,wa as d,pp as e,Fe as f,m0 as g,Et as h,Ge as i,It as j,Tt as k,Ke as l,Xn as m,Qn as n,es as o,h_ as p,k0 as q,dr as r,Ct as s,Nt as t,Bl as u,je as v,Sn as w,ut as x,dt as y,ft as z};
|