@tonyclaw/agent-inspector 3.0.14 → 3.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/assets/{CompareDrawer-DDfwHQUi.js → CompareDrawer-UaIxykqz.js} +1 -1
  3. package/.output/public/assets/ProxyViewerContainer-DlpfcX56.js +106 -0
  4. package/.output/public/assets/{ReplayDialog-D-26DMBt.js → ReplayDialog-BFFomU1m.js} +1 -1
  5. package/.output/public/assets/{RequestAnatomy-B6zNFqNX.js → RequestAnatomy-DKQJBt_c.js} +1 -1
  6. package/.output/public/assets/{ResponseView-Ccy95rWI.js → ResponseView-D7yotmne.js} +2 -2
  7. package/.output/public/assets/{StreamingChunkSequence-yIiscGuE.js → StreamingChunkSequence-Da-6WNFG.js} +1 -1
  8. package/.output/public/assets/{_sessionId-BnMB0zab.js → _sessionId-ByTXLS-w.js} +1 -1
  9. package/.output/public/assets/{index-BbtAIxbg.js → index-BrM8t5mc.js} +1 -1
  10. package/.output/public/assets/index-CGpPRty8.js +1 -0
  11. package/.output/public/assets/index-HRfrFVYw.css +1 -0
  12. package/.output/public/assets/{json-viewer-C838cVmD.js → json-viewer-DyjXQdVu.js} +1 -1
  13. package/.output/public/assets/{main-BfN4culo.js → main-Zv_gjZMb.js} +2 -2
  14. package/.output/server/_libs/lucide-react.mjs +215 -201
  15. package/.output/server/{_sessionId-DoprmwZV.mjs → _sessionId-GcFhWT0i.mjs} +2 -2
  16. package/.output/server/_ssr/{CompareDrawer-YMLJNxXR.mjs → CompareDrawer-BV7dw1TN.mjs} +3 -3
  17. package/.output/server/_ssr/{ProxyViewerContainer-C62eZnva.mjs → ProxyViewerContainer-CcgfvaS4.mjs} +725 -378
  18. package/.output/server/_ssr/{ReplayDialog-NmN7Ukjo.mjs → ReplayDialog-B7sBKxIO.mjs} +4 -4
  19. package/.output/server/_ssr/{RequestAnatomy-Dawm2qxe.mjs → RequestAnatomy-s_9Veje2.mjs} +3 -3
  20. package/.output/server/_ssr/{ResponseView-BHyAY83t.mjs → ResponseView-DsOFPCvF.mjs} +3 -3
  21. package/.output/server/_ssr/{StreamingChunkSequence-C4qgcJbg.mjs → StreamingChunkSequence-CyA1XtiF.mjs} +3 -3
  22. package/.output/server/_ssr/{index-B2Pf6W_T.mjs → index-CDDRt201.mjs} +2 -2
  23. package/.output/server/_ssr/index.mjs +2 -2
  24. package/.output/server/_ssr/{json-viewer-u67BASf8.mjs → json-viewer-BFV-xtRM.mjs} +3 -3
  25. package/.output/server/_ssr/{router-CZhFVMGN.mjs → router-B2Q7vHPM.mjs} +58 -14
  26. package/.output/server/{_tanstack-start-manifest_v-Dk2HfOoe.mjs → _tanstack-start-manifest_v-Dm_GmuRz.mjs} +1 -1
  27. package/.output/server/index.mjs +73 -73
  28. package/package.json +1 -1
  29. package/src/components/ProxyViewer.tsx +470 -197
  30. package/src/components/ProxyViewerContainer.tsx +145 -17
  31. package/src/components/proxy-viewer/ToolTraceEvents.tsx +36 -10
  32. package/src/components/proxy-viewer/TurnGroup.tsx +4 -1
  33. package/src/proxy/formats/openai/codexMetadata.ts +61 -0
  34. package/src/proxy/formats/openai/handler.ts +8 -2
  35. package/styles/globals.css +54 -0
  36. package/.output/public/assets/ProxyViewerContainer-CbNsaoQw.js +0 -106
  37. package/.output/public/assets/index-49RC4dlD.js +0 -1
  38. package/.output/public/assets/index-DXKupW0r.css +0 -1
@@ -1,106 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CompareDrawer-DDfwHQUi.js","assets/main-BfN4culo.js","assets/ReplayDialog-D-26DMBt.js","assets/ResponseView-Ccy95rWI.js","assets/RequestAnatomy-B6zNFqNX.js","assets/StreamingChunkSequence-yIiscGuE.js","assets/json-viewer-C838cVmD.js"])))=>i.map(i=>d[i]);
2
- import{u as Vt,a as Cd,r as p,j as r,c as gr,g as B0,b as Nd,d as or,e as U0,f as pt,h as Td,_ as Un}from"./main-BfN4culo.js";function te(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,d=Object.keys(u);for(let f=0;f<d.length;f++){const m=d[f];m in l||(l[m]=u[m].bind(l))}}const o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function a(l){var c;const u=n?.Parent?new i:this;s(u,l),(c=u._zod).deferred??(c.deferred=[]);for(const d of u._zod.deferred)d();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 ds extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Ed extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Ad={};function bn(e){return Ad}function Rd(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 ea(e,t){return typeof t=="bigint"?t.toString():t}function Mo(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Za(e){return e==null}function Ga(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function W0(e,t){const n=(e.toString().split(".")[1]||"").length,s=t.toString();let o=(s.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(s)){const c=s.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}const i=n>o?n:o,a=Number.parseInt(e.toFixed(i).replace(".","")),l=Number.parseInt(t.toFixed(i).replace(".",""));return a%l/10**i}const cc=Symbol("evaluating");function Oe(e,t,n){let s;Object.defineProperty(e,t,{get(){if(s!==cc)return s===void 0&&(s=cc,s=n()),s},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Wn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function kn(...e){const t={};for(const n of e){const s=Object.getOwnPropertyDescriptors(n);Object.assign(t,s)}return Object.defineProperties({},t)}function uc(e){return JSON.stringify(e)}function H0(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Id="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Gs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const V0=Mo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function xs(e){if(Gs(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(Gs(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function zd(e){return xs(e)?{...e}:Array.isArray(e)?[...e]:e}const q0=new Set(["string","number","symbol"]);function bs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function jn(e,t,n){const s=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(s._zod.parent=e),s}function _e(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 Z0(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const G0={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 K0(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=kn(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 Wn(this,"shape",a),a},checks:[]});return jn(e,i)}function J0(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=kn(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 Wn(this,"shape",a),a},checks:[]});return jn(e,i)}function Y0(e,t){if(!xs(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=kn(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return Wn(this,"shape",i),i}});return jn(e,o)}function X0(e,t){if(!xs(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n=kn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t};return Wn(this,"shape",s),s}});return jn(e,n)}function Q0(e,t){const n=kn(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t._zod.def.shape};return Wn(this,"shape",s),s},get catchall(){return t._zod.def.catchall},checks:[]});return jn(e,n)}function eg(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=kn(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 Wn(this,"shape",c),c},checks:[]});return jn(t,a)}function tg(e,t,n){const s=kn(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 Wn(this,"shape",i),i}});return jn(t,s)}function ls(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 cs(e,t){return t.map(n=>{var s;return(s=n).path??(s.path=[]),n.path.unshift(e),n})}function xr(e){return typeof e=="string"?e:e?.message}function vn(e,t,n){const s={...e,path:e.path??[]};if(!e.message){const o=xr(e.inst?._zod.def?.error?.(e))??xr(t?.error?.(e))??xr(n.customError?.(e))??xr(n.localeError?.(e))??"Invalid input";s.message=o}return delete s.inst,delete s.continue,t?.reportInput||delete s.input,s}function Ka(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Ks(...e){const[t,n,s]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:s}:{...t}}const Od=(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,ea,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Pd=te("$ZodError",Od),Md=te("$ZodError",Od,{Parent:Error});function ng(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 sg(e,t=n=>n.message){const n={_errors:[]},s=o=>{for(const i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>s({issues:a}));else if(i.code==="invalid_key")s({issues:i.issues});else if(i.code==="invalid_element")s({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let a=n,l=0;for(;l<i.path.length;){const c=i.path[l];l===i.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(t(i))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return s(e),n}const Ja=e=>(t,n,s,o)=>{const i=s?Object.assign(s,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new ds;if(a.issues.length){const l=new(o?.Err??e)(a.issues.map(c=>vn(c,i,bn())));throw Id(l,o?.callee),l}return a.value},Ya=e=>async(t,n,s,o)=>{const i=s?Object.assign(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=>vn(c,i,bn())));throw Id(l,o?.callee),l}return a.value},Lo=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 ds;return i.issues.length?{success:!1,error:new(e??Pd)(i.issues.map(a=>vn(a,o,bn())))}:{success:!0,data:i.value}},rg=Lo(Md),Do=e=>async(t,n,s)=>{const o=s?Object.assign(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=>vn(a,o,bn())))}:{success:!0,data:i.value}},og=Do(Md),ig=e=>(t,n,s)=>{const o=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return Ja(e)(t,n,o)},ag=e=>(t,n,s)=>Ja(e)(t,n,s),lg=e=>async(t,n,s)=>{const o=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return Ya(e)(t,n,o)},cg=e=>async(t,n,s)=>Ya(e)(t,n,s),ug=e=>(t,n,s)=>{const o=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return Lo(e)(t,n,o)},dg=e=>(t,n,s)=>Lo(e)(t,n,s),fg=e=>async(t,n,s)=>{const o=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return Do(e)(t,n,o)},pg=e=>async(t,n,s)=>Do(e)(t,n,s),hg=/^[cC][^\s-]{8,}$/,mg=/^[0-9a-z]+$/,gg=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,xg=/^[0-9a-vA-V]{20}$/,bg=/^[A-Za-z0-9]{27}$/,vg=/^[a-zA-Z0-9_-]{21}$/,yg=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,wg=/^([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})$/,dc=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)$/,_g=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,kg="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function jg(){return new RegExp(kg,"u")}const Sg=/^(?:(?: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])$/,Cg=/^(([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}|:))$/,Ng=/^((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])$/,Tg=/^(([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])$/,Eg=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ld=/^[A-Za-z0-9_-]*$/,Ag=/^\+[1-9]\d{6,14}$/,Dd="(?:(?:\\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])))",Rg=new RegExp(`^${Dd}$`);function $d(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 Ig(e){return new RegExp(`^${$d(e)}$`)}function zg(e){const t=$d({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(`^${Dd}T(?:${s})$`)}const Og=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Pg=/^-?\d+$/,Fd=/^-?\d+(?:\.\d+)?$/,Mg=/^(?:true|false)$/i,Lg=/^null$/i,Dg=/^[^A-Z]*$/,$g=/^[^a-z]*$/,ht=te("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Bd={number:"number",bigint:"bigint",object:"date"},Ud=te("$ZodCheckLessThan",(e,t)=>{ht.init(e,t);const n=Bd[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})}}),Wd=te("$ZodCheckGreaterThan",(e,t)=>{ht.init(e,t);const n=Bd[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})}}),Fg=te("$ZodCheckMultipleOf",(e,t)=>{ht.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):W0(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})}}),Bg=te("$ZodCheckNumberFormat",(e,t)=>{ht.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),s=n?"int":"number",[o,i]=G0[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=Pg)}),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})}}),Ug=te("$ZodCheckMaxLength",(e,t)=>{var n;ht.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!Za(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=Ka(o);s.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Wg=te("$ZodCheckMinLength",(e,t)=>{var n;ht.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!Za(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=Ka(o);s.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Hg=te("$ZodCheckLengthEquals",(e,t)=>{var n;ht.init(e,t),(n=e._zod.def).when??(n.when=s=>{const o=s.value;return!Za(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=Ka(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})}}),$o=te("$ZodCheckStringFormat",(e,t)=>{var n,s;ht.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=()=>{})}),Vg=te("$ZodCheckRegex",(e,t)=>{$o.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})}}),qg=te("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Dg),$o.init(e,t)}),Zg=te("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=$g),$o.init(e,t)}),Gg=te("$ZodCheckIncludes",(e,t)=>{ht.init(e,t);const n=bs(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})}}),Kg=te("$ZodCheckStartsWith",(e,t)=>{ht.init(e,t);const n=new RegExp(`^${bs(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})}}),Jg=te("$ZodCheckEndsWith",(e,t)=>{ht.init(e,t);const n=new RegExp(`.*${bs(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})}}),Yg=te("$ZodCheckOverwrite",(e,t)=>{ht.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Xg{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
- `).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
- `))}}const Qg={major:4,minor:3,patch:6},Ue=te("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Qg;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=ls(a),d;for(const f of l){if(f._zod.def.when){if(!f._zod.def.when(a))continue}else if(u)continue;const m=a.issues.length,h=f._zod.check(a);if(h instanceof Promise&&c?.async===!1)throw new ds;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await h,a.issues.length!==m&&(u||(u=ls(a,m)))});else{if(a.issues.length===m)continue;u||(u=ls(a,m))}}return d?d.then(()=>a):a},i=(a,l,c)=>{if(ls(a))return a.aborted=!0,a;const u=o(l,s,c);if(u instanceof Promise){if(c.async===!1)throw new ds;return u.then(d=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(a,l)=>{if(l.skipChecks)return e._zod.parse(a,l);if(l.direction==="backward"){const u=e._zod.parse({value:a.value,issues:[]},{...l,skipChecks:!0});return u instanceof Promise?u.then(d=>i(d,a,l)):i(u,a,l)}const c=e._zod.parse(a,l);if(c instanceof Promise){if(l.async===!1)throw new ds;return c.then(u=>o(u,s,l))}return o(c,s,l)}}Oe(e,"~standard",()=>({validate:o=>{try{const i=rg(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return og(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),Xa=te("$ZodString",(e,t)=>{Ue.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Og(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}}),He=te("$ZodStringFormat",(e,t)=>{$o.init(e,t),Xa.init(e,t)}),ex=te("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=wg),He.init(e,t)}),tx=te("$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=dc(s))}else t.pattern??(t.pattern=dc());He.init(e,t)}),nx=te("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=_g),He.init(e,t)}),sx=te("$ZodURL",(e,t)=>{He.init(e,t),e._zod.check=n=>{try{const s=n.value.trim(),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})}}}),rx=te("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=jg()),He.init(e,t)}),ox=te("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=vg),He.init(e,t)}),ix=te("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=hg),He.init(e,t)}),ax=te("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=mg),He.init(e,t)}),lx=te("$ZodULID",(e,t)=>{t.pattern??(t.pattern=gg),He.init(e,t)}),cx=te("$ZodXID",(e,t)=>{t.pattern??(t.pattern=xg),He.init(e,t)}),ux=te("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=bg),He.init(e,t)}),dx=te("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=zg(t)),He.init(e,t)}),fx=te("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Rg),He.init(e,t)}),px=te("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Ig(t)),He.init(e,t)}),hx=te("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=yg),He.init(e,t)}),mx=te("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Sg),He.init(e,t),e._zod.bag.format="ipv4"}),gx=te("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Cg),He.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),xx=te("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Ng),He.init(e,t)}),bx=te("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Tg),He.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 Hd(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const vx=te("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Eg),He.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{Hd(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function yx(e){if(!Ld.test(e))return!1;const t=e.replace(/[-_]/g,s=>s==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Hd(n)}const wx=te("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ld),He.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{yx(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),_x=te("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Ag),He.init(e,t)});function kx(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 jx=te("$ZodJWT",(e,t)=>{He.init(e,t),e._zod.check=n=>{kx(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Vd=te("$ZodNumber",(e,t)=>{Ue.init(e,t),e._zod.pattern=e._zod.bag.pattern??Fd,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}}),Sx=te("$ZodNumberFormat",(e,t)=>{Bg.init(e,t),Vd.init(e,t)}),Cx=te("$ZodBoolean",(e,t)=>{Ue.init(e,t),e._zod.pattern=Mg,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}}),Nx=te("$ZodNull",(e,t)=>{Ue.init(e,t),e._zod.pattern=Lg,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}}),Tx=te("$ZodUnknown",(e,t)=>{Ue.init(e,t),e._zod.parse=n=>n}),Ex=te("$ZodNever",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,s)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function fc(e,t,n){e.issues.length&&t.issues.push(...cs(n,e.issues)),t.value[n]=e.value}const Ax=te("$ZodArray",(e,t)=>{Ue.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=>fc(u,n,a))):fc(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function to(e,t,n,s,o){if(e.issues.length){if(o&&!(n in s))return;t.issues.push(...cs(n,e.issues))}e.value===void 0?n in s&&(t.value[n]=void 0):t.value[n]=e.value}function qd(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=Z0(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Zd(e,t,n,s,o,i){const a=[],l=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optout==="optional";for(const f in t){if(l.has(f))continue;if(u==="never"){a.push(f);continue}const m=c.run({value:t[f],issues:[]},s);m instanceof Promise?e.push(m.then(h=>to(h,n,f,t,d))):to(m,n,f,t,d)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}const Rx=te("$ZodObject",(e,t)=>{if(Ue.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const l=t.shape;Object.defineProperty(t,"shape",{get:()=>{const c={...l};return Object.defineProperty(t,"shape",{value:c}),c}})}const s=Mo(()=>qd(t));Oe(e._zod,"propValues",()=>{const l=t.shape,c={};for(const u in l){const d=l[u]._zod;if(d.values){c[u]??(c[u]=new Set);for(const f of d.values)c[u].add(f)}}return c});const o=Gs,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 d=[],f=a.shape;for(const m of a.keys){const h=f[m],v=h._zod.optout==="optional",g=h._zod.run({value:u[m],issues:[]},c);g instanceof Promise?d.push(g.then(x=>to(x,l,m,u,v))):to(g,l,m,u,v)}return i?Zd(d,u,l,c,s.value,e):d.length?Promise.all(d).then(()=>l):l}}),Ix=te("$ZodObjectJIT",(e,t)=>{Rx.init(e,t);const n=e._zod.parse,s=Mo(()=>qd(t)),o=m=>{const h=new Xg(["shape","payload","ctx"]),v=s.value,g=k=>{const j=uc(k);return`shape[${j}]._zod.run({ value: input[${j}], issues: [] }, ctx)`};h.write("const input = payload.value;");const x=Object.create(null);let b=0;for(const k of v.keys)x[k]=`key_${b++}`;h.write("const newResult = {};");for(const k of v.keys){const j=x[k],C=uc(k),N=m[k]?._zod?.optout==="optional";h.write(`const ${j} = ${g(k)};`),N?h.write(`
5
- if (${j}.issues.length) {
6
- if (${C} in input) {
7
- payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
8
- ...iss,
9
- path: iss.path ? [${C}, ...iss.path] : [${C}]
10
- })));
11
- }
12
- }
13
-
14
- if (${j}.value === undefined) {
15
- if (${C} in input) {
16
- newResult[${C}] = undefined;
17
- }
18
- } else {
19
- newResult[${C}] = ${j}.value;
20
- }
21
-
22
- `):h.write(`
23
- if (${j}.issues.length) {
24
- payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
25
- ...iss,
26
- path: iss.path ? [${C}, ...iss.path] : [${C}]
27
- })));
28
- }
29
-
30
- if (${j}.value === undefined) {
31
- if (${C} in input) {
32
- newResult[${C}] = undefined;
33
- }
34
- } else {
35
- newResult[${C}] = ${j}.value;
36
- }
37
-
38
- `)}h.write("payload.value = newResult;"),h.write("return payload;");const y=h.compile();return(k,j)=>y(m,k,j)};let i;const a=Gs,l=!Ad.jitless,u=l&&V0.value,d=t.catchall;let f;e._zod.parse=(m,h)=>{f??(f=s.value);const v=m.value;return a(v)?l&&u&&h?.async===!1&&h.jitless!==!0?(i||(i=o(t.shape)),m=i(m,h),d?Zd([],v,m,h,f,e):m):n(m,h):(m.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),m)}});function pc(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=>!ls(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=>vn(a,s,bn())))}),t)}const Gd=te("$ZodUnion",(e,t)=>{Ue.init(e,t),Oe(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),Oe(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),Oe(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),Oe(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>Ga(i.source)).join("|")})$`)}});const n=t.options.length===1,s=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return s(o,i);let a=!1;const l=[];for(const c of t.options){const u=c._zod.run({value:o.value,issues:[]},i);if(u instanceof Promise)l.push(u),a=!0;else{if(u.issues.length===0)return u;l.push(u)}}return a?Promise.all(l).then(c=>pc(c,o,e,i)):pc(l,o,e,i)}}),zx=te("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Gd.init(e,t);const n=e._zod.parse;Oe(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=Mo(()=>{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(!Gs(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?n(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:a,path:[t.discriminator],inst:e}),o)}}),Ox=te("$ZodIntersection",(e,t)=>{Ue.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])=>hc(n,c,u)):hc(n,i,a)}});function ta(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(xs(e)&&xs(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=ta(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=ta(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 hc(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}),ls(e))return e;const a=ta(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 Px=te("$ZodRecord",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,s)=>{const o=n.value;if(!xs(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;const i=[],a=t.keyType._zod.values;if(a){n.value={};const l=new Set;for(const u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){l.add(typeof u=="number"?u.toString():u);const d=t.valueType._zod.run({value:o[u],issues:[]},s);d instanceof Promise?i.push(d.then(f=>{f.issues.length&&n.issues.push(...cs(u,f.issues)),n.value[u]=f.value})):(d.issues.length&&n.issues.push(...cs(u,d.issues)),n.value[u]=d.value)}let c;for(const u in o)l.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(const l of Reflect.ownKeys(o)){if(l==="__proto__")continue;let c=t.keyType._zod.run({value:l,issues:[]},s);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof l=="string"&&Fd.test(l)&&c.issues.length){const f=t.keyType._zod.run({value:Number(l),issues:[]},s);if(f instanceof Promise)throw new Error("Async schemas not supported in object keys currently");f.issues.length===0&&(c=f)}if(c.issues.length){t.mode==="loose"?n.value[l]=o[l]:n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(f=>vn(f,s,bn())),input:l,path:[l],inst:e});continue}const d=t.valueType._zod.run({value:o[l],issues:[]},s);d instanceof Promise?i.push(d.then(f=>{f.issues.length&&n.issues.push(...cs(l,f.issues)),n.value[c.value]=f.value})):(d.issues.length&&n.issues.push(...cs(l,d.issues)),n.value[c.value]=d.value)}}return i.length?Promise.all(i).then(()=>n):n}}),Mx=te("$ZodEnum",(e,t)=>{Ue.init(e,t);const n=Rd(t.entries),s=new Set(n);e._zod.values=s,e._zod.pattern=new RegExp(`^(${n.filter(o=>q0.has(typeof o)).map(o=>typeof o=="string"?bs(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}}),Lx=te("$ZodLiteral",(e,t)=>{if(Ue.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(s=>typeof s=="string"?bs(s):s?bs(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}}),Dx=te("$ZodTransform",(e,t)=>{Ue.init(e,t),e._zod.parse=(n,s)=>{if(s.direction==="backward")throw new Ed(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));if(o instanceof Promise)throw new ds;return n.value=o,n}});function mc(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Kd=te("$ZodOptional",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Oe(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Oe(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Ga(n.source)})?$`):void 0}),e._zod.parse=(n,s)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(n,s);return o instanceof Promise?o.then(i=>mc(i,n.value)):mc(o,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,s)}}),$x=te("$ZodExactOptional",(e,t)=>{Kd.init(e,t),Oe(e._zod,"values",()=>t.innerType._zod.values),Oe(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,s)=>t.innerType._zod.run(n,s)}),Fx=te("$ZodNullable",(e,t)=>{Ue.init(e,t),Oe(e._zod,"optin",()=>t.innerType._zod.optin),Oe(e._zod,"optout",()=>t.innerType._zod.optout),Oe(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Ga(n.source)}|null)$`):void 0}),Oe(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)}),Bx=te("$ZodDefault",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",Oe(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=>gc(i,t)):gc(o,t)}});function gc(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Ux=te("$ZodPrefault",(e,t)=>{Ue.init(e,t),e._zod.optin="optional",Oe(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))}),Wx=te("$ZodNonOptional",(e,t)=>{Ue.init(e,t),Oe(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=>xc(i,e)):xc(o,e)}});function xc(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 Hx=te("$ZodCatch",(e,t)=>{Ue.init(e,t),Oe(e._zod,"optin",()=>t.innerType._zod.optin),Oe(e._zod,"optout",()=>t.innerType._zod.optout),Oe(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=>vn(a,s,bn()))},input:n.value}),n.issues=[]),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>vn(i,s,bn()))},input:n.value}),n.issues=[]),n)}}),Vx=te("$ZodPipe",(e,t)=>{Ue.init(e,t),Oe(e._zod,"values",()=>t.in._zod.values),Oe(e._zod,"optin",()=>t.in._zod.optin),Oe(e._zod,"optout",()=>t.out._zod.optout),Oe(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=>br(a,t.in,s)):br(i,t.in,s)}const o=t.in._zod.run(n,s);return o instanceof Promise?o.then(i=>br(i,t.out,s)):br(o,t.out,s)}});function br(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const qx=te("$ZodReadonly",(e,t)=>{Ue.init(e,t),Oe(e._zod,"propValues",()=>t.innerType._zod.propValues),Oe(e._zod,"values",()=>t.innerType._zod.values),Oe(e._zod,"optin",()=>t.innerType?._zod?.optin),Oe(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(bc):bc(o)}});function bc(e){return e.value=Object.freeze(e.value),e}const Zx=te("$ZodLazy",(e,t)=>{Ue.init(e,t),Oe(e._zod,"innerType",()=>t.getter()),Oe(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),Oe(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),Oe(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),Oe(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,s)=>e._zod.innerType._zod.run(n,s)}),Gx=te("$ZodCustom",(e,t)=>{ht.init(e,t),Ue.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=>vc(i,n,s,e));vc(o,n,s,e)}});function vc(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(Ks(o))}}var yc;class Kx{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 Jx(){return new Kx}(yc=globalThis).__zod_globalRegistry??(yc.__zod_globalRegistry=Jx());const Ws=globalThis.__zod_globalRegistry;function Yx(e,t){return new e({type:"string",..._e(t)})}function Xx(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,..._e(t)})}function wc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,..._e(t)})}function Qx(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,..._e(t)})}function e1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",..._e(t)})}function t1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",..._e(t)})}function n1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",..._e(t)})}function s1(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,..._e(t)})}function r1(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,..._e(t)})}function o1(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,..._e(t)})}function i1(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,..._e(t)})}function a1(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,..._e(t)})}function l1(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,..._e(t)})}function c1(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,..._e(t)})}function u1(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,..._e(t)})}function d1(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,..._e(t)})}function f1(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,..._e(t)})}function p1(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,..._e(t)})}function h1(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,..._e(t)})}function m1(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,..._e(t)})}function g1(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,..._e(t)})}function x1(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,..._e(t)})}function b1(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,..._e(t)})}function v1(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,..._e(t)})}function y1(e,t){return new e({type:"string",format:"date",check:"string_format",..._e(t)})}function w1(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,..._e(t)})}function _1(e,t){return new e({type:"string",format:"duration",check:"string_format",..._e(t)})}function k1(e,t){return new e({type:"number",checks:[],..._e(t)})}function j1(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",..._e(t)})}function S1(e,t){return new e({type:"boolean",..._e(t)})}function C1(e,t){return new e({type:"null",..._e(t)})}function N1(e){return new e({type:"unknown"})}function T1(e,t){return new e({type:"never",..._e(t)})}function _c(e,t){return new Ud({check:"less_than",..._e(t),value:e,inclusive:!1})}function gi(e,t){return new Ud({check:"less_than",..._e(t),value:e,inclusive:!0})}function kc(e,t){return new Wd({check:"greater_than",..._e(t),value:e,inclusive:!1})}function xi(e,t){return new Wd({check:"greater_than",..._e(t),value:e,inclusive:!0})}function jc(e,t){return new Fg({check:"multiple_of",..._e(t),value:e})}function Jd(e,t){return new Ug({check:"max_length",..._e(t),maximum:e})}function no(e,t){return new Wg({check:"min_length",..._e(t),minimum:e})}function Yd(e,t){return new Hg({check:"length_equals",..._e(t),length:e})}function E1(e,t){return new Vg({check:"string_format",format:"regex",..._e(t),pattern:e})}function A1(e){return new qg({check:"string_format",format:"lowercase",..._e(e)})}function R1(e){return new Zg({check:"string_format",format:"uppercase",..._e(e)})}function I1(e,t){return new Gg({check:"string_format",format:"includes",..._e(t),includes:e})}function z1(e,t){return new Kg({check:"string_format",format:"starts_with",..._e(t),prefix:e})}function O1(e,t){return new Jg({check:"string_format",format:"ends_with",..._e(t),suffix:e})}function Ss(e){return new Yg({check:"overwrite",tx:e})}function P1(e){return Ss(t=>t.normalize(e))}function M1(){return Ss(e=>e.trim())}function L1(){return Ss(e=>e.toLowerCase())}function D1(){return Ss(e=>e.toUpperCase())}function $1(){return Ss(e=>H0(e))}function F1(e,t,n){return new e({type:"array",element:t,..._e(n)})}function B1(e,t,n){return new e({type:"custom",check:"custom",fn:t,..._e(n)})}function U1(e){const t=W1(n=>(n.addIssue=s=>{if(typeof s=="string")n.issues.push(Ks(s,n.value,t._zod.def));else{const o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(Ks(o))}},e(n.value,n)));return t}function W1(e,t){const n=new ht({check:"custom",..._e(t)});return n._zod.check=e,n}function Xd(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??Ws,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 Ke(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 d={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,d);else{const m=a.schema,h=t.processors[o.type];if(!h)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);h(e,t,m,d)}const f=e._zod.parent;f&&(a.ref||(a.ref=f),Ke(f,t,d),t.seen.get(f).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&at(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&a.schema._prefault&&((s=a.schema).default??(s.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function Qd(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 f=e.external.registry.get(a[0])?.id,m=e.external.uri??(v=>v);if(f)return{ref:m(f)};const h=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=h,{defId:h,ref:`${m("__shared")}#/${l}/${h}`}}if(a[1]===n)return{ref:"#"};const u=`#/${l}/`,d=a[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:u+d}},i=a=>{if(a[1].schema.$ref)return;const l=a[1],{ref:c,defId:u}=o(a);l.def={...l.schema},u&&(l.defId=u);const d=l.schema;for(const f in d)delete d[f];d.$ref=c};if(e.cycles==="throw")for(const a of e.seen.entries()){const l=a[1];if(l.cycle)throw new Error(`Cycle detected: #/${l.cycle?.join("/")}/<root>
39
-
40
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const a of e.seen.entries()){const l=a[1];if(t===a[0]){i(a);continue}if(e.external){const u=e.external.registry.get(a[0])?.id;if(t!==a[0]&&u){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(l.cycle){i(a);continue}if(l.count>1&&e.reused==="ref"){i(a);continue}}}function ef(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const s=a=>{const l=e.seen.get(a);if(l.ref===null)return;const c=l.def??l.schema,u={...c},d=l.ref;if(l.ref=null,d){s(d);const m=e.seen.get(d),h=m.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(h)):Object.assign(c,h),Object.assign(c,u),a._zod.parent===d)for(const g in c)g==="$ref"||g==="allOf"||g in u||delete c[g];if(h.$ref&&m.def)for(const g in c)g==="$ref"||g==="allOf"||g in m.def&&JSON.stringify(c[g])===JSON.stringify(m.def[g])&&delete c[g]}const f=a._zod.parent;if(f&&f!==d){s(f);const m=e.seen.get(f);if(m?.schema.$ref&&(c.$ref=m.schema.$ref,m.def))for(const h in c)h==="$ref"||h==="allOf"||h in m.def&&JSON.stringify(c[h])===JSON.stringify(m.def[h])&&delete c[h]}e.override({zodSchema:a,jsonSchema:c,path:l.path??[]})};for(const a of[...e.seen.entries()].reverse())s(a[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const a=e.external.registry.get(t)?.id;if(!a)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Object.assign(o,n.def??n.schema);const i=e.external?.defs??{};for(const a of e.seen.entries()){const l=a[1];l.def&&l.defId&&(i[l.defId]=l.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{const a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:so(t,"input",e.processors),output:so(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function at(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 at(s.element,n);if(s.type==="set")return at(s.valueType,n);if(s.type==="lazy")return at(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 at(s.innerType,n);if(s.type==="intersection")return at(s.left,n)||at(s.right,n);if(s.type==="record"||s.type==="map")return at(s.keyType,n)||at(s.valueType,n);if(s.type==="pipe")return at(s.in,n)||at(s.out,n);if(s.type==="object"){for(const o in s.shape)if(at(s.shape[o],n))return!0;return!1}if(s.type==="union"){for(const o of s.options)if(at(o,n))return!0;return!1}if(s.type==="tuple"){for(const o of s.items)if(at(o,n))return!0;return!!(s.rest&&at(s.rest,n))}return!1}const H1=(e,t={})=>n=>{const s=Xd({...n,processors:t});return Ke(e,s),Qd(s,e),ef(s,e)},so=(e,t,n={})=>s=>{const{libraryOptions:o,target:i}=s??{},a=Xd({...o??{},target:i,io:t,processors:n});return Ke(e,a),Qd(a,e),ef(a,e)},V1={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},q1=(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=V1[l]??l,o.format===""&&delete o.format,l==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){const d=[...c];d.length===1?o.pattern=d[0].source:d.length>1&&(o.allOf=[...d.map(f=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))])}},Z1=(e,t,n,s)=>{const o=n,{minimum:i,maximum:a,format:l,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:d}=e._zod.bag;typeof l=="string"&&l.includes("int")?o.type="integer":o.type="number",typeof d=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.minimum=d,o.exclusiveMinimum=!0):o.exclusiveMinimum=d),typeof i=="number"&&(o.minimum=i,typeof d=="number"&&t.target!=="draft-04"&&(d>=i?delete o.minimum:delete o.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u),typeof a=="number"&&(o.maximum=a,typeof u=="number"&&t.target!=="draft-04"&&(u<=a?delete o.maximum:delete o.exclusiveMaximum)),typeof c=="number"&&(o.multipleOf=c)},G1=(e,t,n,s)=>{n.type="boolean"},K1=(e,t,n,s)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},J1=(e,t,n,s)=>{n.not={}},Y1=(e,t,n,s)=>{},X1=(e,t,n,s)=>{const o=e._zod.def,i=Rd(o.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},Q1=(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},eb=(e,t,n,s)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},tb=(e,t,n,s)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},nb=(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=Ke(i.element,t,{...s,path:[...s.path,"items"]})},sb=(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]=Ke(a[u],t,{...s,path:[...s.path,"properties",u]});const l=new Set(Object.keys(a)),c=new Set([...l].filter(u=>{const d=i.shape[u]._zod;return t.io==="input"?d.optin===void 0:d.optout===void 0}));c.size>0&&(o.required=Array.from(c)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=Ke(i.catchall,t,{...s,path:[...s.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},rb=(e,t,n,s)=>{const o=e._zod.def,i=o.inclusive===!1,a=o.options.map((l,c)=>Ke(l,t,{...s,path:[...s.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},ob=(e,t,n,s)=>{const o=e._zod.def,i=Ke(o.left,t,{...s,path:[...s.path,"allOf",0]}),a=Ke(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},ib=(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 d=Ke(i.valueType,t,{...s,path:[...s.path,"patternProperties","*"]});o.patternProperties={};for(const f of c)o.patternProperties[f.source]=d}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=Ke(i.keyType,t,{...s,path:[...s.path,"propertyNames"]})),o.additionalProperties=Ke(i.valueType,t,{...s,path:[...s.path,"additionalProperties"]});const u=a._zod.values;if(u){const d=[...u].filter(f=>typeof f=="string"||typeof f=="number");d.length>0&&(o.required=d)}},ab=(e,t,n,s)=>{const o=e._zod.def,i=Ke(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"}]},lb=(e,t,n,s)=>{const o=e._zod.def;Ke(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType},cb=(e,t,n,s)=>{const o=e._zod.def;Ke(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},ub=(e,t,n,s)=>{const o=e._zod.def;Ke(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)))},db=(e,t,n,s)=>{const o=e._zod.def;Ke(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},fb=(e,t,n,s)=>{const o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;Ke(i,t,s);const a=t.seen.get(e);a.ref=i},pb=(e,t,n,s)=>{const o=e._zod.def;Ke(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},tf=(e,t,n,s)=>{const o=e._zod.def;Ke(o.innerType,t,s);const i=t.seen.get(e);i.ref=o.innerType},hb=(e,t,n,s)=>{const o=e._zod.innerType;Ke(o,t,s);const i=t.seen.get(e);i.ref=o},mb=te("ZodISODateTime",(e,t)=>{dx.init(e,t),Ve.init(e,t)});function gb(e){return v1(mb,e)}const xb=te("ZodISODate",(e,t)=>{fx.init(e,t),Ve.init(e,t)});function bb(e){return y1(xb,e)}const vb=te("ZodISOTime",(e,t)=>{px.init(e,t),Ve.init(e,t)});function yb(e){return w1(vb,e)}const wb=te("ZodISODuration",(e,t)=>{hx.init(e,t),Ve.init(e,t)});function _b(e){return _1(wb,e)}const kb=(e,t)=>{Pd.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>sg(e,n)},flatten:{value:n=>ng(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,ea,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,ea,2)}},isEmpty:{get(){return e.issues.length===0}}})},Tt=te("ZodError",kb,{Parent:Error}),jb=Ja(Tt),Sb=Ya(Tt),Cb=Lo(Tt),Nb=Do(Tt),Tb=ig(Tt),Eb=ag(Tt),Ab=lg(Tt),Rb=cg(Tt),Ib=ug(Tt),zb=dg(Tt),Ob=fg(Tt),Pb=pg(Tt),We=te("ZodType",(e,t)=>(Ue.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:so(e,"input"),output:so(e,"output")}}),e.toJSONSchema=H1(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(kn(t,{checks:[...t.checks??[],...n.map(s=>typeof s=="function"?{_zod:{check:s,def:{check:"custom"},onattach:[]}}:s)]}),{parent:!0}),e.with=e.check,e.clone=(n,s)=>jn(e,n,s),e.brand=()=>e,e.register=((n,s)=>(n.add(e,s),e)),e.parse=(n,s)=>jb(e,n,s,{callee:e.parse}),e.safeParse=(n,s)=>Cb(e,n,s),e.parseAsync=async(n,s)=>Sb(e,n,s,{callee:e.parseAsync}),e.safeParseAsync=async(n,s)=>Nb(e,n,s),e.spa=e.safeParseAsync,e.encode=(n,s)=>Tb(e,n,s),e.decode=(n,s)=>Eb(e,n,s),e.encodeAsync=async(n,s)=>Ab(e,n,s),e.decodeAsync=async(n,s)=>Rb(e,n,s),e.safeEncode=(n,s)=>Ib(e,n,s),e.safeDecode=(n,s)=>zb(e,n,s),e.safeEncodeAsync=async(n,s)=>Ob(e,n,s),e.safeDecodeAsync=async(n,s)=>Pb(e,n,s),e.refine=(n,s)=>e.check(Rv(n,s)),e.superRefine=n=>e.check(Iv(n)),e.overwrite=n=>e.check(Ss(n)),e.optional=()=>Nc(e),e.exactOptional=()=>gv(e),e.nullable=()=>Tc(e),e.nullish=()=>Nc(Tc(e)),e.nonoptional=n=>_v(e,n),e.array=()=>fe(e),e.or=n=>Kt([e,n]),e.and=n=>uv(e,n),e.transform=n=>Ec(e,hv(n)),e.default=n=>vv(e,n),e.prefault=n=>wv(e,n),e.catch=n=>jv(e,n),e.pipe=n=>Ec(e,n),e.readonly=()=>Nv(e),e.describe=n=>{const s=e.clone();return Ws.add(s,{description:n}),s},Object.defineProperty(e,"description",{get(){return Ws.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return Ws.get(e);const s=e.clone();return Ws.add(s,n[0]),s},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=n=>n(e),e)),nf=te("_ZodString",(e,t)=>{Xa.init(e,t),We.init(e,t),e._zod.processJSONSchema=(s,o,i)=>q1(e,s,o);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...s)=>e.check(E1(...s)),e.includes=(...s)=>e.check(I1(...s)),e.startsWith=(...s)=>e.check(z1(...s)),e.endsWith=(...s)=>e.check(O1(...s)),e.min=(...s)=>e.check(no(...s)),e.max=(...s)=>e.check(Jd(...s)),e.length=(...s)=>e.check(Yd(...s)),e.nonempty=(...s)=>e.check(no(1,...s)),e.lowercase=s=>e.check(A1(s)),e.uppercase=s=>e.check(R1(s)),e.trim=()=>e.check(M1()),e.normalize=(...s)=>e.check(P1(...s)),e.toLowerCase=()=>e.check(L1()),e.toUpperCase=()=>e.check(D1()),e.slugify=()=>e.check($1())}),Mb=te("ZodString",(e,t)=>{Xa.init(e,t),nf.init(e,t),e.email=n=>e.check(Xx(Lb,n)),e.url=n=>e.check(s1(Db,n)),e.jwt=n=>e.check(b1(Qb,n)),e.emoji=n=>e.check(r1($b,n)),e.guid=n=>e.check(wc(Sc,n)),e.uuid=n=>e.check(Qx(vr,n)),e.uuidv4=n=>e.check(e1(vr,n)),e.uuidv6=n=>e.check(t1(vr,n)),e.uuidv7=n=>e.check(n1(vr,n)),e.nanoid=n=>e.check(o1(Fb,n)),e.guid=n=>e.check(wc(Sc,n)),e.cuid=n=>e.check(i1(Bb,n)),e.cuid2=n=>e.check(a1(Ub,n)),e.ulid=n=>e.check(l1(Wb,n)),e.base64=n=>e.check(m1(Jb,n)),e.base64url=n=>e.check(g1(Yb,n)),e.xid=n=>e.check(c1(Hb,n)),e.ksuid=n=>e.check(u1(Vb,n)),e.ipv4=n=>e.check(d1(qb,n)),e.ipv6=n=>e.check(f1(Zb,n)),e.cidrv4=n=>e.check(p1(Gb,n)),e.cidrv6=n=>e.check(h1(Kb,n)),e.e164=n=>e.check(x1(Xb,n)),e.datetime=n=>e.check(gb(n)),e.date=n=>e.check(bb(n)),e.time=n=>e.check(yb(n)),e.duration=n=>e.check(_b(n))});function S(e){return Yx(Mb,e)}const Ve=te("ZodStringFormat",(e,t)=>{He.init(e,t),nf.init(e,t)}),Lb=te("ZodEmail",(e,t)=>{nx.init(e,t),Ve.init(e,t)}),Sc=te("ZodGUID",(e,t)=>{ex.init(e,t),Ve.init(e,t)}),vr=te("ZodUUID",(e,t)=>{tx.init(e,t),Ve.init(e,t)}),Db=te("ZodURL",(e,t)=>{sx.init(e,t),Ve.init(e,t)}),$b=te("ZodEmoji",(e,t)=>{rx.init(e,t),Ve.init(e,t)}),Fb=te("ZodNanoID",(e,t)=>{ox.init(e,t),Ve.init(e,t)}),Bb=te("ZodCUID",(e,t)=>{ix.init(e,t),Ve.init(e,t)}),Ub=te("ZodCUID2",(e,t)=>{ax.init(e,t),Ve.init(e,t)}),Wb=te("ZodULID",(e,t)=>{lx.init(e,t),Ve.init(e,t)}),Hb=te("ZodXID",(e,t)=>{cx.init(e,t),Ve.init(e,t)}),Vb=te("ZodKSUID",(e,t)=>{ux.init(e,t),Ve.init(e,t)}),qb=te("ZodIPv4",(e,t)=>{mx.init(e,t),Ve.init(e,t)}),Zb=te("ZodIPv6",(e,t)=>{gx.init(e,t),Ve.init(e,t)}),Gb=te("ZodCIDRv4",(e,t)=>{xx.init(e,t),Ve.init(e,t)}),Kb=te("ZodCIDRv6",(e,t)=>{bx.init(e,t),Ve.init(e,t)}),Jb=te("ZodBase64",(e,t)=>{vx.init(e,t),Ve.init(e,t)}),Yb=te("ZodBase64URL",(e,t)=>{wx.init(e,t),Ve.init(e,t)}),Xb=te("ZodE164",(e,t)=>{_x.init(e,t),Ve.init(e,t)}),Qb=te("ZodJWT",(e,t)=>{jx.init(e,t),Ve.init(e,t)}),sf=te("ZodNumber",(e,t)=>{Vd.init(e,t),We.init(e,t),e._zod.processJSONSchema=(s,o,i)=>Z1(e,s,o),e.gt=(s,o)=>e.check(kc(s,o)),e.gte=(s,o)=>e.check(xi(s,o)),e.min=(s,o)=>e.check(xi(s,o)),e.lt=(s,o)=>e.check(_c(s,o)),e.lte=(s,o)=>e.check(gi(s,o)),e.max=(s,o)=>e.check(gi(s,o)),e.int=s=>e.check(Cc(s)),e.safe=s=>e.check(Cc(s)),e.positive=s=>e.check(kc(0,s)),e.nonnegative=s=>e.check(xi(0,s)),e.negative=s=>e.check(_c(0,s)),e.nonpositive=s=>e.check(gi(0,s)),e.multipleOf=(s,o)=>e.check(jc(s,o)),e.step=(s,o)=>e.check(jc(s,o)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function K(e){return k1(sf,e)}const ev=te("ZodNumberFormat",(e,t)=>{Sx.init(e,t),sf.init(e,t)});function Cc(e){return j1(ev,e)}const tv=te("ZodBoolean",(e,t)=>{Cx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>G1(e,n,s)});function Me(e){return S1(tv,e)}const nv=te("ZodNull",(e,t)=>{Nx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>K1(e,n,s)});function ro(e){return C1(nv,e)}const sv=te("ZodUnknown",(e,t)=>{Tx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Y1()});function On(){return N1(sv)}const rv=te("ZodNever",(e,t)=>{Ex.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>J1(e,n,s)});function ov(e){return T1(rv,e)}const iv=te("ZodArray",(e,t)=>{Ax.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>nb(e,n,s,o),e.element=t.element,e.min=(n,s)=>e.check(no(n,s)),e.nonempty=n=>e.check(no(1,n)),e.max=(n,s)=>e.check(Jd(n,s)),e.length=(n,s)=>e.check(Yd(n,s)),e.unwrap=()=>e.element});function fe(e,t){return F1(iv,e,t)}const av=te("ZodObject",(e,t)=>{Ix.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>sb(e,n,s,o),Oe(e,"shape",()=>t.shape),e.keyof=()=>Ee(Object.keys(e._zod.def.shape)),e.catchall=n=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:On()}),e.loose=()=>e.clone({...e._zod.def,catchall:On()}),e.strict=()=>e.clone({...e._zod.def,catchall:ov()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=n=>Y0(e,n),e.safeExtend=n=>X0(e,n),e.merge=n=>Q0(e,n),e.pick=n=>K0(e,n),e.omit=n=>J0(e,n),e.partial=(...n)=>eg(of,e,n[0]),e.required=(...n)=>tg(af,e,n[0])});function Y(e,t){const n={type:"object",shape:e??{},..._e(t)};return new av(n)}const rf=te("ZodUnion",(e,t)=>{Gd.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>rb(e,n,s,o),e.options=t.options});function Kt(e,t){return new rf({type:"union",options:e,..._e(t)})}const lv=te("ZodDiscriminatedUnion",(e,t)=>{rf.init(e,t),zx.init(e,t)});function Hn(e,t,n){return new lv({type:"union",options:t,discriminator:e,..._e(n)})}const cv=te("ZodIntersection",(e,t)=>{Ox.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>ob(e,n,s,o)});function uv(e,t){return new cv({type:"intersection",left:e,right:t})}const dv=te("ZodRecord",(e,t)=>{Px.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>ib(e,n,s,o),e.keyType=t.keyType,e.valueType=t.valueType});function Je(e,t,n){return new dv({type:"record",keyType:e,valueType:t,..._e(n)})}const na=te("ZodEnum",(e,t)=>{Mx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(s,o,i)=>X1(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 na({...t,checks:[],..._e(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 na({...t,checks:[],..._e(o),entries:i})}});function Ee(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(s=>[s,s])):e;return new na({type:"enum",entries:n,..._e(t)})}const fv=te("ZodLiteral",(e,t)=>{Lx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>Q1(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 Te(e,t){return new fv({type:"literal",values:Array.isArray(e)?e:[e],..._e(t)})}const pv=te("ZodTransform",(e,t)=>{Dx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>tb(e,n),e._zod.parse=(n,s)=>{if(s.direction==="backward")throw new Ed(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(Ks(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(Ks(a))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n)):(n.value=o,n)}});function hv(e){return new pv({type:"transform",transform:e})}const of=te("ZodOptional",(e,t)=>{Kd.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>tf(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function Nc(e){return new of({type:"optional",innerType:e})}const mv=te("ZodExactOptional",(e,t)=>{$x.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>tf(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function gv(e){return new mv({type:"optional",innerType:e})}const xv=te("ZodNullable",(e,t)=>{Fx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>ab(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function Tc(e){return new xv({type:"nullable",innerType:e})}const bv=te("ZodDefault",(e,t)=>{Bx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>cb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function vv(e,t){return new bv({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():zd(t)}})}const yv=te("ZodPrefault",(e,t)=>{Ux.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>ub(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function wv(e,t){return new yv({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():zd(t)}})}const af=te("ZodNonOptional",(e,t)=>{Wx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>lb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function _v(e,t){return new af({type:"nonoptional",innerType:e,..._e(t)})}const kv=te("ZodCatch",(e,t)=>{Hx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>db(e,n,s,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function jv(e,t){return new kv({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const Sv=te("ZodPipe",(e,t)=>{Vx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>fb(e,n,s,o),e.in=t.in,e.out=t.out});function Ec(e,t){return new Sv({type:"pipe",in:e,out:t})}const Cv=te("ZodReadonly",(e,t)=>{qx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>pb(e,n,s,o),e.unwrap=()=>e._zod.def.innerType});function Nv(e){return new Cv({type:"readonly",innerType:e})}const Tv=te("ZodLazy",(e,t)=>{Zx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>hb(e,n,s,o),e.unwrap=()=>e._zod.def.getter()});function Ev(e){return new Tv({type:"lazy",getter:e})}const Av=te("ZodCustom",(e,t)=>{Gx.init(e,t),We.init(e,t),e._zod.processJSONSchema=(n,s,o)=>eb(e,n)});function Rv(e,t={}){return B1(Av,e,t)}function Iv(e){return U1(e)}const tt=Ev(()=>Kt([S(),K(),Me(),ro(),fe(tt),Je(S(),tt)]));const lf=Y({index:K(),timestamp:K(),type:S(),data:tt}),zv=Y({chunks:fe(lf),truncated:Me().optional().default(!1)}),Ov=Ee(["request","response"]),Pv=Y({logId:K().int().positive(),part:Ov,text:S(),offset:K().int().nonnegative(),limit:K().int().positive(),totalBytes:K().int().nonnegative(),textBytes:K().int().nonnegative(),nextOffset:K().int().nonnegative().nullable(),hasMore:Me(),contentMode:Ee(["empty","partial","full"])}),Js=Y({id:K(),timestamp:S(),method:S(),path:S(),model:S().nullable(),sessionId:S().nullable(),rawRequestBody:S().nullable(),responseStatus:K().nullable(),responseText:S().nullable(),inputTokens:K().nullable(),outputTokens:K().nullable(),cacheCreationInputTokens:K().nullable(),cacheReadInputTokens:K().nullable(),elapsedMs:K().nullable(),firstChunkMs:K().nullable().optional(),totalStreamMs:K().nullable().optional(),tokensPerSecond:K().nullable().optional(),streaming:Me(),userAgent:S().nullable(),origin:S().nullable(),rawHeaders:Je(S(),S()).optional(),headers:Je(S(),S()).optional(),apiFormat:Ee(["anthropic","openai","unknown"]).default("unknown"),isTest:Me().optional().default(!1),replayOfLogId:K().nullable().optional(),providerName:S().nullable().optional(),clientPort:K().nullable().optional(),clientPid:K().nullable().optional(),clientCwd:S().nullable().optional(),clientProjectFolder:S().nullable().optional(),streamingChunks:zv.optional(),streamingChunksPath:S().nullable().optional(),rawRequestBodyBytes:K().int().nonnegative().nullable().optional(),responseTextBytes:K().int().nonnegative().nullable().optional(),bodyContentMode:Ee(["full","compact","truncated"]).optional(),warnings:fe(S()).optional(),error:S().nullable().optional()}),Qa=Y({type:S(),ttl:S().optional(),scope:S().optional()}),el=Y({type:Te("text"),text:S(),cache_control:Qa.optional()}),cf=Y({type:Te("thinking"),thinking:S(),signature:S().optional()}),Mv=Y({type:Te("think"),thinking:S(),signature:S().optional()}),Lv=Y({type:Te("base64"),media_type:S(),data:S()}),uf=Y({type:Te("image"),source:Lv}),df=Y({type:Te("tool_use"),id:S(),name:S(),input:Je(S(),tt)}),Dv=Hn("type",[el,uf]),$v=Y({type:Te("tool_result"),tool_use_id:S().optional(),content:Kt([S(),fe(Dv)]),is_error:Me().optional()}),Fv=Hn("type",[el,cf,uf,df,$v]),Bv=Kt([S(),fe(Fv)]),Uv=Y({role:Ee(["user","assistant"]),content:Bv}),Wv=Y({type:Te("text"),text:S(),cache_control:Qa.optional()}),Hv=Y({type:S(),properties:Je(S(),Je(S(),tt)).optional(),required:fe(S()).optional(),additionalProperties:Me().optional(),$schema:S().optional()}),Vv=Y({name:S(),description:S().optional(),input_schema:Hv.optional(),cache_control:Qa.optional()}),qv=Hn("type",[Y({type:Te("enabled"),budget_tokens:K()}),Y({type:Te("disabled")}),Y({type:Te("adaptive")})]),ff=Y({model:S(),messages:fe(Uv),system:fe(Wv).optional(),tools:fe(Vv).optional(),max_tokens:K().optional(),temperature:K().optional(),stream:Me().optional(),thinking:qv.optional(),metadata:Y({user_id:S().optional()}).optional()}),tl=Hn("type",[el,cf,Mv,df]),Zv=Y({input_tokens:K().nullable().optional(),output_tokens:K().nullable().optional(),cache_creation_input_tokens:K().nullable().optional(),cache_read_input_tokens:K().nullable().optional()}).passthrough(),pf=Y({id:S(),type:Te("message"),model:S(),role:Te("assistant"),content:fe(tl),stop_reason:S().nullable(),stop_sequence:S().nullable().optional(),usage:Zv}).passthrough(),Gv=Y({type:Te("message_start"),message:Y({id:S(),type:Te("message"),model:S(),role:Te("assistant"),content:fe(tl),stop_reason:ro(),stop_sequence:ro(),usage:Y({input_tokens:K(),cache_creation_input_tokens:K().optional(),cache_read_input_tokens:K().optional()}).passthrough()})}),Kv=Y({type:Te("content_block_start"),index:K(),content_block:tl}),Jv=Hn("type",[Y({type:Te("text_delta"),text:S()}),Y({type:Te("input_json_delta"),partial_json:S()}),Y({type:Te("thinking_delta"),thinking:S()}),Y({type:Te("signature_delta"),signature:S()})]),Yv=Y({type:Te("content_block_delta"),index:K(),delta:Jv}),Xv=Y({type:Te("content_block_stop"),index:K()}),Qv=Y({type:Te("message_delta"),delta:Y({stop_reason:S().nullable(),stop_sequence:S().nullable().optional()}),usage:Y({output_tokens:K(),input_tokens:K().optional(),cache_creation_input_tokens:K().optional(),cache_read_input_tokens:K().optional()}).passthrough()}),e2=Y({type:Te("message_stop")}),t2=Y({type:Te("ping")}),n2=Y({type:Te("error"),error:Y({type:S(),message:S()})}),s2=Hn("type",[Gv,Kv,Yv,Xv,Qv,e2,t2,n2]),r2=Kt([S(),fe(Hn("type",[Y({type:Te("text"),text:S()}),Y({type:Te("image_url"),image_url:Y({url:S(),detail:S().optional()})})]))]),hf=Y({role:Ee(["system","user","assistant","tool"]),content:r2,name:S().optional(),reasoning_content:S().optional(),thinking:S().optional(),think:S().optional()}),o2=Y({name:S(),arguments:S()}),mf=Y({index:K().optional(),id:S().optional(),type:Te("function").optional(),function:Y({name:S().optional(),arguments:S().optional()})});hf.extend({content:Kt([S(),fe(Y({type:Te("text"),text:S()}))]).optional(),function_call:o2.optional(),tool_calls:fe(mf).optional()});const i2=Y({type:Te("function"),function:Y({name:S(),description:S().optional(),parameters:Je(S(),tt)})}),gf=Y({model:S(),messages:fe(hf),temperature:K().optional(),max_tokens:K().optional(),stream:Me().optional(),tools:fe(i2).optional(),tool_choice:Kt([Ee(["auto","none","required"]),Y({type:Te("auto")}),Y({type:Te("none")}),Y({type:Te("function"),function:Y({name:S()})})]).optional(),user:S().optional()}),a2=Y({type:S(),name:S().optional(),description:S().optional(),parameters:tt.optional(),function:Y({name:S().optional(),description:S().optional(),parameters:tt.optional()}).optional()}).passthrough(),xf=Y({model:S(),input:On().optional(),instructions:Kt([S(),ro()]).optional(),stream:Me().optional(),tools:fe(a2).optional(),tool_choice:On().optional(),max_output_tokens:K().optional(),temperature:K().optional(),user:S().optional(),metadata:Je(S(),On()).optional()}).passthrough(),bf=Y({role:Ee(["assistant"]).optional(),content:S().nullable().optional(),reasoning_content:S().nullable().optional(),thinking:S().nullable().optional(),think:S().nullable().optional(),function_call:Y({name:S().optional(),arguments:S().optional()}).nullable().optional(),tool_calls:fe(Y({index:K(),id:S().optional(),type:Te("function").optional(),function:Y({name:S().optional(),arguments:S().optional()})})).nullable().optional()}),l2=Y({index:K(),message:Y({role:Ee(["assistant"]),content:S().nullable(),reasoning_content:S().optional(),thinking:S().optional(),think:S().optional(),function_call:Y({name:S(),arguments:S()}).nullable().optional(),tool_calls:fe(mf).optional()}).optional(),delta:bf.optional(),finish_reason:S().nullable()}),c2=Y({id:S(),object:Te("chat.completion"),created:K(),model:S(),choices:fe(l2),usage:Y({prompt_tokens:K().nullable().optional(),completion_tokens:K().nullable().optional(),total_tokens:K().nullable().optional()}).passthrough(),service_tier:S().nullable().optional(),system_fingerprint:S().nullable().optional()}).passthrough(),u2=Y({id:S(),object:Te("chat.completion.chunk"),created:K(),model:S(),choices:fe(Y({index:K(),delta:bf,finish_reason:S().nullable().optional()})),usage:Y({prompt_tokens:K().nullable().optional(),completion_tokens:K().nullable().optional(),total_tokens:K().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),d2=Y({input_tokens:K().nullable().optional(),output_tokens:K().nullable().optional(),total_tokens:K().nullable().optional(),input_tokens_details:Y({cached_tokens:K().nullable().optional()}).passthrough().nullable().optional(),output_tokens_details:Y({reasoning_tokens:K().nullable().optional()}).passthrough().nullable().optional()}).passthrough(),f2=Y({type:S()}).passthrough(),oo=Y({id:S(),object:Te("response").optional(),created_at:K().optional(),status:S().nullable().optional(),model:S().optional(),output:fe(f2).optional(),output_text:S().optional(),usage:d2.nullable().optional(),error:On().optional()}).passthrough(),p2=Y({type:S()}).passthrough();function vf(e){try{const t=JSON.parse(e),n=c2.safeParse(t);return n.success?n.data:null}catch{return null}}function yf(e){try{const t=JSON.parse(e),n=oo.safeParse(t);return n.success?n.data:null}catch{return null}}const h2=Y({error:S()});async function nl(e,t){const n=await e.json();return t.parse(n)}async function sl(e,t){try{const n=await e.json(),s=h2.safeParse(n);return s.success?s.data.error:t}catch{return t}}async function _t(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 sl(o,i))}return nl(o,t)}function m2(e){return e<1e3?`${String(e)}ms`:`${String(Math.round(e/1e3))}s`}class Fo extends Error{constructor(t){super(`Request timed out after ${m2(t)}`),this.name="ApiTimeoutError"}}async function Pn(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 Fo(t):c}finally{clearTimeout(i),a?.removeEventListener("abort",l)}}async function Ge(e,t,n,s,o){const i=await Pn(e,n,s);if(!i.ok){const a=o?.(i)??`Request failed with status ${i.status}`;throw new Error(await sl(i,a))}return nl(i,t)}const wf=Y({input:K().int().nonnegative(),output:K().int().nonnegative(),cacheCreate:K().int().nonnegative(),cacheRead:K().int().nonnegative(),total:K().int().nonnegative()}),g2=Y({id:K().int().positive(),sessionLogNumber:K().int().positive().optional(),timestamp:S(),provider:S().nullable(),model:S().nullable(),apiFormat:Ee(["anthropic","openai","unknown"]),method:S(),path:S(),status:K().nullable(),isStreaming:Me(),hasError:Me(),error:S().nullable(),latencyMs:K().nullable(),firstChunkMs:K().nullable().optional(),totalStreamMs:K().nullable().optional(),tokensPerSecond:K().nullable().optional(),tokens:Y({input:K().nullable(),output:K().nullable(),cacheCreate:K().nullable(),cacheRead:K().nullable()}),sessionId:S().nullable(),userAgent:S().nullable().optional(),clientPid:K().nullable().optional(),clientProjectFolder:S().nullable().optional()}),_f=Y({id:S(),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:S().nullable(),updatedAt:S().nullable(),requestCount:K().int().nonnegative(),activeRequests:K().int().nonnegative(),completedRequests:K().int().nonnegative(),failedRequests:K().int().nonnegative(),queuedTasks:K().int().nonnegative(),runningTasks:K().int().nonnegative(),lastTaskError:S().nullable(),logCount:K().int().nonnegative(),errorCount:K().int().nonnegative(),models:fe(S()),providers:fe(S()),tokenUsage:wf,lastLogId:K().nullable(),lastModel:S().nullable(),clientUserAgent:S().nullable().optional(),clientPid:K().nullable(),clientProjectFolder:S().nullable(),inspectorPath:S(),inspectorUrl:S(),apiPath:S(),apiUrl:S(),compactLogsPath:S(),compactLogsUrl:S(),latestLogLimit:K().int().positive(),latestLogs:fe(g2)}),ir=Ee(["created","running","completed","failed","cancelled"]),rl=Y({jsonPath:S(),markdownPath:S(),htmlPath:S(),exportedAt:S()}),x2=Ee(["run-created","session-started","request","session-finished","evidence-exported"]),b2=Ee(["info","success","warning","error"]),v2=Y({timestamp:S(),kind:x2,severity:b2,title:S(),details:S(),logId:K().int().positive().nullable(),status:K().nullable(),model:S().nullable(),provider:S().nullable(),latencyMs:K().nullable(),isStreaming:Me().nullable()}),y2=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"]),kf=Y({outcome:Ee(["success","failure","active","unknown"]),severity:Ee(["none","low","medium","high"]),category:y2,summary:S(),evidenceLogIds:fe(K().int().positive()),hints:fe(S())}),ol=Y({status:Ee(["PASS","FAIL","RUNNING","UNKNOWN"]),summary:S(),markdown:S()}),jf=ol,il=Y({id:S(),sessionId:S(),groupId:S().nullable().default(null),title:S(),task:S().nullable(),project:S().nullable(),agent:S().nullable(),status:ir,tags:fe(S()),metadata:Je(S(),tt),evidence:rl.nullable(),createdAt:S(),updatedAt:S()});Y({runId:S().min(1).optional(),sessionId:S().min(1).optional(),groupId:S().min(1).nullable().optional(),title:S().min(1).optional(),task:S().nullable().optional(),project:S().nullable().optional(),agent:S().nullable().optional(),status:ir.optional(),tags:fe(S()).optional(),metadata:Je(S(),tt).optional()}).optional();Y({sessionId:S().min(1).optional(),groupId:S().min(1).nullable().optional(),title:S().min(1).optional(),task:S().nullable().optional(),project:S().nullable().optional(),agent:S().nullable().optional(),status:ir.optional(),tags:fe(S()).optional(),metadata:Je(S(),tt).optional()});Y({includeHistory:Me().optional(),latestLogLimit:K().int().positive().max(50).optional()}).optional();Y({run:il,evidence:rl,session:_f.nullable(),timeline:fe(v2),classification:kf,jenkinsReport:ol});const w2=Y({run:il,classification:kf,evidence:rl.nullable(),jenkinsReport:ol.nullable(),sessionId:S(),inspectorUrl:S().nullable(),evidenceMarkdownPath:S().nullable(),updatedAt:S()});Y({failures:fe(w2),total:K().int().nonnegative(),limit:K().int().positive()});const al=Ee(["created","running","completed","failed","cancelled"]),ll=Ee(["evaluation","batch","manual"]),cl=Y({jsonPath:S(),markdownPath:S(),htmlPath:S(),exportedAt:S()}),Sf=Y({id:S(),groupId:S(),sessionId:S(),runId:S().nullable(),label:S().nullable(),agent:S().nullable(),provider:S().nullable(),model:S().nullable(),status:ir.nullable(),metadata:Je(S(),tt),addedAt:S(),updatedAt:S()}),ul=Y({id:S(),title:S(),kind:ll,task:S().nullable(),project:S().nullable(),status:al,tags:fe(S()),metadata:Je(S(),tt),evidence:cl.nullable(),members:fe(Sf),createdAt:S(),updatedAt:S()});Y({groupId:S().min(1).optional(),title:S().min(1).optional(),kind:ll.optional(),task:S().nullable().optional(),project:S().nullable().optional(),status:al.optional(),tags:fe(S()).optional(),metadata:Je(S(),tt).optional()}).optional();Y({title:S().min(1).optional(),kind:ll.optional(),task:S().nullable().optional(),project:S().nullable().optional(),status:al.optional(),tags:fe(S()).optional(),metadata:Je(S(),tt).optional()});Y({memberId:S().min(1).optional(),sessionId:S().min(1),runId:S().min(1).nullable().optional(),label:S().min(1).nullable().optional(),agent:S().min(1).nullable().optional(),provider:S().min(1).nullable().optional(),model:S().min(1).nullable().optional(),status:ir.nullable().optional(),metadata:Je(S(),tt).optional()});Y({includeHistory:Me().optional(),latestLogLimit:K().int().positive().max(50).optional()}).optional();Y({deleteEvidence:Me().optional()});const Cf=Y({groupId:S(),deleted:Me(),evidenceDeleted:Me(),evidencePath:S().nullable()}),_2=Y({deleted:K().int().nonnegative(),groups:fe(Cf)}),Nf=Y({member:Sf,run:il.nullable(),session:_f.nullable()}),Tf=Y({memberCount:K().int().nonnegative(),sessionsWithData:K().int().nonnegative(),missingSessions:K().int().nonnegative(),requestCount:K().int().nonnegative(),errorCount:K().int().nonnegative(),tokenUsage:wf,models:fe(S()),providers:fe(S()),completedMembers:K().int().nonnegative(),failedMembers:K().int().nonnegative(),runningMembers:K().int().nonnegative()}),k2=Y({group:ul,evidence:cl,members:fe(Nf).nullable(),markdown:S(),summary:Tf.nullable(),report:jf.nullable()}),j2=Y({group:ul,evidence:cl,members:fe(Nf),summary:Tf,jenkinsReport:jf}),Ef=Y({groups:fe(ul)}),S2=Y({sessionId:S(),imported:K().int().nonnegative(),skipped:K().int().nonnegative(),warnings:fe(S()),logs:fe(Js)}),io=10,sa=600,ao=60,ra=600,lo="time",dl="simple",Af=Ee(["time","full"]),C2=Ee(["simple","full"]),Bo=Y({stripClaudeCodeBillingHeader:Me(),hasSeenOnboarding:Me().default(!1),slowResponseThresholdSeconds:K().int().min(0).max(sa).default(io),providerTestTimeoutSeconds:K().int().min(1).max(ra).default(ao),timeDisplayFormat:Af.default(lo),captureMode:C2.default(dl)}),as="/api/config";async function N2(e){return _t(e,Bo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function yr(e){return _t(as,Bo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function fl(){const e=Vt(as,N2,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=Cd(),n=e.data?.stripClaudeCodeBillingHeader??!1,s=e.data?.captureMode??dl,o=e.data?.slowResponseThresholdSeconds??io,i=e.data?.providerTestTimeoutSeconds??ao,a=e.data?.timeDisplayFormat??lo,l=m=>({stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:e.data?.hasSeenOnboarding??!1,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??io,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??ao,timeDisplayFormat:e.data?.timeDisplayFormat??lo,captureMode:s,...m}),c=async m=>{await t(as,yr({stripClaudeCodeBillingHeader:m}),{optimisticData:l({stripClaudeCodeBillingHeader:m}),rollbackOnError:!0,revalidate:!1})},u=async m=>{await t(as,yr({slowResponseThresholdSeconds:m}),{optimisticData:l({slowResponseThresholdSeconds:m}),rollbackOnError:!0,revalidate:!1})},d=async m=>{await t(as,yr({timeDisplayFormat:m}),{optimisticData:l({timeDisplayFormat:m}),rollbackOnError:!0,revalidate:!1})},f=async m=>{await t(as,yr({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:f,setTimeDisplayFormat:d}}const Rf=(...e)=>e.filter((t,n,s)=>!!t&&t.trim()!==""&&s.indexOf(t)===n).join(" ").trim();const T2=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const E2=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,s)=>s?s.toUpperCase():n.toLowerCase());const Ac=e=>{const t=E2(e);return t.charAt(0).toUpperCase()+t.slice(1)};var A2={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 R2=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};const I2=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,...A2,width:t,height:t,stroke:e,strokeWidth:s?Number(n)*24/Number(t):n,className:Rf("lucide",o),...!i&&!R2(l)&&{"aria-hidden":"true"},...l},[...a.map(([u,d])=>p.createElement(u,d)),...Array.isArray(i)?i:[i]]));const de=(e,t)=>{const n=p.forwardRef(({className:s,...o},i)=>p.createElement(I2,{ref:i,iconNode:t,className:Rf(`lucide-${T2(Ac(e))}`,`lucide-${e}`,s),...o}));return n.displayName=Ac(e),n};const z2=[["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"}]],O2=de("activity",z2);const P2=[["path",{d:"m7 7 10 10",key:"1fmybs"}],["path",{d:"M17 7v10H7",key:"6fjiku"}]],M2=de("arrow-down-right",P2);const L2=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],D2=de("arrow-down",L2);const $2=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],F2=de("arrow-left",$2);const B2=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],U2=de("arrow-up-right",B2);const W2=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],H2=de("arrow-up",W2);const V2=[["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"}]],pl=de("beaker",V2);const q2=[["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"}]],Z2=de("bell",q2);const G2=[["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"}]],K2=de("blocks",G2);const J2=[["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"}]],If=de("brain",J2);const Y2=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Ze=de("check",Y2);const X2=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ot=de("chevron-down",X2);const Q2=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],ey=de("chevron-left",Q2);const ty=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Nt=de("chevron-right",ty);const ny=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],hl=de("chevron-up",ny);const sy=[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]],ry=de("chevrons-down",sy);const oy=[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]],iy=de("chevrons-left",oy);const ay=[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]],ly=de("chevrons-right",ay);const cy=[["path",{d:"m17 11-5-5-5 5",key:"e8nh98"}],["path",{d:"m17 18-5-5-5 5",key:"2avn1x"}]],uy=de("chevrons-up",cy);const dy=[["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"}]],vs=de("circle-alert",dy);const fy=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],ml=de("circle-check-big",fy);const py=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],oa=de("circle-check",py);const hy=[["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"}]],my=de("circle-question-mark",hy);const gy=[["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"}]],zf=de("circle-x",gy);const xy=[["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"}]],by=de("clapperboard",xy);const vy=[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],yy=de("clock-3",vy);const wy=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],tn=de("clock",wy);const _y=[["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"}]],ky=de("cloud-upload",_y);const jy=[["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"}]],Sy=de("code-xml",jy);const Cy=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]],Ny=de("columns-2",Cy);const Ty=[["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"}]],Et=de("copy",Ty);const Ey=[["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"}]],Ay=de("cpu",Ey);const Ry=[["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"}]],ar=de("download",Ry);const Iy=[["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"}]],zy=de("ellipsis",Iy);const Oy=[["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"}]],gl=de("external-link",Oy);const Py=[["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"}]],xl=de("eye-off",Py);const My=[["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"}]],bl=de("eye",My);const Ly=[["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"}]],Dy=de("file-braces",Ly);const $y=[["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"}]],Fy=de("file-diff",$y);const By=[["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"}]],Uy=de("file-search",By);const Wy=[["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"}]],Hy=de("file-terminal",Wy);const Vy=[["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"}]],qy=de("file-text",Vy);const Zy=[["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"}]],Gy=de("flag",Zy);const Ky=[["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"}]],Of=de("flask-conical",Ky);const Jy=[["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"}]],Yy=de("folder-open",Jy);const Xy=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],vl=de("gauge",Xy);const Qy=[["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"}]],ew=de("git-compare-arrows",Qy);const tw=[["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"}]],Pf=de("globe",tw);const nw=[["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"}]],Mf=de("history",nw);const sw=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],rw=de("info",sw);const ow=[["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"}]],Rc=de("layers",ow);const iw=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],Xe=de("loader-circle",iw);const aw=[["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"}]],lw=de("lock",aw);const cw=[["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"}]],Uo=de("message-square",cw);const uw=[["path",{d:"M5 12h14",key:"1ays0h"}]],Lf=de("minus",uw);const dw=[["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"}]],fw=de("monitor",dw);const pw=[["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"}]],hw=de("mouse-pointer-click",pw);const mw=[["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"}]],gw=de("network",mw);const xw=[["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"}]],bw=de("octagon-alert",xw);const vw=[["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"}]],yw=de("package-check",vw);const ww=[["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"}]],Df=de("pencil",ww);const _w=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],ia=de("plus",_w);const kw=[["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"}]],Ic=de("radio",kw);const jw=[["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"}]],nn=de("refresh-cw",jw);const Sw=[["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"}]],$f=de("rocket",Sw);const Cw=[["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"}]],Nw=de("rotate-ccw",Cw);const Tw=[["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"}]],co=de("rotate-cw",Tw);const Ew=[["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"}]],Aw=de("rows-3",Ew);const Rw=[["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"}]],Iw=de("save",Rw);const zw=[["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"}]],Ow=de("scan",zw);const Pw=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Ff=de("search",Pw);const Mw=[["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"}]],Lw=de("server",Mw);const Dw=[["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"}]],$w=de("settings",Dw);const Fw=[["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"}]],Bw=de("shield-alert",Fw);const Uw=[["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"}]],zc=de("shield-check",Uw);const Ww=[["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"}]],aa=de("siren",Ww);const Hw=[["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"}]],Oc=de("sparkles",Hw);const Vw=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],Cs=de("terminal",Vw);const qw=[["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"}]],Zw=de("timer",qw);const Gw=[["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"}]],Wt=de("trash-2",Gw);const Kw=[["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"}]],xn=de("triangle-alert",Kw);const Jw=[["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"}]],Bf=de("upload",Jw);const Yw=[["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"}]],Xw=de("wifi-off",Yw);const Qw=[["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"}]],e_=de("wifi",Qw);const t_=[["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"}]],lr=de("wrench",t_);const n_=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],cr=de("x",n_);const s_=[["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"}]],Ys=de("zap",s_),la="/api/config";async function r_(e){return _t(e,Bo,void 0,t=>`Failed to fetch ${e}: ${t.status}`)}async function o_(e){return _t(la,Bo,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(e)},t=>`PATCH failed with status ${t.status}`)}function i_(){const e=Vt(la,r_,{revalidateOnFocus:!1,revalidateIfStale:!1}),{mutate:t}=Cd(),n=e.data?.hasSeenOnboarding??!1,s=e.data?.captureMode??dl,o=async()=>{await t(la,o_({hasSeenOnboarding:!0}),{optimisticData:{stripClaudeCodeBillingHeader:e.data?.stripClaudeCodeBillingHeader??!1,hasSeenOnboarding:!0,slowResponseThresholdSeconds:e.data?.slowResponseThresholdSeconds??io,providerTestTimeoutSeconds:e.data?.providerTestTimeoutSeconds??ao,timeDisplayFormat:e.data?.timeDisplayFormat??lo,captureMode:s},rollbackOnError:!0,revalidate:!1})};return{hasSeenOnboarding:n,captureMode:s,isLoading:e.isLoading,markSeen:o}}function a_(){const{hasSeenOnboarding:e,isLoading:t,markSeen:n}=i_(),[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(rw,{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(ot,{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(Ze,{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(cr,{className:"size-3.5"})})]})})}function wr(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 bi={exports:{}};var Pc;function l_(){return Pc||(Pc=1,(function(e,t){(function(n){e.exports=n()})(function(){return(function n(s,o,i){function a(u,d){if(!o[u]){if(!s[u]){var f=typeof wr=="function"&&wr;if(!d&&f)return f(u,!0);if(l)return l(u,!0);var m=new Error("Cannot find module '"+u+"'");throw m.code="MODULE_NOT_FOUND",m}var h=o[u]={exports:{}};s[u][0].call(h.exports,function(v){var g=s[u][1][v];return a(g||v)},h,h.exports,n,s,o,i)}return o[u].exports}for(var l=typeof wr=="function"&&wr,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,d,f,m,h,v,g,x=[],b=0,y=c.length,k=y,j=i.getTypeOf(c)!=="string";b<c.length;)k=y-b,f=j?(u=c[b++],d=b<y?c[b++]:0,b<y?c[b++]:0):(u=c.charCodeAt(b++),d=b<y?c.charCodeAt(b++):0,b<y?c.charCodeAt(b++):0),m=u>>2,h=(3&u)<<4|d>>4,v=1<k?(15&d)<<2|f>>6:64,g=2<k?63&f:64,x.push(l.charAt(m)+l.charAt(h)+l.charAt(v)+l.charAt(g));return x.join("")},o.decode=function(c){var u,d,f,m,h,v,g=0,x=0,b="data:";if(c.substr(0,b.length)===b)throw new Error("Invalid base64 input, it looks like a data url.");var y,k=3*(c=c.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(c.charAt(c.length-1)===l.charAt(64)&&k--,c.charAt(c.length-2)===l.charAt(64)&&k--,k%1!=0)throw new Error("Invalid base64 input, bad content length.");for(y=a.uint8array?new Uint8Array(0|k):new Array(0|k);g<c.length;)u=l.indexOf(c.charAt(g++))<<2|(m=l.indexOf(c.charAt(g++)))>>4,d=(15&m)<<4|(h=l.indexOf(c.charAt(g++)))>>2,f=(3&h)<<6|(v=l.indexOf(c.charAt(g++))),y[x++]=u,h!==64&&(y[x++]=d),v!==64&&(y[x++]=f);return y}},{"./support":30,"./utils":32}],2:[function(n,s,o){var i=n("./external"),a=n("./stream/DataWorker"),l=n("./stream/Crc32Probe"),c=n("./stream/DataLengthProbe");function u(d,f,m,h,v){this.compressedSize=d,this.uncompressedSize=f,this.crc32=m,this.compression=h,this.compressedContent=v}u.prototype={getContentWorker:function(){var d=new a(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new c("data_length")),f=this;return d.on("end",function(){if(this.streamInfo.data_length!==f.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),d},getCompressedWorker:function(){return new a(i.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},u.createWorkerFrom=function(d,f,m){return d.pipe(new l).pipe(new c("uncompressedSize")).pipe(f.compressWorker(m)).pipe(new c("compressedSize")).withStreamInfo("compression",f)},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 d=0;d<8;d++)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,d,f,m){var h=a,v=m+f;u^=-1;for(var g=m;g<v;g++)u=u>>>8^h[255&(u^d[g])];return-1^u})(0|c,l,l.length,0):(function(u,d,f,m){var h=a,v=m+f;u^=-1;for(var g=m;g<v;g++)u=u>>>8^h[255&(u^d.charCodeAt(g))];return-1^u})(0|c,l,l.length,0):0}},{"./utils":32}],5:[function(n,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 d(f,m){c.call(this,"FlateWorker/"+f),this._pako=null,this._pakoAction=f,this._pakoOptions=m,this.meta={}}o.magic="\b\0",l.inherits(d,c),d.prototype.processChunk=function(f){this.meta=f.meta,this._pako===null&&this._createPako(),this._pako.push(l.transformTo(u,f.data),!1)},d.prototype.flush=function(){c.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},d.prototype.cleanUp=function(){c.prototype.cleanUp.call(this),this._pako=null},d.prototype._createPako=function(){this._pako=new a[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var f=this;this._pako.onData=function(m){f.push({data:m,meta:f.meta})}},o.compressWorker=function(f){return new d("Deflate",f)},o.uncompressWorker=function(){return new d("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(n,s,o){function i(h,v){var g,x="";for(g=0;g<v;g++)x+=String.fromCharCode(255&h),h>>>=8;return x}function a(h,v,g,x,b,y){var k,j,C=h.file,T=h.compression,N=y!==u.utf8encode,z=l.transformTo("string",y(C.name)),A=l.transformTo("string",u.utf8encode(C.name)),O=C.comment,D=l.transformTo("string",y(O)),E=l.transformTo("string",u.utf8encode(O)),L=A.length!==C.name.length,w=E.length!==O.length,$="",ee="",F="",H=C.dir,Z=C.date,ue={crc32:0,compressedSize:0,uncompressedSize:0};v&&!g||(ue.crc32=h.crc32,ue.compressedSize=h.compressedSize,ue.uncompressedSize=h.uncompressedSize);var V=0;v&&(V|=8),N||!L&&!w||(V|=2048);var W=0,ce=0;H&&(W|=16),b==="UNIX"?(ce=798,W|=(function(Q,Ce){var oe=Q;return Q||(oe=Ce?16893:33204),(65535&oe)<<16})(C.unixPermissions,H)):(ce=20,W|=(function(Q){return 63&(Q||0)})(C.dosPermissions)),k=Z.getUTCHours(),k<<=6,k|=Z.getUTCMinutes(),k<<=5,k|=Z.getUTCSeconds()/2,j=Z.getUTCFullYear()-1980,j<<=4,j|=Z.getUTCMonth()+1,j<<=5,j|=Z.getUTCDate(),L&&(ee=i(1,1)+i(d(z),4)+A,$+="up"+i(ee.length,2)+ee),w&&(F=i(1,1)+i(d(D),4)+E,$+="uc"+i(F.length,2)+F);var U="";return U+=`
41
- \0`,U+=i(V,2),U+=T.magic,U+=i(k,2),U+=i(j,2),U+=i(ue.crc32,4),U+=i(ue.compressedSize,4),U+=i(ue.uncompressedSize,4),U+=i(z.length,2),U+=i($.length,2),{fileRecord:f.LOCAL_FILE_HEADER+U+z+$,dirRecord:f.CENTRAL_FILE_HEADER+i(ce,2)+U+i(D.length,2)+"\0\0\0\0"+i(W,4)+i(x,4)+z+$+D}}var l=n("../utils"),c=n("../stream/GenericWorker"),u=n("../utf8"),d=n("../crc32"),f=n("../signature");function m(h,v,g,x){c.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=v,this.zipPlatform=g,this.encodeFileName=x,this.streamFiles=h,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}l.inherits(m,c),m.prototype.push=function(h){var v=h.meta.percent||0,g=this.entriesCount,x=this._sources.length;this.accumulate?this.contentBuffer.push(h):(this.bytesWritten+=h.data.length,c.prototype.push.call(this,{data:h.data,meta:{currentFile:this.currentFile,percent:g?(v+100*(g-x-1))/g:100}}))},m.prototype.openedSource=function(h){this.currentSourceOffset=this.bytesWritten,this.currentFile=h.file.name;var v=this.streamFiles&&!h.file.dir;if(v){var g=a(h,v,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:g.fileRecord,meta:{percent:0}})}else this.accumulate=!0},m.prototype.closedSource=function(h){this.accumulate=!1;var v=this.streamFiles&&!h.file.dir,g=a(h,v,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(g.dirRecord),v)this.push({data:(function(x){return f.DATA_DESCRIPTOR+i(x.crc32,4)+i(x.compressedSize,4)+i(x.uncompressedSize,4)})(h),meta:{percent:100}});else for(this.push({data:g.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},m.prototype.flush=function(){for(var h=this.bytesWritten,v=0;v<this.dirRecords.length;v++)this.push({data:this.dirRecords[v],meta:{percent:100}});var g=this.bytesWritten-h,x=(function(b,y,k,j,C){var T=l.transformTo("string",C(j));return f.CENTRAL_DIRECTORY_END+"\0\0\0\0"+i(b,2)+i(b,2)+i(y,4)+i(k,4)+i(T.length,2)+T})(this.dirRecords.length,g,h,this.zipComment,this.encodeFileName);this.push({data:x,meta:{percent:100}})},m.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},m.prototype.registerPrevious=function(h){this._sources.push(h);var v=this;return h.on("data",function(g){v.processChunk(g)}),h.on("end",function(){v.closedSource(v.previous.streamInfo),v._sources.length?v.prepareNextSource():v.end()}),h.on("error",function(g){v.error(g)}),this},m.prototype.resume=function(){return!!c.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},m.prototype.error=function(h){var v=this._sources;if(!c.prototype.error.call(this,h))return!1;for(var g=0;g<v.length;g++)try{v[g].error(h)}catch{}return!0},m.prototype.lock=function(){c.prototype.lock.call(this);for(var h=this._sources,v=0;v<h.length;v++)h[v].lock()},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 d=new a(c.streamFiles,u,c.platform,c.encodeFileName),f=0;try{l.forEach(function(m,h){f++;var v=(function(y,k){var j=y||k,C=i[j];if(!C)throw new Error(j+" is not a valid compression method !");return C})(h.options.compression,c.compression),g=h.options.compressionOptions||c.compressionOptions||{},x=h.dir,b=h.date;h._compressWorker(v,g).withStreamInfo("file",{name:m,dir:x,date:b,comment:h.comment||"",unixPermissions:h.unixPermissions,dosPermissions:h.dosPermissions}).pipe(d)}),d.entriesCount=f}catch(m){d.error(m)}return d}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(n,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"),d=n("./nodejsUtils");function f(m){return new a.Promise(function(h,v){var g=m.decompressed.getContentWorker().pipe(new u);g.on("error",function(x){v(x)}).on("end",function(){g.streamInfo.crc32!==m.decompressed.crc32?v(new Error("Corrupted zip : CRC32 mismatch")):h()}).resume()})}s.exports=function(m,h){var v=this;return h=i.extend(h||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:l.utf8decode}),d.isNode&&d.isStream(m)?a.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):i.prepareContent("the loaded zip file",m,!0,h.optimizedBinaryString,h.base64).then(function(g){var x=new c(h);return x.load(g),x}).then(function(g){var x=[a.Promise.resolve(g)],b=g.files;if(h.checkCRC32)for(var y=0;y<b.length;y++)x.push(f(b[y]));return a.Promise.all(x)}).then(function(g){for(var x=g.shift(),b=x.files,y=0;y<b.length;y++){var k=b[y],j=k.fileNameStr,C=i.resolve(k.fileNameStr);v.file(C,k.decompressed,{binary:!0,optimizedBinaryString:!0,date:k.date,dir:k.dir,comment:k.fileCommentStr.length?k.fileCommentStr:null,unixPermissions:k.unixPermissions,dosPermissions:k.dosPermissions,createFolders:h.createFolders}),k.dir||(v.file(C).unsafeOriginalName=j)}return x.zipComment.length&&(v.comment=x.zipComment),v})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(n,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(d){u.push({data:d,meta:{percent:0}})}).on("error",function(d){u.isPaused?this.generatedError=d:u.error(d)}).on("end",function(){u.isPaused?u._upstreamEnded=!0:u.end()})},l.prototype.pause=function(){return!!a.prototype.pause.call(this)&&(this._stream.pause(),!0)},l.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},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 d=this;l.on("data",function(f,m){d.push(f)||d._helper.pause(),u&&u(m)}).on("error",function(f){d.emit("error",f)}).on("end",function(){d.push(null)})}n("../utils").inherits(a,i),a.prototype._read=function(){this._helper.resume()},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(C,T,N){var z,A=l.getTypeOf(T),O=l.extend(N||{},d);O.date=O.date||new Date,O.compression!==null&&(O.compression=O.compression.toUpperCase()),typeof O.unixPermissions=="string"&&(O.unixPermissions=parseInt(O.unixPermissions,8)),O.unixPermissions&&16384&O.unixPermissions&&(O.dir=!0),O.dosPermissions&&16&O.dosPermissions&&(O.dir=!0),O.dir&&(C=b(C)),O.createFolders&&(z=x(C))&&y.call(this,z,!0);var D=A==="string"&&O.binary===!1&&O.base64===!1;N&&N.binary!==void 0||(O.binary=!D),(T instanceof f&&T.uncompressedSize===0||O.dir||!T||T.length===0)&&(O.base64=!1,O.binary=!0,T="",O.compression="STORE",A="string");var E=null;E=T instanceof f||T instanceof c?T:v.isNode&&v.isStream(T)?new g(C,T):l.prepareContent(C,T,O.binary,O.optimizedBinaryString,O.base64);var L=new m(C,E,O);this.files[C]=L}var a=n("./utf8"),l=n("./utils"),c=n("./stream/GenericWorker"),u=n("./stream/StreamHelper"),d=n("./defaults"),f=n("./compressedObject"),m=n("./zipObject"),h=n("./generate"),v=n("./nodejsUtils"),g=n("./nodejs/NodejsStreamInputAdapter"),x=function(C){C.slice(-1)==="/"&&(C=C.substring(0,C.length-1));var T=C.lastIndexOf("/");return 0<T?C.substring(0,T):""},b=function(C){return C.slice(-1)!=="/"&&(C+="/"),C},y=function(C,T){return T=T!==void 0?T:d.createFolders,C=b(C),this.files[C]||i.call(this,C,null,{dir:!0,createFolders:T}),this.files[C]};function k(C){return Object.prototype.toString.call(C)==="[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(C){var T,N,z;for(T in this.files)z=this.files[T],(N=T.slice(this.root.length,T.length))&&T.slice(0,this.root.length)===this.root&&C(N,z)},filter:function(C){var T=[];return this.forEach(function(N,z){C(N,z)&&T.push(z)}),T},file:function(C,T,N){if(arguments.length!==1)return C=this.root+C,i.call(this,C,T,N),this;if(k(C)){var z=C;return this.filter(function(O,D){return!D.dir&&z.test(O)})}var A=this.files[this.root+C];return A&&!A.dir?A:null},folder:function(C){if(!C)return this;if(k(C))return this.filter(function(A,O){return O.dir&&C.test(A)});var T=this.root+C,N=y.call(this,T),z=this.clone();return z.root=N.name,z},remove:function(C){C=this.root+C;var T=this.files[C];if(T||(C.slice(-1)!=="/"&&(C+="/"),T=this.files[C]),T&&!T.dir)delete this.files[C];else for(var N=this.filter(function(A,O){return O.name.slice(0,C.length)===C}),z=0;z<N.length;z++)delete this.files[N[z].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(C){var T,N={};try{if((N=l.extend(C||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:a.utf8encode})).type=N.type.toLowerCase(),N.compression=N.compression.toUpperCase(),N.type==="binarystring"&&(N.type="string"),!N.type)throw new Error("No output type specified.");l.checkSupport(N.type),N.platform!=="darwin"&&N.platform!=="freebsd"&&N.platform!=="linux"&&N.platform!=="sunos"||(N.platform="UNIX"),N.platform==="win32"&&(N.platform="DOS");var z=N.comment||this.comment||"";T=h.generateWorker(this,N,z)}catch(A){(T=new c("error")).error(A)}return new u(T,N.type||"string",N.mimeType)},generateAsync:function(C,T){return this.generateInternalStream(C).accumulate(T)},generateNodeStream:function(C,T){return(C=C||{}).type||(C.type="nodebuffer"),this.generateInternalStream(C).toNodejsStream(T)}};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),d=l.charCodeAt(2),f=l.charCodeAt(3),m=this.length-4;0<=m;--m)if(this.data[m]===c&&this.data[m+1]===u&&this.data[m+2]===d&&this.data[m+3]===f)return m-this.zero;return-1},a.prototype.readAndCheckSignature=function(l){var c=l.charCodeAt(0),u=l.charCodeAt(1),d=l.charCodeAt(2),f=l.charCodeAt(3),m=this.readData(4);return c===m[0]&&u===m[1]&&d===m[2]&&f===m[3]},a.prototype.readData=function(l){if(this.checkOffset(l),l===0)return[];var c=this.data.slice(this.zero+this.index,this.zero+this.index+l);return this.index+=l,c},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"),d=n("./Uint8ArrayReader");s.exports=function(f){var m=i.getTypeOf(f);return i.checkSupport(m),m!=="string"||a.uint8array?m==="nodebuffer"?new u(f):a.uint8array?new d(i.transformTo("uint8array",f)):new l(i.transformTo("array",f)):new c(f)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(n,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(d){u.dataIsReady=!0,u.data=d,u.max=d&&d.length||0,u.type=i.getTypeOf(d),u.isPaused||u._tickAndRepeat()},function(d){u.error(d)})}i.inherits(l,a),l.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this.data=null},l.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,i.delay(this._tickAndRepeat,[],this)),!0)},l.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(i.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},l.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var c=null,u=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":c=this.data.substring(this.index,u);break;case"uint8array":c=this.data.subarray(this.index,u);break;case"array":case"nodebuffer":c=this.data.slice(this.index,u)}return this.index=u,this.push({data:c,meta:{percent:this.max?this.index/this.max*100:0}})},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"),d=n("../external"),f=null;if(u.nodestream)try{f=n("../nodejs/NodejsStreamOutputAdapter")}catch{}function m(v,g){return new d.Promise(function(x,b){var y=[],k=v._internalType,j=v._outputType,C=v._mimeType;v.on("data",function(T,N){y.push(T),g&&g(N)}).on("error",function(T){y=[],b(T)}).on("end",function(){try{var T=(function(N,z,A){switch(N){case"blob":return i.newBlob(i.transformTo("arraybuffer",z),A);case"base64":return c.encode(z);default:return i.transformTo(N,z)}})(j,(function(N,z){var A,O=0,D=null,E=0;for(A=0;A<z.length;A++)E+=z[A].length;switch(N){case"string":return z.join("");case"array":return Array.prototype.concat.apply([],z);case"uint8array":for(D=new Uint8Array(E),A=0;A<z.length;A++)D.set(z[A],O),O+=z[A].length;return D;case"nodebuffer":return Buffer.concat(z);default:throw new Error("concat : unsupported type '"+N+"'")}})(k,y),C);x(T)}catch(N){b(N)}y=[]}).resume()})}function h(v,g,x){var b=g;switch(g){case"blob":case"arraybuffer":b="uint8array";break;case"base64":b="string"}try{this._internalType=b,this._outputType=g,this._mimeType=x,i.checkSupport(b),this._worker=v.pipe(new a(b)),v.lock()}catch(y){this._worker=new l("error"),this._worker.error(y)}}h.prototype={accumulate:function(v){return m(this,v)},on:function(v,g){var x=this;return v==="data"?this._worker.on(v,function(b){g.call(x,b.data,b.meta)}):this._worker.on(v,function(){i.delay(g,arguments,x)}),this},resume:function(){return i.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(v){if(i.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new f(this,{objectMode:this._outputType!=="nodebuffer"},v)}},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),d=0;d<256;d++)u[d]=252<=d?6:248<=d?5:240<=d?4:224<=d?3:192<=d?2:1;u[254]=u[254]=1;function f(){c.call(this,"utf-8 decode"),this.leftOver=null}function m(){c.call(this,"utf-8 encode")}o.utf8encode=function(h){return a.nodebuffer?l.newBufferFrom(h,"utf-8"):(function(v){var g,x,b,y,k,j=v.length,C=0;for(y=0;y<j;y++)(64512&(x=v.charCodeAt(y)))==55296&&y+1<j&&(64512&(b=v.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(b-56320),y++),C+=x<128?1:x<2048?2:x<65536?3:4;for(g=a.uint8array?new Uint8Array(C):new Array(C),y=k=0;k<C;y++)(64512&(x=v.charCodeAt(y)))==55296&&y+1<j&&(64512&(b=v.charCodeAt(y+1)))==56320&&(x=65536+(x-55296<<10)+(b-56320),y++),x<128?g[k++]=x:(x<2048?g[k++]=192|x>>>6:(x<65536?g[k++]=224|x>>>12:(g[k++]=240|x>>>18,g[k++]=128|x>>>12&63),g[k++]=128|x>>>6&63),g[k++]=128|63&x);return g})(h)},o.utf8decode=function(h){return a.nodebuffer?i.transformTo("nodebuffer",h).toString("utf-8"):(function(v){var g,x,b,y,k=v.length,j=new Array(2*k);for(g=x=0;g<k;)if((b=v[g++])<128)j[x++]=b;else if(4<(y=u[b]))j[x++]=65533,g+=y-1;else{for(b&=y===2?31:y===3?15:7;1<y&&g<k;)b=b<<6|63&v[g++],y--;1<y?j[x++]=65533:b<65536?j[x++]=b:(b-=65536,j[x++]=55296|b>>10&1023,j[x++]=56320|1023&b)}return j.length!==x&&(j.subarray?j=j.subarray(0,x):j.length=x),i.applyFromCharCode(j)})(h=i.transformTo(a.uint8array?"uint8array":"array",h))},i.inherits(f,c),f.prototype.processChunk=function(h){var v=i.transformTo(a.uint8array?"uint8array":"array",h.data);if(this.leftOver&&this.leftOver.length){if(a.uint8array){var g=v;(v=new Uint8Array(g.length+this.leftOver.length)).set(this.leftOver,0),v.set(g,this.leftOver.length)}else v=this.leftOver.concat(v);this.leftOver=null}var x=(function(y,k){var j;for((k=k||y.length)>y.length&&(k=y.length),j=k-1;0<=j&&(192&y[j])==128;)j--;return j<0||j===0?k:j+u[y[j]]>k?j:k})(v),b=v;x!==v.length&&(a.uint8array?(b=v.subarray(0,x),this.leftOver=v.subarray(x,v.length)):(b=v.slice(0,x),this.leftOver=v.slice(x,v.length))),this.push({data:o.utf8decode(b),meta:h.meta})},f.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=f,i.inherits(m,c),m.prototype.processChunk=function(h){this.push({data:o.utf8encode(h.data),meta:h.meta})},o.Utf8EncodeWorker=m},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(n,s,o){var i=n("./support"),a=n("./base64"),l=n("./nodejsUtils"),c=n("./external");function u(g){return g}function d(g,x){for(var b=0;b<g.length;++b)x[b]=255&g.charCodeAt(b);return x}n("setimmediate"),o.newBlob=function(g,x){o.checkSupport("blob");try{return new Blob([g],{type:x})}catch{try{var b=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return b.append(g),b.getBlob(x)}catch{throw new Error("Bug : can't construct the Blob.")}}};var f={stringifyByChunk:function(g,x,b){var y=[],k=0,j=g.length;if(j<=b)return String.fromCharCode.apply(null,g);for(;k<j;)x==="array"||x==="nodebuffer"?y.push(String.fromCharCode.apply(null,g.slice(k,Math.min(k+b,j)))):y.push(String.fromCharCode.apply(null,g.subarray(k,Math.min(k+b,j)))),k+=b;return y.join("")},stringifyByChar:function(g){for(var x="",b=0;b<g.length;b++)x+=String.fromCharCode(g[b]);return x},applyCanBeUsed:{uint8array:(function(){try{return i.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}})(),nodebuffer:(function(){try{return i.nodebuffer&&String.fromCharCode.apply(null,l.allocBuffer(1)).length===1}catch{return!1}})()}};function m(g){var x=65536,b=o.getTypeOf(g),y=!0;if(b==="uint8array"?y=f.applyCanBeUsed.uint8array:b==="nodebuffer"&&(y=f.applyCanBeUsed.nodebuffer),y)for(;1<x;)try{return f.stringifyByChunk(g,b,x)}catch{x=Math.floor(x/2)}return f.stringifyByChar(g)}function h(g,x){for(var b=0;b<g.length;b++)x[b]=g[b];return x}o.applyFromCharCode=m;var v={};v.string={string:u,array:function(g){return d(g,new Array(g.length))},arraybuffer:function(g){return v.string.uint8array(g).buffer},uint8array:function(g){return d(g,new Uint8Array(g.length))},nodebuffer:function(g){return d(g,l.allocBuffer(g.length))}},v.array={string:m,array:u,arraybuffer:function(g){return new Uint8Array(g).buffer},uint8array:function(g){return new Uint8Array(g)},nodebuffer:function(g){return l.newBufferFrom(g)}},v.arraybuffer={string:function(g){return m(new Uint8Array(g))},array:function(g){return h(new Uint8Array(g),new Array(g.byteLength))},arraybuffer:u,uint8array:function(g){return new Uint8Array(g)},nodebuffer:function(g){return l.newBufferFrom(new Uint8Array(g))}},v.uint8array={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return g.buffer},uint8array:u,nodebuffer:function(g){return l.newBufferFrom(g)}},v.nodebuffer={string:m,array:function(g){return h(g,new Array(g.length))},arraybuffer:function(g){return v.nodebuffer.uint8array(g).buffer},uint8array:function(g){return h(g,new Uint8Array(g.length))},nodebuffer:u},o.transformTo=function(g,x){if(x=x||"",!g)return x;o.checkSupport(g);var b=o.getTypeOf(x);return v[b][g](x)},o.resolve=function(g){for(var x=g.split("/"),b=[],y=0;y<x.length;y++){var k=x[y];k==="."||k===""&&y!==0&&y!==x.length-1||(k===".."?b.pop():b.push(k))}return b.join("/")},o.getTypeOf=function(g){return typeof g=="string"?"string":Object.prototype.toString.call(g)==="[object Array]"?"array":i.nodebuffer&&l.isBuffer(g)?"nodebuffer":i.uint8array&&g instanceof Uint8Array?"uint8array":i.arraybuffer&&g instanceof ArrayBuffer?"arraybuffer":void 0},o.checkSupport=function(g){if(!i[g.toLowerCase()])throw new Error(g+" is not supported by this platform")},o.MAX_VALUE_16BITS=65535,o.MAX_VALUE_32BITS=-1,o.pretty=function(g){var x,b,y="";for(b=0;b<(g||"").length;b++)y+="\\x"+((x=g.charCodeAt(b))<16?"0":"")+x.toString(16).toUpperCase();return y},o.delay=function(g,x,b){setImmediate(function(){g.apply(b||null,x||[])})},o.inherits=function(g,x){function b(){}b.prototype=x.prototype,g.prototype=new b},o.extend=function(){var g,x,b={};for(g=0;g<arguments.length;g++)for(x in arguments[g])Object.prototype.hasOwnProperty.call(arguments[g],x)&&b[x]===void 0&&(b[x]=arguments[g][x]);return b},o.prepareContent=function(g,x,b,y,k){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(C,T){var N=new FileReader;N.onload=function(z){C(z.target.result)},N.onerror=function(z){T(z.target.error)},N.readAsArrayBuffer(j)}):j}).then(function(j){var C=o.getTypeOf(j);return C?(C==="arraybuffer"?j=o.transformTo("uint8array",j):C==="string"&&(k?j=a.decode(j):b&&y!==!0&&(j=(function(T){return d(T,i.uint8array?new Uint8Array(T.length):new Array(T.length))})(j))),j):c.Promise.reject(new Error("Can't read the data of '"+g+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(n,s,o){var i=n("./reader/readerFor"),a=n("./utils"),l=n("./signature"),c=n("./zipEntry"),u=n("./support");function d(f){this.files=[],this.loadOptions=f}d.prototype={checkSignature:function(f){if(!this.reader.readAndCheckSignature(f)){this.reader.index-=4;var m=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+a.pretty(m)+", expected "+a.pretty(f)+")")}},isSignature:function(f,m){var h=this.reader.index;this.reader.setIndex(f);var v=this.reader.readString(4)===m;return this.reader.setIndex(h),v},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var f=this.reader.readData(this.zipCommentLength),m=u.uint8array?"uint8array":"array",h=a.transformTo(m,f);this.zipComment=this.loadOptions.decodeFileName(h)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var f,m,h,v=this.zip64EndOfCentralSize-44;0<v;)f=this.reader.readInt(2),m=this.reader.readInt(4),h=this.reader.readData(m),this.zip64ExtensibleData[f]={id:f,length:m,value:h}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var f,m;for(f=0;f<this.files.length;f++)m=this.files[f],this.reader.setIndex(m.localHeaderOffset),this.checkSignature(l.LOCAL_FILE_HEADER),m.readLocalPart(this.reader),m.handleUTF8(),m.processAttributes()},readCentralDir:function(){var f;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(l.CENTRAL_FILE_HEADER);)(f=new c({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(f);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var f=this.reader.lastIndexOfSignature(l.CENTRAL_DIRECTORY_END);if(f<0)throw this.isSignature(0,l.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(f);var m=f;if(this.checkSignature(l.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===a.MAX_VALUE_16BITS||this.diskWithCentralDirStart===a.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===a.MAX_VALUE_16BITS||this.centralDirRecords===a.MAX_VALUE_16BITS||this.centralDirSize===a.MAX_VALUE_32BITS||this.centralDirOffset===a.MAX_VALUE_32BITS){if(this.zip64=!0,(f=this.reader.lastIndexOfSignature(l.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(f),this.checkSignature(l.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,l.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(l.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(l.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var h=this.centralDirOffset+this.centralDirSize;this.zip64&&(h+=20,h+=12+this.zip64EndOfCentralSize);var v=m-h;if(0<v)this.isSignature(m,l.CENTRAL_FILE_HEADER)||(this.reader.zero=v);else if(v<0)throw new Error("Corrupted zip: missing "+Math.abs(v)+" bytes.")},prepareReader:function(f){this.reader=i(f)},load:function(f){this.prepareReader(f),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},s.exports=d},{"./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"),d=n("./compressions"),f=n("./support");function m(h,v){this.options=h,this.loadOptions=v}m.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(h){var v,g;if(h.skip(22),this.fileNameLength=h.readInt(2),g=h.readInt(2),this.fileName=h.readData(this.fileNameLength),h.skip(g),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if((v=(function(x){for(var b in d)if(Object.prototype.hasOwnProperty.call(d,b)&&d[b].magic===x)return d[b];return null})(this.compressionMethod))===null)throw new Error("Corrupted zip : compression "+a.pretty(this.compressionMethod)+" unknown (inner file : "+a.transformTo("string",this.fileName)+")");this.decompressed=new l(this.compressedSize,this.uncompressedSize,this.crc32,v,h.readData(this.compressedSize))},readCentralPart:function(h){this.versionMadeBy=h.readInt(2),h.skip(2),this.bitFlag=h.readInt(2),this.compressionMethod=h.readString(2),this.date=h.readDate(),this.crc32=h.readInt(4),this.compressedSize=h.readInt(4),this.uncompressedSize=h.readInt(4);var v=h.readInt(2);if(this.extraFieldsLength=h.readInt(2),this.fileCommentLength=h.readInt(2),this.diskNumberStart=h.readInt(2),this.internalFileAttributes=h.readInt(2),this.externalFileAttributes=h.readInt(4),this.localHeaderOffset=h.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");h.skip(v),this.readExtraFields(h),this.parseZIP64ExtraField(h),this.fileComment=h.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var h=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),h==0&&(this.dosPermissions=63&this.externalFileAttributes),h==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var h=i(this.extraFields[1].value);this.uncompressedSize===a.MAX_VALUE_32BITS&&(this.uncompressedSize=h.readInt(8)),this.compressedSize===a.MAX_VALUE_32BITS&&(this.compressedSize=h.readInt(8)),this.localHeaderOffset===a.MAX_VALUE_32BITS&&(this.localHeaderOffset=h.readInt(8)),this.diskNumberStart===a.MAX_VALUE_32BITS&&(this.diskNumberStart=h.readInt(4))}},readExtraFields:function(h){var v,g,x,b=h.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});h.index+4<b;)v=h.readInt(2),g=h.readInt(2),x=h.readData(g),this.extraFields[v]={id:v,length:g,value:x};h.setIndex(b)},handleUTF8:function(){var h=f.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=u.utf8decode(this.fileName),this.fileCommentStr=u.utf8decode(this.fileComment);else{var v=this.findExtraFieldUnicodePath();if(v!==null)this.fileNameStr=v;else{var g=a.transformTo(h,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(g)}var x=this.findExtraFieldUnicodeComment();if(x!==null)this.fileCommentStr=x;else{var b=a.transformTo(h,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(b)}}},findExtraFieldUnicodePath:function(){var h=this.extraFields[28789];if(h){var v=i(h.value);return v.readInt(1)!==1||c(this.fileName)!==v.readInt(4)?null:u.utf8decode(v.readData(h.length-5))}return null},findExtraFieldUnicodeComment:function(){var h=this.extraFields[25461];if(h){var v=i(h.value);return v.readInt(1)!==1||c(this.fileComment)!==v.readInt(4)?null:u.utf8decode(v.readData(h.length-5))}return null}},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(v,g,x){this.name=v,this.dir=x.dir,this.date=x.date,this.comment=x.comment,this.unixPermissions=x.unixPermissions,this.dosPermissions=x.dosPermissions,this._data=g,this._dataBinary=x.binary,this.options={compression:x.compression,compressionOptions:x.compressionOptions}}var a=n("./stream/StreamHelper"),l=n("./stream/DataWorker"),c=n("./utf8"),u=n("./compressedObject"),d=n("./stream/GenericWorker");i.prototype={internalStream:function(v){var g=null,x="string";try{if(!v)throw new Error("No output type specified.");var b=(x=v.toLowerCase())==="string"||x==="text";x!=="binarystring"&&x!=="text"||(x="string"),g=this._decompressWorker();var y=!this._dataBinary;y&&!b&&(g=g.pipe(new c.Utf8EncodeWorker)),!y&&b&&(g=g.pipe(new c.Utf8DecodeWorker))}catch(k){(g=new d("error")).error(k)}return new a(g,x,"")},async:function(v,g){return this.internalStream(v).accumulate(g)},nodeStream:function(v,g){return this.internalStream(v||"nodebuffer").toNodejsStream(g)},_compressWorker:function(v,g){if(this._data instanceof u&&this._data.compression.magic===v.magic)return this._data.getCompressedWorker();var x=this._decompressWorker();return this._dataBinary||(x=x.pipe(new c.Utf8EncodeWorker)),u.createWorkerFrom(x,v,g)},_decompressWorker:function(){return this._data instanceof u?this._data.getContentWorker():this._data instanceof d?this._data:new l(this._data)}};for(var f=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],m=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},h=0;h<f.length;h++)i.prototype[f[h]]=m;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,d=new c(v),f=i.document.createTextNode("");d.observe(f,{characterData:!0}),a=function(){f.data=u=++u%2}}else if(i.setImmediate||i.MessageChannel===void 0)a="document"in i&&"onreadystatechange"in i.document.createElement("script")?function(){var g=i.document.createElement("script");g.onreadystatechange=function(){v(),g.onreadystatechange=null,g.parentNode.removeChild(g),g=null},i.document.documentElement.appendChild(g)}:function(){setTimeout(v,0)};else{var m=new i.MessageChannel;m.port1.onmessage=v,a=function(){m.port2.postMessage(0)}}var h=[];function v(){var g,x;l=!0;for(var b=h.length;b;){for(x=h,h=[],g=-1;++g<b;)x[g]();b=h.length}l=!1}s.exports=function(g){h.push(g)!==1||l||a()}}).call(this,typeof gr<"u"?gr: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"],d=["PENDING"];function f(b){if(typeof b!="function")throw new TypeError("resolver must be a function");this.state=d,this.queue=[],this.outcome=void 0,b!==a&&g(this,b)}function m(b,y,k){this.promise=b,typeof y=="function"&&(this.onFulfilled=y,this.callFulfilled=this.otherCallFulfilled),typeof k=="function"&&(this.onRejected=k,this.callRejected=this.otherCallRejected)}function h(b,y,k){i(function(){var j;try{j=y(k)}catch(C){return l.reject(b,C)}j===b?l.reject(b,new TypeError("Cannot resolve promise with itself")):l.resolve(b,j)})}function v(b){var y=b&&b.then;if(b&&(typeof b=="object"||typeof b=="function")&&typeof y=="function")return function(){y.apply(b,arguments)}}function g(b,y){var k=!1;function j(N){k||(k=!0,l.reject(b,N))}function C(N){k||(k=!0,l.resolve(b,N))}var T=x(function(){y(C,j)});T.status==="error"&&j(T.value)}function x(b,y){var k={};try{k.value=b(y),k.status="success"}catch(j){k.status="error",k.value=j}return k}(s.exports=f).prototype.finally=function(b){if(typeof b!="function")return this;var y=this.constructor;return this.then(function(k){return y.resolve(b()).then(function(){return k})},function(k){return y.resolve(b()).then(function(){throw k})})},f.prototype.catch=function(b){return this.then(null,b)},f.prototype.then=function(b,y){if(typeof b!="function"&&this.state===u||typeof y!="function"&&this.state===c)return this;var k=new this.constructor(a);return this.state!==d?h(k,this.state===u?b:y,this.outcome):this.queue.push(new m(k,b,y)),k},m.prototype.callFulfilled=function(b){l.resolve(this.promise,b)},m.prototype.otherCallFulfilled=function(b){h(this.promise,this.onFulfilled,b)},m.prototype.callRejected=function(b){l.reject(this.promise,b)},m.prototype.otherCallRejected=function(b){h(this.promise,this.onRejected,b)},l.resolve=function(b,y){var k=x(v,y);if(k.status==="error")return l.reject(b,k.value);var j=k.value;if(j)g(b,j);else{b.state=u,b.outcome=y;for(var C=-1,T=b.queue.length;++C<T;)b.queue[C].callFulfilled(y)}return b},l.reject=function(b,y){b.state=c,b.outcome=y;for(var k=-1,j=b.queue.length;++k<j;)b.queue[k].callRejected(y);return b},f.resolve=function(b){return b instanceof this?b:l.resolve(new this(a),b)},f.reject=function(b){var y=new this(a);return l.reject(y,b)},f.all=function(b){var y=this;if(Object.prototype.toString.call(b)!=="[object Array]")return this.reject(new TypeError("must be an array"));var k=b.length,j=!1;if(!k)return this.resolve([]);for(var C=new Array(k),T=0,N=-1,z=new this(a);++N<k;)A(b[N],N);return z;function A(O,D){y.resolve(O).then(function(E){C[D]=E,++T!==k||j||(j=!0,l.resolve(z,C))},function(E){j||(j=!0,l.reject(z,E))})}},f.race=function(b){var y=this;if(Object.prototype.toString.call(b)!=="[object Array]")return this.reject(new TypeError("must be an array"));var k=b.length,j=!1;if(!k)return this.resolve([]);for(var C=-1,T=new this(a);++C<k;)N=b[C],y.resolve(N).then(function(z){j||(j=!0,l.resolve(T,z))},function(z){j||(j=!0,l.reject(T,z))});var N;return T}},{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"),d=Object.prototype.toString,f=0,m=-1,h=0,v=8;function g(b){if(!(this instanceof g))return new g(b);this.options=a.assign({level:m,method:v,chunkSize:16384,windowBits:15,memLevel:8,strategy:h,to:""},b||{});var y=this.options;y.raw&&0<y.windowBits?y.windowBits=-y.windowBits:y.gzip&&0<y.windowBits&&y.windowBits<16&&(y.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var k=i.deflateInit2(this.strm,y.level,y.method,y.windowBits,y.memLevel,y.strategy);if(k!==f)throw new Error(c[k]);if(y.header&&i.deflateSetHeader(this.strm,y.header),y.dictionary){var j;if(j=typeof y.dictionary=="string"?l.string2buf(y.dictionary):d.call(y.dictionary)==="[object ArrayBuffer]"?new Uint8Array(y.dictionary):y.dictionary,(k=i.deflateSetDictionary(this.strm,j))!==f)throw new Error(c[k]);this._dict_set=!0}}function x(b,y){var k=new g(y);if(k.push(b,!0),k.err)throw k.msg||c[k.err];return k.result}g.prototype.push=function(b,y){var k,j,C=this.strm,T=this.options.chunkSize;if(this.ended)return!1;j=y===~~y?y:y===!0?4:0,typeof b=="string"?C.input=l.string2buf(b):d.call(b)==="[object ArrayBuffer]"?C.input=new Uint8Array(b):C.input=b,C.next_in=0,C.avail_in=C.input.length;do{if(C.avail_out===0&&(C.output=new a.Buf8(T),C.next_out=0,C.avail_out=T),(k=i.deflate(C,j))!==1&&k!==f)return this.onEnd(k),!(this.ended=!0);C.avail_out!==0&&(C.avail_in!==0||j!==4&&j!==2)||(this.options.to==="string"?this.onData(l.buf2binstring(a.shrinkBuf(C.output,C.next_out))):this.onData(a.shrinkBuf(C.output,C.next_out)))}while((0<C.avail_in||C.avail_out===0)&&k!==1);return j===4?(k=i.deflateEnd(this.strm),this.onEnd(k),this.ended=!0,k===f):j!==2||(this.onEnd(f),!(C.avail_out=0))},g.prototype.onData=function(b){this.chunks.push(b)},g.prototype.onEnd=function(b){b===f&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=b,this.msg=this.strm.msg},o.Deflate=g,o.deflate=x,o.deflateRaw=function(b,y){return(y=y||{}).raw=!0,x(b,y)},o.gzip=function(b,y){return(y=y||{}).gzip=!0,x(b,y)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(n,s,o){var i=n("./zlib/inflate"),a=n("./utils/common"),l=n("./utils/strings"),c=n("./zlib/constants"),u=n("./zlib/messages"),d=n("./zlib/zstream"),f=n("./zlib/gzheader"),m=Object.prototype.toString;function h(g){if(!(this instanceof h))return new h(g);this.options=a.assign({chunkSize:16384,windowBits:0,to:""},g||{});var x=this.options;x.raw&&0<=x.windowBits&&x.windowBits<16&&(x.windowBits=-x.windowBits,x.windowBits===0&&(x.windowBits=-15)),!(0<=x.windowBits&&x.windowBits<16)||g&&g.windowBits||(x.windowBits+=32),15<x.windowBits&&x.windowBits<48&&(15&x.windowBits)==0&&(x.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d,this.strm.avail_out=0;var b=i.inflateInit2(this.strm,x.windowBits);if(b!==c.Z_OK)throw new Error(u[b]);this.header=new f,i.inflateGetHeader(this.strm,this.header)}function v(g,x){var b=new h(x);if(b.push(g,!0),b.err)throw b.msg||u[b.err];return b.result}h.prototype.push=function(g,x){var b,y,k,j,C,T,N=this.strm,z=this.options.chunkSize,A=this.options.dictionary,O=!1;if(this.ended)return!1;y=x===~~x?x:x===!0?c.Z_FINISH:c.Z_NO_FLUSH,typeof g=="string"?N.input=l.binstring2buf(g):m.call(g)==="[object ArrayBuffer]"?N.input=new Uint8Array(g):N.input=g,N.next_in=0,N.avail_in=N.input.length;do{if(N.avail_out===0&&(N.output=new a.Buf8(z),N.next_out=0,N.avail_out=z),(b=i.inflate(N,c.Z_NO_FLUSH))===c.Z_NEED_DICT&&A&&(T=typeof A=="string"?l.string2buf(A):m.call(A)==="[object ArrayBuffer]"?new Uint8Array(A):A,b=i.inflateSetDictionary(this.strm,T)),b===c.Z_BUF_ERROR&&O===!0&&(b=c.Z_OK,O=!1),b!==c.Z_STREAM_END&&b!==c.Z_OK)return this.onEnd(b),!(this.ended=!0);N.next_out&&(N.avail_out!==0&&b!==c.Z_STREAM_END&&(N.avail_in!==0||y!==c.Z_FINISH&&y!==c.Z_SYNC_FLUSH)||(this.options.to==="string"?(k=l.utf8border(N.output,N.next_out),j=N.next_out-k,C=l.buf2string(N.output,k),N.next_out=j,N.avail_out=z-j,j&&a.arraySet(N.output,N.output,k,j,0),this.onData(C)):this.onData(a.shrinkBuf(N.output,N.next_out)))),N.avail_in===0&&N.avail_out===0&&(O=!0)}while((0<N.avail_in||N.avail_out===0)&&b!==c.Z_STREAM_END);return b===c.Z_STREAM_END&&(y=c.Z_FINISH),y===c.Z_FINISH?(b=i.inflateEnd(this.strm),this.onEnd(b),this.ended=!0,b===c.Z_OK):y!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),!(N.avail_out=0))},h.prototype.onData=function(g){this.chunks.push(g)},h.prototype.onEnd=function(g){g===c.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=g,this.msg=this.strm.msg},o.Inflate=h,o.inflate=v,o.inflateRaw=function(g,x){return(x=x||{}).raw=!0,v(g,x)},o.ungzip=v},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(n,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 d=u.shift();if(d){if(typeof d!="object")throw new TypeError(d+"must be non-object");for(var f in d)d.hasOwnProperty(f)&&(c[f]=d[f])}}return c},o.shrinkBuf=function(c,u){return c.length===u?c:c.subarray?c.subarray(0,u):(c.length=u,c)};var a={arraySet:function(c,u,d,f,m){if(u.subarray&&c.subarray)c.set(u.subarray(d,d+f),m);else for(var h=0;h<f;h++)c[m+h]=u[d+h]},flattenChunks:function(c){var u,d,f,m,h,v;for(u=f=0,d=c.length;u<d;u++)f+=c[u].length;for(v=new Uint8Array(f),u=m=0,d=c.length;u<d;u++)h=c[u],v.set(h,m),m+=h.length;return v}},l={arraySet:function(c,u,d,f,m){for(var h=0;h<f;h++)c[m+h]=u[d+h]},flattenChunks:function(c){return[].concat.apply([],c)}};o.setTyped=function(c){c?(o.Buf8=Uint8Array,o.Buf16=Uint16Array,o.Buf32=Int32Array,o.assign(o,a)):(o.Buf8=Array,o.Buf16=Array,o.Buf32=Array,o.assign(o,l))},o.setTyped(i)},{}],42:[function(n,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 d(f,m){if(m<65537&&(f.subarray&&l||!f.subarray&&a))return String.fromCharCode.apply(null,i.shrinkBuf(f,m));for(var h="",v=0;v<m;v++)h+=String.fromCharCode(f[v]);return h}c[254]=c[254]=1,o.string2buf=function(f){var m,h,v,g,x,b=f.length,y=0;for(g=0;g<b;g++)(64512&(h=f.charCodeAt(g)))==55296&&g+1<b&&(64512&(v=f.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(v-56320),g++),y+=h<128?1:h<2048?2:h<65536?3:4;for(m=new i.Buf8(y),g=x=0;x<y;g++)(64512&(h=f.charCodeAt(g)))==55296&&g+1<b&&(64512&(v=f.charCodeAt(g+1)))==56320&&(h=65536+(h-55296<<10)+(v-56320),g++),h<128?m[x++]=h:(h<2048?m[x++]=192|h>>>6:(h<65536?m[x++]=224|h>>>12:(m[x++]=240|h>>>18,m[x++]=128|h>>>12&63),m[x++]=128|h>>>6&63),m[x++]=128|63&h);return m},o.buf2binstring=function(f){return d(f,f.length)},o.binstring2buf=function(f){for(var m=new i.Buf8(f.length),h=0,v=m.length;h<v;h++)m[h]=f.charCodeAt(h);return m},o.buf2string=function(f,m){var h,v,g,x,b=m||f.length,y=new Array(2*b);for(h=v=0;h<b;)if((g=f[h++])<128)y[v++]=g;else if(4<(x=c[g]))y[v++]=65533,h+=x-1;else{for(g&=x===2?31:x===3?15:7;1<x&&h<b;)g=g<<6|63&f[h++],x--;1<x?y[v++]=65533:g<65536?y[v++]=g:(g-=65536,y[v++]=55296|g>>10&1023,y[v++]=56320|1023&g)}return d(y,v)},o.utf8border=function(f,m){var h;for((m=m||f.length)>f.length&&(m=f.length),h=m-1;0<=h&&(192&f[h])==128;)h--;return h<0||h===0?m:h+c[f[h]]>m?h:m}},{"./common":41}],43:[function(n,s,o){s.exports=function(i,a,l,c){for(var u=65535&i|0,d=i>>>16&65535|0,f=0;l!==0;){for(l-=f=2e3<l?2e3:l;d=d+(u=u+a[c++]|0)|0,--f;);u%=65521,d%=65521}return u|d<<16|0}},{}],44:[function(n,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 d=i,f=u+c;a^=-1;for(var m=u;m<f;m++)a=a>>>8^d[255&(a^l[m])];return-1^a}},{}],46:[function(n,s,o){var i,a=n("../utils/common"),l=n("./trees"),c=n("./adler32"),u=n("./crc32"),d=n("./messages"),f=0,m=4,h=0,v=-2,g=-1,x=4,b=2,y=8,k=9,j=286,C=30,T=19,N=2*j+1,z=15,A=3,O=258,D=O+A+1,E=42,L=113,w=1,$=2,ee=3,F=4;function H(_,X){return _.msg=d[X],X}function Z(_){return(_<<1)-(4<_?9:0)}function ue(_){for(var X=_.length;0<=--X;)_[X]=0}function V(_){var X=_.state,G=X.pending;G>_.avail_out&&(G=_.avail_out),G!==0&&(a.arraySet(_.output,X.pending_buf,X.pending_out,G,_.next_out),_.next_out+=G,X.pending_out+=G,_.total_out+=G,_.avail_out-=G,X.pending-=G,X.pending===0&&(X.pending_out=0))}function W(_,X){l._tr_flush_block(_,0<=_.block_start?_.block_start:-1,_.strstart-_.block_start,X),_.block_start=_.strstart,V(_.strm)}function ce(_,X){_.pending_buf[_.pending++]=X}function U(_,X){_.pending_buf[_.pending++]=X>>>8&255,_.pending_buf[_.pending++]=255&X}function Q(_,X){var G,P,R=_.max_chain_length,B=_.strstart,se=_.prev_length,ne=_.nice_match,q=_.strstart>_.w_size-D?_.strstart-(_.w_size-D):0,le=_.window,I=_.w_mask,M=_.prev,J=_.strstart+O,re=le[B+se-1],ie=le[B+se];_.prev_length>=_.good_match&&(R>>=2),ne>_.lookahead&&(ne=_.lookahead);do if(le[(G=X)+se]===ie&&le[G+se-1]===re&&le[G]===le[B]&&le[++G]===le[B+1]){B+=2,G++;do;while(le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&le[++B]===le[++G]&&B<J);if(P=O-(J-B),B=J-O,se<P){if(_.match_start=X,ne<=(se=P))break;re=le[B+se-1],ie=le[B+se]}}while((X=M[X&I])>q&&--R!=0);return se<=_.lookahead?se:_.lookahead}function Ce(_){var X,G,P,R,B,se,ne,q,le,I,M=_.w_size;do{if(R=_.window_size-_.lookahead-_.strstart,_.strstart>=M+(M-D)){for(a.arraySet(_.window,_.window,M,M,0),_.match_start-=M,_.strstart-=M,_.block_start-=M,X=G=_.hash_size;P=_.head[--X],_.head[X]=M<=P?P-M:0,--G;);for(X=G=M;P=_.prev[--X],_.prev[X]=M<=P?P-M:0,--G;);R+=M}if(_.strm.avail_in===0)break;if(se=_.strm,ne=_.window,q=_.strstart+_.lookahead,le=R,I=void 0,I=se.avail_in,le<I&&(I=le),G=I===0?0:(se.avail_in-=I,a.arraySet(ne,se.input,se.next_in,I,q),se.state.wrap===1?se.adler=c(se.adler,ne,I,q):se.state.wrap===2&&(se.adler=u(se.adler,ne,I,q)),se.next_in+=I,se.total_in+=I,I),_.lookahead+=G,_.lookahead+_.insert>=A)for(B=_.strstart-_.insert,_.ins_h=_.window[B],_.ins_h=(_.ins_h<<_.hash_shift^_.window[B+1])&_.hash_mask;_.insert&&(_.ins_h=(_.ins_h<<_.hash_shift^_.window[B+A-1])&_.hash_mask,_.prev[B&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=B,B++,_.insert--,!(_.lookahead+_.insert<A)););}while(_.lookahead<D&&_.strm.avail_in!==0)}function oe(_,X){for(var G,P;;){if(_.lookahead<D){if(Ce(_),_.lookahead<D&&X===f)return w;if(_.lookahead===0)break}if(G=0,_.lookahead>=A&&(_.ins_h=(_.ins_h<<_.hash_shift^_.window[_.strstart+A-1])&_.hash_mask,G=_.prev[_.strstart&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=_.strstart),G!==0&&_.strstart-G<=_.w_size-D&&(_.match_length=Q(_,G)),_.match_length>=A)if(P=l._tr_tally(_,_.strstart-_.match_start,_.match_length-A),_.lookahead-=_.match_length,_.match_length<=_.max_lazy_match&&_.lookahead>=A){for(_.match_length--;_.strstart++,_.ins_h=(_.ins_h<<_.hash_shift^_.window[_.strstart+A-1])&_.hash_mask,G=_.prev[_.strstart&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=_.strstart,--_.match_length!=0;);_.strstart++}else _.strstart+=_.match_length,_.match_length=0,_.ins_h=_.window[_.strstart],_.ins_h=(_.ins_h<<_.hash_shift^_.window[_.strstart+1])&_.hash_mask;else P=l._tr_tally(_,0,_.window[_.strstart]),_.lookahead--,_.strstart++;if(P&&(W(_,!1),_.strm.avail_out===0))return w}return _.insert=_.strstart<A-1?_.strstart:A-1,X===m?(W(_,!0),_.strm.avail_out===0?ee:F):_.last_lit&&(W(_,!1),_.strm.avail_out===0)?w:$}function pe(_,X){for(var G,P,R;;){if(_.lookahead<D){if(Ce(_),_.lookahead<D&&X===f)return w;if(_.lookahead===0)break}if(G=0,_.lookahead>=A&&(_.ins_h=(_.ins_h<<_.hash_shift^_.window[_.strstart+A-1])&_.hash_mask,G=_.prev[_.strstart&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=_.strstart),_.prev_length=_.match_length,_.prev_match=_.match_start,_.match_length=A-1,G!==0&&_.prev_length<_.max_lazy_match&&_.strstart-G<=_.w_size-D&&(_.match_length=Q(_,G),_.match_length<=5&&(_.strategy===1||_.match_length===A&&4096<_.strstart-_.match_start)&&(_.match_length=A-1)),_.prev_length>=A&&_.match_length<=_.prev_length){for(R=_.strstart+_.lookahead-A,P=l._tr_tally(_,_.strstart-1-_.prev_match,_.prev_length-A),_.lookahead-=_.prev_length-1,_.prev_length-=2;++_.strstart<=R&&(_.ins_h=(_.ins_h<<_.hash_shift^_.window[_.strstart+A-1])&_.hash_mask,G=_.prev[_.strstart&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=_.strstart),--_.prev_length!=0;);if(_.match_available=0,_.match_length=A-1,_.strstart++,P&&(W(_,!1),_.strm.avail_out===0))return w}else if(_.match_available){if((P=l._tr_tally(_,0,_.window[_.strstart-1]))&&W(_,!1),_.strstart++,_.lookahead--,_.strm.avail_out===0)return w}else _.match_available=1,_.strstart++,_.lookahead--}return _.match_available&&(P=l._tr_tally(_,0,_.window[_.strstart-1]),_.match_available=0),_.insert=_.strstart<A-1?_.strstart:A-1,X===m?(W(_,!0),_.strm.avail_out===0?ee:F):_.last_lit&&(W(_,!1),_.strm.avail_out===0)?w:$}function ge(_,X,G,P,R){this.good_length=_,this.max_lazy=X,this.nice_length=G,this.max_chain=P,this.func=R}function me(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=y,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new a.Buf16(2*N),this.dyn_dtree=new a.Buf16(2*(2*C+1)),this.bl_tree=new a.Buf16(2*(2*T+1)),ue(this.dyn_ltree),ue(this.dyn_dtree),ue(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new a.Buf16(z+1),this.heap=new a.Buf16(2*j+1),ue(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new a.Buf16(2*j+1),ue(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 xe(_){var X;return _&&_.state?(_.total_in=_.total_out=0,_.data_type=b,(X=_.state).pending=0,X.pending_out=0,X.wrap<0&&(X.wrap=-X.wrap),X.status=X.wrap?E:L,_.adler=X.wrap===2?0:1,X.last_flush=f,l._tr_init(X),h):H(_,v)}function ke(_){var X=xe(_);return X===h&&(function(G){G.window_size=2*G.w_size,ue(G.head),G.max_lazy_match=i[G.level].max_lazy,G.good_match=i[G.level].good_length,G.nice_match=i[G.level].nice_length,G.max_chain_length=i[G.level].max_chain,G.strstart=0,G.block_start=0,G.lookahead=0,G.insert=0,G.match_length=G.prev_length=A-1,G.match_available=0,G.ins_h=0})(_.state),X}function Ae(_,X,G,P,R,B){if(!_)return v;var se=1;if(X===g&&(X=6),P<0?(se=0,P=-P):15<P&&(se=2,P-=16),R<1||k<R||G!==y||P<8||15<P||X<0||9<X||B<0||x<B)return H(_,v);P===8&&(P=9);var ne=new me;return(_.state=ne).strm=_,ne.wrap=se,ne.gzhead=null,ne.w_bits=P,ne.w_size=1<<ne.w_bits,ne.w_mask=ne.w_size-1,ne.hash_bits=R+7,ne.hash_size=1<<ne.hash_bits,ne.hash_mask=ne.hash_size-1,ne.hash_shift=~~((ne.hash_bits+A-1)/A),ne.window=new a.Buf8(2*ne.w_size),ne.head=new a.Buf16(ne.hash_size),ne.prev=new a.Buf16(ne.w_size),ne.lit_bufsize=1<<R+6,ne.pending_buf_size=4*ne.lit_bufsize,ne.pending_buf=new a.Buf8(ne.pending_buf_size),ne.d_buf=1*ne.lit_bufsize,ne.l_buf=3*ne.lit_bufsize,ne.level=X,ne.strategy=B,ne.method=G,ke(_)}i=[new ge(0,0,0,0,function(_,X){var G=65535;for(G>_.pending_buf_size-5&&(G=_.pending_buf_size-5);;){if(_.lookahead<=1){if(Ce(_),_.lookahead===0&&X===f)return w;if(_.lookahead===0)break}_.strstart+=_.lookahead,_.lookahead=0;var P=_.block_start+G;if((_.strstart===0||_.strstart>=P)&&(_.lookahead=_.strstart-P,_.strstart=P,W(_,!1),_.strm.avail_out===0)||_.strstart-_.block_start>=_.w_size-D&&(W(_,!1),_.strm.avail_out===0))return w}return _.insert=0,X===m?(W(_,!0),_.strm.avail_out===0?ee:F):(_.strstart>_.block_start&&(W(_,!1),_.strm.avail_out),w)}),new ge(4,4,8,4,oe),new ge(4,5,16,8,oe),new ge(4,6,32,32,oe),new ge(4,4,16,16,pe),new ge(8,16,32,32,pe),new ge(8,16,128,128,pe),new ge(8,32,128,256,pe),new ge(32,128,258,1024,pe),new ge(32,258,258,4096,pe)],o.deflateInit=function(_,X){return Ae(_,X,y,15,8,0)},o.deflateInit2=Ae,o.deflateReset=ke,o.deflateResetKeep=xe,o.deflateSetHeader=function(_,X){return _&&_.state?_.state.wrap!==2?v:(_.state.gzhead=X,h):v},o.deflate=function(_,X){var G,P,R,B;if(!_||!_.state||5<X||X<0)return _?H(_,v):v;if(P=_.state,!_.output||!_.input&&_.avail_in!==0||P.status===666&&X!==m)return H(_,_.avail_out===0?-5:v);if(P.strm=_,G=P.last_flush,P.last_flush=X,P.status===E)if(P.wrap===2)_.adler=0,ce(P,31),ce(P,139),ce(P,8),P.gzhead?(ce(P,(P.gzhead.text?1:0)+(P.gzhead.hcrc?2:0)+(P.gzhead.extra?4:0)+(P.gzhead.name?8:0)+(P.gzhead.comment?16:0)),ce(P,255&P.gzhead.time),ce(P,P.gzhead.time>>8&255),ce(P,P.gzhead.time>>16&255),ce(P,P.gzhead.time>>24&255),ce(P,P.level===9?2:2<=P.strategy||P.level<2?4:0),ce(P,255&P.gzhead.os),P.gzhead.extra&&P.gzhead.extra.length&&(ce(P,255&P.gzhead.extra.length),ce(P,P.gzhead.extra.length>>8&255)),P.gzhead.hcrc&&(_.adler=u(_.adler,P.pending_buf,P.pending,0)),P.gzindex=0,P.status=69):(ce(P,0),ce(P,0),ce(P,0),ce(P,0),ce(P,0),ce(P,P.level===9?2:2<=P.strategy||P.level<2?4:0),ce(P,3),P.status=L);else{var se=y+(P.w_bits-8<<4)<<8;se|=(2<=P.strategy||P.level<2?0:P.level<6?1:P.level===6?2:3)<<6,P.strstart!==0&&(se|=32),se+=31-se%31,P.status=L,U(P,se),P.strstart!==0&&(U(P,_.adler>>>16),U(P,65535&_.adler)),_.adler=1}if(P.status===69)if(P.gzhead.extra){for(R=P.pending;P.gzindex<(65535&P.gzhead.extra.length)&&(P.pending!==P.pending_buf_size||(P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),V(_),R=P.pending,P.pending!==P.pending_buf_size));)ce(P,255&P.gzhead.extra[P.gzindex]),P.gzindex++;P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),P.gzindex===P.gzhead.extra.length&&(P.gzindex=0,P.status=73)}else P.status=73;if(P.status===73)if(P.gzhead.name){R=P.pending;do{if(P.pending===P.pending_buf_size&&(P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),V(_),R=P.pending,P.pending===P.pending_buf_size)){B=1;break}B=P.gzindex<P.gzhead.name.length?255&P.gzhead.name.charCodeAt(P.gzindex++):0,ce(P,B)}while(B!==0);P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),B===0&&(P.gzindex=0,P.status=91)}else P.status=91;if(P.status===91)if(P.gzhead.comment){R=P.pending;do{if(P.pending===P.pending_buf_size&&(P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),V(_),R=P.pending,P.pending===P.pending_buf_size)){B=1;break}B=P.gzindex<P.gzhead.comment.length?255&P.gzhead.comment.charCodeAt(P.gzindex++):0,ce(P,B)}while(B!==0);P.gzhead.hcrc&&P.pending>R&&(_.adler=u(_.adler,P.pending_buf,P.pending-R,R)),B===0&&(P.status=103)}else P.status=103;if(P.status===103&&(P.gzhead.hcrc?(P.pending+2>P.pending_buf_size&&V(_),P.pending+2<=P.pending_buf_size&&(ce(P,255&_.adler),ce(P,_.adler>>8&255),_.adler=0,P.status=L)):P.status=L),P.pending!==0){if(V(_),_.avail_out===0)return P.last_flush=-1,h}else if(_.avail_in===0&&Z(X)<=Z(G)&&X!==m)return H(_,-5);if(P.status===666&&_.avail_in!==0)return H(_,-5);if(_.avail_in!==0||P.lookahead!==0||X!==f&&P.status!==666){var ne=P.strategy===2?(function(q,le){for(var I;;){if(q.lookahead===0&&(Ce(q),q.lookahead===0)){if(le===f)return w;break}if(q.match_length=0,I=l._tr_tally(q,0,q.window[q.strstart]),q.lookahead--,q.strstart++,I&&(W(q,!1),q.strm.avail_out===0))return w}return q.insert=0,le===m?(W(q,!0),q.strm.avail_out===0?ee:F):q.last_lit&&(W(q,!1),q.strm.avail_out===0)?w:$})(P,X):P.strategy===3?(function(q,le){for(var I,M,J,re,ie=q.window;;){if(q.lookahead<=O){if(Ce(q),q.lookahead<=O&&le===f)return w;if(q.lookahead===0)break}if(q.match_length=0,q.lookahead>=A&&0<q.strstart&&(M=ie[J=q.strstart-1])===ie[++J]&&M===ie[++J]&&M===ie[++J]){re=q.strstart+O;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<re);q.match_length=O-(re-J),q.match_length>q.lookahead&&(q.match_length=q.lookahead)}if(q.match_length>=A?(I=l._tr_tally(q,1,q.match_length-A),q.lookahead-=q.match_length,q.strstart+=q.match_length,q.match_length=0):(I=l._tr_tally(q,0,q.window[q.strstart]),q.lookahead--,q.strstart++),I&&(W(q,!1),q.strm.avail_out===0))return w}return q.insert=0,le===m?(W(q,!0),q.strm.avail_out===0?ee:F):q.last_lit&&(W(q,!1),q.strm.avail_out===0)?w:$})(P,X):i[P.level].func(P,X);if(ne!==ee&&ne!==F||(P.status=666),ne===w||ne===ee)return _.avail_out===0&&(P.last_flush=-1),h;if(ne===$&&(X===1?l._tr_align(P):X!==5&&(l._tr_stored_block(P,0,0,!1),X===3&&(ue(P.head),P.lookahead===0&&(P.strstart=0,P.block_start=0,P.insert=0))),V(_),_.avail_out===0))return P.last_flush=-1,h}return X!==m?h:P.wrap<=0?1:(P.wrap===2?(ce(P,255&_.adler),ce(P,_.adler>>8&255),ce(P,_.adler>>16&255),ce(P,_.adler>>24&255),ce(P,255&_.total_in),ce(P,_.total_in>>8&255),ce(P,_.total_in>>16&255),ce(P,_.total_in>>24&255)):(U(P,_.adler>>>16),U(P,65535&_.adler)),V(_),0<P.wrap&&(P.wrap=-P.wrap),P.pending!==0?h:1)},o.deflateEnd=function(_){var X;return _&&_.state?(X=_.state.status)!==E&&X!==69&&X!==73&&X!==91&&X!==103&&X!==L&&X!==666?H(_,v):(_.state=null,X===L?H(_,-3):h):v},o.deflateSetDictionary=function(_,X){var G,P,R,B,se,ne,q,le,I=X.length;if(!_||!_.state||(B=(G=_.state).wrap)===2||B===1&&G.status!==E||G.lookahead)return v;for(B===1&&(_.adler=c(_.adler,X,I,0)),G.wrap=0,I>=G.w_size&&(B===0&&(ue(G.head),G.strstart=0,G.block_start=0,G.insert=0),le=new a.Buf8(G.w_size),a.arraySet(le,X,I-G.w_size,G.w_size,0),X=le,I=G.w_size),se=_.avail_in,ne=_.next_in,q=_.input,_.avail_in=I,_.next_in=0,_.input=X,Ce(G);G.lookahead>=A;){for(P=G.strstart,R=G.lookahead-(A-1);G.ins_h=(G.ins_h<<G.hash_shift^G.window[P+A-1])&G.hash_mask,G.prev[P&G.w_mask]=G.head[G.ins_h],G.head[G.ins_h]=P,P++,--R;);G.strstart=P,G.lookahead=A-1,Ce(G)}return G.strstart+=G.lookahead,G.block_start=G.strstart,G.insert=G.lookahead,G.lookahead=0,G.match_length=G.prev_length=A-1,G.match_available=0,_.next_in=ne,_.input=q,_.avail_in=se,G.wrap=B,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,d,f,m,h,v,g,x,b,y,k,j,C,T,N,z,A,O,D,E,L,w,$;l=i.state,c=i.next_in,w=i.input,u=c+(i.avail_in-5),d=i.next_out,$=i.output,f=d-(a-i.avail_out),m=d+(i.avail_out-257),h=l.dmax,v=l.wsize,g=l.whave,x=l.wnext,b=l.window,y=l.hold,k=l.bits,j=l.lencode,C=l.distcode,T=(1<<l.lenbits)-1,N=(1<<l.distbits)-1;e:do{k<15&&(y+=w[c++]<<k,k+=8,y+=w[c++]<<k,k+=8),z=j[y&T];t:for(;;){if(y>>>=A=z>>>24,k-=A,(A=z>>>16&255)===0)$[d++]=65535&z;else{if(!(16&A)){if((64&A)==0){z=j[(65535&z)+(y&(1<<A)-1)];continue t}if(32&A){l.mode=12;break e}i.msg="invalid literal/length code",l.mode=30;break e}O=65535&z,(A&=15)&&(k<A&&(y+=w[c++]<<k,k+=8),O+=y&(1<<A)-1,y>>>=A,k-=A),k<15&&(y+=w[c++]<<k,k+=8,y+=w[c++]<<k,k+=8),z=C[y&N];n:for(;;){if(y>>>=A=z>>>24,k-=A,!(16&(A=z>>>16&255))){if((64&A)==0){z=C[(65535&z)+(y&(1<<A)-1)];continue n}i.msg="invalid distance code",l.mode=30;break e}if(D=65535&z,k<(A&=15)&&(y+=w[c++]<<k,(k+=8)<A&&(y+=w[c++]<<k,k+=8)),h<(D+=y&(1<<A)-1)){i.msg="invalid distance too far back",l.mode=30;break e}if(y>>>=A,k-=A,(A=d-f)<D){if(g<(A=D-A)&&l.sane){i.msg="invalid distance too far back",l.mode=30;break e}if(L=b,(E=0)===x){if(E+=v-A,A<O){for(O-=A;$[d++]=b[E++],--A;);E=d-D,L=$}}else if(x<A){if(E+=v+x-A,(A-=x)<O){for(O-=A;$[d++]=b[E++],--A;);if(E=0,x<O){for(O-=A=x;$[d++]=b[E++],--A;);E=d-D,L=$}}}else if(E+=x-A,A<O){for(O-=A;$[d++]=b[E++],--A;);E=d-D,L=$}for(;2<O;)$[d++]=L[E++],$[d++]=L[E++],$[d++]=L[E++],O-=3;O&&($[d++]=L[E++],1<O&&($[d++]=L[E++]))}else{for(E=d-D;$[d++]=$[E++],$[d++]=$[E++],$[d++]=$[E++],2<(O-=3););O&&($[d++]=$[E++],1<O&&($[d++]=$[E++]))}break}}break}}while(c<u&&d<m);c-=O=k>>3,y&=(1<<(k-=O<<3))-1,i.next_in=c,i.next_out=d,i.avail_in=c<u?u-c+5:5-(c-u),i.avail_out=d<m?m-d+257:257-(d-m),l.hold=y,l.bits=k}},{}],49:[function(n,s,o){var i=n("../utils/common"),a=n("./adler32"),l=n("./crc32"),c=n("./inffast"),u=n("./inftrees"),d=1,f=2,m=0,h=-2,v=1,g=852,x=592;function b(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 k(E){var L;return E&&E.state?(L=E.state,E.total_in=E.total_out=L.total=0,E.msg="",L.wrap&&(E.adler=1&L.wrap),L.mode=v,L.last=0,L.havedict=0,L.dmax=32768,L.head=null,L.hold=0,L.bits=0,L.lencode=L.lendyn=new i.Buf32(g),L.distcode=L.distdyn=new i.Buf32(x),L.sane=1,L.back=-1,m):h}function j(E){var L;return E&&E.state?((L=E.state).wsize=0,L.whave=0,L.wnext=0,k(E)):h}function C(E,L){var w,$;return E&&E.state?($=E.state,L<0?(w=0,L=-L):(w=1+(L>>4),L<48&&(L&=15)),L&&(L<8||15<L)?h:($.window!==null&&$.wbits!==L&&($.window=null),$.wrap=w,$.wbits=L,j(E))):h}function T(E,L){var w,$;return E?($=new y,(E.state=$).window=null,(w=C(E,L))!==m&&(E.state=null),w):h}var N,z,A=!0;function O(E){if(A){var L;for(N=new i.Buf32(512),z=new i.Buf32(32),L=0;L<144;)E.lens[L++]=8;for(;L<256;)E.lens[L++]=9;for(;L<280;)E.lens[L++]=7;for(;L<288;)E.lens[L++]=8;for(u(d,E.lens,0,288,N,0,E.work,{bits:9}),L=0;L<32;)E.lens[L++]=5;u(f,E.lens,0,32,z,0,E.work,{bits:5}),A=!1}E.lencode=N,E.lenbits=9,E.distcode=z,E.distbits=5}function D(E,L,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,L,w-F.wsize,F.wsize,0),F.wnext=0,F.whave=F.wsize):($<(ee=F.wsize-F.wnext)&&(ee=$),i.arraySet(F.window,L,w-$,ee,F.wnext),($-=ee)?(i.arraySet(F.window,L,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=C,o.inflateResetKeep=k,o.inflateInit=function(E){return T(E,15)},o.inflateInit2=T,o.inflate=function(E,L){var w,$,ee,F,H,Z,ue,V,W,ce,U,Q,Ce,oe,pe,ge,me,xe,ke,Ae,_,X,G,P,R=0,B=new i.Buf8(4),se=[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),H=E.next_out,ee=E.output,ue=E.avail_out,F=E.next_in,$=E.input,Z=E.avail_in,V=w.hold,W=w.bits,ce=Z,U=ue,X=m;e:for(;;)switch(w.mode){case v:if(w.wrap===0){w.mode=13;break}for(;W<16;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(2&w.wrap&&V===35615){B[w.check=0]=255&V,B[1]=V>>>8&255,w.check=l(w.check,B,2,0),W=V=0,w.mode=2;break}if(w.flags=0,w.head&&(w.head.done=!1),!(1&w.wrap)||(((255&V)<<8)+(V>>8))%31){E.msg="incorrect header check",w.mode=30;break}if((15&V)!=8){E.msg="unknown compression method",w.mode=30;break}if(W-=4,_=8+(15&(V>>>=4)),w.wbits===0)w.wbits=_;else if(_>w.wbits){E.msg="invalid window size",w.mode=30;break}w.dmax=1<<_,E.adler=w.check=1,w.mode=512&V?10:12,W=V=0;break;case 2:for(;W<16;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(w.flags=V,(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=V>>8&1),512&w.flags&&(B[0]=255&V,B[1]=V>>>8&255,w.check=l(w.check,B,2,0)),W=V=0,w.mode=3;case 3:for(;W<32;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.head&&(w.head.time=V),512&w.flags&&(B[0]=255&V,B[1]=V>>>8&255,B[2]=V>>>16&255,B[3]=V>>>24&255,w.check=l(w.check,B,4,0)),W=V=0,w.mode=4;case 4:for(;W<16;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.head&&(w.head.xflags=255&V,w.head.os=V>>8),512&w.flags&&(B[0]=255&V,B[1]=V>>>8&255,w.check=l(w.check,B,2,0)),W=V=0,w.mode=5;case 5:if(1024&w.flags){for(;W<16;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.length=V,w.head&&(w.head.extra_len=V),512&w.flags&&(B[0]=255&V,B[1]=V>>>8&255,w.check=l(w.check,B,2,0)),W=V=0}else w.head&&(w.head.extra=null);w.mode=6;case 6:if(1024&w.flags&&(Z<(Q=w.length)&&(Q=Z),Q&&(w.head&&(_=w.head.extra_len-w.length,w.head.extra||(w.head.extra=new Array(w.head.extra_len)),i.arraySet(w.head.extra,$,F,Q,_)),512&w.flags&&(w.check=l(w.check,$,Q,F)),Z-=Q,F+=Q,w.length-=Q),w.length))break e;w.length=0,w.mode=7;case 7:if(2048&w.flags){if(Z===0)break e;for(Q=0;_=$[F+Q++],w.head&&_&&w.length<65536&&(w.head.name+=String.fromCharCode(_)),_&&Q<Z;);if(512&w.flags&&(w.check=l(w.check,$,Q,F)),Z-=Q,F+=Q,_)break e}else w.head&&(w.head.name=null);w.length=0,w.mode=8;case 8:if(4096&w.flags){if(Z===0)break e;for(Q=0;_=$[F+Q++],w.head&&_&&w.length<65536&&(w.head.comment+=String.fromCharCode(_)),_&&Q<Z;);if(512&w.flags&&(w.check=l(w.check,$,Q,F)),Z-=Q,F+=Q,_)break e}else w.head&&(w.head.comment=null);w.mode=9;case 9:if(512&w.flags){for(;W<16;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(V!==(65535&w.check)){E.msg="header crc mismatch",w.mode=30;break}W=V=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(;W<32;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}E.adler=w.check=b(V),W=V=0,w.mode=11;case 11:if(w.havedict===0)return E.next_out=H,E.avail_out=ue,E.next_in=F,E.avail_in=Z,w.hold=V,w.bits=W,2;E.adler=w.check=1,w.mode=12;case 12:if(L===5||L===6)break e;case 13:if(w.last){V>>>=7&W,W-=7&W,w.mode=27;break}for(;W<3;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}switch(w.last=1&V,W-=1,3&(V>>>=1)){case 0:w.mode=14;break;case 1:if(O(w),w.mode=20,L!==6)break;V>>>=2,W-=2;break e;case 2:w.mode=17;break;case 3:E.msg="invalid block type",w.mode=30}V>>>=2,W-=2;break;case 14:for(V>>>=7&W,W-=7&W;W<32;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if((65535&V)!=(V>>>16^65535)){E.msg="invalid stored block lengths",w.mode=30;break}if(w.length=65535&V,W=V=0,w.mode=15,L===6)break e;case 15:w.mode=16;case 16:if(Q=w.length){if(Z<Q&&(Q=Z),ue<Q&&(Q=ue),Q===0)break e;i.arraySet(ee,$,F,Q,H),Z-=Q,F+=Q,ue-=Q,H+=Q,w.length-=Q;break}w.mode=12;break;case 17:for(;W<14;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(w.nlen=257+(31&V),V>>>=5,W-=5,w.ndist=1+(31&V),V>>>=5,W-=5,w.ncode=4+(15&V),V>>>=4,W-=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(;W<3;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.lens[se[w.have++]]=7&V,V>>>=3,W-=3}for(;w.have<19;)w.lens[se[w.have++]]=0;if(w.lencode=w.lendyn,w.lenbits=7,G={bits:w.lenbits},X=u(0,w.lens,0,19,w.lencode,0,w.work,G),w.lenbits=G.bits,X){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(;ge=(R=w.lencode[V&(1<<w.lenbits)-1])>>>16&255,me=65535&R,!((pe=R>>>24)<=W);){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(me<16)V>>>=pe,W-=pe,w.lens[w.have++]=me;else{if(me===16){for(P=pe+2;W<P;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(V>>>=pe,W-=pe,w.have===0){E.msg="invalid bit length repeat",w.mode=30;break}_=w.lens[w.have-1],Q=3+(3&V),V>>>=2,W-=2}else if(me===17){for(P=pe+3;W<P;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}W-=pe,_=0,Q=3+(7&(V>>>=pe)),V>>>=3,W-=3}else{for(P=pe+7;W<P;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}W-=pe,_=0,Q=11+(127&(V>>>=pe)),V>>>=7,W-=7}if(w.have+Q>w.nlen+w.ndist){E.msg="invalid bit length repeat",w.mode=30;break}for(;Q--;)w.lens[w.have++]=_}}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,G={bits:w.lenbits},X=u(d,w.lens,0,w.nlen,w.lencode,0,w.work,G),w.lenbits=G.bits,X){E.msg="invalid literal/lengths set",w.mode=30;break}if(w.distbits=6,w.distcode=w.distdyn,G={bits:w.distbits},X=u(f,w.lens,w.nlen,w.ndist,w.distcode,0,w.work,G),w.distbits=G.bits,X){E.msg="invalid distances set",w.mode=30;break}if(w.mode=20,L===6)break e;case 20:w.mode=21;case 21:if(6<=Z&&258<=ue){E.next_out=H,E.avail_out=ue,E.next_in=F,E.avail_in=Z,w.hold=V,w.bits=W,c(E,U),H=E.next_out,ee=E.output,ue=E.avail_out,F=E.next_in,$=E.input,Z=E.avail_in,V=w.hold,W=w.bits,w.mode===12&&(w.back=-1);break}for(w.back=0;ge=(R=w.lencode[V&(1<<w.lenbits)-1])>>>16&255,me=65535&R,!((pe=R>>>24)<=W);){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(ge&&(240&ge)==0){for(xe=pe,ke=ge,Ae=me;ge=(R=w.lencode[Ae+((V&(1<<xe+ke)-1)>>xe)])>>>16&255,me=65535&R,!(xe+(pe=R>>>24)<=W);){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}V>>>=xe,W-=xe,w.back+=xe}if(V>>>=pe,W-=pe,w.back+=pe,w.length=me,ge===0){w.mode=26;break}if(32&ge){w.back=-1,w.mode=12;break}if(64&ge){E.msg="invalid literal/length code",w.mode=30;break}w.extra=15&ge,w.mode=22;case 22:if(w.extra){for(P=w.extra;W<P;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.length+=V&(1<<w.extra)-1,V>>>=w.extra,W-=w.extra,w.back+=w.extra}w.was=w.length,w.mode=23;case 23:for(;ge=(R=w.distcode[V&(1<<w.distbits)-1])>>>16&255,me=65535&R,!((pe=R>>>24)<=W);){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if((240&ge)==0){for(xe=pe,ke=ge,Ae=me;ge=(R=w.distcode[Ae+((V&(1<<xe+ke)-1)>>xe)])>>>16&255,me=65535&R,!(xe+(pe=R>>>24)<=W);){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}V>>>=xe,W-=xe,w.back+=xe}if(V>>>=pe,W-=pe,w.back+=pe,64&ge){E.msg="invalid distance code",w.mode=30;break}w.offset=me,w.extra=15&ge,w.mode=24;case 24:if(w.extra){for(P=w.extra;W<P;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}w.offset+=V&(1<<w.extra)-1,V>>>=w.extra,W-=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(ue===0)break e;if(Q=U-ue,w.offset>Q){if((Q=w.offset-Q)>w.whave&&w.sane){E.msg="invalid distance too far back",w.mode=30;break}Ce=Q>w.wnext?(Q-=w.wnext,w.wsize-Q):w.wnext-Q,Q>w.length&&(Q=w.length),oe=w.window}else oe=ee,Ce=H-w.offset,Q=w.length;for(ue<Q&&(Q=ue),ue-=Q,w.length-=Q;ee[H++]=oe[Ce++],--Q;);w.length===0&&(w.mode=21);break;case 26:if(ue===0)break e;ee[H++]=w.length,ue--,w.mode=21;break;case 27:if(w.wrap){for(;W<32;){if(Z===0)break e;Z--,V|=$[F++]<<W,W+=8}if(U-=ue,E.total_out+=U,w.total+=U,U&&(E.adler=w.check=w.flags?l(w.check,ee,U,H-U):a(w.check,ee,U,H-U)),U=ue,(w.flags?V:b(V))!==w.check){E.msg="incorrect data check",w.mode=30;break}W=V=0}w.mode=28;case 28:if(w.wrap&&w.flags){for(;W<32;){if(Z===0)break e;Z--,V+=$[F++]<<W,W+=8}if(V!==(4294967295&w.total)){E.msg="incorrect length check",w.mode=30;break}W=V=0}w.mode=29;case 29:X=1;break e;case 30:X=-3;break e;case 31:return-4;default:return h}return E.next_out=H,E.avail_out=ue,E.next_in=F,E.avail_in=Z,w.hold=V,w.bits=W,(w.wsize||U!==E.avail_out&&w.mode<30&&(w.mode<27||L!==4))&&D(E,E.output,E.next_out,U-E.avail_out)?(w.mode=31,-4):(ce-=E.avail_in,U-=E.avail_out,E.total_in+=ce,E.total_out+=U,w.total+=U,w.wrap&&U&&(E.adler=w.check=w.flags?l(w.check,ee,U,E.next_out-U):a(w.check,ee,U,E.next_out-U)),E.data_type=w.bits+(w.last?64:0)+(w.mode===12?128:0)+(w.mode===20||w.mode===15?256:0),(ce==0&&U===0||L===4)&&X===m&&(X=-5),X)},o.inflateEnd=function(E){if(!E||!E.state)return h;var L=E.state;return L.window&&(L.window=null),E.state=null,m},o.inflateGetHeader=function(E,L){var w;return E&&E.state?(2&(w=E.state).wrap)==0?h:((w.head=L).done=!1,m):h},o.inflateSetDictionary=function(E,L){var w,$=L.length;return E&&E.state?(w=E.state).wrap!==0&&w.mode!==11?h:w.mode===11&&a(1,L,$,0)!==w.check?-3:D(E,L,$,$)?(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(d,f,m,h,v,g,x,b){var y,k,j,C,T,N,z,A,O,D=b.bits,E=0,L=0,w=0,$=0,ee=0,F=0,H=0,Z=0,ue=0,V=0,W=null,ce=0,U=new i.Buf16(16),Q=new i.Buf16(16),Ce=null,oe=0;for(E=0;E<=15;E++)U[E]=0;for(L=0;L<h;L++)U[f[m+L]]++;for(ee=D,$=15;1<=$&&U[$]===0;$--);if($<ee&&(ee=$),$===0)return v[g++]=20971520,v[g++]=20971520,b.bits=1,0;for(w=1;w<$&&U[w]===0;w++);for(ee<w&&(ee=w),E=Z=1;E<=15;E++)if(Z<<=1,(Z-=U[E])<0)return-1;if(0<Z&&(d===0||$!==1))return-1;for(Q[1]=0,E=1;E<15;E++)Q[E+1]=Q[E]+U[E];for(L=0;L<h;L++)f[m+L]!==0&&(x[Q[f[m+L]]++]=L);if(N=d===0?(W=Ce=x,19):d===1?(W=a,ce-=257,Ce=l,oe-=257,256):(W=c,Ce=u,-1),E=w,T=g,H=L=V=0,j=-1,C=(ue=1<<(F=ee))-1,d===1&&852<ue||d===2&&592<ue)return 1;for(;;){for(z=E-H,O=x[L]<N?(A=0,x[L]):x[L]>N?(A=Ce[oe+x[L]],W[ce+x[L]]):(A=96,0),y=1<<E-H,w=k=1<<F;v[T+(V>>H)+(k-=y)]=z<<24|A<<16|O|0,k!==0;);for(y=1<<E-1;V&y;)y>>=1;if(y!==0?(V&=y-1,V+=y):V=0,L++,--U[E]==0){if(E===$)break;E=f[m+x[L]]}if(ee<E&&(V&C)!==j){for(H===0&&(H=ee),T+=w,Z=1<<(F=E-H);F+H<$&&!((Z-=U[F+H])<=0);)F++,Z<<=1;if(ue+=1<<F,d===1&&852<ue||d===2&&592<ue)return 1;v[j=V&C]=ee<<24|F<<16|T-g|0}}return V!==0&&(v[T+V]=E-H<<24|64<<16|0),b.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 B=R.length;0<=--B;)R[B]=0}var u=0,d=29,f=256,m=f+1+d,h=30,v=19,g=2*m+1,x=15,b=16,y=7,k=256,j=16,C=17,T=18,N=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],z=[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],A=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],O=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],D=new Array(2*(m+2));c(D);var E=new Array(2*h);c(E);var L=new Array(512);c(L);var w=new Array(256);c(w);var $=new Array(d);c($);var ee,F,H,Z=new Array(h);function ue(R,B,se,ne,q){this.static_tree=R,this.extra_bits=B,this.extra_base=se,this.elems=ne,this.max_length=q,this.has_stree=R&&R.length}function V(R,B){this.dyn_tree=R,this.max_code=0,this.stat_desc=B}function W(R){return R<256?L[R]:L[256+(R>>>7)]}function ce(R,B){R.pending_buf[R.pending++]=255&B,R.pending_buf[R.pending++]=B>>>8&255}function U(R,B,se){R.bi_valid>b-se?(R.bi_buf|=B<<R.bi_valid&65535,ce(R,R.bi_buf),R.bi_buf=B>>b-R.bi_valid,R.bi_valid+=se-b):(R.bi_buf|=B<<R.bi_valid&65535,R.bi_valid+=se)}function Q(R,B,se){U(R,se[2*B],se[2*B+1])}function Ce(R,B){for(var se=0;se|=1&R,R>>>=1,se<<=1,0<--B;);return se>>>1}function oe(R,B,se){var ne,q,le=new Array(x+1),I=0;for(ne=1;ne<=x;ne++)le[ne]=I=I+se[ne-1]<<1;for(q=0;q<=B;q++){var M=R[2*q+1];M!==0&&(R[2*q]=Ce(le[M]++,M))}}function pe(R){var B;for(B=0;B<m;B++)R.dyn_ltree[2*B]=0;for(B=0;B<h;B++)R.dyn_dtree[2*B]=0;for(B=0;B<v;B++)R.bl_tree[2*B]=0;R.dyn_ltree[2*k]=1,R.opt_len=R.static_len=0,R.last_lit=R.matches=0}function ge(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 me(R,B,se,ne){var q=2*B,le=2*se;return R[q]<R[le]||R[q]===R[le]&&ne[B]<=ne[se]}function xe(R,B,se){for(var ne=R.heap[se],q=se<<1;q<=R.heap_len&&(q<R.heap_len&&me(B,R.heap[q+1],R.heap[q],R.depth)&&q++,!me(B,ne,R.heap[q],R.depth));)R.heap[se]=R.heap[q],se=q,q<<=1;R.heap[se]=ne}function ke(R,B,se){var ne,q,le,I,M=0;if(R.last_lit!==0)for(;ne=R.pending_buf[R.d_buf+2*M]<<8|R.pending_buf[R.d_buf+2*M+1],q=R.pending_buf[R.l_buf+M],M++,ne===0?Q(R,q,B):(Q(R,(le=w[q])+f+1,B),(I=N[le])!==0&&U(R,q-=$[le],I),Q(R,le=W(--ne),se),(I=z[le])!==0&&U(R,ne-=Z[le],I)),M<R.last_lit;);Q(R,k,B)}function Ae(R,B){var se,ne,q,le=B.dyn_tree,I=B.stat_desc.static_tree,M=B.stat_desc.has_stree,J=B.stat_desc.elems,re=-1;for(R.heap_len=0,R.heap_max=g,se=0;se<J;se++)le[2*se]!==0?(R.heap[++R.heap_len]=re=se,R.depth[se]=0):le[2*se+1]=0;for(;R.heap_len<2;)le[2*(q=R.heap[++R.heap_len]=re<2?++re:0)]=1,R.depth[q]=0,R.opt_len--,M&&(R.static_len-=I[2*q+1]);for(B.max_code=re,se=R.heap_len>>1;1<=se;se--)xe(R,le,se);for(q=J;se=R.heap[1],R.heap[1]=R.heap[R.heap_len--],xe(R,le,1),ne=R.heap[1],R.heap[--R.heap_max]=se,R.heap[--R.heap_max]=ne,le[2*q]=le[2*se]+le[2*ne],R.depth[q]=(R.depth[se]>=R.depth[ne]?R.depth[se]:R.depth[ne])+1,le[2*se+1]=le[2*ne+1]=q,R.heap[1]=q++,xe(R,le,1),2<=R.heap_len;);R.heap[--R.heap_max]=R.heap[1],(function(ie,he){var je,Se,ze,Be,zt,ln,mt=he.dyn_tree,nt=he.max_code,Xt=he.stat_desc.static_tree,Jn=he.stat_desc.has_stree,$e=he.stat_desc.extra_bits,ft=he.stat_desc.extra_base,Qe=he.stat_desc.max_length,Bt=0;for(Be=0;Be<=x;Be++)ie.bl_count[Be]=0;for(mt[2*ie.heap[ie.heap_max]+1]=0,je=ie.heap_max+1;je<g;je++)Qe<(Be=mt[2*mt[2*(Se=ie.heap[je])+1]+1]+1)&&(Be=Qe,Bt++),mt[2*Se+1]=Be,nt<Se||(ie.bl_count[Be]++,zt=0,ft<=Se&&(zt=$e[Se-ft]),ln=mt[2*Se],ie.opt_len+=ln*(Be+zt),Jn&&(ie.static_len+=ln*(Xt[2*Se+1]+zt)));if(Bt!==0){do{for(Be=Qe-1;ie.bl_count[Be]===0;)Be--;ie.bl_count[Be]--,ie.bl_count[Be+1]+=2,ie.bl_count[Qe]--,Bt-=2}while(0<Bt);for(Be=Qe;Be!==0;Be--)for(Se=ie.bl_count[Be];Se!==0;)nt<(ze=ie.heap[--je])||(mt[2*ze+1]!==Be&&(ie.opt_len+=(Be-mt[2*ze+1])*mt[2*ze],mt[2*ze+1]=Be),Se--)}})(R,B),oe(le,re,R.bl_count)}function _(R,B,se){var ne,q,le=-1,I=B[1],M=0,J=7,re=4;for(I===0&&(J=138,re=3),B[2*(se+1)+1]=65535,ne=0;ne<=se;ne++)q=I,I=B[2*(ne+1)+1],++M<J&&q===I||(M<re?R.bl_tree[2*q]+=M:q!==0?(q!==le&&R.bl_tree[2*q]++,R.bl_tree[2*j]++):M<=10?R.bl_tree[2*C]++:R.bl_tree[2*T]++,le=q,re=(M=0)===I?(J=138,3):q===I?(J=6,3):(J=7,4))}function X(R,B,se){var ne,q,le=-1,I=B[1],M=0,J=7,re=4;for(I===0&&(J=138,re=3),ne=0;ne<=se;ne++)if(q=I,I=B[2*(ne+1)+1],!(++M<J&&q===I)){if(M<re)for(;Q(R,q,R.bl_tree),--M!=0;);else q!==0?(q!==le&&(Q(R,q,R.bl_tree),M--),Q(R,j,R.bl_tree),U(R,M-3,2)):M<=10?(Q(R,C,R.bl_tree),U(R,M-3,3)):(Q(R,T,R.bl_tree),U(R,M-11,7));le=q,re=(M=0)===I?(J=138,3):q===I?(J=6,3):(J=7,4)}}c(Z);var G=!1;function P(R,B,se,ne){U(R,(u<<1)+(ne?1:0),3),(function(q,le,I,M){ge(q),ce(q,I),ce(q,~I),i.arraySet(q.pending_buf,q.window,le,I,q.pending),q.pending+=I})(R,B,se)}o._tr_init=function(R){G||((function(){var B,se,ne,q,le,I=new Array(x+1);for(q=ne=0;q<d-1;q++)for($[q]=ne,B=0;B<1<<N[q];B++)w[ne++]=q;for(w[ne-1]=q,q=le=0;q<16;q++)for(Z[q]=le,B=0;B<1<<z[q];B++)L[le++]=q;for(le>>=7;q<h;q++)for(Z[q]=le<<7,B=0;B<1<<z[q]-7;B++)L[256+le++]=q;for(se=0;se<=x;se++)I[se]=0;for(B=0;B<=143;)D[2*B+1]=8,B++,I[8]++;for(;B<=255;)D[2*B+1]=9,B++,I[9]++;for(;B<=279;)D[2*B+1]=7,B++,I[7]++;for(;B<=287;)D[2*B+1]=8,B++,I[8]++;for(oe(D,m+1,I),B=0;B<h;B++)E[2*B+1]=5,E[2*B]=Ce(B,5);ee=new ue(D,N,f+1,m,x),F=new ue(E,z,0,h,x),H=new ue(new Array(0),A,0,v,y)})(),G=!0),R.l_desc=new V(R.dyn_ltree,ee),R.d_desc=new V(R.dyn_dtree,F),R.bl_desc=new V(R.bl_tree,H),R.bi_buf=0,R.bi_valid=0,pe(R)},o._tr_stored_block=P,o._tr_flush_block=function(R,B,se,ne){var q,le,I=0;0<R.level?(R.strm.data_type===2&&(R.strm.data_type=(function(M){var J,re=4093624447;for(J=0;J<=31;J++,re>>>=1)if(1&re&&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<f;J++)if(M.dyn_ltree[2*J]!==0)return l;return a})(R)),Ae(R,R.l_desc),Ae(R,R.d_desc),I=(function(M){var J;for(_(M,M.dyn_ltree,M.l_desc.max_code),_(M,M.dyn_dtree,M.d_desc.max_code),Ae(M,M.bl_desc),J=v-1;3<=J&&M.bl_tree[2*O[J]+1]===0;J--);return M.opt_len+=3*(J+1)+5+5+4,J})(R),q=R.opt_len+3+7>>>3,(le=R.static_len+3+7>>>3)<=q&&(q=le)):q=le=se+5,se+4<=q&&B!==-1?P(R,B,se,ne):R.strategy===4||le===q?(U(R,2+(ne?1:0),3),ke(R,D,E)):(U(R,4+(ne?1:0),3),(function(M,J,re,ie){var he;for(U(M,J-257,5),U(M,re-1,5),U(M,ie-4,4),he=0;he<ie;he++)U(M,M.bl_tree[2*O[he]+1],3);X(M,M.dyn_ltree,J-1),X(M,M.dyn_dtree,re-1)})(R,R.l_desc.max_code+1,R.d_desc.max_code+1,I+1),ke(R,R.dyn_ltree,R.dyn_dtree)),pe(R),ne&&ge(R)},o._tr_tally=function(R,B,se){return R.pending_buf[R.d_buf+2*R.last_lit]=B>>>8&255,R.pending_buf[R.d_buf+2*R.last_lit+1]=255&B,R.pending_buf[R.l_buf+R.last_lit]=255&se,R.last_lit++,B===0?R.dyn_ltree[2*se]++:(R.matches++,B--,R.dyn_ltree[2*(w[se]+f+1)]++,R.dyn_dtree[2*W(B)]++),R.last_lit===R.lit_bufsize-1},o._tr_align=function(R){U(R,2,3),Q(R,k,D),(function(B){B.bi_valid===16?(ce(B,B.bi_buf),B.bi_buf=0,B.bi_valid=0):8<=B.bi_valid&&(B.pending_buf[B.pending++]=255&B.bi_buf,B.bi_buf>>=8,B.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,d,f,m=1,h={},v=!1,g=a.document,x=Object.getPrototypeOf&&Object.getPrototypeOf(a);x=x&&x.setTimeout?x:a,c={}.toString.call(a.process)==="[object process]"?function(j){process.nextTick(function(){y(j)})}:(function(){if(a.postMessage&&!a.importScripts){var j=!0,C=a.onmessage;return a.onmessage=function(){j=!1},a.postMessage("","*"),a.onmessage=C,j}})()?(f="setImmediate$"+Math.random()+"$",a.addEventListener?a.addEventListener("message",k,!1):a.attachEvent("onmessage",k),function(j){a.postMessage(f+j,"*")}):a.MessageChannel?((d=new MessageChannel).port1.onmessage=function(j){y(j.data)},function(j){d.port2.postMessage(j)}):g&&"onreadystatechange"in g.createElement("script")?(u=g.documentElement,function(j){var C=g.createElement("script");C.onreadystatechange=function(){y(j),C.onreadystatechange=null,u.removeChild(C),C=null},u.appendChild(C)}):function(j){setTimeout(y,0,j)},x.setImmediate=function(j){typeof j!="function"&&(j=new Function(""+j));for(var C=new Array(arguments.length-1),T=0;T<C.length;T++)C[T]=arguments[T+1];var N={callback:j,args:C};return h[m]=N,c(m),m++},x.clearImmediate=b}function b(j){delete h[j]}function y(j){if(v)setTimeout(y,0,j);else{var C=h[j];if(C){v=!0;try{(function(T){var N=T.callback,z=T.args;switch(z.length){case 0:N();break;case 1:N(z[0]);break;case 2:N(z[0],z[1]);break;case 3:N(z[0],z[1],z[2]);break;default:N.apply(l,z)}})(C)}finally{b(j),v=!1}}}}function k(j){j.source===a&&typeof j.data=="string"&&j.data.indexOf(f)===0&&y(+j.data.slice(f.length))}})(typeof self>"u"?i===void 0?this:i:self)}).call(this,typeof gr<"u"?gr:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(bi)),bi.exports}var c_=l_();const u_=B0(c_),d_="3.0.14",ca={version:d_},Uf="[REDACTED]",f_=/(^|[-_])(api[-_]?key|authorization|cookie|token|secret|password|access[-_]?token|refresh[-_]?token)([-_]|$)/i,p_=[/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],Mc=200,h_=25e6,Wf=50,m_=1e4;function g_(e){return e<1024?`${e} chars`:e<1024*1024?`${Math.ceil(e/1024)} KB`:`${Math.ceil(e/(1024*1024))} MB`}function x_(e){let t=0;for(const n of e)t+=n.rawRequestBody?.length??0,t+=n.responseText?.length??0;return t}function b_(e){if(e.length>Mc)return`Export is limited to ${Mc} logs at once. Narrow the filter and try again.`;const t=x_(e);return t>h_?`Export is too large (${g_(t)} of text). Narrow the filter and try again.`:null}function _r(e){return e?.aborted===!0?{ok:!1,message:"Export canceled.",canceled:!0}:null}async function v_(e,t){try{const n=await Pn(`/api/logs/${e}/chunks`,m_,{signal:t});if(!n.ok)return null;const s=await n.json();return JSON.stringify(s,null,2)}catch{return null}}function y_(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ua(e){if(Array.isArray(e))return e.map(n=>ua(n));if(!y_(e))return e;const t={};for(const[n,s]of Object.entries(e))t[n]=f_.test(n)?Uf:ua(s);return t}function w_(e){const t=n=>{let s=n;for(const o of p_)s=s.replace(o,Uf);return s};try{const n=JSON.parse(e);return t(JSON.stringify(ua(n),null,2))}catch{return t(e)}}function vi(e,t){return t==="redacted"?w_(e):e}function __(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 k_(e,t,n,s=new Date().toISOString()){return{version:ca.version,exportedAt:s,mode:t,redacted:t==="redacted",logCount:e.length,logIds:e.map(o=>o.id),streamingChunkExportLimit:Wf,streamingChunkLogIds:n.map(o=>o.id)}}async function j_(e,t="redacted",n={}){const s=_r(n.signal);if(s!==null)return s;const o=b_(e);if(o!==null)return{ok:!1,message:o};const i=new u_,a=t==="redacted"?"redacted":"raw",l=e.filter(m=>m.streaming).slice(0,Wf);i.file("manifest.json",JSON.stringify(k_(e,t,l),null,2)),i.file("logs.json",JSON.stringify(e.map(m=>__(m,t)),null,2));for(const m of e){const h=_r(n.signal);if(h!==null)return h;m.rawRequestBody!==null&&i.file(`#${m.id}.Request.json`,vi(m.rawRequestBody,t)),m.responseText!==null&&i.file(`#${m.id}.Response.json`,vi(m.responseText,t))}for(const m of l){const h=_r(n.signal);if(h!==null)return h;const v=await v_(m.id,n.signal);v!==null&&i.file(`#${m.id}.SSE.Response.json`,vi(v,t))}const c=await i.generateAsync({type:"blob"}),u=_r(n.signal);if(u!==null)return u;const d=URL.createObjectURL(c),f=document.createElement("a");return f.href=d,f.download=`agent-inspector-export-${a}-${new Date().toISOString().slice(0,10)}.zip`,document.body.appendChild(f),f.click(),document.body.removeChild(f),URL.revokeObjectURL(d),{ok:!0}}function S_(e,t){if(e!==null){e.removeAllRanges();for(const n of t)e.addRange(n)}}function C_(e){if(e===null)return[];const t=[];for(let n=0;n<e.rangeCount;n++)t.push(e.getRangeAt(n));return t}function N_(e){if(typeof document>"u")return!1;const t=document.activeElement,n=document.getSelection(),s=C_(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),S_(n,s),typeof HTMLElement<"u"&&t instanceof HTMLElement&&t.focus({preventScroll:!0})}return i}async function Ct(e){const t=globalThis.navigator?.clipboard;if(t!==void 0)try{return await t.writeText(e),!0}catch{}return N_(e)}function da(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 yl(e,t,n){return`${da(e,n)} - ${da(t,n)}`}function kr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function T_(e){switch(e){case"end_turn":case"tool_use":return e;case"max_tokens":return"length";default:return null}}function E_(e){switch(e){case"stop":case"length":return e;case"max_tokens":return"length";default:return null}}function A_(e){switch(e){case"max_output_tokens":case"max_tokens":return!0;default:return!1}}function Hf(e){if(e.responseText===null)return null;try{let t=JSON.parse(e.responseText);if(typeof t=="string"&&(t=JSON.parse(t)),!kr(t))return null;if(typeof t.stop_reason=="string")return T_(t.stop_reason);if(Array.isArray(t.choices))for(const n of t.choices){if(!kr(n)||typeof n.finish_reason!="string")continue;const s=E_(n.finish_reason);if(s!==null)return s}if(Array.isArray(t.output)){for(const n of t.output)if(kr(n)&&n.type==="function_call")return"tool_use";if(t.status==="completed")return"stop"}if(t.status==="incomplete"&&kr(t.incomplete_details)){const n=t.incomplete_details.reason;if(typeof n=="string"&&A_(n))return"length"}return null}catch{return null}}function wl(e){return e==="end_turn"||e==="stop"||e==="length"}function Vf(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=Vf(e[t]))&&(s&&(s+=" "),s+=n)}else for(n in e)e[n]&&(s&&(s+=" "),s+=n);return s}function qf(){for(var e,t,n=0,s="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=Vf(e))&&(s&&(s+=" "),s+=t);return s}const R_=(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},I_=(e,t)=>({classGroupId:e,validator:t}),Zf=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),uo="-",Lc=[],z_="arbitrary..",O_=e=>{const t=M_(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:s}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return P_(a);const l=a.split(uo),c=l[0]===""&&l.length>1?1:0;return Gf(l,c,t)},getConflictingClassGroupIds:(a,l)=>{if(l){const c=s[a],u=n[a];return c?u?R_(u,c):c:u||Lc}return n[a]||Lc}}},Gf=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const o=e[t],i=n.nextPart.get(o);if(i){const u=Gf(e,t+1,i);if(u)return u}const a=n.validators;if(a===null)return;const l=t===0?e.join(uo):e.slice(t).join(uo),c=a.length;for(let u=0;u<c;u++){const d=a[u];if(d.validator(l))return d.classGroupId}},P_=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?z_+s:void 0})(),M_=e=>{const{theme:t,classGroups:n}=e;return L_(n,t)},L_=(e,t)=>{const n=Zf();for(const s in e){const o=e[s];_l(o,n,s,t)}return n},_l=(e,t,n,s)=>{const o=e.length;for(let i=0;i<o;i++){const a=e[i];D_(a,t,n,s)}},D_=(e,t,n,s)=>{if(typeof e=="string"){$_(e,t,n);return}if(typeof e=="function"){F_(e,t,n,s);return}B_(e,t,n,s)},$_=(e,t,n)=>{const s=e===""?t:Kf(t,e);s.classGroupId=n},F_=(e,t,n,s)=>{if(U_(e)){_l(e(s),t,n,s);return}t.validators===null&&(t.validators=[]),t.validators.push(I_(n,e))},B_=(e,t,n,s)=>{const o=Object.entries(e),i=o.length;for(let a=0;a<i;a++){const[l,c]=o[a];_l(c,Kf(t,l),n,s)}},Kf=(e,t)=>{let n=e;const s=t.split(uo),o=s.length;for(let i=0;i<o;i++){const a=s[i];let l=n.nextPart.get(a);l||(l=Zf(),n.nextPart.set(a,l)),n=l}return n},U_=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,W_=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)}}},fa="!",Dc=":",H_=[],$c=(e,t,n,s,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:s,isExternal:o}),V_=e=>{const{prefix:t,experimentalParseClassName:n}=e;let s=o=>{const i=[];let a=0,l=0,c=0,u;const d=o.length;for(let g=0;g<d;g++){const x=o[g];if(a===0&&l===0){if(x===Dc){i.push(o.slice(c,g)),c=g+1;continue}if(x==="/"){u=g;continue}}x==="["?a++:x==="]"?a--:x==="("?l++:x===")"&&l--}const f=i.length===0?o:o.slice(c);let m=f,h=!1;f.endsWith(fa)?(m=f.slice(0,-1),h=!0):f.startsWith(fa)&&(m=f.slice(1),h=!0);const v=u&&u>c?u-c:void 0;return $c(i,h,m,v)};if(t){const o=t+Dc,i=s;s=a=>a.startsWith(o)?i(a.slice(o.length)):$c(H_,!1,a,void 0,!0)}if(n){const o=s;s=i=>n({className:i,parseClassName:o})}return s},q_=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}},Z_=e=>({cache:W_(e.cacheSize),parseClassName:V_(e),sortModifiers:q_(e),...O_(e)}),G_=/\s+/,K_=(e,t)=>{const{parseClassName:n,getClassGroupId:s,getConflictingClassGroupIds:o,sortModifiers:i}=t,a=[],l=e.trim().split(G_);let c="";for(let u=l.length-1;u>=0;u-=1){const d=l[u],{isExternal:f,modifiers:m,hasImportantModifier:h,baseClassName:v,maybePostfixModifierPosition:g}=n(d);if(f){c=d+(c.length>0?" "+c:c);continue}let x=!!g,b=s(x?v.substring(0,g):v);if(!b){if(!x){c=d+(c.length>0?" "+c:c);continue}if(b=s(v),!b){c=d+(c.length>0?" "+c:c);continue}x=!1}const y=m.length===0?"":m.length===1?m[0]:i(m).join(":"),k=h?y+fa:y,j=k+b;if(a.indexOf(j)>-1)continue;a.push(j);const C=o(b,x);for(let T=0;T<C.length;++T){const N=C[T];a.push(k+N)}c=d+(c.length>0?" "+c:c)}return c},J_=(...e)=>{let t=0,n,s,o="";for(;t<e.length;)(n=e[t++])&&(s=Jf(n))&&(o&&(o+=" "),o+=s);return o},Jf=e=>{if(typeof e=="string")return e;let t,n="";for(let s=0;s<e.length;s++)e[s]&&(t=Jf(e[s]))&&(n&&(n+=" "),n+=t);return n},Y_=(e,...t)=>{let n,s,o,i;const a=c=>{const u=t.reduce((d,f)=>f(d),e());return n=Z_(u),s=n.cache.get,o=n.cache.set,i=l,l(c)},l=c=>{const u=s(c);if(u)return u;const d=K_(c,n);return o(c,d),d};return i=a,(...c)=>i(J_(...c))},X_=[],Ye=e=>{const t=n=>n[e]||X_;return t.isThemeGetter=!0,t},Yf=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Xf=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Q_=/^\d+\/\d+$/,e5=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,t5=/\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$/,n5=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,s5=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,r5=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Yn=e=>Q_.test(e),Ie=e=>!!e&&!Number.isNaN(Number(e)),cn=e=>!!e&&Number.isInteger(Number(e)),yi=e=>e.endsWith("%")&&Ie(e.slice(0,-1)),Qt=e=>e5.test(e),o5=()=>!0,i5=e=>t5.test(e)&&!n5.test(e),Qf=()=>!1,a5=e=>s5.test(e),l5=e=>r5.test(e),c5=e=>!be(e)&&!ve(e),u5=e=>Ns(e,np,Qf),be=e=>Yf.test(e),En=e=>Ns(e,sp,i5),wi=e=>Ns(e,m5,Ie),Fc=e=>Ns(e,ep,Qf),d5=e=>Ns(e,tp,l5),jr=e=>Ns(e,rp,a5),ve=e=>Xf.test(e),zs=e=>Ts(e,sp),f5=e=>Ts(e,g5),Bc=e=>Ts(e,ep),p5=e=>Ts(e,np),h5=e=>Ts(e,tp),Sr=e=>Ts(e,rp,!0),Ns=(e,t,n)=>{const s=Yf.exec(e);return s?s[1]?t(s[1]):n(s[2]):!1},Ts=(e,t,n=!1)=>{const s=Xf.exec(e);return s?s[1]?t(s[1]):n:!1},ep=e=>e==="position"||e==="percentage",tp=e=>e==="image"||e==="url",np=e=>e==="length"||e==="size"||e==="bg-size",sp=e=>e==="length",m5=e=>e==="number",g5=e=>e==="family-name",rp=e=>e==="shadow",x5=()=>{const e=Ye("color"),t=Ye("font"),n=Ye("text"),s=Ye("font-weight"),o=Ye("tracking"),i=Ye("leading"),a=Ye("breakpoint"),l=Ye("container"),c=Ye("spacing"),u=Ye("radius"),d=Ye("shadow"),f=Ye("inset-shadow"),m=Ye("text-shadow"),h=Ye("drop-shadow"),v=Ye("blur"),g=Ye("perspective"),x=Ye("aspect"),b=Ye("ease"),y=Ye("animate"),k=()=>["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"],C=()=>[...j(),ve,be],T=()=>["auto","hidden","clip","visible","scroll"],N=()=>["auto","contain","none"],z=()=>[ve,be,c],A=()=>[Yn,"full","auto",...z()],O=()=>[cn,"none","subgrid",ve,be],D=()=>["auto",{span:["full",cn,ve,be]},cn,ve,be],E=()=>[cn,"auto",ve,be],L=()=>["auto","min","max","fr",ve,be],w=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],$=()=>["start","end","center","stretch","center-safe","end-safe"],ee=()=>["auto",...z()],F=()=>[Yn,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...z()],H=()=>[e,ve,be],Z=()=>[...j(),Bc,Fc,{position:[ve,be]}],ue=()=>["no-repeat",{repeat:["","x","y","space","round"]}],V=()=>["auto","cover","contain",p5,u5,{size:[ve,be]}],W=()=>[yi,zs,En],ce=()=>["","none","full",u,ve,be],U=()=>["",Ie,zs,En],Q=()=>["solid","dashed","dotted","double"],Ce=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],oe=()=>[Ie,yi,Bc,Fc],pe=()=>["","none",v,ve,be],ge=()=>["none",Ie,ve,be],me=()=>["none",Ie,ve,be],xe=()=>[Ie,ve,be],ke=()=>[Yn,"full",...z()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Qt],breakpoint:[Qt],color:[o5],container:[Qt],"drop-shadow":[Qt],ease:["in","out","in-out"],font:[c5],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Qt],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Qt],shadow:[Qt],spacing:["px",Ie],text:[Qt],"text-shadow":[Qt],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Yn,be,ve,x]}],container:["container"],columns:[{columns:[Ie,be,ve,l]}],"break-after":[{"break-after":k()}],"break-before":[{"break-before":k()}],"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:C()}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:N()}],"overscroll-x":[{"overscroll-x":N()}],"overscroll-y":[{"overscroll-y":N()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:A()}],"inset-x":[{"inset-x":A()}],"inset-y":[{"inset-y":A()}],start:[{start:A()}],end:[{end:A()}],top:[{top:A()}],right:[{right:A()}],bottom:[{bottom:A()}],left:[{left:A()}],visibility:["visible","invisible","collapse"],z:[{z:[cn,"auto",ve,be]}],basis:[{basis:[Yn,"full","auto",l,...z()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ie,Yn,"auto","initial","none",be]}],grow:[{grow:["",Ie,ve,be]}],shrink:[{shrink:["",Ie,ve,be]}],order:[{order:[cn,"first","last","none",ve,be]}],"grid-cols":[{"grid-cols":O()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":O()}],"row-start-end":[{row:D()}],"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":L()}],"auto-rows":[{"auto-rows":L()}],gap:[{gap:z()}],"gap-x":[{"gap-x":z()}],"gap-y":[{"gap-y":z()}],"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:z()}],px:[{px:z()}],py:[{py:z()}],ps:[{ps:z()}],pe:[{pe:z()}],pt:[{pt:z()}],pr:[{pr:z()}],pb:[{pb:z()}],pl:[{pl:z()}],m:[{m:ee()}],mx:[{mx:ee()}],my:[{my:ee()}],ms:[{ms:ee()}],me:[{me:ee()}],mt:[{mt:ee()}],mr:[{mr:ee()}],mb:[{mb:ee()}],ml:[{ml:ee()}],"space-x":[{"space-x":z()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":z()}],"space-y-reverse":["space-y-reverse"],size:[{size:F()}],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,zs,En]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,ve,wi]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",yi,be]}],"font-family":[{font:[f5,be,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,ve,be]}],"line-clamp":[{"line-clamp":[Ie,"none",ve,wi]}],leading:[{leading:[i,...z()]}],"list-image":[{"list-image":["none",ve,be]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ve,be]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:H()}],"text-color":[{text:H()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Q(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ie,"from-font","auto",ve,En]}],"text-decoration-color":[{decoration:H()}],"underline-offset":[{"underline-offset":[Ie,"auto",ve,be]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:z()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ve,be]}],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",ve,be]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Z()}],"bg-repeat":[{bg:ue()}],"bg-size":[{bg:V()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},cn,ve,be],radial:["",ve,be],conic:[cn,ve,be]},h5,d5]}],"bg-color":[{bg:H()}],"gradient-from-pos":[{from:W()}],"gradient-via-pos":[{via:W()}],"gradient-to-pos":[{to:W()}],"gradient-from":[{from:H()}],"gradient-via":[{via:H()}],"gradient-to":[{to:H()}],rounded:[{rounded:ce()}],"rounded-s":[{"rounded-s":ce()}],"rounded-e":[{"rounded-e":ce()}],"rounded-t":[{"rounded-t":ce()}],"rounded-r":[{"rounded-r":ce()}],"rounded-b":[{"rounded-b":ce()}],"rounded-l":[{"rounded-l":ce()}],"rounded-ss":[{"rounded-ss":ce()}],"rounded-se":[{"rounded-se":ce()}],"rounded-ee":[{"rounded-ee":ce()}],"rounded-es":[{"rounded-es":ce()}],"rounded-tl":[{"rounded-tl":ce()}],"rounded-tr":[{"rounded-tr":ce()}],"rounded-br":[{"rounded-br":ce()}],"rounded-bl":[{"rounded-bl":ce()}],"border-w":[{border:U()}],"border-w-x":[{"border-x":U()}],"border-w-y":[{"border-y":U()}],"border-w-s":[{"border-s":U()}],"border-w-e":[{"border-e":U()}],"border-w-t":[{"border-t":U()}],"border-w-r":[{"border-r":U()}],"border-w-b":[{"border-b":U()}],"border-w-l":[{"border-l":U()}],"divide-x":[{"divide-x":U()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":U()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Q(),"hidden","none"]}],"divide-style":[{divide:[...Q(),"hidden","none"]}],"border-color":[{border:H()}],"border-color-x":[{"border-x":H()}],"border-color-y":[{"border-y":H()}],"border-color-s":[{"border-s":H()}],"border-color-e":[{"border-e":H()}],"border-color-t":[{"border-t":H()}],"border-color-r":[{"border-r":H()}],"border-color-b":[{"border-b":H()}],"border-color-l":[{"border-l":H()}],"divide-color":[{divide:H()}],"outline-style":[{outline:[...Q(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ie,ve,be]}],"outline-w":[{outline:["",Ie,zs,En]}],"outline-color":[{outline:H()}],shadow:[{shadow:["","none",d,Sr,jr]}],"shadow-color":[{shadow:H()}],"inset-shadow":[{"inset-shadow":["none",f,Sr,jr]}],"inset-shadow-color":[{"inset-shadow":H()}],"ring-w":[{ring:U()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:H()}],"ring-offset-w":[{"ring-offset":[Ie,En]}],"ring-offset-color":[{"ring-offset":H()}],"inset-ring-w":[{"inset-ring":U()}],"inset-ring-color":[{"inset-ring":H()}],"text-shadow":[{"text-shadow":["none",m,Sr,jr]}],"text-shadow-color":[{"text-shadow":H()}],opacity:[{opacity:[Ie,ve,be]}],"mix-blend":[{"mix-blend":[...Ce(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Ce()}],"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":[Ie]}],"mask-image-linear-from-pos":[{"mask-linear-from":oe()}],"mask-image-linear-to-pos":[{"mask-linear-to":oe()}],"mask-image-linear-from-color":[{"mask-linear-from":H()}],"mask-image-linear-to-color":[{"mask-linear-to":H()}],"mask-image-t-from-pos":[{"mask-t-from":oe()}],"mask-image-t-to-pos":[{"mask-t-to":oe()}],"mask-image-t-from-color":[{"mask-t-from":H()}],"mask-image-t-to-color":[{"mask-t-to":H()}],"mask-image-r-from-pos":[{"mask-r-from":oe()}],"mask-image-r-to-pos":[{"mask-r-to":oe()}],"mask-image-r-from-color":[{"mask-r-from":H()}],"mask-image-r-to-color":[{"mask-r-to":H()}],"mask-image-b-from-pos":[{"mask-b-from":oe()}],"mask-image-b-to-pos":[{"mask-b-to":oe()}],"mask-image-b-from-color":[{"mask-b-from":H()}],"mask-image-b-to-color":[{"mask-b-to":H()}],"mask-image-l-from-pos":[{"mask-l-from":oe()}],"mask-image-l-to-pos":[{"mask-l-to":oe()}],"mask-image-l-from-color":[{"mask-l-from":H()}],"mask-image-l-to-color":[{"mask-l-to":H()}],"mask-image-x-from-pos":[{"mask-x-from":oe()}],"mask-image-x-to-pos":[{"mask-x-to":oe()}],"mask-image-x-from-color":[{"mask-x-from":H()}],"mask-image-x-to-color":[{"mask-x-to":H()}],"mask-image-y-from-pos":[{"mask-y-from":oe()}],"mask-image-y-to-pos":[{"mask-y-to":oe()}],"mask-image-y-from-color":[{"mask-y-from":H()}],"mask-image-y-to-color":[{"mask-y-to":H()}],"mask-image-radial":[{"mask-radial":[ve,be]}],"mask-image-radial-from-pos":[{"mask-radial-from":oe()}],"mask-image-radial-to-pos":[{"mask-radial-to":oe()}],"mask-image-radial-from-color":[{"mask-radial-from":H()}],"mask-image-radial-to-color":[{"mask-radial-to":H()}],"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":[Ie]}],"mask-image-conic-from-pos":[{"mask-conic-from":oe()}],"mask-image-conic-to-pos":[{"mask-conic-to":oe()}],"mask-image-conic-from-color":[{"mask-conic-from":H()}],"mask-image-conic-to-color":[{"mask-conic-to":H()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Z()}],"mask-repeat":[{mask:ue()}],"mask-size":[{mask:V()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ve,be]}],filter:[{filter:["","none",ve,be]}],blur:[{blur:pe()}],brightness:[{brightness:[Ie,ve,be]}],contrast:[{contrast:[Ie,ve,be]}],"drop-shadow":[{"drop-shadow":["","none",h,Sr,jr]}],"drop-shadow-color":[{"drop-shadow":H()}],grayscale:[{grayscale:["",Ie,ve,be]}],"hue-rotate":[{"hue-rotate":[Ie,ve,be]}],invert:[{invert:["",Ie,ve,be]}],saturate:[{saturate:[Ie,ve,be]}],sepia:[{sepia:["",Ie,ve,be]}],"backdrop-filter":[{"backdrop-filter":["","none",ve,be]}],"backdrop-blur":[{"backdrop-blur":pe()}],"backdrop-brightness":[{"backdrop-brightness":[Ie,ve,be]}],"backdrop-contrast":[{"backdrop-contrast":[Ie,ve,be]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ie,ve,be]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ie,ve,be]}],"backdrop-invert":[{"backdrop-invert":["",Ie,ve,be]}],"backdrop-opacity":[{"backdrop-opacity":[Ie,ve,be]}],"backdrop-saturate":[{"backdrop-saturate":[Ie,ve,be]}],"backdrop-sepia":[{"backdrop-sepia":["",Ie,ve,be]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":z()}],"border-spacing-x":[{"border-spacing-x":z()}],"border-spacing-y":[{"border-spacing-y":z()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ve,be]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ie,"initial",ve,be]}],ease:[{ease:["linear","initial",b,ve,be]}],delay:[{delay:[Ie,ve,be]}],animate:[{animate:["none",y,ve,be]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,ve,be]}],"perspective-origin":[{"perspective-origin":C()}],rotate:[{rotate:ge()}],"rotate-x":[{"rotate-x":ge()}],"rotate-y":[{"rotate-y":ge()}],"rotate-z":[{"rotate-z":ge()}],scale:[{scale:me()}],"scale-x":[{"scale-x":me()}],"scale-y":[{"scale-y":me()}],"scale-z":[{"scale-z":me()}],"scale-3d":["scale-3d"],skew:[{skew:xe()}],"skew-x":[{"skew-x":xe()}],"skew-y":[{"skew-y":xe()}],transform:[{transform:[ve,be,"","none","gpu","cpu"]}],"transform-origin":[{origin:C()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ke()}],"translate-x":[{"translate-x":ke()}],"translate-y":[{"translate-y":ke()}],"translate-z":[{"translate-z":ke()}],"translate-none":["translate-none"],accent:[{accent:H()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:H()}],"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",ve,be]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":z()}],"scroll-mx":[{"scroll-mx":z()}],"scroll-my":[{"scroll-my":z()}],"scroll-ms":[{"scroll-ms":z()}],"scroll-me":[{"scroll-me":z()}],"scroll-mt":[{"scroll-mt":z()}],"scroll-mr":[{"scroll-mr":z()}],"scroll-mb":[{"scroll-mb":z()}],"scroll-ml":[{"scroll-ml":z()}],"scroll-p":[{"scroll-p":z()}],"scroll-px":[{"scroll-px":z()}],"scroll-py":[{"scroll-py":z()}],"scroll-ps":[{"scroll-ps":z()}],"scroll-pe":[{"scroll-pe":z()}],"scroll-pt":[{"scroll-pt":z()}],"scroll-pr":[{"scroll-pr":z()}],"scroll-pb":[{"scroll-pb":z()}],"scroll-pl":[{"scroll-pl":z()}],"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",ve,be]}],fill:[{fill:["none",...H()]}],"stroke-w":[{stroke:[Ie,zs,En,wi]}],stroke:[{stroke:["none",...H()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},b5=Y_(x5);function ae(...e){return b5(qf(e))}function Fe(e){return e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":(e/1e3).toFixed(1).replace(/\.0$/,"")+"K"}function op(e){return e>=1024*1024?(e/(1024*1024)).toFixed(1).replace(/\.0$/,"")+"M":(e/1024).toFixed(1).replace(/\.0$/,"")+"K"}function Uc(e,t,n){const s=e*10;return!Number.isSafeInteger(s)||s%t!==0?null:(s/t/10).toFixed(1).replace(/\.0$/,"")+n}function v5(e){if(!Number.isSafeInteger(e)||e<=0)return e.toString();if(e>=1024*1024){const n=Uc(e,1048576,"M");if(n!==null)return n}const t=Uc(e,1024,"K");return t!==null?t:e.toString()}function y5(e){if(e===void 0||e==="")return 1;switch(e.toLowerCase()){case"k":return 1024;case"m":return 1024*1024;default:return null}}function fo(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=y5(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 w5(e){return e===null?"pending":e>=200&&e<300?"success":e>=400&&e<500?"client_error":e>=500?"server_error":"pending"}const _5=Y({model:S().min(1),contextWindow:K().int().positive().optional(),outputLimit:K().int().positive().optional(),source:Ee(["manual","registry"]).optional(),sourceUrl:S().optional(),updatedAt:S().optional()}),po=Y({id:S(),name:S(),apiKey:S(),model:S().optional(),models:fe(S()).min(1),format:Ee(["anthropic","openai"]).optional(),baseUrl:S().optional(),anthropicBaseUrl:S().optional(),openaiBaseUrl:S().optional(),openaiResponsesBaseUrl:S().optional(),authHeader:Ee(["bearer","x-api-key"]).optional().default("bearer"),apiDocsUrl:S().optional(),modelMetadataUrl:S().optional(),modelMetadata:fe(_5).optional(),source:Ee(["company","personal"]).optional(),createdAt:S(),updatedAt:S()});async function k5(e){return _t(e,po.array(),void 0,t=>`Failed to fetch ${e}: ${t.status}`)}function ip(){const e=Vt("/api/providers?includeSecrets=1",k5,{revalidateOnFocus:!1,revalidateIfStale:!1});return{providers:e.data??[],isLoading:e.isLoading,isError:e.error,mutate:e.mutate}}function Ne(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e?.(o),n===!1||!o.defaultPrevented)return t?.(o)}}function Wc(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function ap(...e){return t=>{let n=!1;const s=e.map(o=>{const i=Wc(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():Wc(e[o],null)}}}}function De(...e){return p.useCallback(ap(...e),e)}function j5(e,t){const n=p.createContext(t),s=i=>{const{children:a,...l}=i,c=p.useMemo(()=>l,Object.values(l));return r.jsx(n.Provider,{value:c,children:a})};s.displayName=e+"Provider";function o(i){const a=p.useContext(n);if(a)return a;if(t!==void 0)return t;throw new Error(`\`${i}\` must be used within \`${e}\``)}return[s,o]}function an(e,t=[]){let n=[];function s(i,a){const l=p.createContext(a),c=n.length;n=[...n,a];const u=f=>{const{scope:m,children:h,...v}=f,g=m?.[e]?.[c]||l,x=p.useMemo(()=>v,Object.values(v));return r.jsx(g.Provider,{value:x,children:h})};u.displayName=i+"Provider";function d(f,m){const h=m?.[e]?.[c]||l,v=p.useContext(h);if(v)return v;if(a!==void 0)return a;throw new Error(`\`${f}\` must be used within \`${i}\``)}return[u,d]}const o=()=>{const i=n.map(a=>p.createContext(a));return function(l){const c=l?.[e]||i;return p.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return o.scopeName=e,[s,S5(o,...t)]}function S5(...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 f=c(i)[`__scope${u}`];return{...l,...f}},{});return p.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}var et=globalThis?.document?p.useLayoutEffect:()=>{},C5=Nd[" useId ".trim().toString()]||(()=>{}),N5=0;function qt(e){const[t,n]=p.useState(C5());return et(()=>{n(s=>s??String(N5++))},[e]),e||(t?`radix-${t}`:"")}var T5=Nd[" useInsertionEffect ".trim().toString()]||et;function Ln({prop:e,defaultProp:t,onChange:n=()=>{},caller:s}){const[o,i,a]=E5({defaultProp:t,onChange:n}),l=e!==void 0,c=l?e:o;{const d=p.useRef(e!==void 0);p.useEffect(()=>{const f=d.current;f!==l&&console.warn(`${s} is changing from ${f?"controlled":"uncontrolled"} to ${l?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=l},[l,s])}const u=p.useCallback(d=>{if(l){const f=A5(d)?d(e):d;f!==e&&a.current?.(f)}else i(d)},[l,e,i,a]);return[c,u]}function E5({defaultProp:e,onChange:t}){const[n,s]=p.useState(e),o=p.useRef(n),i=p.useRef(t);return T5(()=>{i.current=t},[t]),p.useEffect(()=>{o.current!==n&&(i.current?.(n),o.current=n)},[n,o]),[n,s,i]}function A5(e){return typeof e=="function"}function ys(e){const t=I5(e),n=p.forwardRef((s,o)=>{const{children:i,...a}=s,l=p.Children.toArray(i),c=l.find(O5);if(c){const u=c.props.children,d=l.map(f=>f===c?p.Children.count(u)>1?p.Children.only(null):p.isValidElement(u)?u.props.children:null:f);return r.jsx(t,{...a,ref:o,children:p.isValidElement(u)?p.cloneElement(u,void 0,d):null})}return r.jsx(t,{...a,ref:o,children:i})});return n.displayName=`${e}.Slot`,n}var R5=ys("Slot");function I5(e){const t=p.forwardRef((n,s)=>{const{children:o,...i}=n;if(p.isValidElement(o)){const a=M5(o),l=P5(i,o.props);return o.type!==p.Fragment&&(l.ref=s?ap(s,a):a),p.cloneElement(o,l)}return p.Children.count(o)>1?p.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var lp=Symbol("radix.slottable");function z5(e){const t=({children:n})=>r.jsx(r.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=lp,t}function O5(e){return p.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===lp}function P5(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 M5(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 L5=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Re=L5.reduce((e,t)=>{const n=ys(`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 D5(e,t){e&&or.flushSync(()=>e.dispatchEvent(t))}function dt(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>(...n)=>t.current?.(...n),[])}function $5(e,t=globalThis?.document){const n=dt(e);p.useEffect(()=>{const s=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",s,{capture:!0}),()=>t.removeEventListener("keydown",s,{capture:!0})},[n,t])}var F5="DismissableLayer",pa="dismissableLayer.update",B5="dismissableLayer.pointerDownOutside",U5="dismissableLayer.focusOutside",Hc,cp=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Wo=p.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:s,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:a,onDismiss:l,...c}=e,u=p.useContext(cp),[d,f]=p.useState(null),m=d?.ownerDocument??globalThis?.document,[,h]=p.useState({}),v=De(t,N=>f(N)),g=Array.from(u.layers),[x]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),b=g.indexOf(x),y=d?g.indexOf(d):-1,k=u.layersWithOutsidePointerEventsDisabled.size>0,j=y>=b,C=V5(N=>{const z=N.target,A=[...u.branches].some(O=>O.contains(z));!j||A||(o?.(N),a?.(N),N.defaultPrevented||l?.())},m),T=q5(N=>{const z=N.target;[...u.branches].some(O=>O.contains(z))||(i?.(N),a?.(N),N.defaultPrevented||l?.())},m);return $5(N=>{y===u.layers.size-1&&(s?.(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},m),p.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Hc=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),Vc(),()=>{n&&u.layersWithOutsidePointerEventsDisabled.size===1&&(m.body.style.pointerEvents=Hc)}},[d,m,n,u]),p.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),Vc())},[d,u]),p.useEffect(()=>{const N=()=>h({});return document.addEventListener(pa,N),()=>document.removeEventListener(pa,N)},[]),r.jsx(Re.div,{...c,ref:v,style:{pointerEvents:k?j?"auto":"none":void 0,...e.style},onFocusCapture:Ne(e.onFocusCapture,T.onFocusCapture),onBlurCapture:Ne(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:Ne(e.onPointerDownCapture,C.onPointerDownCapture)})});Wo.displayName=F5;var W5="DismissableLayerBranch",H5=p.forwardRef((e,t)=>{const n=p.useContext(cp),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(Re.div,{...e,ref:o})});H5.displayName=W5;function V5(e,t=globalThis?.document){const n=dt(e),s=p.useRef(!1),o=p.useRef(()=>{});return p.useEffect(()=>{const i=l=>{if(l.target&&!s.current){let c=function(){up(B5,n,u,{discrete:!0})};const u={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);s.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>s.current=!0}}function q5(e,t=globalThis?.document){const n=dt(e),s=p.useRef(!1);return p.useEffect(()=>{const o=i=>{i.target&&!s.current&&up(U5,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 Vc(){const e=new CustomEvent(pa);document.dispatchEvent(e)}function up(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?D5(o,i):o.dispatchEvent(i)}var _i="focusScope.autoFocusOnMount",ki="focusScope.autoFocusOnUnmount",qc={bubbles:!1,cancelable:!0},Z5="FocusScope",kl=p.forwardRef((e,t)=>{const{loop:n=!1,trapped:s=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[l,c]=p.useState(null),u=dt(o),d=dt(i),f=p.useRef(null),m=De(t,g=>c(g)),h=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(s){let g=function(k){if(h.paused||!l)return;const j=k.target;l.contains(j)?f.current=j:hn(f.current,{select:!0})},x=function(k){if(h.paused||!l)return;const j=k.relatedTarget;j!==null&&(l.contains(j)||hn(f.current,{select:!0}))},b=function(k){if(document.activeElement===document.body)for(const C of k)C.removedNodes.length>0&&hn(l)};document.addEventListener("focusin",g),document.addEventListener("focusout",x);const y=new MutationObserver(b);return l&&y.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",g),document.removeEventListener("focusout",x),y.disconnect()}}},[s,l,h.paused]),p.useEffect(()=>{if(l){Gc.add(h);const g=document.activeElement;if(!l.contains(g)){const b=new CustomEvent(_i,qc);l.addEventListener(_i,u),l.dispatchEvent(b),b.defaultPrevented||(G5(Q5(dp(l)),{select:!0}),document.activeElement===g&&hn(l))}return()=>{l.removeEventListener(_i,u),setTimeout(()=>{const b=new CustomEvent(ki,qc);l.addEventListener(ki,d),l.dispatchEvent(b),b.defaultPrevented||hn(g??document.body,{select:!0}),l.removeEventListener(ki,d),Gc.remove(h)},0)}}},[l,u,d,h]);const v=p.useCallback(g=>{if(!n&&!s||h.paused)return;const x=g.key==="Tab"&&!g.altKey&&!g.ctrlKey&&!g.metaKey,b=document.activeElement;if(x&&b){const y=g.currentTarget,[k,j]=K5(y);k&&j?!g.shiftKey&&b===j?(g.preventDefault(),n&&hn(k,{select:!0})):g.shiftKey&&b===k&&(g.preventDefault(),n&&hn(j,{select:!0})):b===y&&g.preventDefault()}},[n,s,h.paused]);return r.jsx(Re.div,{tabIndex:-1,...a,ref:m,onKeyDown:v})});kl.displayName=Z5;function G5(e,{select:t=!1}={}){const n=document.activeElement;for(const s of e)if(hn(s,{select:t}),document.activeElement!==n)return}function K5(e){const t=dp(e),n=Zc(t,e),s=Zc(t.reverse(),e);return[n,s]}function dp(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 Zc(e,t){for(const n of e)if(!J5(n,{upTo:t}))return n}function J5(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 Y5(e){return e instanceof HTMLInputElement&&"select"in e}function hn(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Y5(e)&&t&&e.select()}}var Gc=X5();function X5(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=Kc(e,t),e.unshift(t)},remove(t){e=Kc(e,t),e[0]?.resume()}}}function Kc(e,t){const n=[...e],s=n.indexOf(t);return s!==-1&&n.splice(s,1),n}function Q5(e){return e.filter(t=>t.tagName!=="A")}var ek="Portal",Ho=p.forwardRef((e,t)=>{const{container:n,...s}=e,[o,i]=p.useState(!1);et(()=>i(!0),[]);const a=n||o&&globalThis?.document?.body;return a?U0.createPortal(r.jsx(Re.div,{...s,ref:t}),a):null});Ho.displayName=ek;function tk(e,t){return p.useReducer((n,s)=>t[n][s]??n,e)}var At=e=>{const{present:t,children:n}=e,s=nk(t),o=typeof n=="function"?n({present:s.isPresent}):p.Children.only(n),i=De(s.ref,sk(o));return typeof n=="function"||s.isPresent?p.cloneElement(o,{ref:i}):null};At.displayName="Presence";function nk(e){const[t,n]=p.useState(),s=p.useRef(null),o=p.useRef(e),i=p.useRef("none"),a=e?"mounted":"unmounted",[l,c]=tk(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return p.useEffect(()=>{const u=Cr(s.current);i.current=l==="mounted"?u:"none"},[l]),et(()=>{const u=s.current,d=o.current;if(d!==e){const m=i.current,h=Cr(u);e?c("MOUNT"):h==="none"||u?.display==="none"?c("UNMOUNT"):c(d&&m!==h?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,c]),et(()=>{if(t){let u;const d=t.ownerDocument.defaultView??window,f=h=>{const g=Cr(s.current).includes(CSS.escape(h.animationName));if(h.target===t&&g&&(c("ANIMATION_END"),!o.current)){const x=t.style.animationFillMode;t.style.animationFillMode="forwards",u=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=x)})}},m=h=>{h.target===t&&(i.current=Cr(s.current))};return t.addEventListener("animationstart",m),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{d.clearTimeout(u),t.removeEventListener("animationstart",m),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:p.useCallback(u=>{s.current=u?getComputedStyle(u):null,n(u)},[])}}function Cr(e){return e?.animationName||"none"}function sk(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 ji=0;function fp(){p.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??Jc()),document.body.insertAdjacentElement("beforeend",e[1]??Jc()),ji++,()=>{ji===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),ji--}},[])}function Jc(){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 Ut=function(){return Ut=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},Ut.apply(this,arguments)};function pp(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 rk(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 Gr="right-scroll-bar-position",Kr="width-before-scroll-bar",ok="with-scroll-bars-hidden",ik="--removed-body-scroll-bar-size";function Si(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function ak(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 lk=typeof window<"u"?p.useLayoutEffect:p.useEffect,Yc=new WeakMap;function ck(e,t){var n=ak(null,function(s){return e.forEach(function(o){return Si(o,s)})});return lk(function(){var s=Yc.get(n);if(s){var o=new Set(s),i=new Set(e),a=n.current;o.forEach(function(l){i.has(l)||Si(l,null)}),i.forEach(function(l){o.has(l)||Si(l,a)})}Yc.set(n,e)},[e]),n}function uk(e){return e}function dk(e,t){t===void 0&&(t=uk);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 d=a;a=[],d.forEach(i)},u=function(){return Promise.resolve().then(c)};u(),n={push:function(d){a.push(d),u()},filter:function(d){return a=a.filter(d),n}}}};return o}function fk(e){e===void 0&&(e={});var t=dk(null);return t.options=Ut({async:!0,ssr:!1},e),t}var hp=function(e){var t=e.sideCar,n=pp(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,Ut({},n))};hp.isSideCarExport=!0;function pk(e,t){return e.useMedium(t),hp}var mp=fk(),Ci=function(){},Vo=p.forwardRef(function(e,t){var n=p.useRef(null),s=p.useState({onScrollCapture:Ci,onWheelCapture:Ci,onTouchMoveCapture:Ci}),o=s[0],i=s[1],a=e.forwardProps,l=e.children,c=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,m=e.sideCar,h=e.noRelative,v=e.noIsolation,g=e.inert,x=e.allowPinchZoom,b=e.as,y=b===void 0?"div":b,k=e.gapMode,j=pp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=m,T=ck([n,t]),N=Ut(Ut({},j),o);return p.createElement(p.Fragment,null,d&&p.createElement(C,{sideCar:mp,removeScrollBar:u,shards:f,noRelative:h,noIsolation:v,inert:g,setCallbacks:i,allowPinchZoom:!!x,lockRef:n,gapMode:k}),a?p.cloneElement(p.Children.only(l),Ut(Ut({},N),{ref:T})):p.createElement(y,Ut({},N,{className:c,ref:T}),l))});Vo.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Vo.classNames={fullWidth:Kr,zeroRight:Gr};var hk=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function mk(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=hk();return t&&e.setAttribute("nonce",t),e}function gk(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function xk(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var bk=function(){var e=0,t=null;return{add:function(n){e==0&&(t=mk())&&(gk(t,n),xk(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},vk=function(){var e=bk();return function(t,n){p.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},gp=function(){var e=vk(),t=function(n){var s=n.styles,o=n.dynamic;return e(s,o),null};return t},yk={left:0,top:0,right:0,gap:0},Ni=function(e){return parseInt(e||"",10)||0},wk=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[Ni(n),Ni(s),Ni(o)]},_k=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return yk;var t=wk(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])}},kk=gp(),fs="data-scroll-locked",jk=function(e,t,n,s){var o=e.left,i=e.top,a=e.right,l=e.gap;return n===void 0&&(n="margin"),`
42
- .`.concat(ok,` {
43
- overflow: hidden `).concat(s,`;
44
- padding-right: `).concat(l,"px ").concat(s,`;
45
- }
46
- body[`).concat(fs,`] {
47
- overflow: hidden `).concat(s,`;
48
- overscroll-behavior: contain;
49
- `).concat([t&&"position: relative ".concat(s,";"),n==="margin"&&`
50
- padding-left: `.concat(o,`px;
51
- padding-top: `).concat(i,`px;
52
- padding-right: `).concat(a,`px;
53
- margin-left:0;
54
- margin-top:0;
55
- margin-right: `).concat(l,"px ").concat(s,`;
56
- `),n==="padding"&&"padding-right: ".concat(l,"px ").concat(s,";")].filter(Boolean).join(""),`
57
- }
58
-
59
- .`).concat(Gr,` {
60
- right: `).concat(l,"px ").concat(s,`;
61
- }
62
-
63
- .`).concat(Kr,` {
64
- margin-right: `).concat(l,"px ").concat(s,`;
65
- }
66
-
67
- .`).concat(Gr," .").concat(Gr,` {
68
- right: 0 `).concat(s,`;
69
- }
70
-
71
- .`).concat(Kr," .").concat(Kr,` {
72
- margin-right: 0 `).concat(s,`;
73
- }
74
-
75
- body[`).concat(fs,`] {
76
- `).concat(ik,": ").concat(l,`px;
77
- }
78
- `)},Xc=function(){var e=parseInt(document.body.getAttribute(fs)||"0",10);return isFinite(e)?e:0},Sk=function(){p.useEffect(function(){return document.body.setAttribute(fs,(Xc()+1).toString()),function(){var e=Xc()-1;e<=0?document.body.removeAttribute(fs):document.body.setAttribute(fs,e.toString())}},[])},Ck=function(e){var t=e.noRelative,n=e.noImportant,s=e.gapMode,o=s===void 0?"margin":s;Sk();var i=p.useMemo(function(){return _k(o)},[o]);return p.createElement(kk,{styles:jk(i,!t,o,n?"":"!important")})},ha=!1;if(typeof window<"u")try{var Nr=Object.defineProperty({},"passive",{get:function(){return ha=!0,!0}});window.addEventListener("test",Nr,Nr),window.removeEventListener("test",Nr,Nr)}catch{ha=!1}var Xn=ha?{passive:!1}:!1,Nk=function(e){return e.tagName==="TEXTAREA"},xp=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!Nk(e)&&n[t]==="visible")},Tk=function(e){return xp(e,"overflowY")},Ek=function(e){return xp(e,"overflowX")},Qc=function(e,t){var n=t.ownerDocument,s=t;do{typeof ShadowRoot<"u"&&s instanceof ShadowRoot&&(s=s.host);var o=bp(e,s);if(o){var i=vp(e,s),a=i[1],l=i[2];if(a>l)return!0}s=s.parentNode}while(s&&s!==n.body);return!1},Ak=function(e){var t=e.scrollTop,n=e.scrollHeight,s=e.clientHeight;return[t,n,s]},Rk=function(e){var t=e.scrollLeft,n=e.scrollWidth,s=e.clientWidth;return[t,n,s]},bp=function(e,t){return e==="v"?Tk(t):Ek(t)},vp=function(e,t){return e==="v"?Ak(t):Rk(t)},Ik=function(e,t){return e==="h"&&t==="rtl"?-1:1},zk=function(e,t,n,s,o){var i=Ik(e,window.getComputedStyle(t).direction),a=i*s,l=n.target,c=t.contains(l),u=!1,d=a>0,f=0,m=0;do{if(!l)break;var h=vp(e,l),v=h[0],g=h[1],x=h[2],b=g-x-i*v;(v||b)&&bp(e,l)&&(f+=b,m+=v);var y=l.parentNode;l=y&&y.nodeType===Node.DOCUMENT_FRAGMENT_NODE?y.host:y}while(!c&&l!==document.body||c&&(t.contains(l)||t===l));return(d&&Math.abs(f)<1||!d&&Math.abs(m)<1)&&(u=!0),u},Tr=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},eu=function(e){return[e.deltaX,e.deltaY]},tu=function(e){return e&&"current"in e?e.current:e},Ok=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Pk=function(e){return`
79
- .block-interactivity-`.concat(e,` {pointer-events: none;}
80
- .allow-interactivity-`).concat(e,` {pointer-events: all;}
81
- `)},Mk=0,Qn=[];function Lk(e){var t=p.useRef([]),n=p.useRef([0,0]),s=p.useRef(),o=p.useState(Mk++)[0],i=p.useState(gp)[0],a=p.useRef(e);p.useEffect(function(){a.current=e},[e]),p.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var g=rk([e.lockRef.current],(e.shards||[]).map(tu),!0).filter(Boolean);return g.forEach(function(x){return x.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),g.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=p.useCallback(function(g,x){if("touches"in g&&g.touches.length===2||g.type==="wheel"&&g.ctrlKey)return!a.current.allowPinchZoom;var b=Tr(g),y=n.current,k="deltaX"in g?g.deltaX:y[0]-b[0],j="deltaY"in g?g.deltaY:y[1]-b[1],C,T=g.target,N=Math.abs(k)>Math.abs(j)?"h":"v";if("touches"in g&&N==="h"&&T.type==="range")return!1;var z=window.getSelection(),A=z&&z.anchorNode,O=A?A===T||A.contains(T):!1;if(O)return!1;var D=Qc(N,T);if(!D)return!0;if(D?C=N:(C=N==="v"?"h":"v",D=Qc(N,T)),!D)return!1;if(!s.current&&"changedTouches"in g&&(k||j)&&(s.current=C),!C)return!0;var E=s.current||C;return zk(E,x,g,E==="h"?k:j)},[]),c=p.useCallback(function(g){var x=g;if(!(!Qn.length||Qn[Qn.length-1]!==i)){var b="deltaY"in x?eu(x):Tr(x),y=t.current.filter(function(C){return C.name===x.type&&(C.target===x.target||x.target===C.shadowParent)&&Ok(C.delta,b)})[0];if(y&&y.should){x.cancelable&&x.preventDefault();return}if(!y){var k=(a.current.shards||[]).map(tu).filter(Boolean).filter(function(C){return C.contains(x.target)}),j=k.length>0?l(x,k[0]):!a.current.noIsolation;j&&x.cancelable&&x.preventDefault()}}},[]),u=p.useCallback(function(g,x,b,y){var k={name:g,delta:x,target:b,should:y,shadowParent:Dk(b)};t.current.push(k),setTimeout(function(){t.current=t.current.filter(function(j){return j!==k})},1)},[]),d=p.useCallback(function(g){n.current=Tr(g),s.current=void 0},[]),f=p.useCallback(function(g){u(g.type,eu(g),g.target,l(g,e.lockRef.current))},[]),m=p.useCallback(function(g){u(g.type,Tr(g),g.target,l(g,e.lockRef.current))},[]);p.useEffect(function(){return Qn.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:m}),document.addEventListener("wheel",c,Xn),document.addEventListener("touchmove",c,Xn),document.addEventListener("touchstart",d,Xn),function(){Qn=Qn.filter(function(g){return g!==i}),document.removeEventListener("wheel",c,Xn),document.removeEventListener("touchmove",c,Xn),document.removeEventListener("touchstart",d,Xn)}},[]);var h=e.removeScrollBar,v=e.inert;return p.createElement(p.Fragment,null,v?p.createElement(i,{styles:Pk(o)}):null,h?p.createElement(Ck,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Dk(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const $k=pk(mp,Lk);var jl=p.forwardRef(function(e,t){return p.createElement(Vo,Ut({},e,{ref:t,sideCar:$k}))});jl.classNames=Vo.classNames;var Fk=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},es=new WeakMap,Er=new WeakMap,Ar={},Ti=0,yp=function(e){return e&&(e.host||yp(e.parentNode))},Bk=function(e,t){return t.map(function(n){if(e.contains(n))return n;var s=yp(n);return s&&e.contains(s)?s:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},Uk=function(e,t,n,s){var o=Bk(t,Array.isArray(e)?e:[e]);Ar[n]||(Ar[n]=new WeakMap);var i=Ar[n],a=[],l=new Set,c=new Set(o),u=function(f){!f||l.has(f)||(l.add(f),u(f.parentNode))};o.forEach(u);var d=function(f){!f||c.has(f)||Array.prototype.forEach.call(f.children,function(m){if(l.has(m))d(m);else try{var h=m.getAttribute(s),v=h!==null&&h!=="false",g=(es.get(m)||0)+1,x=(i.get(m)||0)+1;es.set(m,g),i.set(m,x),a.push(m),g===1&&v&&Er.set(m,!0),x===1&&m.setAttribute(n,"true"),v||m.setAttribute(s,"true")}catch(b){console.error("aria-hidden: cannot operate on ",m,b)}})};return d(t),l.clear(),Ti++,function(){a.forEach(function(f){var m=es.get(f)-1,h=i.get(f)-1;es.set(f,m),i.set(f,h),m||(Er.has(f)||f.removeAttribute(s),Er.delete(f)),h||f.removeAttribute(n)}),Ti--,Ti||(es=new WeakMap,es=new WeakMap,Er=new WeakMap,Ar={})}},wp=function(e,t,n){n===void 0&&(n="data-aria-hidden");var s=Array.from(Array.isArray(e)?e:[e]),o=Fk(e);return o?(s.push.apply(s,Array.from(o.querySelectorAll("[aria-live], script"))),Uk(s,o,n,"aria-hidden")):function(){return null}},qo="Dialog",[_p]=an(qo),[Wk,Ft]=_p(qo),kp=e=>{const{__scopeDialog:t,children:n,open:s,defaultOpen:o,onOpenChange:i,modal:a=!0}=e,l=p.useRef(null),c=p.useRef(null),[u,d]=Ln({prop:s,defaultProp:o??!1,onChange:i,caller:qo});return r.jsx(Wk,{scope:t,triggerRef:l,contentRef:c,contentId:qt(),titleId:qt(),descriptionId:qt(),open:u,onOpenChange:d,onOpenToggle:p.useCallback(()=>d(f=>!f),[d]),modal:a,children:n})};kp.displayName=qo;var jp="DialogTrigger",Sp=p.forwardRef((e,t)=>{const{__scopeDialog:n,...s}=e,o=Ft(jp,n),i=De(t,o.triggerRef);return r.jsx(Re.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Nl(o.open),...s,ref:i,onClick:Ne(e.onClick,o.onOpenToggle)})});Sp.displayName=jp;var Sl="DialogPortal",[Hk,Cp]=_p(Sl,{forceMount:void 0}),Np=e=>{const{__scopeDialog:t,forceMount:n,children:s,container:o}=e,i=Ft(Sl,t);return r.jsx(Hk,{scope:t,forceMount:n,children:p.Children.map(s,a=>r.jsx(At,{present:n||i.open,children:r.jsx(Ho,{asChild:!0,container:o,children:a})}))})};Np.displayName=Sl;var ho="DialogOverlay",Tp=p.forwardRef((e,t)=>{const n=Cp(ho,e.__scopeDialog),{forceMount:s=n.forceMount,...o}=e,i=Ft(ho,e.__scopeDialog);return i.modal?r.jsx(At,{present:s||i.open,children:r.jsx(qk,{...o,ref:t})}):null});Tp.displayName=ho;var Vk=ys("DialogOverlay.RemoveScroll"),qk=p.forwardRef((e,t)=>{const{__scopeDialog:n,...s}=e,o=Ft(ho,n);return r.jsx(jl,{as:Vk,allowPinchZoom:!0,shards:[o.contentRef],children:r.jsx(Re.div,{"data-state":Nl(o.open),...s,ref:t,style:{pointerEvents:"auto",...s.style}})})}),Dn="DialogContent",Ep=p.forwardRef((e,t)=>{const n=Cp(Dn,e.__scopeDialog),{forceMount:s=n.forceMount,...o}=e,i=Ft(Dn,e.__scopeDialog);return r.jsx(At,{present:s||i.open,children:i.modal?r.jsx(Zk,{...o,ref:t}):r.jsx(Gk,{...o,ref:t})})});Ep.displayName=Dn;var Zk=p.forwardRef((e,t)=>{const n=Ft(Dn,e.__scopeDialog),s=p.useRef(null),o=De(t,n.contentRef,s);return p.useEffect(()=>{const i=s.current;if(i)return wp(i)},[]),r.jsx(Ap,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:Ne(e.onCloseAutoFocus,i=>{i.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:Ne(e.onPointerDownOutside,i=>{const a=i.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0;(a.button===2||l)&&i.preventDefault()}),onFocusOutside:Ne(e.onFocusOutside,i=>i.preventDefault())})}),Gk=p.forwardRef((e,t)=>{const n=Ft(Dn,e.__scopeDialog),s=p.useRef(!1),o=p.useRef(!1);return r.jsx(Ap,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{e.onCloseAutoFocus?.(i),i.defaultPrevented||(s.current||n.triggerRef.current?.focus(),i.preventDefault()),s.current=!1,o.current=!1},onInteractOutside:i=>{e.onInteractOutside?.(i),i.defaultPrevented||(s.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const a=i.target;n.triggerRef.current?.contains(a)&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),Ap=p.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:s,onOpenAutoFocus:o,onCloseAutoFocus:i,...a}=e,l=Ft(Dn,n),c=p.useRef(null),u=De(t,c);return fp(),r.jsxs(r.Fragment,{children:[r.jsx(kl,{asChild:!0,loop:!0,trapped:s,onMountAutoFocus:o,onUnmountAutoFocus:i,children:r.jsx(Wo,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":Nl(l.open),...a,ref:u,onDismiss:()=>l.onOpenChange(!1)})}),r.jsxs(r.Fragment,{children:[r.jsx(Kk,{titleId:l.titleId}),r.jsx(Yk,{contentRef:c,descriptionId:l.descriptionId})]})]})}),Cl="DialogTitle",Rp=p.forwardRef((e,t)=>{const{__scopeDialog:n,...s}=e,o=Ft(Cl,n);return r.jsx(Re.h2,{id:o.titleId,...s,ref:t})});Rp.displayName=Cl;var Ip="DialogDescription",zp=p.forwardRef((e,t)=>{const{__scopeDialog:n,...s}=e,o=Ft(Ip,n);return r.jsx(Re.p,{id:o.descriptionId,...s,ref:t})});zp.displayName=Ip;var Op="DialogClose",Pp=p.forwardRef((e,t)=>{const{__scopeDialog:n,...s}=e,o=Ft(Op,n);return r.jsx(Re.button,{type:"button",...s,ref:t,onClick:Ne(e.onClick,()=>o.onOpenChange(!1))})});Pp.displayName=Op;function Nl(e){return e?"open":"closed"}var Mp="DialogTitleWarning",[U8,Lp]=j5(Mp,{contentName:Dn,titleName:Cl,docsSlug:"dialog"}),Kk=({titleId:e})=>{const t=Lp(Mp),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
82
-
83
- If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
84
-
85
- For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return p.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},Jk="DialogDescriptionWarning",Yk=({contentRef:e,descriptionId:t})=>{const s=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${Lp(Jk).contentName}}.`;return p.useEffect(()=>{const o=e.current?.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(s))},[s,e,t]),null},Xk=kp,Qk=Sp,ej=Np,tj=Tp,nj=Ep,sj=Rp,rj=zp,oj=Pp;function Vn({...e}){return r.jsx(Xk,{"data-slot":"dialog",...e})}function Zo({...e}){return r.jsx(Qk,{"data-slot":"dialog-trigger",...e})}function ij({...e}){return r.jsx(ej,{"data-slot":"dialog-portal",...e})}function aj({className:e,...t}){return r.jsx(tj,{"data-slot":"dialog-overlay",className:ae("fixed inset-0 z-40 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t})}function qn({className:e,children:t,...n}){return r.jsxs(ij,{children:[r.jsx(aj,{}),r.jsxs(nj,{"data-slot":"dialog-content",className:ae("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg",e),...n,children:[t,r.jsxs(oj,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[r.jsx(cr,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function Zn({className:e,...t}){return r.jsx("div",{"data-slot":"dialog-header",className:ae("flex flex-col space-y-1.5 text-center sm:text-left",e),...t})}function Gn({className:e,...t}){return r.jsx(sj,{"data-slot":"dialog-title",className:ae("text-lg font-semibold leading-none tracking-tight",e),...t})}function Dp({className:e,...t}){return r.jsx(rj,{"data-slot":"dialog-description",className:ae("text-sm text-muted-foreground",e),...t})}const nu=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,su=qf,Tl=(e,t)=>n=>{var s;if(t?.variants==null)return su(e,n?.class,n?.className);const{variants:o,defaultVariants:i}=t,a=Object.keys(o).map(u=>{const d=n?.[u],f=i?.[u];if(d===null)return null;const m=nu(d)||nu(f);return o[u][m]}),l=n&&Object.entries(n).reduce((u,d)=>{let[f,m]=d;return m===void 0||(u[f]=m),u},{}),c=t==null||(s=t.compoundVariants)===null||s===void 0?void 0:s.reduce((u,d)=>{let{class:f,className:m,...h}=d;return Object.entries(h).every(v=>{let[g,x]=v;return Array.isArray(x)?x.includes({...i,...l}[g]):{...i,...l}[g]===x})?[...u,f,m]:u},[]);return su(e,a,c,n?.class,n?.className)},lj=Tl("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function we({className:e,variant:t,size:n,...s}){return r.jsx("button",{"data-slot":"button",className:ae(lj({variant:t,size:n,className:e})),...s})}function $p({open:e,onOpenChange:t,title:n,description:s,confirmLabel:o="Confirm",variant:i="default",onConfirm:a}){return r.jsx(Vn,{open:e,onOpenChange:t,children:r.jsxs(qn,{children:[r.jsx(Zn,{children:r.jsx(Gn,{children:n})}),r.jsx("p",{className:"text-sm text-muted-foreground",children:s}),r.jsxs("div",{className:"flex justify-end gap-2 pt-2",children:[r.jsx(we,{variant:"outline",size:"sm",onClick:()=>t(!1),children:"Cancel"}),r.jsx(we,{variant:i,size:"sm",onClick:()=>{a(),t(!1)},children:o})]})]})})}const cj="data:image/svg+xml,%3csvg%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eClaude%20Code%3c/title%3e%3cpath%20clip-rule='evenodd'%20d='M20.998%2010.949H24v3.102h-3v3.028h-1.487V20H18v-2.921h-1.487V20H15v-2.921H9V20H7.488v-2.921H6V20H4.487v-2.921H3V14.05H0V10.95h3V5h17.998v5.949zM6%2010.949h1.488V8.102H6v2.847zm10.51%200H18V8.102h-1.49v2.847z'%20fill='%23D97757'%20fill-rule='evenodd'%3e%3c/path%3e%3c/svg%3e",uj="data:image/svg+xml,%3csvg%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eCodex%3c/title%3e%3cpath%20d='M19.503%200H4.496A4.496%204.496%200%20000%204.496v15.007A4.496%204.496%200%20004.496%2024h15.007A4.496%204.496%200%200024%2019.503V4.496A4.496%204.496%200%200019.503%200z'%20fill='%23fff'%3e%3c/path%3e%3cpath%20d='M9.064%203.344a4.578%204.578%200%20012.285-.312c1%20.115%201.891.54%202.673%201.275.01.01.024.017.037.021a.09.09%200%2000.043%200%204.55%204.55%200%20013.046.275l.047.022.116.057a4.581%204.581%200%20012.188%202.399c.209.51.313%201.041.315%201.595a4.24%204.24%200%2001-.134%201.223.123.123%200%2000.03.115c.594.607.988%201.33%201.183%202.17.289%201.425-.007%202.71-.887%203.854l-.136.166a4.548%204.548%200%2001-2.201%201.388.123.123%200%2000-.081.076c-.191.551-.383%201.023-.74%201.494-.9%201.187-2.222%201.846-3.711%201.838-1.187-.006-2.239-.44-3.157-1.302a.107.107%200%2000-.105-.024c-.388.125-.78.143-1.204.138a4.441%204.441%200%2001-1.945-.466%204.544%204.544%200%2001-1.61-1.335c-.152-.202-.303-.392-.414-.617a5.81%205.81%200%2001-.37-.961%204.582%204.582%200%2001-.014-2.298.124.124%200%2000.006-.056.085.085%200%2000-.027-.048%204.467%204.467%200%2001-1.034-1.651%203.896%203.896%200%2001-.251-1.192%205.189%205.189%200%2001.141-1.6c.337-1.112.982-1.985%201.933-2.618.212-.141.413-.251.601-.33.215-.089.43-.164.646-.227a.098.098%200%2000.065-.066%204.51%204.51%200%2001.829-1.615%204.535%204.535%200%20011.837-1.388zm3.482%2010.565a.637.637%200%20000%201.272h3.636a.637.637%200%20100-1.272h-3.636zM8.462%209.23a.637.637%200%2000-1.106.631l1.272%202.224-1.266%202.136a.636.636%200%20101.095.649l1.454-2.455a.636.636%200%2000.005-.64L8.462%209.23z'%20fill='url(%23lobe-icons-codex-_R_0_)'%3e%3c/path%3e%3cdefs%3e%3clinearGradient%20gradientUnits='userSpaceOnUse'%20id='lobe-icons-codex-_R_0_'%20x1='12'%20x2='12'%20y1='3'%20y2='21'%3e%3cstop%20stop-color='%23B1A7FF'%3e%3c/stop%3e%3cstop%20offset='.5'%20stop-color='%237A9DFF'%3e%3c/stop%3e%3cstop%20offset='1'%20stop-color='%233941FF'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e",dj="data:image/svg+xml,%3csvg%20fill='%237dd3fc'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOpenCode%3c/title%3e%3cpath%20d='M16%206H8v12h8V6zm4%2016H4V2h16v20z'%3e%3c/path%3e%3c/svg%3e",fj="data:image/svg+xml,%3csvg%20fill='%23ff6900'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eMiMo%20Code%3c/title%3e%3cpath%20d='M.958%2015.936a.459.459%200%2001.459.44v2.729a.46.46%200%2001-.918%200v-2.729a.459.459%200%2001.459-.44zm4.814-2.035a.46.46%200%2001.553.45v4.754a.458.458%200%2011-.918%200V15.48L3.74%2017.202a.462.462%200%2001-.655.016.462.462%200%2001-.065-.082L.628%2014.67a.459.459%200%2001.658-.637l2.124%202.187%202.127-2.188a.46.46%200%2001.235-.13zm2.068.004a.46.46%200%2001.458.445v4.755a.46.46%200%2001-.458.458.459.459%200%2001-.458-.458V14.35a.459.459%200%2001.458-.445zm1.973%202.014a.46.46%200%2001.46.457v2.729a.46.46%200%2001-.784.324.46.46%200%2001-.134-.324v-2.729a.46.46%200%2001.458-.458zm.002-2.045a.458.458%200%2001.328.157l2.127%202.19%202.125-2.19a.459.459%200%2001.784.318v4.756a.46.46%200%2001-.455.458.46.46%200%2001-.458-.458V15.48l-1.667%201.723a.46.46%200%2001-.65.008l-.005-.005c0-.002-.002-.002-.004-.003l-2.455-2.534a.46.46%200%2001-.008-.667.461.461%200%2001.338-.128zm6.797%201.206a.46.46%200%2001.53.651A1.966%201.966%200%200019.81%2018.4a.462.462%200%2001.623.18.46.46%200%2001-.181.624%202.863%202.863%200%2001-1.38.353l-.142-.004a2.88%202.88%200%2001-2.393-4.263.461.461%200%2001.274-.21zm.864-.931a2.884%202.884%200%20013.915%203.914.46.46%200%2001-.402.24l-.057-.004a.458.458%200%2001-.164-.055.46.46%200%2001-.182-.622%201.967%201.967%200%2000-2.669-2.67.459.459%200%2011-.441-.803zM9.59%206.368c1.481%200%201.696%201.202%201.696%201.654v2.648h-.917v-.432c-.26.346-.792.535-1.36.535-.133%200-1.289-.03-1.384-1.136-.082-.932.675-1.61%202.053-1.61h.691c0-.563-.367-.886-.983-.886-.44.013-.864.174-1.2.458l-.36-.664c.484-.379%201.012-.567%201.764-.567zm4.427.1c1.263%200%202.082.97%202.083%202.15%200%201.181-.824%202.154-2.083%202.154-1.26%200-2.084-.972-2.084-2.152%200-1.18.82-2.153%202.084-2.153zm6.801.015c.68%200%201.202.465%201.197%201.548v2.642H21.1V8.29c0-.312-.002-.98-.63-.98s-.628.667-.628.838v2.524h-.89V8.148c0-.17-.001-.838-.63-.838-.628%200-.628.668-.628.98v2.383h-.917v-4.03h.917V7a1.22%201.22%200%2001.947-.516c.398%200%20.76.193.982.686a1.321%201.321%200%20011.195-.686zm-18.093.872l1.457-1.772H5.32L3.311%208.07l2.14%202.602H4.24L2.725%208.796%201.21%2010.672H0L2.138%208.07.13%205.583h1.138l1.458%201.772zm4.149%203.317h-.916V6.644h.916v4.028zm16.99%200h-.916V6.644h.916v4.028zM9.925%208.71c-1.055%200-1.359.412-1.326.742.032.329.324.537.757.537a1.013%201.013%200%20001.014-.968l.002-.31h-.447zM14.018%207.3c-.663%200-1.184.487-1.184%201.32%200%20.832.52%201.32%201.184%201.32.662%200%201.182-.49%201.182-1.32%200-.832-.52-1.32-1.182-1.32zM6.417%205.001a.568.568%200%2001.587.582.588.588%200%2001-1.175%200A.57.57%200%20016.417%205zm16.991%200a.57.57%200%2001.592.582.588.588%200%2001-1.174%200%20.57.57%200%2001.357-.542.572.572%200%2001.225-.04z'%3e%3c/path%3e%3c/svg%3e",pj="/assets/agent-inspector-58K1_MsC.ico",hj={"agent-inspector":"Inspector",codex:"Codex",opencode:"OpenCode","mimo-code":"MiMo Code","claude-code":"Claude Code"};function Ei(e){return e?.toLowerCase()??""}function Os(e,t){for(const n of t)if(e.includes(n))return!0;return!1}function El(e){const t=[Ei(e.userAgent),Ei(e.conversationId),Ei(e.clientProjectFolder)].join(" ");return Os(t,["agent-inspector","agent inspector","provider-test"])?"agent-inspector":Os(t,["mimocode","mimo-code","mimo code"])?"mimo-code":Os(t,["opencode","open-code","open code"])?"opencode":Os(t,["claude-code","claude code","claudecode"])?"claude-code":Os(t,["codex desktop","codex-cli","openai-codex","codex"])?"codex":"unknown"}function Go(e){switch(e){case"agent-inspector":case"codex":case"opencode":case"mimo-code":case"claude-code":return hj[e];case"unknown":return null}}const mj={"agent-inspector":pj,codex:uj,opencode:dj,"mimo-code":fj,"claude-code":cj},gj={"agent-inspector":"border-orange-200/25 bg-orange-300/[0.12]",codex:"border-cyan-200/20 bg-cyan-300/[0.08]",opencode:"border-sky-200/25 bg-sky-300/[0.12]","mimo-code":"border-orange-200/25 bg-orange-400/[0.12]","claude-code":"border-amber-100/20 bg-amber-300/[0.09]"},xj={"agent-inspector":"p-0.5 drop-shadow-[0_0_8px_rgba(251,146,60,0.35)]",codex:"p-0.5",opencode:"p-1 drop-shadow-[0_0_8px_rgba(125,211,252,0.35)]","mimo-code":"p-0.5 drop-shadow-[0_0_8px_rgba(255,105,0,0.35)]","claude-code":"p-0.5"};function Ko({client:e,className:t}){if(e==="unknown")return null;const n=Go(e);if(n===null)return null;const s=mj[e];return r.jsx("span",{className:ae("inline-flex size-6 shrink-0 items-center justify-center rounded-md border p-0 shadow-sm",gj[e],t),"aria-label":n,title:n,children:r.jsx("img",{src:s,alt:"",className:ae("size-full object-contain",xj[e]),"aria-hidden":"true"})})}const bj="data:image/svg+xml,%3csvg%20height='2500'%20viewBox='0%206.603%201192.672%201193.397'%20width='2500'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m233.96%20800.215%20234.684-131.678%203.947-11.436-3.947-6.363h-11.436l-39.221-2.416-134.094-3.624-116.296-4.832-112.67-6.04-28.35-6.04-26.577-35.035%202.738-17.477%2023.84-16.027%2034.147%202.98%2075.463%205.155%20113.235%207.812%2082.147%204.832%20121.692%2012.644h19.329l2.738-7.812-6.604-4.832-5.154-4.832-117.182-79.41-126.845-83.92-66.443-48.321-35.92-24.484-18.12-22.953-7.813-50.093%2032.618-35.92%2043.812%202.98%2011.195%202.98%2044.375%2034.147%2094.792%2073.37%20123.786%2091.167%2018.12%2015.06%207.249-5.154.886-3.624-8.135-13.61-67.329-121.692-71.838-123.785-31.974-51.302-8.456-30.765c-2.98-12.645-5.154-23.275-5.154-36.242l37.127-50.416%2020.537-6.604%2049.53%206.604%2020.86%2018.121%2030.765%2070.39%2049.852%20110.818%2077.315%20150.684%2022.631%2044.698%2012.08%2041.396%204.51%2012.645h7.813v-7.248l6.362-84.886%2011.759-104.215%2011.436-134.094%203.946-37.772%2018.685-45.262%2037.127-24.482%2028.994%2013.852%2023.839%2034.148-3.303%2022.067-14.174%2092.134-27.785%20144.323-18.121%2096.644h10.55l12.08-12.08%2048.887-64.913%2082.147-102.685%2036.242-40.752%2042.282-45.02%2027.14-21.423h51.303l37.772%2056.135-16.913%2057.986-52.832%2067.007-43.812%2056.779-62.82%2084.563-39.22%2067.651%203.623%205.396%209.343-.886%20141.906-30.201%2076.671-13.852%2091.49-15.705%2041.396%2019.329%204.51%2019.65-16.269%2040.189-97.852%2024.16-114.764%2022.954-170.9%2040.43-2.093%201.53%202.416%202.98%2076.993%207.248%2032.94%201.771h80.617l150.12%2011.195%2039.222%2025.933%2023.517%2031.732-3.946%2024.16-60.403%2030.766-81.503-19.33-190.228-45.26-65.235-16.27h-9.02v5.397l54.362%2053.154%2099.624%2089.96%20124.752%20115.973%206.362%2028.671-16.027%2022.63-16.912-2.415-109.611-82.47-42.282-37.127-95.758-80.618h-6.363v8.456l22.067%2032.296%20116.537%20175.167%206.04%2053.719-8.456%2017.476-30.201%2010.55-33.181-6.04-68.215-95.758-70.39-107.84-56.778-96.644-6.926%203.947-33.503%20360.886-15.705%2018.443-36.243%2013.852-30.201-22.953-16.027-37.127%2016.027-73.37%2019.329-95.758%2015.704-76.107%2014.175-94.55%208.456-31.41-.563-2.094-6.927.886-71.275%2097.852-108.402%20146.497-85.772%2091.812-20.537%208.134-35.597-18.443%203.301-32.94%2019.893-29.315%20118.712-151.007%2071.597-93.583%2046.228-54.04-.322-7.813h-2.738l-315.302%20204.725-56.135%207.248-24.16-22.63%202.98-37.128%2011.435-12.08%2094.792-65.236-.322.323z'%20fill='%23d97757'/%3e%3c/svg%3e",vj="data:image/svg+xml,%3csvg%20height='2500'%20viewBox='-1%20-.1%20949.1%20959.8'%20width='2474'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m925.8%20456.3c10.4%2023.2%2017%2048%2019.7%2073.3%202.6%2025.3%201.3%2050.9-4.1%2075.8-5.3%2024.9-14.5%2048.8-27.3%2070.8-8.4%2014.7-18.3%2028.5-29.7%2041.2-11.3%2012.6-23.9%2024-37.6%2034-13.8%2010-28.5%2018.4-44.1%2025.3-15.5%206.8-31.7%2012-48.3%2015.4-7.8%2024.2-19.4%2047.1-34.4%2067.7-14.9%2020.6-33%2038.7-53.6%2053.6-20.6%2015-43.4%2026.6-67.6%2034.4-24.2%207.9-49.5%2011.8-75%2011.8-16.9.1-33.9-1.7-50.5-5.1-16.5-3.5-32.7-8.8-48.2-15.7s-30.2-15.5-43.9-25.5c-13.6-10-26.2-21.5-37.4-34.2-25%205.4-50.6%206.7-75.9%204.1-25.3-2.7-50.1-9.3-73.4-19.7-23.2-10.3-44.7-24.3-63.6-41.4s-35-37.1-47.7-59.1c-8.5-14.7-15.5-30.2-20.8-46.3s-8.8-32.7-10.6-49.6c-1.8-16.8-1.7-33.8.1-50.7%201.8-16.8%205.5-33.4%2010.8-49.5-17-18.9-31-40.4-41.4-63.6-10.3-23.3-17-48-19.6-73.3-2.7-25.3-1.3-50.9%204-75.8s14.5-48.8%2027.3-70.8c8.4-14.7%2018.3-28.6%2029.6-41.2s24-24%2037.7-34%2028.5-18.5%2044-25.3c15.6-6.9%2031.8-12%2048.4-15.4%207.8-24.3%2019.4-47.1%2034.3-67.7%2015-20.6%2033.1-38.7%2053.7-53.7%2020.6-14.9%2043.4-26.5%2067.6-34.4%2024.2-7.8%2049.5-11.8%2075-11.7%2016.9-.1%2033.9%201.6%2050.5%205.1s32.8%208.7%2048.3%2015.6c15.5%207%2030.2%2015.5%2043.9%2025.5%2013.7%2010.1%2026.3%2021.5%2037.5%2034.2%2024.9-5.3%2050.5-6.6%2075.8-4s50%209.3%2073.3%2019.6c23.2%2010.4%2044.7%2024.3%2063.6%2041.4%2018.9%2017%2035%2036.9%2047.7%2059%208.5%2014.6%2015.5%2030.1%2020.8%2046.3%205.3%2016.1%208.9%2032.7%2010.6%2049.6%201.8%2016.9%201.8%2033.9-.1%2050.8-1.8%2016.9-5.5%2033.5-10.8%2049.6%2017.1%2018.9%2031%2040.3%2041.4%2063.6zm-333.2%20426.9c21.8-9%2041.6-22.3%2058.3-39s30-36.5%2039-58.4c9-21.8%2013.7-45.2%2013.7-68.8v-223q-.1-.3-.2-.7-.1-.3-.3-.6-.2-.3-.5-.5-.3-.3-.6-.4l-80.7-46.6v269.4c0%202.7-.4%205.5-1.1%208.1-.7%202.7-1.7%205.2-3.1%207.6s-3%204.6-5%206.5a32.1%2032.1%200%200%201%20-6.5%205l-191.1%20110.3c-1.6%201-4.3%202.4-5.7%203.2%207.9%206.7%2016.5%2012.6%2025.5%2017.8%209.1%205.2%2018.5%209.6%2028.3%2013.2%209.8%203.5%2019.9%206.2%2030.1%208%2010.3%201.8%2020.7%202.7%2031.1%202.7%2023.6%200%2047-4.7%2068.8-13.8zm-455.1-151.4c11.9%2020.5%2027.6%2038.3%2046.3%2052.7%2018.8%2014.4%2040.1%2024.9%2062.9%2031s46.6%207.7%2070%204.6%2045.9-10.7%2066.4-22.5l193.2-111.5.5-.5q.2-.2.3-.6.2-.3.3-.6v-94l-233.2%20134.9c-2.4%201.4-4.9%202.4-7.5%203.2-2.7.7-5.4%201-8.2%201-2.7%200-5.4-.3-8.1-1-2.6-.8-5.2-1.8-7.6-3.2l-191.1-110.4c-1.7-1-4.2-2.5-5.6-3.4-1.8%2010.3-2.7%2020.7-2.7%2031.1s1%2020.8%202.8%2031.1c1.8%2010.2%204.6%2020.3%208.1%2030.1%203.6%209.8%208%2019.2%2013.2%2028.2zm-50.2-417c-11.8%2020.5-19.4%2043.1-22.5%2066.5s-1.5%2047.1%204.6%2070c6.1%2022.8%2016.6%2044.1%2031%2062.9%2014.4%2018.7%2032.3%2034.4%2052.7%2046.2l193.1%20111.6q.3.1.7.2h.7q.4%200%20.7-.2.3-.1.6-.3l81-46.8-233.2-134.6c-2.3-1.4-4.5-3.1-6.5-5a32.1%2032.1%200%200%201%20-5-6.5c-1.3-2.4-2.4-4.9-3.1-7.6-.7-2.6-1.1-5.3-1-8.1v-227.1c-9.8%203.6-19.3%208-28.3%2013.2-9%205.3-17.5%2011.3-25.5%2018-7.9%206.7-15.3%2014.1-22%2022.1-6.7%207.9-12.6%2016.5-17.8%2025.5zm663.3%20154.4c2.4%201.4%204.6%203%206.6%205%201.9%201.9%203.6%204.1%205%206.5%201.3%202.4%202.4%205%203.1%207.6.6%202.7%201%205.4.9%208.2v227.1c32.1-11.8%2060.1-32.5%2080.8-59.7%2020.8-27.2%2033.3-59.7%2036.2-93.7s-3.9-68.2-19.7-98.5-39.9-55.5-69.5-72.5l-193.1-111.6q-.3-.1-.7-.2h-.7q-.3.1-.7.2-.3.1-.6.3l-80.6%2046.6%20233.2%20134.7zm80.5-121h-.1v.1zm-.1-.1c5.8-33.6%201.9-68.2-11.3-99.7-13.1-31.5-35-58.6-63-78.2-28-19.5-61-30.7-95.1-32.2-34.2-1.4-68%206.9-97.6%2023.9l-193.1%20111.5q-.3.2-.5.5l-.4.6q-.1.3-.2.7-.1.3-.1.7v93.2l233.2-134.7c2.4-1.4%205-2.4%207.6-3.2%202.7-.7%205.4-1%208.1-1%202.8%200%205.5.3%208.2%201%202.6.8%205.1%201.8%207.5%203.2l191.1%20110.4c1.7%201%204.2%202.4%205.6%203.3zm-505.3-103.2c0-2.7.4-5.4%201.1-8.1.7-2.6%201.7-5.2%203.1-7.6%201.4-2.3%203-4.5%205-6.5%201.9-1.9%204.1-3.6%206.5-4.9l191.1-110.3c1.8-1.1%204.3-2.5%205.7-3.2-26.2-21.9-58.2-35.9-92.1-40.2-33.9-4.4-68.3%201-99.2%2015.5-31%2014.5-57.2%2037.6-75.5%2066.4-18.3%2028.9-28%2062.3-28%2096.5v223q.1.4.2.7.1.3.3.6.2.3.5.6.2.2.6.4l80.7%2046.6zm43.8%20294.7%20103.9%2060%20103.9-60v-119.9l-103.8-60-103.9%2060z'/%3e%3c/svg%3e",yj="data:image/svg+xml,%3csvg%20fill='none'%20height='1320'%20viewBox='3.771%206.973%2023.993%2017.652'%20width='2500'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m27.501%208.469c-.252-.123-.36.111-.508.23-.05.04-.093.09-.135.135-.368.395-.797.652-1.358.621-.821-.045-1.521.213-2.14.842-.132-.776-.57-1.238-1.235-1.535-.349-.155-.701-.309-.944-.645-.171-.238-.217-.504-.303-.765-.054-.159-.108-.32-.29-.348-.197-.031-.274.135-.352.273-.31.567-.43%201.192-.419%201.825.028%201.421.628%202.554%201.82%203.36.136.093.17.186.128.321-.081.278-.178.547-.264.824-.054.178-.135.217-.324.14a5.448%205.448%200%200%201%20-1.719-1.169c-.848-.82-1.614-1.726-2.57-2.435-.225-.166-.449-.32-.681-.467-.976-.95.128-1.729.383-1.82.267-.096.093-.428-.77-.424s-1.653.293-2.659.677a2.782%202.782%200%200%201%20-.46.135%209.554%209.554%200%200%200%20-2.853-.1c-1.866.21-3.356%201.092-4.452%202.6-1.315%201.81-1.625%203.87-1.246%206.018.399%202.261%201.552%204.136%203.326%205.601%201.837%201.518%203.955%202.262%206.37%202.12%201.466-.085%203.1-.282%204.942-1.842.465.23.952.322%201.762.392.623.059%201.223-.031%201.687-.127.728-.154.677-.828.414-.953-2.132-.994-1.665-.59-2.09-.916%201.084-1.285%202.717-2.619%203.356-6.94.05-.343.007-.558%200-.837-.004-.168.034-.235.228-.254a4.084%204.084%200%200%200%201.529-.47c1.382-.757%201.938-1.997%202.07-3.485.02-.227-.004-.463-.243-.582zm-12.041%2013.391c-2.067-1.627-3.07-2.162-3.483-2.138-.387.021-.318.465-.233.754.089.285.205.482.368.732.113.166.19.414-.112.598-.666.414-1.823-.139-1.878-.166-1.347-.793-2.473-1.842-3.267-3.276-.765-1.38-1.21-2.861-1.284-4.441-.02-.383.093-.518.472-.586a4.692%204.692%200%200%201%201.514-.04c2.109.31%203.905%201.255%205.41%202.749.86.853%201.51%201.871%202.18%202.865.711%201.057%201.478%202.063%202.454%202.887.343.289.619.51.881.672-.792.088-2.117.107-3.022-.61zm.99-6.38a.304.304%200%201%201%20.609%200c0%20.17-.136.304-.306.304a.3.3%200%200%201%20-.303-.305zm3.077%201.581c-.197.08-.394.15-.584.159a1.246%201.246%200%200%201%20-.79-.252c-.27-.227-.463-.354-.546-.752a1.752%201.752%200%200%201%20.016-.582c.07-.324-.008-.531-.235-.72-.187-.155-.422-.196-.682-.196a.551.551%200%200%201%20-.252-.078c-.108-.055-.197-.19-.112-.356.027-.053.159-.183.19-.207.352-.201.758-.135%201.134.016.349.142.611.404.99.773.388.448.457.573.678.906.174.264.333.534.441.842.066.192-.02.35-.248.448z'%20fill='%234d6bfe'/%3e%3c/svg%3e",wj="/assets/minimax-BPMzvuL-.jpeg",_j="/assets/alibaba-TTwafVwX.svg",kj="/assets/qwen-CONDcHqt.png",jj="/assets/zhipuai-BPNAnxo-.svg",Sj={"claude-":"anthropic","gpt-":"openai","o1-":"openai","o3-":"openai","deepseek-":"deepseek",MiniMax:"minimax",qwen:"qwen"};function Cj(e){return e.replace(/[_\s]+/g,"-").split(/[/:@]/).some(n=>n.startsWith("glm-"))}function Nj(e){if(e===null)return"unknown";const t=e.toLowerCase();if(Cj(t))return"zhipuai";for(const[n,s]of Object.entries(Sj))if(t.startsWith(n.toLowerCase()))return s;return"unknown"}const Kn={width:24,height:24,objectFit:"contain"},Tj=pt.memo(({className:e})=>r.jsx("img",{src:bj,alt:"Anthropic",className:e,style:Kn})),Ej=pt.memo(({className:e})=>r.jsx("img",{src:vj,alt:"OpenAI",className:e,style:{...Kn,background:"white",borderRadius:"4px"}})),Aj=pt.memo(({className:e})=>r.jsx("img",{src:yj,alt:"DeepSeek",className:e,style:Kn})),Rj=pt.memo(({className:e})=>r.jsx("img",{src:wj,alt:"MiniMax",className:e,style:Kn})),Ij=pt.memo(({className:e})=>r.jsx("img",{src:_j,alt:"Alibaba",className:e,style:Kn})),zj=pt.memo(({className:e})=>r.jsx("img",{src:kj,alt:"Qwen",className:e,style:Kn})),Oj=pt.memo(({className:e})=>r.jsx("img",{src:jj,alt:"ZhipuAI",className:e,style:Kn}));function Pj({provider:e,className:t}){switch(e){case"anthropic":return r.jsx(Tj,{className:t});case"openai":return r.jsx(Ej,{className:t});case"deepseek":return r.jsx(Aj,{className:t});case"minimax":return r.jsx(Rj,{className:t});case"alibaba":return r.jsx(Ij,{className:t});case"qwen":return r.jsx(zj,{className:t});case"zhipuai":return r.jsx(Oj,{className:t});case"unknown":return null}}var Fp=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"}),Mj="VisuallyHidden",Bp=p.forwardRef((e,t)=>r.jsx(Re.span,{...e,ref:t,style:{...Fp,...e.style}}));Bp.displayName=Mj;var Lj=Bp;function Up(e){const t=e+"CollectionProvider",[n,s]=an(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=g=>{const{scope:x,children:b}=g,y=pt.useRef(null),k=pt.useRef(new Map).current;return r.jsx(o,{scope:x,itemMap:k,collectionRef:y,children:b})};a.displayName=t;const l=e+"CollectionSlot",c=ys(l),u=pt.forwardRef((g,x)=>{const{scope:b,children:y}=g,k=i(l,b),j=De(x,k.collectionRef);return r.jsx(c,{ref:j,children:y})});u.displayName=l;const d=e+"CollectionItemSlot",f="data-radix-collection-item",m=ys(d),h=pt.forwardRef((g,x)=>{const{scope:b,children:y,...k}=g,j=pt.useRef(null),C=De(x,j),T=i(d,b);return pt.useEffect(()=>(T.itemMap.set(j,{ref:j,...k}),()=>{T.itemMap.delete(j)})),r.jsx(m,{[f]:"",ref:C,children:y})});h.displayName=d;function v(g){const x=i(e+"CollectionConsumer",g);return pt.useCallback(()=>{const y=x.collectionRef.current;if(!y)return[];const k=Array.from(y.querySelectorAll(`[${f}]`));return Array.from(x.itemMap.values()).sort((T,N)=>k.indexOf(T.ref.current)-k.indexOf(N.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:a,Slot:u,ItemSlot:h},v,s]}var Jo="Collapsible",[Dj]=an(Jo),[$j,Al]=Dj(Jo),Wp=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:s,defaultOpen:o,disabled:i,onOpenChange:a,...l}=e,[c,u]=Ln({prop:s,defaultProp:o??!1,onChange:a,caller:Jo});return r.jsx($j,{scope:n,disabled:i,contentId:qt(),open:c,onOpenToggle:p.useCallback(()=>u(d=>!d),[u]),children:r.jsx(Re.div,{"data-state":Il(c),"data-disabled":i?"":void 0,...l,ref:t})})});Wp.displayName=Jo;var Hp="CollapsibleTrigger",Vp=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,...s}=e,o=Al(Hp,n);return r.jsx(Re.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Il(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...s,ref:t,onClick:Ne(e.onClick,o.onOpenToggle)})});Vp.displayName=Hp;var Rl="CollapsibleContent",qp=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Al(Rl,e.__scopeCollapsible);return r.jsx(At,{present:n||o.open,children:({present:i})=>r.jsx(Fj,{...s,ref:t,present:i})})});qp.displayName=Rl;var Fj=p.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:s,children:o,...i}=e,a=Al(Rl,n),[l,c]=p.useState(s),u=p.useRef(null),d=De(t,u),f=p.useRef(0),m=f.current,h=p.useRef(0),v=h.current,g=a.open||l,x=p.useRef(g),b=p.useRef(void 0);return p.useEffect(()=>{const y=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(y)},[]),et(()=>{const y=u.current;if(y){b.current=b.current||{transitionDuration:y.style.transitionDuration,animationName:y.style.animationName},y.style.transitionDuration="0s",y.style.animationName="none";const k=y.getBoundingClientRect();f.current=k.height,h.current=k.width,x.current||(y.style.transitionDuration=b.current.transitionDuration,y.style.animationName=b.current.animationName),c(s)}},[a.open,s]),r.jsx(Re.div,{"data-state":Il(a.open),"data-disabled":a.disabled?"":void 0,id:a.contentId,hidden:!g,...i,ref:d,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":v?`${v}px`:void 0,...e.style},children:g&&o})});function Il(e){return e?"open":"closed"}var Bj=Wp,Uj=p.createContext(void 0);function Yo(e){const t=p.useContext(Uj);return e||t||"ltr"}function Wj(e){const t=p.useRef({value:e,previous:e});return p.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}function Hj(e){const[t,n]=p.useState(void 0);return et(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const s=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let a,l;if("borderBoxSize"in i){const c=i.borderBoxSize,u=Array.isArray(c)?c[0]:c;a=u.inlineSize,l=u.blockSize}else a=e.offsetWidth,l=e.offsetHeight;n({width:a,height:l})});return s.observe(e,{box:"border-box"}),()=>s.unobserve(e)}else n(void 0)},[e]),t}const Vj=["top","right","bottom","left"],yn=Math.min,vt=Math.max,mo=Math.round,Rr=Math.floor,Zt=e=>({x:e,y:e}),qj={left:"right",right:"left",bottom:"top",top:"bottom"},Zj={start:"end",end:"start"};function ma(e,t,n){return vt(e,yn(t,n))}function sn(e,t){return typeof e=="function"?e(t):e}function rn(e){return e.split("-")[0]}function Es(e){return e.split("-")[1]}function zl(e){return e==="x"?"y":"x"}function Ol(e){return e==="y"?"height":"width"}const Gj=new Set(["top","bottom"]);function Ht(e){return Gj.has(rn(e))?"y":"x"}function Pl(e){return zl(Ht(e))}function Kj(e,t,n){n===void 0&&(n=!1);const s=Es(e),o=Pl(e),i=Ol(o);let a=o==="x"?s===(n?"end":"start")?"right":"left":s==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=go(a)),[a,go(a)]}function Jj(e){const t=go(e);return[ga(e),t,ga(t)]}function ga(e){return e.replace(/start|end/g,t=>Zj[t])}const ru=["left","right"],ou=["right","left"],Yj=["top","bottom"],Xj=["bottom","top"];function Qj(e,t,n){switch(e){case"top":case"bottom":return n?t?ou:ru:t?ru:ou;case"left":case"right":return t?Yj:Xj;default:return[]}}function eS(e,t,n,s){const o=Es(e);let i=Qj(rn(e),n==="start",s);return o&&(i=i.map(a=>a+"-"+o),t&&(i=i.concat(i.map(ga)))),i}function go(e){return e.replace(/left|right|bottom|top/g,t=>qj[t])}function tS(e){return{top:0,right:0,bottom:0,left:0,...e}}function Zp(e){return typeof e!="number"?tS(e):{top:e,right:e,bottom:e,left:e}}function xo(e){const{x:t,y:n,width:s,height:o}=e;return{width:s,height:o,top:n,left:t,right:t+s,bottom:n+o,x:t,y:n}}function iu(e,t,n){let{reference:s,floating:o}=e;const i=Ht(t),a=Pl(t),l=Ol(a),c=rn(t),u=i==="y",d=s.x+s.width/2-o.width/2,f=s.y+s.height/2-o.height/2,m=s[l]/2-o[l]/2;let h;switch(c){case"top":h={x:d,y:s.y-o.height};break;case"bottom":h={x:d,y:s.y+s.height};break;case"right":h={x:s.x+s.width,y:f};break;case"left":h={x:s.x-o.width,y:f};break;default:h={x:s.x,y:s.y}}switch(Es(t)){case"start":h[a]-=m*(n&&u?-1:1);break;case"end":h[a]+=m*(n&&u?-1:1);break}return h}async function nS(e,t){var n;t===void 0&&(t={});const{x:s,y:o,platform:i,rects:a,elements:l,strategy:c}=e,{boundary:u="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:m=!1,padding:h=0}=sn(t,e),v=Zp(h),x=l[m?f==="floating"?"reference":"floating":f],b=xo(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(x)))==null||n?x:x.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(l.floating)),boundary:u,rootBoundary:d,strategy:c})),y=f==="floating"?{x:s,y:o,width:a.floating.width,height:a.floating.height}:a.reference,k=await(i.getOffsetParent==null?void 0:i.getOffsetParent(l.floating)),j=await(i.isElement==null?void 0:i.isElement(k))?await(i.getScale==null?void 0:i.getScale(k))||{x:1,y:1}:{x:1,y:1},C=xo(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:k,strategy:c}):y);return{top:(b.top-C.top+v.top)/j.y,bottom:(C.bottom-b.bottom+v.bottom)/j.y,left:(b.left-C.left+v.left)/j.x,right:(C.right-b.right+v.right)/j.x}}const sS=async(e,t,n)=>{const{placement:s="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=i.filter(Boolean),c=await(a.isRTL==null?void 0:a.isRTL(t));let u=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:f}=iu(u,s,c),m=s,h={},v=0;for(let x=0;x<l.length;x++){var g;const{name:b,fn:y}=l[x],{x:k,y:j,data:C,reset:T}=await y({x:d,y:f,initialPlacement:s,placement:m,strategy:o,middlewareData:h,rects:u,platform:{...a,detectOverflow:(g=a.detectOverflow)!=null?g:nS},elements:{reference:e,floating:t}});d=k??d,f=j??f,h={...h,[b]:{...h[b],...C}},T&&v<=50&&(v++,typeof T=="object"&&(T.placement&&(m=T.placement),T.rects&&(u=T.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:o}):T.rects),{x:d,y:f}=iu(u,m,c)),x=-1)}return{x:d,y:f,placement:m,strategy:o,middlewareData:h}},rS=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:s,placement:o,rects:i,platform:a,elements:l,middlewareData:c}=t,{element:u,padding:d=0}=sn(e,t)||{};if(u==null)return{};const f=Zp(d),m={x:n,y:s},h=Pl(o),v=Ol(h),g=await a.getDimensions(u),x=h==="y",b=x?"top":"left",y=x?"bottom":"right",k=x?"clientHeight":"clientWidth",j=i.reference[v]+i.reference[h]-m[h]-i.floating[v],C=m[h]-i.reference[h],T=await(a.getOffsetParent==null?void 0:a.getOffsetParent(u));let N=T?T[k]:0;(!N||!await(a.isElement==null?void 0:a.isElement(T)))&&(N=l.floating[k]||i.floating[v]);const z=j/2-C/2,A=N/2-g[v]/2-1,O=yn(f[b],A),D=yn(f[y],A),E=O,L=N-g[v]-D,w=N/2-g[v]/2+z,$=ma(E,w,L),ee=!c.arrow&&Es(o)!=null&&w!==$&&i.reference[v]/2-(w<E?O:D)-g[v]/2<0,F=ee?w<E?w-E:w-L:0;return{[h]:m[h]+F,data:{[h]:$,centerOffset:w-$-F,...ee&&{alignmentOffset:F}},reset:ee}}}),oS=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,s;const{placement:o,middlewareData:i,rects:a,initialPlacement:l,platform:c,elements:u}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:m,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:g=!0,...x}=sn(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const b=rn(o),y=Ht(l),k=rn(l)===l,j=await(c.isRTL==null?void 0:c.isRTL(u.floating)),C=m||(k||!g?[go(l)]:Jj(l)),T=v!=="none";!m&&T&&C.push(...eS(l,g,v,j));const N=[l,...C],z=await c.detectOverflow(t,x),A=[];let O=((s=i.flip)==null?void 0:s.overflows)||[];if(d&&A.push(z[b]),f){const w=Kj(o,a,j);A.push(z[w[0]],z[w[1]])}if(O=[...O,{placement:o,overflows:A}],!A.every(w=>w<=0)){var D,E;const w=(((D=i.flip)==null?void 0:D.index)||0)+1,$=N[w];if($&&(!(f==="alignment"?y!==Ht($):!1)||O.every(H=>Ht(H.placement)===y?H.overflows[0]>0:!0)))return{data:{index:w,overflows:O},reset:{placement:$}};let ee=(E=O.filter(F=>F.overflows[0]<=0).sort((F,H)=>F.overflows[1]-H.overflows[1])[0])==null?void 0:E.placement;if(!ee)switch(h){case"bestFit":{var L;const F=(L=O.filter(H=>{if(T){const Z=Ht(H.placement);return Z===y||Z==="y"}return!0}).map(H=>[H.placement,H.overflows.filter(Z=>Z>0).reduce((Z,ue)=>Z+ue,0)]).sort((H,Z)=>H[1]-Z[1])[0])==null?void 0:L[0];F&&(ee=F);break}case"initialPlacement":ee=l;break}if(o!==ee)return{reset:{placement:ee}}}return{}}}};function au(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function lu(e){return Vj.some(t=>e[t]>=0)}const iS=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n,platform:s}=t,{strategy:o="referenceHidden",...i}=sn(e,t);switch(o){case"referenceHidden":{const a=await s.detectOverflow(t,{...i,elementContext:"reference"}),l=au(a,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:lu(l)}}}case"escaped":{const a=await s.detectOverflow(t,{...i,altBoundary:!0}),l=au(a,n.floating);return{data:{escapedOffsets:l,escaped:lu(l)}}}default:return{}}}}},Gp=new Set(["left","top"]);async function aS(e,t){const{placement:n,platform:s,elements:o}=e,i=await(s.isRTL==null?void 0:s.isRTL(o.floating)),a=rn(n),l=Es(n),c=Ht(n)==="y",u=Gp.has(a)?-1:1,d=i&&c?-1:1,f=sn(t,e);let{mainAxis:m,crossAxis:h,alignmentAxis:v}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof v=="number"&&(h=l==="end"?v*-1:v),c?{x:h*d,y:m*u}:{x:m*u,y:h*d}}const lS=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,s;const{x:o,y:i,placement:a,middlewareData:l}=t,c=await aS(t,e);return a===((n=l.offset)==null?void 0:n.placement)&&(s=l.arrow)!=null&&s.alignmentOffset?{}:{x:o+c.x,y:i+c.y,data:{...c,placement:a}}}}},cS=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:s,placement:o,platform:i}=t,{mainAxis:a=!0,crossAxis:l=!1,limiter:c={fn:b=>{let{x:y,y:k}=b;return{x:y,y:k}}},...u}=sn(e,t),d={x:n,y:s},f=await i.detectOverflow(t,u),m=Ht(rn(o)),h=zl(m);let v=d[h],g=d[m];if(a){const b=h==="y"?"top":"left",y=h==="y"?"bottom":"right",k=v+f[b],j=v-f[y];v=ma(k,v,j)}if(l){const b=m==="y"?"top":"left",y=m==="y"?"bottom":"right",k=g+f[b],j=g-f[y];g=ma(k,g,j)}const x=c.fn({...t,[h]:v,[m]:g});return{...x,data:{x:x.x-n,y:x.y-s,enabled:{[h]:a,[m]:l}}}}}},uS=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:s,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:c=!0,crossAxis:u=!0}=sn(e,t),d={x:n,y:s},f=Ht(o),m=zl(f);let h=d[m],v=d[f];const g=sn(l,t),x=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(c){const k=m==="y"?"height":"width",j=i.reference[m]-i.floating[k]+x.mainAxis,C=i.reference[m]+i.reference[k]-x.mainAxis;h<j?h=j:h>C&&(h=C)}if(u){var b,y;const k=m==="y"?"width":"height",j=Gp.has(rn(o)),C=i.reference[f]-i.floating[k]+(j&&((b=a.offset)==null?void 0:b[f])||0)+(j?0:x.crossAxis),T=i.reference[f]+i.reference[k]+(j?0:((y=a.offset)==null?void 0:y[f])||0)-(j?x.crossAxis:0);v<C?v=C:v>T&&(v=T)}return{[m]:h,[f]:v}}}},dS=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,s;const{placement:o,rects:i,platform:a,elements:l}=t,{apply:c=()=>{},...u}=sn(e,t),d=await a.detectOverflow(t,u),f=rn(o),m=Es(o),h=Ht(o)==="y",{width:v,height:g}=i.floating;let x,b;f==="top"||f==="bottom"?(x=f,b=m===(await(a.isRTL==null?void 0:a.isRTL(l.floating))?"start":"end")?"left":"right"):(b=f,x=m==="end"?"top":"bottom");const y=g-d.top-d.bottom,k=v-d.left-d.right,j=yn(g-d[x],y),C=yn(v-d[b],k),T=!t.middlewareData.shift;let N=j,z=C;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(z=k),(s=t.middlewareData.shift)!=null&&s.enabled.y&&(N=y),T&&!m){const O=vt(d.left,0),D=vt(d.right,0),E=vt(d.top,0),L=vt(d.bottom,0);h?z=v-2*(O!==0||D!==0?O+D:vt(d.left,d.right)):N=g-2*(E!==0||L!==0?E+L:vt(d.top,d.bottom))}await c({...t,availableWidth:z,availableHeight:N});const A=await a.getDimensions(l.floating);return v!==A.width||g!==A.height?{reset:{rects:!0}}:{}}}};function Xo(){return typeof window<"u"}function As(e){return Kp(e)?(e.nodeName||"").toLowerCase():"#document"}function kt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Jt(e){var t;return(t=(Kp(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Kp(e){return Xo()?e instanceof Node||e instanceof kt(e).Node:!1}function Dt(e){return Xo()?e instanceof Element||e instanceof kt(e).Element:!1}function Gt(e){return Xo()?e instanceof HTMLElement||e instanceof kt(e).HTMLElement:!1}function cu(e){return!Xo()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof kt(e).ShadowRoot}const fS=new Set(["inline","contents"]);function ur(e){const{overflow:t,overflowX:n,overflowY:s,display:o}=$t(e);return/auto|scroll|overlay|hidden|clip/.test(t+s+n)&&!fS.has(o)}const pS=new Set(["table","td","th"]);function hS(e){return pS.has(As(e))}const mS=[":popover-open",":modal"];function Qo(e){return mS.some(t=>{try{return e.matches(t)}catch{return!1}})}const gS=["transform","translate","scale","rotate","perspective"],xS=["transform","translate","scale","rotate","perspective","filter"],bS=["paint","layout","strict","content"];function Ml(e){const t=Ll(),n=Dt(e)?$t(e):e;return gS.some(s=>n[s]?n[s]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||xS.some(s=>(n.willChange||"").includes(s))||bS.some(s=>(n.contain||"").includes(s))}function vS(e){let t=wn(e);for(;Gt(t)&&!ws(t);){if(Ml(t))return t;if(Qo(t))return null;t=wn(t)}return null}function Ll(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const yS=new Set(["html","body","#document"]);function ws(e){return yS.has(As(e))}function $t(e){return kt(e).getComputedStyle(e)}function ei(e){return Dt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function wn(e){if(As(e)==="html")return e;const t=e.assignedSlot||e.parentNode||cu(e)&&e.host||Jt(e);return cu(t)?t.host:t}function Jp(e){const t=wn(e);return ws(t)?e.ownerDocument?e.ownerDocument.body:e.body:Gt(t)&&ur(t)?t:Jp(t)}function Xs(e,t,n){var s;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=Jp(e),i=o===((s=e.ownerDocument)==null?void 0:s.body),a=kt(o);if(i){const l=xa(a);return t.concat(a,a.visualViewport||[],ur(o)?o:[],l&&n?Xs(l):[])}return t.concat(o,Xs(o,[],n))}function xa(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Yp(e){const t=$t(e);let n=parseFloat(t.width)||0,s=parseFloat(t.height)||0;const o=Gt(e),i=o?e.offsetWidth:n,a=o?e.offsetHeight:s,l=mo(n)!==i||mo(s)!==a;return l&&(n=i,s=a),{width:n,height:s,$:l}}function Dl(e){return Dt(e)?e:e.contextElement}function ps(e){const t=Dl(e);if(!Gt(t))return Zt(1);const n=t.getBoundingClientRect(),{width:s,height:o,$:i}=Yp(t);let a=(i?mo(n.width):n.width)/s,l=(i?mo(n.height):n.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!l||!Number.isFinite(l))&&(l=1),{x:a,y:l}}const wS=Zt(0);function Xp(e){const t=kt(e);return!Ll()||!t.visualViewport?wS:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function _S(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==kt(e)?!1:t}function $n(e,t,n,s){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=Dl(e);let a=Zt(1);t&&(s?Dt(s)&&(a=ps(s)):a=ps(e));const l=_S(i,n,s)?Xp(i):Zt(0);let c=(o.left+l.x)/a.x,u=(o.top+l.y)/a.y,d=o.width/a.x,f=o.height/a.y;if(i){const m=kt(i),h=s&&Dt(s)?kt(s):s;let v=m,g=xa(v);for(;g&&s&&h!==v;){const x=ps(g),b=g.getBoundingClientRect(),y=$t(g),k=b.left+(g.clientLeft+parseFloat(y.paddingLeft))*x.x,j=b.top+(g.clientTop+parseFloat(y.paddingTop))*x.y;c*=x.x,u*=x.y,d*=x.x,f*=x.y,c+=k,u+=j,v=kt(g),g=xa(v)}}return xo({width:d,height:f,x:c,y:u})}function ti(e,t){const n=ei(e).scrollLeft;return t?t.left+n:$n(Jt(e)).left+n}function Qp(e,t){const n=e.getBoundingClientRect(),s=n.left+t.scrollLeft-ti(e,n),o=n.top+t.scrollTop;return{x:s,y:o}}function kS(e){let{elements:t,rect:n,offsetParent:s,strategy:o}=e;const i=o==="fixed",a=Jt(s),l=t?Qo(t.floating):!1;if(s===a||l&&i)return n;let c={scrollLeft:0,scrollTop:0},u=Zt(1);const d=Zt(0),f=Gt(s);if((f||!f&&!i)&&((As(s)!=="body"||ur(a))&&(c=ei(s)),Gt(s))){const h=$n(s);u=ps(s),d.x=h.x+s.clientLeft,d.y=h.y+s.clientTop}const m=a&&!f&&!i?Qp(a,c):Zt(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-c.scrollLeft*u.x+d.x+m.x,y:n.y*u.y-c.scrollTop*u.y+d.y+m.y}}function jS(e){return Array.from(e.getClientRects())}function SS(e){const t=Jt(e),n=ei(e),s=e.ownerDocument.body,o=vt(t.scrollWidth,t.clientWidth,s.scrollWidth,s.clientWidth),i=vt(t.scrollHeight,t.clientHeight,s.scrollHeight,s.clientHeight);let a=-n.scrollLeft+ti(e);const l=-n.scrollTop;return $t(s).direction==="rtl"&&(a+=vt(t.clientWidth,s.clientWidth)-o),{width:o,height:i,x:a,y:l}}const uu=25;function CS(e,t){const n=kt(e),s=Jt(e),o=n.visualViewport;let i=s.clientWidth,a=s.clientHeight,l=0,c=0;if(o){i=o.width,a=o.height;const d=Ll();(!d||d&&t==="fixed")&&(l=o.offsetLeft,c=o.offsetTop)}const u=ti(s);if(u<=0){const d=s.ownerDocument,f=d.body,m=getComputedStyle(f),h=d.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,v=Math.abs(s.clientWidth-f.clientWidth-h);v<=uu&&(i-=v)}else u<=uu&&(i+=u);return{width:i,height:a,x:l,y:c}}const NS=new Set(["absolute","fixed"]);function TS(e,t){const n=$n(e,!0,t==="fixed"),s=n.top+e.clientTop,o=n.left+e.clientLeft,i=Gt(e)?ps(e):Zt(1),a=e.clientWidth*i.x,l=e.clientHeight*i.y,c=o*i.x,u=s*i.y;return{width:a,height:l,x:c,y:u}}function du(e,t,n){let s;if(t==="viewport")s=CS(e,n);else if(t==="document")s=SS(Jt(e));else if(Dt(t))s=TS(t,n);else{const o=Xp(e);s={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return xo(s)}function eh(e,t){const n=wn(e);return n===t||!Dt(n)||ws(n)?!1:$t(n).position==="fixed"||eh(n,t)}function ES(e,t){const n=t.get(e);if(n)return n;let s=Xs(e,[],!1).filter(l=>Dt(l)&&As(l)!=="body"),o=null;const i=$t(e).position==="fixed";let a=i?wn(e):e;for(;Dt(a)&&!ws(a);){const l=$t(a),c=Ml(a);!c&&l.position==="fixed"&&(o=null),(i?!c&&!o:!c&&l.position==="static"&&!!o&&NS.has(o.position)||ur(a)&&!c&&eh(e,a))?s=s.filter(d=>d!==a):o=l,a=wn(a)}return t.set(e,s),s}function AS(e){let{element:t,boundary:n,rootBoundary:s,strategy:o}=e;const a=[...n==="clippingAncestors"?Qo(t)?[]:ES(t,this._c):[].concat(n),s],l=a[0],c=a.reduce((u,d)=>{const f=du(t,d,o);return u.top=vt(f.top,u.top),u.right=yn(f.right,u.right),u.bottom=yn(f.bottom,u.bottom),u.left=vt(f.left,u.left),u},du(t,l,o));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function RS(e){const{width:t,height:n}=Yp(e);return{width:t,height:n}}function IS(e,t,n){const s=Gt(t),o=Jt(t),i=n==="fixed",a=$n(e,!0,i,t);let l={scrollLeft:0,scrollTop:0};const c=Zt(0);function u(){c.x=ti(o)}if(s||!s&&!i)if((As(t)!=="body"||ur(o))&&(l=ei(t)),s){const h=$n(t,!0,i,t);c.x=h.x+t.clientLeft,c.y=h.y+t.clientTop}else o&&u();i&&!s&&o&&u();const d=o&&!s&&!i?Qp(o,l):Zt(0),f=a.left+l.scrollLeft-c.x-d.x,m=a.top+l.scrollTop-c.y-d.y;return{x:f,y:m,width:a.width,height:a.height}}function Ai(e){return $t(e).position==="static"}function fu(e,t){if(!Gt(e)||$t(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Jt(e)===n&&(n=n.ownerDocument.body),n}function th(e,t){const n=kt(e);if(Qo(e))return n;if(!Gt(e)){let o=wn(e);for(;o&&!ws(o);){if(Dt(o)&&!Ai(o))return o;o=wn(o)}return n}let s=fu(e,t);for(;s&&hS(s)&&Ai(s);)s=fu(s,t);return s&&ws(s)&&Ai(s)&&!Ml(s)?n:s||vS(e)||n}const zS=async function(e){const t=this.getOffsetParent||th,n=this.getDimensions,s=await n(e.floating);return{reference:IS(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:s.width,height:s.height}}};function OS(e){return $t(e).direction==="rtl"}const PS={convertOffsetParentRelativeRectToViewportRelativeRect:kS,getDocumentElement:Jt,getClippingRect:AS,getOffsetParent:th,getElementRects:zS,getClientRects:jS,getDimensions:RS,getScale:ps,isElement:Dt,isRTL:OS};function nh(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function MS(e,t){let n=null,s;const o=Jt(e);function i(){var l;clearTimeout(s),(l=n)==null||l.disconnect(),n=null}function a(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),i();const u=e.getBoundingClientRect(),{left:d,top:f,width:m,height:h}=u;if(l||t(),!m||!h)return;const v=Rr(f),g=Rr(o.clientWidth-(d+m)),x=Rr(o.clientHeight-(f+h)),b=Rr(d),k={rootMargin:-v+"px "+-g+"px "+-x+"px "+-b+"px",threshold:vt(0,yn(1,c))||1};let j=!0;function C(T){const N=T[0].intersectionRatio;if(N!==c){if(!j)return a();N?a(!1,N):s=setTimeout(()=>{a(!1,1e-7)},1e3)}N===1&&!nh(u,e.getBoundingClientRect())&&a(),j=!1}try{n=new IntersectionObserver(C,{...k,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,k)}n.observe(e)}return a(!0),i}function LS(e,t,n,s){s===void 0&&(s={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=s,u=Dl(e),d=o||i?[...u?Xs(u):[],...Xs(t)]:[];d.forEach(b=>{o&&b.addEventListener("scroll",n,{passive:!0}),i&&b.addEventListener("resize",n)});const f=u&&l?MS(u,n):null;let m=-1,h=null;a&&(h=new ResizeObserver(b=>{let[y]=b;y&&y.target===u&&h&&(h.unobserve(t),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var k;(k=h)==null||k.observe(t)})),n()}),u&&!c&&h.observe(u),h.observe(t));let v,g=c?$n(e):null;c&&x();function x(){const b=$n(e);g&&!nh(g,b)&&n(),g=b,v=requestAnimationFrame(x)}return n(),()=>{var b;d.forEach(y=>{o&&y.removeEventListener("scroll",n),i&&y.removeEventListener("resize",n)}),f?.(),(b=h)==null||b.disconnect(),h=null,c&&cancelAnimationFrame(v)}}const DS=lS,$S=cS,FS=oS,BS=dS,US=iS,pu=rS,WS=uS,HS=(e,t,n)=>{const s=new Map,o={platform:PS,...n},i={...o.platform,_c:s};return sS(e,t,{...o,platform:i})};var VS=typeof document<"u",qS=function(){},Jr=VS?p.useLayoutEffect:qS;function bo(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,s,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(s=n;s--!==0;)if(!bo(e[s],t[s]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(s=n;s--!==0;)if(!{}.hasOwnProperty.call(t,o[s]))return!1;for(s=n;s--!==0;){const i=o[s];if(!(i==="_owner"&&e.$$typeof)&&!bo(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function sh(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function hu(e,t){const n=sh(e);return Math.round(t*n)/n}function Ri(e){const t=p.useRef(e);return Jr(()=>{t.current=e}),t}function ZS(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:s=[],platform:o,elements:{reference:i,floating:a}={},transform:l=!0,whileElementsMounted:c,open:u}=e,[d,f]=p.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[m,h]=p.useState(s);bo(m,s)||h(s);const[v,g]=p.useState(null),[x,b]=p.useState(null),y=p.useCallback(H=>{H!==T.current&&(T.current=H,g(H))},[]),k=p.useCallback(H=>{H!==N.current&&(N.current=H,b(H))},[]),j=i||v,C=a||x,T=p.useRef(null),N=p.useRef(null),z=p.useRef(d),A=c!=null,O=Ri(c),D=Ri(o),E=Ri(u),L=p.useCallback(()=>{if(!T.current||!N.current)return;const H={placement:t,strategy:n,middleware:m};D.current&&(H.platform=D.current),HS(T.current,N.current,H).then(Z=>{const ue={...Z,isPositioned:E.current!==!1};w.current&&!bo(z.current,ue)&&(z.current=ue,or.flushSync(()=>{f(ue)}))})},[m,t,n,D,E]);Jr(()=>{u===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,f(H=>({...H,isPositioned:!1})))},[u]);const w=p.useRef(!1);Jr(()=>(w.current=!0,()=>{w.current=!1}),[]),Jr(()=>{if(j&&(T.current=j),C&&(N.current=C),j&&C){if(O.current)return O.current(j,C,L);L()}},[j,C,L,O,A]);const $=p.useMemo(()=>({reference:T,floating:N,setReference:y,setFloating:k}),[y,k]),ee=p.useMemo(()=>({reference:j,floating:C}),[j,C]),F=p.useMemo(()=>{const H={position:n,left:0,top:0};if(!ee.floating)return H;const Z=hu(ee.floating,d.x),ue=hu(ee.floating,d.y);return l?{...H,transform:"translate("+Z+"px, "+ue+"px)",...sh(ee.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:Z,top:ue}},[n,l,ee.floating,d.x,d.y]);return p.useMemo(()=>({...d,update:L,refs:$,elements:ee,floatingStyles:F}),[d,L,$,ee,F])}const GS=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:s,padding:o}=typeof e=="function"?e(n):e;return s&&t(s)?s.current!=null?pu({element:s.current,padding:o}).fn(n):{}:s?pu({element:s,padding:o}).fn(n):{}}}},KS=(e,t)=>({...DS(e),options:[e,t]}),JS=(e,t)=>({...$S(e),options:[e,t]}),YS=(e,t)=>({...WS(e),options:[e,t]}),XS=(e,t)=>({...FS(e),options:[e,t]}),QS=(e,t)=>({...BS(e),options:[e,t]}),eC=(e,t)=>({...US(e),options:[e,t]}),tC=(e,t)=>({...GS(e),options:[e,t]});var nC="Arrow",rh=p.forwardRef((e,t)=>{const{children:n,width:s=10,height:o=5,...i}=e;return r.jsx(Re.svg,{...i,ref:t,width:s,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:r.jsx("polygon",{points:"0,0 30,0 15,10"})})});rh.displayName=nC;var sC=rh,$l="Popper",[oh,ni]=an($l),[rC,ih]=oh($l),ah=e=>{const{__scopePopper:t,children:n}=e,[s,o]=p.useState(null);return r.jsx(rC,{scope:t,anchor:s,onAnchorChange:o,children:n})};ah.displayName=$l;var lh="PopperAnchor",ch=p.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:s,...o}=e,i=ih(lh,n),a=p.useRef(null),l=De(t,a),c=p.useRef(null);return p.useEffect(()=>{const u=c.current;c.current=s?.current||a.current,u!==c.current&&i.onAnchorChange(c.current)}),s?null:r.jsx(Re.div,{...o,ref:l})});ch.displayName=lh;var Fl="PopperContent",[oC,iC]=oh(Fl),uh=p.forwardRef((e,t)=>{const{__scopePopper:n,side:s="bottom",sideOffset:o=0,align:i="center",alignOffset:a=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:u=[],collisionPadding:d=0,sticky:f="partial",hideWhenDetached:m=!1,updatePositionStrategy:h="optimized",onPlaced:v,...g}=e,x=ih(Fl,n),[b,y]=p.useState(null),k=De(t,oe=>y(oe)),[j,C]=p.useState(null),T=Hj(j),N=T?.width??0,z=T?.height??0,A=s+(i!=="center"?"-"+i:""),O=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},D=Array.isArray(u)?u:[u],E=D.length>0,L={padding:O,boundary:D.filter(lC),altBoundary:E},{refs:w,floatingStyles:$,placement:ee,isPositioned:F,middlewareData:H}=ZS({strategy:"fixed",placement:A,whileElementsMounted:(...oe)=>LS(...oe,{animationFrame:h==="always"}),elements:{reference:x.anchor},middleware:[KS({mainAxis:o+z,alignmentAxis:a}),c&&JS({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?YS():void 0,...L}),c&&XS({...L}),QS({...L,apply:({elements:oe,rects:pe,availableWidth:ge,availableHeight:me})=>{const{width:xe,height:ke}=pe.reference,Ae=oe.floating.style;Ae.setProperty("--radix-popper-available-width",`${ge}px`),Ae.setProperty("--radix-popper-available-height",`${me}px`),Ae.setProperty("--radix-popper-anchor-width",`${xe}px`),Ae.setProperty("--radix-popper-anchor-height",`${ke}px`)}}),j&&tC({element:j,padding:l}),cC({arrowWidth:N,arrowHeight:z}),m&&eC({strategy:"referenceHidden",...L})]}),[Z,ue]=ph(ee),V=dt(v);et(()=>{F&&V?.()},[F,V]);const W=H.arrow?.x,ce=H.arrow?.y,U=H.arrow?.centerOffset!==0,[Q,Ce]=p.useState();return et(()=>{b&&Ce(window.getComputedStyle(b).zIndex)},[b]),r.jsx("div",{ref:w.setFloating,"data-radix-popper-content-wrapper":"",style:{...$,transform:F?$.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Q,"--radix-popper-transform-origin":[H.transformOrigin?.x,H.transformOrigin?.y].join(" "),...H.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:r.jsx(oC,{scope:n,placedSide:Z,onArrowChange:C,arrowX:W,arrowY:ce,shouldHideArrow:U,children:r.jsx(Re.div,{"data-side":Z,"data-align":ue,...g,ref:k,style:{...g.style,animation:F?void 0:"none"}})})})});uh.displayName=Fl;var dh="PopperArrow",aC={top:"bottom",right:"left",bottom:"top",left:"right"},fh=p.forwardRef(function(t,n){const{__scopePopper:s,...o}=t,i=iC(dh,s),a=aC[i.placedSide];return r.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:r.jsx(sC,{...o,ref:n,style:{...o.style,display:"block"}})})});fh.displayName=dh;function lC(e){return e!==null}var cC=e=>({name:"transformOrigin",options:e,fn(t){const{placement:n,rects:s,middlewareData:o}=t,a=o.arrow?.centerOffset!==0,l=a?0:e.arrowWidth,c=a?0:e.arrowHeight,[u,d]=ph(n),f={start:"0%",center:"50%",end:"100%"}[d],m=(o.arrow?.x??0)+l/2,h=(o.arrow?.y??0)+c/2;let v="",g="";return u==="bottom"?(v=a?f:`${m}px`,g=`${-c}px`):u==="top"?(v=a?f:`${m}px`,g=`${s.floating.height+c}px`):u==="right"?(v=`${-c}px`,g=a?f:`${h}px`):u==="left"&&(v=`${s.floating.width+c}px`,g=a?f:`${h}px`),{data:{x:v,y:g}}}});function ph(e){const[t,n="center"]=e.split("-");return[t,n]}var hh=ah,mh=ch,gh=uh,xh=fh,Ii="rovingFocusGroup.onEntryFocus",uC={bubbles:!1,cancelable:!0},dr="RovingFocusGroup",[ba,bh,dC]=Up(dr),[fC,vh]=an(dr,[dC]),[pC,hC]=fC(dr),yh=p.forwardRef((e,t)=>r.jsx(ba.Provider,{scope:e.__scopeRovingFocusGroup,children:r.jsx(ba.Slot,{scope:e.__scopeRovingFocusGroup,children:r.jsx(mC,{...e,ref:t})})}));yh.displayName=dr;var mC=p.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:s,loop:o=!1,dir:i,currentTabStopId:a,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:c,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,m=p.useRef(null),h=De(t,m),v=Yo(i),[g,x]=Ln({prop:a,defaultProp:l??null,onChange:c,caller:dr}),[b,y]=p.useState(!1),k=dt(u),j=bh(n),C=p.useRef(!1),[T,N]=p.useState(0);return p.useEffect(()=>{const z=m.current;if(z)return z.addEventListener(Ii,k),()=>z.removeEventListener(Ii,k)},[k]),r.jsx(pC,{scope:n,orientation:s,dir:v,loop:o,currentTabStopId:g,onItemFocus:p.useCallback(z=>x(z),[x]),onItemShiftTab:p.useCallback(()=>y(!0),[]),onFocusableItemAdd:p.useCallback(()=>N(z=>z+1),[]),onFocusableItemRemove:p.useCallback(()=>N(z=>z-1),[]),children:r.jsx(Re.div,{tabIndex:b||T===0?-1:0,"data-orientation":s,...f,ref:h,style:{outline:"none",...e.style},onMouseDown:Ne(e.onMouseDown,()=>{C.current=!0}),onFocus:Ne(e.onFocus,z=>{const A=!C.current;if(z.target===z.currentTarget&&A&&!b){const O=new CustomEvent(Ii,uC);if(z.currentTarget.dispatchEvent(O),!O.defaultPrevented){const D=j().filter(ee=>ee.focusable),E=D.find(ee=>ee.active),L=D.find(ee=>ee.id===g),$=[E,L,...D].filter(Boolean).map(ee=>ee.ref.current);kh($,d)}}C.current=!1}),onBlur:Ne(e.onBlur,()=>y(!1))})})}),wh="RovingFocusGroupItem",_h=p.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:s=!0,active:o=!1,tabStopId:i,children:a,...l}=e,c=qt(),u=i||c,d=hC(wh,n),f=d.currentTabStopId===u,m=bh(n),{onFocusableItemAdd:h,onFocusableItemRemove:v,currentTabStopId:g}=d;return p.useEffect(()=>{if(s)return h(),()=>v()},[s,h,v]),r.jsx(ba.ItemSlot,{scope:n,id:u,focusable:s,active:o,children:r.jsx(Re.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...l,ref:t,onMouseDown:Ne(e.onMouseDown,x=>{s?d.onItemFocus(u):x.preventDefault()}),onFocus:Ne(e.onFocus,()=>d.onItemFocus(u)),onKeyDown:Ne(e.onKeyDown,x=>{if(x.key==="Tab"&&x.shiftKey){d.onItemShiftTab();return}if(x.target!==x.currentTarget)return;const b=bC(x,d.orientation,d.dir);if(b!==void 0){if(x.metaKey||x.ctrlKey||x.altKey||x.shiftKey)return;x.preventDefault();let k=m().filter(j=>j.focusable).map(j=>j.ref.current);if(b==="last")k.reverse();else if(b==="prev"||b==="next"){b==="prev"&&k.reverse();const j=k.indexOf(x.currentTarget);k=d.loop?vC(k,j+1):k.slice(j+1)}setTimeout(()=>kh(k))}}),children:typeof a=="function"?a({isCurrentTabStop:f,hasTabStop:g!=null}):a})})});_h.displayName=wh;var gC={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function xC(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function bC(e,t,n){const s=xC(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(s))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(s)))return gC[s]}function kh(e,t=!1){const n=document.activeElement;for(const s of e)if(s===n||(s.focus({preventScroll:t}),document.activeElement!==n))return}function vC(e,t){return e.map((n,s)=>e[(t+s)%e.length])}var yC=yh,wC=_h;function va(e,[t,n]){return Math.min(n,Math.max(t,e))}function _C(e,t){return p.useReducer((n,s)=>t[n][s]??n,e)}var Bl="ScrollArea",[jh]=an(Bl),[kC,Rt]=jh(Bl),Sh=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,type:s="hover",dir:o,scrollHideDelay:i=600,...a}=e,[l,c]=p.useState(null),[u,d]=p.useState(null),[f,m]=p.useState(null),[h,v]=p.useState(null),[g,x]=p.useState(null),[b,y]=p.useState(0),[k,j]=p.useState(0),[C,T]=p.useState(!1),[N,z]=p.useState(!1),A=De(t,D=>c(D)),O=Yo(o);return r.jsx(kC,{scope:n,type:s,dir:O,scrollHideDelay:i,scrollArea:l,viewport:u,onViewportChange:d,content:f,onContentChange:m,scrollbarX:h,onScrollbarXChange:v,scrollbarXEnabled:C,onScrollbarXEnabledChange:T,scrollbarY:g,onScrollbarYChange:x,scrollbarYEnabled:N,onScrollbarYEnabledChange:z,onCornerWidthChange:y,onCornerHeightChange:j,children:r.jsx(Re.div,{dir:O,...a,ref:A,style:{position:"relative","--radix-scroll-area-corner-width":b+"px","--radix-scroll-area-corner-height":k+"px",...e.style}})})});Sh.displayName=Bl;var Ch="ScrollAreaViewport",Nh=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,children:s,nonce:o,...i}=e,a=Rt(Ch,n),l=p.useRef(null),c=De(t,l,a.onViewportChange);return r.jsxs(r.Fragment,{children:[r.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),r.jsx(Re.div,{"data-radix-scroll-area-viewport":"",...i,ref:c,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:r.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:s})})]})});Nh.displayName=Ch;var Yt="ScrollAreaScrollbar",Th=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Rt(Yt,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:a}=o,l=e.orientation==="horizontal";return p.useEffect(()=>(l?i(!0):a(!0),()=>{l?i(!1):a(!1)}),[l,i,a]),o.type==="hover"?r.jsx(jC,{...s,ref:t,forceMount:n}):o.type==="scroll"?r.jsx(SC,{...s,ref:t,forceMount:n}):o.type==="auto"?r.jsx(Eh,{...s,ref:t,forceMount:n}):o.type==="always"?r.jsx(Ul,{...s,ref:t}):null});Th.displayName=Yt;var jC=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Rt(Yt,e.__scopeScrollArea),[i,a]=p.useState(!1);return p.useEffect(()=>{const l=o.scrollArea;let c=0;if(l){const u=()=>{window.clearTimeout(c),a(!0)},d=()=>{c=window.setTimeout(()=>a(!1),o.scrollHideDelay)};return l.addEventListener("pointerenter",u),l.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),l.removeEventListener("pointerenter",u),l.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),r.jsx(At,{present:n||i,children:r.jsx(Eh,{"data-state":i?"visible":"hidden",...s,ref:t})})}),SC=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Rt(Yt,e.__scopeScrollArea),i=e.orientation==="horizontal",a=ri(()=>c("SCROLL_END"),100),[l,c]=_C("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return p.useEffect(()=>{if(l==="idle"){const u=window.setTimeout(()=>c("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(u)}},[l,o.scrollHideDelay,c]),p.useEffect(()=>{const u=o.viewport,d=i?"scrollLeft":"scrollTop";if(u){let f=u[d];const m=()=>{const h=u[d];f!==h&&(c("SCROLL"),a()),f=h};return u.addEventListener("scroll",m),()=>u.removeEventListener("scroll",m)}},[o.viewport,i,c,a]),r.jsx(At,{present:n||l!=="hidden",children:r.jsx(Ul,{"data-state":l==="hidden"?"hidden":"visible",...s,ref:t,onPointerEnter:Ne(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:Ne(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),Eh=p.forwardRef((e,t)=>{const n=Rt(Yt,e.__scopeScrollArea),{forceMount:s,...o}=e,[i,a]=p.useState(!1),l=e.orientation==="horizontal",c=ri(()=>{if(n.viewport){const u=n.viewport.offsetWidth<n.viewport.scrollWidth,d=n.viewport.offsetHeight<n.viewport.scrollHeight;a(l?u:d)}},10);return _s(n.viewport,c),_s(n.content,c),r.jsx(At,{present:s||i,children:r.jsx(Ul,{"data-state":i?"visible":"hidden",...o,ref:t})})}),Ul=p.forwardRef((e,t)=>{const{orientation:n="vertical",...s}=e,o=Rt(Yt,e.__scopeScrollArea),i=p.useRef(null),a=p.useRef(0),[l,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=Oh(l.viewport,l.content),d={...s,sizes:l,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:m=>i.current=m,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:m=>a.current=m};function f(m,h){return RC(m,a.current,l,h)}return n==="horizontal"?r.jsx(CC,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const m=o.viewport.scrollLeft,h=mu(m,l,o.dir);i.current.style.transform=`translate3d(${h}px, 0, 0)`}},onWheelScroll:m=>{o.viewport&&(o.viewport.scrollLeft=m)},onDragScroll:m=>{o.viewport&&(o.viewport.scrollLeft=f(m,o.dir))}}):n==="vertical"?r.jsx(NC,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&i.current){const m=o.viewport.scrollTop,h=mu(m,l);i.current.style.transform=`translate3d(0, ${h}px, 0)`}},onWheelScroll:m=>{o.viewport&&(o.viewport.scrollTop=m)},onDragScroll:m=>{o.viewport&&(o.viewport.scrollTop=f(m))}}):null}),CC=p.forwardRef((e,t)=>{const{sizes:n,onSizesChange:s,...o}=e,i=Rt(Yt,e.__scopeScrollArea),[a,l]=p.useState(),c=p.useRef(null),u=De(t,c,i.onScrollbarXChange);return p.useEffect(()=>{c.current&&l(getComputedStyle(c.current))},[c]),r.jsx(Rh,{"data-orientation":"horizontal",...o,ref:u,sizes:n,style:{bottom:0,left:i.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:i.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":si(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,f)=>{if(i.viewport){const m=i.viewport.scrollLeft+d.deltaX;e.onWheelScroll(m),Mh(m,f)&&d.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&s({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:yo(a.paddingLeft),paddingEnd:yo(a.paddingRight)}})}})}),NC=p.forwardRef((e,t)=>{const{sizes:n,onSizesChange:s,...o}=e,i=Rt(Yt,e.__scopeScrollArea),[a,l]=p.useState(),c=p.useRef(null),u=De(t,c,i.onScrollbarYChange);return p.useEffect(()=>{c.current&&l(getComputedStyle(c.current))},[c]),r.jsx(Rh,{"data-orientation":"vertical",...o,ref:u,sizes:n,style:{top:0,right:i.dir==="ltr"?0:void 0,left:i.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":si(n)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,f)=>{if(i.viewport){const m=i.viewport.scrollTop+d.deltaY;e.onWheelScroll(m),Mh(m,f)&&d.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&s({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:yo(a.paddingTop),paddingEnd:yo(a.paddingBottom)}})}})}),[TC,Ah]=jh(Yt),Rh=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,sizes:s,hasThumb:o,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:f,...m}=e,h=Rt(Yt,n),[v,g]=p.useState(null),x=De(t,A=>g(A)),b=p.useRef(null),y=p.useRef(""),k=h.viewport,j=s.content-s.viewport,C=dt(d),T=dt(c),N=ri(f,10);function z(A){if(b.current){const O=A.clientX-b.current.left,D=A.clientY-b.current.top;u({x:O,y:D})}}return p.useEffect(()=>{const A=O=>{const D=O.target;v?.contains(D)&&C(O,j)};return document.addEventListener("wheel",A,{passive:!1}),()=>document.removeEventListener("wheel",A,{passive:!1})},[k,v,j,C]),p.useEffect(T,[s,T]),_s(v,N),_s(h.content,N),r.jsx(TC,{scope:n,scrollbar:v,hasThumb:o,onThumbChange:dt(i),onThumbPointerUp:dt(a),onThumbPositionChange:T,onThumbPointerDown:dt(l),children:r.jsx(Re.div,{...m,ref:x,style:{position:"absolute",...m.style},onPointerDown:Ne(e.onPointerDown,A=>{A.button===0&&(A.target.setPointerCapture(A.pointerId),b.current=v.getBoundingClientRect(),y.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",h.viewport&&(h.viewport.style.scrollBehavior="auto"),z(A))}),onPointerMove:Ne(e.onPointerMove,z),onPointerUp:Ne(e.onPointerUp,A=>{const O=A.target;O.hasPointerCapture(A.pointerId)&&O.releasePointerCapture(A.pointerId),document.body.style.webkitUserSelect=y.current,h.viewport&&(h.viewport.style.scrollBehavior=""),b.current=null})})})}),vo="ScrollAreaThumb",Ih=p.forwardRef((e,t)=>{const{forceMount:n,...s}=e,o=Ah(vo,e.__scopeScrollArea);return r.jsx(At,{present:n||o.hasThumb,children:r.jsx(EC,{ref:t,...s})})}),EC=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,style:s,...o}=e,i=Rt(vo,n),a=Ah(vo,n),{onThumbPositionChange:l}=a,c=De(t,f=>a.onThumbChange(f)),u=p.useRef(void 0),d=ri(()=>{u.current&&(u.current(),u.current=void 0)},100);return p.useEffect(()=>{const f=i.viewport;if(f){const m=()=>{if(d(),!u.current){const h=IC(f,l);u.current=h,l()}};return l(),f.addEventListener("scroll",m),()=>f.removeEventListener("scroll",m)}},[i.viewport,d,l]),r.jsx(Re.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...s},onPointerDownCapture:Ne(e.onPointerDownCapture,f=>{const h=f.target.getBoundingClientRect(),v=f.clientX-h.left,g=f.clientY-h.top;a.onThumbPointerDown({x:v,y:g})}),onPointerUp:Ne(e.onPointerUp,a.onThumbPointerUp)})});Ih.displayName=vo;var Wl="ScrollAreaCorner",zh=p.forwardRef((e,t)=>{const n=Rt(Wl,e.__scopeScrollArea),s=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&s?r.jsx(AC,{...e,ref:t}):null});zh.displayName=Wl;var AC=p.forwardRef((e,t)=>{const{__scopeScrollArea:n,...s}=e,o=Rt(Wl,n),[i,a]=p.useState(0),[l,c]=p.useState(0),u=!!(i&&l);return _s(o.scrollbarX,()=>{const d=o.scrollbarX?.offsetHeight||0;o.onCornerHeightChange(d),c(d)}),_s(o.scrollbarY,()=>{const d=o.scrollbarY?.offsetWidth||0;o.onCornerWidthChange(d),a(d)}),u?r.jsx(Re.div,{...s,ref:t,style:{width:i,height:l,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function yo(e){return e?parseInt(e,10):0}function Oh(e,t){const n=e/t;return isNaN(n)?0:n}function si(e){const t=Oh(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,s=(e.scrollbar.size-n)*t;return Math.max(s,18)}function RC(e,t,n,s="ltr"){const o=si(n),i=o/2,a=t||i,l=o-a,c=n.scrollbar.paddingStart+a,u=n.scrollbar.size-n.scrollbar.paddingEnd-l,d=n.content-n.viewport,f=s==="ltr"?[0,d]:[d*-1,0];return Ph([c,u],f)(e)}function mu(e,t,n="ltr"){const s=si(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,a=t.content-t.viewport,l=i-s,c=n==="ltr"?[0,a]:[a*-1,0],u=va(e,c);return Ph([0,a],[0,l])(u)}function Ph(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const s=(t[1]-t[0])/(e[1]-e[0]);return t[0]+s*(n-e[0])}}function Mh(e,t){return e>0&&e<t}var IC=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},s=0;return(function o(){const i={left:e.scrollLeft,top:e.scrollTop},a=n.left!==i.left,l=n.top!==i.top;(a||l)&&t(),n=i,s=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(s)};function ri(e,t){const n=dt(e),s=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(s.current),[]),p.useCallback(()=>{window.clearTimeout(s.current),s.current=window.setTimeout(n,t)},[n,t])}function _s(e,t){const n=dt(t);et(()=>{let s=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(s),s=window.requestAnimationFrame(n)});return o.observe(e),()=>{window.cancelAnimationFrame(s),o.unobserve(e)}}},[e,n])}var zC=Sh,OC=Nh,PC=zh,MC=[" ","Enter","ArrowUp","ArrowDown"],LC=[" ","Enter"],Fn="Select",[oi,ii,DC]=Up(Fn),[Rs]=an(Fn,[DC,ni]),ai=ni(),[$C,Sn]=Rs(Fn),[FC,BC]=Rs(Fn),Lh=e=>{const{__scopeSelect:t,children:n,open:s,defaultOpen:o,onOpenChange:i,value:a,defaultValue:l,onValueChange:c,dir:u,name:d,autoComplete:f,disabled:m,required:h,form:v}=e,g=ai(t),[x,b]=p.useState(null),[y,k]=p.useState(null),[j,C]=p.useState(!1),T=Yo(u),[N,z]=Ln({prop:s,defaultProp:o??!1,onChange:i,caller:Fn}),[A,O]=Ln({prop:a,defaultProp:l,onChange:c,caller:Fn}),D=p.useRef(null),E=x?v||!!x.closest("form"):!0,[L,w]=p.useState(new Set),$=Array.from(L).map(ee=>ee.props.value).join(";");return r.jsx(hh,{...g,children:r.jsxs($C,{required:h,scope:t,trigger:x,onTriggerChange:b,valueNode:y,onValueNodeChange:k,valueNodeHasChildren:j,onValueNodeHasChildrenChange:C,contentId:qt(),value:A,onValueChange:O,open:N,onOpenChange:z,dir:T,triggerPointerDownPosRef:D,disabled:m,children:[r.jsx(oi.Provider,{scope:t,children:r.jsx(FC,{scope:e.__scopeSelect,onNativeOptionAdd:p.useCallback(ee=>{w(F=>new Set(F).add(ee))},[]),onNativeOptionRemove:p.useCallback(ee=>{w(F=>{const H=new Set(F);return H.delete(ee),H})},[]),children:n})}),E?r.jsxs(om,{"aria-hidden":!0,required:h,tabIndex:-1,name:d,autoComplete:f,value:A,onChange:ee=>O(ee.target.value),disabled:m,form:v,children:[A===void 0?r.jsx("option",{value:""}):null,Array.from(L)]},$):null]})})};Lh.displayName=Fn;var Dh="SelectTrigger",$h=p.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:s=!1,...o}=e,i=ai(n),a=Sn(Dh,n),l=a.disabled||s,c=De(t,a.onTriggerChange),u=ii(n),d=p.useRef("touch"),[f,m,h]=am(g=>{const x=u().filter(k=>!k.disabled),b=x.find(k=>k.value===a.value),y=lm(x,g,b);y!==void 0&&a.onValueChange(y.value)}),v=g=>{l||(a.onOpenChange(!0),h()),g&&(a.triggerPointerDownPosRef.current={x:Math.round(g.pageX),y:Math.round(g.pageY)})};return r.jsx(mh,{asChild:!0,...i,children:r.jsx(Re.button,{type:"button",role:"combobox","aria-controls":a.contentId,"aria-expanded":a.open,"aria-required":a.required,"aria-autocomplete":"none",dir:a.dir,"data-state":a.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":im(a.value)?"":void 0,...o,ref:c,onClick:Ne(o.onClick,g=>{g.currentTarget.focus(),d.current!=="mouse"&&v(g)}),onPointerDown:Ne(o.onPointerDown,g=>{d.current=g.pointerType;const x=g.target;x.hasPointerCapture(g.pointerId)&&x.releasePointerCapture(g.pointerId),g.button===0&&g.ctrlKey===!1&&g.pointerType==="mouse"&&(v(g),g.preventDefault())}),onKeyDown:Ne(o.onKeyDown,g=>{const x=f.current!=="";!(g.ctrlKey||g.altKey||g.metaKey)&&g.key.length===1&&m(g.key),!(x&&g.key===" ")&&MC.includes(g.key)&&(v(),g.preventDefault())})})})});$h.displayName=Dh;var Fh="SelectValue",Bh=p.forwardRef((e,t)=>{const{__scopeSelect:n,className:s,style:o,children:i,placeholder:a="",...l}=e,c=Sn(Fh,n),{onValueNodeHasChildrenChange:u}=c,d=i!==void 0,f=De(t,c.onValueNodeChange);return et(()=>{u(d)},[u,d]),r.jsx(Re.span,{...l,ref:f,style:{pointerEvents:"none"},children:im(c.value)?r.jsx(r.Fragment,{children:a}):i})});Bh.displayName=Fh;var UC="SelectIcon",Uh=p.forwardRef((e,t)=>{const{__scopeSelect:n,children:s,...o}=e;return r.jsx(Re.span,{"aria-hidden":!0,...o,ref:t,children:s||"▼"})});Uh.displayName=UC;var WC="SelectPortal",Wh=e=>r.jsx(Ho,{asChild:!0,...e});Wh.displayName=WC;var Bn="SelectContent",Hh=p.forwardRef((e,t)=>{const n=Sn(Bn,e.__scopeSelect),[s,o]=p.useState();if(et(()=>{o(new DocumentFragment)},[]),!n.open){const i=s;return i?or.createPortal(r.jsx(Vh,{scope:e.__scopeSelect,children:r.jsx(oi.Slot,{scope:e.__scopeSelect,children:r.jsx("div",{children:e.children})})}),i):null}return r.jsx(qh,{...e,ref:t})});Hh.displayName=Bn;var Mt=10,[Vh,Cn]=Rs(Bn),HC="SelectContentImpl",VC=ys("SelectContent.RemoveScroll"),qh=p.forwardRef((e,t)=>{const{__scopeSelect:n,position:s="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:i,onPointerDownOutside:a,side:l,sideOffset:c,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:v,hideWhenDetached:g,avoidCollisions:x,...b}=e,y=Sn(Bn,n),[k,j]=p.useState(null),[C,T]=p.useState(null),N=De(t,oe=>j(oe)),[z,A]=p.useState(null),[O,D]=p.useState(null),E=ii(n),[L,w]=p.useState(!1),$=p.useRef(!1);p.useEffect(()=>{if(k)return wp(k)},[k]),fp();const ee=p.useCallback(oe=>{const[pe,...ge]=E().map(ke=>ke.ref.current),[me]=ge.slice(-1),xe=document.activeElement;for(const ke of oe)if(ke===xe||(ke?.scrollIntoView({block:"nearest"}),ke===pe&&C&&(C.scrollTop=0),ke===me&&C&&(C.scrollTop=C.scrollHeight),ke?.focus(),document.activeElement!==xe))return},[E,C]),F=p.useCallback(()=>ee([z,k]),[ee,z,k]);p.useEffect(()=>{L&&F()},[L,F]);const{onOpenChange:H,triggerPointerDownPosRef:Z}=y;p.useEffect(()=>{if(k){let oe={x:0,y:0};const pe=me=>{oe={x:Math.abs(Math.round(me.pageX)-(Z.current?.x??0)),y:Math.abs(Math.round(me.pageY)-(Z.current?.y??0))}},ge=me=>{oe.x<=10&&oe.y<=10?me.preventDefault():k.contains(me.target)||H(!1),document.removeEventListener("pointermove",pe),Z.current=null};return Z.current!==null&&(document.addEventListener("pointermove",pe),document.addEventListener("pointerup",ge,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",pe),document.removeEventListener("pointerup",ge,{capture:!0})}}},[k,H,Z]),p.useEffect(()=>{const oe=()=>H(!1);return window.addEventListener("blur",oe),window.addEventListener("resize",oe),()=>{window.removeEventListener("blur",oe),window.removeEventListener("resize",oe)}},[H]);const[ue,V]=am(oe=>{const pe=E().filter(xe=>!xe.disabled),ge=pe.find(xe=>xe.ref.current===document.activeElement),me=lm(pe,oe,ge);me&&setTimeout(()=>me.ref.current.focus())}),W=p.useCallback((oe,pe,ge)=>{const me=!$.current&&!ge;(y.value!==void 0&&y.value===pe||me)&&(A(oe),me&&($.current=!0))},[y.value]),ce=p.useCallback(()=>k?.focus(),[k]),U=p.useCallback((oe,pe,ge)=>{const me=!$.current&&!ge;(y.value!==void 0&&y.value===pe||me)&&D(oe)},[y.value]),Q=s==="popper"?ya:Zh,Ce=Q===ya?{side:l,sideOffset:c,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:v,hideWhenDetached:g,avoidCollisions:x}:{};return r.jsx(Vh,{scope:n,content:k,viewport:C,onViewportChange:T,itemRefCallback:W,selectedItem:z,onItemLeave:ce,itemTextRefCallback:U,focusSelectedItem:F,selectedItemText:O,position:s,isPositioned:L,searchRef:ue,children:r.jsx(jl,{as:VC,allowPinchZoom:!0,children:r.jsx(kl,{asChild:!0,trapped:y.open,onMountAutoFocus:oe=>{oe.preventDefault()},onUnmountAutoFocus:Ne(o,oe=>{y.trigger?.focus({preventScroll:!0}),oe.preventDefault()}),children:r.jsx(Wo,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:oe=>oe.preventDefault(),onDismiss:()=>y.onOpenChange(!1),children:r.jsx(Q,{role:"listbox",id:y.contentId,"data-state":y.open?"open":"closed",dir:y.dir,onContextMenu:oe=>oe.preventDefault(),...b,...Ce,onPlaced:()=>w(!0),ref:N,style:{display:"flex",flexDirection:"column",outline:"none",...b.style},onKeyDown:Ne(b.onKeyDown,oe=>{const pe=oe.ctrlKey||oe.altKey||oe.metaKey;if(oe.key==="Tab"&&oe.preventDefault(),!pe&&oe.key.length===1&&V(oe.key),["ArrowUp","ArrowDown","Home","End"].includes(oe.key)){let me=E().filter(xe=>!xe.disabled).map(xe=>xe.ref.current);if(["ArrowUp","End"].includes(oe.key)&&(me=me.slice().reverse()),["ArrowUp","ArrowDown"].includes(oe.key)){const xe=oe.target,ke=me.indexOf(xe);me=me.slice(ke+1)}setTimeout(()=>ee(me)),oe.preventDefault()}})})})})})})});qh.displayName=HC;var qC="SelectItemAlignedPosition",Zh=p.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:s,...o}=e,i=Sn(Bn,n),a=Cn(Bn,n),[l,c]=p.useState(null),[u,d]=p.useState(null),f=De(t,N=>d(N)),m=ii(n),h=p.useRef(!1),v=p.useRef(!0),{viewport:g,selectedItem:x,selectedItemText:b,focusSelectedItem:y}=a,k=p.useCallback(()=>{if(i.trigger&&i.valueNode&&l&&u&&g&&x&&b){const N=i.trigger.getBoundingClientRect(),z=u.getBoundingClientRect(),A=i.valueNode.getBoundingClientRect(),O=b.getBoundingClientRect();if(i.dir!=="rtl"){const xe=O.left-z.left,ke=A.left-xe,Ae=N.left-ke,_=N.width+Ae,X=Math.max(_,z.width),G=window.innerWidth-Mt,P=va(ke,[Mt,Math.max(Mt,G-X)]);l.style.minWidth=_+"px",l.style.left=P+"px"}else{const xe=z.right-O.right,ke=window.innerWidth-A.right-xe,Ae=window.innerWidth-N.right-ke,_=N.width+Ae,X=Math.max(_,z.width),G=window.innerWidth-Mt,P=va(ke,[Mt,Math.max(Mt,G-X)]);l.style.minWidth=_+"px",l.style.right=P+"px"}const D=m(),E=window.innerHeight-Mt*2,L=g.scrollHeight,w=window.getComputedStyle(u),$=parseInt(w.borderTopWidth,10),ee=parseInt(w.paddingTop,10),F=parseInt(w.borderBottomWidth,10),H=parseInt(w.paddingBottom,10),Z=$+ee+L+H+F,ue=Math.min(x.offsetHeight*5,Z),V=window.getComputedStyle(g),W=parseInt(V.paddingTop,10),ce=parseInt(V.paddingBottom,10),U=N.top+N.height/2-Mt,Q=E-U,Ce=x.offsetHeight/2,oe=x.offsetTop+Ce,pe=$+ee+oe,ge=Z-pe;if(pe<=U){const xe=D.length>0&&x===D[D.length-1].ref.current;l.style.bottom="0px";const ke=u.clientHeight-g.offsetTop-g.offsetHeight,Ae=Math.max(Q,Ce+(xe?ce:0)+ke+F),_=pe+Ae;l.style.height=_+"px"}else{const xe=D.length>0&&x===D[0].ref.current;l.style.top="0px";const Ae=Math.max(U,$+g.offsetTop+(xe?W:0)+Ce)+ge;l.style.height=Ae+"px",g.scrollTop=pe-U+g.offsetTop}l.style.margin=`${Mt}px 0`,l.style.minHeight=ue+"px",l.style.maxHeight=E+"px",s?.(),requestAnimationFrame(()=>h.current=!0)}},[m,i.trigger,i.valueNode,l,u,g,x,b,i.dir,s]);et(()=>k(),[k]);const[j,C]=p.useState();et(()=>{u&&C(window.getComputedStyle(u).zIndex)},[u]);const T=p.useCallback(N=>{N&&v.current===!0&&(k(),y?.(),v.current=!1)},[k,y]);return r.jsx(GC,{scope:n,contentWrapper:l,shouldExpandOnScrollRef:h,onScrollButtonChange:T,children:r.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:r.jsx(Re.div,{...o,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});Zh.displayName=qC;var ZC="SelectPopperPosition",ya=p.forwardRef((e,t)=>{const{__scopeSelect:n,align:s="start",collisionPadding:o=Mt,...i}=e,a=ai(n);return r.jsx(gh,{...a,...i,ref:t,align:s,collisionPadding:o,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ya.displayName=ZC;var[GC,Hl]=Rs(Bn,{}),wa="SelectViewport",Gh=p.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:s,...o}=e,i=Cn(wa,n),a=Hl(wa,n),l=De(t,i.onViewportChange),c=p.useRef(0);return r.jsxs(r.Fragment,{children:[r.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:s}),r.jsx(oi.Slot,{scope:n,children:r.jsx(Re.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:Ne(o.onScroll,u=>{const d=u.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:m}=a;if(m?.current&&f){const h=Math.abs(c.current-d.scrollTop);if(h>0){const v=window.innerHeight-Mt*2,g=parseFloat(f.style.minHeight),x=parseFloat(f.style.height),b=Math.max(g,x);if(b<v){const y=b+h,k=Math.min(v,y),j=y-k;f.style.height=k+"px",f.style.bottom==="0px"&&(d.scrollTop=j>0?j:0,f.style.justifyContent="flex-end")}}}c.current=d.scrollTop})})})]})});Gh.displayName=wa;var Kh="SelectGroup",[KC,JC]=Rs(Kh),YC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...s}=e,o=qt();return r.jsx(KC,{scope:n,id:o,children:r.jsx(Re.div,{role:"group","aria-labelledby":o,...s,ref:t})})});YC.displayName=Kh;var Jh="SelectLabel",XC=p.forwardRef((e,t)=>{const{__scopeSelect:n,...s}=e,o=JC(Jh,n);return r.jsx(Re.div,{id:o.id,...s,ref:t})});XC.displayName=Jh;var wo="SelectItem",[QC,Yh]=Rs(wo),Xh=p.forwardRef((e,t)=>{const{__scopeSelect:n,value:s,disabled:o=!1,textValue:i,...a}=e,l=Sn(wo,n),c=Cn(wo,n),u=l.value===s,[d,f]=p.useState(i??""),[m,h]=p.useState(!1),v=De(t,y=>c.itemRefCallback?.(y,s,o)),g=qt(),x=p.useRef("touch"),b=()=>{o||(l.onValueChange(s),l.onOpenChange(!1))};if(s==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return r.jsx(QC,{scope:n,value:s,disabled:o,textId:g,isSelected:u,onItemTextChange:p.useCallback(y=>{f(k=>k||(y?.textContent??"").trim())},[]),children:r.jsx(oi.ItemSlot,{scope:n,value:s,disabled:o,textValue:d,children:r.jsx(Re.div,{role:"option","aria-labelledby":g,"data-highlighted":m?"":void 0,"aria-selected":u&&m,"data-state":u?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...a,ref:v,onFocus:Ne(a.onFocus,()=>h(!0)),onBlur:Ne(a.onBlur,()=>h(!1)),onClick:Ne(a.onClick,()=>{x.current!=="mouse"&&b()}),onPointerUp:Ne(a.onPointerUp,()=>{x.current==="mouse"&&b()}),onPointerDown:Ne(a.onPointerDown,y=>{x.current=y.pointerType}),onPointerMove:Ne(a.onPointerMove,y=>{x.current=y.pointerType,o?c.onItemLeave?.():x.current==="mouse"&&y.currentTarget.focus({preventScroll:!0})}),onPointerLeave:Ne(a.onPointerLeave,y=>{y.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:Ne(a.onKeyDown,y=>{c.searchRef?.current!==""&&y.key===" "||(LC.includes(y.key)&&b(),y.key===" "&&y.preventDefault())})})})})});Xh.displayName=wo;var Hs="SelectItemText",Qh=p.forwardRef((e,t)=>{const{__scopeSelect:n,className:s,style:o,...i}=e,a=Sn(Hs,n),l=Cn(Hs,n),c=Yh(Hs,n),u=BC(Hs,n),[d,f]=p.useState(null),m=De(t,b=>f(b),c.onItemTextChange,b=>l.itemTextRefCallback?.(b,c.value,c.disabled)),h=d?.textContent,v=p.useMemo(()=>r.jsx("option",{value:c.value,disabled:c.disabled,children:h},c.value),[c.disabled,c.value,h]),{onNativeOptionAdd:g,onNativeOptionRemove:x}=u;return et(()=>(g(v),()=>x(v)),[g,x,v]),r.jsxs(r.Fragment,{children:[r.jsx(Re.span,{id:c.textId,...i,ref:m}),c.isSelected&&a.valueNode&&!a.valueNodeHasChildren?or.createPortal(i.children,a.valueNode):null]})});Qh.displayName=Hs;var em="SelectItemIndicator",tm=p.forwardRef((e,t)=>{const{__scopeSelect:n,...s}=e;return Yh(em,n).isSelected?r.jsx(Re.span,{"aria-hidden":!0,...s,ref:t}):null});tm.displayName=em;var _a="SelectScrollUpButton",nm=p.forwardRef((e,t)=>{const n=Cn(_a,e.__scopeSelect),s=Hl(_a,e.__scopeSelect),[o,i]=p.useState(!1),a=De(t,s.onScrollButtonChange);return et(()=>{if(n.viewport&&n.isPositioned){let l=function(){const u=c.scrollTop>0;i(u)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),o?r.jsx(rm,{...e,ref:a,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop-c.offsetHeight)}}):null});nm.displayName=_a;var ka="SelectScrollDownButton",sm=p.forwardRef((e,t)=>{const n=Cn(ka,e.__scopeSelect),s=Hl(ka,e.__scopeSelect),[o,i]=p.useState(!1),a=De(t,s.onScrollButtonChange);return et(()=>{if(n.viewport&&n.isPositioned){let l=function(){const u=c.scrollHeight-c.clientHeight,d=Math.ceil(c.scrollTop)<u;i(d)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),o?r.jsx(rm,{...e,ref:a,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop+c.offsetHeight)}}):null});sm.displayName=ka;var rm=p.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:s,...o}=e,i=Cn("SelectScrollButton",n),a=p.useRef(null),l=ii(n),c=p.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return p.useEffect(()=>()=>c(),[c]),et(()=>{l().find(d=>d.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[l]),r.jsx(Re.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:Ne(o.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(s,50))}),onPointerMove:Ne(o.onPointerMove,()=>{i.onItemLeave?.(),a.current===null&&(a.current=window.setInterval(s,50))}),onPointerLeave:Ne(o.onPointerLeave,()=>{c()})})}),eN="SelectSeparator",tN=p.forwardRef((e,t)=>{const{__scopeSelect:n,...s}=e;return r.jsx(Re.div,{"aria-hidden":!0,...s,ref:t})});tN.displayName=eN;var ja="SelectArrow",nN=p.forwardRef((e,t)=>{const{__scopeSelect:n,...s}=e,o=ai(n),i=Sn(ja,n),a=Cn(ja,n);return i.open&&a.position==="popper"?r.jsx(xh,{...o,...s,ref:t}):null});nN.displayName=ja;var sN="SelectBubbleInput",om=p.forwardRef(({__scopeSelect:e,value:t,...n},s)=>{const o=p.useRef(null),i=De(s,o),a=Wj(t);return p.useEffect(()=>{const l=o.current;if(!l)return;const c=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(c,"value").set;if(a!==t&&d){const f=new Event("change",{bubbles:!0});d.call(l,t),l.dispatchEvent(f)}},[a,t]),r.jsx(Re.select,{...n,style:{...Fp,...n.style},ref:i,defaultValue:t})});om.displayName=sN;function im(e){return e===""||e===void 0}function am(e){const t=dt(e),n=p.useRef(""),s=p.useRef(0),o=p.useCallback(a=>{const l=n.current+a;t(l),(function c(u){n.current=u,window.clearTimeout(s.current),u!==""&&(s.current=window.setTimeout(()=>c(""),1e3))})(l)},[t]),i=p.useCallback(()=>{n.current="",window.clearTimeout(s.current)},[]);return p.useEffect(()=>()=>window.clearTimeout(s.current),[]),[n,o,i]}function lm(e,t,n){const o=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,i=n?e.indexOf(n):-1;let a=rN(e,Math.max(i,0));o.length===1&&(a=a.filter(u=>u!==n));const c=a.find(u=>u.textValue.toLowerCase().startsWith(o.toLowerCase()));return c!==n?c:void 0}function rN(e,t){return e.map((n,s)=>e[(t+s)%e.length])}var oN=Lh,iN=$h,aN=Bh,lN=Uh,cN=Wh,uN=Hh,dN=Gh,fN=Xh,pN=Qh,hN=tm,mN=nm,gN=sm,li="Tabs",[xN]=an(li,[vh]),cm=vh(),[bN,Vl]=xN(li),um=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:s,onValueChange:o,defaultValue:i,orientation:a="horizontal",dir:l,activationMode:c="automatic",...u}=e,d=Yo(l),[f,m]=Ln({prop:s,onChange:o,defaultProp:i??"",caller:li});return r.jsx(bN,{scope:n,baseId:qt(),value:f,onValueChange:m,orientation:a,dir:d,activationMode:c,children:r.jsx(Re.div,{dir:d,"data-orientation":a,...u,ref:t})})});um.displayName=li;var dm="TabsList",fm=p.forwardRef((e,t)=>{const{__scopeTabs:n,loop:s=!0,...o}=e,i=Vl(dm,n),a=cm(n);return r.jsx(yC,{asChild:!0,...a,orientation:i.orientation,dir:i.dir,loop:s,children:r.jsx(Re.div,{role:"tablist","aria-orientation":i.orientation,...o,ref:t})})});fm.displayName=dm;var pm="TabsTrigger",hm=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:s,disabled:o=!1,...i}=e,a=Vl(pm,n),l=cm(n),c=xm(a.baseId,s),u=bm(a.baseId,s),d=s===a.value;return r.jsx(wC,{asChild:!0,...l,focusable:!o,active:d,children:r.jsx(Re.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":u,"data-state":d?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:c,...i,ref:t,onMouseDown:Ne(e.onMouseDown,f=>{!o&&f.button===0&&f.ctrlKey===!1?a.onValueChange(s):f.preventDefault()}),onKeyDown:Ne(e.onKeyDown,f=>{[" ","Enter"].includes(f.key)&&a.onValueChange(s)}),onFocus:Ne(e.onFocus,()=>{const f=a.activationMode!=="manual";!d&&!o&&f&&a.onValueChange(s)})})})});hm.displayName=pm;var mm="TabsContent",gm=p.forwardRef((e,t)=>{const{__scopeTabs:n,value:s,forceMount:o,children:i,...a}=e,l=Vl(mm,n),c=xm(l.baseId,s),u=bm(l.baseId,s),d=s===l.value,f=p.useRef(d);return p.useEffect(()=>{const m=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(m)},[]),r.jsx(At,{present:o||d,children:({present:m})=>r.jsx(Re.div,{"data-state":d?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":c,hidden:!m,id:u,tabIndex:0,...a,ref:t,style:{...e.style,animationDuration:f.current?"0s":void 0},children:m&&i})})});gm.displayName=mm;function xm(e,t){return`${e}-trigger-${t}`}function bm(e,t){return`${e}-content-${t}`}var vN=um,yN=fm,wN=hm,_N=gm,[ci]=an("Tooltip",[ni]),ui=ni(),vm="TooltipProvider",kN=700,Sa="tooltip.open",[jN,ql]=ci(vm),ym=e=>{const{__scopeTooltip:t,delayDuration:n=kN,skipDelayDuration:s=300,disableHoverableContent:o=!1,children:i}=e,a=p.useRef(!0),l=p.useRef(!1),c=p.useRef(0);return p.useEffect(()=>{const u=c.current;return()=>window.clearTimeout(u)},[]),r.jsx(jN,{scope:t,isOpenDelayedRef:a,delayDuration:n,onOpen:p.useCallback(()=>{window.clearTimeout(c.current),a.current=!1},[]),onClose:p.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>a.current=!0,s)},[s]),isPointerInTransitRef:l,onPointerInTransitChange:p.useCallback(u=>{l.current=u},[]),disableHoverableContent:o,children:i})};ym.displayName=vm;var Qs="Tooltip",[SN,fr]=ci(Qs),wm=e=>{const{__scopeTooltip:t,children:n,open:s,defaultOpen:o,onOpenChange:i,disableHoverableContent:a,delayDuration:l}=e,c=ql(Qs,e.__scopeTooltip),u=ui(t),[d,f]=p.useState(null),m=qt(),h=p.useRef(0),v=a??c.disableHoverableContent,g=l??c.delayDuration,x=p.useRef(!1),[b,y]=Ln({prop:s,defaultProp:o??!1,onChange:N=>{N?(c.onOpen(),document.dispatchEvent(new CustomEvent(Sa))):c.onClose(),i?.(N)},caller:Qs}),k=p.useMemo(()=>b?x.current?"delayed-open":"instant-open":"closed",[b]),j=p.useCallback(()=>{window.clearTimeout(h.current),h.current=0,x.current=!1,y(!0)},[y]),C=p.useCallback(()=>{window.clearTimeout(h.current),h.current=0,y(!1)},[y]),T=p.useCallback(()=>{window.clearTimeout(h.current),h.current=window.setTimeout(()=>{x.current=!0,y(!0),h.current=0},g)},[g,y]);return p.useEffect(()=>()=>{h.current&&(window.clearTimeout(h.current),h.current=0)},[]),r.jsx(hh,{...u,children:r.jsx(SN,{scope:t,contentId:m,open:b,stateAttribute:k,trigger:d,onTriggerChange:f,onTriggerEnter:p.useCallback(()=>{c.isOpenDelayedRef.current?T():j()},[c.isOpenDelayedRef,T,j]),onTriggerLeave:p.useCallback(()=>{v?C():(window.clearTimeout(h.current),h.current=0)},[C,v]),onOpen:j,onClose:C,disableHoverableContent:v,children:n})})};wm.displayName=Qs;var Ca="TooltipTrigger",_m=p.forwardRef((e,t)=>{const{__scopeTooltip:n,...s}=e,o=fr(Ca,n),i=ql(Ca,n),a=ui(n),l=p.useRef(null),c=De(t,l,o.onTriggerChange),u=p.useRef(!1),d=p.useRef(!1),f=p.useCallback(()=>u.current=!1,[]);return p.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),r.jsx(mh,{asChild:!0,...a,children:r.jsx(Re.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...s,ref:c,onPointerMove:Ne(e.onPointerMove,m=>{m.pointerType!=="touch"&&!d.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),d.current=!0)}),onPointerLeave:Ne(e.onPointerLeave,()=>{o.onTriggerLeave(),d.current=!1}),onPointerDown:Ne(e.onPointerDown,()=>{o.open&&o.onClose(),u.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Ne(e.onFocus,()=>{u.current||o.onOpen()}),onBlur:Ne(e.onBlur,o.onClose),onClick:Ne(e.onClick,o.onClose)})})});_m.displayName=Ca;var Zl="TooltipPortal",[CN,NN]=ci(Zl,{forceMount:void 0}),km=e=>{const{__scopeTooltip:t,forceMount:n,children:s,container:o}=e,i=fr(Zl,t);return r.jsx(CN,{scope:t,forceMount:n,children:r.jsx(At,{present:n||i.open,children:r.jsx(Ho,{asChild:!0,container:o,children:s})})})};km.displayName=Zl;var ks="TooltipContent",jm=p.forwardRef((e,t)=>{const n=NN(ks,e.__scopeTooltip),{forceMount:s=n.forceMount,side:o="top",...i}=e,a=fr(ks,e.__scopeTooltip);return r.jsx(At,{present:s||a.open,children:a.disableHoverableContent?r.jsx(Sm,{side:o,...i,ref:t}):r.jsx(TN,{side:o,...i,ref:t})})}),TN=p.forwardRef((e,t)=>{const n=fr(ks,e.__scopeTooltip),s=ql(ks,e.__scopeTooltip),o=p.useRef(null),i=De(t,o),[a,l]=p.useState(null),{trigger:c,onClose:u}=n,d=o.current,{onPointerInTransitChange:f}=s,m=p.useCallback(()=>{l(null),f(!1)},[f]),h=p.useCallback((v,g)=>{const x=v.currentTarget,b={x:v.clientX,y:v.clientY},y=IN(b,x.getBoundingClientRect()),k=zN(b,y),j=ON(g.getBoundingClientRect()),C=MN([...k,...j]);l(C),f(!0)},[f]);return p.useEffect(()=>()=>m(),[m]),p.useEffect(()=>{if(c&&d){const v=x=>h(x,d),g=x=>h(x,c);return c.addEventListener("pointerleave",v),d.addEventListener("pointerleave",g),()=>{c.removeEventListener("pointerleave",v),d.removeEventListener("pointerleave",g)}}},[c,d,h,m]),p.useEffect(()=>{if(a){const v=g=>{const x=g.target,b={x:g.clientX,y:g.clientY},y=c?.contains(x)||d?.contains(x),k=!PN(b,a);y?m():k&&(m(),u())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[c,d,a,u,m]),r.jsx(Sm,{...e,ref:i})}),[EN,AN]=ci(Qs,{isInside:!1}),RN=z5("TooltipContent"),Sm=p.forwardRef((e,t)=>{const{__scopeTooltip:n,children:s,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:a,...l}=e,c=fr(ks,n),u=ui(n),{onClose:d}=c;return p.useEffect(()=>(document.addEventListener(Sa,d),()=>document.removeEventListener(Sa,d)),[d]),p.useEffect(()=>{if(c.trigger){const f=m=>{m.target?.contains(c.trigger)&&d()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[c.trigger,d]),r.jsx(Wo,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:f=>f.preventDefault(),onDismiss:d,children:r.jsxs(gh,{"data-state":c.stateAttribute,...u,...l,ref:t,style:{...l.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[r.jsx(RN,{children:s}),r.jsx(EN,{scope:n,isInside:!0,children:r.jsx(Lj,{id:c.contentId,role:"tooltip",children:o||s})})]})})});jm.displayName=ks;var Cm="TooltipArrow",Nm=p.forwardRef((e,t)=>{const{__scopeTooltip:n,...s}=e,o=ui(n);return AN(Cm,n).isInside?null:r.jsx(xh,{...o,...s,ref:t})});Nm.displayName=Cm;function IN(e,t){const n=Math.abs(t.top-e.y),s=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(n,s,o,i)){case i:return"left";case o:return"right";case n:return"top";case s:return"bottom";default:throw new Error("unreachable")}}function zN(e,t,n=5){const s=[];switch(t){case"top":s.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":s.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":s.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":s.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return s}function ON(e){const{top:t,right:n,bottom:s,left:o}=e;return[{x:o,y:t},{x:n,y:t},{x:n,y:s},{x:o,y:s}]}function PN(e,t){const{x:n,y:s}=e;let o=!1;for(let i=0,a=t.length-1;i<t.length;a=i++){const l=t[i],c=t[a],u=l.x,d=l.y,f=c.x,m=c.y;d>s!=m>s&&n<(f-u)*(s-d)/(m-d)+u&&(o=!o)}return o}function MN(e){const t=e.slice();return t.sort((n,s)=>n.x<s.x?-1:n.x>s.x?1:n.y<s.y?-1:n.y>s.y?1:0),LN(t)}function LN(e){if(e.length<=1)return e.slice();const t=[];for(let s=0;s<e.length;s++){const o=e[s];for(;t.length>=2;){const i=t[t.length-1],a=t[t.length-2];if((i.x-a.x)*(o.y-a.y)>=(i.y-a.y)*(o.x-a.x))t.pop();else break}t.push(o)}t.pop();const n=[];for(let s=e.length-1;s>=0;s--){const o=e[s];for(;n.length>=2;){const i=n[n.length-1],a=n[n.length-2];if((i.x-a.x)*(o.y-a.y)>=(i.y-a.y)*(o.x-a.x))n.pop();else break}n.push(o)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var DN=ym,$N=wm,FN=_m,BN=km,UN=jm,WN=Nm;function _n({delayDuration:e=600,...t}){return r.jsx(DN,{"data-slot":"tooltip-provider",delayDuration:e,...t})}function lt({...e}){return r.jsx($N,{"data-slot":"tooltip",...e})}function ct({...e}){return r.jsx(FN,{"data-slot":"tooltip-trigger",...e})}function ut({className:e,sideOffset:t=0,children:n,...s}){return r.jsx(BN,{children:r.jsxs(UN,{"data-slot":"tooltip-content",sideOffset:t,className:ae("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...s,children:[n,r.jsx(WN,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}const HN=3;function VN({items:e,ariaLabel:t,className:n}){if(e.length===0)return r.jsx("span",{className:ae("flex h-8 w-12 shrink-0 items-center",n),"aria-hidden":"true"});const s=e.slice(0,HN),o=e.length-s.length;return r.jsx(_n,{delayDuration:150,children:r.jsxs("span",{className:ae("flex h-8 w-12 shrink-0 items-center",n),"aria-label":t,children:[s.map((i,a)=>r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx("span",{className:ae("border border-border bg-muted/40 inline-flex size-6 shrink-0 items-center justify-center rounded-md",a>0&&"-ml-2"),children:r.jsx(Pj,{provider:i.provider,className:"size-4"})})}),r.jsx(ut,{children:i.tooltip})]},`${i.provider}-${String(a)}`)),o>0&&r.jsxs("span",{className:"border border-border bg-muted/40 -ml-2 inline-flex h-6 min-w-6 shrink-0 items-center justify-center rounded-md px-1 font-mono text-[10px] text-muted-foreground",children:["+",o]})]})})}const qN="/v1/chat/completions",ZN="/chat/completions",GN="/v1/responses",KN="/responses",JN="/v1/messages";class YN{handlers=new Map;pathMap=new Map;register(t){this.handlers.set(t.format,t)}registerPath(t,n){this.pathMap.set(t,n)}get(t){return this.handlers.get(t)}getByPath(t){const n=t.split("?")[0]??"",s=this.pathMap.get(n);return s===void 0?void 0:this.handlers.get(s)}getApiFormatByPath(t){const n=t.split("?")[0]??"";return this.pathMap.get(n)}detectFormat(t){if(t===null)return"unknown";for(const n of this.handlers.values())if(n.detectFormat(t))return n.format;return"unknown"}}const Nn=new YN;function XN(e){return Nn.getApiFormatByPath(e)??"unknown"}Nn.registerPath(JN,"anthropic");Nn.registerPath(qN,"openai");Nn.registerPath(ZN,"openai");Nn.registerPath(GN,"openai");Nn.registerPath(KN,"openai");function QN(e){if(e==="")return{};try{const t=JSON.parse(e);return t!==null&&typeof t=="object"&&!Array.isArray(t)?{...t}:{}}catch{return{}}}function e3(e){switch(e.type){case"text":return{type:"text",text:e.text};case"thinking":{const t={type:"thinking",thinking:e.thinking};return e.signature!==""&&(t.signature=e.signature),t}case"think":{const t={type:"think",thinking:e.thinking};return e.signature!==""&&(t.signature=e.signature),t}case"tool_use":return{type:"tool_use",id:e.id,name:e.name,input:QN(e.inputJson)}}}function Tm(e,t,n,s){const o=new Map;let i="",a="",l=null,c=null,u=0,d=0;const f=1e3;let m=0,h=0;const v=[];for(const x of e.split(`
86
- `)){const b=x.trim();if(b.startsWith("data: "))try{const y=JSON.parse(b.slice(6)),k=s2.safeParse(y);if(!k.success)continue;const j=k.data;switch(m===0&&(h=Date.now()),s===!0&&v.length<f&&v.push({index:m,timestamp:Date.now()-h,type:j.type,data:j}),m++,j.type){case"message_start":i=j.message.id,a=j.message.model,u=j.message.usage.input_tokens,t.inputTokens=u,t.cacheCreationInputTokens=j.message.usage.cache_creation_input_tokens??null,t.cacheReadInputTokens=j.message.usage.cache_read_input_tokens??null,t.model===null&&(t.model=a);break;case"content_block_start":{const C=j.content_block;switch(C.type){case"text":o.set(j.index,{type:"text",text:C.text??""});break;case"thinking":o.set(j.index,{type:"thinking",thinking:C.thinking??"",signature:C.signature??""});break;case"think":o.set(j.index,{type:"think",thinking:C.thinking??"",signature:C.signature??""});break;case"tool_use":o.set(j.index,{type:"tool_use",id:C.id,name:C.name,inputJson:""});break}break}case"content_block_delta":{const C=o.get(j.index);if(C===void 0)break;const T=j.delta;T.type==="text_delta"&&C.type==="text"?C.text+=T.text:T.type==="thinking_delta"&&(C.type==="thinking"||C.type==="think")?C.thinking+=T.thinking:T.type==="signature_delta"&&(C.type==="thinking"||C.type==="think")?C.signature+=T.signature:T.type==="input_json_delta"&&C.type==="tool_use"&&(C.inputJson+=T.partial_json);break}case"message_delta":l=j.delta.stop_reason,c=j.delta.stop_sequence??null,d=j.usage.output_tokens,t.outputTokens=d,j.usage.cache_creation_input_tokens!==void 0&&(t.cacheCreationInputTokens=j.usage.cache_creation_input_tokens),j.usage.cache_read_input_tokens!==void 0&&(t.cacheReadInputTokens=j.usage.cache_read_input_tokens);break;case"error":t.error=j.error.message;break;case"content_block_stop":case"message_stop":case"ping":break}}catch{}}s===!0&&(t.streamingChunks={chunks:v,truncated:m>f});const g=[...o.entries()].sort(([x],[b])=>x-b).map(([,x])=>e3(x));return JSON.stringify({id:i,type:"message",model:a!==""?a:n??"",role:"assistant",content:g,stop_reason:l,stop_sequence:c,usage:{input_tokens:u,output_tokens:d}})}const t3={format:"anthropic",parseRequest(e,t){try{const n=JSON.parse(e),s=ff.safeParse(n);return s.success?{model:s.data.model,sessionId:s.data.metadata?.user_id??t?.get("x-session-affinity")??null}:null}catch{return null}},extractTokens(e){try{const t=JSON.parse(e),n=pf.safeParse(t);if(n.success)return{inputTokens:n.data.usage.input_tokens??null,outputTokens:n.data.usage.output_tokens??null,cacheCreationInputTokens:n.data.usage.cache_creation_input_tokens??null,cacheReadInputTokens:n.data.usage.cache_read_input_tokens??null}}catch{}return{inputTokens:null,outputTokens:null,cacheCreationInputTokens:null,cacheReadInputTokens:null}},extractStream(e,t,n,s){return Tm(e,t,n,s)},detectFormat(e){if(e===null)return!1;try{const t=JSON.parse(e);if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=Object.keys(t);return n.includes("model")&&n.includes("messages")&&n.includes("system")}return!1}catch{return!1}}};Nn.register(t3);class n3{providers=[];register(t){this.providers.push(t)}findProvider(t){let n=null;for(const s of this.providers)if(s.matches(t)){if(s.name!=="anthropic")return s;n=s}return n}getAll(){return[...this.providers]}}const di=new n3,s3="https://api.anthropic.com",r3={MiniMax:"https://api.minimaxi.com/anthropic"},o3={name:"anthropic",matches(e){const t=e.toLowerCase();if(t.startsWith("openai-"))return!1;if(t.includes("claude")||t.includes("anthropic"))return!0;for(const n of Object.keys(r3))if(t.startsWith(n.toLowerCase()))return!0;return!0},getUpstreamBase(e,t){return t?.baseUrl!==void 0?t.baseUrl:s3},extractStream(e,t,n,s){return Tm(e,t,n,s)}};di.register(o3);const Gl=1e3;function pr(e,t){if(!(e===null||typeof e!="object"||Array.isArray(e)))return Object.getOwnPropertyDescriptor(e,t)?.value}function rt(e,t){const n=pr(e,t);return typeof n=="string"?n:null}function Em(e,t){const n=pr(e,t);return typeof n=="number"&&Number.isFinite(n)?n:null}function _o(e,t){const n=pr(e,t);return n!==null&&typeof n=="object"&&!Array.isArray(n)?n:null}function i3(e,t){const n=pr(e,t);return Array.isArray(n)?n:[]}function a3(e){const t=[];let n=null,s=[];const o=()=>{n===null&&s.length===0||(t.push({event:n,data:s.join(`
87
- `)}),n=null,s=[])};for(const i of e.split(`
88
- `)){const a=i.endsWith("\r")?i.slice(0,-1):i;if(a===""){o();continue}if(a.startsWith(":"))continue;const l=a.indexOf(":"),c=l===-1?a:a.slice(0,l),u=l===-1?"":a.slice(l+1),d=u.startsWith(" ")?u.slice(1):u;switch(c){case"event":n=d;break;case"data":n===null&&s.length>0&&(d.startsWith("{")||d==="[DONE]")&&o(),s.push(d);break}}return o(),t}function Kl(e){try{return JSON.parse(e)}catch{return null}}function Am(e,t){if(e.event!==null&&e.event!=="")return e.event;const n=p2.safeParse(t);return n.success?n.data.type:""}function l3(e){if(e.data==="[DONE]")return!1;const t=Kl(e.data),n=Am(e,t);return n.startsWith("response.")||n==="error"}function Rm(e,t,n,s,o){e.length>=Gl||e.push({index:t,timestamp:Date.now()-n,type:s,data:o})}function Na(e,t){const n=_o(t,"error"),s=rt(n,"message")??rt(t,"message")??rt(t,"error");s!==null&&s.length>0&&(e.error=s)}function c3(e,t,n,s){let o="",i="",a="",l="",c=null,u=0,d=0,f=!1,m=!1;const h=new Map;let v=0,g=0;const x=[];for(const y of e){if(y.data==="[DONE]")break;const k=Kl(y.data);if(k===null)continue;Na(t,k);const j=u2.safeParse(k);if(!j.success)continue;const C=j.data;if(v===0&&(g=Date.now()),s&&Rm(x,v,g,"chat.completion.chunk",C),v++,m||(o=C.id,i=C.model,m=!0),!f&&C.usage!==void 0&&C.usage!==null){u=C.usage.prompt_tokens??0,d=C.usage.completion_tokens??0,t.inputTokens=u;const T=_o(k,"usage"),N=_o(T,"prompt_tokens_details"),z=Em(N,"cached_tokens");z!==null&&(t.cacheReadInputTokens=z),f=!0}for(const T of C.choices){const N=T.delta;N.content!==void 0&&N.content!==null&&(a+=N.content),N.reasoning_content!==void 0&&N.reasoning_content!==null&&(l+=N.reasoning_content),N.thinking!==void 0&&N.thinking!==null&&(l+=N.thinking);const z=N.think;if(z!=null&&(l+=z),T.finish_reason!==void 0&&T.finish_reason!==null&&(c=T.finish_reason),N.tool_calls!==void 0&&N.tool_calls!==null)for(const A of N.tool_calls){let O=h.get(A.index);O===void 0&&(O={index:A.index,type:"function",function:{name:"",arguments:""}},h.set(A.index,O)),A.id!==void 0&&(O.id=A.id),A.function?.name!==void 0&&(O.function.name+=A.function.name),A.function?.arguments!==void 0&&(O.function.arguments+=A.function.arguments)}}}s&&(t.streamingChunks={chunks:x,truncated:v>Gl}),f||(d=Math.ceil(a.length/4)),t.outputTokens=d;const b={role:"assistant",content:a};return l.length>0&&(b.reasoning_content=l),h.size>0&&(b.tool_calls=[...h.values()]),JSON.stringify({id:o,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:i!==""?i:n??"",choices:[{index:0,message:b,finish_reason:c}],usage:{prompt_tokens:u,completion_tokens:d,total_tokens:u+d}})}function u3(e){const t=oo.safeParse(pr(e,"response"));if(t.success)return t.data;const n=oo.safeParse(e);return n.success?n.data:null}function Im(e){if(e.output_text!==void 0&&e.output_text.length>0)return e.output_text;const t=[];for(const n of e.output??[]){const s=i3(n,"content");for(const o of s){const i=rt(o,"type"),a=rt(o,"text");(i==="output_text"||i==="text")&&a!==null&&a.length>0&&t.push(a)}}return t.join(`
89
- `)}function gu(e,t){const n=e.usage,s=n?.input_tokens??null,o=n?.output_tokens??null;s!==null&&(t.inputTokens=s),o!==null&&(t.outputTokens=o);const i=n?.input_tokens_details?.cached_tokens??null;return i!==null&&(t.cacheReadInputTokens=i),{inputTokens:s,outputTokens:o}}function zi(e,t){const n=rt(e,"item_id");if(n!==null&&n.length>0)return n;const s=Em(e,"output_index");return s!==null?String(s):`function-${String(t)}`}function Ta(e,t){const n=e.get(t);if(n!==void 0)return n;const s={type:"function_call",arguments:""};return e.set(t,s),s}function d3(e,t,n){if(rt(n,"type")!=="function_call")return;const s=Ta(e,t),o=rt(n,"id"),i=rt(n,"call_id"),a=rt(n,"name"),l=rt(n,"arguments"),c=rt(n,"status");o!==null&&(s.id=o),i!==null&&(s.call_id=i),a!==null&&(s.name=a),l!==null&&(s.arguments=l),c!==null&&(s.status=c)}function f3(e,t){const n=[];e.length>0&&n.push({type:"message",role:"assistant",content:[{type:"output_text",text:e,annotations:[]}]});for(const s of t.values())n.push(s);return n}function p3(e,t,n){const s=t??Math.ceil(n.length/4);return{input_tokens:e,output_tokens:s,total_tokens:e===null?s:e+s}}function h3(e){const t=e.completedResponse===null?"":Im(e.completedResponse),n=t.length>0?t:e.outputText,s=e.completedResponse?.output,o=s!==void 0&&s.length>0?s:f3(n,e.calls),i=e.completedResponse?.usage??p3(e.inputTokens,e.outputTokens,n);return{...e.completedResponse??{},id:e.completedResponse?.id??e.responseId,object:"response",created_at:e.completedResponse?.created_at??Math.floor(Date.now()/1e3),status:e.completedResponse?.status??e.status??"completed",model:e.completedResponse?.model??e.model,output:o,output_text:n,usage:i}}function m3(e,t,n,s){let o=null,i="",a=n??"",l=null,c="",u=null,d=null,f=0,m=0;const h=[],v=new Map;for(const b of e){if(b.data==="[DONE]")break;const y=Kl(b.data);if(y===null)continue;const k=Am(b,y);if(f===0&&(m=Date.now()),s&&Rm(h,f,m,k===""?"response.event":k,y),f++,Na(t,y),k==="error")continue;const j=u3(y);if(j!==null){o=j,i=j.id,a=j.model??a,l=j.status??l;const T=gu(j,t);u=T.inputTokens??u,d=T.outputTokens??d,Na(t,j)}const C=rt(y,"delta");switch(k){case"response.output_text.delta":C!==null&&(c+=C);break;case"response.output_text.done":{const T=rt(y,"text");c.length===0&&T!==null&&(c=T);break}case"response.function_call_arguments.delta":{if(C!==null){const T=Ta(v,zi(y,v.size));T.arguments+=C}break}case"response.function_call_arguments.done":{const T=rt(y,"arguments");if(T!==null){const N=Ta(v,zi(y,v.size));N.arguments=T}break}case"response.output_item.added":case"response.output_item.done":{const T=_o(y,"item");d3(v,zi(y,v.size),T);break}case"response.failed":case"response.incomplete":l=k.slice(9);break;case"response.completed":l="completed";break}}s&&(t.streamingChunks={chunks:h,truncated:f>Gl});const g=h3({completedResponse:o,responseId:i,model:a,status:l,outputText:c,calls:v,inputTokens:u,outputTokens:d}),x=oo.safeParse(g);if(x.success){if(gu(x.data,t).outputTokens===null){const y=Im(x.data),k=Math.ceil(y.length/4);t.outputTokens=k}return JSON.stringify(x.data)}if(t.outputTokens===null){const b=rt(g,"output_text")??c,y=Math.ceil(b.length/4);t.outputTokens=y}return JSON.stringify(g)}function fi(e,t,n,s=!0){const o=a3(e);return o.some(l3)?m3(o,t,n,s):c3(o,t,n,s)}function g3(){return{inputTokens:null,outputTokens:null,cacheCreationInputTokens:null,cacheReadInputTokens:null}}const x3={format:"openai",parseRequest(e,t){try{const n=JSON.parse(e),s=gf.safeParse(n);if(s.success)return{model:s.data.model,sessionId:t?.get("x-session-affinity")??null};const o=xf.safeParse(n);return o.success?{model:o.data.model,sessionId:t?.get("x-session-affinity")??null}:null}catch{return null}},extractTokens(e){const t=vf(e);if(t){let s=null;try{const o=JSON.parse(e);if(o!==null&&typeof o=="object"&&!Array.isArray(o)){const i=Object.getOwnPropertyDescriptor(o,"usage");if(i!==void 0&&typeof i.value=="object"&&i.value!==null){const a=Object.getOwnPropertyDescriptor(i.value,"prompt_tokens_details");if(a!==void 0&&typeof a.value=="object"&&a.value!==null){const l=Object.getOwnPropertyDescriptor(a.value,"cached_tokens");l!==void 0&&typeof l.value=="number"&&(s=l.value)}}}}catch{}return{inputTokens:t.usage.prompt_tokens??null,outputTokens:t.usage.completion_tokens??null,cacheCreationInputTokens:null,cacheReadInputTokens:s}}const n=yf(e);if(n!==null){const s=n.usage;return{inputTokens:s?.input_tokens??null,outputTokens:s?.output_tokens??null,cacheCreationInputTokens:null,cacheReadInputTokens:s?.input_tokens_details?.cached_tokens??null}}return g3()},extractStream(e,t,n,s){return fi(e,t,n,s)},detectFormat(e){if(e===null)return!1;try{const t=JSON.parse(e);if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=Object.keys(t);return n.includes("model")&&(n.includes("messages")||n.includes("input"))&&!n.includes("system")}return!1}catch{return!1}}};Nn.register(x3);const b3="https://api.openai.com/v1",v3={name:"openai",matches(e){const t=e.toLowerCase();return!!(t.startsWith("openai-")||t.includes("gpt-")||t.includes("o1")||t.includes("o2")||t.includes("o3"))},getUpstreamBase(e,t){return t?.baseUrl!==void 0?t.baseUrl:b3},extractStream(e,t,n,s){return fi(e,t,n,s)}};di.register(v3);const y3="https://open.bigmodel.cn/api/paas/v4",w3=["glm-","charglm-","cogview-","embedding-","rerank-"],_3={name:"zhipu",matches(e){const t=e.toLowerCase().replace(/\s+/g,"-");return w3.some(n=>t.startsWith(n))},getUpstreamBase(e,t){return t?.baseUrl??y3},extractStream(e,t,n,s){return fi(e,t,n,s)}};di.register(_3);const k3="https://dashscope.aliyuncs.com/compatible-mode/v1",j3={name:"alibaba",matches(e){return!!e.toLowerCase().replace(/\s+/g,"-").startsWith("qwen")},getUpstreamBase(e,t){return k3},extractStream(e,t,n){return fi(e,t,n)}};di.register(j3);function zm(e,t){for(const n of Array.from(e))t(n)}const S3=/[\u3000-\u9FFF\uAC00-\uD7FF\uF900-\uFAFF\uFF00-\uFFEF\u{1F300}-\u{1FAFF}]/u;function Jl(e){if(e.length===0)return 0;let t=0,n=0;return zm(e,s=>{S3.test(s)?t+=1:n+=1}),Math.ceil(t*1)+Math.ceil(n/4)}function Yl(e){if(e.length===0)return 0;let t=0;return zm(e,()=>{t+=1}),t}function Xl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ye(e,t){return e===null||typeof e!="object"||Array.isArray(e)?void 0:Object.getOwnPropertyDescriptor(e,t)?.value}const C3=["file","shell","browser","web","mcp","code","other"];function Ea(e){const t=e.replace(/\s+/g," ").trim();return t.length<=120?t:`${t.slice(0,119)}...`}function Om(e){if(e===null)return null;const t=e.replace(/\s+/g," ").trim();if(t.length===0)return null;const n=t.search(/[.!?。!?]/);return n>=24?Ea(t.slice(0,n+1)):Ea(t)}function N3(e,t){return`${e} ${t??""}`.toLowerCase()}function ts(e,t){return t.some(n=>e.includes(n))}function Pm(e,t){const n=N3(e,t);return e.startsWith("mcp__")||e.startsWith("inspector_")||ts(n,[" mcp","model context protocol"])?"mcp":ts(n,["bash","shell","terminal","command","powershell","exec","process"])?"shell":ts(n,["browser","playwright","screenshot","click","navigate","page","tab"])?"browser":ts(n,["read","write","edit","file","glob","grep","patch","filesystem","directory"])?"file":ts(n,["web","search","http","url","fetch"])?"web":ts(n,["code","typescript","javascript","python","repl"])?"code":"other"}function Mm(e){const t=ye(e,"properties");return t===null||typeof t!="object"||Array.isArray(t)?[]:Object.keys(t).sort((n,s)=>n.localeCompare(s))}function Lm(e){const t=ye(e,"required");if(!Array.isArray(t))return[];const n=[];for(const s of t)typeof s=="string"&&s.length>0&&n.push(s);return n.sort((s,o)=>s.localeCompare(o))}function T3(e){const t=ye(e,"name");if(typeof t!="string"||t.length===0)return null;const n=ye(e,"description"),s=ye(e,"input_schema")??null,o=typeof n=="string"?n:null;return{name:t,description:o,descriptionPreview:Om(o),category:Pm(t,o),parameterCount:Mm(s).length,requiredParameters:Lm(s),schema:s}}function E3(e){const t=ye(e,"function"),n=ye(e,"type");if(t===void 0&&typeof n!="string")return null;const s=ye(t,"name")??ye(e,"name")??(typeof n=="string"?n:void 0);if(typeof s!="string"||s.length===0)return null;const o=ye(t,"description")??ye(e,"description"),i=ye(t,"parameters")??ye(e,"parameters")??null,a=typeof o=="string"?o:null;return{name:s,description:a,descriptionPreview:Om(a),category:Pm(s,a),parameterCount:Mm(i).length,requiredParameters:Lm(i),schema:i}}function A3(e){const t=E3(e);return t!==null?t:T3(e)}function R3(e){if(e==null)return null;if(typeof e=="string")return e;const t=ye(e,"type"),n=ye(e,"name"),s=ye(ye(e,"function"),"name");if(typeof t=="string"&&typeof s=="string"&&s.length>0)return`${t}: ${s}`;if(typeof t=="string"&&typeof n=="string"&&n.length>0)return`${t}: ${n}`;if(typeof t=="string")return t;const o=JSON.stringify(e);return o===void 0?null:Ea(o)}function I3(e){const t=new Map;for(const n of e)t.set(n.category,(t.get(n.category)??0)+1);return C3.flatMap(n=>{const s=t.get(n)??0;return s>0?[{category:n,count:s}]:[]})}function Ql(e){const t=ye(e,"tools");if(!Array.isArray(t)||t.length===0)return null;const n=[];for(const s of t){const o=A3(s);o!==null&&n.push(o)}return n.length===0?null:{tools:n,toolChoiceLabel:R3(ye(e,"tool_choice")),categories:I3(n)}}function Mn(e){return{parsed:null,comparisonValue:e,messageCount:null,toolCount:null}}const hs={parsed:null,toolNames:null};function z3(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;switch(s.type){case"text":typeof s.text=="string"&&t.push(s.text);break;case"thinking":case"think":typeof s.thinking=="string"&&t.push(s.thinking);break;case"tool_use":{const i=typeof s.name=="string"?s.name:"",a=s.input!==void 0?JSON.stringify(s.input):"";t.push(`${i} ${a}`.trim());break}case"tool_result":{const i=s.content;if(typeof i=="string")t.push(i);else if(Array.isArray(i)){for(const a of i)if(a!==null&&typeof a=="object"){const l=a.text;typeof l=="string"&&t.push(l)}}break}case"image":t.push("[image]");break}}return t.join(`
90
- `)}function O3(e){if(typeof e=="string")return e;if(!Array.isArray(e))return"";const t=[];for(const n of e)if(n!==null&&typeof n=="object"){const s=n.text;n.type==="text"&&typeof s=="string"&&t.push(s)}return t.join(`
91
- `)}function P3(e){if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const s=n;typeof s.name=="string"&&t.push(s.name),typeof s.description=="string"&&t.push(s.description),s.input_schema!==void 0&&t.push(JSON.stringify(s.input_schema))}return t.join(`
92
- `)}function Oi(e,t,n,s){return{role:e,label:t,text:n,size:Jl(n),characters:Yl(n),path:s}}const M3={format:"anthropic",analyzeRequest(e){if(e===null)return Mn(e);try{const t=JSON.parse(e),n=Ql(t)?.tools.length??null,s=ff.safeParse(t);return s.success?{parsed:s.data,comparisonValue:s.data,messageCount:s.data.messages.length,toolCount:n}:Mn(e)}catch{return Mn(e)}},analyzeResponse(e){if(e===null)return hs;try{let t=JSON.parse(e);typeof t=="string"&&(t=JSON.parse(t));const n=pf.safeParse(t);if(!n.success)return hs;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 hs}},anatomySegments(e){if(e===null||typeof e!="object")return null;const t=e,n=[];if(t.system!==void 0){const s=O3(t.system);s.length>0&&n.push(Oi("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=z3(i.content);n.push(Oi(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.tools)&&t.tools.length>0){const s=P3(t.tools);n.push(Oi("tools","tools",s,"/tools"))}return n.length>0?n:null}};function Aa(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(`
93
- `)}function L3(e){const t=[],n=Aa(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(`
94
- `)}function D3(e){if(!Array.isArray(e))return"";const t=[];for(const n of e){if(n===null||typeof n!="object")continue;const s=ye(n,"function"),o=ye(s,"name")??ye(n,"name"),i=ye(s,"description")??ye(n,"description"),a=ye(s,"parameters")??ye(n,"parameters");typeof o=="string"&&t.push(o),typeof i=="string"&&t.push(i),a!==void 0&&t.push(JSON.stringify(a))}return t.join(`
95
- `)}function $3(e){return typeof e=="string"?e.length>0?1:0:Array.isArray(e)?e.length:e==null?null:1}function F3(e){if(typeof e=="string")return e;const t=ye(e,"text");if(typeof t=="string")return t;const n=Aa(ye(e,"content"));if(n.length>0)return n;const s=Aa(ye(e,"output"));if(s.length>0)return s;const o=ye(e,"arguments");return typeof o=="string"?o:""}function B3(e){const t=ye(e,"role");if(t==="system"||t==="user"||t==="assistant"||t==="tool")return t;const n=ye(e,"type");return n==="function_call_output"?"tool":"user"}function U3(e){const t=ye(e,"output");if(!Array.isArray(t))return[];const n=[];for(const s of t){if(ye(s,"type")!=="function_call")continue;const o=ye(s,"name");typeof o=="string"&&o.length>0&&n.push(o)}return n}function Ps(e,t,n,s){return{role:e,label:t,text:n,size:Jl(n),characters:Yl(n),path:s}}const W3={format:"openai",analyzeRequest(e){if(e===null)return Mn(e);try{const t=JSON.parse(e),n=Ql(t)?.tools.length??null,s=gf.safeParse(t);if(!s.success){const o=xf.safeParse(t);return o.success?{parsed:o.data,comparisonValue:o.data,messageCount:$3(o.data.input),toolCount:n}:Mn(e)}return{parsed:s.data,comparisonValue:s.data,messageCount:s.data.messages.length,toolCount:n}}catch{return Mn(e)}},analyzeResponse(e){if(e===null)return hs;const t=vf(e);if(t===null){const s=yf(e);if(s===null)return hs;const o=U3(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(Ps("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=L3(i);n.push(Ps(a,`[${o}] ${a}`,l,`/messages/${o}`))}),Array.isArray(t.messages)||(typeof t.input=="string"&&t.input.length>0?n.push(Ps("user","input",t.input,"/input")):Array.isArray(t.input)&&t.input.forEach((s,o)=>{const i=B3(s),a=F3(s);n.push(Ps(i,`[${o}] ${i}`,a,`/input/${o}`))})),Array.isArray(t.tools)&&t.tools.length>0){const s=D3(t.tools);n.push(Ps("tools","tools",s,"/tools"))}return n.length>0?n:null}},H3={format:"unknown",analyzeRequest(e){return Mn(e)},analyzeResponse(){return hs},anatomySegments(){return null}},V3={anthropic:M3,openai:W3,unknown:H3};function Dm(e){return V3[e]}function er(e){const t=XN(e.path);return t==="unknown"?e.apiFormat:t}const xu="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 Pi({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 q3(){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(Xe,{className:"size-3 animate-spin"}),"Turn open"]})}function Z3({conversationId:e,startTime:t,endTime:n,totalCalls:s,totalInputTokens:o,totalOutputTokens:i,expanded:a,onToggle:l,providers:c,isLoading:u=!1,userAgent:d,clientPid:f,clientProjectFolder:m,showClientIdentity:h=!0,showProcessMetadata:v=!0,timeDisplayFormat:g,onClear:x}){const[b,y]=p.useState(!1),k=$=>{$.stopPropagation(),x!==void 0&&y(!0)},j=p.useCallback($=>{$.stopPropagation(),window.open(Td(e),"_blank","noopener,noreferrer")},[e]),C=c?.map(({provider:$,models:ee})=>({provider:$,tooltip:ee.length===1?ee[0]??$:ee.join(", ")}))??[],T=El({userAgent:d,conversationId:e,clientProjectFolder:m}),N=Go(T),z=d!=null&&d!=="",A=N??d??null,O=N!==null&&z?`${N} - ${d}`:null,D=e.startsWith("PID:")||e.includes("|"),E=e.length>24?e.slice(0,12)+"..."+e.slice(-12):e,L=yl(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(VN,{items:C,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:[D&&v?f!=null?r.jsxs("span",{className:"min-w-0 max-w-full truncate font-mono text-xs font-semibold text-violet-200",title:`PID ${f}`,children:["PID ",f]}):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:D?"sessionless":E}),!D&&v&&f!==null&&f!==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 ${f}`,children:["PID ",f]}),D&&v&&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&&A!==null&&A!==""&&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:O??A,children:[r.jsx(Ko,{client:T,className:"size-4 shrink-0"}),r.jsx("span",{className:"font-mono leading-snug tabular-nums",children:A})]}),u&&r.jsx(q3,{})]}),r.jsxs("span",{className:"mt-1.5 flex min-w-0 flex-wrap items-center gap-1.5",children:[r.jsx(Pi,{icon:r.jsx(tn,{className:"size-3 shrink-0"}),title:L,children:L}),r.jsx(Pi,{icon:r.jsx(Uo,{className:"size-3 shrink-0"}),children:w}),r.jsxs(Pi,{icon:r.jsx(Ys,{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:xu,children:r.jsx(gl,{className:"size-3.5"})}),x!==void 0&&r.jsx("button",{type:"button",onClick:k,"aria-label":`Clear group (${s} request${s!==1?"s":""})`,title:"Clear this group from the current view",className:xu,children:r.jsx(Wt,{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(ot,{className:"size-4 shrink-0"}):u?r.jsx(Xe,{className:"size-4 shrink-0 animate-spin"}):r.jsx(Nt,{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($p,{open:b,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 G3(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 K3(e){const t=new Map;for(const s of e){const o=G3(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 J3(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 d=t[c*2];u=o[c]={index:c,key:n(c),start:d,size:t[c*2+1],end:d+t[c*2+1],lane:0}}return u}}if(i==="length")return e}return Reflect.get(o,i,a)}})}function ns(e,t,n){let s=n.initialDeps??[],o,i=!0;function a(){const l=e();return(l.length!==s.length||l.some((u,d)=>s[d]!==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 bu(e,t){if(e===void 0)throw new Error("Unexpected undefined");return e}const vu=(e,t)=>Math.abs(e-t)<1.01,Y3=(e,t,n)=>{let s;return function(...o){e.clearTimeout(s),s=e.setTimeout(()=>t.apply(this,o),n)}};let Ms;const yu=()=>{if(Ms!==void 0)return Ms;if(typeof navigator>"u")return Ms=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Ms=!0;const e=navigator.maxTouchPoints;return Ms=navigator.platform==="MacIntel"&&e!==void 0&&e>0},wu=e=>{const{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},X3=e=>e,Q3=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},e4=(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(wu(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(wu(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(l):l()});return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},tr={passive:!0},t4=(e,t)=>{const n=e.scrollElement;if(!n)return;const s=()=>{t({width:n.innerWidth,height:n.innerHeight})};return s(),n.addEventListener("resize",s,tr),()=>{n.removeEventListener("resize",s)}},n4=typeof window>"u"?!0:"onscrollend"in window,$m=(e,t,n)=>{const s=e.scrollElement;if(!s)return;const o=e.targetWindow;if(!o)return;const i=e.options.useScrollendEvent&&n4;let a=0;const l=i?null:Y3(o,()=>t(a,!1),e.options.isScrollingResetDelay),c=f=>()=>{a=n(s),l?.(),t(a,f)},u=c(!0),d=c(!1);return s.addEventListener("scroll",u,tr),i&&s.addEventListener("scrollend",d,tr),()=>{s.removeEventListener("scroll",u),i&&s.removeEventListener("scrollend",d)}},s4=(e,t)=>$m(e,t,n=>{const{horizontal:s,isRtl:o}=e.options;return s?n.scrollLeft*(o&&-1||1):n.scrollTop}),r4=(e,t)=>$m(e,t,n=>e.options.horizontal?n.scrollX:n.scrollY),o4=(e,t,n)=>{if(t?.borderBoxSize){const s=t.borderBoxSize[0];if(s)return Math.round(s[n.options.horizontal?"inlineSize":"blockSize"])}return e[n.options.horizontal?"offsetWidth":"offsetHeight"]},Fm=(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})},i4=Fm,a4=Fm;class l4{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,d]of this.elementsCache)if(d===l){this.elementsCache.delete(u);break}return}this.shouldMeasureDuringScroll(c)&&this.resizeItem(c,this.options.measureElement(l,i,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(a):a()})}));return{disconnect:()=>{var o;(o=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:X3,rangeExtractor:Q3,onChange:()=>{},measureElement:o4,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate"};for(const u in n){const d=n[u];d!==void 0&&(i[u]=d)}const a=this.options;let l=null,c=null;if(a!==void 0&&a.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){const u=a.count,d=i.count,f=this.getMeasurements(),m=u>0?((s=f[0])==null?void 0:s.key)??a.getItemKey(0):null,h=u>0?((o=f[u-1])==null?void 0:o.key)??a.getItemKey(u-1):null;if(d!==u||u>0&&d>0&&(i.getItemKey(0)!==m||i.getItemKey(d-1)!==h)){const x=u>0?this.getVirtualItemForOffset(this.getScrollOffset())??f[0]:null;x&&(l=[x.key,this.getScrollOffset()-x.start]);const b=i.followOnAppend===!0?"auto":i.followOnAppend||null;b&&d>u&&this.isAtEnd(a.scrollEndThreshold)&&(u===0||i.getItemKey(d-1)!==h)&&(c=b)}}this.options=i,(l||c)&&(this.pendingScrollAnchor=[l?.[0]??null,l?.[1]??0,c])},this.notify=n=>{var s,o;(o=(s=this.options).onChange)==null||o.call(s,this,n)},this.maybeNotify=ns(()=>(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)=>{this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5&&(i=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0,this.scrollDirection=a?this.getScrollOffset()<i?"forward":"backward":null,this.scrollOffset=i,this.isScrolling=a,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),"addEventListener"in this.scrollElement){const i=this.scrollElement,a=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},l=()=>{this._iosTouching=!1,!(!yu()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};i.addEventListener("touchstart",a,tr),i.addEventListener("touchend",l,tr),this.unsubs.push(()=>{i.removeEventListener("touchstart",a),i.removeEventListener("touchend",l),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const o=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,o&&this.scrollElement&&this.options.enabled){const[i,a,l]=o;if(i!==null){const{count:c,getItemKey:u}=this.options;let d=0;for(;d<c&&u(d)!==i;)d++;const f=d<c?this.getMeasurements()[d]:void 0;if(f){const m=f.start+a-this.getScrollOffset();vu(m,0)||this.applyScrollAdjustment(m)}}l&&this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const n=this.getScrollOffset(),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=ns(()=>[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=ns(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:n,paddingStart:s,scrollMargin:o,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:c},u)=>{const d=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n)for(const v of this.laneAssignments.keys())v>=n&&this.laneAssignments.delete(v);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(v=>{this.itemSizeCache.set(v.key,v.size)}));const f=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n&&(this.lanesSettling=!1),l===1){const v=this.options.gap,g=n*2;let x=this._flatMeasurements;if(!x||x.length<g){const k=new Float64Array(g);x&&f>0&&k.set(x.subarray(0,f*2)),x=k,this._flatMeasurements=x}let b;if(f===0)b=s+o;else{const k=f-1;b=x[k*2]+x[k*2+1]+v}for(let k=f;k<n;k++){const j=i(k),C=d.get(j),T=typeof C=="number"?C:this.options.estimateSize(k);x[k*2]=b,x[k*2+1]=T,b+=T+v}const y=J3(n,x,i);return this.measurementsCache=y,y}const m=this.measurementsCache.slice(0,f),h=new Array(l).fill(void 0);for(let v=0;v<f;v++){const g=m[v];g&&(h[g.lane]=v)}for(let v=f;v<n;v++){const g=i(v),x=this.laneAssignments.get(v);let b,y;const k=c==="estimate"||d.has(g);if(x!==void 0&&this.options.lanes>1){b=x;const N=h[b],z=N!==void 0?m[N]:void 0;y=z?z.end+this.options.gap:s+o}else{const N=this.options.lanes===1?m[v-1]:this.getFurthestMeasurement(m,v);y=N?N.end+this.options.gap:s+o,b=N?N.lane:v%this.options.lanes,this.options.lanes>1&&k&&this.laneAssignments.set(v,b)}const j=d.get(g),C=typeof j=="number"?j:this.options.estimateSize(v),T=y+C;m[v]={index:v,start:y,size:C,end:T,key:g,lane:b},h[b]=v}return this.measurementsCache=m,m},{key:!1,debug:()=>this.options.debug}),this.calculateRange=ns(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,s,o,i)=>this.range=n.length>0&&s>0?c4({measurements:n,outerSize:s,scrollOffset:o,lanes:i,flat:i===1&&this._flatMeasurements!=null?this._flatMeasurements:null}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ns(()=>{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 d=this.itemSizeCache.get(c)??a,f=s-d;if(f!==0){const m=this.options.anchorTo==="end"&&((o=this.scrollState)==null?void 0:o.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,h=m?this.getTotalSize():0,v=((i=this.scrollState)==null?void 0:i.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[n]??{index:n,key:c,start:l,size:a,end:l+a,lane:0},f,this):l<this.getScrollOffset()+this.scrollAdjustments&&this.scrollDirection!=="backward");(this.pendingMin===null||n<this.pendingMin)&&(this.pendingMin=n),this.itemSizeCache.set(c,s),this.itemSizeCacheVersion++,m?this.applyScrollAdjustment(this.getTotalSize()-h):v&&this.applyScrollAdjustment(f),this.notify(!1)}},this.getVirtualItems=ns(()=>[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=Bm(0,s.length-1,i?l=>o[l*2]:l=>bu(s[l]).start,n);return bu(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&&(yu()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:n}))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}const 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&&vu(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 Bm=(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 c4({measurements:e,outerSize:t,scrollOffset:n,lanes:s,flat:o}){const i=e.length-1,a=o?d=>o[d*2]:d=>e[d].start,l=o?d=>o[d*2]+o[d*2+1]:d=>e[d].end;if(e.length<=s)return{startIndex:0,endIndex:i};let c=Bm(0,i,a,n),u=c;if(s===1)for(;u<i&&l(u)<n+t;)u++;else if(s>1){const d=Array(s).fill(0);for(;u<i&&d.some(m=>m<n+t);){const m=e[u];d[m.lane]=m.end,u++}const f=Array(s).fill(n+t);for(;c>=0&&f.some(m=>m>=n);){const m=e[c];f[m.lane]=m.start,c--}c=Math.max(0,c-c%s),u=Math.min(i,u+(s-1-u%s))}return{startIndex:c,endIndex:u}}const _u=typeof document<"u"?p.useLayoutEffect:p.useEffect;function Um({useFlushSync:e=!0,...t}){const n=p.useReducer(i=>i+1,0)[1],s={...t,onChange:(i,a)=>{var l;e&&a?or.flushSync(n):n(),(l=t.onChange)==null||l.call(t,i,a)}},[o]=p.useState(()=>new l4(s));return o.setOptions(s),_u(()=>o._didMount(),[]),_u(()=>o._willUpdate()),o}function u4(e){return Um({observeElementRect:e4,observeElementOffset:s4,scrollToFn:a4,...e})}function d4(e){return Um({getScrollElement:()=>typeof document<"u"?window:null,observeElementRect:t4,observeElementOffset:r4,scrollToFn:i4,initialOffset:()=>typeof document<"u"?window.scrollY:0,...e})}const on="agent-inspector:focus-log";function nr(e){window.dispatchEvent(new CustomEvent(on,{detail:e}))}function pi(e){if(typeof CustomEvent>"u"||!(e instanceof CustomEvent))return null;const t=e.detail,n=ye(t,"logId");if(typeof n!="number"||!Number.isInteger(n)||n<0)return null;const s=ye(t,"tab");switch(s){case"anatomy":case"request":case"response":break;case void 0:break;default:return null}const o=ye(t,"source"),i=ye(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 It({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 Tn=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"})]}),Wm=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 Hm({className:e}){return r.jsx(It,{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:Tn,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 f4({className:e}){return r.jsx(It,{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:Wm,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 p4({className:e}){return r.jsx(It,{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:Tn,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 h4({className:e}){return r.jsx(It,{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 m4({className:e}){return r.jsx(It,{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:Tn,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 g4({className:e}){return r.jsx(It,{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:Tn,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 x4({className:e}){return r.jsx(It,{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:Wm,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 b4({className:e}){return r.jsx(It,{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:Tn,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 v4({className:e}){return r.jsx(It,{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:Tn,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 y4({className:e}){return r.jsx(It,{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:Tn,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 w4({className:e}){return r.jsx(It,{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:Tn,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 _4({className:e}){return r.jsx(It,{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 sr=[Hm,f4,p4,h4,m4,g4,x4,b4,v4,y4,w4,_4];function ec(e){return sr[Math.abs(e)%sr.length]??Hm}function k4(e){const t=sr.length-2;return t<=0?0:1+((Number.isFinite(e)?Math.trunc(e):0)%t+t)%t}function j4(e){return ec(k4(e))}const S4="x-anthropic-billing-header:";function C4(e){return e.trimStart().toLowerCase().startsWith(S4)}function N4(e){return Xl(e)?Object.prototype.hasOwnProperty.call(e,"system"):!1}function T4(e){if(!Xl(e))return!1;const t=ye(e,"type"),n=ye(e,"text");return typeof t!="string"||t!=="text"||typeof n!="string"?!1:C4(n)}function E4(e){let t;try{t=JSON.parse(e)}catch{return{body:e,removed:0}}if(!N4(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(T4(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 A4=400,ku=2e3;function R4(e){return Array.isArray(e)}function I4(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(R4(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 z4(e){const t=I4(e,ku+1);return t<=A4?{depth:Number.POSITIVE_INFINITY}:t<=ku?{depth:3}:{depth:2}}function O4(e){try{const t=JSON.parse(e);return{kind:"json",data:ko(t)}}catch{return{kind:"text"}}}function Mi(e){const t=p.useMemo(()=>e===null?null:O4(e),[e]),n=t?.kind==="json"?t.data:null,s=p.useMemo(()=>n===null?null:z4(n),[n]),[o,i]=p.useState(!1),[a,l]=p.useState(0),[c,u]=p.useState(0),[d,f]=p.useTransition(),m=p.useCallback(()=>{const h=!o,v=h&&s!==null?s.depth:0;f(()=>{i(h),l(v),u(g=>g+1)})},[o,s]);return{parsedData:n,policy:s,isExpanded:o,toggle:m,isPending:d,bulkDepth:a,bulkRevision:c}}function ko(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=>ko(n));const t={};for(const n of Object.keys(e)){const s=Object.getOwnPropertyDescriptor(e,n);t[n]=ko(s?.value)}return t}case"bigint":case"symbol":case"function":case"undefined":return String(e)}return null}function Vm({className:e,orientation:t="horizontal",...n}){return r.jsx(vN,{"data-slot":"tabs","data-orientation":t,orientation:t,className:ae("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const P4=Tl("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 qm({className:e,variant:t="default",...n}){return r.jsx(yN,{"data-slot":"tabs-list","data-variant":t,className:ae(P4({variant:t}),e),...n})}function jt({className:e,...t}){return r.jsx(wN,{"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 St({className:e,...t}){return r.jsx(_N,{"data-slot":"tabs-content",className:ae("flex-1 outline-none",e),...t})}function mn(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&&Ct(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 M4=p.lazy(()=>Un(()=>import("./CompareDrawer-DDfwHQUi.js"),__vite__mapDeps([0,1])).then(e=>({default:e.CompareDrawer}))),L4=p.lazy(()=>Un(()=>import("./ReplayDialog-D-26DMBt.js"),__vite__mapDeps([2,1,3])).then(e=>({default:e.ReplayDialog}))),D4=p.lazy(()=>Un(()=>import("./RequestAnatomy-B6zNFqNX.js"),__vite__mapDeps([4,1])).then(e=>({default:e.RequestAnatomy}))),$4=p.lazy(()=>Un(()=>import("./ResponseView-Ccy95rWI.js"),__vite__mapDeps([3,1])).then(e=>({default:e.ResponseView}))),F4=p.lazy(()=>Un(()=>import("./StreamingChunkSequence-yIiscGuE.js"),__vite__mapDeps([5,1])).then(e=>({default:e.StreamingChunkSequence}))),Ra=p.lazy(()=>Un(()=>import("./json-viewer-C838cVmD.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewer}))),B4=p.lazy(()=>Un(()=>import("./json-viewer-C838cVmD.js"),__vite__mapDeps([6,1])).then(e=>({default:e.JsonViewerFromString}))),U4=1200,W4=12;function H4(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=f=>{f.scrollIntoView({behavior:"smooth",block:"center"}),f.classList.add("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),i.current!==null&&clearTimeout(i.current),i.current=setTimeout(()=>{f.classList.remove("ring-2","ring-primary/60","ring-offset-1","ring-offset-background","rounded-sm","transition-shadow"),n(null)},o??U4)},u=`[data-anatomy-path="${(f=>typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(f):f.replace(/(["'\\[\](){}])/g,"\\$1"))(a.path)}"]`,d=f=>{const m=t.current;if(m!==null){const h=m.querySelector(u);if(h!==null){l(h);return}}f>0?window.requestAnimationFrame(()=>d(f-1)):n(null)};window.requestAnimationFrame(()=>d(W4))},[t,s,o,n])}const ju="The compact log metadata is still available. Retry if the local server was restarting or the body store was briefly unavailable.";function us(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 V4(e,t){const n=[];return e!=null&&n.push(`Request ${us(e)}`),t!=null&&n.push(`Response ${us(t)}`),n.length===0?null:n.join(" · ")}function q4(e){if(e instanceof Fo)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===""?ju:t}}return{title:"Full bodies could not be loaded",detail:ju}}class Zm{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,d=l+c;s.maxEditLength!=null&&(d=Math.min(d,s.maxEditLength));const f=(i=s.timeout)!==null&&i!==void 0?i:1/0,m=Date.now()+f,h=[{oldPos:-1,lastComponent:void 0}];let v=this.extractCommon(h[0],n,t,0,s);if(h[0].oldPos+1>=c&&v+1>=l)return a(this.buildValues(h[0].lastComponent,n,t));let g=-1/0,x=1/0;const b=()=>{for(let y=Math.max(g,-u);y<=Math.min(x,u);y+=2){let k;const j=h[y-1],C=h[y+1];j&&(h[y-1]=void 0);let T=!1;if(C){const z=C.oldPos-y;T=C&&0<=z&&z<l}const N=j&&j.oldPos+1<c;if(!T&&!N){h[y]=void 0;continue}if(!N||T&&j.oldPos<C.oldPos?k=this.addToPath(C,!0,!1,0,s):k=this.addToPath(j,!1,!0,1,s),v=this.extractCommon(k,n,t,y,s),k.oldPos+1>=c&&v+1>=l)return a(this.buildValues(k.lastComponent,n,t))||!0;h[y]=k,k.oldPos+1>=c&&(x=Math.min(x,y-1)),v+1>=l&&(g=Math.max(g,y+1))}u++};if(o)(function y(){setTimeout(function(){if(u>d||Date.now()>m)return o(void 0);b()||y()},0)})();else for(;u<=d&&Date.now()<=m;){const y=b();if(y)return y}}addToPath(t,n,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,d=0;for(;u+1<a&&c+1<l&&this.equals(s[c+1],n[u+1],i);)u++,c++,d++,i.oneChangePerToken&&(t.lastComponent={count:1,previousComponent:t.lastComponent,added:!1,removed:!1});return d&&!i.oneChangePerToken&&(t.lastComponent={count:d,previousComponent:t.lastComponent,added:!1,removed:!1}),t.oldPos=c,u}equals(t,n,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 d=o[l];if(d.removed)d.value=this.join(s.slice(u,u+d.count)),u+=d.count;else{if(!d.added&&this.useLongestToken){let f=n.slice(c,c+d.count);f=f.map(function(m,h){const v=s[u+h];return v.length>m.length?v:m}),d.value=this.join(f)}else d.value=this.join(n.slice(c,c+d.count));c+=d.count,d.added||(u+=d.count)}}return o}}class Z4 extends Zm{constructor(){super(...arguments),this.tokenize=Km}equals(t,n,s){return s.ignoreWhitespace?((!s.newlineIsToken||!t.includes(`
96
- `))&&(t=t.trim()),(!s.newlineIsToken||!n.includes(`
97
- `))&&(n=n.trim())):s.ignoreNewlineAtEof&&!s.newlineIsToken&&(t.endsWith(`
98
- `)&&(t=t.slice(0,-1)),n.endsWith(`
99
- `)&&(n=n.slice(0,-1))),super.equals(t,n,s)}}const G4=new Z4;function Gm(e,t,n){return G4.diff(e,t,n)}function Km(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,`
100
- `));const n=[],s=e.split(/(\n|\r\n)/);s[s.length-1]||s.pop();for(let o=0;o<s.length;o++){const i=s[o];o%2&&!t.newlineIsToken?n[n.length-1]+=i:n.push(i)}return n}class K4 extends Zm{constructor(){super(...arguments),this.tokenize=Km}get useLongestToken(){return!0}castInput(t,n){const{undefinedReplacement:s,stringifyReplacer:o=(i,a)=>typeof a>"u"?s:a}=n;return typeof t=="string"?t:JSON.stringify(Ia(t,null,null,o),null," ")}equals(t,n,s){return super.equals(t.replace(/,([\r\n])/g,"$1"),n.replace(/,([\r\n])/g,"$1"),s)}}const J4=new K4;function Y4(e,t,n){return J4.diff(e,t,n)}function Ia(e,t,n,s,o){t=t||[],n=n||[],s&&(e=s(o===void 0?"":o,e));let i;for(i=0;i<t.length;i+=1)if(t[i]===e)return n[i];let a;if(Object.prototype.toString.call(e)==="[object Array]"){for(t.push(e),a=new Array(e.length),n.push(a),i=0;i<e.length;i+=1)a[i]=Ia(e[i],t,n,s,String(i));return t.pop(),n.pop(),a}if(e&&e.toJSON&&(e=e.toJSON()),typeof e=="object"&&e!==null){t.push(e),a={},n.push(a);const l=[];let c;for(c in e)Object.prototype.hasOwnProperty.call(e,c)&&l.push(c);for(l.sort(),i=0;i<l.length;i+=1)c=l[i],a[c]=Ia(e[c],t,n,s,c);t.pop(),n.pop()}else a=e;return a}function Su(e){return e===void 0?[]:Object.entries(e).map(t=>[t[0].toLowerCase(),t[1]]).sort(([t],[n])=>t.localeCompare(n))}function Cu([e,t]){return`${e}: ${t}`}function za(e){const t=[];let n=0,s=0;for(const o of e){const i=o.value.split(`
101
- `);i.length>0&&i[i.length-1]===""&&i.pop();for(const a of i)o.added?(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 X4(e,t){const n=Su(e).map(Cu).join(`
102
- `),s=Su(t).map(Cu).join(`
103
- `);if(n===s)return{lines:[],isEmpty:!0};const o=Gm(n,s);return{lines:za(o),isEmpty:!1}}function Nu(e){try{const t=JSON.parse(e);return t===null||typeof t=="string"||typeof t=="object"?t:null}catch{return null}}function Q4(e,t){const n=e??"",s=t??"";if(n===s)return{lines:[],isEmpty:!0};const o=Nu(n),i=Nu(s);if(o!==null&&i!==null){const l=Y4(o,i)??[];if(l.length===1){const c=l[0];if(c!==void 0&&!c.added&&!c.removed)return{lines:[],isEmpty:!0}}return{lines:za(l),isEmpty:!1}}const a=Gm(n,s);return{lines:za(a),isEmpty:!1}}const eT=22,Li=1e4;function tT(e){return e==="added"?"+":e==="removed"?"-":" "}function nT(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 sT=function({result:t,emptyLabel:n}){const[s,o]=p.useState("unified"),i=p.useRef(null),a=u4({count:t.lines.length,getScrollElement:()=>i.current,estimateSize:()=>eT,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>Li,u=c?t.lines.slice(0,Li):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 ${Li.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(Aw,{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(Ny,{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(rT,{virtualizer:a,lines:u}):r.jsx(aT,{lines:u})})]})};function rT({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",nT(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:tT(s.kind)}),r.jsx("span",{className:"whitespace-pre-wrap break-all flex-1",children:s.text})]},n.key)})})}function oT(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 iT(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 aT({lines:e}){const t=oT(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",iT(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 Jm=p.memo(sT),lT=Tl("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 Pe({className:e,variant:t="default",asChild:n=!1,...s}){const o=n?R5:"span";return r.jsx(o,{"data-slot":"badge","data-variant":t,className:ae(lT({variant:t}),e),...s})}const cT={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"},uT={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"}},Ls="border border-transparent bg-white/[0.045] hover:bg-white/[0.075] size-8 text-muted-foreground shadow-none hover:text-cyan-100",Pt="bg-white/[0.045] flex h-7 items-center gap-1 rounded-md px-2 text-xs";function Ds(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function dT(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function fT(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 Tu({trend:e}){if(e===null)return null;const t=e.direction==="up",n=t?H2:D2,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 pT=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:d=0,showClientMetadata:f=!0,timeDisplayFormat:m}){const h=w5(e.responseStatus),v=e.elapsedMs!==null&&d>0&&e.elapsedMs>d*1e3,g=e.inputTokens!==null||e.outputTokens!==null,x=e.firstChunkMs??null,b=e.tokensPerSecond??null,y=x===null?null:Ds(x),k=b===null||b<=0?null:dT(b),j=e.warnings?.length??0,C=e.clientPid!==null&&e.clientPid!==void 0,T=e.clientProjectFolder!==null&&e.clientProjectFolder!==void 0&&e.clientProjectFolder!=="";e.clientCwd!==null&&e.clientCwd!==void 0&&e.clientCwd;const N=uT[h],z=fT(h,e.responseStatus),A=h!=="success"||e.responseStatus!==200,O=e.streaming&&y===null&&k===null;return r.jsx(_n,{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:D=>{(D.key==="Enter"||D.key===" ")&&(D.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",N.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(tn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",title:e.timestamp,children:da(e.timestamp,m)})]}),A&&r.jsxs(Pe,{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)]",cT[h]),children:[h==="success"?r.jsx(Ze,{className:"size-3","aria-label":"Success"}):h==="server_error"?r.jsx(bw,{className:"size-3","aria-label":"Server error"}):h==="client_error"?r.jsx(xn,{className:"size-3","aria-label":"Client error"}):r.jsx(Xe,{className:"size-3 animate-spin","aria-label":"Pending"}),z]}),j>0&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsxs(Pe,{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(xn,{className:"size-3","aria-label":"Tool schema warnings"}),j]})}),r.jsx(ut,{children:j===1?"1 tool schema warning":`${j} tool schema warnings`})]}),e.elapsedMs!==null&&(v?r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsxs("span",{className:ae(Pt,"shrink-0 border-amber-300/25 text-amber-200"),children:[r.jsx(tn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:Ds(e.elapsedMs)}),r.jsx(xn,{className:"size-3","aria-label":"Slow response"})]})}),r.jsxs(ut,{children:["Slow response: ",Ds(e.elapsedMs)," exceeds"," ",Ds(d*1e3)]})]}):r.jsxs("span",{className:ae(Pt,"shrink-0 text-muted-foreground"),children:[r.jsx(tn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:Ds(e.elapsedMs)})]})),e.streaming&&y!==null&&r.jsxs("span",{className:ae(Pt,"shrink-0 text-cyan-300"),children:[r.jsx(Ic,{className:"size-3"}),r.jsxs("span",{className:"font-mono tabular-nums",children:["first ",y]})]}),e.streaming&&k!==null&&r.jsxs("span",{className:ae(Pt,"shrink-0 text-cyan-300"),children:[r.jsx(vl,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:k})]}),g&&r.jsxs("span",{className:ae(Pt,"min-w-0 sm:shrink-0"),children:[r.jsx(Ys,{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(Pt,"shrink-0"),children:[r.jsx(Tu,{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(Pt,"shrink-0"),children:[r.jsx(Tu,{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(Pt,"shrink-0 text-muted-foreground"),children:[r.jsx(Uo,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:n})]}),s!==null&&r.jsxs("span",{className:ae(Pt,"shrink-0 text-muted-foreground"),children:[r.jsx(lr,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:s})]}),e.origin!==null&&r.jsxs("span",{className:ae(Pt,"hidden shrink-0 text-muted-foreground xl:flex"),title:`Origin: ${e.origin}`,children:[r.jsx(Pf,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums truncate max-w-[120px]",title:e.origin,children:e.origin})]}),f&&(C||T)&&r.jsxs("span",{className:ae(Pt,"hidden shrink-0 text-purple-300 xl:flex"),children:[r.jsx(Hy,{className:"size-3"}),T?r.jsx("span",{className:"font-mono tabular-nums",children:e.clientProjectFolder}):r.jsxs("span",{className:"font-mono tabular-nums",children:["PID ",e.clientPid]})]}),O&&r.jsx(Ic,{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:D=>D.stopPropagation(),onKeyDown:D=>D.stopPropagation(),children:[c!==void 0&&l!==void 0&&(()=>{const D=c[l];return D===void 0?null:r.jsxs(r.Fragment,{children:[D.expansion!==null&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx(we,{variant:"outline",size:"icon",className:Ls,onClick:D.expansion.onToggle,disabled:D.expansion.isPending,"aria-pressed":D.expansion.isExpanded,"aria-label":D.expansion.isExpanded?"Collapse all JSON":"Expand all JSON",children:D.expansion.isExpanded?r.jsx(uy,{className:"size-3.5"}):r.jsx(ry,{className:"size-3.5"})})}),r.jsx(ut,{children:D.expansion.isExpanded?"Collapse all JSON nodes":"Expand all JSON nodes"})]}),D.diffWithRaw!==void 0&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx(we,{variant:"outline",size:"icon",className:ae(Ls,D.diffWithRaw.active&&"border-cyan-300/35 bg-cyan-400/15 text-cyan-100"),onClick:D.diffWithRaw.onToggle,"aria-pressed":D.diffWithRaw.active,"aria-label":D.diffWithRaw.active?"Hide raw diff":"Diff with raw",children:r.jsx(Fy,{className:"size-3.5"})})}),r.jsx(ut,{children:D.diffWithRaw.active?"Hide diff with raw request":"Show diff between displayed and raw request body"})]}),D.diffWithPrevious!==void 0&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx(we,{variant:"outline",size:"icon",className:Ls,onClick:D.diffWithPrevious,"aria-label":"Diff with previous",children:r.jsx(Mf,{className:"size-3.5"})})}),r.jsx(ut,{children:"Compare this request with the immediately preceding one"})]}),D.copyText!==null&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx(we,{variant:"outline",size:"icon",className:Ls,onClick:D.onCopy,"aria-label":D.copyCopied?"Copied":D.copyLabel,children:D.copyCopied?r.jsx(Ze,{className:"size-3.5 text-cyan-300"}):r.jsx(Et,{className:"size-3.5"})})}),r.jsx(ut,{children:D.copyCopied?"Copied to clipboard":D.copyLabel})]})]})})(),u!==void 0&&r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx(we,{variant:"outline",size:"icon",className:Ls,onClick:u,"aria-label":"Replay request",children:r.jsx(Nw,{className:"size-3.5"})})}),r.jsx(ut,{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(ot,{className:"size-4 shrink-0"}):r.jsx(Nt,{className:"size-4 shrink-0"})})]})]})})});function hT({...e}){return r.jsx(Bj,{"data-slot":"collapsible",...e})}function W8({...e}){return r.jsx(Vp,{"data-slot":"collapsible-trigger",...e})}function mT({...e}){return r.jsx(qp,{"data-slot":"collapsible-content",...e})}function gT({className:e,children:t,...n}){return r.jsxs(zC,{"data-slot":"scroll-area",className:ae("relative overflow-hidden",e),...n,children:[r.jsx(OC,{"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(xT,{}),r.jsx(PC,{})]})}function xT({className:e,orientation:t="vertical",...n}){return r.jsx(Th,{"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(Ih,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}const Ym={file:"file",shell:"shell",browser:"browser",web:"web",mcp:"MCP",code:"code",other:"other"},bT={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 vT({category:e}){switch(e){case"file":return r.jsx(qy,{className:"size-3.5"});case"shell":return r.jsx(Cs,{className:"size-3.5"});case"browser":return r.jsx(hw,{className:"size-3.5"});case"web":return r.jsx(Pf,{className:"size-3.5"});case"mcp":return r.jsx(K2,{className:"size-3.5"});case"code":return r.jsx(Sy,{className:"size-3.5"});case"other":return r.jsx(zy,{className:"size-3.5"})}}function yT({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(Pe,{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 wT({tool:e,called:t}){const[n,s]=p.useState(!1),o=mn(e.name),i=e.description!==null||e.requiredParameters.length>0||e.schema!==null;return r.jsx(hT,{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(vT,{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(Pe,{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(ot,{className:"size-3.5 shrink-0 text-muted-foreground"}):r.jsx(Nt,{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(Ze,{className:"size-3.5 text-emerald-400"}):r.jsx(Et,{className:"size-3.5"})})]}),r.jsx(mT,{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(yT,{names:e.requiredParameters}),e.schema!==null&&r.jsx(gT,{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(Ra,{data:ko(e.schema),defaultExpandDepth:0})})})]})})]})})}function _T(e,t){return t.length===0?!0:`${e.name} ${e.description??""} ${Ym[e.category]}`.toLowerCase().trim().includes(t)}const kT=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=>_T(m,c)),[c,t]);if(t===null)return null;const d=t.tools.slice(0,6),f=t.tools.length-d.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(lr,{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(Pe,{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(Pe,{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(Pe,{variant:"outline",className:ae("h-5 rounded-md px-1.5 py-0 font-mono text-[10px]",bT[m.category]),children:[m.count," ",Ym[m.category]]},m.category))})]})]}),r.jsxs(we,{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(ot,{className:"size-3.5"}):r.jsx(Nt,{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:[d.map(m=>r.jsx(Pe,{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)),f>0&&r.jsxs("span",{className:"font-mono text-[10px] leading-5 text-muted-foreground",children:["+",f]})]}),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(Ff,{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(wT,{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 Eu(e,t,n){return e==="anthropic"&&t==="full"&&n}function jT(e,t){return e==="full"&&t}function ST(e,t,n,s){return e==="anthropic"&&t==="full"&&n&&s}function ss(){return r.jsx("div",{className:"h-1","aria-hidden":"true"})}function CT(e,t){switch(e){case"anatomy":return t===null?"request":"anatomy";case"request":return"request";case"response":return"parsed"}}const NT=15e3,TT=15e3,ET=256*1024,jo=1024*1024,An="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 Ir(e=null){return{status:"idle",text:"",offset:0,totalBytes:e,hasMore:e!==null&&e>0,error:null}}function So(e){return e??0}function Xm(e){return e.bodyContentMode==="compact"||e.bodyContentMode==="truncated"}function Qm(e){return Xm(e)?So(e.rawRequestBodyBytes)>jo||So(e.responseTextBytes)>jo:!1}function AT(e){return Xm(e)&&!Qm(e)}function RT(e){return e instanceof Fo?"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 zr({status:e,error:t,footprint:n,onRetry:s}){switch(e){case"idle":return null;case"loading":return r.jsx(rr,{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(Xe,{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(rr,{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(we,{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(nn,{className:"size-3"}),"Retry"]})]})})}}function Au(e,t){return e?t.text!==""?t.text:t.status==="success"?"":null:null}function Rn({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 Yr({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 Or({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 IT={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 rr({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)]",IT[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 Pr({label:e,state:t,expectedBytes:n,onLoadMore:s}){const o=t.totalBytes??n,i=o===null?us(t.offset):`${us(t.offset)} / ${us(o)}`,a=t.status!=="loading"&&t.hasMore,l=t.status==="failed"?"Retry":"Load more";return r.jsx(rr,{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 ${us(o)}. Loading the first preview chunk.`:`Loaded ${i}.`,t.status==="failed"&&t.error!==null&&` ${t.error}`]}),a&&r.jsx(we,{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 Ru({headers:e,emptyLabel:t}){const n=e===void 0?[]:Object.entries(e).sort(([s],[o])=>s.localeCompare(o));return n.length===0?r.jsx(Yr,{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 zT({active:e,onClick:t}){return r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsxs(we,{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(ew,{className:"size-3.5 mr-1"}),e?"Showing diff":"Diff with Raw"]})}),r.jsx(ut,{children:e?"Hide diff view":"Compare proxy output against the original raw version"})]})}const OT=p.memo(function({rawBody:e,displayedBody:t,emptyLabel:n}){const s=p.useMemo(()=>Q4(e,t),[e,t]);return r.jsx(Jm,{result:s,emptyLabel:n})}),PT=p.memo(function({rawHeaders:e,headers:t,emptyLabel:n}){const s=p.useMemo(()=>X4(e,t),[e,t]);return r.jsx(Jm,{result:s,emptyLabel:n})}),MT=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,d]=p.useState(!1),[f,m]=p.useState(!1),[h,v]=p.useState(!1),[g,x]=p.useState(!1),[b,y]=p.useState("request"),[k,j]=p.useState(null),[C,T]=p.useState(0),[N,z]=p.useState(null),[A,O]=p.useState(null),[D,E]=p.useState("idle"),[L,w]=p.useState(null),[$,ee]=p.useState(0),[F,H]=p.useState(()=>Ir(e.rawRequestBodyBytes??null)),[Z,ue]=p.useState(()=>Ir(e.responseTextBytes??null)),V=p.useRef(null),W=p.useRef(e.id),ce=p.useRef(!1),U=A??e,Q=A===null&&Qm(e),Ce=p.useMemo(()=>V4(e.rawRequestBodyBytes,e.responseTextBytes),[e.rawRequestBodyBytes,e.responseTextBytes]),oe=Au(Q,F),pe=Au(Q,Z),ge=U.rawRequestBody??oe,me=U.responseText??pe,xe=U.rawRequestBody===null&&oe!==null,ke=U.responseText===null&&pe!==null,Ae=!xe||F.hasMore===!1&&So(F.totalBytes)<=jo,_=!ke||Z.hasMore===!1&&So(Z.totalBytes)<=jo,X=er(U),G=Dm(X),P=p.useMemo(()=>G.analyzeRequest(U.rawRequestBody),[G,U.rawRequestBody]),R=p.useMemo(()=>G.analyzeResponse(U.responseText),[G,U.responseText]),se=p.useMemo(()=>!s||X!=="anthropic"||U.rawRequestBody===null?null:E4(U.rawRequestBody).body,[U.rawRequestBody,X,s])??ge,ne=Mi(Ae?se:null),q=Mi(b==="raw-request"&&Ae?ge:null),le=Mi(b==="raw"&&_?me:null),I=p.useMemo(()=>U.headers&&Object.keys(U.headers).length>0?JSON.stringify(U.headers,null,2):null,[U.headers]),M=p.useMemo(()=>U.rawHeaders&&Object.keys(U.rawHeaders).length>0?JSON.stringify(U.rawHeaders,null,2):null,[U.rawHeaders]),J=mn(se),re=mn(ge),ie=mn(I),he=mn(M),je=mn(me),Se=p.useMemo(()=>({request:{copyLabel:xe?"Copy loaded request preview":"Copy request body",copyText:se,copyCopied:J.copied,onCopy:J.copy,expansion:Ae?{isExpanded:ne.isExpanded,isPending:ne.isPending,onToggle:ne.toggle}:null,diffWithRaw:ST(X,n,s,U.rawRequestBody!==null)?{active:g,onToggle:()=>x(!g)}:void 0,diffWithPrevious:l===void 0?void 0:()=>{l(U)}},"raw-request":{copyLabel:xe?"Copy loaded raw request preview":"Copy raw request",copyText:ge,copyCopied:re.copied,onCopy:re.copy,expansion:Ae?{isExpanded:q.isExpanded,isPending:q.isPending,onToggle:q.toggle}:null},headers:{copyLabel:"Copy headers",copyText:I,copyCopied:ie.copied,onCopy:ie.copy,expansion:null},"raw-headers":{copyLabel:"Copy raw headers",copyText:M,copyCopied:he.copied,onCopy:he.copy,expansion:null},raw:{copyLabel:ke?"Copy loaded response preview":"Copy response",copyText:me,copyCopied:je.copied,onCopy:je.copy,expansion:_?{isExpanded:le.isExpanded,isPending:le.isPending,onToggle:le.toggle}:null}}),[se,xe,Ae,J,ne,g,U,U.rawRequestBody,ge,re,q,I,ie,M,he,U.responseText,ke,_,me,je,le,X,n,s,l]),ze=p.useMemo(()=>ne.parsedData!==null?G.anatomySegments(ne.parsedData):null,[G,ne.parsedData]),Be=p.useMemo(()=>Ql(ne.parsedData),[ne.parsedData]),zt=U.warnings??[],ln=p.useMemo(()=>{if(ze!==null)return new Set(ze.map($e=>$e.path))},[ze]),mt=H4({containerRef:V,setExpandToPath:z,ensureTabActive:()=>{b!=="request"&&y("request")}}),nt=p.useCallback(($e,ft)=>{const Qe=$e==="request"?H:ue;Qe(gt=>({...gt,status:"loading",error:null}));const Bt=new URLSearchParams({part:$e,offset:String(ft),limit:String(ET)});Ge(`/api/logs/${String(e.id)}/body?${Bt.toString()}`,Pv,TT).then(gt=>{W.current===e.id&&Qe(Is=>({status:"success",text:gt.offset===0?gt.text:`${Is.text}${gt.text}`,offset:gt.nextOffset??gt.totalBytes,totalBytes:gt.totalBytes,hasMore:gt.hasMore,error:null}))}).catch(gt=>{W.current===e.id&&Qe(Is=>({...Is,status:"failed",error:RT(gt)}))})},[e.id]),Xt=p.useCallback(()=>{ce.current||(O(null),E("idle"),w(null),ee($e=>$e+1))},[]),Jn=p.useCallback(()=>{const $e=!u;$e&&y(ze!==null?"anatomy":"request"),d($e)},[ze,u]);return p.useEffect(()=>{W.current=e.id,ce.current=!1,O(null),E("idle"),w(null),ee(0),H(Ir(e.rawRequestBodyBytes??null)),ue(Ir(e.responseTextBytes??null))},[e.id,e.rawRequestBodyBytes,e.responseTextBytes]),p.useEffect(()=>{if(!u||!AT(e)||A!==null||ce.current)return;let $e=!1;return ce.current=!0,E("loading"),w(null),Ge(`/api/logs/${String(e.id)}`,Js,NT).then(ft=>{$e||(ce.current=!1,O(ft),E("idle"),w(null))}).catch(ft=>{$e||(ce.current=!1,E("failed"),w(q4(ft)))}),()=>{$e=!0,ce.current=!1}},[u,A,e.bodyContentMode,e.id,e.rawRequestBodyBytes,e.responseTextBytes,$]),p.useEffect(()=>{u&&Q&&F.status==="idle"&&(b!=="request"&&b!=="raw-request"&&b!=="anatomy"||nt("request",0))},[b,u,nt,F.status,Q]),p.useEffect(()=>{u&&Q&&Z.status==="idle"&&(b!=="parsed"&&b!=="raw"||nt("response",0))},[b,u,nt,Z.status,Q]),p.useEffect(()=>{const $e=ft=>{const Qe=pi(ft);Qe!==null&&Qe.logId===e.id&&(d(!0),y(CT(Qe.tab,ze)),Qe.tab==="response"&&Qe.toolCallIndex!==void 0&&(j(Qe.toolCallIndex),T(Bt=>Bt+1)))};return window.addEventListener(on,$e),()=>{window.removeEventListener(on,$e)}},[ze,e.id]),r.jsxs(_n,{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(pT,{log:U,displayNumber:t,messageCount:P.messageCount,toolCount:P.toolCount,expanded:u,onToggle:Jn,cacheTrend:a,slowResponseThresholdSeconds:o,showClientMetadata:c,timeDisplayFormat:i,activeTab:b,tabActions:Se,onReplay:l===void 0?void 0:()=>{m(!0)}}),u&&r.jsxs("div",{className:"relative bg-black/[0.14] pt-2",onClick:$e=>$e.stopPropagation(),onKeyDown:$e=>$e.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(Vm,{value:b,onValueChange:y,className:"gap-2",children:[r.jsxs(qm,{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:[n==="full"&&r.jsx(jt,{className:An,value:"raw-headers",children:"Raw Headers"}),n==="full"&&r.jsx(jt,{className:An,value:"headers",children:"Headers"}),ze!==null&&r.jsx(jt,{className:An,value:"anatomy",children:"Context"}),Eu(X,n,s)&&r.jsx(jt,{className:An,value:"raw-request",children:"Raw Request"}),r.jsx(jt,{className:An,value:"request",children:"Request"}),n==="full"&&r.jsx(jt,{className:An,value:"raw",children:"Raw Response"}),r.jsx(jt,{className:An,value:"parsed",children:"Response"})]}),Eu(X,n,s)&&r.jsx(St,{value:"raw-request",children:b==="raw-request"&&r.jsxs(Rn,{children:[r.jsx(zr,{status:D,error:L,footprint:Ce,onRetry:Xt}),Q&&r.jsx(Pr,{label:"Request",state:F,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>nt("request",F.offset)}),ge===null?r.jsx(Yr,{children:Q?"Request preview is loading":"No request body"}):q.parsedData!==null?r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx(Ra,{data:q.parsedData,bulkDepth:q.bulkDepth,bulkRevision:q.bulkRevision})}):r.jsx(Or,{children:ge})]})}),r.jsx(St,{value:"request",children:b==="request"&&r.jsxs(Rn,{children:[r.jsx(zr,{status:D,error:L,footprint:Ce,onRetry:Xt}),Q&&r.jsx(Pr,{label:"Request",state:F,expectedBytes:e.rawRequestBodyBytes??null,onLoadMore:()=>nt("request",F.offset)}),zt.length>0&&r.jsxs(rr,{tone:"warning",children:[r.jsxs("div",{className:"flex items-center gap-2 font-semibold text-amber-300",children:[r.jsx(xn,{className:"size-3.5"}),"Tool schema warnings"]}),r.jsx("ul",{className:"mt-2 space-y-1 text-muted-foreground",children:zt.map($e=>r.jsx("li",{children:$e},$e))})]}),r.jsx(kT,{summary:Be,calledToolNames:R.toolNames??[]}),g?r.jsx(OT,{rawBody:U.rawRequestBody,displayedBody:se,emptyLabel:"No transformation applied; raw and sent request bodies are identical."}):r.jsx("div",{ref:V,children:se===null?r.jsx(Yr,{children:Q?"Request preview is loading":"No request body"}):ne.parsedData!==null?r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx(Ra,{data:ne.parsedData,bulkDepth:ne.bulkDepth,bulkRevision:ne.bulkRevision,anatomyPaths:ln,expandToPath:N})}):r.jsx(Or,{children:se})})]})}),ze!==null&&r.jsx(St,{value:"anatomy",children:b==="anatomy"&&r.jsx(Rn,{className:"p-0",children:r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx(D4,{parsed:ne.parsedData,inputTokens:U.inputTokens??null,model:U.model,segments:ze,onSegmentActivate:mt})})})}),n==="full"&&r.jsx(St,{value:"headers",children:b==="headers"&&r.jsxs(Rn,{children:[r.jsx("div",{className:"flex justify-end gap-2 mb-2",children:jT(n,U.rawHeaders!==void 0&&Object.keys(U.rawHeaders).length>0)&&r.jsx(zT,{active:h,onClick:$e=>{$e.stopPropagation(),v(!h)}})}),h?r.jsx(PT,{rawHeaders:U.rawHeaders,headers:U.headers,emptyLabel:"No transformation applied; raw and processed headers are identical."}):r.jsx(Ru,{headers:U.headers,emptyLabel:"No headers captured"})]})}),n==="full"&&r.jsx(St,{value:"raw-headers",children:b==="raw-headers"&&r.jsx(Rn,{children:r.jsx(Ru,{headers:U.rawHeaders,emptyLabel:"No raw headers captured"})})}),r.jsx(St,{value:"raw",children:b==="raw"&&r.jsxs(Rn,{className:"space-y-3",children:[r.jsx(zr,{status:D,error:L,footprint:Ce,onRetry:Xt}),Q&&r.jsx(Pr,{label:"Response",state:Z,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>nt("response",Z.offset)}),U.error!==void 0&&U.error!==null&&r.jsx(rr,{tone:"danger",title:"SSE Error",children:r.jsx("span",{className:"font-mono",children:U.error})}),me!==null&&_?r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx(B4,{text:me,defaultExpandDepth:0,bulkDepth:le.bulkDepth,bulkRevision:le.bulkRevision})}):me!==null?r.jsx(Or,{children:me}):r.jsx(Yr,{children:Q?"Response preview is loading":"No response"}),U.streaming===!0&&r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx(F4,{logId:U.id,truncated:U.streamingChunksPath!==null})})]})}),r.jsx(St,{value:"parsed",children:b==="parsed"&&r.jsxs(Rn,{children:[r.jsx(zr,{status:D,error:L,footprint:Ce,onRetry:Xt}),Q&&r.jsx(Pr,{label:"Response",state:Z,expectedBytes:e.responseTextBytes??null,onLoadMore:()=>nt("response",Z.offset)}),ke&&!_?r.jsx(Or,{children:me}):r.jsx(p.Suspense,{fallback:r.jsx(ss,{}),children:r.jsx($4,{responseText:me,responseStatus:U.responseStatus,streaming:U.streaming,inputTokens:U.inputTokens,outputTokens:U.outputTokens,cacheCreationInputTokens:U.cacheCreationInputTokens,cacheReadInputTokens:U.cacheReadInputTokens,apiFormat:X,error:U.error,focusedToolIndex:k,toolFocusNonce:C})})]})})]})]})]}),r.jsx(p.Suspense,{fallback:null,children:r.jsx(L4,{log:U,displayNumber:t,open:f,onOpenChange:m})})]})});function LT(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 Di(e){return e?"cursor-pointer transition-transform hover:scale-110":""}function DT({stopReason:e,isPending:t,isFirst:n,isTurnStart:s,isOnlyEntry:o=!1,crabIndex:i=0,collapsible:a=!1,onToggle:l}){const c=wl(e),u=o&&s&&c,d=t&&!c,f=a&&l!==void 0,m=p.useMemo(()=>ec(i),[i]),h=p.useMemo(()=>j4(i),[i]),v=x=>{!f||l===void 0||(x.stopPropagation(),l())},g=x=>{!f||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:f?"button":void 0,tabIndex:f?0:void 0,title:"Single-request turn",className:Di(f),onClick:v,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:f?"button":void 0,tabIndex:f?0:void 0,title:LT(e),className:Di(f),onClick:v,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:f?"button":void 0,tabIndex:f?0:void 0,title:"Start of turn",className:Di(f),onClick:v,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)]")})}):d?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")})})]})}function $T({event:e}){return r.jsxs("button",{type:"button",className:"inline-flex min-w-0 items-center gap-1.5 rounded-md bg-white/[0.035] px-2 py-1 text-xs 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:()=>nr({logId:e.logId,tab:"response",toolCallIndex:e.index}),"aria-label":`Open response tool call ${e.name}`,title:`Open ${e.name} in Response`,children:[r.jsx(lr,{className:"size-3.5 shrink-0 text-sky-400/70"}),r.jsx("span",{className:"min-w-0 truncate font-mono font-semibold",children:e.name})]},e.id)}function FT({events:e}){return e.length===0?null:r.jsx("div",{className:"mx-3 mb-2 flex flex-wrap gap-1.5",children:e.map(t=>r.jsx($T,{event:t},t.id))})}const Iu=180,$i=new WeakMap;function BT(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 UT(e,t,n){return e>1&&t&&!n}function Oa(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:Hf(i),sessionLogNumber:o+1});const a=n[n.length-1];a!==void 0&&wl(a.stopReason)&&(t.push({entries:n,turnIndex:s}),n=[],s+=1)}return n.length>0&&t.push({entries:n,turnIndex:s}),t}function WT(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=er(o),l=er(i);a==="unknown"||a!==l||t.set(o.id,i)}return t}function e0(e){if(e===null)return null;try{const t=JSON.parse(e);return typeof t=="string"?JSON.parse(t):t}catch{return null}}function Xr(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>Iu?`${n.slice(0,Iu-1)}...`:n}function Qr(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 HT(e){const t=e0(e.responseText),n=ye(t,"content");if(!Array.isArray(n))return[];const s=[];for(const o of n){if(ye(o,"type")!=="tool_use")continue;const a=ye(o,"name");if(typeof a!="string"||a.length===0)continue;const l=ye(o,"input");s.push({id:`${String(e.id)}-anthropic-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"anthropic",name:a,argumentsText:Qr(l),argumentsPreview:Xr(l)})}return s}function VT(e){const t=e0(e.responseText),n=ye(t,"choices");if(!Array.isArray(n))return[];const s=[];for(const i of n){const a=ye(i,"message"),l=ye(a,"tool_calls");if(Array.isArray(l))for(const d of l){const f=ye(d,"function"),m=ye(f,"name");if(typeof m!="string"||m.length===0)continue;const h=ye(f,"arguments");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:m,argumentsText:Qr(h),argumentsPreview:Xr(h)})}const c=ye(a,"function_call"),u=ye(c,"name");if(typeof u=="string"&&u.length>0){const d=ye(c,"arguments");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:u,argumentsText:Qr(d),argumentsPreview:Xr(d)})}}const o=ye(t,"output");if(Array.isArray(o))for(const i of o){if(ye(i,"type")!=="function_call")continue;const a=ye(i,"name");if(typeof a!="string"||a.length===0)continue;const l=ye(i,"arguments");s.push({id:`${String(e.id)}-openai-tool-${String(s.length)}`,logId:e.id,index:s.length,provider:"openai",name:a,argumentsText:Qr(l),argumentsPreview:Xr(l)})}return s}function tc(e){const t=$i.get(e);if(t!==void 0&&t.apiFormat===e.apiFormat&&t.responseText===e.responseText)return t.events;const n=er(e);if(!BT(e,n)){const o=[];return $i.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:o}),o}let s;switch(n){case"anthropic":s=HT(e);break;case"openai":s=VT(e);break;case"unknown":s=[];break}return $i.set(e,{apiFormat:e.apiFormat,responseText:e.responseText,events:s}),s}function qT(e,t,n=0){let s=0,o=0,i=0,a=0,l=0,c=0,u=0,d=0,f=null,m=0;for(const h of e)h.responseStatus===null?o+=1:h.responseStatus>=400&&(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&&(d+=h.elapsedMs,f=f===null?h.elapsedMs:Math.max(f,h.elapsedMs)),m+=tc(h).length;return{llmCallCount:e.length,toolCallCount:m,failedCallCount:s,pendingCallCount:o,slowCallCount:i,totalInputTokens:a,totalOutputTokens:l,totalCacheCreationInputTokens:c,totalCacheReadInputTokens:u,totalElapsedMs:d,maxElapsedMs:f,startedAt:e[0]?.timestamp??null,endedAt:e[e.length-1]?.timestamp??null,knowledgeCandidateCount:n}}function Fi(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}const ZT=p.memo(function({entries:t,viewMode:n,strip:s,slowResponseThresholdSeconds:o,cacheTrends:i,onCompareWithPrevious:a,comparisonPredecessors:l,turnIndex:c=0,timeDisplayFormat:u,pendingFocusRequest:d,showLogClientMetadata:f=!0}){const m=t.length-1,h=t[m]?.stopReason??null,v=h!==null?wl(h):!1,g=t[m]?.log.responseStatus===null,x=t.length===1,b=UT(t.length,v,g),[y,k]=p.useState(!1),j=p.useRef(!1);p.useEffect(()=>{b?v&&!j.current&&k(!0):k(!1),j.current=v},[b,v]),p.useEffect(()=>{const F=H=>{const Z=pi(H);Z!==null&&t.some(ue=>ue.log.id===Z.logId)&&b&&k(!1)};return window.addEventListener(on,F),()=>{window.removeEventListener(on,F)}},[b,t]),p.useEffect(()=>{if(d===void 0||!t.some(H=>H.log.id===d.logId))return;b&&k(!1);const F=window.setTimeout(()=>{nr({logId:d.logId,tab:d.tab,source:"virtualizer"})},0);return()=>window.clearTimeout(F)},[b,t,d]);const C=p.useCallback(()=>{b&&k(F=>!F)},[b]),T=p.useMemo(()=>{let F=0,H=0,Z=null,ue=!1;for(const V of t)V.log.inputTokens!==null&&(F+=V.log.inputTokens,ue=!0),V.log.outputTokens!==null&&(H+=V.log.outputTokens,ue=!0),V.log.elapsedMs!==null&&(Z=Z===null?V.log.elapsedMs:Math.max(Z,V.log.elapsedMs));return{totalInput:F,totalOutput:H,hasTokens:ue,maxElapsed:Z}},[t,m]),N=c%2===0?"bg-white/[0.008]":"bg-cyan-300/[0.008]",z=T.maxElapsed!==null&&o>0&&T.maxElapsed>o*1e3,A=p.useMemo(()=>{const F=new Map;for(const H of t){const Z=tc(H.log);Z.length>0&&F.set(H.log.id,Z)}return F},[t]),[O,D]=p.useState(0),E=p.useRef(null);p.useEffect(()=>{const F=E.current;if(!F)return;let H=0;const Z=new ResizeObserver(()=>{window.cancelAnimationFrame(H),H=window.requestAnimationFrame(()=>D(ue=>ue+1))});return Z.observe(F),()=>{Z.disconnect(),window.cancelAnimationFrame(H)}},[]);const L=t[0]?.log.id??c,w=`Turn ${String(c+1)}`,$=p.useMemo(()=>ec(L%12),[L]),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(L)}`,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(L)}`,"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:C,onKeyDown:F=>{(F.key==="Enter"||F.key===" ")&&(F.preventDefault(),C())},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"})}),v&&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",N),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":""]}),T.maxElapsed!==null&&r.jsx(_n,{children:r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsxs("span",{className:ae("flex items-center gap-1 shrink-0",z?"text-amber-400":"text-muted-foreground"),children:[r.jsx(tn,{className:"size-3"}),r.jsx("span",{className:"font-mono tabular-nums",children:Fi(T.maxElapsed)}),z&&r.jsx(xn,{className:"size-3","aria-label":"Slow response"})]})}),r.jsx(ut,{children:z?`Slow response: ${Fi(T.maxElapsed)} exceeds ${Fi(o*1e3)}`:"Slowest request in this turn"})]})}),T.hasTokens&&r.jsxs("span",{className:"flex items-center gap-1 shrink-0",children:[r.jsx(Ys,{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(T.totalInput)]})," / ",r.jsxs("span",{className:"text-amber-400",children:["OUT ",Fe(T.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(Nt,{className:"size-4 shrink-0"})})]})]}):t.map((F,H)=>{const{log:Z,stopReason:ue}=F,V=H===0;return r.jsxs("div",{className:"flex items-stretch",children:[r.jsx(DT,{stopReason:ue,isPending:Z.responseStatus===null,isFirst:H===0,isTurnStart:V,isOnlyEntry:x,crabIndex:Z.id%12,collapsible:b&&V,onToggle:C}),r.jsxs("div",{className:ae("flex-1 min-w-0 mb-0.5 rounded-[8px]",N),children:[r.jsx(MT,{log:Z,displayNumber:F.sessionLogNumber,viewMode:n,strip:s,slowResponseThresholdSeconds:o,timeDisplayFormat:u,cacheTrend:i?.get(Z.id)??null,showClientMetadata:f,onCompareWithPrevious:l.has(Z.id)?a:void 0}),r.jsx(FT,{events:A.get(Z.id)??[]})]})]},Z.id)})})}),GT=24,KT=132,JT=8;function YT(e){return e>GT}function XT(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 t0(e,t,n){return r.jsx(ZT,{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 QT(e){return YT(e.turnGroups.length)?r.jsx(eE,{...e}):r.jsx(r.Fragment,{children:e.turnGroups.map(t=>t0(t,e))})}function eE(e){const{turnGroups:t}=e,[n,s]=p.useState(null),o=d4({count:t.length,estimateSize:()=>KT,overscan:JT,getItemKey:a=>t[a]?.turnIndex??a}),i=p.useMemo(()=>XT(t),[t]);return p.useEffect(()=>{const a=l=>{const c=pi(l);if(c===null||c.source==="virtualizer")return;const u=i.get(c.logId);u!==void 0&&(o.scrollToIndex(u,{align:"center"}),s(d=>({...c,turnIndex:u,nonce:d===null?1:d.nonce+1})))};return window.addEventListener(on,a),()=>{window.removeEventListener(on,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:t0(l,e,c)},a.key)})})}const nc=Ee(["episode","procedure","preference","project-fact"]),tE=Ee(["draft","promoted","failed"]),n0=Y({source:Te("agent-inspector"),sessionId:S(),logIds:fe(K().int().positive()),project:S().nullable(),models:fe(S())}),nE=Y({redacted:Me(),patterns:fe(S())}),hr=Y({id:S(),type:nc,title:S(),content:S(),tags:fe(S()),source:Te("agent-inspector"),sessionId:S(),logIds:fe(K().int().positive()),evidence:n0,status:tE,createdAt:S(),updatedAt:S(),openClawMemoryId:S().nullable(),error:S().nullable(),redaction:nE});Y({idempotencyKey:S(),type:nc,title:S(),content:S(),tags:fe(S()),source:Te("agent-inspector"),project:S().nullable(),evidence:n0});const sE=Y({id:S(),type:nc.or(S()),title:S(),content:S(),score:K().nullable(),source:S().nullable(),project:S().nullable(),evidence:On().optional()});Y({results:fe(sE),warning:S().nullable()});const rE=Y({candidates:fe(hr)}),oE=Y({candidate:hr}),iE=Y({error:S().optional(),candidate:hr.optional()}),aE=Y({candidate:hr}),lE=3e4,cE=15e3,uE=15e3,dE={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 Pa(e){return e===null?"-":e<1e3?`${String(e)}ms`:`${(e/1e3).toFixed(1)}s`}function fE(e,t,n){return e===null||t===null?null:yl(e,t,n)}function pE(e){return`${String(e)} candidate${e===1?"":"s"}`}function s0(e){return`log-${String(e)}`}function r0(e){const t=s0(e),n=document.getElementById(t);window.history.replaceState(null,"",`#${t}`),n instanceof HTMLElement&&(n.scrollIntoView({block:"center",behavior:"smooth"}),n.focus({preventScroll:!0}))}function hE(e){for(const t of e)if(t.responseStatus!==null&&t.responseStatus>=400)return t;return null}function mE(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 gE(e){for(const t of e)if(tc(t).length>0)return t;return null}function xE(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 ms(e,t){return String(t.get(e)??e)}function bE(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=gE(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 #${ms(n.id,e.displayNumberByLogId)}`,logId:n.id});const s=hE(e.logs);s!==null&&t.push({kind:"failure",title:`Failure #${String(s.responseStatus)}`,detail:`First failed request is #${ms(s.id,e.displayNumberByLogId)}`,logId:s.id});const o=mE(e.logs);if(o!==null&&e.summary.maxElapsedMs!==null&&t.push({kind:"slow",title:`Slowest ${Pa(e.summary.maxElapsedMs)}`,detail:`Max latency observed at #${ms(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 vE(e){switch(e){case"session":return r.jsx(Uo,{className:"size-3.5 text-blue-400"});case"tool":return r.jsx(lr,{className:"size-3.5 text-sky-400/70"});case"slow":return r.jsx(tn,{className:"size-3.5 text-amber-400"});case"failure":return r.jsx(zf,{className:"size-3.5 text-destructive"});case"candidate":return r.jsx(If,{className:"size-3.5 text-emerald-400"})}}function yE({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&&r0(t.logId)},disabled:t.logId===null,children:[vE(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 wE(e){switch(e){case"draft":return"Draft";case"promoted":return"Promoted";case"failed":return"Failed"}}function _E(e,t){if(t)return"Promoting";switch(e.status){case"draft":return"Promote";case"failed":return"Retry";case"promoted":return"Promoted"}}function kE(e){return e.redaction.redacted?`Redacted ${e.redaction.patterns.join(", ")}`:"No sensitive pattern matched"}function jE(e,t){const n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-3)}...`}function SE(e,t){const n=e[0],s=e[e.length-1];if(n===void 0)return"No evidence logs";const o=ms(n,t);return s===void 0||n===s?`#${o}`:`#${o}-#${ms(s,t)}`}function zu(e){return e.join(", ")}function CE(e){return e.split(",").map(t=>t.trim()).filter(t=>t.length>0)}function NE({candidate:e,isPromoting:t,isUpdating:n,onPromoteCandidate:s,onUpdateCandidate:o,displayNumberByLogId:i}){const[a,l]=p.useState(!1),[c,u]=p.useState(e.type),[d,f]=p.useState(e.title),[m,h]=p.useState(e.content),[v,g]=p.useState(zu(e.tags)),[x,b]=p.useState(null),y=e.status!=="promoted",k=e.status!=="promoted",j=p.useCallback(()=>{u(e.type),f(e.title),h(e.content),g(zu(e.tags)),b(null)},[e.content,e.tags,e.title,e.type]),C=p.useCallback(async()=>{const T=d.trim(),N=m.trim(),z=CE(v);if(T.length===0){b("Title is required.");return}if(N.length===0){b("Content is required.");return}if(z.length===0){b("At least one tag is required.");return}b(null),await o(e.id,{type:c,title:T,content:N,tags:z})&&l(!1)},[e.id,m,v,d,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:T=>{const N=hr.shape.type.safeParse(T.currentTarget.value);N.success&&u(N.data)},className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 rounded-md px-2 text-xs","aria-label":"Candidate type",children:[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:d,disabled:n,onChange:T=>f(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 min-w-[220px] flex-1 rounded-md px-2 text-xs","aria-label":"Candidate title"})]}),r.jsx("textarea",{value:m,disabled:n,onChange:T=>h(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground min-h-28 rounded-md px-2 py-1.5 font-mono text-[11px] leading-relaxed","aria-label":"Candidate content"}),r.jsx("input",{value:v,disabled:n,onChange:T=>g(T.currentTarget.value),className:"border border-input bg-background hover:bg-accent hover:text-accent-foreground h-7 rounded-md px-2 text-xs","aria-label":"Candidate tags"}),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(zc,{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(we,{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(cr,{className:"size-3.5"}),"Cancel"]}),r.jsxs(we,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:n,onClick:()=>{C()},children:[n?r.jsx(nn,{className:"size-3.5 animate-spin"}):r.jsx(Iw,{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(Pe,{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(Pe,{variant:"outline",className:ae("h-5 shrink-0 px-1.5 text-[10px] font-mono",dE[e.status]),children:wE(e.status)})]}),r.jsx("p",{className:"mt-1 text-[11px] leading-relaxed text-muted-foreground",title:e.content,children:jE(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(Uy,{className:"size-3"}),SE(e.logIds,i)]}),r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(zc,{className:"size-3"}),kE(e)]}),e.status==="promoted"&&r.jsxs("span",{className:"inline-flex items-center gap-1 text-emerald-500",children:[r.jsx(oa,{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(zf,{className:"size-3"}),e.error]})]}),r.jsxs("div",{className:"mt-1 flex flex-wrap items-center gap-1.5",children:[e.logIds.map(T=>{const N=ms(T,i);return r.jsxs("a",{href:`#${s0(T)}`,onClick:z=>{z.preventDefault(),r0(T)},className:"rounded border border-blue-400/25 px-1.5 py-0.5 font-mono text-[10px] text-blue-400 underline-offset-2 transition-colors hover:bg-blue-400/10 hover:text-blue-300 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":`Jump to evidence log ${N}`,title:`Log ID ${String(T)}`,children:["#",N]},T)}),r.jsx("span",{className:"flex-1"}),k&&r.jsxs(we,{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(Df,{className:"size-3"}),"Review"]}),r.jsxs(we,{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(nn,{className:"size-3 animate-spin"}):y?r.jsx(ky,{className:"size-3"}):r.jsx(oa,{className:"size-3"}),_E(e,t)]})]})]})}function TE({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(NE,{candidate:a,isPromoting:t.has(a.id),isUpdating:n.has(a.id),onPromoteCandidate:s,onUpdateCandidate:o,displayNumberByLogId:i},a.id))})}function EE({logs:e,scopeId:t,slowResponseThresholdSeconds:n,showRollupMetrics:s,timeDisplayFormat:o}){const[i,a]=p.useState([]),[l,c]=p.useState(!0),[u,d]=p.useState({status:"idle",error:null}),[f,m]=p.useState(()=>new Set),[h,v]=p.useState(()=>new Set),g=i.length>0,x=p.useMemo(()=>qT(e,n,i.length),[i.length,e,n]),b=p.useMemo(()=>xE(e),[e]),y=p.useMemo(()=>bE({logs:e,scopeId:t,summary:x,candidates:i,displayNumberByLogId:b}),[i,b,e,t,x]),k=s||x.maxElapsedMs!==null,j=p.useMemo(()=>fE(x.startedAt,x.endedAt,o),[x.endedAt,x.startedAt,o]),C=p.useCallback(()=>{e.length===0||u.status==="loading"||(d({status:"loading",error:null}),(async()=>{try{const z=await Ge(`/api/knowledge/sessions/${encodeURIComponent(t)}/candidates`,rE,lE,{method:"POST"},A=>`Candidate generation failed with ${String(A.status)}`);a(z.candidates),c(z.candidates.length>0),d(z.candidates.length>0?{status:"ready",error:null}:{status:"failed",error:"No candidate was generated for this trace scope."})}catch(z){d({status:"failed",error:z instanceof Error?z.message:"Candidate response was invalid"})}})())},[u.status,e.length,t]),T=p.useCallback(z=>{m(A=>{if(A.has(z))return A;const O=new Set(A);return O.add(z),O}),(async()=>{try{const A=await Pn(`/api/knowledge/candidates/${encodeURIComponent(z)}/promote`,cE,{method:"POST"}),O=await A.json().catch(()=>null),D=oE.safeParse(O);if(A.ok&&D.success){a(L=>L.map(w=>w.id===D.data.candidate.id?D.data.candidate:w)),d({status:"ready",error:null});return}const E=iE.safeParse(O);E.success&&E.data.candidate!==void 0&&a(L=>L.map(w=>w.id===E.data.candidate?.id?E.data.candidate:w)),d({status:"failed",error:E.success?E.data.error??"Candidate promotion failed":`Candidate promotion failed with ${String(A.status)}`})}catch(A){d({status:"failed",error:A instanceof Error?A.message:"Candidate promotion failed"})}finally{m(A=>{const O=new Set(A);return O.delete(z),O})}})()},[]),N=p.useCallback(async(z,A)=>{v(O=>{if(O.has(z))return O;const D=new Set(O);return D.add(z),D});try{const O=await Ge(`/api/knowledge/candidates/${encodeURIComponent(z)}`,aE,uE,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(A)},D=>`Candidate update failed with ${String(D.status)}`);return a(D=>D.map(E=>E.id===O.candidate.id?O.candidate:E)),d({status:"ready",error:null}),!0}catch(O){return d({status:"failed",error:O instanceof Error?O.message:"Candidate update failed"}),!1}finally{v(O=>{const D=new Set(O);return D.delete(z),D})}},[]);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(Uo,{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(lr,{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(Ys,{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(Ys,{className:"size-3.5 text-purple-400"}),r.jsxs("span",{className:"font-mono",children:["KV Cache +",Fe(x.totalCacheCreationInputTokens)," / ~",Fe(x.totalCacheReadInputTokens)]})]}),k&&r.jsxs("span",{className:"inline-flex items-center gap-1.5 text-muted-foreground",children:[r.jsx(tn,{className:"size-3.5"}),s&&r.jsx("span",{className:"font-mono",children:Pa(x.totalElapsedMs)}),x.maxElapsedMs!==null&&r.jsxs("span",{className:"font-mono text-muted-foreground/70",children:["max ",Pa(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(xn,{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(Pe,{variant:"outline",className:"h-6 px-2 text-[10px] font-mono",children:pE(x.knowledgeCandidateCount)}),r.jsxs(we,{type:"button",variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",onClick:C,disabled:u.status==="loading",children:[u.status==="loading"?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(If,{className:"size-3.5"}),"Candidate"]}),g&&r.jsx(we,{type:"button",variant:"ghost",size:"icon",className:"size-7 text-muted-foreground",onClick:()=>c(z=>!z),"aria-expanded":l,"aria-label":l?"Collapse memory candidates":"Expand memory candidates",children:l?r.jsx(ot,{className:"size-3.5"}):r.jsx(Nt,{className:"size-3.5"})})]}),u.status==="failed"&&r.jsx("p",{className:"mt-2 text-xs text-destructive",children:u.error}),r.jsx(yE,{insights:y}),l&&r.jsx(TE,{candidates:i,promotingCandidateIds:f,updatingCandidateIds:h,onPromoteCandidate:T,onUpdateCandidate:N,displayNumberByLogId:b})]})}function AE(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 RE(e){const t=new Map;for(const n of e){if(n.model===null)continue;const s=Nj(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 IE(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function zE(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}const OE=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:d=!0,defaultExpanded:f=!1,timeDisplayFormat:m,expanded:h,onExpandedChange:v}){const[g,x]=p.useState(f),b=h??g,y=p.useCallback(D=>{if(v!==void 0){v(D);return}x(D)},[v]);p.useEffect(()=>{!f||h!==void 0||x(!0)},[h,f]);const k=p.useMemo(()=>AE(e.logs),[e.logs]),j=p.useMemo(()=>RE(e.logs),[e.logs]),C=e.logs[0]?.timestamp??new Date().toISOString(),T=e.logs[e.logs.length-1]?.timestamp??new Date().toISOString(),N=e.logs.some(D=>D.responseStatus===null),z=p.useMemo(()=>IE(e.logs),[e.logs]),A=p.useMemo(()=>zE(e.logs),[e.logs]),O=p.useMemo(()=>Oa(e.logs),[e.logs]);return p.useEffect(()=>{const D=E=>{const L=pi(E);L!==null&&e.logs.some(w=>w.id===L.logId)&&y(!0)};return window.addEventListener(on,D),()=>{window.removeEventListener(on,D)}},[e.logs,y]),r.jsxs("div",{className:"mb-2",children:[r.jsx(Z3,{conversationId:e.conversationId,startTime:C,endTime:T,totalCalls:e.logs.length,totalInputTokens:k.totalInputTokens,totalOutputTokens:k.totalOutputTokens,expanded:b,onToggle:()=>y(!b),providers:j,isLoading:N,userAgent:e.logs[0]?.userAgent??null,clientPid:z,clientProjectFolder:A,showClientIdentity:c,showProcessMetadata:u,timeDisplayFormat:m,onClear:()=>l(e.logs.map(D=>D.id))}),b&&r.jsxs("div",{children:[r.jsx(EE,{logs:e.logs,scopeId:e.conversationId,slowResponseThresholdSeconds:s,showRollupMetrics:!1,timeDisplayFormat:m}),r.jsx(QT,{turnGroups:O,viewMode:t,strip:n,slowResponseThresholdSeconds:s,timeDisplayFormat:m,cacheTrends:o,onCompareWithPrevious:i,comparisonPredecessors:a,showLogClientMetadata:d})]})]})});function Ou({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 PE="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 ME({className:e}){return r.jsx("img",{src:PE,alt:"Model Context Protocol","aria-hidden":"true",className:ae("inline-block size-8 object-contain invert",e)})}function Co({...e}){return r.jsx(oN,{"data-slot":"select",...e})}function No({...e}){return r.jsx(aN,{"data-slot":"select-value",...e})}function To({className:e,size:t="default",children:n,...s}){return r.jsxs(iN,{"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(lN,{asChild:!0,children:r.jsx(ot,{className:"size-4 opacity-50"})})]})}function Eo({className:e,children:t,position:n="popper",align:s="center",...o}){return r.jsx(cN,{children:r.jsxs(uN,{"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(LE,{}),r.jsx(dN,{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(DE,{})]})})}function Lt({className:e,children:t,...n}){return r.jsxs(fN,{"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(hN,{children:r.jsx(Ze,{className:"size-4"})})}),r.jsx(pN,{children:t})]})}function LE({className:e,...t}){return r.jsx(mN,{"data-slot":"select-scroll-up-button",className:ae("flex cursor-default items-center justify-center py-1",e),...t,children:r.jsx(hl,{className:"size-4"})})}function DE({className:e,...t}){return r.jsx(gN,{"data-slot":"select-scroll-down-button",className:ae("flex cursor-default items-center justify-center py-1",e),...t,children:r.jsx(ot,{className:"size-4"})})}const $E=Ee(["critical","warning","notice"]),FE=Ee(["open"]),BE=Ee(["proxy","tool-schema","run","group"]),o0=Ee(["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"]),UE=Ee(["log","session","run","group"]),WE=Ee(["anthropic","openai","unknown"]),HE=Y({kind:UE,id:S(),label:S(),href:S().nullable()}),VE=Y({id:S(),fingerprint:S(),severity:$E,category:o0,source:BE,status:FE,title:S(),message:S(),count:K().int().positive(),firstSeenAt:S(),lastSeenAt:S(),logIds:fe(K().int().positive()),sessionIds:fe(S()),runIds:fe(S()),groupIds:fe(S()),provider:S().nullable(),model:S().nullable(),apiFormat:WE.nullable(),evidence:fe(HE),metadata:Je(S(),tt)}),qE=Y({category:o0,count:K().int().nonnegative()}),i0=Y({total:K().int().nonnegative(),open:K().int().nonnegative(),critical:K().int().nonnegative(),warning:K().int().nonnegative(),notice:K().int().nonnegative(),byCategory:fe(qE)}),ZE=Y({alerts:fe(VE),total:K().int().nonnegative(),limit:K().int().positive(),summary:i0}),GE=8e3,KE=1e4;function JE(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 YE(e,t){const n=Vt(t?JE(e):null,s=>Ge(s,ZE,KE));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 XE(){const e=Vt("/api/alerts/summary",t=>Ge(t,i0,GE),{refreshInterval:5e3,revalidateOnFocus:!0});return{summary:e.data??null,isLoading:e.isLoading,error:e.error,mutate:e.mutate}}const hi="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",QE=["request-failure","request-timeout","slow-response","tool-schema","run-failure","group-failure","group-incomplete"];function a0(e){switch(e){case"critical":return"Critical";case"warning":return"Warning";case"notice":return"Notice"}}function eA(e){switch(e){case"proxy":return"Proxy";case"tool-schema":return"Tool schema";case"run":return"Run";case"group":return"Group"}}function sc(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 tA(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 nA(e){switch(e){case"critical":return"bg-red-400";case"warning":return"bg-amber-300";case"notice":return"bg-sky-300"}}function sA(e){switch(e){case"critical":return"text-red-200";case"warning":return"text-amber-100";case"notice":return"text-sky-100"}}function rA(e){switch(e){case"request-failure":case"run-failure":case"group-failure":return r.jsx(Bw,{className:"size-3.5"});case"request-timeout":case"slow-response":return r.jsx(yy,{className:"size-3.5"});case"tool-schema":return r.jsx(xn,{className:"size-3.5"});case"group-incomplete":return r.jsx(Z2,{className:"size-3.5"})}}function Ma(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 wt(e){return e.toLocaleString()}function l0(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 oA(e,t){const n={limit:100};return e!=="all"&&(n.severity=e),t!=="all"&&(n.category=t),n}function iA(e,t){if(t!==null){const n=e.find(s=>s.id===t);if(n!==void 0)return n}return e[0]??null}function Mr({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:wt(t)})]})}function Lr({value:e,active:t,label:n,count:s,onClick:o}){return r.jsxs(we,{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(Pe,{variant:"outline",children:wt(s)}):null]})}function aA({category:e,active:t,count:n,onClick:s}){return r.jsxs(we,{type:"button",variant:t?"secondary":"ghost",size:"sm","aria-pressed":t,onClick:()=>s(e),className:"h-7 px-2",children:[rA(e),sc(e),r.jsx(Pe,{variant:"outline",children:wt(n)})]})}function lA({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(Xe,{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",nA(i.severity))}),r.jsx("span",{className:ae("text-xs font-semibold",sA(i.severity)),children:a0(i.severity)}),r.jsx("span",{className:"truncate text-xs text-muted-foreground",children:sc(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(Pe,{variant:"outline",className:"shrink-0",children:["x",wt(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:l0(i)}),r.jsx("span",{className:"shrink-0",children:Ma(i.lastSeenAt)})]})]},i.id)})})}function cA({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(Pe,{variant:"outline",children:n.label},`${n.kind}:${n.id}`):r.jsx(Pe,{variant:"outline",asChild:!0,children:r.jsx("a",{href:n.href,onClick:t,children:n.label})},`${n.kind}:${n.id}`))})}function uA({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",tA(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(Pe,{variant:"outline",children:a0(e.severity)}),r.jsx(Pe,{variant:"outline",children:eA(e.source)}),r.jsx(Pe,{variant:"outline",children:sc(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(Pe,{variant:"outline",className:"shrink-0",children:[wt(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(un,{label:"Target",value:l0(e)}),r.jsx(un,{label:"Last seen",value:Ma(e.lastSeenAt)}),r.jsx(un,{label:"First seen",value:Ma(e.firstSeenAt)}),r.jsx(un,{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(cA,{alert:e,onNavigate:t})]}),r.jsxs("div",{className:"grid gap-2 text-xs sm:grid-cols-2",children:[r.jsx(un,{label:"Logs",value:e.logIds.length===0?"n/a":wt(e.logIds.length)}),r.jsx(un,{label:"Sessions",value:e.sessionIds.length===0?"n/a":wt(e.sessionIds.length)}),r.jsx(un,{label:"Runs",value:e.runIds.length===0?"n/a":wt(e.runIds.length)}),r.jsx(un,{label:"Groups",value:e.groupIds.length===0?"n/a":wt(e.groupIds.length)})]})]})]})}function un({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 Pu(){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}=XE(),d=p.useMemo(()=>oA(n,o),[o,n]),{alerts:f,total:m,isLoading:h,error:v,mutate:g}=YE(d,e),x=p.useMemo(()=>iA(f,a),[f,a]);p.useEffect(()=>{!e||a!==null&&f.some(N=>N.id===a)||l(f[0]?.id??null)},[f,e,a]);const b=c?.total??0,y=c?.critical??0,k=c?.warning??0,j=c?.notice??0,C=y>0?"bg-red-500":k>0?"bg-amber-400":"bg-sky-400";return r.jsxs(Vn,{open:e,onOpenChange:t,children:[r.jsx(Zo,{asChild:!0,children:r.jsxs(we,{type:"button",variant:"ghost",size:"icon",className:hi,"aria-label":"Alerts",title:"Alerts",children:[r.jsx(aa,{className:"size-4"}),u?r.jsx(Xe,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):b>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",C),children:wt(b)}):null,r.jsx("span",{className:"sr-only",children:"Alerts"})]})}),r.jsxs(qn,{className:"flex max-h-[86vh] max-w-6xl flex-col overflow-hidden",children:[r.jsxs(Zn,{children:[r.jsxs(Gn,{className:"flex items-center gap-2 pr-8",children:[r.jsx(aa,{className:"size-5 text-red-300"}),r.jsx("span",{children:"Alerts"}),r.jsx(Pe,{variant:"outline",children:wt(b)})]}),r.jsx(Dp,{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(Mr,{label:"Open",count:c?.open??0,tone:"neutral"}),r.jsx(Mr,{label:"Critical",count:y,tone:"critical"}),r.jsx(Mr,{label:"Warning",count:k,tone:"warning"}),r.jsx(Mr,{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(Lr,{value:"all",active:n==="all",label:"All",count:c?.total??null,onClick:s}),r.jsx(Lr,{value:"critical",active:n==="critical",label:"Critical",count:y,onClick:s}),r.jsx(Lr,{value:"warning",active:n==="warning",label:"Warning",count:k,onClick:s}),r.jsx(Lr,{value:"notice",active:n==="notice",label:"Notice",count:j,onClick:s})]}),r.jsxs(we,{type:"button",variant:"outline",size:"sm",className:"h-7 shrink-0 px-2",onClick:()=>{g()},children:[r.jsx(nn,{className:"size-3.5"}),"Refresh"]})]}),r.jsxs("div",{className:"flex flex-wrap gap-1",children:[r.jsx(we,{type:"button",variant:o==="all"?"secondary":"ghost",size:"sm","aria-pressed":o==="all",onClick:()=>i("all"),className:"h-7 px-2",children:"All categories"}),QE.map(T=>{const N=c?.byCategory.find(z=>z.category===T)?.count??0;return N===0?null:r.jsx(aA,{category:T,active:o===T,count:N,onClick:i},T)})]}),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:[wt(m)," matched"]}),r.jsx("span",{children:f.length<m?`${wt(f.length)} shown`:"Latest"})]}),r.jsx(lA,{alerts:f,selectedAlertId:x?.id??null,isLoading:h,error:v,onSelect:l})]}),r.jsx(uA,{alert:x,onNavigate:()=>t(!1)})]})]})]})}const dA=12e3;function fA(e){return e===null||e.evidence===null?null:`/api/groups/${encodeURIComponent(e.id)}/evidence`}function pA(e){const t=Vt(fA(e),n=>Ge(n,k2,dA));return{evidenceResponse:t.data??null,isLoading:t.isLoading,error:t.error,mutate:t.mutate}}const hA=8e3;function mA(){const e=Vt("/api/groups",t=>Ge(t,Ef,hA));return{groups:e.data?.groups??[],isLoading:e.isLoading,error:e.error,mutate:e.mutate}}const gA=3e3;function xA(e,t){return{id:(e?.id??0)+1,message:t.message,tone:t.tone??"error"}}function c0(){const[e,t]=p.useState(null),n=p.useCallback(o=>{t(i=>xA(i,o))},[]),s=p.useCallback(()=>{t(null)},[]);return p.useEffect(()=>{if(e===null)return;const o=window.setTimeout(()=>{t(null)},gA);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?xn:oa;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(cr,{className:"size-3.5"})})]},e.id)})}const Bi=2e4;function bA(e,t){const n=`/api/groups/${encodeURIComponent(e)}`;return t?`${n}?deleteEvidence=1`:n}function vA(e){return"/api/groups"}function d0(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 yA(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 rc(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 oc(e){return e??"unknown"}function wA(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 mi(e){return e===null||e.trim().length===0?"-":e}function yt(e){return e.toLocaleString()}function La(e){return e==null?"-":e<1e3?`${yt(e)} ms`:`${(e/1e3).toFixed(1)} s`}function js(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 Mu(e){return e===null?"-":js(e)}function _A(e){const t=JSON.stringify(e),n=t===void 0?String(e):t;return n.length<=160?n:`${n.slice(0,157)}...`}function f0(...e){for(const t of e)if(t!==null&&t.trim().length>0)return t;return"-"}function kA(...e){for(const t of e)if(t!=null&&t.trim().length>0)return t;return null}function jA(e){const t=e.provider,n=e.model;return t!==null&&t.length>0&&n!==null&&n.length>0?`${t} / ${n}`:f0(t,n)}function SA(e,t){if(t!==null){const n=e.find(s=>s.id===t);if(n!==void 0)return n}return e[0]??null}function CA(e){return(e.exportMember?.session?.latestLogs??[])[0]??null}function NA(e){switch(e){case"export":return"fresh export";case"evidence":return"evidence";case"group":return"group"}}function TA(e,t){return t!==null&&t.group.id===e.id?t.evidence:e.evidence}function EA(e,t,n){return t!==null&&t.group.id===e.id?t.summary:n!==null&&n.group.id===e.id?n.summary:null}function AA(e,t,n){return t!==null&&t.group.id===e.id?t.jenkinsReport:n!==null&&n.group.id===e.id?n.report:null}function Lu(){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),[d,f]=p.useState(null),[m,h]=p.useState(!1),[v,g]=p.useState(null),[x,b]=p.useState(null),[y,k]=p.useState(!1),{notice:j,showToast:C,dismissToast:T}=c0(),{groups:N,isLoading:z,error:A,mutate:O}=mA(),D=p.useMemo(()=>SA(N,n),[N,n]);p.useEffect(()=>{!e||n!==null&&N.some(Q=>Q.id===n)||s(N[0]?.id??null)},[N,e,n]);const E=D!==null&&c!==null&&c.group.id===D.id?c:null,{evidenceResponse:L,isLoading:w,error:$,mutate:ee}=pA(D),F=p.useCallback(()=>{O()},[O]),H=p.useCallback(async()=>{if(!(N.length===0||y)){k(!0),f(null),h(!1),b(null),l(null);try{const U=await Ge(vA(!1),_2,Bi,{method:"DELETE"},Q=>`Clear failed with status ${String(Q.status)}`);u(null),s(null),await O(),await ee(),C({message:`Cleared ${yt(U.deleted)} group${U.deleted===1?"":"s"}.`,tone:"success"})}catch(U){C({message:U instanceof Error?U.message:"Unknown error clearing groups",tone:"error"})}finally{k(!1)}}},[y,N.length,O,ee,C]),Z=p.useCallback(async U=>{i(U.id),l(null);try{const Q=await Ge(`/api/groups/${encodeURIComponent(U.id)}/evidence`,j2,Bi,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({latestLogLimit:10})},Ce=>`Export failed with status ${String(Ce.status)}`);u(Q),await O(),await ee()}catch(Q){l(Q instanceof Error?Q.message:String(Q))}finally{i(null)}},[O,ee]),ue=p.useCallback(U=>{f(U),h(!1),b(null)},[]),V=p.useCallback(()=>{v===null&&(f(null),h(!1),b(null))},[v]),W=p.useCallback(U=>{s(U),f(null),h(!1),b(null)},[]),ce=p.useCallback(async()=>{const U=d;if(U!==null){g(U.id),b(null);try{await Ge(bA(U.id,m),Cf,Bi,{method:"DELETE"},Q=>`Delete failed with status ${String(Q.status)}`),u(Q=>Q!==null&&Q.group.id===U.id?null:Q),s(Q=>Q===U.id?null:Q),f(null),h(!1),await O(),await ee()}catch(Q){b(Q instanceof Error?Q.message:String(Q))}finally{g(null)}}},[m,d,O,ee]);return r.jsxs(Vn,{open:e,onOpenChange:t,children:[r.jsx(u0,{notice:j,onDismiss:T}),r.jsx(Zo,{asChild:!0,children:r.jsxs(we,{type:"button",variant:"ghost",size:"icon",className:hi,"aria-label":"Evaluation groups",title:"Evaluation groups",children:[r.jsx(Rc,{className:"size-4"}),z?r.jsx(Xe,{className:"absolute -right-0.5 -top-0.5 size-3 animate-spin text-muted-foreground"}):N.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:N.length}):null,r.jsx("span",{className:"sr-only",children:"Evaluation groups"})]})}),r.jsxs(qn,{className:"flex max-h-[85vh] max-w-5xl flex-col overflow-hidden",children:[r.jsx(Zn,{children:r.jsxs(Gn,{className:"flex items-center gap-2 pr-8",children:[r.jsx(Rc,{className:"size-5 text-muted-foreground"}),r.jsx("span",{children:"Groups"}),r.jsx(Pe,{variant:"outline",children:yt(N.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(we,{type:"button",variant:"outline",size:"sm",disabled:N.length===0||y,onClick:()=>{H()},title:"Clear all groups. Session logs and run records stay intact.",children:[y?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(Wt,{className:"size-3.5"}),"Clear"]}),r.jsxs(we,{type:"button",variant:"outline",size:"sm",onClick:F,children:[r.jsx(nn,{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(RA,{groups:N,selectedGroupId:D?.id??null,isLoading:z,error:A,onSelect:W}),r.jsx(IA,{group:D,deleteTarget:d,deleteEvidence:m,exportResult:E,evidenceResponse:L,evidenceLoading:w,evidenceError:$,exportError:a,deleteError:x,exportingGroupId:o,deletingGroupId:v,onDeleteEvidenceChange:h,onExport:Z,onRequestDelete:ue,onCancelDelete:V,onConfirmDelete:()=>{ce()}})]})]})]})}function RA({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=d0(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(Pe,{variant:"outline",className:rc(i.status),children:oc(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:js(i.updatedAt)})]})]},i.id)})})})}function IA({group:e,deleteTarget:t,deleteEvidence:n,exportResult:s,evidenceResponse:o,evidenceLoading:i,evidenceError:a,exportError:l,deleteError:c,exportingGroupId:u,deletingGroupId:d,onDeleteEvidenceChange:f,onExport:m,onRequestDelete:h,onCancelDelete:v,onConfirmDelete:g}){if(e===null)return 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=d0(e),b=EA(e,s,o),y=AA(e,s,o),k=TA(e,s),j=yA(e,s,o),C=u===e.id,T=d===e.id,N=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(Pe,{variant:"outline",className:rc(e.status),children:oc(e.status)}),r.jsx(Pe,{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:mi(e.project)}),r.jsxs("span",{children:["updated ",js(e.updatedAt)]})]})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsx(we,{type:"button",variant:"outline",size:"icon",className:"size-8 text-red-600 hover:text-red-700","aria-label":"Delete group",title:"Delete group",disabled:T,onClick:()=>h(e),children:T?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(Wt,{className:"size-3.5"})}),r.jsxs(we,{type:"button",variant:"default",size:"sm",className:"shrink-0",disabled:C||T,onClick:()=>{m(e)},children:[C?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(ar,{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}),N&&r.jsx(zA,{group:e,deleteEvidence:n,isDeleting:T,error:c,onDeleteEvidenceChange:f,onCancel:v,onConfirm:g}),r.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[r.jsx(dn,{label:"Members",value:x.memberCount}),r.jsx(dn,{label:"Done",value:x.completedMembers}),r.jsx(dn,{label:"Failed",value:x.failedMembers}),r.jsx(dn,{label:"Running",value:x.runningMembers})]}),b!==null&&r.jsxs("div",{className:"grid gap-2 sm:grid-cols-4",children:[r.jsx(dn,{label:"Requests",value:b.requestCount}),r.jsx(dn,{label:"Errors",value:b.errorCount}),r.jsx(dn,{label:"Tokens",value:b.tokenUsage.total}),r.jsx(dn,{label:"Missing",value:b.missingSessions})]}),r.jsx(OA,{report:y,loading:i,error:a,hasEvidence:k!==null}),r.jsx(PA,{evidence:k}),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&&!N&&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(MA,{rows:j})]})})}function zA({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(Wt,{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(we,{type:"button",variant:"outline",size:"sm",disabled:n,onClick:i,children:"Cancel"}),r.jsxs(we,{type:"button",variant:"destructive",size:"sm",disabled:n,onClick:a,children:[n?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(Wt,{className:"size-3.5"}),"Delete"]})]})]})})}function dn({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:yt(t)})]})}function OA({report:e,loading:t,error:n,hasEvidence:s}){const{copied:o,copy:i}=mn(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(Xe,{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(Pe,{variant:"outline",className:wA(e.status),children:e.status})]}),r.jsx(we,{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(Ze,{className:"size-3.5 text-emerald-500"}):r.jsx(Et,{className:"size-3.5"})})]}),r.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:e.summary})]})}function PA({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:js(e.exportedAt)})]}),r.jsxs("div",{className:"grid gap-2",children:[r.jsx(Ui,{label:"JSON",value:e.jsonPath}),r.jsx(Ui,{label:"Markdown",value:e.markdownPath}),r.jsx(Ui,{label:"HTML",value:e.htmlPath})]})]})}function Ui({label:e,value:t}){const{copied:n,copy:s}=mn(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(we,{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(Ze,{className:"size-3.5 text-emerald-500"}):r.jsx(Et,{className:"size-3.5"})})]})}function MA({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(LA,{row:o,isExpanded:i,onToggleDetails:s}),r.jsx(DA,{row:o,isExpanded:i})]},o.member.id)})})]})})]})}function LA({row:e,isExpanded:t,onToggleDetails:n}){const s=e.member,o=e.exportMember?.session??null,i=CA(e),a=o?.inspectorPath??Td(s.sessionId),l=e.source!=="evidence",c=o?.requestCount??null,u=o?.errorCount??null,d=o?.tokenUsage.total??null,f=i?.firstChunkMs??null,m=f0(s.label,s.sessionId),h=kA(o?.clientUserAgent,i?.userAgent,s.agent),v=o?.clientProjectFolder??null,g=El({userAgent:h,conversationId:s.sessionId,clientProjectFolder:v}),x=Go(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(we,{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(ot,{className:"size-3.5"}):r.jsx(Nt,{className:"size-3.5"})}),x!==null&&r.jsx(Ko,{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(gl,{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(Pe,{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:mi(s.agent)})]}),r.jsx("td",{className:"max-w-52 px-3 py-2",children:r.jsx("span",{className:"block whitespace-normal leading-snug",children:jA(s)})}),r.jsx("td",{className:"px-3 py-2",children:r.jsx(Pe,{variant:"outline",className:rc(s.status),children:oc(s.status)})}),r.jsx("td",{className:"px-3 py-2 font-mono",children:c===null?"-":yt(c)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:u===null?"-":yt(u)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:La(f)}),r.jsx("td",{className:"px-3 py-2 font-mono",children:d===null?"-":yt(d)})]})}function DA({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(st,{label:"Source",value:NA(e.source)}),r.jsx(st,{label:"Member ID",value:n.id,mono:!0}),r.jsx(st,{label:"Session ID",value:n.sessionId,mono:!0}),r.jsx(st,{label:"Run ID",value:i?.id??n.runId??"-",mono:!0}),r.jsx(st,{label:"Created",value:js(n.addedAt)}),r.jsx(st,{label:"Updated",value:js(n.updatedAt)}),r.jsx(st,{label:"Session created",value:Mu(o?.createdAt??null)}),r.jsx(st,{label:"Session updated",value:Mu(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(st,{label:"Log coverage",value:o.logCoverage}),r.jsx(st,{label:"Runtime",value:mi(o.runtimeMode)}),r.jsx(st,{label:"Requests",value:yt(o.requestCount),mono:!0}),r.jsx(st,{label:"Errors",value:yt(o.errorCount),mono:!0}),r.jsx(st,{label:"Input tokens",value:yt(o.tokenUsage.input),mono:!0}),r.jsx(st,{label:"Output tokens",value:yt(o.tokenUsage.output),mono:!0}),r.jsx(st,{label:"Cache read",value:yt(o.tokenUsage.cacheRead),mono:!0}),r.jsx(st,{label:"Total tokens",value:yt(o.tokenUsage.total),mono:!0})]}),r.jsx($A,{logs:o?.latestLogs??[]}),r.jsx(FA,{entries:a})]})})})}function st({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 $A({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:[mi(n.model)," · ",n.apiFormat," · ",n.path]}),r.jsx("span",{className:"font-mono text-muted-foreground",children:La(n.firstChunkMs)}),r.jsx("span",{className:"font-mono text-muted-foreground",children:La(n.latencyMs)})]},n.id)})})]})}function FA({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=_A(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 BA=Y({name:S(),apiKey:S(),format:Ee(["anthropic","openai"]),anthropicBaseUrl:S(),openaiBaseUrl:S(),openaiResponsesBaseUrl:S().optional().default(""),models:fe(S()),sourceTool:Ee(["claude-code","opencode","mimo-code"]),alreadyExists:Me()}),UA=Y({providers:fe(BA),warnings:fe(S()).optional()}),WA=Y({success:Me().optional(),imported:K().optional(),message:S().optional(),errors:fe(S()).optional()}),Du=2e4;function HA({open:e,onOpenChange:t,onImportComplete:n}){const[s,o]=p.useState(!1),[i,a]=p.useState(null),[l,c]=p.useState([]),[u,d]=p.useState([]),[f,m]=p.useState(new Set),[h,v]=p.useState(!1),[g,x]=p.useState(null),[b,y]=p.useState(null),k=p.useRef(0),j=p.useRef(0),C=p.useCallback(()=>{const A=k.current+1;k.current=A,o(!0),a(null),d([]),c([]),m(new Set),x(null),y(null),Ge("/api/providers/scan",UA,Du,void 0,O=>`Scan failed (${String(O.status)})`).then(O=>{if(k.current!==A)return;c(O.providers),d(O.warnings??[]);const D=new Set;O.providers.forEach((E,L)=>{E.alreadyExists||D.add(L)}),m(D)}).catch(O=>{k.current===A&&a(O instanceof Error?O.message:String(O))}).finally(()=>{k.current===A&&o(!1)})},[]);p.useEffect(()=>{e&&C()},[e,C]),p.useEffect(()=>{e||(k.current+=1,j.current+=1,o(!1),v(!1))},[e]);const T=p.useCallback(A=>{m(O=>{const D=new Set(O);return D.has(A)?D.delete(A):D.add(A),D})},[]),N=p.useCallback(()=>{const A=l.filter((L,w)=>f.has(w));if(A.length===0)return;const O=j.current+1;j.current=O,v(!0),y(null),x(null);const D=new Date().toISOString(),E=A.map(L=>({id:window.crypto.randomUUID(),name:L.name,apiKey:L.apiKey,format:L.format,anthropicBaseUrl:L.anthropicBaseUrl,openaiBaseUrl:L.openaiBaseUrl,openaiResponsesBaseUrl:L.openaiResponsesBaseUrl,models:L.models,createdAt:D,updatedAt:D}));Ge("/api/providers/import",WA,Du,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({providers:E})},L=>`Import failed (${String(L.status)})`).then(L=>{j.current===O&&(c(w=>w.map(($,ee)=>f.has(ee)?{...$,alreadyExists:!0}:$)),m(new Set),L.errors!==void 0&&L.errors.length>0&&L.message!==void 0?x(L.message):x(`Imported ${L.imported??A.length} provider(s)`),n())}).catch(L=>{j.current===O&&y(L instanceof Error?L.message:String(L))}).finally(()=>{j.current===O&&v(!1)})},[l,f,n]),z=l.some(A=>!A.alreadyExists);return r.jsx(Vn,{open:e,onOpenChange:t,children:r.jsxs(qn,{className:"max-w-xl max-h-[80vh] overflow-hidden flex flex-col",children:[r.jsxs(Zn,{children:[r.jsx(Gn,{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(Xe,{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(vs,{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((A,O)=>r.jsxs("label",{className:`flex items-start gap-3 p-3 border rounded-md ${A.alreadyExists?"":"cursor-pointer hover:bg-muted/50"}`,children:[!A.alreadyExists&&r.jsx("input",{type:"checkbox",checked:f.has(O),disabled:h,onChange:()=>T(O),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(Ko,{client:A.sourceTool,className:"size-7 rounded-[8px]"}),A.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:[A.models.slice(0,4).join(", "),A.models.length>4?` +${A.models.length-4} more`:""]}),r.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 truncate",children:A.format==="anthropic"?A.anthropicBaseUrl:A.openaiResponsesBaseUrl!==""?A.openaiResponsesBaseUrl:A.openaiBaseUrl}),r.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 font-mono",children:A.apiKey.length>8?`${A.apiKey.slice(0,4)}••••${A.apiKey.slice(-4)}`:"••••"})]})]},`${A.sourceTool}-${A.name}`)),u.length>0&&r.jsx("div",{className:"text-xs text-muted-foreground space-y-1 border-t pt-2",children:u.map((A,O)=>r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx(vs,{className:"size-3"}),A]},O))}),g!==null&&r.jsx("div",{className:"text-sm text-green-500 border-t pt-2",children:g}),b!==null&&r.jsx("div",{className:"text-sm text-destructive border-t pt-2",children:b})]}),r.jsxs("div",{className:"flex items-center justify-between pt-3 border-t",children:[r.jsxs(we,{variant:"outline",size:"sm",onClick:C,disabled:s,children:[r.jsx(Xe,{className:`size-3 mr-1 ${s?"animate-spin":""}`}),"Rescan"]}),r.jsxs(we,{size:"sm",onClick:N,disabled:!z||f.size===0||h,children:[r.jsx(ar,{className:"size-3 mr-1"}),h?"Importing...":`Import Selected (${f.size})`]})]})]})})}function p0(e){return e.length<=8?"••••••••":e.slice(0,4)+"••••••••"+e.slice(-4)}const h0=Y({id:S().min(1),aliases:fe(S()).optional().default([]),contextWindow:K().int().positive().optional(),outputLimit:K().int().positive().optional(),sourceUrl:S().optional()}),VA=Y({name:S().min(1).optional(),aliases:fe(S()).optional().default([]),baseUrls:fe(S()).optional().default([]),models:fe(h0).min(1)});Y({version:K().int().positive().optional(),updatedAt:S().optional(),providers:fe(VA).optional().default([]),models:fe(h0).optional().default([])});function $u(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function qA(e){const t=e.models.filter(n=>n.trim()!=="");return t.length>0?t:e.model!==void 0&&e.model.trim()!==""?[e.model]:[]}function ic(e,t){const n=$u(t);return(e.modelMetadata??[]).find(o=>$u(o.model)===n)??null}function ZA(e){const t=qA(e);return t.length===0?!1:t.every(n=>{const s=ic(e,n);return s!==null&&s.contextWindow!==void 0})}function GA(e,t){if(e===null)return null;for(const n of t){const s=ic(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 KA={deepseek:"https://api-docs.deepseek.com/zh-cn/"};function m0(e){return Object.prototype.hasOwnProperty.call(e,"success")}function g0(e){return Object.prototype.hasOwnProperty.call(e,"notConfigured")}function bt(e){return e!==void 0&&e.trim()!==""}function Da(e){if(e===void 0)return;const t=Object.entries(e).map(([n,s])=>`${n}: ${s}`);if(t.length!==0)return t.join(`
104
- `)}function Fu(e){return Da(e)!==void 0}function Bu(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function JA(e){return e>=10?`${e.toFixed(0)}/s`:`${e.toFixed(1)}/s`}function YA(e){const t=e.debug;return bt(e.error?.hint)||bt(e.error?.details)||bt(e.rawResponse)||bt(t?.requestUrl)||bt(t?.requestBody)||bt(t?.responseBody)||Fu(t?.requestHeaders)||Fu(t?.responseHeaders)||t?.responseStatus!==void 0}function fn({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 $s({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 XA({result:e}){const t=e.debug,n=t?.requestUrl,s=t?.requestMethod??"POST",o=Da(t?.requestHeaders),i=Da(t?.responseHeaders),a=t?.responseStatus!==void 0?`${t.responseStatus}${bt(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:[bt(e.error?.hint)&&r.jsx(fn,{title:"Hint",children:r.jsx("div",{children:e.error.hint})}),bt(e.error?.details)&&r.jsx(fn,{title:"Error",children:r.jsx($s,{value:e.error.details})}),bt(n)&&r.jsx(fn,{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(fn,{title:"Request Headers",children:r.jsx($s,{value:o})}),bt(t?.requestBody)&&r.jsx(fn,{title:"Request Body",children:r.jsx($s,{value:t.requestBody})}),bt(a)&&r.jsx(fn,{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(fn,{title:"Response Headers",children:r.jsx($s,{value:i})}),bt(l)&&r.jsx(fn,{title:"Response Body",children:r.jsx($s,{value:l})})]})}function rs({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(Uu,{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(Uu,{result:e.streaming})]})]})}function Wi({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 QA(e){const t=[];return qe(e.anthropicBaseUrl)&&t.push("Anthropic"),qe(e.openaiBaseUrl)&&t.push("Chat"),qe(e.openaiResponsesBaseUrl)&&t.push("Responses"),t}function Hi({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(ml,{className:"size-3"}):r.jsx(Lf,{className:"size-3"}),e]})}function e6({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(Hi,{label:"Anthropic",enabled:!0}),n&&r.jsx(Hi,{label:"OpenAI Chat",enabled:!0}),r.jsx(Hi,{label:s?"OpenAI Responses":"No OpenAI Responses",enabled:s,tone:"response"}),r.jsx("span",{children:"tested non-stream + stream"})]})}function t6(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 n6(e,t){const n={total:0,passed:0,failed:0,testing:0};for(const s of t6(e,t))for(const o of[s.nonStreaming,s.streaming])g0(o)||(n.total+=1,m0(o)?o.success?n.passed+=1:n.failed+=1:n.testing+=1);return n}function s6({provider:e,testResults:t,isTesting:n}){const s=QA(e),o=n6(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(co,{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(vs,{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(ml,{className:"size-3"}),"OK ",o.passed,"/",o.total]})}function r6(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 o6({provider:e,model:t}){const n=ic(e,t),s=c6(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:op(n.contextWindow)}),s!==null&&r.jsx(_n,{children:r.jsxs(lt,{children:[r.jsx(ct,{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(ut,{children:s.title})]})})]})}function i6(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 a6(e){const t={className:"size-3",strokeWidth:2};switch(e){case"timeout":return r.jsx(tn,{...t});case"network_unreachable":return r.jsx(Xw,{...t});case"connection_refused":return r.jsx(e_,{...t});case"auth_failed":return r.jsx(lw,{...t});case"rate_limited":return r.jsx(vl,{...t});case"server_error":return r.jsx(Lw,{...t});case"invalid_response":return r.jsx(my,{...t});case"unknown":return r.jsx(vs,{...t});default:return r.jsx(vs,{...t})}}function Uu({result:e}){const[t,n]=p.useState(!1);if(!m0(e))return g0(e)?r.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground shrink-0",children:[r.jsx(Lf,{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(co,{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 ",Bu(e.firstChunkMs)]},"first")),e.totalStreamMs!==void 0&&e.totalStreamMs!==null&&c.push(r.jsxs("span",{children:["total ",Bu(e.totalStreamMs)]},"total")),e.tokensPerSecond!==void 0&&e.tokensPerSecond!==null&&e.tokensPerSecond>0&&c.push(r.jsxs("span",{children:[JA(e.tokensPerSecond)," tok/s"]},"rate"));const u=[];for(let f=0;f<l.length;f++)f>0&&u.push(", "),u.push(l[f]);const d=[];for(let f=0;f<c.length;f++)f>0&&d.push(", "),d.push(c[f]);return r.jsxs("div",{className:"flex shrink-0 items-center gap-1 text-xs text-cyan-100",children:[r.jsx(ml,{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:["(",d,")"]})]})}const s=e.error,o=s?.message??"Connection failed",i=s?.type??"unknown",a=YA(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:[a6(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(xl,{className:"size-3"}):r.jsx(bl,{className:"size-3"}),r.jsx("span",{children:t?"Hide":"Details"})]})]}),t&&a&&r.jsx(XA,{result:e})]})}function l6(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 c6(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 u6({provider:e,testResults:t,isTesting:n,testingTimeLeft:s,isHighlighted:o,onEdit:i,onDelete:a,onTest:l,onRefreshMetadata:c,isRefreshingMetadata:u=!1}){const[d,f]=p.useState(!1),[m,h]=p.useState(!1),[v,g]=p.useState(!1),[x,b]=p.useState(!1);function y(){Ct(e.apiKey).then(O=>{O&&(h(!0),setTimeout(()=>h(!1),2e3))})}const k=e.apiDocsUrl??Object.entries(KA).find(([O])=>e.name.toLowerCase().includes(O))?.[1],j=ZA(e),C=e.modelMetadataUrl!==void 0&&e.modelMetadataUrl.trim()!=="",T=C?"Refresh":"Import defaults",N=n??!1,z=i6(t),A=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}),A]}),r.jsx("div",{className:"text-xs leading-snug text-muted-foreground",children:r6(e)})]}),r.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[r.jsx(s6,{provider:e,testResults:t,isTesting:N}),k!==void 0&&r.jsxs("a",{href:k,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(gl,{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(e6,{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"}),z!==null&&r.jsx("span",{children:z}),t?.testedAt!==void 0&&r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx(tn,{className:"size-3"}),l6(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(we,{type:"button",variant:"outline",size:"sm",onClick:()=>c?.(e.id),className:"h-6 gap-1 px-2 text-xs",disabled:u,children:[r.jsx(co,{className:`size-3 ${u?"animate-spin":""}`}),T]}),!C&&r.jsx(we,{type:"button",variant:"ghost",size:"sm",onClick:()=>i(e),className:"h-6 px-2 text-xs",children:"Set URL"})]})]}),v&&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:d?e.apiKey:p0(e.apiKey)}),r.jsx("button",{type:"button",onClick:()=>f(O=>!O),className:"p-1 text-muted-foreground transition-colors hover:text-foreground","aria-label":d?"Hide API key":"Show API key",children:d?r.jsx(xl,{className:"size-4"}):r.jsx(bl,{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(Ze,{className:"size-4 text-cyan-300"}):r.jsx(Et,{className:"size-4"})})]}),e.models!==void 0&&e.models.length>0&&r.jsx("div",{className:"flex flex-wrap gap-1",children:e.models.map(O=>r.jsx(o6,{provider:e,model:O},O))}),(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(Wi,{label:"Anthropic",children:[t!==void 0&&r.jsx(rs,{results:t.anthropic}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiBaseUrl)&&r.jsxs(Wi,{label:"OpenAI Chat",children:[t!==void 0&&r.jsx(rs,{results:t.openaiChat}),t===void 0&&r.jsx("div",{className:"text-xs text-muted-foreground",children:"Not tested yet"})]}),qe(e.openaiResponsesBaseUrl)&&r.jsxs(Wi,{label:"OpenAI Responses",children:[t!==void 0&&r.jsx(rs,{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:()=>b(O=>!O),className:"flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground",children:[x?r.jsx(ot,{className:"size-3"}):r.jsx(Nt,{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(([O,D])=>r.jsxs("tr",{className:"border-b border-border/50 last:border-0",children:[r.jsx("td",{className:"px-2 py-1 font-medium",children:O}),qe(e.anthropicBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(rs,{results:D.anthropic})}),qe(e.openaiBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(rs,{results:D.openaiChat})}),qe(e.openaiResponsesBaseUrl)&&r.jsx("td",{className:"px-2 py-1 align-top",children:r.jsx(rs,{results:D.openaiResponses})})]},O))})]})})]})]}),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(O=>!O),className:"inline-flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground","aria-expanded":v,children:[v?r.jsx(ot,{className:"size-3"}):r.jsx(Nt,{className:"size-3"}),"Details"]}),r.jsxs("div",{className:"flex gap-2",children:[l!==void 0&&r.jsxs(we,{variant:"outline",size:"sm",onClick:()=>l(e.id),className:"text-xs h-7 gap-1",disabled:N,children:[r.jsx(co,{className:`size-3 ${N?"animate-spin":""}`}),N?s!==void 0?`Testing (${s}s)`:"Testing...":"Test"]}),r.jsxs(we,{variant:"outline",size:"sm",onClick:()=>i(e),className:"text-xs h-7 gap-1",disabled:N,children:[r.jsx(Df,{className:"size-3"}),"Edit"]}),r.jsxs(we,{variant:"outline",size:"sm",onClick:()=>a(e.id),className:"text-xs h-7 gap-1 text-destructive hover:text-destructive",disabled:N,children:[r.jsx(Wt,{className:"size-3"}),"Delete"]})]})]})]})}const gs="/v1/chat/completions",$a="/v1/responses",d6="/v1/messages";function f6(e,t){const n=e.endsWith("/")?e.slice(0,-1):e,s=x0(t),o=t.indexOf("?"),i=o>=0?t.slice(o):"";return s!==""&&n.endsWith(s)?n+i:v0(n)&&b0(t)||n.endsWith("/v1")&&t.startsWith("/v1/")?n+t.slice(3):n+t}function p6(e,t,n={}){const s=e.trim().replace(/\/+$/,""),o=x0(t),i=f6(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."}):v0(s)&&b0(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."}),Wu(o)&&m6(s)&&a.push({severity:"warning",message:"This looks like a Chat Completions endpoint, so Responses would append after it."}),h6(o)&&g6(s)&&a.push({severity:"warning",message:"This looks like a Responses endpoint, so Chat Completions would append after it."}),Wu(o)&&x6(s,n.providerName)&&a.push({severity:"warning",message:"DeepSeek's official API does not currently expose OpenAI Responses."}),{finalUrl:i,diagnostics:a}}function x0(e){return e.split("?")[0]??e}function b0(e){return e===gs||e.startsWith(`${gs}?`)||e.startsWith(`${gs}/`)}function h6(e){return e===gs||e.startsWith(`${gs}/`)}function Wu(e){return e===$a||e.startsWith(`${$a}/`)}function m6(e){return e.toLowerCase().endsWith("/chat/completions")}function g6(e){return e.toLowerCase().endsWith("/responses")}function x6(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 v0(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 Hu=["zhipu","zhipuai","bigmodel","z.ai","zai","glm"],Vu=["zhipu coding","glm coding","bigmodel coding","z.ai coding","zai coding"],Dr=d6,$r=gs,Fr=$a,b6={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"}},qu=["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"],Zu=["qwen3.6-plus","qwen3.7-max"],Gu=["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"],Fa="__unset__",Ao="__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 In(){return{contextWindow:"",contextWindowMode:"unset",outputLimit:""}}function Ku(e){return e.trim().toLowerCase().replace(/\s+/g,"-")}function w0(e,t){const n=Ku(t);return e?.modelMetadata?.find(s=>Ku(s.model)===n)??null}function _0(e){const t=fo(e);if(t===null)return null;for(const n of y0)if(fo(n.value)===t)return n.value;return null}function v6(e){return e.trim()===""?"unset":_0(e)!==null?"preset":"custom"}function y6(e){switch(e.contextWindowMode){case"unset":return Fa;case"custom":return Ao;case"preset":return _0(e.contextWindow)??Ao}}function Vi(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 Ju(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 Yu(e,t){return t.map(n=>{const s=w0(e,n),o=s?.contextWindow!==void 0?v5(s.contextWindow):"";return{contextWindow:o,contextWindowMode:v6(o),outputLimit:s?.outputLimit?.toString()??""}})}function Xu(e){const t=e.trim();if(t==="")return null;const n=Number(t);return!Number.isInteger(n)||n<=0?null:n}function os(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 w6(e,t,n){const s=e.trim();return s===""?null:p6(s,t,{providerName:n})}function qi({baseUrl:e,endpoint:t,providerName:n}){const s=w6(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 _6({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,d]=p.useState(!1),f=e?.models,[m,h]=p.useState(f!==void 0&&f.length>0?f:[""]),[v,g]=p.useState(()=>Yu(e,f!==void 0&&f.length>0?f:[""])),[x,b]=p.useState("anthropic"),[y,k]=p.useState(os(e?.anthropicBaseUrl,Dr)),[j,C]=p.useState(os(e?.openaiBaseUrl,$r)),[T,N]=p.useState(os(e?.openaiResponsesBaseUrl,Fr)),[z,A]=p.useState(e?.apiDocsUrl??""),[O,D]=p.useState(e?.modelMetadataUrl??""),[E,L]=p.useState(e?.source),[w,$]=p.useState({}),[ee,F]=p.useState(!1),[H,Z]=p.useState(null),ue=p.useRef([]);p.useEffect(()=>{if(H===null)return;const I=H;function M(J){if(!(J.target instanceof Node))return;const re=ue.current[I];re!=null&&!re.contains(J.target)&&Z(null)}return document.addEventListener("mousedown",M),()=>document.removeEventListener("mousedown",M)},[H]);const[V,W]=p.useState(!1),[ce,U]=p.useState(!1),[Q,Ce]=p.useState(!1),oe=s.toLowerCase().includes("minimax"),pe=s.toLowerCase().includes("alibaba"),ge=[...Hu,...Vu].some(I=>s.toLowerCase().includes(I)),me=oe?qu:ge?Gu:pe?Zu:[],xe=e?.modelMetadata?.some(I=>I.contextWindow!==void 0)??!1;function ke(){Ct(i).then(I=>{I&&(d(!0),setTimeout(()=>d(!1),2e3))})}p.useEffect(()=>{if(e){o(e.name),a(e.apiKey);const I=(e.models?.length??0)>0?e.models:[""];h(I),g(Yu(e,I)),k(os(e.anthropicBaseUrl,Dr)),C(os(e.openaiBaseUrl,$r)),N(os(e.openaiResponsesBaseUrl,Fr)),A(e.apiDocsUrl??""),D(e.modelMetadataUrl??""),L(e.source),W(!1),U(!1),Ce(!1)}},[e]),p.useEffect(()=>{const I=s.toLowerCase();for(const[M,J]of Object.entries(b6))if(I.includes(M)){J.anthropicBaseUrl!==void 0&&!V&&k(J.anthropicBaseUrl),J.openaiBaseUrl!==void 0&&!ce&&C(J.openaiBaseUrl),J.openaiResponsesBaseUrl!==void 0&&!Q&&N(J.openaiResponsesBaseUrl),J.apiDocsUrl!==void 0&&!z&&A(J.apiDocsUrl),M==="minimax"&&m.length===1&&m[0]===""&&h([qu[0]??""]),M==="alibaba"&&m.length===1&&m[0]===""&&h([Zu[0]??""]),(Hu.includes(M)||Vu.includes(M))&&m.length===1&&m[0]===""&&h([Gu[0]??""]);break}},[s]);function Ae(){const I={};return s.trim()||(I.name="Name is required"),i.trim()||(I.apiKey="API key is required"),(m.length===0||m.every(M=>!M.trim()))&&(I.models="At least one model is required"),y.trim()&&!_(y.trim())&&(I.anthropicBaseUrl="Invalid URL format"),j.trim()&&!_(j.trim())&&(I.openaiBaseUrl="Invalid URL format"),T.trim()&&!_(T.trim())&&(I.openaiResponsesBaseUrl="Invalid URL format"),O.trim()&&!_(O.trim())&&(I.modelMetadataUrl="Invalid URL format"),v.forEach((M,J)=>{const re=fo(M.contextWindow),ie=Xu(M.outputLimit);M.contextWindow.trim()!==""&&re===null&&(I[`modelMetadata.${J}.contextWindow`]="Context window must be a positive number, optionally using K or M"),M.outputLimit.trim()!==""&&ie===null&&(I[`modelMetadata.${J}.outputLimit`]="Output limit must be a positive integer"),re!==null&&ie!==null&&ie>re&&(I[`modelMetadata.${J}.outputLimit`]="Output limit should not exceed context window")}),!y.trim()&&!j.trim()&&!T.trim()&&(I.format="At least one format URL (Anthropic or OpenAI) is required"),$(I),Object.keys(I).length===0}function _(I){try{return new URL(I),!0}catch{return!1}}function X(I,M){h(J=>{const re=[...J];return re[I]=M,re})}function G(I,M){g(J=>{const re=[...J];return re[I]={...re[I]??In(),...M},re})}function P(I,M){switch(M){case Fa:G(I,{contextWindow:"",contextWindowMode:"unset"});return;case Ao:{const J=v[I]??In();G(I,{contextWindow:J.contextWindow,contextWindowMode:"custom"});return}default:G(I,{contextWindow:M,contextWindowMode:"preset"});return}}function R(I,M){const J=v[I]??In(),re=Vi(J.contextWindow);G(I,{contextWindow:Ju(M,re.unit),contextWindowMode:"custom"})}function B(I,M){const J=v[I]??In(),re=Vi(J.contextWindow);switch(M){case"K":case"M":case"tokens":G(I,{contextWindow:Ju(re.amount,M),contextWindowMode:"custom"});return;default:return}}function se(I){h(M=>M.filter((J,re)=>re!==I)),g(M=>M.filter((J,re)=>re!==I))}function ne(){h(I=>[...I,""]),g(I=>[...I,In()])}function q(){const I=new Date().toISOString(),M=[];return m.forEach((J,re)=>{const ie=J.trim();if(ie==="")return;const he=v[re]??In(),je=fo(he.contextWindow),Se=Xu(he.outputLimit);if(je===null&&Se===null)return;const ze=w0(e,ie);if(ze!==null&&ze.contextWindow===(je??void 0)&&ze.outputLimit===(Se??void 0)){M.push({...ze,model:ie});return}const Be={model:ie,source:"manual",updatedAt:I};je!==null&&(Be.contextWindow=je),Se!==null&&(Be.outputLimit=Se),M.push(Be)}),M.length>0?M:e?.modelMetadata!==void 0?[]:void 0}function le(I){if(I.preventDefault(),!!Ae()){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:T.trim()||void 0,apiDocsUrl:z.trim()||void 0,modelMetadataUrl:O.trim()||void 0,modelMetadata:q(),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:I=>o(I.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:I=>L(I.target.value==="company"||I.target.value==="personal"?I.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:O,onChange:I=>D(I.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}),O.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&&!xe&&O.trim()===""&&r.jsx("p",{className:"text-xs text-amber-400",children:"This provider has no matching context metadata yet."}),O.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:p0(i),onChange:I=>a(I.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(I=>!I),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(xl,{className:"size-4"}):r.jsx(bl,{className:"size-4"})}),r.jsx("button",{type:"button",onClick:ke,className:"text-muted-foreground hover:text-foreground transition-colors p-1 shrink-0","aria-label":"Copy API key",children:u?r.jsx(Ze,{className:"size-4 text-cyan-300"}):r.jsx(Et,{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((I,M)=>{const J=v[M]??In(),re=w[`modelMetadata.${M}.contextWindow`],ie=w[`modelMetadata.${M}.outputLimit`],he=y6(J),je=Vi(J.contextWindow);return r.jsxs("div",{ref:Se=>{ue.current[M]=Se},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:I,onChange:Se=>X(M,Se.target.value),placeholder:me.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"}),me.length>0&&r.jsxs(r.Fragment,{children:[r.jsx("button",{type:"button",onClick:()=>Z(H===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(ot,{className:"size-4"})}),H===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:me.map(Se=>r.jsx("button",{type:"button",onClick:()=>{X(M,Se),Z(null)},className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-white/[0.06]",children:Se},Se))})]})]}),m.length>1&&r.jsx("button",{type:"button",onClick:()=>se(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(Co,{value:he,onValueChange:Se=>P(M,Se),children:[r.jsx(To,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(No,{})}),r.jsxs(Eo,{className:"max-h-64",children:[r.jsx(Lt,{value:Fa,children:"Not set"}),y0.map(Se=>r.jsxs(Lt,{value:Se.value,children:[Se.label," · ",Se.value]},Se.value)),r.jsx(Lt,{value:Ao,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:je.amount,onChange:Se=>R(M,Se.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(Co,{value:je.unit,onValueChange:Se=>B(M,Se),children:[r.jsx(To,{size:"sm",className:"w-full bg-background font-mono text-xs",children:r.jsx(No,{})}),r.jsxs(Eo,{children:[r.jsx(Lt,{value:"K",children:"K"}),r.jsx(Lt,{value:"M",children:"M"}),r.jsx(Lt,{value:"tokens",children:"tokens"})]})]})]}),re!==void 0&&r.jsx("span",{className:"block text-destructive",children:re})]}),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:Se=>G(M,{outputLimit:Se.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:ne,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(_n,{children:r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>b("anthropic"),className:`px-3 py-2 text-sm font-medium border-b-2 transition-colors ${x==="anthropic"?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground"}`,children:"Anthropic Format"})}),r.jsx(ut,{children:"Anthropic Messages API format"})]})}),r.jsx(_n,{children:r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:r.jsx("button",{type:"button",onClick:()=>b("openai"),className:`px-3 py-2 text-sm font-medium border-b-2 transition-colors ${x==="openai"?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground"}`,children:"OpenAI Format"})}),r.jsx(ut,{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:I=>{W(!0),k(I.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:Dr})]}),w.anthropicBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.anthropicBaseUrl}),r.jsx(qi,{baseUrl:y,endpoint:Dr,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:I=>{U(!0),C(I.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:$r})]}),w.openaiBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiBaseUrl}),r.jsx(qi,{baseUrl:j,endpoint:$r,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:T,onChange:I=>{Ce(!0),N(I.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:Fr})]}),w.openaiResponsesBaseUrl!==void 0&&r.jsx("p",{className:"text-xs text-destructive",children:w.openaiResponsesBaseUrl}),r.jsx(qi,{baseUrl:T,endpoint:Fr,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:z,onChange:I=>A(I.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(we,{type:"button",variant:"outline",onClick:n,disabled:ee,children:"Cancel"}),r.jsx(we,{type:"submit",disabled:ee,children:ee?"Saving...":e?"Update Provider":"Add Provider"})]})]})}const k6=Ee(["timeout","network_unreachable","connection_refused","auth_failed","rate_limited","server_error","invalid_response","unknown"]),j6=Y({message:S(),type:k6,details:S().optional(),hint:S().optional()}),S6=Y({type:Ee(["text","thinking"]),text:S().optional(),thinking:S().optional()}),C6=Y({requestUrl:S().optional(),requestMethod:S().optional(),requestHeaders:Je(S(),S()).optional(),requestBody:S().optional(),responseStatus:K().optional(),responseStatusText:S().optional(),responseHeaders:Je(S(),S()).optional(),responseBody:S().optional()}),N6=Y({success:Me(),error:j6.optional(),model:S().optional(),inputTokens:K().optional(),outputTokens:K().optional(),cacheCreationInputTokens:K().optional(),cacheReadInputTokens:K().optional(),latencyMs:K().optional(),firstChunkMs:K().nullable().optional(),totalStreamMs:K().nullable().optional(),tokensPerSecond:K().nullable().optional(),content:fe(S6).optional(),rawResponse:S().optional(),streaming:Me().optional(),streamingChunks:Y({chunks:fe(lf),truncated:Me().default(!1)}).optional(),requestHeaders:Je(S(),S()).optional(),debug:C6.optional()}),Qu=Kt([N6,Y({notConfigured:Te(!0)}),Y({testing:Te(!0)})]),gn=Y({nonStreaming:Qu,streaming:Qu});function Ro(){return{nonStreaming:{notConfigured:!0},streaming:{notConfigured:!0}}}const T6=Y({anthropic:gn,openai:gn.optional(),openaiChat:gn.optional(),openaiResponses:gn.optional()}).transform(e=>{const t=e.openaiChat??e.openai??Ro();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Ro()}}),E6=Y({anthropic:gn,openai:gn.optional(),openaiChat:gn.optional(),openaiResponses:gn.optional(),models:Je(S(),T6).optional(),testedAt:S().optional()}).transform(e=>{const t=e.openaiChat??e.openai??Ro();return{...e,openai:e.openai??t,openaiChat:t,openaiResponses:e.openaiResponses??Ro()}});function A6(){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 ed(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 R6=Y({providerConfig:S()}),I6=Y({success:Me().optional(),imported:K().optional(),message:S().optional(),errors:fe(S()).optional()}),z6=Y({provider:po,imported:K(),matchedModels:fe(S()),missingModels:fe(S()),sourceUrl:S()}),Br="Network error: could not reach the server. Is the proxy running?",O6=5e3,P6=5e3,td=15e3,M6=1e4,L6=2e4,D6=2e4,$6=3e4;function nd(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 F6(e,t){const n=e?.models?.map(s=>s.trim()).filter(s=>s!=="").length??0;return Math.max(1,n)*t}async function B6(e,t){if(t.models!==void 0)try{await Pn(`/api/providers/${e}/test/log`,P6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch{}}function U6({externalProviders:e,isLoading:t=!1,externalTestResults:n,externalTestingProviders:s,externalTestingTimeLeft:o,onProvidersMutate:i,onTestResultsChange:a,onTestingProvidersChange:l,onTestingTimeLeftChange:c}){const[u,d]=p.useState(!1),[f,m]=p.useState(),[h,v]=p.useState(null),[g,x]=p.useState({}),[b,y]=p.useState(new Set),[k,j]=p.useState({}),[C,T]=p.useState(null),[N,z]=p.useState(!1),[A,O]=p.useState(null),[D,E]=p.useState(!1),[L,w]=p.useState(!1),[$,ee]=p.useState(null),[F,H]=p.useState("all"),[Z,ue]=p.useState(new Set),{providerTestTimeoutSeconds:V}=fl(),W=p.useRef(null),ce=p.useRef(null),U=e??[],Q=p.useMemo(()=>{const I=F==="all"?U:U.filter(M=>M.source===F);return F==="all"?[...I].sort((M,J)=>{const re={personal:0,company:1};return(re[M.source??""]??2)-(re[J.source??""]??2)}):I},[U,F]),Ce=n??g,oe=s??b,pe=o??k,ge=c?(I,M)=>c(I,M):(I,M)=>{j(M===void 0?J=>{const re={...J};return delete re[I],re}:J=>({...J,[I]:M}))};p.useEffect(()=>{(async()=>{try{const I=await Ge("/api/config/paths",R6,O6);T(I.providerConfig)}catch{}})()},[]);const me=p.useCallback(I=>{ce.current!==null&&clearTimeout(ce.current),O(I),W.current?.scrollTo({top:W.current.scrollHeight,behavior:"smooth"}),ce.current=setTimeout(()=>{O(null),ce.current=null},2e3)},[]);p.useEffect(()=>()=>{ce.current!==null&&clearTimeout(ce.current)},[]);const xe=p.useCallback(()=>{i?.().catch(()=>{})},[i]),ke=p.useCallback((I,M)=>{a?a(I,M):x(J=>({...J,[I]:M}))},[a]),Ae=p.useCallback((I,M)=>{if(l){l(I,M);return}y(J=>{const re=new Set(J);return M?re.add(I):re.delete(I),re})},[l]),_=p.useCallback(async I=>{ke(I,A6()),Ae(I,!0);const M=new AbortController,J=U.find(je=>je.id===I),re=F6(J,V);let ie=re;ge(I,ie);const he=setInterval(()=>{ie--,ge(I,ie),ie<=0&&(clearInterval(he),M.abort())},1e3);try{const je=await Ge(`/api/providers/${I}/test`,E6,re*1e3+1e3,{method:"POST",signal:M.signal},Se=>`HTTP ${Se.status}: ${Se.statusText}`);ke(I,je),await B6(I,je)}catch(je){const Se=je instanceof Error&&je.name==="AbortError",ze=je instanceof Fo;Se||ze?ke(I,ed("Request timed out","timeout")):je instanceof Error&&ke(I,ed(je.message,"server_error"))}finally{clearInterval(he),ge(I,void 0),Ae(I,!1)}},[V,U,ge,ke,Ae]),X=p.useCallback(async(I,M,J=!0)=>{ue(re=>{const ie=new Set(re);return ie.add(I),ie});try{const re=M!==void 0&&M.trim()!==""?{url:M}:{},ie=await Ge(`/api/providers/${I}/model-metadata`,z6,$6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(re)},()=>"Failed to refresh model metadata");return ie.imported===0&&J?v("No matching model metadata found for this provider."):v(null),me(ie.provider.id),xe(),ie.imported>0}catch(re){return J&&v(re instanceof Error?re.message:Br),!1}finally{ue(re=>{const ie=new Set(re);return ie.delete(I),ie})}},[xe,me]);function G(I){(async()=>{try{const M=await Ge("/api/providers",po,td,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(nd(I))},()=>"Failed to add provider");d(!1),me(M.id),I.modelMetadataUrl!==void 0&&I.modelMetadataUrl.trim()!==""&&await X(M.id,I.modelMetadataUrl,!1),xe(),await _(M.id)}catch(M){v(M instanceof Error?M.message:Br)}})()}function P(I){f&&(async()=>{try{const M=await Ge(`/api/providers/${f.id}`,po,td,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(nd(I))},()=>"Failed to update provider");m(void 0),me(M.id),I.modelMetadataUrl!==void 0&&I.modelMetadataUrl.trim()!==""&&await X(M.id,I.modelMetadataUrl,!1),xe(),((I.apiKey??"")!==(f.apiKey??"")||JSON.stringify(I.models)!==JSON.stringify(f.models)||(I.anthropicBaseUrl??"")!==(f.anthropicBaseUrl??"")||(I.openaiBaseUrl??"")!==(f.openaiBaseUrl??"")||(I.openaiResponsesBaseUrl??"")!==(f.openaiResponsesBaseUrl??""))&&await _(M.id)}catch(M){v(M instanceof Error?M.message:Br)}})()}function R(I){ee(I),w(!0)}function B(){const I=$;I!==null&&(async()=>{let M;try{M=await Pn(`/api/providers/${I}`,M6,{method:"DELETE"})}catch{v(Br);return}if(!M.ok){v(await sl(M,"Failed to delete provider"));return}xe()})()}const se=p.useRef(null);function ne(I){const M="/api/providers/export";(async()=>{try{const J=await Pn(M,L6);if(!J.ok){v("Failed to export providers");return}const re=await J.blob(),ie=URL.createObjectURL(re),he=document.createElement("a");he.href=ie,he.download=J.headers.get("Content-Disposition")?.match(/filename="(.+)"/)?.[1]??"providers.json",document.body.appendChild(he),he.click(),document.body.removeChild(he),URL.revokeObjectURL(ie)}catch{v("Failed to export providers")}})()}function q(){se.current?.click()}function le(I){const M=I.target.files?.[0];M&&(async()=>{try{const J=await M.text(),re=await Pn("/api/providers/import",D6,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(J)}),ie=await nl(re,I6);re.ok&&ie.imported!==void 0&&ie.imported>0?(xe(),v(null)):ie.errors&&ie.errors.length>0?v(ie.errors.join("; ")):v(ie.message??"Import failed")}catch{v("Failed to import providers")}I.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||f?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:f?"Edit Provider":"Add New Provider"})}),r.jsx(_6,{provider:f,onSubmit:f?P:G,onCancel:()=>{d(!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(we,{variant:"outline",size:"sm",onClick:()=>ne(),className:"gap-1 hover:bg-muted",children:[r.jsx(ar,{className:"size-3"}),"Export"]}),r.jsxs(we,{variant:"outline",size:"sm",onClick:q,className:"gap-1 hover:bg-muted",children:[r.jsx(Bf,{className:"size-3"}),"Import"]}),r.jsx("input",{type:"file",ref:se,accept:".json",onChange:le,style:{display:"none"}}),r.jsxs(we,{variant:"outline",size:"sm",onClick:()=>E(!0),className:"gap-1",children:[r.jsx(Ow,{className:"size-3"}),"Scan"]}),r.jsxs(we,{onClick:()=>d(!0),size:"sm",className:"gap-1",children:[r.jsx(ia,{className:"size-4"}),"Add Provider"]})]})]}),C!==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:C,children:C}),r.jsx("button",{type:"button",onClick:()=>{Ct(C).then(I=>{I&&(z(!0),setTimeout(()=>z(!1),2e3))})},className:"ml-auto shrink-0 text-muted-foreground transition-colors hover:text-foreground","aria-label":N?"Copied config file path":"Copy config file path",children:N?r.jsx(Ze,{className:"size-3 text-cyan-300"}):r.jsx(Et,{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(vs,{className:"size-4 shrink-0"}),h]}),U.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(we,{onClick:()=>d(!0),variant:"outline",size:"sm",children:[r.jsx(ia,{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(I=>r.jsx("button",{type:"button",onClick:()=>H(I),className:`rounded-md px-3 py-1.5 text-sm font-medium transition-colors ${F===I?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:I==="all"?"All":I==="personal"?"Personal":"Company"},I))}),r.jsx("div",{ref:W,className:"space-y-3",children:Q.map(I=>r.jsx(u6,{provider:I,testResults:Ce[I.id],isTesting:oe.has(I.id),testingTimeLeft:pe[I.id],isHighlighted:I.id===A,onEdit:M=>m(M),onDelete:R,onRefreshMetadata:M=>{X(M)},isRefreshingMetadata:Z.has(I.id),onTest:M=>{_(M)}},I.id))})]}),r.jsx(HA,{open:D,onOpenChange:E,onImportComplete:()=>{i!==void 0&&i()}}),r.jsx($p,{open:L,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:B})]})}function sd(){const[e,t]=p.useState(!1),[n,s]=p.useState("providers"),{providers:o,isLoading:i,mutate:a}=ip(),[l,c]=p.useState({}),[u,d]=p.useState(new Set),[f,m]=p.useState({}),h=p.useCallback((x,b)=>{c(y=>({...y,[x]:b}))},[]),v=p.useCallback((x,b)=>{d(y=>{const k=new Set(y);return b?k.add(x):k.delete(x),k})},[]),g=p.useCallback((x,b)=>{m(y=>{if(b===void 0){const k={...y};return delete k[x],k}return{...y,[x]:b}})},[]);return r.jsxs(Vn,{open:e,onOpenChange:t,children:[r.jsx(Zo,{asChild:!0,children:r.jsxs(we,{variant:"ghost",size:"icon",className:hi,"aria-label":"Settings",title:"Settings",children:[r.jsx($w,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"Settings"})]})}),r.jsxs(qn,{className:"flex max-h-[80vh] max-w-2xl flex-col overflow-hidden",children:[r.jsx(Zn,{children:r.jsx(Gn,{children:"Settings"})}),r.jsxs(Vm,{value:n,onValueChange:s,className:"flex-1 overflow-hidden",children:[r.jsxs(qm,{className:"w-full justify-start bg-muted/35",children:[r.jsx(jt,{value:"providers",children:"Providers"}),r.jsx(jt,{value:"proxy",children:"Proxy"}),r.jsx(jt,{value:"storage",children:"Storage"}),r.jsx(jt,{value:"mcp",children:"MCP"}),r.jsx(jt,{value:"onboarding",children:"Onboarding"})]}),r.jsxs("div",{className:"mt-4 flex-1 overflow-x-hidden overflow-y-auto pr-2",children:[r.jsx(St,{value:"providers",children:r.jsx(U6,{externalProviders:o,isLoading:i,externalTestResults:l,externalTestingProviders:u,externalTestingTimeLeft:f,onProvidersMutate:()=>a(),onTestResultsChange:h,onTestingProvidersChange:v,onTestingTimeLeftChange:g})}),r.jsx(St,{value:"proxy",children:r.jsx(G6,{})}),r.jsx(St,{value:"storage",children:r.jsx(V6,{})}),r.jsx(St,{value:"mcp",children:r.jsx(Z6,{})}),r.jsx(St,{value:"onboarding",children:r.jsx(q6,{})})]})]})]})]})}const W6=Y({memoryCount:K(),logDir:S(),logFileCount:K(),logBytes:K(),chunkDir:S(),chunkFileCount:K(),chunkBytes:K(),sessionArchiveDir:S(),sessionArchiveFileCount:K(),sessionArchiveBytes:K()}),H6=1e4;function Zi(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 V6(){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 d=await Ge("/api/logs?stats=1",W6,H6,void 0,f=>`Failed to load storage stats: HTTP ${String(f.status)}`);t(d)}catch(d){s(d instanceof Error?d.message:String(d))}finally{i(!1)}},[]);p.useEffect(()=>{c()},[c]);const u=p.useCallback((d,f)=>{Ct(f).then(m=>{m&&(l(d),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(we,{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(Vs,{id:"log-dir",label:"Log storage path",value:e.logDir,copiedId:a,onCopy:u}),r.jsx(Vs,{id:"chunk-dir",label:"Streaming chunks storage path",value:e.chunkDir,copiedId:a,onCopy:u}),r.jsx(Vs,{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 / ",Zi(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 / ",Zi(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 /"," ",Zi(e.sessionArchiveBytes)]})]})]}),n!==null&&r.jsx("p",{className:"text-xs text-destructive",children:n})]})}function Vs({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(we,{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(Ze,{className:"size-3.5 text-emerald-500"}):r.jsx(Et,{className:"size-3.5"})})]})]})}function q6(){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)=>{Ct(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(Cs,{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(Vs,{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(Ze,{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(Ze,{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(Ze,{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(Ze,{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(Ze,{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(Ze,{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 Z6(){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]
105
- command = "agent-inspector-mcp"
106
- args = ["stdio", "--url", "${s}"]`}],[s]),i=p.useCallback((a,l)=>{Ct(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(Cs,{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(Vs,{id:a.id,label:a.label,value:a.value,copiedId:e,onCopy:i},a.id))})]})}function G6(){const{strip:e,slowResponseThresholdSeconds:t,providerTestTimeoutSeconds:n,timeDisplayFormat:s,isLoading:o,setStrip:i,setSlowResponseThresholdSeconds:a,setProviderTestTimeoutSeconds:l,setTimeDisplayFormat:c}=fl(),[u,d]=p.useState(null),[f,m]=p.useState(!1),h=p.useCallback(async b=>{d(null),m(!0);try{await i(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[i]),v=p.useCallback(async b=>{d(null),m(!0);try{await a(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[a]),g=p.useCallback(async b=>{d(null),m(!0);try{await l(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[l]),x=p.useCallback(async b=>{d(null),m(!0);try{await c(b)}catch(y){d(y instanceof Error?y.message:String(y))}finally{m(!1)}},[c]);return 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||f,onChange:b=>{h(b.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:sa,step:1,value:t,disabled:o||f,onChange:b=>{const y=Number(b.currentTarget.value);Number.isInteger(y)&&(y<0||y>sa||v(y))},className:"h-8 w-24 rounded-md border border-input bg-transparent px-2 text-sm font-mono disabled:cursor-not-allowed disabled:opacity-50"}),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:ra,step:1,value:n,disabled:o||f,onChange:b=>{const y=Number(b.currentTarget.value);Number.isInteger(y)&&(y<1||y>ra||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||f,onChange:b=>{const y=Af.safeParse(b.currentTarget.value);y.success&&x(y.data)},className:"h-8 rounded-md border border-input bg-background px-2 text-sm disabled:cursor-not-allowed disabled:opacity-50",children:[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 K6=Ee(["installed","update-available","available","planned","unknown"]),J6=Y({id:S(),name:S(),npmName:S(),capability:S(),description:S(),workflow:S(),installCommand:S(),state:K6,installedVersion:S().nullable(),latestVersion:S().nullable(),primary:Me()}),Y6=Y({id:S(),name:S(),validatedVersion:S(),binary:S(),modelFlag:S(),variantFlag:S().nullable(),tools:fe(S()),logDir:S(),skillsDir:S(),agentsDir:S()}),X6=Y({id:S(),title:S(),stage:S(),packageId:S(),description:S(),command:S(),requiresSession:Me(),runnable:Me()}),Q6=Y({checkedAt:S(),packages:fe(J6),runnerPresets:fe(Y6),recipes:fe(X6)}),eR=Ee(["install","upgrade","help","runner-presets","recipe"]),tR=Ee(["queued","running","succeeded","failed"]),k0=Y({id:S(),packageId:S(),npmName:S(),recipeId:S().nullable().default(null),action:eR,status:tR,command:S(),output:S(),createdAt:S(),startedAt:S().nullable(),finishedAt:S().nullable(),exitCode:K().nullable(),error:S().nullable()}),ac=Y({task:k0}),nR=Y({tasks:fe(k0)}),sR=[{id:"observe",title:"Observe",label:"Live",description:"Capture IDE, process, session, turn, request, response, tools, and providers.",metric:"Inspector core",icon:O2},{id:"replay",title:"Replay",label:"Ready",description:"Promote real logs into repeatable replay evidence without losing the raw context.",metric:"Session asset",icon:nn},{id:"evaluate",title:"Evaluate",label:"Next",description:"Use eval-harness to turn sessions into regression cases and provider bakeoffs.",metric:"Eval loop",icon:pl},{id:"connect",title:"Connect",label:"MCP",description:"Expose Inspector state to coding agents as queryable context and durable evidence.",metric:"/api/mcp",icon:gw}];async function rR(e){return _t(e,Q6,void 0,t=>`Failed to load ecosystem packages: ${String(t.status)}`)}async function oR(e){return _t(e,ac,void 0,t=>`Failed to load ecosystem task: ${String(t.status)}`)}async function iR(e){return _t(e,nR,void 0,t=>`Failed to load ecosystem tasks: ${String(t.status)}`)}async function aR(e,t){return(await _t(`/api/ecosystem/packages/${encodeURIComponent(e)}/${t}`,ac,{method:"POST"},s=>`Failed to start ecosystem task: ${String(s.status)}`)).task}async function lR(e){return(await _t(`/api/ecosystem/recipes/${encodeURIComponent(e)}/run`,ac,{method:"POST"},n=>`Failed to start ecosystem recipe: ${String(n.status)}`)).task}function cR(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 uR(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 dR(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 qs(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 fR(e){switch(e.status){case"queued":return"Queued";case"running":return`${qs(e.action)} running`;case"succeeded":return`${qs(e.action)} complete`;case"failed":return`${qs(e.action)} failed`}}function j0(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 pR(e){switch(e.state){case"available":return"install";case"update-available":return"upgrade";case"installed":case"planned":case"unknown":return null}}function hR({pkg:e,activeTask:t,onStartTask:n}){const s=pR(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(yw,{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(Pe,{className:ae("shrink-0",uR(e.state)),variant:"outline",children:cR(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:dR(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(we,{type:"button",size:"sm",variant:"secondary",disabled:o,onClick:()=>n(e.id,s),children:[o?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx(ar,{className:"size-3.5"}),qs(s)]}),r.jsxs(we,{type:"button",size:"sm",variant:"outline",disabled:o||e.state==="planned",onClick:()=>n(e.id,"help"),children:[r.jsx(Cs,{className:"size-3.5"}),"Help"]}),e.id==="eval-harness"&&r.jsxs(we,{type:"button",size:"sm",variant:"ghost",disabled:o||e.state==="planned",onClick:()=>n(e.id,"runner-presets"),children:[r.jsx(pl,{className:"size-3.5"}),"Presets"]})]})]})}function mR({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(Xe,{className:"size-4 animate-spin text-cyan-200/75"}):r.jsx(Cs,{className:"size-4 text-white/55"}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-sm font-semibold",children:fR(e)}),r.jsx("div",{className:"break-all font-mono text-[11px] text-white/35",children:e.command})]})]}),r.jsx(Pe,{variant:"outline",className:ae("shrink-0",j0(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 gR({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 xR(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 bR({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($f,{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(Pe,{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 vR({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(Of,{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(Pe,{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(we,{type:"button",size:"sm",variant:"outline",onClick:()=>s(e),children:[t?r.jsx(Ze,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"}),t?"Copied":"Copy"]}),e.runnable&&r.jsxs(we,{type:"button",size:"sm",variant:"secondary",disabled:n,onClick:()=>o(e),children:[n?r.jsx(Xe,{className:"size-3.5 animate-spin"}):r.jsx($f,{className:"size-3.5"}),n?"Running":"Run"]})]})]})]})}function yR({task:e,selected:t,onSelect:n}){const s=e.recipeId??qs(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(Mf,{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(Pe,{variant:"outline",className:ae("shrink-0",j0(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(we,{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),[d,f]=p.useState(null),[m,h]=p.useState(null),v=Vt("/api/ecosystem/packages",rR,{revalidateOnFocus:!1,revalidateIfStale:!1}),g=Vt(d===null?null:`/api/ecosystem/tasks/${d}`,oR,{refreshInterval:w=>{const $=w?.task;return $!==void 0&&($.status==="queued"||$.status==="running")?900:0},revalidateOnFocus:!1}),x=Vt(n?"/api/ecosystem/tasks":null,iR,{refreshInterval:2500,revalidateOnFocus:!1}),b=v.data?.packages??[],y=v.data?.runnerPresets??[],k=v.data?.recipes??[],j=(x.data?.tasks??[]).slice(0,6),C=p.useMemo(()=>b.filter(w=>w.state==="installed"||w.state==="update-available").length,[b]),T=xR(e),N="npx @tonyclaw/eval-harness runner-presets",z=()=>{Ct(T).then(()=>{i(!0),window.setTimeout(()=>i(!1),1200)})},A=()=>{Ct(N).then(()=>{l(!0),window.setTimeout(()=>l(!1),1200)})},O=w=>{Ct(w.command).then(()=>{u(w.id),window.setTimeout(()=>u(null),1200)})},D=w=>{h(null),lR(w.id).then($=>{f($.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"&&v.mutate())},[E,v,x]);const L=(w,$)=>{h(null),aR(w,$).then(ee=>{f(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(Vn,{open:n,onOpenChange:s,children:[r.jsx(Zo,{asChild:!0,children:r.jsxs(we,{variant:"ghost",size:"icon",className:hi,"aria-label":"TonyClaw Lab",title:"TonyClaw Lab",children:[r.jsx(Of,{className:"size-4"}),r.jsx("span",{className:"sr-only",children:"TonyClaw Lab"})]})}),r.jsxs(qn,{className:"flex max-h-[84vh] max-w-5xl flex-col overflow-hidden",children:[r.jsx(Zn,{children:r.jsxs(Gn,{className:"flex items-center gap-2",children:[r.jsx(Oc,{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(Pe,{variant:"outline",className:"border-cyan-300/20 bg-cyan-300/8 text-cyan-100",children:[String(C),"/",String(b.length)," packages"]})]}),r.jsx("div",{className:"mt-4 grid gap-3 sm:grid-cols-2",children:sR.map(w=>r.jsx(gR,{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(Pe,{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:T}),r.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[r.jsxs(we,{size:"sm",variant:"secondary",onClick:z,children:[o?r.jsx(Ze,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"}),o?"Copied":"Copy"]}),r.jsxs(we,{size:"sm",variant:"outline",onClick:A,children:[r.jsx(pl,{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(Oc,{className:"size-3.5"}),"copy-ready workflows"]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[k.map(w=>r.jsx(vR,{recipe:w,copied:c===w.id,running:E!==null&&E.recipeId===w.id&&(E.status==="queued"||E.status==="running"),onCopy:O,onRun:D},w.id)),v.isLoading&&k.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(Cs,{className:"size-3.5"}),N]})]}),r.jsxs("div",{className:"grid gap-3 md:grid-cols-2 xl:grid-cols-4",children:[y.map(w=>r.jsx(bR,{preset:w},w.id)),v.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"}),v.isLoading&&r.jsx("div",{className:"font-mono text-[11px] text-muted-foreground",children:"checking npm..."})]}),v.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:[b.map(w=>r.jsx(hR,{pkg:w,activeTask:E,onStartTask:L},w.id)),v.isLoading&&b.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(yR,{task:w,selected:d===w.id,onSelect:$=>{f($.id),g.mutate({task:$},{revalidate:!0})}},w.id))})]}),r.jsx(mR,{task:E})]})]})]})}function wR(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:od(i.cacheCreationInputTokens,a.cacheCreationInputTokens),read:od(i.cacheReadInputTokens,a.cacheReadInputTokens)})}}return t}function od(e,t){return t===null||e===null?null:t>e?{direction:"up",delta:t-e}:t<e?{direction:"down",delta:e-t}:null}function S0(e){return e.filter(t=>t.responseStatus===null).length}function C0(e){for(const t of e){const n=t.userAgent;if(n!=null&&n!=="")return n}return null}function _R(e){for(const t of e){const n=t.clientPid;if(n!=null)return n}return null}function N0(e){for(const t of e){const n=t.clientProjectFolder;if(n!=null&&n!=="")return n}return null}function kR(e){return El({userAgent:C0(e.logs),conversationId:e.conversationId,clientProjectFolder:N0(e.logs)})}function jR(e){if(e===null||e==="")return"Unknown IDE";const t=e.split(/[ /;]/)[0]??"";return t===""?"Unknown IDE":t}function SR(e,t){const n=Go(e);return n!==null?n:jR(t)}function Io(e){return e===null||e===""?"unknown":String(e)}function CR(e,t,n){return e!=="unknown"?e:`unknown:${Io(t)}:${Io(n)}`}function NR(e,t){return`${Io(e)}:${Io(t)}`}function Ba(e){return[...e].sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}function id(e){return Ba(e)[0]?.timestamp??""}function Gi(e){return[...e].sort((t,n)=>id(t.logs).localeCompare(id(n.logs)))}function TR(e){const t=new Map;for(const s of e){const o=C0(s.logs),i=N0(s.logs),a=kR(s),l=CR(a,o,i);let c=t.get(l);c===void 0&&(c={id:l,client:a,label:SR(a,o),userAgent:o,processes:new Map,logs:[]},t.set(l,c)),c.logs.push(...s.logs);const u=_R(s.logs),d=`${l}:${NR(u,i)}`;let f=c.processes.get(d);f===void 0&&(f={id:d,clientPid:u,clientProjectFolder:i,sessions:[],logs:[]},c.processes.set(d,f)),f.sessions.push(s),f.logs.push(...s.logs)}const n=[];for(const s of t.values()){const o=Gi([...s.processes.values()].map(i=>({id:i.id,clientPid:i.clientPid,clientProjectFolder:i.clientProjectFolder,sessions:Gi(i.sessions),logs:Ba(i.logs)})));n.push({id:s.id,client:s.client,label:s.label,userAgent:s.userAgent,processes:o,logs:Ba(s.logs)})}return Gi(n)}function zo(e){return e<=0?"0":Fe(e)}function T0(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 ER(e){let t=0;for(const n of e)t+=n.sessions.length;return t}function AR(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 Oo({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 E0({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(Xe,{className:"size-3 animate-spin"}),t,e>1&&r.jsxs("span",{className:"tabular-nums",children:["x",e]})]})}function A0(){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 RR({groups:e,...t}){const n=p.useMemo(()=>TR(e),[e]),[s,o]=p.useState(()=>new Set),[i,a]=p.useState(()=>new Set),l=p.useCallback(u=>{o(d=>{const f=new Set(d);return f.has(u)?f.delete(u):f.add(u),f})},[]),c=p.useCallback(u=>{a(d=>{const f=new Set(d);return f.has(u)?f.delete(u):f.add(u),f})},[]);return r.jsx("div",{className:"space-y-4",children:n.map(u=>r.jsx(IR,{group:u,collapsed:s.has(u.id),collapsedProcessIds:i,onToggleIde:()=>l(u.id),onToggleProcess:c,conversationProps:t},u.id))})}function IR({group:e,collapsed:t,collapsedProcessIds:n,onToggleIde:s,onToggleProcess:o,conversationProps:i}){const a=T0(e.logs),l=ER(e.processes),c=e.logs.length,u=S0(e.logs),d=u>0;return r.jsxs("section",{className:ae("bg-card/75 shadow-sm relative isolate overflow-hidden rounded-[8px]",d&&"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(fw,{className:"size-5"})}):r.jsx(Ko,{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"}),d&&r.jsx(E0,{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(Oo,{label:"IN",value:zo(a.inputTokens)}),r.jsx(Oo,{label:"OUT",value:zo(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(Nt,{className:"size-4"}):r.jsx(ot,{className:"size-4"})})]}),d&&r.jsx(A0,{}),!t&&r.jsx("div",{className:"space-y-3 px-3 pb-3 pt-2 sm:px-4",children:e.processes.map(f=>r.jsx(zR,{group:f,collapsed:n.has(f.id),onToggle:()=>o(f.id),conversationProps:i},f.id))})]})}function zR({group:e,collapsed:t,onToggle:n,conversationProps:s}){const o=T0(e.logs),i=AR(e.clientProjectFolder),a=e.sessions.length,l=e.logs.length,c=S0(e.logs),u=c>0,d=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(Ay,{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:d}),u&&r.jsx(E0,{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(Yy,{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(Oo,{label:"IN",value:zo(o.inputTokens)}),r.jsx(Oo,{label:"OUT",value:zo(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(Nt,{className:"size-4"}):r.jsx(ot,{className:"size-4"})})]}),u&&r.jsx(A0,{}),!t&&r.jsx("div",{className:"space-y-2 p-2 pt-1 sm:p-3 sm:pt-2",children:e.sessions.map(f=>r.jsx(OE,{group:f,...s,showClientIdentity:!1,showLogClientMetadata:!1,showProcessMetadata:!1},f.id))})]})]})}const Po="data-nav-id",OR="data-nav-action";function ad(e){return Array.from(e.querySelectorAll(`[${Po}]`))}function ld(e){return e instanceof HTMLElement}function PR(e,t){let n=e;for(;n!==null&&n!==t;){if(n.hasAttribute(Po))return n;n=n.parentElement}return e.hasAttribute(Po)?e:null}function Ki(e){const t=e.getAttribute(OR);return t==="toggle"||t==="expand"||t==="collapse"?t:null}function Fs(e){e.focus({preventScroll:!0}),e.scrollIntoView({block:"nearest",behavior:"smooth"})}function Bs(e,t){return e[t]??null}function R0(e){const t=e.tagName;return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable)}function cd(e){const t=e.tagName;return t==="BUTTON"||t==="A"||R0(e)?!0:e.closest("[role='button'],[role='menuitem'],[role='option']")!==null}function MR(e){return e.closest("[role='dialog'],[role='menu'],[role='listbox']")!==null?!0:document.querySelector("[role='dialog'],[role='menu'],[role='listbox']")!==null}function LR(){const e=window.getSelection();return e===null?!1:e.type==="Range"&&e.toString().length>0}function Ur(e,t){return e.key===t&&e.shiftKey}function DR(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(!ld(u)||u!==c)return;const d=ad(l),f=Bs(d,0);f!==null&&Fs(f)},[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(!ld(u)||R0(u)||LR())return;const d=c.contains(u);if(d&&cd(u)&&!u.hasAttribute(Po)||!d&&(!o||cd(u)||MR(u)))return;const f=ad(c);if(f.length===0)return;const m=PR(u,c),h=m!==null?f.indexOf(m):-1;let v=!1;switch(l.key){case"ArrowUp":case"W":{if(l.shiftKey&&l.key==="ArrowUp"||l.key==="W"&&!Ur(l,"W"))break;l.preventDefault();const g=h>0?h-1:h===-1?f.length-1:-1;if(g!==-1){const x=Bs(f,g);x!==null&&Fs(x)}v=!0;break}case"ArrowDown":case"S":{if(l.shiftKey&&l.key==="ArrowDown"||l.key==="S"&&!Ur(l,"S"))break;l.preventDefault();const g=h<f.length-1?h+1:h===-1?0:-1;if(g!==-1){const x=Bs(f,g);x!==null&&Fs(x)}v=!0;break}case"ArrowLeft":case"A":{if(l.shiftKey&&l.key==="ArrowLeft"||l.key==="A"&&!Ur(l,"A")||m===null)break;if(l.preventDefault(),Ki(m)==="collapse")m.click();else if(h>0){const x=Bs(f,h-1);x!==null&&Fs(x)}v=!0;break}case"ArrowRight":case"D":{if(l.shiftKey&&l.key==="ArrowRight"||l.key==="D"&&!Ur(l,"D")||m===null)break;if(l.preventDefault(),Ki(m)==="expand")m.click();else if(h<f.length-1){const x=Bs(f,h+1);x!==null&&Fs(x)}v=!0;break}case" ":{if(m===null)break;l.preventDefault(),Ki(m)!==null&&m.click(),v=!0;break}}v&&l.stopPropagation()};return document.addEventListener("keydown",a,{capture:!0}),()=>document.removeEventListener("keydown",a,{capture:!0})},[e,o,s]),p.useEffect(()=>(document.addEventListener("focusin",i),()=>document.removeEventListener("focusin",i)),[i])}const $R={system:"System",user:"User",assistant:"Assistant",tool:"Tool Results",tools:"Tool Definitions"},FR={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"},BR={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"},Ji=12,Wr=1,ud=80,dd=24;function UR(e){return e.length<=dd?e:`${e.slice(0,dd-3)}...`}function WR(e){const t=e.replace(/\s+/g," ").trim();return t.length<=ud?t:`${t.slice(0,ud)}...`}function Hr(e){return e>=10?`${e.toFixed(0)}%`:e>=1?`${e.toFixed(1)}%`:e>0?"<1%":"0%"}const HR=p.memo(function({segments:t,totalTokens:n,showLabels:s=!0,onActivate:o}){const i=p.useMemo(()=>n>0?n:t.reduce((x,b)=>x+b.size,0),[t,n]),a=t.slice(0,Ji),l=t.slice(Ji),c=l.reduce((x,b)=>x+b.size,0),u=l.length,d=Ji,f=d+u-1,m=u>0,h=o!==void 0,v=p.useMemo(()=>a.reduce((x,b)=>x+b.size,0),[a]),g=p.useMemo(()=>`Request context: ~${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(_n,{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,b)=>{const y=i>0?x.size/i*100:0,k=Math.max(Wr,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",FR[x.role],h?BR[x.role]:""),C={width:`${k}%`},T=`${x.label}, ${Hr(y)}, ~${Fe(x.size)} tokens`;return r.jsxs(lt,{children:[r.jsx(ct,{asChild:!0,children:h?r.jsx("button",{type:"button",role:"button",tabIndex:0,onClick:()=>o(x),onKeyDown:N=>{(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),o(x))},"data-anatomy-path":x.path,"aria-label":T,className:j,style:C}):r.jsx("span",{"aria-label":T,className:j,style:C})}),r.jsxs(ut,{side:"bottom",className:"max-w-sm text-xs p-2 space-y-0.5",children:[r.jsxs("div",{className:"font-semibold",children:[x.label," - ",Hr(y)," - ~",Fe(x.size)," ","tokens"]}),r.jsx("div",{className:"text-muted-foreground",children:$R[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:WR(x.text)})]})]},`${x.path}-${b}`)}),m&&r.jsxs(lt,{children:[r.jsx(ct,{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(Wr,c/i*100)}%`},children:["... +",u]})}),r.jsxs(ut,{side:"bottom",className:"text-xs",children:[u," more segment",u===1?"":"s"," (indices"," ",d,"-",f,")"]})]})]}),s&&r.jsxs("div",{className:"flex w-full gap-1 text-[10px] text-muted-foreground",children:[a.map((x,b)=>{const y=i>0?x.size/i*100:0,k=Math.max(Wr,y);return r.jsxs("div",{className:"flex flex-col gap-0.5 truncate",style:{width:`${k}%`},title:`${x.label} - ${Hr(y)} - ~${Fe(x.size)} tokens`,children:[r.jsx("span",{className:"truncate font-mono text-foreground/80",children:UR(x.label)}),r.jsxs("span",{className:"truncate font-mono text-muted-foreground/70",children:[Hr(y)," - ~",Fe(x.size)]})]},`label-${x.path}-${b}`)}),m&&r.jsxs("div",{className:"flex flex-col gap-0.5 truncate text-muted-foreground",style:{width:`${Math.max(Wr,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)]})]})]}),v<i*.1&&r.jsx("div",{className:"h-0"})]})})}),I0=.75,z0=.9,Ua=8e3,VR=.35,O0=40,P0=160,qR=5,ZR=8,GR=18,KR=6e4,JR=.7,fd=3e3,YR=.3,pd=160,XR=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"],eI=["max_tokens","maxTokens","max_completion_tokens","maxCompletionTokens","max_output_tokens","maxOutputTokens"],tI=[{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"]}],nI={system:"System",user:"User messages",assistant:"Assistant messages",tool:"Tool results",tools:"Tool definitions"};function sI(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 M0(e,t){for(const n of t){const s=sI(ye(e,n));if(s!==null)return s}return null}function rI(e){const t=ye(e,"model");if(typeof t!="string")return null;const n=t.trim();return n===""?null:n}function oI(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 iI(e,t,n=[]){const s=M0(t,QR);if(s!==null)return{tokens:s,label:"Request metadata",source:"request"};const o=GA(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 tI)if(oI(i,a))return{tokens:a.tokens,label:`${a.family} local rule`,source:"model-rule"};return{tokens:null,label:"No local rule",source:"unknown"}}function aI(e){return e<0?0:e>1?1:e}function lI(e){return e===null?"unknown":e>=z0?"danger":e>=I0?"watch":"ok"}function cI(e,t){return e.filter(n=>n.role===t).reduce((n,s)=>n+s.size,0)}function uI(e,t){return["system","user","assistant","tool","tools"].map(s=>{const o=cI(e,s);return{role:s,label:nI[s],tokens:o,percent:t>0?o/t:0}}).filter(s=>s.tokens>0).sort((s,o)=>o.tokens-s.tokens)}function Wa(e){return e.replace(/\s+/g," ").trim().toLowerCase()}function dI(e){const t=e.replace(/\s+/g," ").trim();return t.length<=pd?t:`${t.slice(0,pd-3)}...`}function fI(e){return{role:e.role,label:e.label,path:e.path,tokens:e.tokens,characters:e.characters}}function pI(e){return{role:e.role,label:e.label,path:e.path,tokens:e.size,characters:e.characters,text:e.text}}function hI(e){const t=e.trim();return t.startsWith("{")||t.startsWith("[")}function mI(e){if(!hI(e))return null;try{return JSON.parse(e)}catch{return null}}function gI(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function xI(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 bI(e){const t=xI(e);return t===null?!1:XR.has(gI(t))}function vI(e){return e.map(t=>t.startsWith("[")?t:`.${t}`).join("").replace(/^\./,"")}function yI(e,t,n){const s=Yl(t);if(s<P0)return null;const o=Jl(t);return o<O0?null:{role:e.role,label:`${e.label} ${vI(n)}`,path:e.path,tokens:o,characters:s,text:t}}function Ha({value:e,segment:t,path:n,depth:s,candidates:o}){if(!(o.length>=ZR)&&!(s>qR)){if(typeof e=="string"){if(!bI(n))return;const i=yI(t,e,n);i!==null&&o.push(i);return}if(Array.isArray(e)){e.forEach((i,a)=>Ha({value:i,segment:t,path:[...n,`[${String(a)}]`],depth:s+1,candidates:o}));return}Xl(e)&&Object.entries(e).forEach(([i,a])=>Ha({value:a,segment:t,path:[...n,i],depth:s+1,candidates:o}))}}function wI(e){const t=pI(e),n=mI(e.text);if(n===null)return[t];const s=[];Ha({value:n,segment:e,path:[],depth:0,candidates:s});const o=Wa(e.text),i=new Set([o]),a=s.filter(l=>{const c=Wa(l.text);return c===""||i.has(c)?!1:(i.add(c),!0)});return[t,...a]}function _I(e){const t=new Map;for(const s of e){const o=wI(s);for(const i of o){if(i.tokens<O0||i.characters<P0)continue;const a=Wa(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:dI(o.text),firstLabel:o.label,segments:s.candidates.map(fI)})}return n.sort((s,o)=>o.repeatedTokens-s.repeatedTokens||o.totalTokens-s.totalTokens)}function kI(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>=Ua?"danger":"watch",title:"Duplicate context",detail:`${String(n)} repeated blocks across ${String(t)} group${t===1?"":"s"}, ~${String(s)} repeated tokens.`}}function jI(e){return e.reduce((t,n)=>t+n.repeatedTokens,0)}function SI(e,t,n){const s=[],o=e.find(c=>c.role==="tools")??null;o!==null&&(o.tokens>=Ua||o.percent>=VR&&o.tokens>=fd)&&s.push({kind:"tool-schema",severity:o.tokens>=Ua?"danger":"watch",title:"Large tool schema",detail:`Tool definitions take ${Math.round(o.percent*100)}% of request context.`});const i=e.find(c=>c.role==="system")??null;i!==null&&i.tokens>=fd&&i.percent>=YR&&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>=GR&&(a>=KR||l>=JR)&&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 CI({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:jI(s)}}function NI({segments:e,inputTokens:t,parsed:n,model:s,providers:o=[]}){const i=e.reduce((T,N)=>T+N.size,0),a=s??rI(n),l=t??i,c=M0(n,eI),u=iI(a,n,o),d=c??0,f=u.tokens===null?null:l+d,m=u.tokens===null?null:u.tokens-l,h=u.tokens===null?null:u.tokens-l-d,v=u.tokens===null||f===null?null:aI(f/u.tokens),g=uI(e,i),x=g[0]??null,b=e.filter(T=>T.role!=="tools").length,y=_I(e),k=kI(y),j=SI(g,i,b);k!==null&&j.unshift(k);const C=lI(v);return{model:a,contextWindow:u,estimatedInputTokens:l,outputReserveTokens:c,windowUsedTokens:f,remainingInputTokens:m,remainingAfterReserveTokens:h,usagePercent:v,riskLevel:C,roleUsages:g,largestRole:x,diagnostics:j,duplicateGroups:y,health:CI({risk:C,contextWindow:u,diagnostics:j,duplicateGroups:y})}}const H8={watch:I0,danger:z0},hd=new WeakMap;function TI(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 EI(e){if(e===null)return null;try{return JSON.parse(e)}catch{return null}}function AI(e){return{role:e.role,label:e.label,size:e.tokens,characters:e.tokens*4,text:"",path:`role:${e.role}`}}function RI(e,t){const n=EI(e.rawRequestBody);if(n===null)return null;const o=Dm(er(e)).anatomySegments(n);if(o===null)return null;const i=NI({segments:o,inputTokens:e.inputTokens??null,parsed:n,model:e.model,providers:t}),a=i.model??e.model??"Unknown model",l=i.roleUsages.map(AI);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 II(e,t,n){const s=hd.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=RI(e,t);return hd.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 zI(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 md(e){switch(e){case"danger":return 4;case"watch":return 3;case"unknown":return 2;case"ok":return 1}}function OI(e,t){const n=md(t.latest.riskLevel)-md(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 PI(e,t){return e.usagePercent===null||t.usagePercent===null?null:(t.usagePercent-e.usagePercent)*100}function MI(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 LI(e,t=[]){const n=MI(e),s=TI(t),o=new Map;for(const a of n){const l=II(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:zI(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:PI(a.first,a.latest)})).sort(OI)}}function en(e){return e.length<=30?e:`${e.slice(0,12)}...${e.slice(-12)}`}function DI(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 gd(e,t){return t.get(e.id)??e.id}function $I(e){return e==="full"}function FI(e,t){const n=t>0;return{redacted:n,raw:n&&$I(e)}}function xd(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 L0(e,t){const n=e[0],s=e[e.length-1];return n===void 0||s===void 0?null:yl(n.timestamp,s.timestamp,t)}function BI(e){for(const t of e)if(t.userAgent!==null&&t.userAgent!==void 0&&t.userAgent!=="")return t.userAgent;return null}function UI(e){return e.error!==null&&e.error!==void 0&&e.error.length>0?!0:e.responseStatus!==null&&e.responseStatus>=400}function WI(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 HI(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 VI(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 qI(e,t){return`${Fe(e)} in / ${Fe(t)} out`}function ZI(e,t){if(e.length===0)return 0;if(t.length===0)return Oa(e).length;let n=0;for(const s of t)n+=Oa(s.logs).length;return n}function GI({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 KI(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 JI({pending:e,failures:t,lengthStops:n,stopReason:s,lastFailure:o}){if(o!==null&&(o.status===499||KI(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 YI({logs:e,conversationGroups:t,isLoading:n,timeDisplayFormat:s,slowResponseThresholdSeconds:o}){let i=0,a=0,l=0,c=0,u=0,d=0,f=null,m=null,h=null,v=null,g=null,x=0,b=0,y=0,k=null;const j=o*1e3;for(let A=0;A<e.length;A+=1){const O=e[A];if(O===void 0)continue;const D=A+1,E=Hf(O);E!==null&&(f=E),E==="length"&&(c+=1),UI(O)&&(i+=1,m=D,h={logNumber:D,status:O.responseStatus,error:O.error??null}),O.responseStatus===null&&(a+=1),o>0&&O.elapsedMs!==null&&O.elapsedMs>=j&&(l+=1),O.inputTokens!==null&&(u+=O.inputTokens),O.outputTokens!==null&&(d+=O.outputTokens),O.elapsedMs!==null&&(v===null||O.elapsedMs>v)&&(v=O.elapsedMs,g=D);const L=O.inputTokens??0,w=O.outputTokens??0,$=L+w;$>x&&(x=$,b=L,y=w,k=D)}const C=n||a>0&&i===0?"rolling":i>0?"failed":l>0||c>0?"watch":"clear",T=C==="rolling"?"Rolling":C==="failed"?"Failure":C==="watch"?"Watch":"Clear",N=GI({stopReason:f,pending:a,lastFailureLogNumber:m}),z=JI({pending:a,failures:i,lengthStops:c,stopReason:f,lastFailure:h});return{status:C,statusLabel:T,modelLabel:WI(e),providerLabel:HI(e),requests:e.length,turns:ZI(e,t),failures:i,pending:a,slow:l,lengthStops:c,timeRange:L0(e,s),tokenLabel:`${Fe(u)} in / ${Fe(d)} out`,finishLabel:N.label,finishDetail:N.detail,finishTone:N.tone,outcomeLabel:z.label,outcomeDetail:z.detail,outcomeTone:z.tone,slowestLabel:v===null?"n/a":VI(v),slowestDetail:g===null?"Latency pending":`Request #${g}`,heaviestDetail:k===null?"Tokens pending":`#${k} ${qI(b,y)}`}}function XI(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 QI(e){switch(e){case"rolling":return"cool";case"failed":return"danger";case"watch":return"watch";case"clear":return"neutral"}}function e8(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 is({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",XI(o)),children:t}),r.jsx("div",{className:"mt-1 font-mono text-[11px] leading-snug text-muted-foreground",children:n})]})}function t8({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(by,{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(is,{label:"Status",value:e.statusLabel,detail:e8(e),tone:QI(e.status)}),r.jsx(is,{label:"Turns",value:String(e.turns),detail:e.finishLabel,icon:r.jsx(Gy,{className:"size-3 text-muted-foreground"}),tone:e.finishTone}),r.jsx(is,{label:"Requests",value:String(e.requests),detail:`${e.failures} failed / ${e.slow} slow`,icon:r.jsx(aa,{className:"size-3 text-muted-foreground"}),tone:e.failures>0?"danger":"neutral"}),r.jsx(is,{label:"Peak",value:e.slowestLabel,detail:e.slowestDetail,icon:r.jsx(Zw,{className:"size-3 text-muted-foreground"}),tone:e.slow>0?"watch":"neutral"}),r.jsx(is,{label:"Tokens",value:e.tokenLabel,detail:e.heaviestDetail,icon:r.jsx(vl,{className:"size-3 text-muted-foreground"})}),r.jsx(is,{label:"Outcome",value:e.outcomeLabel,detail:e.outcomeDetail,tone:e.outcomeTone})]})]})}function n8({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 Zs(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 s8(e){return e===null?"n/a":Math.abs(e)<.1?"0%":`${e>0?"+":""}${e.toFixed(1)}%`}function Va(e){return e===null||!Number.isFinite(e)?0:Math.min(Math.max(e*100,0),100)}function r8(e,t){if(t===null)return null;const n=Va(e),s=Va(t);return s<=0||Math.abs(s-n)<.5?null:s}function o8(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 i8(e){const t=e.latest.contextWindow.tokens;return t===null?"Context window unknown":`Context window ${op(t)}`}const a8=["score","decision","final_status","validation_pass_ratio","semantic_memory_score","opencode_exit","actual_model","run_dir","workspace","project_dir","work_dir"];function D0(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 Yi(e,t){if(e===null)return null;const n=e.metadata[t];return n===void 0?null:D0(n)}function l8(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 c8(e){const t=[];for(const n of a8){const s=e.metadata[n];if(s===void 0)continue;const o=D0(s);o!==null&&t.push({key:n,value:o})}return t}function bd({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=Yi(i,"score"),l=Yi(i,"decision"),c=Yi(i,"final_status"),u=[a===null?null:{label:`score ${a}`,value:a},l===null?null:{label:l,value:l},c===null?null:{label:c,value:c},i?.model===null||i?.model===void 0?null:{label:i.model,value:i.model}].filter(d=>d!==null&&d.label.length>0&&d.value.length>0);return 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(d=>!d),className:"flex w-full items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-white/[0.04]","aria-expanded":n,children:[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(d=>r.jsx("span",{className:ae("rounded border px-1.5 py-0.5 font-mono text-[10px]",l8(d.value)),children:d.label},d.label))})]}),n?r.jsx(hl,{className:"size-4 shrink-0 text-muted-foreground"}):r.jsx(ot,{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(d=>{const f=d.member,m=c8(f);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:d.groupTitle,children:d.groupTitle}),r.jsx("span",{className:"font-mono text-[10px] uppercase text-muted-foreground",children:d.groupStatus}),f.status!==null&&r.jsxs("span",{className:"font-mono text-[10px] text-muted-foreground",children:["member ",f.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:f.sessionId,children:en(f.sessionId)}),f.label!==null&&r.jsx("span",{children:f.label}),f.provider!==null&&r.jsx("span",{children:f.provider}),f.model!==null&&r.jsx("span",{className:"font-mono",children:f.model}),f.runId!==null&&r.jsxs("span",{className:"font-mono",title:f.runId,children:["run ",en(f.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))})]},`${d.groupId}:${f.id}`)})})]})}function u8({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 Vr({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 d8(e){return`${Math.max(0,Math.ceil(e/1e3)).toString()}s`}function eo({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,`${d8(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 vd({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:[u8({logs:e,pagination:t}),t.isLoading&&e.length>0&&r.jsx("span",{className:"ml-2",children:"Loading..."}),t.loadProgress!==void 0&&r.jsx(eo,{progress:t.loadProgress})]}),r.jsxs("div",{className:"flex w-full items-center gap-1 overflow-x-auto sm:w-auto",children:[r.jsx(Vr,{label:"Oldest",title:"Load the oldest logs in this session",icon:r.jsx(iy,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOldest}),r.jsx(Vr,{label:"Older",title:"Load older logs",icon:r.jsx(ey,{className:"size-3.5"}),disabled:s||!t.hasOlder,onClick:t.onOlder}),r.jsx(Vr,{label:"Newer",title:"Load newer logs",icon:r.jsx(Nt,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewer}),r.jsx(Vr,{label:"Newest",title:"Load the newest logs in this session",icon:r.jsx(ly,{className:"size-3.5"}),disabled:s||!t.hasNewer,onClick:t.onNewest})]})]})}function f8(e){return`${e} ${e===1?"request":"requests"}`}function yd(e){return`#${String(e)}`}function wd(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 p8(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 h8(e){switch(e){case"risk":return"Risk";case"optimizable":return"Optimizable";case"ok":return"OK"}}const m8=10,g8=80;function x8(e){e.setAttribute("data-deep-link-highlight","true"),window.setTimeout(()=>{e.removeAttribute("data-deep-link-highlight")},1800)}function b8(e){const t=document.getElementById(`log-${String(e)}`);return t instanceof HTMLElement?(t.scrollIntoView({block:"center",behavior:"smooth"}),t.focus({preventScroll:!0}),x8(t),!0):!1}function $0(e){nr({logId:e,tab:"anatomy"});let t=0;const n=()=>{nr({logId:e,tab:"anatomy"}),!b8(e)&&(t+=1,t<m8&&window.setTimeout(n,g8))};window.setTimeout(n,0)}function _d({command:e}){const[t,n]=p.useState(!1),s=p.useCallback(()=>{Ct(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(Ze,{className:"size-4"}):r.jsx(Et,{className:"size-4"})})]})}function Xi({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 qr({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 v8=["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 kd({compact:e,entrancePhase:t}){return e?r.jsx(Ou,{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(Ou,{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:sr.map((n,s)=>{const o=v8[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 y8({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(kd,{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",ca.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(Pu,{}),r.jsx(Lu,{}),r.jsx(rd,{currentSessionId:n,logCount:s}),r.jsx(sd,{})]})]})}):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(kd,{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",ca.version]})]}),r.jsx(ia,{className:"size-4 shrink-0 text-muted-foreground/70","aria-hidden":"true"}),r.jsx(ME,{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(Pu,{}),r.jsx(Lu,{}),r.jsx(rd,{currentSessionId:n,logCount:s}),r.jsx(sd,{})]})]})}function jd({label:e,logId:t}){return r.jsxs("button",{type:"button",onClick:()=>$0(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 ${yd(t)}`,children:[e," ",yd(t)]})}function w8({latestPercent:e,peakPercent:t,risk:n,onOpenContext:s}){const o=Va(e),i=r8(e,t),a=t===null?`Latest context window usage ${Zs(e)}`:`Latest context window usage ${Zs(e)}, peak ${Zs(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]",o8(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 _8({summary:e}){const t=e.trendPercent,n=t===null||Math.abs(t)<.1?null:t>0?U2:M2,s=e.latest.diagnostics[0]??null,o=Zs(e.latest.usagePercent),i=Zs(e.peak.usagePercent),a=()=>{$0(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]",p8(e.latest.health.level)),children:h8(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:f8(e.requestCount)}),r.jsx("span",{children:i8(e)})]})]}),r.jsxs("div",{className:"min-w-0 space-y-2 text-xs",children:[r.jsx(w8,{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",wd(e.latest.riskLevel)),children:o}),r.jsx(jd,{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",wd(e.peak.riskLevel)),children:i}),r.jsx(jd,{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")}),s8(t)]}),r.jsx("div",{className:"h-5","aria-hidden":"true"})]})]})]}),r.jsxs("div",{className:"min-w-0 space-y-1.5",children:[r.jsx(HR,{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 k8({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(_8,{summary:t},t.model))})]})}function j8(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 S8({label:e,logs:t,totalIn:n,totalOut:s,timeDisplayFormat:o,contextSummary:i,showBackLink:a}){const[l,c]=p.useState(!1),[u,d]=p.useState(!1),f=p.useMemo(()=>L0(t,o),[t,o]),m=p.useMemo(()=>BI(t),[t]),h=p.useMemo(()=>j8(i),[i]),v=p.useCallback(()=>{Ct(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(F2,{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:en(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":""]}),f!==null&&r.jsx("span",{children:f}),(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:()=>d(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(hl,{className:"size-3.5"}):r.jsx(ot,{className:"size-3.5"})]}),r.jsx("button",{type:"button",onClick:v,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(Ze,{className:"size-3.5"}):r.jsx(Et,{className:"size-3.5"})})]}),u&&r.jsx(k8,{summary:i})]})}function C8({logs:e,sessions:t,models:n,selectedSession:s,selectedModel:o,onSessionChange:i,onModelChange:a,onClearAll:l,onDeleteCurrentView:c,onReloadSession:u,onClearGroup:d,onNotify:f,onImportLogs:m,viewMode:h,captureMode:v,strip:g,slowResponseThresholdSeconds:x,timeDisplayFormat:b,isLoading:y=!1,pagination:k,sessionLoadProgress:j,sessionMemberships:C=[],hideSessionFilter:T=!1,pinnedSessionId:N}){const{totalIn:z,totalOut:A}=p.useMemo(()=>xd(e),[e]),{providers:O}=ip(),[D,E]=p.useState(null),[L,w]=p.useState(null),[$,ee]=p.useState(!1),[F,H]=p.useState(null),[Z,ue]=p.useState(null),[V,W]=p.useState(!1),[ce,U]=p.useState(!1),[Q,Ce]=p.useState(!1),[oe,pe]=p.useState(null),[ge,me]=p.useState("hidden"),xe=p.useRef(null),ke=p.useRef(null),Ae=p.useRef(null),_=p.useRef(null),X=p.useRef(0);DR(xe,ke,{pageWide:!0});const G=p.useCallback(()=>{X.current+=1,_.current?.abort(),_.current=null,E(null),w(null)},[]);p.useEffect(()=>()=>{X.current+=1,_.current?.abort(),_.current=null},[]),p.useEffect(()=>{const xt=50+sr.length*400,Ot=setTimeout(()=>me("playing"),50),mr=setTimeout(()=>me("done"),xt);return()=>{clearTimeout(Ot),clearTimeout(mr)}},[]),p.useEffect(()=>{if(N===void 0){document.title="Agent Inspector";return}const Le=e.length===1?"1 req":`${e.length} req`;document.title=`${en(N)} - ${Le} - Agent Inspector`},[e.length,N]);const P=p.useCallback(async Le=>{_.current?.abort();const it=new AbortController;_.current=it;const xt=X.current+1;X.current=xt,E(Le),w(null);try{const Ot=await j_(e,Le,{signal:it.signal});if(X.current!==xt)return;if(!Ot.ok){if(Ot.canceled===!0)return;f!==void 0?f({message:Ot.message,tone:"error"}):w(Ot.message)}}finally{X.current===xt&&(_.current=null,E(null))}},[e,f]),R=p.useCallback(()=>{Ae.current?.click()},[]),B=p.useCallback(Le=>{const it=Le.currentTarget.files?.[0];Le.currentTarget.value="",!(it===void 0||m===void 0)&&(ee(!0),ue(null),H(null),m(it).then(xt=>{const Ot=xt.skipped>0?`, skipped ${String(xt.skipped)}`:"",mr=`Imported ${String(xt.imported)} logs as ${xt.sessionId}${Ot}.`;f!==void 0?f({message:mr,tone:"success"}):H(mr)}).catch(xt=>{const Ot=xt instanceof Error?xt.message:"Failed to import logs";f!==void 0?f({message:Ot,tone:"error"}):ue(Ot)}).finally(()=>{ee(!1)}))},[m,f]);p.useEffect(()=>{G(),pe(null)},[G,s,o]);const se=p.useCallback(()=>{G(),H(null),ue(null),pe(null),l()},[G,l]),ne=p.useCallback(()=>{U(!1),W(!0)},[]),q=p.useCallback(()=>{if(G(),H(null),ue(null),pe(null),!ce||c===void 0){W(!1),l();return}Ce(!0),c(e.map(Le=>Le.id)).then(()=>{W(!1)}).catch(Le=>{const it=Le instanceof Error?Le.message:"Failed to delete stored logs";f!==void 0?f({message:it,tone:"error"}):ue(it)}).finally(()=>{Ce(!1)})},[G,ce,e,l,c,f]),le=p.useCallback(()=>{u!==void 0&&(G(),H(null),ue(null),pe(null),u())},[G,u]),I=p.useCallback(()=>{pe(null)},[]),M=p.useMemo(()=>K3(e),[e]),J=p.useMemo(()=>DI(M),[M]),re=p.useMemo(()=>n8({pinnedSessionId:N,selectedSession:s,sessions:t,logs:e}),[e,N,s,t]),ie=re?.logs??[],he=re!==null&&ie.length>0,{totalIn:je,totalOut:Se}=p.useMemo(()=>xd(ie),[ie]),ze=p.useMemo(()=>LI(ie,O),[ie,O]),Be=p.useMemo(()=>wR(M),[M]),zt=p.useMemo(()=>WT(M),[M]),ln=FI(v,e.length),mt=N!==void 0,nt=e.length>0,Xt=e.length===0?"Load":"Reload",Jn=s==="__all__"?"":s,$e=s==="__all__"||t.includes(s)?s:"__typed__",ft=he&&re!==null?en(re.label):s==="__all__"?"All sessions":en(s),Qe=p.useMemo(()=>YI({logs:e,conversationGroups:M,isLoading:y,timeDisplayFormat:b,slowResponseThresholdSeconds:x}),[M,y,e,x,b]),Bt=p.useCallback(Le=>{const it=zt.get(Le.id);it!==void 0&&pe([it,Le])},[zt]),gt=p.useCallback(Le=>{const it=Le.currentTarget.value.trim();i(it===""?"__all__":it)},[i]),Is=p.useCallback(Le=>{Le!=="__typed__"&&i(Le)},[i]),F0=N!==void 0?N:s==="__all__"?null:s;return r.jsxs("div",{className:"bg-background min-h-screen w-full text-foreground",children:[r.jsxs("div",{className:"grid min-h-screen w-full grid-cols-1 lg:grid-cols-[minmax(0,1fr)_340px] xl:grid-cols-[minmax(0,1fr)_360px]",children:[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(y8,{compact:!0,crabEntrancePhase:ge,currentSessionId:F0,logCount:e.length}),r.jsxs(Xi,{label:"Session",children:[r.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[r.jsx(qr,{label:"Requests",value:e.length}),r.jsx(qr,{label:"Sessions",value:t.length}),r.jsx(qr,{label:"Input",value:Fe(he?je:z)}),r.jsx(qr,{label:"Output",value:Fe(he?Se:A)})]}),r.jsxs("div",{className:"mt-2 grid grid-cols-2 gap-2",children:[u!==void 0&&r.jsxs("button",{type:"button",onClick:le,disabled:y,className:"bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 min-w-0 items-center justify-center gap-1.5 rounded-md px-2 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:"Load stored logs for this session",children:[r.jsx(nn,{className:ae("size-3.5",y&&"animate-spin")}),r.jsx("span",{children:Xt})]}),r.jsxs("button",{type:"button",onClick:se,disabled:!nt,className:ae("bg-white/[0.035] hover:bg-white/[0.065] inline-flex h-8 min-w-0 items-center justify-center gap-1.5 rounded-md px-2 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",u===void 0&&c===void 0&&"col-span-2"),title:"Clear the current view. Stored logs remain reloadable.",children:[r.jsx(Wt,{className:"size-3.5"}),r.jsx("span",{children:"Clear"})]}),c!==void 0&&r.jsxs("button",{type:"button",onClick:ne,disabled:!nt||Q,className:"bg-red-500/[0.07] hover:bg-red-500/[0.12] inline-flex h-8 min-w-0 items-center justify-center gap-1.5 rounded-md px-2 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:"Choose whether to delete stored data for the current view.",children:[r.jsx(Wt,{className:"size-3.5"}),r.jsx("span",{children:"Delete"})]})]}),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(eo,{progress:j})})]}),r.jsx(Xi,{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:ft,children:ft}),r.jsx("div",{className:"mt-1 text-[11px] text-muted-foreground",children:mt?"Session workspace":"Live workspace"})]})}),he&&re!==null&&r.jsx(S8,{label:re.label,logs:ie,totalIn:je,totalOut:Se,timeDisplayFormat:b,contextSummary:ze,showBackLink:re.showBackLink}),he&&N!==void 0&&C.length>0&&r.jsx(bd,{memberships:C}),r.jsx(Xi,{label:"Filters",children:r.jsxs("div",{className:"space-y-2",children:[!T&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"relative",children:[r.jsx(Ff,{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:Jn,onChange:gt,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"}),Jn!==""&&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(cr,{className:"size-3.5"})})]}),r.jsxs(Co,{value:$e,onValueChange:Is,children:[r.jsx(To,{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(No,{placeholder:"All sessions"})}),r.jsxs(Eo,{children:[r.jsx(Lt,{value:"__all__",children:"All sessions"}),$e==="__typed__"&&r.jsxs(Lt,{value:"__typed__",children:["Typed: ",en(s)]}),t.map(Le=>r.jsx(Lt,{value:Le,children:en(Le)},Le))]})]})]}),r.jsxs(Co,{value:o,onValueChange:a,children:[r.jsx(To,{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(No,{placeholder:"All models"})}),r.jsxs(Eo,{children:[r.jsx(Lt,{value:"__all__",children:"All models"}),n.map(Le=>r.jsx(Lt,{value:Le,children:Le},Le))]})]})]})})]})}),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:ft})]}),m!==void 0&&r.jsxs(r.Fragment,{children:[r.jsx("input",{ref:Ae,type:"file",accept:".zip,.json,.jsonl,application/zip,application/json",className:"hidden",onChange:B}),r.jsx("button",{type:"button",onClick:R,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(Bf,{className:"size-3.5"}),r.jsx("span",{children:"Import"})]})})]}),ln.redacted&&r.jsx("button",{type:"button",onClick:()=>{P("redacted")},disabled:D!==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:D==="redacted"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(ar,{className:"size-3.5"}),r.jsx("span",{children:"Export"})]})}),ln.raw&&r.jsx("button",{type:"button",onClick:()=>{P("raw")},disabled:D!==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:D==="raw"?r.jsx("span",{children:"Exporting..."}):r.jsxs(r.Fragment,{children:[r.jsx(Dy,{className:"size-3.5"}),r.jsx("span",{children:"Raw"})]})}),u!==void 0&&r.jsxs("button",{type:"button",onClick:le,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(nn,{className:ae("size-3.5",y&&"animate-spin")}),r.jsx("span",{children:Xt})]}),r.jsxs("button",{type:"button",onClick:se,disabled:!nt,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(Wt,{className:"size-3.5"}),r.jsx("span",{children:"Clear"})]}),c!==void 0&&r.jsxs("button",{type:"button",onClick:ne,disabled:!nt||Q,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:"Choose whether to delete stored data for the current view.",children:[r.jsx(Wt,{className:"size-3.5"}),r.jsx("span",{children:"Delete"})]})]}),k===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(eo,{progress:j})}),r.jsx(vd,{logs:e,pagination:k,embedded:!0}),f===void 0&&L!==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:L}),f===void 0&&Z!==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:Z}),f===void 0&&F!==null&&Z===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(t8,{stats:Qe}),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:en(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(eo,{progress:j})}),C.length>0&&r.jsx("div",{className:"text-left",children:r.jsx(bd,{memberships:C})}),!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:le,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(nn,{className:"size-3.5"}),r.jsx("span",{children:"Load session"})]}),T?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(_d,{command:"ANTHROPIC_BASE_URL=http://localhost:9527/proxy <your-tool>"}),r.jsx(_d,{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:ke,tabIndex:0,className:"flex flex-col gap-2 focus:outline-none",children:[r.jsx("div",{ref:xe,children:r.jsx(RR,{groups:M,viewMode:h,strip:g,slowResponseThresholdSeconds:x,cacheTrends:Be,onCompareWithPrevious:Bt,comparisonPredecessors:zt,onClearGroup:d,defaultExpanded:M.length===1,timeDisplayFormat:b})}),r.jsx("div",{className:"mt-3",children:r.jsx(vd,{logs:e,pagination:k})})]})]})]})]}),r.jsx(Vn,{open:V,onOpenChange:W,children:r.jsxs(qn,{className:"border-red-500/20 bg-zinc-950 text-zinc-100 sm:max-w-md",children:[r.jsxs(Zn,{children:[r.jsx(Gn,{children:"Delete current logs?"}),r.jsx(Dp,{children:"Choose whether this only clears the UI or also deletes the stored log data for the current view."})]}),r.jsxs("label",{className:"flex items-start gap-3 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("input",{type:"checkbox",className:"mt-0.5 size-4 shrink-0",checked:ce,disabled:Q,onChange:Le=>U(Le.currentTarget.checked)}),r.jsxs("span",{className:"min-w-0",children:[r.jsx("span",{className:"block font-medium",children:"Also delete stored data"}),r.jsxs("span",{className:"mt-1 block text-xs text-red-200/80",children:["Removes persisted log rows, streaming chunks, and session archive entries for these"," ",e.length.toString()," visible request",e.length===1?"":"s","."]})]})]}),r.jsxs("div",{className:"flex justify-end gap-2",children:[r.jsx(we,{type:"button",variant:"outline",size:"sm",disabled:Q,onClick:()=>W(!1),children:"Cancel"}),r.jsx(we,{type:"button",variant:ce?"destructive":"secondary",size:"sm",disabled:Q,onClick:q,children:Q?"Deleting...":ce?"Delete data":"Clear only"})]})]})}),oe!==null&&r.jsx(p.Suspense,{fallback:null,children:r.jsx(M4,{left:oe[0],right:oe[1],leftDisplayNumber:gd(oe[0],J),rightDisplayNumber:gd(oe[1],J),onClose:I})})]})}const N8=Kt([Y({type:Te("init"),logs:fe(Js)}),Y({type:Te("update"),log:Js})]),T8=Y({logs:fe(Js),total:K().int().nonnegative(),limit:K().int().positive(),hasOlder:Me(),hasNewer:Me(),oldestLogId:K().int().positive().nullable(),newestLogId:K().int().positive().nullable()}),E8=fe(S()),A8=Y({success:Me(),cleared:K().int().nonnegative(),logFilesRewritten:K().int().nonnegative().optional(),chunkFilesDeleted:K().int().nonnegative(),sessionArchiveLogsDeleted:K().int().nonnegative().optional()});function R8(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 Us(e){const t=new Set;for(const n of e)n.sessionId!==null&&n.sessionId!==""&&t.add(n.sessionId);return[...t]}function I8(e){const t=new Set;for(const n of e)n.model!==null&&n.model!==""&&t.add(n.model);return[...t]}function z8(e,t,n){return t==="__all__"&&n==="__all__"?e:e.filter(s=>!(t!=="__all__"&&s.sessionId!==t||n!=="__all__"&&s.model!==n))}const O8=100,P8=12,M8=1800,lc=100,Sd=500,L8=200,qa=2e4,D8=1e4;function $8(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 F8(e,t,n=lc){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 zn(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 Qi(e,t,n=lc){return Ge(F8(e,t,n),T8,qa)}function Zr(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 pn(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 V8({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:d,dismissToast:f}=c0(),[m,h]=p.useState(e===void 0),[v,g]=p.useState(null),[x,b]=p.useState(e!==void 0),[y,k]=p.useState(void 0),[j,C]=p.useState([]),[,T]=p.useTransition(),N=p.useRef(null),z=p.useRef(null),A=p.useRef(null),O=p.useRef(0),D=p.useRef(null),E=p.useRef(null),L=p.useRef(new Map),w=p.useRef([]),$=p.useRef(null),ee=p.useCallback(I=>{d({message:I,tone:"error"})},[d]),F=p.useCallback(()=>{E.current!==null&&(clearInterval(E.current),E.current=null),D.current=null,k(void 0)},[]),H=p.useCallback((I,M,J=0,re=0)=>{E.current!==null&&clearInterval(E.current);const ie=Date.now();D.current=ie;const he=()=>{O.current===M&&k({label:I,elapsedMs:Date.now()-ie,timeoutMs:qa,loadedLogs:J,loadedPages:re})};he(),E.current=setInterval(he,250)},[]),Z=p.useCallback((I,M,J,re)=>{const ie=D.current;ie===null||O.current!==M||k({label:I,elapsedMs:Date.now()-ie,timeoutMs:qa,loadedLogs:J,loadedPages:re})},[]),ue=p.useMemo(()=>z8(t,s,i),[t,s,i]),V=p.useMemo(()=>pn(l,Us(t)),[t,l]),W=p.useMemo(()=>I8(t),[t]),ce=p.useCallback(()=>{_t("/api/sessions",E8).then(I=>{c(M=>pn(M,I))}).catch(()=>{})},[]),U=p.useCallback(()=>{$.current=null;const I=w.current;w.current=[],I.length!==0&&T(()=>{n(M=>{const J=Zr(M,I);return L.current=zn(J),J})})},[T]),Q=p.useCallback(I=>{w.current.push(I),$.current===null&&($.current=setTimeout(U,O8))},[U]),Ce=p.useCallback(()=>{N.current&&N.current.close(),h(!1);const I=new EventSource($8(e));N.current=I,I.onmessage=M=>{try{const J=String(M.data),re=JSON.parse(J),ie=N8.safeParse(re);if(!ie.success){ee("Failed to parse SSE data");return}const he=ie.data;he.type==="init"?($.current!==null&&(clearTimeout($.current),$.current=null),w.current=[],n(je=>{const Se=Zr(je,he.logs);return L.current=zn(Se),Se}),c(je=>pn(je,Us(he.logs))),h(!0),f()):he.type==="update"&&(c(je=>he.log.sessionId===null||he.log.sessionId===""?je:pn(je,[he.log.sessionId])),Q(he.log))}catch{ee("Failed to parse SSE data")}},I.onerror=()=>{ee("SSE connection lost, reconnecting..."),h(!0),I.close(),z.current!==null&&clearTimeout(z.current),z.current=setTimeout(Ce,3e3)}},[f,e,Q,ee]),oe=p.useCallback(I=>{if(e===void 0)return;const M=O.current+1;O.current=M,b(!0),H("Loading session logs",M),f(),Qi(e,I).then(J=>{if(O.current!==M)return;const re=J.logs;L.current=zn(re),n(re),g(J),o(e),b(!1),F(),f()}).catch(J=>{O.current===M&&(n([]),g(null),b(!1),F(),ee(J instanceof Error?J.message:"Failed to load session logs"))})},[f,e,ee,H,F]),pe=p.useCallback(I=>{const M=O.current+1;O.current=M,b(!0),H("Reloading full session",M),f(),(async()=>{const J=[];let re=await Qi(I,{kind:"oldest"},Sd);J.push(...re.logs),Z("Reloading full session",M,J.length,1);let ie=1;for(;re.hasNewer&&re.newestLogId!==null&&ie<L8;)re=await Qi(I,{kind:"newer",afterLogId:re.newestLogId},Sd),J.push(...re.logs),ie+=1,Z("Reloading full session",M,J.length,ie);O.current===M&&(n(he=>{const je=Zr(he,J);return L.current=zn(je),je}),c(he=>pn(he,[I])),b(!1),F(),re.hasNewer?d({message:`Loaded ${String(J.length)} logs for this session. More history is available.`,tone:"success"}):f())})().catch(J=>{O.current===M&&(b(!1),F(),ee(J instanceof Error?J.message:"Failed to reload session logs"))})},[f,ee,d,H,F,Z]);p.useEffect(()=>{if(e===void 0){C([]);return}let I=!1;return Ge("/api/groups",Ef,D8).then(M=>M.groups).then(M=>{I||M===null||C(R8(M,e))}).catch(()=>{I||C([])}),()=>{I=!0}},[e]),p.useEffect(()=>{ce()},[ce]),p.useEffect(()=>()=>{F()},[F]),p.useEffect(()=>{e!==void 0&&oe({kind:"newest"})},[e,oe]),p.useEffect(()=>{e===void 0&&s!=="__all__"&&pe(s)},[e,pe,s]),p.useEffect(()=>{if(e===void 0)return Ce(),()=>{N.current&&(N.current.close(),N.current=null),z.current!==null&&(clearTimeout(z.current),z.current=null),$.current!==null&&(clearTimeout($.current),$.current=null)}},[Ce,e]),p.useEffect(()=>{const I=window.location.hash;if(!I.startsWith("#log-")||A.current===I)return;const M=I.slice(1),J=Number(M.replace(/^log-/,""));Number.isInteger(J)&&J>0&&nr({logId:J,tab:"request"});let re=!1,ie=0,he=null,je=null;const Se=()=>{if(re)return;const ze=document.getElementById(M);if(ze!==null){A.current=I,ze.scrollIntoView({block:"center",behavior:"smooth"}),ze instanceof HTMLElement&&(he=ze,ze.setAttribute("data-deep-link-highlight","true"),je=window.setTimeout(()=>{ze.removeAttribute("data-deep-link-highlight")},M8),ze.focus({preventScroll:!0}),ze.getAttribute("data-nav-action")==="expand"&&ze.click());return}ie+=1,ie<P8&&window.setTimeout(Se,100)};return Se(),()=>{re=!0,je!==null&&window.clearTimeout(je),he!==null&&he.removeAttribute("data-deep-link-highlight")}},[ue.length]);const ge=p.useCallback(()=>{const I=Us(t);F(),b(!1),L.current.clear(),n([]),g(null),c(M=>pn(M,I)),d({message:"Cleared the current view. Stored logs are still reloadable.",tone:"success"})},[t,d,F]),me=p.useCallback(I=>{if(I.length===0)return;const M=new Set(I);n(J=>{const re=J.filter(he=>M.has(he.id)),ie=J.filter(he=>!M.has(he.id));return c(he=>pn(he,Us(re))),L.current=zn(ie),ie}),d({message:"Cleared this group from the current view.",tone:"success"})},[d]),xe=p.useCallback(async I=>{if(I.length===0)return;const M=I.filter(he=>Number.isInteger(he)&&he>=0);if(M.length===0){d({message:"No persisted log records were found for this view.",tone:"error"});return}const J=new Set(M),re=t.filter(he=>J.has(he.id)),ie=await _t("/api/logs",A8,{method:"DELETE",headers:{"content-type":"application/json"},body:JSON.stringify({ids:M})});n(he=>{const je=he.filter(Se=>!J.has(Se.id));return L.current=zn(je),je}),g(he=>he===null?null:{...he,logs:he.logs.filter(je=>!J.has(je.id))}),c(he=>pn(he,Us(re))),d({message:`Deleted ${ie.cleared.toString()} stored log${ie.cleared===1?"":"s"} from the current view.`,tone:"success"})},[t,d]),ke=p.useCallback(()=>{if(e!==void 0){oe({kind:"newest"});return}if(s==="__all__"){ce();return}pe(s)},[e,oe,ce,pe,s]),Ae=p.useCallback(async I=>{const M=new FormData;M.set("file",I);const J=await _t("/api/logs/import",S2,{method:"POST",body:M});return n(re=>{const ie=new Set(J.logs.map(je=>je.id)),he=Zr(re.filter(je=>!ie.has(je.id)),J.logs);return L.current=zn(he),he}),o(J.sessionId),a("__all__"),g(null),f(),J},[f]),{strip:_,captureMode:X,slowResponseThresholdSeconds:G,timeDisplayFormat:P}=fl(),R=X,B=p.useCallback(()=>{oe({kind:"oldest"})},[oe]),se=p.useCallback(()=>{oe({kind:"newest"})},[oe]),ne=p.useCallback(()=>{const I=t[0],M=v?.oldestLogId??I?.id??null;M!==null&&oe({kind:"older",beforeLogId:M})},[t,oe,v]),q=p.useCallback(()=>{const I=t[t.length-1],M=v?.newestLogId??I?.id??null;M!==null&&oe({kind:"newer",afterLogId:M})},[t,oe,v]),le=p.useMemo(()=>{if(e!==void 0)return{isLoading:x,loadProgress:y,total:v?.total??null,pageSize:v?.limit??lc,hasOlder:v?.hasOlder??!1,hasNewer:v?.hasNewer??!1,oldestLogId:v?.oldestLogId??null,newestLogId:v?.newestLogId??null,onOldest:B,onOlder:ne,onNewer:q,onNewest:se}},[e,se,q,ne,B,v,y,x]);return r.jsxs(r.Fragment,{children:[r.jsx(u0,{notice:u,onDismiss:f}),r.jsx(a_,{}),r.jsx(C8,{logs:ue,sessions:V,models:W,selectedSession:s,selectedModel:i,onSessionChange:o,onModelChange:a,onClearAll:ge,onDeleteCurrentView:xe,onReloadSession:e!==void 0||s!=="__all__"?ke:void 0,onClearGroup:me,onNotify:d,onImportLogs:e===void 0?Ae:void 0,isLoading:e===void 0&&!m||x,pagination:le,sessionLoadProgress:y,sessionMemberships:j,viewMode:R,captureMode:X,strip:_,slowResponseThresholdSeconds:G,timeDisplayFormat:P,hideSessionFilter:e!==void 0,pinnedSessionId:e})]})}export{W8 as $,Y as A,Pe as B,Ny as C,Vn as D,K as E,fe as F,nr as G,Fo as H,Me as I,S as J,Js as K,B4 as L,Lf as M,NI as N,rw as O,V8 as P,FR as Q,Aw as R,HR as S,Vm as T,$R as U,op as V,H8 as W,cr as X,ot as Y,Re as Z,hT as _,G3 as a,If as a0,mT as a1,gT as a2,Cs as a3,Ra as a4,ko as a5,Ys as a6,ye as a7,xn as a8,w5 as a9,Xe as aa,lf as ab,O4 as ac,ry as ad,ae as b,de as c,ia as d,Df as e,Fe as f,Dm as g,Nt as h,Ze as i,Et as j,Ct as k,Ge as l,qn as m,Zn as n,Gn as o,Nw as p,qm as q,er as r,jt as s,St as t,ip as u,we as v,_n as w,lt as x,ct as y,ut as z};