@mcp-use/inspector 3.0.1-canary.0 → 3.0.1-canary.2

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.
@@ -26920,7 +26920,7 @@ var Gd = class {
26920
26920
  //#region src/client/telemetry/utils.ts
26921
26921
  function cf() {
26922
26922
  try {
26923
- return "3.0.1-canary.0";
26923
+ return "3.0.1-canary.2";
26924
26924
  } catch {
26925
26925
  return "0.0.0";
26926
26926
  }
@@ -48457,9 +48457,9 @@ var aj, oj, sj, cj, lj, uj, dj, fj, pj, mj, hj, gj, _j, vj, Lce, Rce, yj, bj, xj
48457
48457
  }(), VF);
48458
48458
  }));
48459
48459
  //#endregion
48460
- //#region ../mcp-use/dist/chunk-Z6OOEG4Q.js
48460
+ //#region ../mcp-use/dist/chunk-Z64EF45A.js
48461
48461
  Zp();
48462
- var Hue = "1.25.1-canary.0";
48462
+ var Hue = "1.25.1-canary.2";
48463
48463
  function KF() {
48464
48464
  return Hue;
48465
48465
  }
@@ -129584,7 +129584,7 @@ function QYe({ serverId: e, toolCallId: t, toolName: n, toolInput: r, toolOutput
129584
129584
  onLoad: () => te(!0),
129585
129585
  onMessage: Fe,
129586
129586
  title: `MCP App: ${n}`,
129587
- className: V(Se === "inline" && "w-full", Se === "fullscreen" && "w-full h-full rounded-none", Se === "pip" && "w-full h-full", Se !== "fullscreen" && ve && "rounded-lg", "overflow-hidden relative z-20", ve && "border border-zinc-200 dark:border-zinc-700"),
129587
+ className: V(Se === "inline" && "w-full", Se === "fullscreen" && "w-full h-full rounded-none", Se === "pip" && "w-full h-full", Se !== "fullscreen" && ve && "rounded-lg", "overflow-hidden", ve && "border border-zinc-200 dark:border-zinc-700"),
129588
129588
  style: Ve
129589
129589
  }),
129590
129590
  " "
@@ -132559,7 +132559,7 @@ function aZe({ componentUrl: e, toolName: t, toolArgs: n, toolResult: r, serverI
132559
132559
  children: /* @__PURE__ */ (0, O.jsx)(Jp, { className: "w-4 h-4 text-foreground" })
132560
132560
  }),
132561
132561
  /* @__PURE__ */ (0, O.jsx)("div", {
132562
- className: V("flex-1 w-full flex justify-center items-center relative z-10", P === "fullscreen" && "pt-14", M && "items-center", P === "inline" && (d || f) && "pt-8"),
132562
+ className: V("flex-1 w-full flex justify-center items-center relative", P === "fullscreen" && "pt-14", M && "items-center", P === "inline" && (d || f) && "pt-8"),
132563
132563
  children: /* @__PURE__ */ (0, O.jsxs)("div", {
132564
132564
  className: "relative w-full max-w-[768px]",
132565
132565
  children: [P === "inline" && (d || f) && /* @__PURE__ */ (0, O.jsxs)("div", {
@@ -7612,7 +7612,7 @@ function MCPAppsRendererBase({
7612
7612
  displayMode === "fullscreen" && "w-full h-full rounded-none",
7613
7613
  displayMode === "pip" && "w-full h-full",
7614
7614
  displayMode !== "fullscreen" && prefersBorder && "rounded-lg",
7615
- "overflow-hidden relative z-20",
7615
+ "overflow-hidden",
7616
7616
  prefersBorder && "border border-zinc-200 dark:border-zinc-700"
7617
7617
  ),
7618
7618
  style: iframeStyle
@@ -8669,7 +8669,7 @@ function OpenAIComponentRendererBase({
8669
8669
  "div",
8670
8670
  {
8671
8671
  className: cn(
8672
- "flex-1 w-full flex justify-center items-center relative z-10",
8672
+ "flex-1 w-full flex justify-center items-center relative",
8673
8673
  displayMode === "fullscreen" && "pt-14",
8674
8674
  centerVertically && "items-center",
8675
8675
  displayMode === "inline" && (invoking || invoked) && "pt-8"
@@ -337,7 +337,7 @@ void main() {
337
337
 
338
338
  fragColor = vec4(color, opacity);
339
339
  }
340
- `;function ku(e){if(Array.isArray(e))return e.length===4?e:e.length===3?[...e,1]:Fu;if(typeof e!=`string`)return Fu;let t,n,r,i=1;if(e.startsWith(`#`))[t,n,r,i]=Au(e);else if(e.startsWith(`rgb`))[t,n,r,i]=ju(e);else if(e.startsWith(`hsl`))[t,n,r,i]=Nu(Mu(e));else return console.error(`Unsupported color format`,e),Fu;return[Pu(t,0,1),Pu(n,0,1),Pu(r,0,1),Pu(i,0,1)]}function Au(e){return e=e.replace(/^#/,``),e.length===3&&(e=e.split(``).map(e=>e+e).join(``)),e.length===6&&(e+=`ff`),[parseInt(e.slice(0,2),16)/255,parseInt(e.slice(2,4),16)/255,parseInt(e.slice(4,6),16)/255,parseInt(e.slice(6,8),16)/255]}function ju(e){let t=e.match(/^rgba?\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*([0-9.]+))?\s*\)$/i);return t?[parseInt(t[1]??`0`)/255,parseInt(t[2]??`0`)/255,parseInt(t[3]??`0`)/255,t[4]===void 0?1:parseFloat(t[4])]:[0,0,0,1]}function Mu(e){let t=e.match(/^hsla?\s*\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*(?:,\s*([0-9.]+))?\s*\)$/i);return t?[parseInt(t[1]??`0`),parseInt(t[2]??`0`),parseInt(t[3]??`0`),t[4]===void 0?1:parseFloat(t[4])]:[0,0,0,1]}function Nu(e){let[t,n,r,i]=e,a=t/360,o=n/100,s=r/100,c,l,u;if(n===0)c=l=u=s;else{let e=(e,t,n)=>(n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e),t=s<.5?s*(1+o):s+o-s*o,n=2*s-t;c=e(n,t,a+1/3),l=e(n,t,a),u=e(n,t,a-1/3)}return[c,l,u,i]}var Pu=(e,t,n)=>Math.min(Math.max(e,t),n),Fu=[0,0,0,1];function Iu(e){let t=w.useRef(void 0),n=w.useCallback(t=>{let n=e.map(e=>{if(e!=null){if(typeof e==`function`){let n=e,r=n(t);return typeof r==`function`?r:()=>{n(null)}}return e.current=t,()=>{e.current=null}}});return()=>{n.forEach(e=>e?.())}},e);return w.useMemo(()=>e.every(e=>e==null)?null:e=>{t.current&&=(t.current(),void 0),e!=null&&(t.current=n(e))},e)}function Lu(e){if(e.naturalWidth<1024&&e.naturalHeight<1024){if(e.naturalWidth<1||e.naturalHeight<1)return;let t=e.naturalWidth/e.naturalHeight;e.width=Math.round(t>1?1024*t:1024),e.height=Math.round(t>1?1024:1024/t)}}async function Ru(e){let t={},n=[],r=e=>{try{return e.startsWith(`/`)||new URL(e),!0}catch{return!1}},i=e=>{try{return e.startsWith(`/`)?!1:new URL(e,window.location.origin).origin!==window.location.origin}catch{return!1}};return Object.entries(e).forEach(([e,a])=>{if(typeof a==`string`){let o=a||`data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==`;if(!r(o)){console.warn(`Uniform "${e}" has invalid URL "${o}". Skipping image loading.`);return}let s=new Promise((n,r)=>{let a=new Image;i(o)&&(a.crossOrigin=`anonymous`),a.onload=()=>{Lu(a),t[e]=a,n()},a.onerror=()=>{console.error(`Could not set uniforms. Failed to load image at ${o}`),r()},a.src=o});n.push(s)}else a instanceof HTMLImageElement&&Lu(a),t[e]=a}),await Promise.all(n),t}var zu=(0,w.forwardRef)(function({fragmentShader:e,uniforms:t,webGlContextAttributes:n,speed:r=0,frame:i=0,width:a,height:o,minPixelRatio:s,maxPixelCount:c,mipmaps:l,style:u,...d},f){let[p,m]=(0,w.useState)(!1),h=(0,w.useRef)(null),g=(0,w.useRef)(null),_=(0,w.useRef)(n);return(0,w.useEffect)(()=>((async()=>{let n=await Ru(t);h.current&&!g.current&&(g.current=new gu(h.current,e,n,_.current,r,i,s,c,l),m(!0))})(),()=>{g.current?.dispose(),g.current=null}),[e]),(0,w.useEffect)(()=>{let e=!1;return(async()=>{let n=await Ru(t);e||g.current?.setUniforms(n)})(),()=>{e=!0}},[t,p]),(0,w.useEffect)(()=>{g.current?.setSpeed(r)},[r,p]),(0,w.useEffect)(()=>{g.current?.setMaxPixelCount(c)},[c,p]),(0,w.useEffect)(()=>{g.current?.setMinPixelRatio(s)},[s,p]),(0,w.useEffect)(()=>{g.current?.setFrame(i)},[i,p]),(0,S.jsx)(`div`,{ref:Iu([h,f]),style:a!==void 0||o!==void 0?{width:typeof a==`string`&&isNaN(+a)===!1?+a:a,height:typeof o==`string`&&isNaN(+o)===!1?+o:o,...u}:u,...d})});zu.displayName=`ShaderMount`;function Bu(e,t){for(let n in e){if(n===`colors`){let n=Array.isArray(e.colors),r=Array.isArray(t.colors);if(!n||!r){if(Object.is(e.colors,t.colors)===!1)return!1;continue}if(e.colors?.length!==t.colors?.length||!e.colors?.every((e,n)=>e===t.colors?.[n]))return!1;continue}if(Object.is(e[n],t[n])===!1)return!1}return!0}var Vu={name:`Default`,params:{...Su,speed:1,frame:0,colors:[`#e0eaff`,`#241d9a`,`#f75092`,`#9f50d3`],distortion:.8,swirl:.1,grainMixer:0,grainOverlay:0}};({...Su}),{...Su},{...Su};var Hu=(0,w.memo)(function({speed:e=Vu.params.speed,frame:t=Vu.params.frame,colors:n=Vu.params.colors,distortion:r=Vu.params.distortion,swirl:i=Vu.params.swirl,grainMixer:a=Vu.params.grainMixer,grainOverlay:o=Vu.params.grainOverlay,fit:s=Vu.params.fit,rotation:c=Vu.params.rotation,scale:l=Vu.params.scale,originX:u=Vu.params.originX,originY:d=Vu.params.originY,offsetX:f=Vu.params.offsetX,offsetY:p=Vu.params.offsetY,worldWidth:m=Vu.params.worldWidth,worldHeight:h=Vu.params.worldHeight,...g}){let _={u_colors:n.map(ku),u_colorsCount:n.length,u_distortion:r,u_swirl:i,u_grainMixer:a,u_grainOverlay:o,u_fit:Cu[s],u_rotation:c,u_scale:l,u_offsetX:f,u_offsetY:p,u_originX:u,u_originY:d,u_worldWidth:m,u_worldHeight:h};return(0,S.jsx)(zu,{...g,speed:e,frame:t,fragmentShader:Ou,uniforms:_})},Bu),Uu=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`}),Wu=`VisuallyHidden`,Gu=w.forwardRef((e,t)=>(0,S.jsx)(Jt.span,{...e,ref:t,style:{...Uu,...e.style}}));Gu.displayName=Wu;var Ku=Gu,[qu,Ju]=Nt(`Tooltip`,[aa]),Yu=aa(),Xu=`TooltipProvider`,Zu=700,Qu=`tooltip.open`,[$u,ed]=qu(Xu),td=e=>{let{__scopeTooltip:t,delayDuration:n=Zu,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=w.useRef(!0),s=w.useRef(!1),c=w.useRef(0);return w.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,S.jsx)($u,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:w.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:w.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:w.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};td.displayName=Xu;var nd=`Tooltip`,[rd,id]=qu(nd),ad=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=ed(nd,e.__scopeTooltip),l=Yu(t),[u,d]=w.useState(null),f=Fn(),p=w.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=w.useRef(!1),[_,v]=Lt({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(Qu))):c.onClose(),a?.(e)},caller:nd}),y=w.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=w.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=w.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),C=w.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return w.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,S.jsx)(xa,{...l,children:(0,S.jsx)(rd,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:w.useCallback(()=>{c.isOpenDelayedRef.current?C():b()},[c.isOpenDelayedRef,C,b]),onTriggerLeave:w.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};ad.displayName=nd;var od=`TooltipTrigger`,sd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=id(od,n),a=ed(od,n),o=Yu(n),s=D(t,w.useRef(null),i.onTriggerChange),c=w.useRef(!1),l=w.useRef(!1),u=w.useCallback(()=>c.current=!1,[]);return w.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,S.jsx)(Sa,{asChild:!0,...o,children:(0,S.jsx)(Jt.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:jt(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:jt(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:jt(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:jt(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:jt(e.onBlur,i.onClose),onClick:jt(e.onClick,i.onClose)})})});sd.displayName=od;var cd=`TooltipPortal`,[ld,ud]=qu(cd,{forceMount:void 0}),dd=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=id(cd,t);return(0,S.jsx)(ld,{scope:t,forceMount:n,children:(0,S.jsx)(Oa,{present:n||a.open,children:(0,S.jsx)(Ea,{asChild:!0,container:i,children:r})})})};dd.displayName=cd;var fd=`TooltipContent`,pd=w.forwardRef((e,t)=>{let n=ud(fd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=id(fd,e.__scopeTooltip);return(0,S.jsx)(Oa,{present:r||o.open,children:o.disableHoverableContent?(0,S.jsx)(vd,{side:i,...a,ref:t}):(0,S.jsx)(md,{side:i,...a,ref:t})})}),md=w.forwardRef((e,t)=>{let n=id(fd,e.__scopeTooltip),r=ed(fd,e.__scopeTooltip),i=w.useRef(null),a=D(t,i),[o,s]=w.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=w.useCallback(()=>{s(null),d(!1)},[d]),p=w.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=Sd(r,xd(r,n.getBoundingClientRect())),a=Cd(t.getBoundingClientRect());s(Td([...i,...a])),d(!0)},[d]);return w.useEffect(()=>()=>f(),[f]),w.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),w.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!wd(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,S.jsx)(vd,{...e,ref:a})}),[hd,gd]=qu(nd,{isInside:!1}),_d=Wt(`TooltipContent`),vd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=id(fd,n),l=Yu(n),{onClose:u}=c;return w.useEffect(()=>(document.addEventListener(Qu,u),()=>document.removeEventListener(Qu,u)),[u]),w.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,S.jsx)(cn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,S.jsxs)(Ca,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.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:[(0,S.jsx)(_d,{children:r}),(0,S.jsx)(hd,{scope:n,isInside:!0,children:(0,S.jsx)(Ku,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});pd.displayName=fd;var yd=`TooltipArrow`,bd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=Yu(n);return gd(yd,n).isInside?null:(0,S.jsx)(wa,{...i,...r,ref:t})});bd.displayName=yd;function xd(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function Sd(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function Cd(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function wd(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function Td(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),Ed(t)}function Ed(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}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 Dd=td,Od=ad,kd=sd,Ad=dd,jd=pd,Md=bd;function Nd({delayDuration:e=0,...t}){return(0,S.jsx)(Dd,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function Pd({...e}){return(0,S.jsx)(Nd,{children:(0,S.jsx)(Od,{"data-slot":`tooltip`,...e})})}function Fd({...e}){return(0,S.jsx)(kd,{"data-slot":`tooltip-trigger`,...e})}function Id({className:e,sideOffset:t=0,children:n,...r}){return(0,S.jsx)(Ad,{children:(0,S.jsxs)(jd,{"data-slot":`tooltip-content`,sideOffset:t,className:H(`bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance`,e),...r,children:[n,(0,S.jsx)(Md,{className:`bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]})})}var Ld=class{name=`mcp_inspector_open`;properties;constructor(e){this.properties={server_url:e.serverUrl,connection_count:e.connectionCount}}},Rd=class{name=`mcp_tool_execution`;properties;constructor(e){this.properties={tool_name:e.toolName,server_id:e.serverId,success:e.success,duration:e.duration,error:e.error}}},zd=class{name=`mcp_resource_read`;properties;constructor(e){this.properties={resource_uri:e.resourceUri,server_id:e.serverId,success:e.success,error:e.error}}},Bd=class{name=`mcp_prompt_call`;properties;constructor(e){this.properties={prompt_name:e.promptName,server_id:e.serverId,success:e.success,error:e.error}}},Vd=class{name=`mcp_server_connection`;properties;constructor(e){this.properties={server_id:e.serverId,server_url:e.serverUrl,success:e.success,connection_type:e.connectionType,error:e.error}}},Hd=class{name=`mcp_chat_message`;properties;constructor(e){this.properties={server_id:e.serverId,provider:e.provider,model:e.model,message_count:e.messageCount,tool_calls_count:e.toolCallsCount,success:e.success,execution_mode:e.executionMode,duration:e.duration,error:e.error}}},Ud=class{name=`mcp_server_added`;properties;constructor(e){this.properties={server_id:e.serverId,server_url:e.serverUrl,connection_type:e.connectionType,via_proxy:e.viaProxy}}},Wd=class{name=`mcp_server_removed`;properties;constructor(e){this.properties={server_id:e.serverId}}},Gd=class{name=`mcp_command_palette_open`;properties;constructor(e){this.properties={trigger:e.trigger}}},Kd=class{name=`mcp_tool_saved`;properties;constructor(e){this.properties={tool_name:e.toolName,server_id:e.serverId}}},qd=class{name=`mcp_tunnel_action`;properties;constructor(e){this.properties={action:e.action,success:e.success,tunnel_url:e.tunnelUrl}}},Jd=class{name=`mcp_deploy_click`;properties;constructor(e){this.properties={referrer:e.referrer}}},Yd=class{name=`mcp_chat_configured`;properties;constructor(e){this.properties={provider:e.provider,model:e.model}}},Xd=class{name=`mcp_tab_navigation`;properties;constructor(e){this.properties={tab:e.tab,previous_tab:e.previousTab}}},Zd=class{name=`mcp_add_to_client`;properties;constructor(e){this.properties={client:e.client}}},Qd=class{name=`mcp_session_duration`;properties;constructor(e){this.properties={duration_seconds:e.durationSeconds,tabs_visited:e.tabsVisited,tools_executed:e.toolsExecuted}}};function $d(){try{return`3.0.1-canary.0`}catch{return`0.0.0`}}function ef(){try{return typeof window<`u`&&typeof document<`u`}catch{return!1}}var tf=class{endpoint;timeout;constructor(e,t=3e3){this.endpoint=e,this.timeout=t}async logEvent(e){try{let t=new AbortController,n=setTimeout(()=>t.abort(),this.timeout),r=await fetch(this.endpoint,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:t.signal});if(clearTimeout(n),!r.ok)throw Error(`HTTP error! status: ${r.status}`)}catch{}}};function nf(e){return`mcp_inspector_telemetry_${e}`}function rf(){if(typeof window>`u`)return`standalone`;let e=window.__MCP_INSPECTOR_MODE__;return e===`standalone`||e===`embedded`||e===`cloud`?e:`standalone`}function af(){return typeof localStorage<`u`&&typeof localStorage.getItem==`function`&&typeof localStorage.setItem==`function`}var of=class e{static instance=null;POSTHOG_PROXY_URL=`/inspector/api/tel/posthog`;SCARF_PROXY_URL=`/inspector/api/tel/scarf`;UNKNOWN_USER_ID=`UNKNOWN_USER_ID`;_currUserId=null;_posthogClient=null;_scarfClient=null;_source=`inspector`;_mode=`standalone`;constructor(){let e=ef(),t=this.isTelemetryDisabled();if(this._source=this.getStoredSource()||`inspector`,this._mode=rf(),t)this._posthogClient=null,this._scarfClient=null;else if(!e)this._posthogClient=null,this._scarfClient=null;else{try{this._posthogClient=new tf(this.POSTHOG_PROXY_URL,3e3)}catch{this._posthogClient=null}try{this._scarfClient=new tf(this.SCARF_PROXY_URL,3e3)}catch{this._scarfClient=null}}}isTelemetryDisabled(){return!!(af()&&localStorage.getItem(nf(`disabled`))===`true`||typeof process<`u`&&{}?.MCP_USE_ANONYMIZED_TELEMETRY===`false`)}getStoredSource(){return af()?localStorage.getItem(nf(`source`)):null}static getInstance(){return e.instance||=new e,e.instance}setSource(e){this._source=e,af()&&localStorage.setItem(nf(`source`),e)}getSource(){return this._source}getMode(){return this._mode}get userId(){if(this._currUserId)return this._currUserId;if(!ef())return this._currUserId=this.UNKNOWN_USER_ID,this._currUserId;try{if(!af())throw Error(`localStorage is not available or not functional`);let e=localStorage.getItem(nf(`user_id`));if(e)this._currUserId=e;else{let e=this.generateUserId();localStorage.setItem(nf(`user_id`),e),this._currUserId=e}this.trackPackageDownload({triggered_by:`user_id_property`}).catch(()=>{})}catch{this._currUserId=this.UNKNOWN_USER_ID}return this._currUserId}generateUserId(){let e=window.crypto;if(e){let t=new Uint8Array(16);e.getRandomValues(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=Array.from(t).map(e=>e.toString(16).padStart(2,`0`)).join(``);return n.slice(0,8)+`-`+n.slice(8,12)+`-`+n.slice(12,16)+`-`+n.slice(16,20)+`-`+n.slice(20,32)}else return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===`x`?t:t&3|8).toString(16)})}async capture(e){if(!(!this._posthogClient&&!this._scarfClient)){if(this._posthogClient)try{let t={event:e.name,user_id:this.userId,properties:{...e.properties,mcp_use_version:$d(),language:`typescript`,source:this._source,package:`inspector`,mode:this._mode}};await this._posthogClient.logEvent(t)}catch{}if(this._scarfClient)try{let t={};t.mcp_use_version=$d(),t.user_id=this.userId,t.event=e.name,t.language=`typescript`,t.source=this._source,t.package=`inspector`,t.mode=this._mode,await this._scarfClient.logEvent(t)}catch{}}}async trackPackageDownload(e){if(this._scarfClient&&ef())try{if(!af())throw Error(`localStorage is not available or not functional`);let t=$d(),n=!1,r=!1,i=localStorage.getItem(nf(`download_version`));if(i?t>i&&(n=!0,r=!1,localStorage.setItem(nf(`download_version`),t)):(n=!0,r=!0,localStorage.setItem(nf(`download_version`),t)),n){let n={...e||{}};n.mcp_use_version=t,n.user_id=this.userId,n.event=`package_download`,n.first_download=r,n.language=`typescript`,n.source=this._source,n.package=`inspector`,n.mode=this._mode,await this._scarfClient.logEvent(n)}}catch{}}async trackInspectorOpen(e){let t=new Ld(e);await this.capture(t)}},sf=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),cf=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),lf=e=>{let t=cf(e);return t.charAt(0).toUpperCase()+t.slice(1)},uf=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),df=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0},ff={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`},pf=(0,w.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>(0,w.createElement)(`svg`,{ref:c,...ff,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:uf(`lucide`,i),...!a&&!df(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,w.createElement)(e,t)),...Array.isArray(a)?a:[a]])),mf=(e,t)=>{let n=(0,w.forwardRef)(({className:n,...r},i)=>(0,w.createElement)(pf,{ref:i,iconNode:t,className:uf(`lucide-${sf(lf(e))}`,`lucide-${e}`,n),...r}));return n.displayName=lf(e),n},hf=mf(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),gf=mf(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),_f=mf(`arrow-up-right`,[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]),vf=mf(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),yf=mf(`bell`,[[`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`}]]),bf=mf(`braces`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),xf=mf(`brush-cleaning`,[[`path`,{d:`m16 22-1-4`,key:`1ow2iv`}],[`path`,{d:`M19 14a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2h-3a1 1 0 0 1-1-1V4a2 2 0 0 0-4 0v5a1 1 0 0 1-1 1H6a2 2 0 0 0-2 2v1a1 1 0 0 0 1 1`,key:`11gii7`}],[`path`,{d:`M19 14H5l-1.973 6.767A1 1 0 0 0 4 22h16a1 1 0 0 0 .973-1.233z`,key:`bju7h4`}],[`path`,{d:`m8 22 1-4`,key:`s3unb`}]]),Sf=mf(`brush`,[[`path`,{d:`m11 10 3 3`,key:`fzmg1i`}],[`path`,{d:`M6.5 21A3.5 3.5 0 1 0 3 17.5a2.62 2.62 0 0 1-.708 1.792A1 1 0 0 0 3 21z`,key:`p4q2r7`}],[`path`,{d:`M9.969 17.031 21.378 5.624a1 1 0 0 0-3.002-3.002L6.967 14.031`,key:`wy6l02`}]]),Cf=mf(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]),wf=mf(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),Tf=mf(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),Ef=mf(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),Df=mf(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),Of=mf(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),kf=mf(`chevrons-left-right-ellipsis`,[[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`m17 7 5 5-5 5`,key:`1xlxn0`}],[`path`,{d:`m7 7-5 5 5 5`,key:`19njba`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}]]),Af=mf(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),jf=mf(`circle-alert`,[[`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`}]]),Mf=mf(`circle-minus`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}]]),Nf=mf(`clock`,[[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),Pf=mf(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]),Ff=mf(`cog`,[[`path`,{d:`M11 10.27 7 3.34`,key:`16pf9h`}],[`path`,{d:`m11 13.73-4 6.93`,key:`794ttg`}],[`path`,{d:`M12 22v-2`,key:`1osdcq`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M14 12h8`,key:`4f43i9`}],[`path`,{d:`m17 20.66-1-1.73`,key:`eq3orb`}],[`path`,{d:`m17 3.34-1 1.73`,key:`2wel8s`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`m20.66 17-1.73-1`,key:`sg0v6f`}],[`path`,{d:`m20.66 7-1.73 1`,key:`1ow05n`}],[`path`,{d:`m3.34 17 1.73-1`,key:`nuk764`}],[`path`,{d:`m3.34 7 1.73 1`,key:`1ulond`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`circle`,{cx:`12`,cy:`12`,r:`8`,key:`46899m`}]]),If=mf(`command`,[[`path`,{d:`M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3`,key:`11bfej`}]]),Lf=mf(`copy`,[[`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`}]]),Rf=mf(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),zf=mf(`download`,[[`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`}]]),Bf=mf(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),Vf=mf(`external-link`,[[`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`}]]),Hf=mf(`eye-off`,[[`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`}]]),Uf=mf(`eye`,[[`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`}]]),Wf=mf(`file-code`,[[`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 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Gf=mf(`file-image`,[[`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:`10`,cy:`12`,r:`2`,key:`737tya`}],[`path`,{d:`m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22`,key:`wt3hpn`}]]),Kf=mf(`file-text`,[[`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`}]]),qf=mf(`file`,[[`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`}]]),Jf=mf(`folder-open`,[[`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`}]]),Yf=mf(`globe`,[[`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`}]]),Xf=mf(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Zf=mf(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),Qf=mf(`history`,[[`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`}]]),$f=mf(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),ep=mf(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),tp=mf(`key`,[[`path`,{d:`m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4`,key:`g0fldk`}],[`path`,{d:`m21 2-9.6 9.6`,key:`1j0ho8`}],[`circle`,{cx:`7.5`,cy:`15.5`,r:`5.5`,key:`yqb3hr`}]]),np=mf(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),rp=mf(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),ip=mf(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),ap=mf(`maximize`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]),op=mf(`message-circle`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}]]),sp=mf(`message-square`,[[`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`}]]),cp=mf(`minimize`,[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`,key:`hohbtr`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`,key:`5jw1f3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`,key:`198tvr`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`,key:`ph8mxp`}]]),lp=mf(`monitor`,[[`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`}]]),up=mf(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),dp=mf(`mouse-pointer-2`,[[`path`,{d:`M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z`,key:`edeuup`}]]),fp=mf(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),pp=mf(`picture-in-picture`,[[`path`,{d:`M2 10h6V4`,key:`zwrco`}],[`path`,{d:`m2 4 6 6`,key:`ug085t`}],[`path`,{d:`M21 10V7a2 2 0 0 0-2-2h-7`,key:`git5jr`}],[`path`,{d:`M3 14v2a2 2 0 0 0 2 2h3`,key:`1f7fh3`}],[`rect`,{x:`12`,y:`14`,width:`10`,height:`7`,rx:`1`,key:`1wjs3o`}]]),mp=mf(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),hp=mf(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),gp=mf(`pointer`,[[`path`,{d:`M22 14a8 8 0 0 1-8 8`,key:`56vcr3`}],[`path`,{d:`M18 11v-1a2 2 0 0 0-2-2a2 2 0 0 0-2 2`,key:`1agjmk`}],[`path`,{d:`M14 10V9a2 2 0 0 0-2-2a2 2 0 0 0-2 2v1`,key:`wdbh2u`}],[`path`,{d:`M10 9.5V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v10`,key:`1ibuk9`}],[`path`,{d:`M18 11a2 2 0 1 1 4 0v3a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15`,key:`g6ys72`}]]),_p=mf(`refresh-cw`,[[`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`}]]),vp=mf(`rocket`,[[`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`}]]),yp=mf(`rotate-ccw`,[[`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`}]]),bp=mf(`save`,[[`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`}]]),xp=mf(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Sp=mf(`send`,[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]),Cp=mf(`server`,[[`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`}]]),wp=mf(`settings`,[[`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`}]]),Tp=mf(`shield-check`,[[`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`}]]),Ep=mf(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),Dp=mf(`shield`,[[`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`}]]),Op=mf(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),kp=mf(`sparkles`,[[`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`}]]),Ap=mf(`square-check-big`,[[`path`,{d:`M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344`,key:`2acyp4`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),jp=mf(`square-dashed-mouse-pointer`,[[`path`,{d:`M12.034 12.681a.498.498 0 0 1 .647-.647l9 3.5a.5.5 0 0 1-.033.943l-3.444 1.068a1 1 0 0 0-.66.66l-1.067 3.443a.5.5 0 0 1-.943.033z`,key:`xwnzip`}],[`path`,{d:`M5 3a2 2 0 0 0-2 2`,key:`y57alp`}],[`path`,{d:`M19 3a2 2 0 0 1 2 2`,key:`18rm91`}],[`path`,{d:`M5 21a2 2 0 0 1-2-2`,key:`sbafld`}],[`path`,{d:`M9 3h1`,key:`1yesri`}],[`path`,{d:`M9 21h2`,key:`1qve2z`}],[`path`,{d:`M14 3h1`,key:`1ec4yj`}],[`path`,{d:`M3 9v1`,key:`1r0deq`}],[`path`,{d:`M21 9v2`,key:`p14lih`}],[`path`,{d:`M3 14v1`,key:`vnatye`}]]),Mp=mf(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),Np=mf(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Pp=mf(`sun-dim`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 4h.01`,key:`1ujb9j`}],[`path`,{d:`M20 12h.01`,key:`1ykeid`}],[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M4 12h.01`,key:`158zrr`}],[`path`,{d:`M17.657 6.343h.01`,key:`31pqzk`}],[`path`,{d:`M17.657 17.657h.01`,key:`jehnf4`}],[`path`,{d:`M6.343 17.657h.01`,key:`gdk6ow`}],[`path`,{d:`M6.343 6.343h.01`,key:`1uurf0`}]]),Fp=mf(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Ip=mf(`tablet`,[[`rect`,{width:`16`,height:`20`,x:`4`,y:`2`,rx:`2`,ry:`2`,key:`76otgf`}],[`line`,{x1:`12`,x2:`12.01`,y1:`18`,y2:`18`,key:`1dp563`}]]),Lp=mf(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),Rp=mf(`trash-2`,[[`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`}]]),zp=mf(`trash`,[[`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`}]]),Bp=mf(`wrench`,[[`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`}]]),Vp=mf(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Hp=mf(`zap`,[[`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`}]]),Up=Object.freeze({status:`aborted`});function W(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var Wp=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Gp=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}},Kp={};function qp(e){return e&&Object.assign(Kp,e),Kp}function Jp(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Yp(e,t){return typeof t==`bigint`?t.toString():t}function Xp(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Zp(e){return e==null}function Qp(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function nee(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}var $p=Symbol(`evaluating`);function em(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==$p)return r===void 0&&(r=$p,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function tm(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function nm(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function rm(e){return JSON.stringify(e)}function ree(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var iee=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function im(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var aee=Xp(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function am(e){if(im(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(im(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function oee(e){return am(e)?{...e}:Array.isArray(e)?[...e]:e}var see=new Set([`string`,`number`,`symbol`]);function om(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function sm(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function cm(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw 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 cee(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var lee={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function uee(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return sm(e,nm(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return tm(this,`shape`,e),e},checks:[]}))}function dee(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return sm(e,nm(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return tm(this,`shape`,r),r},checks:[]}))}function fee(e,t){if(!am(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return tm(this,`shape`,n),n}}))}function pee(e,t){if(!am(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return tm(this,`shape`,n),n}}))}function mee(e,t){return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return tm(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function hee(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return sm(t,nm(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return tm(this,`shape`,i),i},checks:[]}))}function gee(e,t,n){return sm(t,nm(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return tm(this,`shape`,i),i}}))}function lm(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 um(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function dm(e){return typeof e==`string`?e:e?.message}function fm(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=dm(e.inst?._zod.def?.error?.(e))??dm(t?.error?.(e))??dm(n.customError?.(e))??dm(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function pm(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function mm(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var hm=(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,Yp,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},gm=W(`$ZodError`,hm),_m=W(`$ZodError`,hm,{Parent:Error});function _ee(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function vee(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}var vm=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Wp;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>fm(e,a,qp())));throw iee(t,i?.callee),t}return o.value},ym=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>fm(e,a,qp())));throw iee(t,i?.callee),t}return o.value},bm=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Wp;return a.issues.length?{success:!1,error:new(e??gm)(a.issues.map(e=>fm(e,i,qp())))}:{success:!0,data:a.value}},yee=bm(_m),xm=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>fm(e,i,qp())))}:{success:!0,data:a.value}},bee=xm(_m),xee=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return vm(e)(t,n,i)},See=e=>(t,n,r)=>vm(e)(t,n,r),Cee=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return ym(e)(t,n,i)},wee=e=>async(t,n,r)=>ym(e)(t,n,r),Tee=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return bm(e)(t,n,i)},Eee=e=>(t,n,r)=>bm(e)(t,n,r),Dee=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return xm(e)(t,n,i)},Oee=e=>async(t,n,r)=>xm(e)(t,n,r),kee=/^[cC][^\s-]{8,}$/,Aee=/^[0-9a-z]+$/,jee=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Mee=/^[0-9a-vA-V]{20}$/,Nee=/^[A-Za-z0-9]{27}$/,Pee=/^[a-zA-Z0-9_-]{21}$/,Fee=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Iee=/^([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})$/,Sm=e=>e?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)$/,Lee=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Ree=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function zee(){return new RegExp(Ree,`u`)}var Bee=/^(?:(?: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])$/,Vee=/^(([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}|:))$/,Hee=/^((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])$/,Uee=/^(([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])$/,Wee=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Cm=/^[A-Za-z0-9_-]*$/,Gee=/^\+[1-9]\d{6,14}$/,wm=`(?:(?:\\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])))`,Kee=RegExp(`^${wm}$`);function Tm(e){let 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 qee(e){return RegExp(`^${Tm(e)}$`)}function Jee(e){let t=Tm({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${wm}T(?:${r})$`)}var Yee=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Xee=/^-?\d+$/,Em=/^-?\d+(?:\.\d+)?$/,Zee=/^(?:true|false)$/i,Qee=/^null$/i,$ee=/^[^A-Z]*$/,ete=/^[^a-z]*$/,Dm=W(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Om={number:`number`,bigint:`bigint`,object:`date`},km=W(`$ZodCheckLessThan`,(e,t)=>{Dm.init(e,t);let n=Om[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Am=W(`$ZodCheckGreaterThan`,(e,t)=>{Dm.init(e,t);let n=Om[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),tte=W(`$ZodCheckMultipleOf`,(e,t)=>{Dm.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):nee(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})}}),nte=W(`$ZodCheckNumberFormat`,(e,t)=>{Dm.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=lee[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Xee)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),rte=W(`$ZodCheckMaxLength`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=pm(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ite=W(`$ZodCheckMinLength`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=pm(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ate=W(`$ZodCheckLengthEquals`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=pm(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),jm=W(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Dm.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ote=W(`$ZodCheckRegex`,(e,t)=>{jm.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})}}),ste=W(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=$ee,jm.init(e,t)}),cte=W(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=ete,jm.init(e,t)}),lte=W(`$ZodCheckIncludes`,(e,t)=>{Dm.init(e,t);let n=om(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),ute=W(`$ZodCheckStartsWith`,(e,t)=>{Dm.init(e,t);let n=RegExp(`^${om(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),dte=W(`$ZodCheckEndsWith`,(e,t)=>{Dm.init(e,t);let n=RegExp(`.*${om(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),fte=W(`$ZodCheckOverwrite`,(e,t)=>{Dm.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),pte=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
340
+ `;function ku(e){if(Array.isArray(e))return e.length===4?e:e.length===3?[...e,1]:Fu;if(typeof e!=`string`)return Fu;let t,n,r,i=1;if(e.startsWith(`#`))[t,n,r,i]=Au(e);else if(e.startsWith(`rgb`))[t,n,r,i]=ju(e);else if(e.startsWith(`hsl`))[t,n,r,i]=Nu(Mu(e));else return console.error(`Unsupported color format`,e),Fu;return[Pu(t,0,1),Pu(n,0,1),Pu(r,0,1),Pu(i,0,1)]}function Au(e){return e=e.replace(/^#/,``),e.length===3&&(e=e.split(``).map(e=>e+e).join(``)),e.length===6&&(e+=`ff`),[parseInt(e.slice(0,2),16)/255,parseInt(e.slice(2,4),16)/255,parseInt(e.slice(4,6),16)/255,parseInt(e.slice(6,8),16)/255]}function ju(e){let t=e.match(/^rgba?\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*([0-9.]+))?\s*\)$/i);return t?[parseInt(t[1]??`0`)/255,parseInt(t[2]??`0`)/255,parseInt(t[3]??`0`)/255,t[4]===void 0?1:parseFloat(t[4])]:[0,0,0,1]}function Mu(e){let t=e.match(/^hsla?\s*\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*(?:,\s*([0-9.]+))?\s*\)$/i);return t?[parseInt(t[1]??`0`),parseInt(t[2]??`0`),parseInt(t[3]??`0`),t[4]===void 0?1:parseFloat(t[4])]:[0,0,0,1]}function Nu(e){let[t,n,r,i]=e,a=t/360,o=n/100,s=r/100,c,l,u;if(n===0)c=l=u=s;else{let e=(e,t,n)=>(n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e),t=s<.5?s*(1+o):s+o-s*o,n=2*s-t;c=e(n,t,a+1/3),l=e(n,t,a),u=e(n,t,a-1/3)}return[c,l,u,i]}var Pu=(e,t,n)=>Math.min(Math.max(e,t),n),Fu=[0,0,0,1];function Iu(e){let t=w.useRef(void 0),n=w.useCallback(t=>{let n=e.map(e=>{if(e!=null){if(typeof e==`function`){let n=e,r=n(t);return typeof r==`function`?r:()=>{n(null)}}return e.current=t,()=>{e.current=null}}});return()=>{n.forEach(e=>e?.())}},e);return w.useMemo(()=>e.every(e=>e==null)?null:e=>{t.current&&=(t.current(),void 0),e!=null&&(t.current=n(e))},e)}function Lu(e){if(e.naturalWidth<1024&&e.naturalHeight<1024){if(e.naturalWidth<1||e.naturalHeight<1)return;let t=e.naturalWidth/e.naturalHeight;e.width=Math.round(t>1?1024*t:1024),e.height=Math.round(t>1?1024:1024/t)}}async function Ru(e){let t={},n=[],r=e=>{try{return e.startsWith(`/`)||new URL(e),!0}catch{return!1}},i=e=>{try{return e.startsWith(`/`)?!1:new URL(e,window.location.origin).origin!==window.location.origin}catch{return!1}};return Object.entries(e).forEach(([e,a])=>{if(typeof a==`string`){let o=a||`data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==`;if(!r(o)){console.warn(`Uniform "${e}" has invalid URL "${o}". Skipping image loading.`);return}let s=new Promise((n,r)=>{let a=new Image;i(o)&&(a.crossOrigin=`anonymous`),a.onload=()=>{Lu(a),t[e]=a,n()},a.onerror=()=>{console.error(`Could not set uniforms. Failed to load image at ${o}`),r()},a.src=o});n.push(s)}else a instanceof HTMLImageElement&&Lu(a),t[e]=a}),await Promise.all(n),t}var zu=(0,w.forwardRef)(function({fragmentShader:e,uniforms:t,webGlContextAttributes:n,speed:r=0,frame:i=0,width:a,height:o,minPixelRatio:s,maxPixelCount:c,mipmaps:l,style:u,...d},f){let[p,m]=(0,w.useState)(!1),h=(0,w.useRef)(null),g=(0,w.useRef)(null),_=(0,w.useRef)(n);return(0,w.useEffect)(()=>((async()=>{let n=await Ru(t);h.current&&!g.current&&(g.current=new gu(h.current,e,n,_.current,r,i,s,c,l),m(!0))})(),()=>{g.current?.dispose(),g.current=null}),[e]),(0,w.useEffect)(()=>{let e=!1;return(async()=>{let n=await Ru(t);e||g.current?.setUniforms(n)})(),()=>{e=!0}},[t,p]),(0,w.useEffect)(()=>{g.current?.setSpeed(r)},[r,p]),(0,w.useEffect)(()=>{g.current?.setMaxPixelCount(c)},[c,p]),(0,w.useEffect)(()=>{g.current?.setMinPixelRatio(s)},[s,p]),(0,w.useEffect)(()=>{g.current?.setFrame(i)},[i,p]),(0,S.jsx)(`div`,{ref:Iu([h,f]),style:a!==void 0||o!==void 0?{width:typeof a==`string`&&isNaN(+a)===!1?+a:a,height:typeof o==`string`&&isNaN(+o)===!1?+o:o,...u}:u,...d})});zu.displayName=`ShaderMount`;function Bu(e,t){for(let n in e){if(n===`colors`){let n=Array.isArray(e.colors),r=Array.isArray(t.colors);if(!n||!r){if(Object.is(e.colors,t.colors)===!1)return!1;continue}if(e.colors?.length!==t.colors?.length||!e.colors?.every((e,n)=>e===t.colors?.[n]))return!1;continue}if(Object.is(e[n],t[n])===!1)return!1}return!0}var Vu={name:`Default`,params:{...Su,speed:1,frame:0,colors:[`#e0eaff`,`#241d9a`,`#f75092`,`#9f50d3`],distortion:.8,swirl:.1,grainMixer:0,grainOverlay:0}};({...Su}),{...Su},{...Su};var Hu=(0,w.memo)(function({speed:e=Vu.params.speed,frame:t=Vu.params.frame,colors:n=Vu.params.colors,distortion:r=Vu.params.distortion,swirl:i=Vu.params.swirl,grainMixer:a=Vu.params.grainMixer,grainOverlay:o=Vu.params.grainOverlay,fit:s=Vu.params.fit,rotation:c=Vu.params.rotation,scale:l=Vu.params.scale,originX:u=Vu.params.originX,originY:d=Vu.params.originY,offsetX:f=Vu.params.offsetX,offsetY:p=Vu.params.offsetY,worldWidth:m=Vu.params.worldWidth,worldHeight:h=Vu.params.worldHeight,...g}){let _={u_colors:n.map(ku),u_colorsCount:n.length,u_distortion:r,u_swirl:i,u_grainMixer:a,u_grainOverlay:o,u_fit:Cu[s],u_rotation:c,u_scale:l,u_offsetX:f,u_offsetY:p,u_originX:u,u_originY:d,u_worldWidth:m,u_worldHeight:h};return(0,S.jsx)(zu,{...g,speed:e,frame:t,fragmentShader:Ou,uniforms:_})},Bu),Uu=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`}),Wu=`VisuallyHidden`,Gu=w.forwardRef((e,t)=>(0,S.jsx)(Jt.span,{...e,ref:t,style:{...Uu,...e.style}}));Gu.displayName=Wu;var Ku=Gu,[qu,Ju]=Nt(`Tooltip`,[aa]),Yu=aa(),Xu=`TooltipProvider`,Zu=700,Qu=`tooltip.open`,[$u,ed]=qu(Xu),td=e=>{let{__scopeTooltip:t,delayDuration:n=Zu,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=w.useRef(!0),s=w.useRef(!1),c=w.useRef(0);return w.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,S.jsx)($u,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:w.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:w.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:w.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};td.displayName=Xu;var nd=`Tooltip`,[rd,id]=qu(nd),ad=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=ed(nd,e.__scopeTooltip),l=Yu(t),[u,d]=w.useState(null),f=Fn(),p=w.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=w.useRef(!1),[_,v]=Lt({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(Qu))):c.onClose(),a?.(e)},caller:nd}),y=w.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=w.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=w.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),C=w.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return w.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,S.jsx)(xa,{...l,children:(0,S.jsx)(rd,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:w.useCallback(()=>{c.isOpenDelayedRef.current?C():b()},[c.isOpenDelayedRef,C,b]),onTriggerLeave:w.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};ad.displayName=nd;var od=`TooltipTrigger`,sd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=id(od,n),a=ed(od,n),o=Yu(n),s=D(t,w.useRef(null),i.onTriggerChange),c=w.useRef(!1),l=w.useRef(!1),u=w.useCallback(()=>c.current=!1,[]);return w.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,S.jsx)(Sa,{asChild:!0,...o,children:(0,S.jsx)(Jt.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:jt(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:jt(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:jt(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:jt(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:jt(e.onBlur,i.onClose),onClick:jt(e.onClick,i.onClose)})})});sd.displayName=od;var cd=`TooltipPortal`,[ld,ud]=qu(cd,{forceMount:void 0}),dd=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=id(cd,t);return(0,S.jsx)(ld,{scope:t,forceMount:n,children:(0,S.jsx)(Oa,{present:n||a.open,children:(0,S.jsx)(Ea,{asChild:!0,container:i,children:r})})})};dd.displayName=cd;var fd=`TooltipContent`,pd=w.forwardRef((e,t)=>{let n=ud(fd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=id(fd,e.__scopeTooltip);return(0,S.jsx)(Oa,{present:r||o.open,children:o.disableHoverableContent?(0,S.jsx)(vd,{side:i,...a,ref:t}):(0,S.jsx)(md,{side:i,...a,ref:t})})}),md=w.forwardRef((e,t)=>{let n=id(fd,e.__scopeTooltip),r=ed(fd,e.__scopeTooltip),i=w.useRef(null),a=D(t,i),[o,s]=w.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=w.useCallback(()=>{s(null),d(!1)},[d]),p=w.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=Sd(r,xd(r,n.getBoundingClientRect())),a=Cd(t.getBoundingClientRect());s(Td([...i,...a])),d(!0)},[d]);return w.useEffect(()=>()=>f(),[f]),w.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),w.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!wd(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,S.jsx)(vd,{...e,ref:a})}),[hd,gd]=qu(nd,{isInside:!1}),_d=Wt(`TooltipContent`),vd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=id(fd,n),l=Yu(n),{onClose:u}=c;return w.useEffect(()=>(document.addEventListener(Qu,u),()=>document.removeEventListener(Qu,u)),[u]),w.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,S.jsx)(cn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,S.jsxs)(Ca,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.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:[(0,S.jsx)(_d,{children:r}),(0,S.jsx)(hd,{scope:n,isInside:!0,children:(0,S.jsx)(Ku,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});pd.displayName=fd;var yd=`TooltipArrow`,bd=w.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=Yu(n);return gd(yd,n).isInside?null:(0,S.jsx)(wa,{...i,...r,ref:t})});bd.displayName=yd;function xd(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function Sd(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function Cd(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function wd(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function Td(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),Ed(t)}function Ed(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}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 Dd=td,Od=ad,kd=sd,Ad=dd,jd=pd,Md=bd;function Nd({delayDuration:e=0,...t}){return(0,S.jsx)(Dd,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function Pd({...e}){return(0,S.jsx)(Nd,{children:(0,S.jsx)(Od,{"data-slot":`tooltip`,...e})})}function Fd({...e}){return(0,S.jsx)(kd,{"data-slot":`tooltip-trigger`,...e})}function Id({className:e,sideOffset:t=0,children:n,...r}){return(0,S.jsx)(Ad,{children:(0,S.jsxs)(jd,{"data-slot":`tooltip-content`,sideOffset:t,className:H(`bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance`,e),...r,children:[n,(0,S.jsx)(Md,{className:`bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]})})}var Ld=class{name=`mcp_inspector_open`;properties;constructor(e){this.properties={server_url:e.serverUrl,connection_count:e.connectionCount}}},Rd=class{name=`mcp_tool_execution`;properties;constructor(e){this.properties={tool_name:e.toolName,server_id:e.serverId,success:e.success,duration:e.duration,error:e.error}}},zd=class{name=`mcp_resource_read`;properties;constructor(e){this.properties={resource_uri:e.resourceUri,server_id:e.serverId,success:e.success,error:e.error}}},Bd=class{name=`mcp_prompt_call`;properties;constructor(e){this.properties={prompt_name:e.promptName,server_id:e.serverId,success:e.success,error:e.error}}},Vd=class{name=`mcp_server_connection`;properties;constructor(e){this.properties={server_id:e.serverId,server_url:e.serverUrl,success:e.success,connection_type:e.connectionType,error:e.error}}},Hd=class{name=`mcp_chat_message`;properties;constructor(e){this.properties={server_id:e.serverId,provider:e.provider,model:e.model,message_count:e.messageCount,tool_calls_count:e.toolCallsCount,success:e.success,execution_mode:e.executionMode,duration:e.duration,error:e.error}}},Ud=class{name=`mcp_server_added`;properties;constructor(e){this.properties={server_id:e.serverId,server_url:e.serverUrl,connection_type:e.connectionType,via_proxy:e.viaProxy}}},Wd=class{name=`mcp_server_removed`;properties;constructor(e){this.properties={server_id:e.serverId}}},Gd=class{name=`mcp_command_palette_open`;properties;constructor(e){this.properties={trigger:e.trigger}}},Kd=class{name=`mcp_tool_saved`;properties;constructor(e){this.properties={tool_name:e.toolName,server_id:e.serverId}}},qd=class{name=`mcp_tunnel_action`;properties;constructor(e){this.properties={action:e.action,success:e.success,tunnel_url:e.tunnelUrl}}},Jd=class{name=`mcp_deploy_click`;properties;constructor(e){this.properties={referrer:e.referrer}}},Yd=class{name=`mcp_chat_configured`;properties;constructor(e){this.properties={provider:e.provider,model:e.model}}},Xd=class{name=`mcp_tab_navigation`;properties;constructor(e){this.properties={tab:e.tab,previous_tab:e.previousTab}}},Zd=class{name=`mcp_add_to_client`;properties;constructor(e){this.properties={client:e.client}}},Qd=class{name=`mcp_session_duration`;properties;constructor(e){this.properties={duration_seconds:e.durationSeconds,tabs_visited:e.tabsVisited,tools_executed:e.toolsExecuted}}};function $d(){try{return`3.0.1-canary.2`}catch{return`0.0.0`}}function ef(){try{return typeof window<`u`&&typeof document<`u`}catch{return!1}}var tf=class{endpoint;timeout;constructor(e,t=3e3){this.endpoint=e,this.timeout=t}async logEvent(e){try{let t=new AbortController,n=setTimeout(()=>t.abort(),this.timeout),r=await fetch(this.endpoint,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:t.signal});if(clearTimeout(n),!r.ok)throw Error(`HTTP error! status: ${r.status}`)}catch{}}};function nf(e){return`mcp_inspector_telemetry_${e}`}function rf(){if(typeof window>`u`)return`standalone`;let e=window.__MCP_INSPECTOR_MODE__;return e===`standalone`||e===`embedded`||e===`cloud`?e:`standalone`}function af(){return typeof localStorage<`u`&&typeof localStorage.getItem==`function`&&typeof localStorage.setItem==`function`}var of=class e{static instance=null;POSTHOG_PROXY_URL=`/inspector/api/tel/posthog`;SCARF_PROXY_URL=`/inspector/api/tel/scarf`;UNKNOWN_USER_ID=`UNKNOWN_USER_ID`;_currUserId=null;_posthogClient=null;_scarfClient=null;_source=`inspector`;_mode=`standalone`;constructor(){let e=ef(),t=this.isTelemetryDisabled();if(this._source=this.getStoredSource()||`inspector`,this._mode=rf(),t)this._posthogClient=null,this._scarfClient=null;else if(!e)this._posthogClient=null,this._scarfClient=null;else{try{this._posthogClient=new tf(this.POSTHOG_PROXY_URL,3e3)}catch{this._posthogClient=null}try{this._scarfClient=new tf(this.SCARF_PROXY_URL,3e3)}catch{this._scarfClient=null}}}isTelemetryDisabled(){return!!(af()&&localStorage.getItem(nf(`disabled`))===`true`||typeof process<`u`&&{}?.MCP_USE_ANONYMIZED_TELEMETRY===`false`)}getStoredSource(){return af()?localStorage.getItem(nf(`source`)):null}static getInstance(){return e.instance||=new e,e.instance}setSource(e){this._source=e,af()&&localStorage.setItem(nf(`source`),e)}getSource(){return this._source}getMode(){return this._mode}get userId(){if(this._currUserId)return this._currUserId;if(!ef())return this._currUserId=this.UNKNOWN_USER_ID,this._currUserId;try{if(!af())throw Error(`localStorage is not available or not functional`);let e=localStorage.getItem(nf(`user_id`));if(e)this._currUserId=e;else{let e=this.generateUserId();localStorage.setItem(nf(`user_id`),e),this._currUserId=e}this.trackPackageDownload({triggered_by:`user_id_property`}).catch(()=>{})}catch{this._currUserId=this.UNKNOWN_USER_ID}return this._currUserId}generateUserId(){let e=window.crypto;if(e){let t=new Uint8Array(16);e.getRandomValues(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=Array.from(t).map(e=>e.toString(16).padStart(2,`0`)).join(``);return n.slice(0,8)+`-`+n.slice(8,12)+`-`+n.slice(12,16)+`-`+n.slice(16,20)+`-`+n.slice(20,32)}else return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===`x`?t:t&3|8).toString(16)})}async capture(e){if(!(!this._posthogClient&&!this._scarfClient)){if(this._posthogClient)try{let t={event:e.name,user_id:this.userId,properties:{...e.properties,mcp_use_version:$d(),language:`typescript`,source:this._source,package:`inspector`,mode:this._mode}};await this._posthogClient.logEvent(t)}catch{}if(this._scarfClient)try{let t={};t.mcp_use_version=$d(),t.user_id=this.userId,t.event=e.name,t.language=`typescript`,t.source=this._source,t.package=`inspector`,t.mode=this._mode,await this._scarfClient.logEvent(t)}catch{}}}async trackPackageDownload(e){if(this._scarfClient&&ef())try{if(!af())throw Error(`localStorage is not available or not functional`);let t=$d(),n=!1,r=!1,i=localStorage.getItem(nf(`download_version`));if(i?t>i&&(n=!0,r=!1,localStorage.setItem(nf(`download_version`),t)):(n=!0,r=!0,localStorage.setItem(nf(`download_version`),t)),n){let n={...e||{}};n.mcp_use_version=t,n.user_id=this.userId,n.event=`package_download`,n.first_download=r,n.language=`typescript`,n.source=this._source,n.package=`inspector`,n.mode=this._mode,await this._scarfClient.logEvent(n)}}catch{}}async trackInspectorOpen(e){let t=new Ld(e);await this.capture(t)}},sf=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),cf=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),lf=e=>{let t=cf(e);return t.charAt(0).toUpperCase()+t.slice(1)},uf=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),df=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0},ff={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`},pf=(0,w.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>(0,w.createElement)(`svg`,{ref:c,...ff,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:uf(`lucide`,i),...!a&&!df(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,w.createElement)(e,t)),...Array.isArray(a)?a:[a]])),mf=(e,t)=>{let n=(0,w.forwardRef)(({className:n,...r},i)=>(0,w.createElement)(pf,{ref:i,iconNode:t,className:uf(`lucide-${sf(lf(e))}`,`lucide-${e}`,n),...r}));return n.displayName=lf(e),n},hf=mf(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),gf=mf(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),_f=mf(`arrow-up-right`,[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]),vf=mf(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),yf=mf(`bell`,[[`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`}]]),bf=mf(`braces`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),xf=mf(`brush-cleaning`,[[`path`,{d:`m16 22-1-4`,key:`1ow2iv`}],[`path`,{d:`M19 14a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2h-3a1 1 0 0 1-1-1V4a2 2 0 0 0-4 0v5a1 1 0 0 1-1 1H6a2 2 0 0 0-2 2v1a1 1 0 0 0 1 1`,key:`11gii7`}],[`path`,{d:`M19 14H5l-1.973 6.767A1 1 0 0 0 4 22h16a1 1 0 0 0 .973-1.233z`,key:`bju7h4`}],[`path`,{d:`m8 22 1-4`,key:`s3unb`}]]),Sf=mf(`brush`,[[`path`,{d:`m11 10 3 3`,key:`fzmg1i`}],[`path`,{d:`M6.5 21A3.5 3.5 0 1 0 3 17.5a2.62 2.62 0 0 1-.708 1.792A1 1 0 0 0 3 21z`,key:`p4q2r7`}],[`path`,{d:`M9.969 17.031 21.378 5.624a1 1 0 0 0-3.002-3.002L6.967 14.031`,key:`wy6l02`}]]),Cf=mf(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]),wf=mf(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),Tf=mf(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),Ef=mf(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),Df=mf(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),Of=mf(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),kf=mf(`chevrons-left-right-ellipsis`,[[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`m17 7 5 5-5 5`,key:`1xlxn0`}],[`path`,{d:`m7 7-5 5 5 5`,key:`19njba`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}]]),Af=mf(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),jf=mf(`circle-alert`,[[`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`}]]),Mf=mf(`circle-minus`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}]]),Nf=mf(`clock`,[[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),Pf=mf(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]),Ff=mf(`cog`,[[`path`,{d:`M11 10.27 7 3.34`,key:`16pf9h`}],[`path`,{d:`m11 13.73-4 6.93`,key:`794ttg`}],[`path`,{d:`M12 22v-2`,key:`1osdcq`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M14 12h8`,key:`4f43i9`}],[`path`,{d:`m17 20.66-1-1.73`,key:`eq3orb`}],[`path`,{d:`m17 3.34-1 1.73`,key:`2wel8s`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`m20.66 17-1.73-1`,key:`sg0v6f`}],[`path`,{d:`m20.66 7-1.73 1`,key:`1ow05n`}],[`path`,{d:`m3.34 17 1.73-1`,key:`nuk764`}],[`path`,{d:`m3.34 7 1.73 1`,key:`1ulond`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`circle`,{cx:`12`,cy:`12`,r:`8`,key:`46899m`}]]),If=mf(`command`,[[`path`,{d:`M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3`,key:`11bfej`}]]),Lf=mf(`copy`,[[`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`}]]),Rf=mf(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),zf=mf(`download`,[[`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`}]]),Bf=mf(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),Vf=mf(`external-link`,[[`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`}]]),Hf=mf(`eye-off`,[[`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`}]]),Uf=mf(`eye`,[[`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`}]]),Wf=mf(`file-code`,[[`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 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Gf=mf(`file-image`,[[`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:`10`,cy:`12`,r:`2`,key:`737tya`}],[`path`,{d:`m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22`,key:`wt3hpn`}]]),Kf=mf(`file-text`,[[`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`}]]),qf=mf(`file`,[[`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`}]]),Jf=mf(`folder-open`,[[`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`}]]),Yf=mf(`globe`,[[`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`}]]),Xf=mf(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Zf=mf(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),Qf=mf(`history`,[[`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`}]]),$f=mf(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),ep=mf(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),tp=mf(`key`,[[`path`,{d:`m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4`,key:`g0fldk`}],[`path`,{d:`m21 2-9.6 9.6`,key:`1j0ho8`}],[`circle`,{cx:`7.5`,cy:`15.5`,r:`5.5`,key:`yqb3hr`}]]),np=mf(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),rp=mf(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),ip=mf(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),ap=mf(`maximize`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]),op=mf(`message-circle`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}]]),sp=mf(`message-square`,[[`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`}]]),cp=mf(`minimize`,[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`,key:`hohbtr`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`,key:`5jw1f3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`,key:`198tvr`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`,key:`ph8mxp`}]]),lp=mf(`monitor`,[[`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`}]]),up=mf(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),dp=mf(`mouse-pointer-2`,[[`path`,{d:`M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z`,key:`edeuup`}]]),fp=mf(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),pp=mf(`picture-in-picture`,[[`path`,{d:`M2 10h6V4`,key:`zwrco`}],[`path`,{d:`m2 4 6 6`,key:`ug085t`}],[`path`,{d:`M21 10V7a2 2 0 0 0-2-2h-7`,key:`git5jr`}],[`path`,{d:`M3 14v2a2 2 0 0 0 2 2h3`,key:`1f7fh3`}],[`rect`,{x:`12`,y:`14`,width:`10`,height:`7`,rx:`1`,key:`1wjs3o`}]]),mp=mf(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),hp=mf(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),gp=mf(`pointer`,[[`path`,{d:`M22 14a8 8 0 0 1-8 8`,key:`56vcr3`}],[`path`,{d:`M18 11v-1a2 2 0 0 0-2-2a2 2 0 0 0-2 2`,key:`1agjmk`}],[`path`,{d:`M14 10V9a2 2 0 0 0-2-2a2 2 0 0 0-2 2v1`,key:`wdbh2u`}],[`path`,{d:`M10 9.5V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v10`,key:`1ibuk9`}],[`path`,{d:`M18 11a2 2 0 1 1 4 0v3a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15`,key:`g6ys72`}]]),_p=mf(`refresh-cw`,[[`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`}]]),vp=mf(`rocket`,[[`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`}]]),yp=mf(`rotate-ccw`,[[`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`}]]),bp=mf(`save`,[[`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`}]]),xp=mf(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Sp=mf(`send`,[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]),Cp=mf(`server`,[[`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`}]]),wp=mf(`settings`,[[`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`}]]),Tp=mf(`shield-check`,[[`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`}]]),Ep=mf(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),Dp=mf(`shield`,[[`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`}]]),Op=mf(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),kp=mf(`sparkles`,[[`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`}]]),Ap=mf(`square-check-big`,[[`path`,{d:`M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344`,key:`2acyp4`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),jp=mf(`square-dashed-mouse-pointer`,[[`path`,{d:`M12.034 12.681a.498.498 0 0 1 .647-.647l9 3.5a.5.5 0 0 1-.033.943l-3.444 1.068a1 1 0 0 0-.66.66l-1.067 3.443a.5.5 0 0 1-.943.033z`,key:`xwnzip`}],[`path`,{d:`M5 3a2 2 0 0 0-2 2`,key:`y57alp`}],[`path`,{d:`M19 3a2 2 0 0 1 2 2`,key:`18rm91`}],[`path`,{d:`M5 21a2 2 0 0 1-2-2`,key:`sbafld`}],[`path`,{d:`M9 3h1`,key:`1yesri`}],[`path`,{d:`M9 21h2`,key:`1qve2z`}],[`path`,{d:`M14 3h1`,key:`1ec4yj`}],[`path`,{d:`M3 9v1`,key:`1r0deq`}],[`path`,{d:`M21 9v2`,key:`p14lih`}],[`path`,{d:`M3 14v1`,key:`vnatye`}]]),Mp=mf(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),Np=mf(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Pp=mf(`sun-dim`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 4h.01`,key:`1ujb9j`}],[`path`,{d:`M20 12h.01`,key:`1ykeid`}],[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M4 12h.01`,key:`158zrr`}],[`path`,{d:`M17.657 6.343h.01`,key:`31pqzk`}],[`path`,{d:`M17.657 17.657h.01`,key:`jehnf4`}],[`path`,{d:`M6.343 17.657h.01`,key:`gdk6ow`}],[`path`,{d:`M6.343 6.343h.01`,key:`1uurf0`}]]),Fp=mf(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Ip=mf(`tablet`,[[`rect`,{width:`16`,height:`20`,x:`4`,y:`2`,rx:`2`,ry:`2`,key:`76otgf`}],[`line`,{x1:`12`,x2:`12.01`,y1:`18`,y2:`18`,key:`1dp563`}]]),Lp=mf(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),Rp=mf(`trash-2`,[[`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`}]]),zp=mf(`trash`,[[`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`}]]),Bp=mf(`wrench`,[[`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`}]]),Vp=mf(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Hp=mf(`zap`,[[`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`}]]),Up=Object.freeze({status:`aborted`});function W(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var Wp=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Gp=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}},Kp={};function qp(e){return e&&Object.assign(Kp,e),Kp}function Jp(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Yp(e,t){return typeof t==`bigint`?t.toString():t}function Xp(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Zp(e){return e==null}function Qp(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function nee(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}var $p=Symbol(`evaluating`);function em(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==$p)return r===void 0&&(r=$p,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function tm(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function nm(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function rm(e){return JSON.stringify(e)}function ree(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var iee=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function im(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var aee=Xp(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function am(e){if(im(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(im(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function oee(e){return am(e)?{...e}:Array.isArray(e)?[...e]:e}var see=new Set([`string`,`number`,`symbol`]);function om(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function sm(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function cm(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw 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 cee(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var lee={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function uee(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return sm(e,nm(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return tm(this,`shape`,e),e},checks:[]}))}function dee(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return sm(e,nm(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return tm(this,`shape`,r),r},checks:[]}))}function fee(e,t){if(!am(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return tm(this,`shape`,n),n}}))}function pee(e,t){if(!am(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return tm(this,`shape`,n),n}}))}function mee(e,t){return sm(e,nm(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return tm(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function hee(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return sm(t,nm(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return tm(this,`shape`,i),i},checks:[]}))}function gee(e,t,n){return sm(t,nm(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return tm(this,`shape`,i),i}}))}function lm(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 um(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function dm(e){return typeof e==`string`?e:e?.message}function fm(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=dm(e.inst?._zod.def?.error?.(e))??dm(t?.error?.(e))??dm(n.customError?.(e))??dm(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function pm(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function mm(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var hm=(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,Yp,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},gm=W(`$ZodError`,hm),_m=W(`$ZodError`,hm,{Parent:Error});function _ee(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function vee(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}var vm=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Wp;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>fm(e,a,qp())));throw iee(t,i?.callee),t}return o.value},ym=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>fm(e,a,qp())));throw iee(t,i?.callee),t}return o.value},bm=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Wp;return a.issues.length?{success:!1,error:new(e??gm)(a.issues.map(e=>fm(e,i,qp())))}:{success:!0,data:a.value}},yee=bm(_m),xm=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>fm(e,i,qp())))}:{success:!0,data:a.value}},bee=xm(_m),xee=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return vm(e)(t,n,i)},See=e=>(t,n,r)=>vm(e)(t,n,r),Cee=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return ym(e)(t,n,i)},wee=e=>async(t,n,r)=>ym(e)(t,n,r),Tee=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return bm(e)(t,n,i)},Eee=e=>(t,n,r)=>bm(e)(t,n,r),Dee=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return xm(e)(t,n,i)},Oee=e=>async(t,n,r)=>xm(e)(t,n,r),kee=/^[cC][^\s-]{8,}$/,Aee=/^[0-9a-z]+$/,jee=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Mee=/^[0-9a-vA-V]{20}$/,Nee=/^[A-Za-z0-9]{27}$/,Pee=/^[a-zA-Z0-9_-]{21}$/,Fee=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Iee=/^([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})$/,Sm=e=>e?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)$/,Lee=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Ree=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function zee(){return new RegExp(Ree,`u`)}var Bee=/^(?:(?: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])$/,Vee=/^(([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}|:))$/,Hee=/^((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])$/,Uee=/^(([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])$/,Wee=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Cm=/^[A-Za-z0-9_-]*$/,Gee=/^\+[1-9]\d{6,14}$/,wm=`(?:(?:\\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])))`,Kee=RegExp(`^${wm}$`);function Tm(e){let 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 qee(e){return RegExp(`^${Tm(e)}$`)}function Jee(e){let t=Tm({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${wm}T(?:${r})$`)}var Yee=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Xee=/^-?\d+$/,Em=/^-?\d+(?:\.\d+)?$/,Zee=/^(?:true|false)$/i,Qee=/^null$/i,$ee=/^[^A-Z]*$/,ete=/^[^a-z]*$/,Dm=W(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Om={number:`number`,bigint:`bigint`,object:`date`},km=W(`$ZodCheckLessThan`,(e,t)=>{Dm.init(e,t);let n=Om[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Am=W(`$ZodCheckGreaterThan`,(e,t)=>{Dm.init(e,t);let n=Om[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),tte=W(`$ZodCheckMultipleOf`,(e,t)=>{Dm.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):nee(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})}}),nte=W(`$ZodCheckNumberFormat`,(e,t)=>{Dm.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=lee[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Xee)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),rte=W(`$ZodCheckMaxLength`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=pm(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ite=W(`$ZodCheckMinLength`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=pm(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ate=W(`$ZodCheckLengthEquals`,(e,t)=>{var n;Dm.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Zp(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=pm(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),jm=W(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Dm.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ote=W(`$ZodCheckRegex`,(e,t)=>{jm.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})}}),ste=W(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=$ee,jm.init(e,t)}),cte=W(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=ete,jm.init(e,t)}),lte=W(`$ZodCheckIncludes`,(e,t)=>{Dm.init(e,t);let n=om(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),ute=W(`$ZodCheckStartsWith`,(e,t)=>{Dm.init(e,t);let n=RegExp(`^${om(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),dte=W(`$ZodCheckEndsWith`,(e,t)=>{Dm.init(e,t);let n=RegExp(`.*${om(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),fte=W(`$ZodCheckOverwrite`,(e,t)=>{Dm.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),pte=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
341
341
  `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
342
342
  `))}},mte={major:4,minor:3,patch:5},Mm=W(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=mte;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=lm(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Wp;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=lm(e,t))});else{if(e.issues.length===t)continue;r||=lm(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(lm(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Wp;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Wp;return o.then(e=>t(e,r,a))}return t(o,r,a)}}em(e,`~standard`,()=>({validate:t=>{try{let n=yee(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return bee(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Nm=W(`$ZodString`,(e,t)=>{Mm.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Yee(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),Pm=W(`$ZodStringFormat`,(e,t)=>{jm.init(e,t),Nm.init(e,t)}),hte=W(`$ZodGUID`,(e,t)=>{t.pattern??=Iee,Pm.init(e,t)}),gte=W(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Sm(e)}else t.pattern??=Sm();Pm.init(e,t)}),_te=W(`$ZodEmail`,(e,t)=>{t.pattern??=Lee,Pm.init(e,t)}),vte=W(`$ZodURL`,(e,t)=>{Pm.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.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(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.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=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),yte=W(`$ZodEmoji`,(e,t)=>{t.pattern??=zee(),Pm.init(e,t)}),bte=W(`$ZodNanoID`,(e,t)=>{t.pattern??=Pee,Pm.init(e,t)}),xte=W(`$ZodCUID`,(e,t)=>{t.pattern??=kee,Pm.init(e,t)}),Ste=W(`$ZodCUID2`,(e,t)=>{t.pattern??=Aee,Pm.init(e,t)}),Cte=W(`$ZodULID`,(e,t)=>{t.pattern??=jee,Pm.init(e,t)}),wte=W(`$ZodXID`,(e,t)=>{t.pattern??=Mee,Pm.init(e,t)}),Tte=W(`$ZodKSUID`,(e,t)=>{t.pattern??=Nee,Pm.init(e,t)}),Ete=W(`$ZodISODateTime`,(e,t)=>{t.pattern??=Jee(t),Pm.init(e,t)}),Dte=W(`$ZodISODate`,(e,t)=>{t.pattern??=Kee,Pm.init(e,t)}),Ote=W(`$ZodISOTime`,(e,t)=>{t.pattern??=qee(t),Pm.init(e,t)}),kte=W(`$ZodISODuration`,(e,t)=>{t.pattern??=Fee,Pm.init(e,t)}),Ate=W(`$ZodIPv4`,(e,t)=>{t.pattern??=Bee,Pm.init(e,t),e._zod.bag.format=`ipv4`}),jte=W(`$ZodIPv6`,(e,t)=>{t.pattern??=Vee,Pm.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})}}}),Mte=W(`$ZodCIDRv4`,(e,t)=>{t.pattern??=Hee,Pm.init(e,t)}),Nte=W(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Uee,Pm.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Fm(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Pte=W(`$ZodBase64`,(e,t)=>{t.pattern??=Wee,Pm.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Fm(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Fte(e){if(!Cm.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Fm(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Ite=W(`$ZodBase64URL`,(e,t)=>{t.pattern??=Cm,Pm.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Fte(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Lte=W(`$ZodE164`,(e,t)=>{t.pattern??=Gee,Pm.init(e,t)});function Rte(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var zte=W(`$ZodJWT`,(e,t)=>{Pm.init(e,t),e._zod.check=n=>{Rte(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Im=W(`$ZodNumber`,(e,t)=>{Mm.init(e,t),e._zod.pattern=e._zod.bag.pattern??Em,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Bte=W(`$ZodNumberFormat`,(e,t)=>{nte.init(e,t),Im.init(e,t)}),Vte=W(`$ZodBoolean`,(e,t)=>{Mm.init(e,t),e._zod.pattern=Zee,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Hte=W(`$ZodNull`,(e,t)=>{Mm.init(e,t),e._zod.pattern=Qee,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Ute=W(`$ZodAny`,(e,t)=>{Mm.init(e,t),e._zod.parse=e=>e}),Wte=W(`$ZodUnknown`,(e,t)=>{Mm.init(e,t),e._zod.parse=e=>e}),Gte=W(`$ZodNever`,(e,t)=>{Mm.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Lm(e,t,n){e.issues.length&&t.issues.push(...um(n,e.issues)),t.value[n]=e.value}var Kte=W(`$ZodArray`,(e,t)=>{Mm.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Lm(t,n,e))):Lm(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Rm(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...um(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function zm(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=cee(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Bm(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Rm(e,n,i,t,u))):Rm(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var qte=W(`$ZodObject`,(e,t)=>{if(Mm.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Xp(()=>zm(t));em(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=im,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>Rm(n,t,e,s,r))):Rm(i,t,e,s,r)}return i?Bm(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),Jte=W(`$ZodObjectJIT`,(e,t)=>{qte.init(e,t);let n=e._zod.parse,r=Xp(()=>zm(t)),i=e=>{let t=new pte([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=rm(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=rm(r),s=e[r]?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),s?t.write(`
343
343
  if (${n}.issues.length) {
@@ -435,7 +435,7 @@ Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Rec
435
435
  for compatibility with Zod schema generation. Both are functionally equivalent for validation.`);K.object({method:K.literal(`ui/open-link`),params:K.object({url:K.string().describe(`URL to open in the host's browser`)})}),K.object({isError:K.boolean().optional().describe(`True if the host failed to open the URL (e.g., due to security policy).`)}).passthrough(),K.object({isError:K.boolean().optional().describe(`True if the host rejected or failed to deliver the message.`)}).passthrough(),K.object({method:K.literal(`ui/notifications/sandbox-proxy-ready`),params:K.object({})});var lO=K.object({connectDomains:K.array(K.string()).optional().describe(`Origins for network requests (fetch/XHR/WebSocket).`),resourceDomains:K.array(K.string()).optional().describe(`Origins for static resources (scripts, images, styles, fonts).`),frameDomains:K.array(K.string()).optional().describe(`Origins for nested iframes (frame-src directive).`),baseUriDomains:K.array(K.string()).optional().describe(`Allowed base URIs for the document (base-uri directive).`)}),uO=K.object({camera:K.object({}).optional().describe("Request camera access (Permission Policy `camera` feature)."),microphone:K.object({}).optional().describe("Request microphone access (Permission Policy `microphone` feature)."),geolocation:K.object({}).optional().describe("Request geolocation access (Permission Policy `geolocation` feature)."),clipboardWrite:K.object({}).optional().describe("Request clipboard write access (Permission Policy `clipboard-write` feature).")});K.object({method:K.literal(`ui/notifications/size-changed`),params:K.object({width:K.number().optional().describe(`New width in pixels.`),height:K.number().optional().describe(`New height in pixels.`)})}),K.object({method:K.literal(`ui/notifications/tool-input`),params:K.object({arguments:K.record(K.string(),K.unknown().describe(`Complete tool call arguments as key-value pairs.`)).optional().describe(`Complete tool call arguments as key-value pairs.`)})}),K.object({method:K.literal(`ui/notifications/tool-input-partial`),params:K.object({arguments:K.record(K.string(),K.unknown().describe(`Partial tool call arguments (incomplete, may change).`)).optional().describe(`Partial tool call arguments (incomplete, may change).`)})}),K.object({method:K.literal(`ui/notifications/tool-cancelled`),params:K.object({reason:K.string().optional().describe(`Optional reason for the cancellation (e.g., "user action", "timeout").`)})});var Xle=K.object({fonts:K.string().optional()}),Zle=K.object({variables:Yle.optional().describe(`CSS variables for theming the app.`),css:Xle.optional().describe(`CSS blocks that apps can inject.`)});K.object({method:K.literal(`ui/resource-teardown`),params:K.object({})}),K.record(K.string(),K.unknown());var dO=K.object({text:K.object({}).optional().describe(`Host supports text content blocks.`),image:K.object({}).optional().describe(`Host supports image content blocks.`),audio:K.object({}).optional().describe(`Host supports audio content blocks.`),resource:K.object({}).optional().describe(`Host supports resource content blocks.`),resourceLink:K.object({}).optional().describe(`Host supports resource link content blocks.`),structuredContent:K.object({}).optional().describe(`Host supports structured content.`)}),Qle=K.object({experimental:K.object({}).optional().describe(`Experimental features (structure TBD).`),openLinks:K.object({}).optional().describe(`Host supports opening external URLs.`),serverTools:K.object({listChanged:K.boolean().optional().describe(`Host supports tools/list_changed notifications.`)}).optional().describe(`Host can proxy tool calls to the MCP server.`),serverResources:K.object({listChanged:K.boolean().optional().describe(`Host supports resources/list_changed notifications.`)}).optional().describe(`Host can proxy resource reads to the MCP server.`),logging:K.object({}).optional().describe(`Host accepts log messages.`),sandbox:K.object({permissions:uO.optional().describe(`Permissions granted by the host (camera, microphone, geolocation).`),csp:lO.optional().describe(`CSP domains approved by the host.`)}).optional().describe(`Sandbox configuration applied by the host.`),updateModelContext:dO.optional().describe(`Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns.`),message:dO.optional().describe(`Host supports receiving content messages (ui/message) from the view.`)}),$le=K.object({experimental:K.object({}).optional().describe(`Experimental features (structure TBD).`),tools:K.object({listChanged:K.boolean().optional().describe(`App supports tools/list_changed notifications.`)}).optional().describe(`App exposes MCP-style tools that the host can call.`),availableDisplayModes:K.array(cO).optional().describe(`Display modes the app supports.`)});K.object({method:K.literal(`ui/notifications/initialized`),params:K.object({}).optional()}),K.object({csp:lO.optional().describe(`Content Security Policy configuration.`),permissions:uO.optional().describe(`Sandbox permissions requested by the UI.`),domain:K.string().optional().describe(`Dedicated origin for view sandbox.`),prefersBorder:K.boolean().optional().describe(`Visual boundary preference - true if UI prefers a visible border.`)}),K.object({method:K.literal(`ui/request-display-mode`),params:K.object({mode:cO.describe(`The display mode being requested.`)})}),K.object({mode:cO.describe(`The display mode that was actually set. May differ from requested if not supported.`)}).passthrough();var eue=K.union([K.literal(`model`),K.literal(`app`)]).describe(`Tool visibility scope - who can access the tool.`);K.object({resourceUri:K.string().optional(),visibility:K.array(eue).optional().describe(`Who can access this tool. Default: ["model", "app"]
436
436
  - "model": Tool visible to and callable by the agent
437
437
  - "app": Tool callable by the app from this server only`)}),K.object({mimeTypes:K.array(K.string()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.')}),K.object({method:K.literal(`ui/message`),params:K.object({role:K.literal(`user`).describe(`Message role, currently only "user" is supported.`),content:K.array(r_).describe(`Message content blocks (text, image, etc.).`)})}),K.object({method:K.literal(`ui/notifications/sandbox-resource-ready`),params:K.object({html:K.string().describe(`HTML content to load into the inner iframe.`),sandbox:K.string().optional().describe(`Optional override for the inner iframe's sandbox attribute.`),csp:lO.optional().describe(`CSP configuration from resource metadata.`),permissions:uO.optional().describe(`Sandbox permissions from resource metadata.`)})}),K.object({method:K.literal(`ui/notifications/tool-result`),params:c_.describe(`Standard MCP tool execution result.`)});var fO=K.object({toolInfo:K.object({id:cg.optional().describe(`JSON-RPC id of the tools/call request.`),tool:o_.describe(`Tool definition including name, inputSchema, etc.`)}).optional().describe(`Metadata of the tool call that instantiated this App.`),theme:qle.optional().describe(`Current color theme preference.`),styles:Zle.optional().describe(`Style configuration for theming the app.`),displayMode:cO.optional().describe(`How the UI is currently displayed.`),availableDisplayModes:K.array(cO).optional().describe(`Display modes the host supports.`),containerDimensions:K.union([K.object({height:K.number().describe(`Fixed container height in pixels.`)}),K.object({maxHeight:K.union([K.number(),K.undefined()]).optional().describe(`Maximum container height in pixels.`)})]).and(K.union([K.object({width:K.number().describe(`Fixed container width in pixels.`)}),K.object({maxWidth:K.union([K.number(),K.undefined()]).optional().describe(`Maximum container width in pixels.`)})])).optional().describe(`Container dimensions. Represents the dimensions of the iframe or other
438
- container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:K.string().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:K.string().optional().describe(`User's timezone in IANA format.`),userAgent:K.string().optional().describe(`Host application identifier.`),platform:K.union([K.literal(`web`),K.literal(`desktop`),K.literal(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:K.object({touch:K.boolean().optional().describe(`Whether the device supports touch input.`),hover:K.boolean().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:K.object({top:K.number().describe(`Top safe area inset in pixels.`),right:K.number().describe(`Right safe area inset in pixels.`),bottom:K.number().describe(`Bottom safe area inset in pixels.`),left:K.number().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough();K.object({method:K.literal(`ui/notifications/host-context-changed`),params:fO.describe(`Partial context update containing only changed fields.`)}),K.object({method:K.literal(`ui/update-model-context`),params:K.object({content:K.array(r_).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:K.record(K.string(),K.unknown().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),K.object({method:K.literal(`ui/initialize`),params:K.object({appInfo:xg.describe(`App identification (name and version).`),appCapabilities:$le.describe(`Features and capabilities this app provides.`),protocolVersion:K.string().describe(`Protocol version this app supports.`)})}),K.object({protocolVersion:K.string().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:xg.describe(`Host application identification and version.`),hostCapabilities:Qle.describe(`Features and capabilities provided by the host.`),hostContext:fO.describe(`Rich context about the host environment.`)}).passthrough();var tue=`text/html;profile=mcp-app`,nue=`modulepreload`,rue=function(e){return`/inspector/`+e},pO={},J=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=rue(t,n),t in pO)return;pO[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:nue,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},iue=`1.25.1-canary.0`;function mO(){return iue}a(mO,`getPackageVersion`);var hO=class{static{a(this,`BaseTelemetryEvent`)}},aue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`MCPAgentExecutionEvent`)}get name(){return`mcp_agent_execution`}get properties(){return{execution_method:this.data.executionMethod,query:this.data.query,query_length:this.data.query.length,success:this.data.success,model_provider:this.data.modelProvider,model_name:this.data.modelName,server_count:this.data.serverCount,server_identifiers:this.data.serverIdentifiers,total_tools_available:this.data.totalToolsAvailable,tools_available_names:this.data.toolsAvailableNames,max_steps_configured:this.data.maxStepsConfigured,memory_enabled:this.data.memoryEnabled,use_server_manager:this.data.useServerManager,max_steps_used:this.data.maxStepsUsed,manage_connector:this.data.manageConnector,external_history_used:this.data.externalHistoryUsed,steps_taken:this.data.stepsTaken??null,tools_used_count:this.data.toolsUsedCount??null,tools_used_names:this.data.toolsUsedNames??null,response:this.data.response??null,response_length:this.data.response?this.data.response.length:null,execution_time_ms:this.data.executionTimeMs??null,error_type:this.data.errorType??null,conversation_history_length:this.data.conversationHistoryLength??null}}};function gO(e,t){let n=Array.from(e.registrations.tools.values()),r=Array.from(e.registrations.prompts.values()),i=Array.from(e.registrations.resources.values()),a=Array.from(e.registrations.resourceTemplates.values()),o=i.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,uri:e.config.uri??null,mime_type:e.config.mimeType??null})),s=o.filter(e=>e.mime_type===`text/html+skybridge`),c=o.filter(e=>e.mime_type===`text/uri-list`||e.mime_type===`text/html`),l=o.filter(e=>e.mime_type===tue);return{transport:t,toolsNumber:e.registeredTools.length,resourcesNumber:e.registeredResources.length,promptsNumber:e.registeredPrompts.length,auth:!!e.oauthProvider,name:e.config.name,description:e.config.description??null,baseUrl:e.serverBaseUrl??null,toolNames:e.registeredTools.length>0?e.registeredTools:null,resourceNames:e.registeredResources.length>0?e.registeredResources:null,promptNames:e.registeredPrompts.length>0?e.registeredPrompts:null,tools:n.length>0?n.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,input_schema:e.config.schema?JSON.stringify(e.config.schema):null,output_schema:e.config.outputSchema?JSON.stringify(e.config.outputSchema):null})):null,resources:o.length>0?o:null,prompts:r.length>0?r.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,args:e.config.args?JSON.stringify(e.config.args):null})):null,templates:a.length>0?a.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null})):null,capabilities:{logging:!0,resources:{subscribe:!0,listChanged:!0}},appsSdkResources:s.length>0?s:null,appsSdkResourcesNumber:s.length,mcpUiResources:c.length>0?c:null,mcpUiResourcesNumber:c.length,mcpAppsResources:l.length>0?l:null,mcpAppsResourcesNumber:l.length}}a(gO,`createServerRunEventData`);var oue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerRunEvent`)}get name(){return`server_run`}get properties(){return{transport:this.data.transport,tools_number:this.data.toolsNumber,resources_number:this.data.resourcesNumber,prompts_number:this.data.promptsNumber,auth:this.data.auth,name:this.data.name,description:this.data.description??null,base_url:this.data.baseUrl??null,tool_names:this.data.toolNames??null,resource_names:this.data.resourceNames??null,prompt_names:this.data.promptNames??null,tools:this.data.tools??null,resources:this.data.resources??null,prompts:this.data.prompts??null,templates:this.data.templates??null,capabilities:this.data.capabilities?JSON.stringify(this.data.capabilities):null,apps_sdk_resources:this.data.appsSdkResources?JSON.stringify(this.data.appsSdkResources):null,apps_sdk_resources_number:this.data.appsSdkResourcesNumber??0,mcp_ui_resources:this.data.mcpUiResources?JSON.stringify(this.data.mcpUiResources):null,mcp_ui_resources_number:this.data.mcpUiResourcesNumber??0,mcp_apps_resources:this.data.mcpAppsResources?JSON.stringify(this.data.mcpAppsResources):null,mcp_apps_resources_number:this.data.mcpAppsResourcesNumber??0}}},sue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerInitializeEvent`)}get name(){return`server_initialize_call`}get properties(){return{protocol_version:this.data.protocolVersion,client_info:JSON.stringify(this.data.clientInfo),client_capabilities:JSON.stringify(this.data.clientCapabilities),session_id:this.data.sessionId??null}}},cue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerToolCallEvent`)}get name(){return`server_tool_call`}get properties(){return{tool_name:this.data.toolName,length_input_argument:this.data.lengthInputArgument,success:this.data.success,error_type:this.data.errorType??null,execution_time_ms:this.data.executionTimeMs??null}}},lue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerResourceCallEvent`)}get name(){return`server_resource_call`}get properties(){return{name:this.data.name,description:this.data.description,contents:this.data.contents,success:this.data.success,error_type:this.data.errorType??null}}},uue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerPromptCallEvent`)}get name(){return`server_prompt_call`}get properties(){return{name:this.data.name,description:this.data.description,success:this.data.success,error_type:this.data.errorType??null}}},due=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerContextEvent`)}get name(){return`server_context_${this.data.contextType}`}get properties(){return{context_type:this.data.contextType,notification_type:this.data.notificationType??null}}},fue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`MCPClientInitEvent`)}get name(){return`mcpclient_init`}get properties(){return{code_mode:this.data.codeMode,sandbox:this.data.sandbox,all_callbacks:this.data.allCallbacks,verify:this.data.verify,servers:this.data.servers,num_servers:this.data.numServers,is_browser:this.data.isBrowser}}},pue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ConnectorInitEvent`)}get name(){return`connector_init`}get properties(){return{connector_type:this.data.connectorType,server_command:this.data.serverCommand??null,server_args:this.data.serverArgs??null,server_url:this.data.serverUrl??null,public_identifier:this.data.publicIdentifier??null}}},mue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ClientAddServerEvent`)}get name(){return`client_add_server`}get properties(){let{serverName:e,serverConfig:t}=this.data,n=t.url;return{server_name:e,server_url_domain:n?this._extractHostname(n):null,transport:t.transport??null,has_auth:!!(t.authToken||t.authProvider)}}_extractHostname(e){try{return new URL(e).hostname}catch{return null}}},hue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ClientRemoveServerEvent`)}get name(){return`client_remove_server`}get properties(){return{server_name:this.data.serverName}}};function _O(e){return e._llm_type||e.constructor.name.toLowerCase()}a(_O,`getModelProvider`);function vO(e){if(`_identifyingParams`in e){let t=e._identifyingParams;if(typeof t==`object`&&t){for(let e of[`model`,`modelName`,`model_name`,`modelId`,`model_id`,`deploymentName`,`deployment_name`])if(e in t)return String(t[e])}}return e.model||e.modelName||e.constructor.name}a(vO,`getModelName`);function gue(e){return[_O(e),vO(e)]}a(gue,`extractModelInfo`);function yO(){if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.randomUUID==`function`)return globalThis.crypto.randomUUID();if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.getRandomValues==`function`){let e=new Uint8Array(16);globalThis.crypto.getRandomValues(e);let t=Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.substring(0,8)}-${t.substring(8,12)}-${t.substring(12,16)}-${t.substring(16,20)}-${t.substring(20)}`}return`${Date.now()}-${Math.random().toString(36).substring(2,15)}-${Math.random().toString(36).substring(2,15)}`}a(yO,`generateUUID`);function bO(){if(typeof window<`u`&&window.crypto&&typeof window.crypto.getRandomValues==`function`){let e=new Uint8Array(8);return window.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.getRandomValues==`function`){let e=new Uint8Array(8);return globalThis.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}return Math.random().toString(36).substring(2,15)}a(bO,`secureRandomString`);var xO=`mcp_use_user_id`;function SO(){return typeof localStorage<`u`&&typeof localStorage.getItem==`function`&&typeof localStorage.setItem==`function`&&typeof localStorage.removeItem==`function`}a(SO,`isLocalStorageFunctional`);function CO(){try{return typeof window<`u`&&typeof document<`u`?`browser`:`unknown`}catch{return`unknown`}}a(CO,`detectRuntimeEnvironment`);function wO(e){if(e===`browser`)try{if(SO())return localStorage.setItem(`__mcp_use_test__`,`1`),localStorage.removeItem(`__mcp_use_test__`),`localStorage`}catch{}return`session-only`}a(wO,`getStorageCapability`);var TO=null;function EO(){return TO===null&&(TO=CO()),TO}a(EO,`getRuntimeEnvironment`);var DO=class e{static{a(this,`Telemetry`)}static instance=null;PROJECT_API_KEY=`phc_lyTtbYwvkdSbrcMQNPiKiiRWrrM1seyKIMjycSvItEI`;HOST=`https://eu.i.posthog.com`;UNKNOWN_USER_ID=`UNKNOWN_USER_ID`;_currUserId=null;_posthogBrowserClient=null;_posthogLoading=null;_runtimeEnvironment;_storageCapability;_source;constructor(){this._runtimeEnvironment=EO(),this._storageCapability=wO(this._runtimeEnvironment),this._source=this._getSourceFromLocalStorage()||this._runtimeEnvironment;let e=this._checkTelemetryDisabled(),t=this._runtimeEnvironment!==`unknown`;e?(this._posthogBrowserClient=null,l.debug(`Telemetry disabled via localStorage`)):t?(l.debug(`Anonymized telemetry enabled. Set MCP_USE_ANONYMIZED_TELEMETRY=false in localStorage to disable.`),this._posthogLoading=this._initPostHogBrowser()):(this._posthogBrowserClient=null,l.debug(`Telemetry disabled - unknown environment: ${this._runtimeEnvironment}`))}_getSourceFromLocalStorage(){try{if(SO())return localStorage.getItem(`MCP_USE_TELEMETRY_SOURCE`)}catch{}return null}_checkTelemetryDisabled(){return!!(SO()&&localStorage.getItem(`MCP_USE_ANONYMIZED_TELEMETRY`)===`false`)}async _initPostHogBrowser(){try{let e=await J(()=>import(`./module-DjisYqbk.js`),[]),t=e.default||e.posthog;if(!t||typeof t.init!=`function`)throw Error(`posthog-js module did not export expected interface`);t.init(this.PROJECT_API_KEY,{api_host:this.HOST,persistence:`localStorage`,autocapture:!1,capture_pageview:!1,disable_session_recording:!0,loaded:a(()=>{l.debug(`PostHog browser client initialized`)},`loaded`)}),this._posthogBrowserClient=t}catch(e){l.warn(`Failed to initialize PostHog browser telemetry: ${e}`),this._posthogBrowserClient=null}}get runtimeEnvironment(){return this._runtimeEnvironment}get storageCapability(){return this._storageCapability}static getInstance(){return e.instance||=new e,e.instance}setSource(e){this._source=e;try{SO()&&localStorage.setItem(`MCP_USE_TELEMETRY_SOURCE`,e)}catch{}l.debug(`Telemetry source set to: ${e}`)}getSource(){return this._source}get isEnabled(){return this._posthogBrowserClient!==null}get userId(){if(this._currUserId)return this._currUserId;try{switch(this._storageCapability){case`localStorage`:this._currUserId=this._getUserIdFromLocalStorage();break;default:try{this._currUserId=`session-${yO()}`}catch{this._currUserId=`session-${Date.now()}-${bO()}`}break}}catch{this._currUserId=this.UNKNOWN_USER_ID}return this._currUserId}_getUserIdFromLocalStorage(){try{if(!SO())throw Error(`localStorage is not available or not functional`);localStorage.setItem(`__mcp_use_test__`,`1`),localStorage.removeItem(`__mcp_use_test__`);let e=localStorage.getItem(xO);if(!e){try{e=yO()}catch{e=`${Date.now()}-${bO()}`}localStorage.setItem(xO,e)}return e}catch(e){l.debug(`Failed to access localStorage for user ID: ${e}`);let t;try{t=`session-${yO()}`}catch{t=`session-${Date.now()}-${bO()}`}return t}}async capture(e){if(this._posthogLoading&&await this._posthogLoading,!this._posthogBrowserClient)return;let t=this.userId,n={...e.properties};if(n.mcp_use_version=mO(),n.language=`typescript`,n.source=this._source,n.runtime=this._runtimeEnvironment,this._posthogBrowserClient)try{this._posthogBrowserClient.capture(e.name,{...n,distinct_id:t})}catch(t){l.debug(`Failed to track PostHog Browser event ${e.name}: ${t}`)}}async trackAgentExecution(e){if(!this.isEnabled)return;let t=new aue(e);await this.capture(t)}async trackServerRunFromServer(e,t){if(!this.isEnabled)return;let n=new oue(gO(e,t));await this.capture(n)}async trackServerInitialize(e){if(!this.isEnabled)return;let t=new sue(e);await this.capture(t)}async trackServerToolCall(e){if(!this.isEnabled)return;let t=new cue(e);await this.capture(t)}async trackServerResourceCall(e){if(!this.isEnabled)return;let t=new lue(e);await this.capture(t)}async trackServerPromptCall(e){if(!this.isEnabled)return;let t=new uue(e);await this.capture(t)}async trackServerContext(e){if(!this.isEnabled)return;let t=new due(e);await this.capture(t)}async trackMCPClientInit(e){if(!this.isEnabled)return;let t=new fue(e);await this.capture(t)}async trackConnectorInit(e){if(!this.isEnabled)return;let t=new pue(e);await this.capture(t)}async trackClientAddServer(e,t){if(!this.isEnabled)return;let n=new mue({serverName:e,serverConfig:t});await this.capture(n)}async trackClientRemoveServer(e){if(!this.isEnabled)return;let t=new hue({serverName:e});await this.capture(t)}async trackUseMcpConnection(e){this.isEnabled&&await this.capture({name:`usemcp_connection`,properties:{url_domain:new URL(e.url).hostname,transport_type:e.transportType,success:e.success,error_type:e.errorType??null,connection_time_ms:e.connectionTimeMs??null,has_oauth:e.hasOAuth,has_sampling:e.hasSampling,has_elicitation:e.hasElicitation}})}async trackUseMcpToolCall(e){this.isEnabled&&await this.capture({name:`usemcp_tool_call`,properties:{tool_name:e.toolName,success:e.success,error_type:e.errorType??null,execution_time_ms:e.executionTimeMs??null}})}async trackUseMcpResourceRead(e){this.isEnabled&&await this.capture({name:`usemcp_resource_read`,properties:{resource_uri_scheme:e.resourceUri.split(`:`)[0],success:e.success,error_type:e.errorType??null}})}identify(e,t){if(this._posthogBrowserClient)try{this._posthogBrowserClient.identify(e,t)}catch(e){l.debug(`Failed to identify user: ${e}`)}}reset(){if(this._posthogBrowserClient)try{this._posthogBrowserClient.reset()}catch(e){l.debug(`Failed to reset user: ${e}`)}this._currUserId=null}flush(){}shutdown(){}async trackPackageDownload(e){}},OO=DO;function _ue(e){OO.getInstance().setSource(e)}a(_ue,`setTelemetrySource`);var vue=class{static{a(this,`BaseConnector`)}client=null;connectionManager=null;toolsCache=null;capabilitiesCache=null;serverInfoCache=null;connected=!1;opts;notificationHandlers=[];rootsCache=[];constructor(e={}){let t={...e,onSampling:e.onSampling??e.samplingCallback,onElicitation:e.onElicitation??e.elicitationCallback};e.samplingCallback&&!e.onSampling&&l.warn(`[BaseConnector] The "samplingCallback" option is deprecated. Use "onSampling" instead.`),e.elicitationCallback&&!e.onElicitation&&console.warn(`[BaseConnector] The "elicitationCallback" option is deprecated. Use "onElicitation" instead.`),this.opts=t,t.roots&&(this.rootsCache=[...t.roots]),t.onNotification&&this.notificationHandlers.push(t.onNotification)}trackConnectorInit(e){let t=this.constructor.name;DO.getInstance().trackConnectorInit({connectorType:t,...e}).catch(e=>l.debug(`Failed to track connector init: ${e}`))}onNotification(e){this.notificationHandlers.push(e),this.client&&this.setupNotificationHandler()}setupNotificationHandler(){if(!this.client)return;let e=a(async e=>{for(let t of this.notificationHandlers)try{await t(e)}catch(e){l.error(`Error in notification handler:`,e)}},`forwardToUserHandlers`);this.client.fallbackNotificationHandler=async t=>{switch(t.method){case`notifications/tools/list_changed`:await this.refreshToolsCache();break;case`notifications/resources/list_changed`:await this.onResourcesListChanged();break;case`notifications/prompts/list_changed`:await this.onPromptsListChanged();break;default:break}await e(t)};let t=this.client._notificationHandlers;for(let n of[`notifications/progress`,`notifications/cancelled`]){let r=t.get(n);r&&t.set(n,async t=>{await r(t),await e(t)})}}async refreshToolsCache(){if(this.client)try{l.debug(`[Auto] Refreshing tools cache due to list_changed notification`),this.toolsCache=(await this.client.listTools()).tools??[],l.debug(`[Auto] Refreshed tools cache: ${this.toolsCache.length} tools`)}catch(e){l.warn(`[Auto] Failed to refresh tools cache:`,e)}}async onResourcesListChanged(){l.debug(`[Auto] Resources list changed - clients should re-fetch if needed`)}async onPromptsListChanged(){l.debug(`[Auto] Prompts list changed - clients should re-fetch if needed`)}async setRoots(e){this.rootsCache=[...e],this.client&&(l.debug(`Sending roots/list_changed notification with ${e.length} root(s)`),await this.client.sendRootsListChanged())}getRoots(){return[...this.rootsCache]}setupRootsHandler(){this.client&&this.client.setRequestHandler(b_,async(e,t)=>(l.debug(`Server requested roots list, returning ${this.rootsCache.length} root(s)`),{roots:this.rootsCache}))}setupSamplingHandler(){if(!this.client){l.debug(`setupSamplingHandler: No client available`);return}let e=this.opts.onSampling??this.opts.samplingCallback;if(!e){l.debug(`setupSamplingHandler: No sampling callback provided`);return}l.debug(`setupSamplingHandler: Setting up sampling request handler`),this.client.setRequestHandler(m_,async(t,n)=>(l.debug(`Server requested sampling, forwarding to callback`),await e(t.params))),l.debug(`setupSamplingHandler: Sampling handler registered successfully`)}setupElicitationHandler(){if(!this.client){l.debug(`setupElicitationHandler: No client available`);return}let e=this.opts.onElicitation??this.opts.elicitationCallback;if(!e){l.debug(`setupElicitationHandler: No elicitation callback provided`);return}l.debug(`setupElicitationHandler: Setting up elicitation request handler`),this.client.setRequestHandler(__,async(t,n)=>(l.debug(`Server requested elicitation, forwarding to callback`),await e(t.params))),l.debug(`setupElicitationHandler: Elicitation handler registered successfully`)}async disconnect(){if(!this.connected){l.debug(`Not connected to MCP implementation`);return}l.debug(`Disconnecting from MCP implementation`),await this.cleanupResources(),this.connected=!1,l.debug(`Disconnected from MCP implementation`)}get isClientConnected(){return this.client!=null}async initialize(e=this.opts.defaultRequestOptions??{}){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`Caching server capabilities & tools`);let t=this.client.getServerCapabilities();this.capabilitiesCache=t||null;let n=this.client.getServerVersion();this.serverInfoCache=n||null;try{this.toolsCache=(await this.client.listTools(void 0,e)).tools??[],l.debug(`Fetched ${this.toolsCache.length} tools from server`)}catch(e){let t=e;t.code===-32601?l.debug(`Server does not implement tools/list, assuming no tools`):l.debug(`Failed to list tools, assuming empty:`,t.message),this.toolsCache=[]}return l.debug(`Server capabilities:`,t),l.debug(`Server info:`,n),t}get tools(){if(!this.toolsCache)throw Error(`MCP client is not initialized; call initialize() first`);return this.toolsCache}get serverCapabilities(){return this.capabilitiesCache||{}}get serverInfo(){return this.serverInfoCache}async callTool(e,t,n){if(!this.client)throw Error(`MCP client is not connected`);let r=n?{...n}:void 0;r?.resetTimeoutOnProgress&&!r.onprogress&&(r.onprogress=()=>{},l.debug(`[BaseConnector] Added onprogress callback for tool '${e}' to enable progressToken`)),l.debug(`Calling tool '${e}' with args`,t);let i=await this.client.callTool({name:e,arguments:t},void 0,r);return l.debug(`Tool '${e}' returned`,i),i}async listTools(e){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`[listTools] Fetching fresh tools from server...`);let t=await this.client.listTools(void 0,e),n=t.tools?[...t.tools]:[];return l.debug(`[listTools] Returned ${n.length} tools:`,n.map(e=>e.name)),n}async listResources(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Listing resources`,e?`with cursor: ${e}`:``),await this.client.listResources({cursor:e},t)}async listAllResources(e){if(!this.client)throw Error(`MCP client is not connected`);if(!this.capabilitiesCache?.resources)return l.debug(`Server does not advertise resources capability, skipping`),{resources:[]};try{l.debug(`Listing all resources (with auto-pagination)`);let t=[],n;do{let r=await this.client.listResources({cursor:n},e);t.push(...r.resources||[]),n=r.nextCursor}while(n);return{resources:t}}catch(e){if(e.code===-32601)return l.debug(`Server advertised resources but method not found`),{resources:[]};throw e}}async listResourceTemplates(e){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Listing resource templates`),await this.client.listResourceTemplates(void 0,e)}async complete(e,t){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`[complete] Requesting completions for:`,e.ref);let n=await this.client.complete(e,t);return l.debug(`[complete] Received ${n.completion.values.length} suggestions`),n}async readResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Reading resource ${e}`),await this.client.readResource({uri:e},t)}async subscribeToResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Subscribing to resource: ${e}`),await this.client.subscribeResource({uri:e},t)}async unsubscribeFromResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Unsubscribing from resource: ${e}`),await this.client.unsubscribeResource({uri:e},t)}async listPrompts(){if(!this.client)throw Error(`MCP client is not connected`);if(!this.capabilitiesCache?.prompts)return l.debug(`Server does not advertise prompts capability, skipping`),{prompts:[]};try{return l.debug(`Listing prompts`),await this.client.listPrompts()}catch(e){if(e.code===-32601)return l.debug(`Server advertised prompts but method not found`),{prompts:[]};throw e}}async getPrompt(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Getting prompt ${e}`),await this.client.getPrompt({name:e,arguments:t})}async request(e,t=null,n){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Sending raw request '${e}' with params`,t),await this.client.request({method:e,params:t??{}},void 0,n)}async cleanupResources(){let e=[];if(this.client)try{typeof this.client.close==`function`&&await this.client.close()}catch(t){let n=`Error closing client: ${t}`;l.warn(n),e.push(n)}finally{this.client=null}if(this.connectionManager)try{await this.connectionManager.stop()}catch(t){let n=`Error stopping connection manager: ${t}`;l.warn(n),e.push(n)}finally{this.connectionManager=null}this.toolsCache=null,e.length&&l.warn(`Resource cleanup finished with ${e.length} issue(s)`)}},yue=class{static{a(this,`ConnectionManager`)}_readyPromise;_readyResolver;_donePromise;_doneResolver;_exception=null;_connection=null;_task=null;_abortController=null;constructor(){this.reset()}async start(){if(this.reset(),l.debug(`Starting ${this.constructor.name}`),this._task=this.connectionTask(),await this._readyPromise,this._exception)throw this._exception;if(this._connection===null)throw Error(`Connection was not established`);return this._connection}async stop(){if(this._task&&this._abortController){l.debug(`Cancelling ${this.constructor.name} task`),this._abortController.abort();try{await this._task}catch(e){e instanceof Error&&e.name===`AbortError`?l.debug(`${this.constructor.name} task aborted successfully`):l.warn(`Error stopping ${this.constructor.name} task: ${e}`)}}await this._donePromise,l.debug(`${this.constructor.name} task completed`)}reset(){this._readyPromise=new Promise(e=>this._readyResolver=e),this._donePromise=new Promise(e=>this._doneResolver=e),this._exception=null,this._connection=null,this._task=null,this._abortController=new AbortController}async connectionTask(){l.debug(`Running ${this.constructor.name} task`);try{this._connection=await this.establishConnection(),l.debug(`${this.constructor.name} connected successfully`),this._readyResolver(),await this.waitForAbort()}catch(e){this._exception=e,l.error(`Error in ${this.constructor.name} task: ${e}`),this._readyResolver()}finally{if(this._connection!==null){try{await this.closeConnection(this._connection)}catch(e){l.warn(`Error closing connection in ${this.constructor.name}: ${e}`)}this._connection=null}this._doneResolver()}}async waitForAbort(){return new Promise((e,t)=>{if(!this._abortController)return;let n=this._abortController.signal;if(n.aborted){e();return}let r=a(()=>{n.removeEventListener(`abort`,r),e()},`onAbort`);n.addEventListener(`abort`,r)})}},kO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var t=class{};e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var n=class extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=n;var r=class extends t{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=r,e.nil=new r(``);function i(e,...t){let n=[e[0]],i=0;for(;i<t.length;)s(n,t[i]),n.push(e[++i]);return new r(n)}e._=i;var a=new r(`+`);function o(e,...t){let n=[p(e[0])],i=0;for(;i<t.length;)n.push(a),s(n,t[i]),n.push(a,p(e[++i]));return c(n),new r(n)}e.str=o;function s(e,t){t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push(d(t))}e.addCodeArg=s;function c(e){let t=1;for(;t<e.length-1;){if(e[t]===a){let n=l(e[t-1],e[t+1]);if(n!==void 0){e.splice(t-1,3,n);continue}e[t++]=`+`}t++}}function l(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof n||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof n))return`"${e}${t.slice(1)}`}function u(e,t){return t.emptyStr()?e:e.emptyStr()?t:o`${e}${t}`}e.strConcat=u;function d(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:p(Array.isArray(e)?e.join(`,`):e)}function f(e){return new r(p(e))}e.stringify=f;function p(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=p;function m(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new r(`.${t}`):i`[${t}]`}e.getProperty=m;function h(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new r(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=h;function g(e){return new r(e.toString())}e.regexpCode=g})),AO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;var t=kO(),n=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new t.Name(`const`),let:new t.Name(`let`),var:new t.Name(`var`)};var i=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=i;var a=class extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,t._)`.${new t.Name(n)}[${r}]`}};e.ValueScopeName=a;var o=(0,t._)`\n`;e.ValueScope=class extends i{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o:t.nil}}get(){return this._scope}name(e){return new a(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,n=>{if(n.scopePath===void 0)throw Error(`CodeGen: name "${n}" has no value`);return(0,t._)`${e}${n.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(i,a,o={},s){let c=t.nil;for(let l in i){let u=i[l];if(!u)continue;let d=o[l]=o[l]||new Map;u.forEach(i=>{if(d.has(i))return;d.set(i,r.Started);let o=a(i);if(o){let n=this.opts.es5?e.varKinds.var:e.varKinds.const;c=(0,t._)`${c}${n} ${i} = ${o};${this.opts._n}`}else if(o=s?.(i))c=(0,t._)`${c}${o}${this.opts._n}`;else throw new n(i);d.set(i,r.Completed)})}return c}}})),jO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;var t=kO(),n=AO(),r=kO();Object.defineProperty(e,`_`,{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,`str`,{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,`strConcat`,{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,`nil`,{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,`getProperty`,{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,`stringify`,{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,`regexpCode`,{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,`Name`,{enumerable:!0,get:function(){return r.Name}});var i=AO();Object.defineProperty(e,`Scope`,{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(e,`ValueScope`,{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(e,`ValueScopeName`,{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(e,`varKinds`,{enumerable:!0,get:function(){return i.varKinds}}),e.operators={GT:new t._Code(`>`),GTE:new t._Code(`>=`),LT:new t._Code(`<`),LTE:new t._Code(`<=`),EQ:new t._Code(`===`),NEQ:new t._Code(`!==`),NOT:new t._Code(`!`),OR:new t._Code(`||`),AND:new t._Code(`&&`),ADD:new t._Code(`+`)};var a=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},o=class extends a{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let r=e?n.varKinds.var:this.varKind,i=this.rhs===void 0?``:` = ${this.rhs}`;return`${r} ${this.name}${i};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=k(this.rhs,e,t),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}},s=class extends a{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=k(this.rhs,e,n),this}get names(){return O(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}},c=class extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},u=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},d=class extends a{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},f=class extends a{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=k(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}},p=class extends a{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(A(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>D(e,t.names),{})}},m=class extends p{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},h=class extends p{},g=class extends m{};g.kind=`else`;var _=class e extends m{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let n=this.else;if(n){let e=n.optimizeNodes();n=this.else=Array.isArray(e)?new g(e):e}if(n)return t===!1?n instanceof e?n:n.nodes:this.nodes.length?this:new e(j(t),n instanceof e?[n]:n.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=k(this.condition,e,t),this}get names(){let e=super.names;return O(e,this.condition),this.else&&D(e,this.else.names),e}};_.kind=`if`;var v=class extends m{};v.kind=`for`;var y=class extends v{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=k(this.iteration,e,t),this}get names(){return D(super.names,this.iteration.names)}},b=class extends v{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?n.varKinds.var:this.varKind,{name:r,from:i,to:a}=this;return`for(${t} ${r}=${i}; ${r}<${a}; ${r}++)`+super.render(e)}get names(){return O(O(super.names,this.from),this.to)}},x=class extends v{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=k(this.iterable,e,t),this}get names(){return D(super.names,this.iterable.names)}},S=class extends m{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};S.kind=`func`;var C=class extends p{render(e){return`return `+super.render(e)}};C.kind=`return`;var w=class extends m{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)==null||e.optimizeNodes(),(t=this.finally)==null||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),(n=this.catch)==null||n.optimizeNames(e,t),(r=this.finally)==null||r.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&D(e,this.catch.names),this.finally&&D(e,this.finally.names),e}},T=class extends m{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};T.kind=`catch`;var E=class extends m{render(e){return`finally`+super.render(e)}};E.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
438
+ container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:K.string().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:K.string().optional().describe(`User's timezone in IANA format.`),userAgent:K.string().optional().describe(`Host application identifier.`),platform:K.union([K.literal(`web`),K.literal(`desktop`),K.literal(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:K.object({touch:K.boolean().optional().describe(`Whether the device supports touch input.`),hover:K.boolean().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:K.object({top:K.number().describe(`Top safe area inset in pixels.`),right:K.number().describe(`Right safe area inset in pixels.`),bottom:K.number().describe(`Bottom safe area inset in pixels.`),left:K.number().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough();K.object({method:K.literal(`ui/notifications/host-context-changed`),params:fO.describe(`Partial context update containing only changed fields.`)}),K.object({method:K.literal(`ui/update-model-context`),params:K.object({content:K.array(r_).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:K.record(K.string(),K.unknown().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),K.object({method:K.literal(`ui/initialize`),params:K.object({appInfo:xg.describe(`App identification (name and version).`),appCapabilities:$le.describe(`Features and capabilities this app provides.`),protocolVersion:K.string().describe(`Protocol version this app supports.`)})}),K.object({protocolVersion:K.string().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:xg.describe(`Host application identification and version.`),hostCapabilities:Qle.describe(`Features and capabilities provided by the host.`),hostContext:fO.describe(`Rich context about the host environment.`)}).passthrough();var tue=`text/html;profile=mcp-app`,nue=`modulepreload`,rue=function(e){return`/inspector/`+e},pO={},J=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=rue(t,n),t in pO)return;pO[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:nue,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},iue=`1.25.1-canary.2`;function mO(){return iue}a(mO,`getPackageVersion`);var hO=class{static{a(this,`BaseTelemetryEvent`)}},aue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`MCPAgentExecutionEvent`)}get name(){return`mcp_agent_execution`}get properties(){return{execution_method:this.data.executionMethod,query:this.data.query,query_length:this.data.query.length,success:this.data.success,model_provider:this.data.modelProvider,model_name:this.data.modelName,server_count:this.data.serverCount,server_identifiers:this.data.serverIdentifiers,total_tools_available:this.data.totalToolsAvailable,tools_available_names:this.data.toolsAvailableNames,max_steps_configured:this.data.maxStepsConfigured,memory_enabled:this.data.memoryEnabled,use_server_manager:this.data.useServerManager,max_steps_used:this.data.maxStepsUsed,manage_connector:this.data.manageConnector,external_history_used:this.data.externalHistoryUsed,steps_taken:this.data.stepsTaken??null,tools_used_count:this.data.toolsUsedCount??null,tools_used_names:this.data.toolsUsedNames??null,response:this.data.response??null,response_length:this.data.response?this.data.response.length:null,execution_time_ms:this.data.executionTimeMs??null,error_type:this.data.errorType??null,conversation_history_length:this.data.conversationHistoryLength??null}}};function gO(e,t){let n=Array.from(e.registrations.tools.values()),r=Array.from(e.registrations.prompts.values()),i=Array.from(e.registrations.resources.values()),a=Array.from(e.registrations.resourceTemplates.values()),o=i.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,uri:e.config.uri??null,mime_type:e.config.mimeType??null})),s=o.filter(e=>e.mime_type===`text/html+skybridge`),c=o.filter(e=>e.mime_type===`text/uri-list`||e.mime_type===`text/html`),l=o.filter(e=>e.mime_type===tue);return{transport:t,toolsNumber:e.registeredTools.length,resourcesNumber:e.registeredResources.length,promptsNumber:e.registeredPrompts.length,auth:!!e.oauthProvider,name:e.config.name,description:e.config.description??null,baseUrl:e.serverBaseUrl??null,toolNames:e.registeredTools.length>0?e.registeredTools:null,resourceNames:e.registeredResources.length>0?e.registeredResources:null,promptNames:e.registeredPrompts.length>0?e.registeredPrompts:null,tools:n.length>0?n.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,input_schema:e.config.schema?JSON.stringify(e.config.schema):null,output_schema:e.config.outputSchema?JSON.stringify(e.config.outputSchema):null})):null,resources:o.length>0?o:null,prompts:r.length>0?r.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null,args:e.config.args?JSON.stringify(e.config.args):null})):null,templates:a.length>0?a.map(e=>({name:e.config.name,title:e.config.title??null,description:e.config.description??null})):null,capabilities:{logging:!0,resources:{subscribe:!0,listChanged:!0}},appsSdkResources:s.length>0?s:null,appsSdkResourcesNumber:s.length,mcpUiResources:c.length>0?c:null,mcpUiResourcesNumber:c.length,mcpAppsResources:l.length>0?l:null,mcpAppsResourcesNumber:l.length}}a(gO,`createServerRunEventData`);var oue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerRunEvent`)}get name(){return`server_run`}get properties(){return{transport:this.data.transport,tools_number:this.data.toolsNumber,resources_number:this.data.resourcesNumber,prompts_number:this.data.promptsNumber,auth:this.data.auth,name:this.data.name,description:this.data.description??null,base_url:this.data.baseUrl??null,tool_names:this.data.toolNames??null,resource_names:this.data.resourceNames??null,prompt_names:this.data.promptNames??null,tools:this.data.tools??null,resources:this.data.resources??null,prompts:this.data.prompts??null,templates:this.data.templates??null,capabilities:this.data.capabilities?JSON.stringify(this.data.capabilities):null,apps_sdk_resources:this.data.appsSdkResources?JSON.stringify(this.data.appsSdkResources):null,apps_sdk_resources_number:this.data.appsSdkResourcesNumber??0,mcp_ui_resources:this.data.mcpUiResources?JSON.stringify(this.data.mcpUiResources):null,mcp_ui_resources_number:this.data.mcpUiResourcesNumber??0,mcp_apps_resources:this.data.mcpAppsResources?JSON.stringify(this.data.mcpAppsResources):null,mcp_apps_resources_number:this.data.mcpAppsResourcesNumber??0}}},sue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerInitializeEvent`)}get name(){return`server_initialize_call`}get properties(){return{protocol_version:this.data.protocolVersion,client_info:JSON.stringify(this.data.clientInfo),client_capabilities:JSON.stringify(this.data.clientCapabilities),session_id:this.data.sessionId??null}}},cue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerToolCallEvent`)}get name(){return`server_tool_call`}get properties(){return{tool_name:this.data.toolName,length_input_argument:this.data.lengthInputArgument,success:this.data.success,error_type:this.data.errorType??null,execution_time_ms:this.data.executionTimeMs??null}}},lue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerResourceCallEvent`)}get name(){return`server_resource_call`}get properties(){return{name:this.data.name,description:this.data.description,contents:this.data.contents,success:this.data.success,error_type:this.data.errorType??null}}},uue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerPromptCallEvent`)}get name(){return`server_prompt_call`}get properties(){return{name:this.data.name,description:this.data.description,success:this.data.success,error_type:this.data.errorType??null}}},due=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ServerContextEvent`)}get name(){return`server_context_${this.data.contextType}`}get properties(){return{context_type:this.data.contextType,notification_type:this.data.notificationType??null}}},fue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`MCPClientInitEvent`)}get name(){return`mcpclient_init`}get properties(){return{code_mode:this.data.codeMode,sandbox:this.data.sandbox,all_callbacks:this.data.allCallbacks,verify:this.data.verify,servers:this.data.servers,num_servers:this.data.numServers,is_browser:this.data.isBrowser}}},pue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ConnectorInitEvent`)}get name(){return`connector_init`}get properties(){return{connector_type:this.data.connectorType,server_command:this.data.serverCommand??null,server_args:this.data.serverArgs??null,server_url:this.data.serverUrl??null,public_identifier:this.data.publicIdentifier??null}}},mue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ClientAddServerEvent`)}get name(){return`client_add_server`}get properties(){let{serverName:e,serverConfig:t}=this.data,n=t.url;return{server_name:e,server_url_domain:n?this._extractHostname(n):null,transport:t.transport??null,has_auth:!!(t.authToken||t.authProvider)}}_extractHostname(e){try{return new URL(e).hostname}catch{return null}}},hue=class extends hO{constructor(e){super(),this.data=e}static{a(this,`ClientRemoveServerEvent`)}get name(){return`client_remove_server`}get properties(){return{server_name:this.data.serverName}}};function _O(e){return e._llm_type||e.constructor.name.toLowerCase()}a(_O,`getModelProvider`);function vO(e){if(`_identifyingParams`in e){let t=e._identifyingParams;if(typeof t==`object`&&t){for(let e of[`model`,`modelName`,`model_name`,`modelId`,`model_id`,`deploymentName`,`deployment_name`])if(e in t)return String(t[e])}}return e.model||e.modelName||e.constructor.name}a(vO,`getModelName`);function gue(e){return[_O(e),vO(e)]}a(gue,`extractModelInfo`);function yO(){if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.randomUUID==`function`)return globalThis.crypto.randomUUID();if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.getRandomValues==`function`){let e=new Uint8Array(16);globalThis.crypto.getRandomValues(e);let t=Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.substring(0,8)}-${t.substring(8,12)}-${t.substring(12,16)}-${t.substring(16,20)}-${t.substring(20)}`}return`${Date.now()}-${Math.random().toString(36).substring(2,15)}-${Math.random().toString(36).substring(2,15)}`}a(yO,`generateUUID`);function bO(){if(typeof window<`u`&&window.crypto&&typeof window.crypto.getRandomValues==`function`){let e=new Uint8Array(8);return window.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}if(typeof globalThis<`u`&&globalThis.crypto&&typeof globalThis.crypto.getRandomValues==`function`){let e=new Uint8Array(8);return globalThis.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}return Math.random().toString(36).substring(2,15)}a(bO,`secureRandomString`);var xO=`mcp_use_user_id`;function SO(){return typeof localStorage<`u`&&typeof localStorage.getItem==`function`&&typeof localStorage.setItem==`function`&&typeof localStorage.removeItem==`function`}a(SO,`isLocalStorageFunctional`);function CO(){try{return typeof window<`u`&&typeof document<`u`?`browser`:`unknown`}catch{return`unknown`}}a(CO,`detectRuntimeEnvironment`);function wO(e){if(e===`browser`)try{if(SO())return localStorage.setItem(`__mcp_use_test__`,`1`),localStorage.removeItem(`__mcp_use_test__`),`localStorage`}catch{}return`session-only`}a(wO,`getStorageCapability`);var TO=null;function EO(){return TO===null&&(TO=CO()),TO}a(EO,`getRuntimeEnvironment`);var DO=class e{static{a(this,`Telemetry`)}static instance=null;PROJECT_API_KEY=`phc_lyTtbYwvkdSbrcMQNPiKiiRWrrM1seyKIMjycSvItEI`;HOST=`https://eu.i.posthog.com`;UNKNOWN_USER_ID=`UNKNOWN_USER_ID`;_currUserId=null;_posthogBrowserClient=null;_posthogLoading=null;_runtimeEnvironment;_storageCapability;_source;constructor(){this._runtimeEnvironment=EO(),this._storageCapability=wO(this._runtimeEnvironment),this._source=this._getSourceFromLocalStorage()||this._runtimeEnvironment;let e=this._checkTelemetryDisabled(),t=this._runtimeEnvironment!==`unknown`;e?(this._posthogBrowserClient=null,l.debug(`Telemetry disabled via localStorage`)):t?(l.debug(`Anonymized telemetry enabled. Set MCP_USE_ANONYMIZED_TELEMETRY=false in localStorage to disable.`),this._posthogLoading=this._initPostHogBrowser()):(this._posthogBrowserClient=null,l.debug(`Telemetry disabled - unknown environment: ${this._runtimeEnvironment}`))}_getSourceFromLocalStorage(){try{if(SO())return localStorage.getItem(`MCP_USE_TELEMETRY_SOURCE`)}catch{}return null}_checkTelemetryDisabled(){return!!(SO()&&localStorage.getItem(`MCP_USE_ANONYMIZED_TELEMETRY`)===`false`)}async _initPostHogBrowser(){try{let e=await J(()=>import(`./module-DjisYqbk.js`),[]),t=e.default||e.posthog;if(!t||typeof t.init!=`function`)throw Error(`posthog-js module did not export expected interface`);t.init(this.PROJECT_API_KEY,{api_host:this.HOST,persistence:`localStorage`,autocapture:!1,capture_pageview:!1,disable_session_recording:!0,loaded:a(()=>{l.debug(`PostHog browser client initialized`)},`loaded`)}),this._posthogBrowserClient=t}catch(e){l.warn(`Failed to initialize PostHog browser telemetry: ${e}`),this._posthogBrowserClient=null}}get runtimeEnvironment(){return this._runtimeEnvironment}get storageCapability(){return this._storageCapability}static getInstance(){return e.instance||=new e,e.instance}setSource(e){this._source=e;try{SO()&&localStorage.setItem(`MCP_USE_TELEMETRY_SOURCE`,e)}catch{}l.debug(`Telemetry source set to: ${e}`)}getSource(){return this._source}get isEnabled(){return this._posthogBrowserClient!==null}get userId(){if(this._currUserId)return this._currUserId;try{switch(this._storageCapability){case`localStorage`:this._currUserId=this._getUserIdFromLocalStorage();break;default:try{this._currUserId=`session-${yO()}`}catch{this._currUserId=`session-${Date.now()}-${bO()}`}break}}catch{this._currUserId=this.UNKNOWN_USER_ID}return this._currUserId}_getUserIdFromLocalStorage(){try{if(!SO())throw Error(`localStorage is not available or not functional`);localStorage.setItem(`__mcp_use_test__`,`1`),localStorage.removeItem(`__mcp_use_test__`);let e=localStorage.getItem(xO);if(!e){try{e=yO()}catch{e=`${Date.now()}-${bO()}`}localStorage.setItem(xO,e)}return e}catch(e){l.debug(`Failed to access localStorage for user ID: ${e}`);let t;try{t=`session-${yO()}`}catch{t=`session-${Date.now()}-${bO()}`}return t}}async capture(e){if(this._posthogLoading&&await this._posthogLoading,!this._posthogBrowserClient)return;let t=this.userId,n={...e.properties};if(n.mcp_use_version=mO(),n.language=`typescript`,n.source=this._source,n.runtime=this._runtimeEnvironment,this._posthogBrowserClient)try{this._posthogBrowserClient.capture(e.name,{...n,distinct_id:t})}catch(t){l.debug(`Failed to track PostHog Browser event ${e.name}: ${t}`)}}async trackAgentExecution(e){if(!this.isEnabled)return;let t=new aue(e);await this.capture(t)}async trackServerRunFromServer(e,t){if(!this.isEnabled)return;let n=new oue(gO(e,t));await this.capture(n)}async trackServerInitialize(e){if(!this.isEnabled)return;let t=new sue(e);await this.capture(t)}async trackServerToolCall(e){if(!this.isEnabled)return;let t=new cue(e);await this.capture(t)}async trackServerResourceCall(e){if(!this.isEnabled)return;let t=new lue(e);await this.capture(t)}async trackServerPromptCall(e){if(!this.isEnabled)return;let t=new uue(e);await this.capture(t)}async trackServerContext(e){if(!this.isEnabled)return;let t=new due(e);await this.capture(t)}async trackMCPClientInit(e){if(!this.isEnabled)return;let t=new fue(e);await this.capture(t)}async trackConnectorInit(e){if(!this.isEnabled)return;let t=new pue(e);await this.capture(t)}async trackClientAddServer(e,t){if(!this.isEnabled)return;let n=new mue({serverName:e,serverConfig:t});await this.capture(n)}async trackClientRemoveServer(e){if(!this.isEnabled)return;let t=new hue({serverName:e});await this.capture(t)}async trackUseMcpConnection(e){this.isEnabled&&await this.capture({name:`usemcp_connection`,properties:{url_domain:new URL(e.url).hostname,transport_type:e.transportType,success:e.success,error_type:e.errorType??null,connection_time_ms:e.connectionTimeMs??null,has_oauth:e.hasOAuth,has_sampling:e.hasSampling,has_elicitation:e.hasElicitation}})}async trackUseMcpToolCall(e){this.isEnabled&&await this.capture({name:`usemcp_tool_call`,properties:{tool_name:e.toolName,success:e.success,error_type:e.errorType??null,execution_time_ms:e.executionTimeMs??null}})}async trackUseMcpResourceRead(e){this.isEnabled&&await this.capture({name:`usemcp_resource_read`,properties:{resource_uri_scheme:e.resourceUri.split(`:`)[0],success:e.success,error_type:e.errorType??null}})}identify(e,t){if(this._posthogBrowserClient)try{this._posthogBrowserClient.identify(e,t)}catch(e){l.debug(`Failed to identify user: ${e}`)}}reset(){if(this._posthogBrowserClient)try{this._posthogBrowserClient.reset()}catch(e){l.debug(`Failed to reset user: ${e}`)}this._currUserId=null}flush(){}shutdown(){}async trackPackageDownload(e){}},OO=DO;function _ue(e){OO.getInstance().setSource(e)}a(_ue,`setTelemetrySource`);var vue=class{static{a(this,`BaseConnector`)}client=null;connectionManager=null;toolsCache=null;capabilitiesCache=null;serverInfoCache=null;connected=!1;opts;notificationHandlers=[];rootsCache=[];constructor(e={}){let t={...e,onSampling:e.onSampling??e.samplingCallback,onElicitation:e.onElicitation??e.elicitationCallback};e.samplingCallback&&!e.onSampling&&l.warn(`[BaseConnector] The "samplingCallback" option is deprecated. Use "onSampling" instead.`),e.elicitationCallback&&!e.onElicitation&&console.warn(`[BaseConnector] The "elicitationCallback" option is deprecated. Use "onElicitation" instead.`),this.opts=t,t.roots&&(this.rootsCache=[...t.roots]),t.onNotification&&this.notificationHandlers.push(t.onNotification)}trackConnectorInit(e){let t=this.constructor.name;DO.getInstance().trackConnectorInit({connectorType:t,...e}).catch(e=>l.debug(`Failed to track connector init: ${e}`))}onNotification(e){this.notificationHandlers.push(e),this.client&&this.setupNotificationHandler()}setupNotificationHandler(){if(!this.client)return;let e=a(async e=>{for(let t of this.notificationHandlers)try{await t(e)}catch(e){l.error(`Error in notification handler:`,e)}},`forwardToUserHandlers`);this.client.fallbackNotificationHandler=async t=>{switch(t.method){case`notifications/tools/list_changed`:await this.refreshToolsCache();break;case`notifications/resources/list_changed`:await this.onResourcesListChanged();break;case`notifications/prompts/list_changed`:await this.onPromptsListChanged();break;default:break}await e(t)};let t=this.client._notificationHandlers;for(let n of[`notifications/progress`,`notifications/cancelled`]){let r=t.get(n);r&&t.set(n,async t=>{await r(t),await e(t)})}}async refreshToolsCache(){if(this.client)try{l.debug(`[Auto] Refreshing tools cache due to list_changed notification`),this.toolsCache=(await this.client.listTools()).tools??[],l.debug(`[Auto] Refreshed tools cache: ${this.toolsCache.length} tools`)}catch(e){l.warn(`[Auto] Failed to refresh tools cache:`,e)}}async onResourcesListChanged(){l.debug(`[Auto] Resources list changed - clients should re-fetch if needed`)}async onPromptsListChanged(){l.debug(`[Auto] Prompts list changed - clients should re-fetch if needed`)}async setRoots(e){this.rootsCache=[...e],this.client&&(l.debug(`Sending roots/list_changed notification with ${e.length} root(s)`),await this.client.sendRootsListChanged())}getRoots(){return[...this.rootsCache]}setupRootsHandler(){this.client&&this.client.setRequestHandler(b_,async(e,t)=>(l.debug(`Server requested roots list, returning ${this.rootsCache.length} root(s)`),{roots:this.rootsCache}))}setupSamplingHandler(){if(!this.client){l.debug(`setupSamplingHandler: No client available`);return}let e=this.opts.onSampling??this.opts.samplingCallback;if(!e){l.debug(`setupSamplingHandler: No sampling callback provided`);return}l.debug(`setupSamplingHandler: Setting up sampling request handler`),this.client.setRequestHandler(m_,async(t,n)=>(l.debug(`Server requested sampling, forwarding to callback`),await e(t.params))),l.debug(`setupSamplingHandler: Sampling handler registered successfully`)}setupElicitationHandler(){if(!this.client){l.debug(`setupElicitationHandler: No client available`);return}let e=this.opts.onElicitation??this.opts.elicitationCallback;if(!e){l.debug(`setupElicitationHandler: No elicitation callback provided`);return}l.debug(`setupElicitationHandler: Setting up elicitation request handler`),this.client.setRequestHandler(__,async(t,n)=>(l.debug(`Server requested elicitation, forwarding to callback`),await e(t.params))),l.debug(`setupElicitationHandler: Elicitation handler registered successfully`)}async disconnect(){if(!this.connected){l.debug(`Not connected to MCP implementation`);return}l.debug(`Disconnecting from MCP implementation`),await this.cleanupResources(),this.connected=!1,l.debug(`Disconnected from MCP implementation`)}get isClientConnected(){return this.client!=null}async initialize(e=this.opts.defaultRequestOptions??{}){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`Caching server capabilities & tools`);let t=this.client.getServerCapabilities();this.capabilitiesCache=t||null;let n=this.client.getServerVersion();this.serverInfoCache=n||null;try{this.toolsCache=(await this.client.listTools(void 0,e)).tools??[],l.debug(`Fetched ${this.toolsCache.length} tools from server`)}catch(e){let t=e;t.code===-32601?l.debug(`Server does not implement tools/list, assuming no tools`):l.debug(`Failed to list tools, assuming empty:`,t.message),this.toolsCache=[]}return l.debug(`Server capabilities:`,t),l.debug(`Server info:`,n),t}get tools(){if(!this.toolsCache)throw Error(`MCP client is not initialized; call initialize() first`);return this.toolsCache}get serverCapabilities(){return this.capabilitiesCache||{}}get serverInfo(){return this.serverInfoCache}async callTool(e,t,n){if(!this.client)throw Error(`MCP client is not connected`);let r=n?{...n}:void 0;r?.resetTimeoutOnProgress&&!r.onprogress&&(r.onprogress=()=>{},l.debug(`[BaseConnector] Added onprogress callback for tool '${e}' to enable progressToken`)),l.debug(`Calling tool '${e}' with args`,t);let i=await this.client.callTool({name:e,arguments:t},void 0,r);return l.debug(`Tool '${e}' returned`,i),i}async listTools(e){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`[listTools] Fetching fresh tools from server...`);let t=await this.client.listTools(void 0,e),n=t.tools?[...t.tools]:[];return l.debug(`[listTools] Returned ${n.length} tools:`,n.map(e=>e.name)),n}async listResources(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Listing resources`,e?`with cursor: ${e}`:``),await this.client.listResources({cursor:e},t)}async listAllResources(e){if(!this.client)throw Error(`MCP client is not connected`);if(!this.capabilitiesCache?.resources)return l.debug(`Server does not advertise resources capability, skipping`),{resources:[]};try{l.debug(`Listing all resources (with auto-pagination)`);let t=[],n;do{let r=await this.client.listResources({cursor:n},e);t.push(...r.resources||[]),n=r.nextCursor}while(n);return{resources:t}}catch(e){if(e.code===-32601)return l.debug(`Server advertised resources but method not found`),{resources:[]};throw e}}async listResourceTemplates(e){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Listing resource templates`),await this.client.listResourceTemplates(void 0,e)}async complete(e,t){if(!this.client)throw Error(`MCP client is not connected`);l.debug(`[complete] Requesting completions for:`,e.ref);let n=await this.client.complete(e,t);return l.debug(`[complete] Received ${n.completion.values.length} suggestions`),n}async readResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Reading resource ${e}`),await this.client.readResource({uri:e},t)}async subscribeToResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Subscribing to resource: ${e}`),await this.client.subscribeResource({uri:e},t)}async unsubscribeFromResource(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Unsubscribing from resource: ${e}`),await this.client.unsubscribeResource({uri:e},t)}async listPrompts(){if(!this.client)throw Error(`MCP client is not connected`);if(!this.capabilitiesCache?.prompts)return l.debug(`Server does not advertise prompts capability, skipping`),{prompts:[]};try{return l.debug(`Listing prompts`),await this.client.listPrompts()}catch(e){if(e.code===-32601)return l.debug(`Server advertised prompts but method not found`),{prompts:[]};throw e}}async getPrompt(e,t){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Getting prompt ${e}`),await this.client.getPrompt({name:e,arguments:t})}async request(e,t=null,n){if(!this.client)throw Error(`MCP client is not connected`);return l.debug(`Sending raw request '${e}' with params`,t),await this.client.request({method:e,params:t??{}},void 0,n)}async cleanupResources(){let e=[];if(this.client)try{typeof this.client.close==`function`&&await this.client.close()}catch(t){let n=`Error closing client: ${t}`;l.warn(n),e.push(n)}finally{this.client=null}if(this.connectionManager)try{await this.connectionManager.stop()}catch(t){let n=`Error stopping connection manager: ${t}`;l.warn(n),e.push(n)}finally{this.connectionManager=null}this.toolsCache=null,e.length&&l.warn(`Resource cleanup finished with ${e.length} issue(s)`)}},yue=class{static{a(this,`ConnectionManager`)}_readyPromise;_readyResolver;_donePromise;_doneResolver;_exception=null;_connection=null;_task=null;_abortController=null;constructor(){this.reset()}async start(){if(this.reset(),l.debug(`Starting ${this.constructor.name}`),this._task=this.connectionTask(),await this._readyPromise,this._exception)throw this._exception;if(this._connection===null)throw Error(`Connection was not established`);return this._connection}async stop(){if(this._task&&this._abortController){l.debug(`Cancelling ${this.constructor.name} task`),this._abortController.abort();try{await this._task}catch(e){e instanceof Error&&e.name===`AbortError`?l.debug(`${this.constructor.name} task aborted successfully`):l.warn(`Error stopping ${this.constructor.name} task: ${e}`)}}await this._donePromise,l.debug(`${this.constructor.name} task completed`)}reset(){this._readyPromise=new Promise(e=>this._readyResolver=e),this._donePromise=new Promise(e=>this._doneResolver=e),this._exception=null,this._connection=null,this._task=null,this._abortController=new AbortController}async connectionTask(){l.debug(`Running ${this.constructor.name} task`);try{this._connection=await this.establishConnection(),l.debug(`${this.constructor.name} connected successfully`),this._readyResolver(),await this.waitForAbort()}catch(e){this._exception=e,l.error(`Error in ${this.constructor.name} task: ${e}`),this._readyResolver()}finally{if(this._connection!==null){try{await this.closeConnection(this._connection)}catch(e){l.warn(`Error closing connection in ${this.constructor.name}: ${e}`)}this._connection=null}this._doneResolver()}}async waitForAbort(){return new Promise((e,t)=>{if(!this._abortController)return;let n=this._abortController.signal;if(n.aborted){e();return}let r=a(()=>{n.removeEventListener(`abort`,r),e()},`onAbort`);n.addEventListener(`abort`,r)})}},kO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;var t=class{};e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var n=class extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw Error(`CodeGen: name must be a valid identifier`);this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};e.Name=n;var r=class extends t{constructor(e){super(),this._items=typeof e==`string`?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===``||e===`""`}get str(){return this._str??=this._items.reduce((e,t)=>`${e}${t}`,``)}get names(){return this._names??=this._items.reduce((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e),{})}};e._Code=r,e.nil=new r(``);function i(e,...t){let n=[e[0]],i=0;for(;i<t.length;)s(n,t[i]),n.push(e[++i]);return new r(n)}e._=i;var a=new r(`+`);function o(e,...t){let n=[p(e[0])],i=0;for(;i<t.length;)n.push(a),s(n,t[i]),n.push(a,p(e[++i]));return c(n),new r(n)}e.str=o;function s(e,t){t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push(d(t))}e.addCodeArg=s;function c(e){let t=1;for(;t<e.length-1;){if(e[t]===a){let n=l(e[t-1],e[t+1]);if(n!==void 0){e.splice(t-1,3,n);continue}e[t++]=`+`}t++}}function l(e,t){if(t===`""`)return e;if(e===`""`)return t;if(typeof e==`string`)return t instanceof n||e[e.length-1]!==`"`?void 0:typeof t==`string`?t[0]===`"`?e.slice(0,-1)+t.slice(1):void 0:`${e.slice(0,-1)}${t}"`;if(typeof t==`string`&&t[0]===`"`&&!(e instanceof n))return`"${e}${t.slice(1)}`}function u(e,t){return t.emptyStr()?e:e.emptyStr()?t:o`${e}${t}`}e.strConcat=u;function d(e){return typeof e==`number`||typeof e==`boolean`||e===null?e:p(Array.isArray(e)?e.join(`,`):e)}function f(e){return new r(p(e))}e.stringify=f;function p(e){return JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}e.safeStringify=p;function m(t){return typeof t==`string`&&e.IDENTIFIER.test(t)?new r(`.${t}`):i`[${t}]`}e.getProperty=m;function h(t){if(typeof t==`string`&&e.IDENTIFIER.test(t))return new r(`${t}`);throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}e.getEsmExportName=h;function g(e){return new r(e.toString())}e.regexpCode=g})),AO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;var t=kO(),n=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},r;(function(e){e[e.Started=0]=`Started`,e[e.Completed=1]=`Completed`})(r||(e.UsedValueState=r={})),e.varKinds={const:new t.Name(`const`),let:new t.Name(`let`),var:new t.Name(`var`)};var i=class{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){if((this._parent?._prefixes)?.has(e)||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};e.Scope=i;var a=class extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=(0,t._)`.${new t.Name(n)}[${r}]`}};e.ValueScopeName=a;var o=(0,t._)`\n`;e.ValueScope=class extends i{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o:t.nil}}get(){return this._scope}name(e){return new a(e,this._newName(e))}value(e,t){if(t.ref===void 0)throw Error(`CodeGen: ref must be passed in value`);let n=this.toName(e),{prefix:r}=n,i=t.key??t.ref,a=this._values[r];if(a){let e=a.get(i);if(e)return e}else a=this._values[r]=new Map;a.set(i,n);let o=this._scope[r]||(this._scope[r]=[]),s=o.length;return o[s]=t.ref,n.setValue(t,{property:r,itemIndex:s}),n}getValue(e,t){let n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,n=>{if(n.scopePath===void 0)throw Error(`CodeGen: name "${n}" has no value`);return(0,t._)`${e}${n.scopePath}`})}scopeCode(e=this._values,t,n){return this._reduceValues(e,e=>{if(e.value===void 0)throw Error(`CodeGen: name "${e}" has no value`);return e.value.code},t,n)}_reduceValues(i,a,o={},s){let c=t.nil;for(let l in i){let u=i[l];if(!u)continue;let d=o[l]=o[l]||new Map;u.forEach(i=>{if(d.has(i))return;d.set(i,r.Started);let o=a(i);if(o){let n=this.opts.es5?e.varKinds.var:e.varKinds.const;c=(0,t._)`${c}${n} ${i} = ${o};${this.opts._n}`}else if(o=s?.(i))c=(0,t._)`${c}${o}${this.opts._n}`;else throw new n(i);d.set(i,r.Completed)})}return c}}})),jO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;var t=kO(),n=AO(),r=kO();Object.defineProperty(e,`_`,{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,`str`,{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,`strConcat`,{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,`nil`,{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,`getProperty`,{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,`stringify`,{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,`regexpCode`,{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,`Name`,{enumerable:!0,get:function(){return r.Name}});var i=AO();Object.defineProperty(e,`Scope`,{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(e,`ValueScope`,{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(e,`ValueScopeName`,{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(e,`varKinds`,{enumerable:!0,get:function(){return i.varKinds}}),e.operators={GT:new t._Code(`>`),GTE:new t._Code(`>=`),LT:new t._Code(`<`),LTE:new t._Code(`<=`),EQ:new t._Code(`===`),NEQ:new t._Code(`!==`),NOT:new t._Code(`!`),OR:new t._Code(`||`),AND:new t._Code(`&&`),ADD:new t._Code(`+`)};var a=class{optimizeNodes(){return this}optimizeNames(e,t){return this}},o=class extends a{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){let r=e?n.varKinds.var:this.varKind,i=this.rhs===void 0?``:` = ${this.rhs}`;return`${r} ${this.name}${i};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&=k(this.rhs,e,t),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}},s=class extends a{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=k(this.rhs,e,n),this}get names(){return O(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}},c=class extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},u=class extends a{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:``};`+e}},d=class extends a{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},f=class extends a{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=k(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}},p=class extends a{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((t,n)=>t+n.render(e),``)}optimizeNodes(){let{nodes:e}=this,t=e.length;for(;t--;){let n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:n}=this,r=n.length;for(;r--;){let i=n[r];i.optimizeNames(e,t)||(A(e,i.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>D(e,t.names),{})}},m=class extends p{render(e){return`{`+e._n+super.render(e)+`}`+e._n}},h=class extends p{},g=class extends m{};g.kind=`else`;var _=class e extends m{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+=`else `+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let n=this.else;if(n){let e=n.optimizeNodes();n=this.else=Array.isArray(e)?new g(e):e}if(n)return t===!1?n instanceof e?n:n.nodes:this.nodes.length?this:new e(j(t),n instanceof e?[n]:n.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(e,t){if(this.else=this.else?.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=k(this.condition,e,t),this}get names(){let e=super.names;return O(e,this.condition),this.else&&D(e,this.else.names),e}};_.kind=`if`;var v=class extends m{};v.kind=`for`;var y=class extends v{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=k(this.iteration,e,t),this}get names(){return D(super.names,this.iteration.names)}},b=class extends v{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){let t=e.es5?n.varKinds.var:this.varKind,{name:r,from:i,to:a}=this;return`for(${t} ${r}=${i}; ${r}<${a}; ${r}++)`+super.render(e)}get names(){return O(O(super.names,this.from),this.to)}},x=class extends v{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=k(this.iterable,e,t),this}get names(){return D(super.names,this.iterable.names)}},S=class extends m{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?`async `:``}function ${this.name}(${this.args})`+super.render(e)}};S.kind=`func`;var C=class extends p{render(e){return`return `+super.render(e)}};C.kind=`return`;var w=class extends m{render(e){let t=`try`+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)==null||e.optimizeNodes(),(t=this.finally)==null||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),(n=this.catch)==null||n.optimizeNames(e,t),(r=this.finally)==null||r.optimizeNames(e,t),this}get names(){let e=super.names;return this.catch&&D(e,this.catch.names),this.finally&&D(e,this.finally.names),e}},T=class extends m{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};T.kind=`catch`;var E=class extends m{render(e){return`finally`+super.render(e)}};E.kind=`finally`,e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
439
439
  `:``},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){let i=this._scope.toName(t);return n!==void 0&&r&&(this._constants[i.str]=n),this._leafNode(new o(e,i,n)),i}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new c(t,e.operators.ADD,n))}code(e){return typeof e==`function`?e():e!==t.nil&&this._leafNode(new f(e)),this}object(...e){let n=[`{`];for(let[r,i]of e)n.length>1&&n.push(`,`),n.push(r),(r!==i||this.opts.es5)&&(n.push(`:`),(0,t.addCodeArg)(n,i));return n.push(`}`),new t._Code(n)}if(e,t,n){if(this._blockNode(new _(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw Error(`CodeGen: "else" body without "then" body`);return this}elseIf(e){return this._elseNode(new _(e))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(_,g)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new y(e),t)}forRange(e,t,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.let){let o=this._scope.toName(e);return this._for(new b(a,o,t,r),()=>i(o))}forOf(e,r,i,a=n.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let e=r instanceof t.Name?r:this.var(`_arr`,r);return this.forRange(`_i`,0,(0,t._)`${e}.length`,n=>{this.var(o,(0,t._)`${e}[${n}]`),i(o)})}return this._for(new x(`of`,a,o,r),()=>i(o))}forIn(e,r,i,a=this.opts.es5?n.varKinds.var:n.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,t._)`Object.keys(${r})`,i);let o=this._scope.toName(e);return this._for(new x(`in`,a,o,r),()=>i(o))}endFor(){return this._endBlockNode(v)}label(e){return this._leafNode(new l(e))}break(e){return this._leafNode(new u(e))}return(e){let t=new C;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error(`CodeGen: "return" should have one node`);return this._endBlockNode(C)}try(e,t,n){if(!t&&!n)throw Error(`CodeGen: "try" without "catch" and "finally"`);let r=new w;if(this._blockNode(r),this.code(e),t){let e=this.name(`e`);this._currNode=r.catch=new T(e),t(e)}return n&&(this._currNode=r.finally=new E,this.code(n)),this._endBlockNode(T,E)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error(`CodeGen: not in self-balancing block`);let n=this._nodes.length-t;if(n<0||e!==void 0&&n!==e)throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,i){return this._blockNode(new S(e,n,r)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(S)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof _))throw Error(`CodeGen: "else" without "if"`);return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}};function D(e,t){for(let n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function O(e,n){return n instanceof t._CodeOrName?D(e,n.names):e}function k(e,n,r){if(e instanceof t.Name)return i(e);if(!a(e))return e;return new t._Code(e._items.reduce((e,n)=>(n instanceof t.Name&&(n=i(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e),[]));function i(e){let t=r[e.str];return t===void 0||n[e.str]!==1?e:(delete n[e.str],t)}function a(e){return e instanceof t._Code&&e._items.some(e=>e instanceof t.Name&&n[e.str]===1&&r[e.str]!==void 0)}}function A(e,t){for(let n in t)e[n]=(e[n]||0)-(t[n]||0)}function j(e){return typeof e==`boolean`||typeof e==`number`||e===null?!e:(0,t._)`!${L(e)}`}e.not=j;var M=I(e.operators.AND);function N(...e){return e.reduce(M)}e.and=N;var P=I(e.operators.OR);function F(...e){return e.reduce(P)}e.or=F;function I(e){return(n,r)=>n===t.nil?r:r===t.nil?n:(0,t._)`${L(n)} ${e} ${L(r)}`}function L(e){return e instanceof t.Name?e:(0,t._)`(${e})`}})),MO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.checkStrictMode=e.getErrorPath=e.Type=e.useFunc=e.setEvaluated=e.evaluatedPropsToName=e.mergeEvaluated=e.eachItem=e.unescapeJsonPointer=e.escapeJsonPointer=e.escapeFragment=e.unescapeFragment=e.schemaRefOrVal=e.schemaHasRulesButRef=e.schemaHasRules=e.checkUnknownRules=e.alwaysValidSchema=e.toHash=void 0;var t=jO(),n=kO();function r(e){let t={};for(let n of e)t[n]=!0;return t}e.toHash=r;function i(e,t){return typeof t==`boolean`?t:Object.keys(t).length===0?!0:(a(e,t),!o(t,e.self.RULES.all))}e.alwaysValidSchema=i;function a(e,t=e.schema){let{opts:n,self:r}=e;if(!n.strictSchema||typeof t==`boolean`)return;let i=r.RULES.keywords;for(let n in t)i[n]||x(e,`unknown keyword: "${n}"`)}e.checkUnknownRules=a;function o(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(t[n])return!0;return!1}e.schemaHasRules=o;function s(e,t){if(typeof e==`boolean`)return!e;for(let n in e)if(n!==`$ref`&&t.all[n])return!0;return!1}e.schemaHasRulesButRef=s;function c({topSchemaRef:e,schemaPath:n},r,i,a){if(!a){if(typeof r==`number`||typeof r==`boolean`)return r;if(typeof r==`string`)return(0,t._)`${r}`}return(0,t._)`${e}${n}${(0,t.getProperty)(i)}`}e.schemaRefOrVal=c;function l(e){return f(decodeURIComponent(e))}e.unescapeFragment=l;function u(e){return encodeURIComponent(d(e))}e.escapeFragment=u;function d(e){return typeof e==`number`?`${e}`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.escapeJsonPointer=d;function f(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}e.unescapeJsonPointer=f;function p(e,t){if(Array.isArray(e))for(let n of e)t(n);else t(e)}e.eachItem=p;function m({mergeNames:e,mergeToName:n,mergeValues:r,resultToName:i}){return(a,o,s,c)=>{let l=s===void 0?o:s instanceof t.Name?(o instanceof t.Name?e(a,o,s):n(a,o,s),s):o instanceof t.Name?(n(a,s,o),o):r(o,s);return c===t.Name&&!(l instanceof t.Name)?i(a,l):l}}e.mergeEvaluated={props:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>{e.if((0,t._)`${n} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,t._)`${r} || {}`).code((0,t._)`Object.assign(${r}, ${n})`))}),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>{n===!0?e.assign(r,!0):(e.assign(r,(0,t._)`${r} || {}`),g(e,r,n))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:h}),items:m({mergeNames:(e,n,r)=>e.if((0,t._)`${r} !== true && ${n} !== undefined`,()=>e.assign(r,(0,t._)`${n} === true ? true : ${r} > ${n} ? ${r} : ${n}`)),mergeToName:(e,n,r)=>e.if((0,t._)`${r} !== true`,()=>e.assign(r,n===!0?!0:(0,t._)`${r} > ${n} ? ${r} : ${n}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var(`items`,t)})};function h(e,n){if(n===!0)return e.var(`props`,!0);let r=e.var(`props`,(0,t._)`{}`);return n!==void 0&&g(e,r,n),r}e.evaluatedPropsToName=h;function g(e,n,r){Object.keys(r).forEach(r=>e.assign((0,t._)`${n}${(0,t.getProperty)(r)}`,!0))}e.setEvaluated=g;var _={};function v(e,t){return e.scopeValue(`func`,{ref:t,code:_[t.code]||(_[t.code]=new n._Code(t.code))})}e.useFunc=v;var y;(function(e){e[e.Num=0]=`Num`,e[e.Str=1]=`Str`})(y||(e.Type=y={}));function b(e,n,r){if(e instanceof t.Name){let i=n===y.Num;return r?i?(0,t._)`"[" + ${e} + "]"`:(0,t._)`"['" + ${e} + "']"`:i?(0,t._)`"/" + ${e}`:(0,t._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,t.getProperty)(e).toString():`/`+d(e)}e.getErrorPath=b;function x(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,n===!0)throw Error(t);e.self.logger.warn(t)}}e.checkStrictMode=x})),NO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t=jO();e.default={data:new t.Name(`data`),valCxt:new t.Name(`valCxt`),instancePath:new t.Name(`instancePath`),parentData:new t.Name(`parentData`),parentDataProperty:new t.Name(`parentDataProperty`),rootData:new t.Name(`rootData`),dynamicAnchors:new t.Name(`dynamicAnchors`),vErrors:new t.Name(`vErrors`),errors:new t.Name(`errors`),this:new t.Name(`this`),self:new t.Name(`self`),scope:new t.Name(`scope`),json:new t.Name(`json`),jsonPos:new t.Name(`jsonPos`),jsonLen:new t.Name(`jsonLen`),jsonPart:new t.Name(`jsonPart`)}})),PO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;var t=jO(),n=MO(),r=NO();e.keywordError={message:({keyword:e})=>(0,t.str)`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?(0,t.str)`"${e}" keyword must be ${n} ($data)`:(0,t.str)`"${e}" keyword is invalid ($data)`};function i(n,r=e.keywordError,i,a){let{it:o}=n,{gen:s,compositeRule:u,allErrors:f}=o,p=d(n,r,i);a??(u||f)?c(s,p):l(o,(0,t._)`[${p}]`)}e.reportError=i;function a(t,n=e.keywordError,i){let{it:a}=t,{gen:o,compositeRule:s,allErrors:u}=a;c(o,d(t,n,i)),s||u||l(a,r.default.vErrors)}e.reportExtraError=a;function o(e,n){e.assign(r.default.errors,n),e.if((0,t._)`${r.default.vErrors} !== null`,()=>e.if(n,()=>e.assign((0,t._)`${r.default.vErrors}.length`,n),()=>e.assign(r.default.vErrors,null)))}e.resetErrorsCount=o;function s({gen:e,keyword:n,schemaValue:i,data:a,errsCount:o,it:s}){if(o===void 0)throw Error(`ajv implementation error`);let c=e.name(`err`);e.forRange(`i`,o,r.default.errors,o=>{e.const(c,(0,t._)`${r.default.vErrors}[${o}]`),e.if((0,t._)`${c}.instancePath === undefined`,()=>e.assign((0,t._)`${c}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath))),e.assign((0,t._)`${c}.schemaPath`,(0,t.str)`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign((0,t._)`${c}.schema`,i),e.assign((0,t._)`${c}.data`,a))})}e.extendErrors=s;function c(e,n){let i=e.const(`err`,n);e.if((0,t._)`${r.default.vErrors} === null`,()=>e.assign(r.default.vErrors,(0,t._)`[${i}]`),(0,t._)`${r.default.vErrors}.push(${i})`),e.code((0,t._)`${r.default.errors}++`)}function l(e,n){let{gen:r,validateName:i,schemaEnv:a}=e;a.$async?r.throw((0,t._)`new ${e.ValidationError}(${n})`):(r.assign((0,t._)`${i}.errors`,n),r.return(!1))}var u={keyword:new t.Name(`keyword`),schemaPath:new t.Name(`schemaPath`),params:new t.Name(`params`),propertyName:new t.Name(`propertyName`),message:new t.Name(`message`),schema:new t.Name(`schema`),parentSchema:new t.Name(`parentSchema`)};function d(e,n,r){let{createErrors:i}=e.it;return i===!1?(0,t._)`{}`:f(e,n,r)}function f(e,t,n={}){let{gen:r,it:i}=e,a=[p(i,n),m(e,n)];return h(e,t,a),r.object(...a)}function p({errorPath:e},{instancePath:i}){let a=i?(0,t.str)`${e}${(0,n.getErrorPath)(i,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,a)]}function m({keyword:e,it:{errSchemaPath:r}},{schemaPath:i,parentSchema:a}){let o=a?r:(0,t.str)`${r}/${e}`;return i&&(o=(0,t.str)`${o}${(0,n.getErrorPath)(i,n.Type.Str)}`),[u.schemaPath,o]}function h(e,{params:n,message:i},a){let{keyword:o,data:s,schemaValue:c,it:l}=e,{opts:d,propertyName:f,topSchemaRef:p,schemaPath:m}=l;a.push([u.keyword,o],[u.params,typeof n==`function`?n(e):n||(0,t._)`{}`]),d.messages&&a.push([u.message,typeof i==`function`?i(e):i]),d.verbose&&a.push([u.schema,c],[u.parentSchema,(0,t._)`${p}${m}`],[r.default.data,s]),f&&a.push([u.propertyName,f])}})),bue=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.boolOrEmptySchema=e.topBoolOrEmptySchema=void 0;var t=PO(),n=jO(),r=NO(),i={message:`boolean schema is false`};function a(e){let{gen:t,schema:i,validateName:a}=e;i===!1?s(e,!1):typeof i==`object`&&i.$async===!0?t.return(r.default.data):(t.assign((0,n._)`${a}.errors`,null),t.return(!0))}e.topBoolOrEmptySchema=a;function o(e,t){let{gen:n,schema:r}=e;r===!1?(n.var(t,!1),s(e)):n.var(t,!0)}e.boolOrEmptySchema=o;function s(e,n){let{gen:r,data:a}=e,o={gen:r,keyword:`false schema`,data:a,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,t.reportError)(o,i,void 0,n)}})),FO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getRules=e.isJSONType=void 0;var t=new Set([`string`,`number`,`integer`,`boolean`,`null`,`object`,`array`]);function n(e){return typeof e==`string`&&t.has(e)}e.isJSONType=n;function r(){let e={number:{type:`number`,rules:[]},string:{type:`string`,rules:[]},array:{type:`array`,rules:[]},object:{type:`object`,rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}e.getRules=r})),IO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.shouldUseRule=e.shouldUseGroup=e.schemaHasRulesForType=void 0;function t({schema:e,self:t},r){let i=t.RULES.types[r];return i&&i!==!0&&n(e,i)}e.schemaHasRulesForType=t;function n(e,t){return t.rules.some(t=>r(e,t))}e.shouldUseGroup=n;function r(e,t){return e[t.keyword]!==void 0||t.definition.implements?.some(t=>e[t]!==void 0)}e.shouldUseRule=r})),LO=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reportTypeError=e.checkDataTypes=e.checkDataType=e.coerceAndCheckDataType=e.getJSONTypes=e.getSchemaTypes=e.DataType=void 0;var t=FO(),n=IO(),r=PO(),i=jO(),a=MO(),o;(function(e){e[e.Correct=0]=`Correct`,e[e.Wrong=1]=`Wrong`})(o||(e.DataType=o={}));function s(e){let t=c(e.type);if(t.includes(`null`)){if(e.nullable===!1)throw Error(`type: null contradicts nullable: false`)}else{if(!t.length&&e.nullable!==void 0)throw Error(`"nullable" cannot be used without "type"`);e.nullable===!0&&t.push(`null`)}return t}e.getSchemaTypes=s;function c(e){let n=Array.isArray(e)?e:e?[e]:[];if(n.every(t.isJSONType))return n;throw Error(`type must be JSONType or JSONType[]: `+n.join(`,`))}e.getJSONTypes=c;function l(e,t){let{gen:r,data:i,opts:a}=e,s=d(t,a.coerceTypes),c=t.length>0&&!(s.length===0&&t.length===1&&(0,n.schemaHasRulesForType)(e,t[0]));if(c){let n=h(t,i,a.strictNumbers,o.Wrong);r.if(n,()=>{s.length?f(e,t,s):_(e)})}return c}e.coerceAndCheckDataType=l;var u=new Set([`string`,`number`,`integer`,`boolean`,`null`]);function d(e,t){return t?e.filter(e=>u.has(e)||t===`array`&&e===`array`):[]}function f(e,t,n){let{gen:r,data:a,opts:o}=e,s=r.let(`dataType`,(0,i._)`typeof ${a}`),c=r.let(`coerced`,(0,i._)`undefined`);o.coerceTypes===`array`&&r.if((0,i._)`${s} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>r.assign(a,(0,i._)`${a}[0]`).assign(s,(0,i._)`typeof ${a}`).if(h(t,a,o.strictNumbers),()=>r.assign(c,a))),r.if((0,i._)`${c} !== undefined`);for(let e of n)(u.has(e)||e===`array`&&o.coerceTypes===`array`)&&l(e);r.else(),_(e),r.endIf(),r.if((0,i._)`${c} !== undefined`,()=>{r.assign(a,c),p(e,c)});function l(e){switch(e){case`string`:r.elseIf((0,i._)`${s} == "number" || ${s} == "boolean"`).assign(c,(0,i._)`"" + ${a}`).elseIf((0,i._)`${a} === null`).assign(c,(0,i._)`""`);return;case`number`:r.elseIf((0,i._)`${s} == "boolean" || ${a} === null
440
440
  || (${s} == "string" && ${a} && ${a} == +${a})`).assign(c,(0,i._)`+${a}`);return;case`integer`:r.elseIf((0,i._)`${s} === "boolean" || ${a} === null
441
441
  || (${s} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(c,(0,i._)`+${a}`);return;case`boolean`:r.elseIf((0,i._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(c,!1).elseIf((0,i._)`${a} === "true" || ${a} === 1`).assign(c,!0);return;case`null`:r.elseIf((0,i._)`${a} === "" || ${a} === 0 || ${a} === false`),r.assign(c,null);return;case`array`:r.elseIf((0,i._)`${s} === "string" || ${s} === "number"
@@ -634,7 +634,7 @@ Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Rec
634
634
  for compatibility with Zod schema generation. Both are functionally equivalent for validation.`),QAe=Q.object({method:Q.literal(`ui/open-link`),params:Q.object({url:Q.string().describe(`URL to open in the host's browser`)})});Q.object({isError:Q.boolean().optional().describe(`True if the host failed to open the URL (e.g., due to security policy).`)}).passthrough(),Q.object({isError:Q.boolean().optional().describe(`True if the host rejected or failed to deliver the message.`)}).passthrough();var $Ae=Q.object({method:Q.literal(`ui/notifications/sandbox-proxy-ready`),params:Q.object({})}),P7=Q.object({connectDomains:Q.array(Q.string()).optional().describe(`Origins for network requests (fetch/XHR/WebSocket).`),resourceDomains:Q.array(Q.string()).optional().describe(`Origins for static resources (scripts, images, styles, fonts).`),frameDomains:Q.array(Q.string()).optional().describe(`Origins for nested iframes (frame-src directive).`),baseUriDomains:Q.array(Q.string()).optional().describe(`Allowed base URIs for the document (base-uri directive).`)}),F7=Q.object({camera:Q.object({}).optional().describe("Request camera access (Permission Policy `camera` feature)."),microphone:Q.object({}).optional().describe("Request microphone access (Permission Policy `microphone` feature)."),geolocation:Q.object({}).optional().describe("Request geolocation access (Permission Policy `geolocation` feature)."),clipboardWrite:Q.object({}).optional().describe("Request clipboard write access (Permission Policy `clipboard-write` feature).")}),eje=Q.object({method:Q.literal(`ui/notifications/size-changed`),params:Q.object({width:Q.number().optional().describe(`New width in pixels.`),height:Q.number().optional().describe(`New height in pixels.`)})});Q.object({method:Q.literal(`ui/notifications/tool-input`),params:Q.object({arguments:Q.record(Q.string(),Q.unknown().describe(`Complete tool call arguments as key-value pairs.`)).optional().describe(`Complete tool call arguments as key-value pairs.`)})}),Q.object({method:Q.literal(`ui/notifications/tool-input-partial`),params:Q.object({arguments:Q.record(Q.string(),Q.unknown().describe(`Partial tool call arguments (incomplete, may change).`)).optional().describe(`Partial tool call arguments (incomplete, may change).`)})}),Q.object({method:Q.literal(`ui/notifications/tool-cancelled`),params:Q.object({reason:Q.string().optional().describe(`Optional reason for the cancellation (e.g., "user action", "timeout").`)})});var tje=Q.object({fonts:Q.string().optional()}),nje=Q.object({variables:ZAe.optional().describe(`CSS variables for theming the app.`),css:tje.optional().describe(`CSS blocks that apps can inject.`)});Q.object({method:Q.literal(`ui/resource-teardown`),params:Q.object({})});var rje=Q.record(Q.string(),Q.unknown()),ije=Q.object({text:Q.object({}).optional().describe(`Host supports text content blocks.`),image:Q.object({}).optional().describe(`Host supports image content blocks.`),audio:Q.object({}).optional().describe(`Host supports audio content blocks.`),resource:Q.object({}).optional().describe(`Host supports resource content blocks.`),resourceLink:Q.object({}).optional().describe(`Host supports resource link content blocks.`),structuredContent:Q.object({}).optional().describe(`Host supports structured content.`)}),aje=Q.object({experimental:Q.object({}).optional().describe(`Experimental features (structure TBD).`),openLinks:Q.object({}).optional().describe(`Host supports opening external URLs.`),serverTools:Q.object({listChanged:Q.boolean().optional().describe(`Host supports tools/list_changed notifications.`)}).optional().describe(`Host can proxy tool calls to the MCP server.`),serverResources:Q.object({listChanged:Q.boolean().optional().describe(`Host supports resources/list_changed notifications.`)}).optional().describe(`Host can proxy resource reads to the MCP server.`),logging:Q.object({}).optional().describe(`Host accepts log messages.`),sandbox:Q.object({permissions:F7.optional().describe(`Permissions granted by the host (camera, microphone, geolocation).`),csp:P7.optional().describe(`CSP domains approved by the host.`)}).optional().describe(`Sandbox configuration applied by the host.`),updateModelContext:ije.optional().describe(`Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns.`),message:ije.optional().describe(`Host supports receiving content messages (ui/message) from the view.`)}),oje=Q.object({experimental:Q.object({}).optional().describe(`Experimental features (structure TBD).`),tools:Q.object({listChanged:Q.boolean().optional().describe(`App supports tools/list_changed notifications.`)}).optional().describe(`App exposes MCP-style tools that the host can call.`),availableDisplayModes:Q.array(N7).optional().describe(`Display modes the app supports.`)}),sje=Q.object({method:Q.literal(`ui/notifications/initialized`),params:Q.object({}).optional()});Q.object({csp:P7.optional().describe(`Content Security Policy configuration.`),permissions:F7.optional().describe(`Sandbox permissions requested by the UI.`),domain:Q.string().optional().describe(`Dedicated origin for view sandbox.`),prefersBorder:Q.boolean().optional().describe(`Visual boundary preference - true if UI prefers a visible border.`)});var cje=Q.object({method:Q.literal(`ui/request-display-mode`),params:Q.object({mode:N7.describe(`The display mode being requested.`)})});Q.object({mode:N7.describe(`The display mode that was actually set. May differ from requested if not supported.`)}).passthrough();var lje=Q.union([Q.literal(`model`),Q.literal(`app`)]).describe(`Tool visibility scope - who can access the tool.`);Q.object({resourceUri:Q.string().optional(),visibility:Q.array(lje).optional().describe(`Who can access this tool. Default: ["model", "app"]
635
635
  - "model": Tool visible to and callable by the agent
636
636
  - "app": Tool callable by the app from this server only`)}),Q.object({mimeTypes:Q.array(Q.string()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.')});var uje=Q.object({method:Q.literal(`ui/message`),params:Q.object({role:Q.literal(`user`).describe(`Message role, currently only "user" is supported.`),content:Q.array(r_).describe(`Message content blocks (text, image, etc.).`)})});Q.object({method:Q.literal(`ui/notifications/sandbox-resource-ready`),params:Q.object({html:Q.string().describe(`HTML content to load into the inner iframe.`),sandbox:Q.string().optional().describe(`Optional override for the inner iframe's sandbox attribute.`),csp:P7.optional().describe(`CSP configuration from resource metadata.`),permissions:F7.optional().describe(`Sandbox permissions from resource metadata.`)})}),Q.object({method:Q.literal(`ui/notifications/tool-result`),params:c_.describe(`Standard MCP tool execution result.`)});var dje=Q.object({toolInfo:Q.object({id:cg.optional().describe(`JSON-RPC id of the tools/call request.`),tool:o_.describe(`Tool definition including name, inputSchema, etc.`)}).optional().describe(`Metadata of the tool call that instantiated this App.`),theme:YAe.optional().describe(`Current color theme preference.`),styles:nje.optional().describe(`Style configuration for theming the app.`),displayMode:N7.optional().describe(`How the UI is currently displayed.`),availableDisplayModes:Q.array(N7).optional().describe(`Display modes the host supports.`),containerDimensions:Q.union([Q.object({height:Q.number().describe(`Fixed container height in pixels.`)}),Q.object({maxHeight:Q.union([Q.number(),Q.undefined()]).optional().describe(`Maximum container height in pixels.`)})]).and(Q.union([Q.object({width:Q.number().describe(`Fixed container width in pixels.`)}),Q.object({maxWidth:Q.union([Q.number(),Q.undefined()]).optional().describe(`Maximum container width in pixels.`)})])).optional().describe(`Container dimensions. Represents the dimensions of the iframe or other
637
- container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:Q.string().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:Q.string().optional().describe(`User's timezone in IANA format.`),userAgent:Q.string().optional().describe(`Host application identifier.`),platform:Q.union([Q.literal(`web`),Q.literal(`desktop`),Q.literal(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:Q.object({touch:Q.boolean().optional().describe(`Whether the device supports touch input.`),hover:Q.boolean().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:Q.object({top:Q.number().describe(`Top safe area inset in pixels.`),right:Q.number().describe(`Right safe area inset in pixels.`),bottom:Q.number().describe(`Bottom safe area inset in pixels.`),left:Q.number().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough();Q.object({method:Q.literal(`ui/notifications/host-context-changed`),params:dje.describe(`Partial context update containing only changed fields.`)});var fje=Q.object({method:Q.literal(`ui/update-model-context`),params:Q.object({content:Q.array(r_).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:Q.record(Q.string(),Q.unknown().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),pje=Q.object({method:Q.literal(`ui/initialize`),params:Q.object({appInfo:xg.describe(`App identification (name and version).`),appCapabilities:oje.describe(`Features and capabilities this app provides.`),protocolVersion:Q.string().describe(`Protocol version this app supports.`)})});Q.object({protocolVersion:Q.string().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:xg.describe(`Host application identification and version.`),hostCapabilities:aje.describe(`Features and capabilities provided by the host.`),hostContext:dje.describe(`Rich context about the host environment.`)}).passthrough();var mje=[SQ],hje=class extends T_{_client;_hostInfo;_capabilities;_appCapabilities;_hostContext={};_appInfo;constructor(e,t,n,r){super(r),this._client=e,this._hostInfo=t,this._capabilities=n,this._hostContext=r?.hostContext||{},this.setRequestHandler(pje,e=>this._oninitialize(e)),this.setRequestHandler(wg,(e,t)=>(this.onping?.(e.params,t),{})),this.setRequestHandler(cje,e=>({mode:this._hostContext.displayMode??`inline`}))}getAppCapabilities(){return this._appCapabilities}getAppVersion(){return this._appInfo}onping;set onsizechange(e){this.setNotificationHandler(eje,t=>e(t.params))}set onsandboxready(e){this.setNotificationHandler($Ae,t=>e(t.params))}set oninitialized(e){this.setNotificationHandler(sje,t=>e(t.params))}set onmessage(e){this.setRequestHandler(uje,async(t,n)=>e(t.params,n))}set onopenlink(e){this.setRequestHandler(QAe,async(t,n)=>e(t.params,n))}set onrequestdisplaymode(e){this.setRequestHandler(cje,async(t,n)=>e(t.params,n))}set onloggingmessage(e){this.setNotificationHandler(f_,async t=>{e(t.params)})}set onupdatemodelcontext(e){this.setRequestHandler(fje,async(t,n)=>e(t.params,n))}set oncalltool(e){this.setRequestHandler(l_,async(t,n)=>e(t.params,n))}sendToolListChanged(e={}){return this.notification({method:`notifications/tools/list_changed`,params:e})}set onlistresources(e){this.setRequestHandler(Wg,async(t,n)=>e(t.params,n))}set onlistresourcetemplates(e){this.setRequestHandler(Kg,async(t,n)=>e(t.params,n))}set onreadresource(e){this.setRequestHandler(Yg,async(t,n)=>e(t.params,n))}sendResourceListChanged(e={}){return this.notification({method:`notifications/resources/list_changed`,params:e})}set onlistprompts(e){this.setRequestHandler(Qg,async(t,n)=>e(t.params,n))}sendPromptListChanged(e={}){return this.notification({method:`notifications/prompts/list_changed`,params:e})}assertCapabilityForMethod(e){}assertRequestHandlerCapability(e){}assertNotificationCapability(e){}assertTaskCapability(e){throw Error(`Tasks are not supported in MCP Apps`)}assertTaskHandlerCapability(e){throw Error(`Task handlers are not supported in MCP Apps`)}getCapabilities(){return this._capabilities}async _oninitialize(e){let t=e.params.protocolVersion;return this._appCapabilities=e.params.appCapabilities,this._appInfo=e.params.appInfo,{protocolVersion:mje.includes(t)?t:SQ,hostCapabilities:this.getCapabilities(),hostInfo:this._hostInfo,hostContext:this._hostContext}}setHostContext(e){let t={},n=!1;for(let r of Object.keys(e)){let i=this._hostContext[r],a=e[r];gje(i,a)||(t[r]=a,n=!0)}n&&(this._hostContext=e,this.sendHostContextChange(t))}sendHostContextChange(e){return this.notification({method:`ui/notifications/host-context-changed`,params:e})}sendToolInput(e){return this.notification({method:`ui/notifications/tool-input`,params:e})}sendToolInputPartial(e){return this.notification({method:`ui/notifications/tool-input-partial`,params:e})}sendToolResult(e){return this.notification({method:`ui/notifications/tool-result`,params:e})}sendToolCancelled(e){return this.notification({method:`ui/notifications/tool-cancelled`,params:e})}sendSandboxResourceReady(e){return this.notification({method:`ui/notifications/sandbox-resource-ready`,params:e})}teardownResource(e,t){return this.request({method:`ui/resource-teardown`,params:e},rje,t)}sendResourceTeardown=this.teardownResource;async connect(e){if(this._client){let e=this._client.getServerCapabilities();if(!e)throw Error(`Client server capabilities not available`);e.tools&&(this.oncalltool=async(e,t)=>this._client.request({method:`tools/call`,params:e},c_,{signal:t.signal}),e.tools.listChanged&&this._client.setNotificationHandler(u_,e=>this.sendToolListChanged(e.params))),e.resources&&(this.onlistresources=async(e,t)=>this._client.request({method:`resources/list`,params:e},Gg,{signal:t.signal}),this.onlistresourcetemplates=async(e,t)=>this._client.request({method:`resources/templates/list`,params:e},qg,{signal:t.signal}),this.onreadresource=async(e,t)=>this._client.request({method:`resources/read`,params:e},Xg,{signal:t.signal}),e.resources.listChanged&&this._client.setNotificationHandler(Zg,e=>this.sendResourceListChanged(e.params))),e.prompts&&(this.onlistprompts=async(e,t)=>this._client.request({method:`prompts/list`,params:e},$g,{signal:t.signal}),e.prompts.listChanged&&this._client.setNotificationHandler(a_,e=>this.sendPromptListChanged(e.params)))}return super.connect(e)}};function gje(e,t){return JSON.stringify(e)===JSON.stringify(t)}var _je=class{listeners=new Map;on(e,t){this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t)}off(e,t){this.listeners.get(e)?.delete(t)}emit(e,...t){this.listeners.get(e)?.forEach(e=>{try{e(...t)}catch(e){console.error(`Error in event listener:`,e)}})}},vje=new class{emitter=new _je;bufferByServer=new Map;publish(e){let t=this.bufferByServer.get(e.serverId)??[];t.push(e),t.length>1e3&&t.shift(),this.bufferByServer.set(e.serverId,t),this.emitter.emit(`event`,e)}subscribe(e,t){let n=new Set(e),r=e=>{(n.size===0||n.has(e.serverId))&&t(e)};return this.emitter.on(`event`,r),()=>this.emitter.off(`event`,r)}getBuffer(e,t){let n=new Set(e),r=[];for(let[e,t]of this.bufferByServer.entries())n.size>0&&!n.has(e)||r.push(...t);return r.sort((e,t)=>t.timestamp.localeCompare(e.timestamp)),t===0?[]:!Number.isFinite(t)||t<0?r:r.slice(0,t)}clear(e){if(e&&e.length>0){let t=new Set(e);for(let e of t)this.bufferByServer.delete(e)}else this.bufferByServer.clear()}},yje=new class{listeners=new Set;publish(e){this.listeners.forEach(t=>{try{t(e)}catch(e){console.error(`[ConsoleLogBus] Error in listener:`,e)}})}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}},I7=`allow-scripts allow-same-origin allow-forms allow-popups allow-popups-to-escape-sandbox`,L7={API_ENDPOINTS:{WIDGET_STORE:`/inspector/api/mcp-apps/widget/store`,WIDGET_CONTENT:e=>`/inspector/api/mcp-apps/widget-content/${e}`},VERSION:`0.16.2`,TIMEOUTS:{TOOL_CALL:6e5,ANIMATION:300},DIMENSIONS:{PIP_WIDTH:768,PIP_MAX_WIDTH:700,PIP_HEIGHT:400,DEFAULT_HEIGHT:400}},bje=[{value:`en-US`,label:`English (US)`},{value:`en-GB`,label:`English (UK)`},{value:`en-CA`,label:`English (Canada)`},{value:`en-AU`,label:`English (Australia)`},{value:`en-IN`,label:`English (India)`},{value:`es-ES`,label:`Spanish (Spain)`},{value:`es-MX`,label:`Spanish (Mexico)`},{value:`es-AR`,label:`Spanish (Argentina)`},{value:`es-CO`,label:`Spanish (Colombia)`},{value:`fr-FR`,label:`French (France)`},{value:`fr-CA`,label:`French (Canada)`},{value:`fr-BE`,label:`French (Belgium)`},{value:`fr-CH`,label:`French (Switzerland)`},{value:`de-DE`,label:`German (Germany)`},{value:`de-AT`,label:`German (Austria)`},{value:`de-CH`,label:`German (Switzerland)`},{value:`pt-BR`,label:`Portuguese (Brazil)`},{value:`pt-PT`,label:`Portuguese (Portugal)`},{value:`zh-CN`,label:`Chinese (Simplified, China)`},{value:`zh-TW`,label:`Chinese (Traditional, Taiwan)`},{value:`zh-HK`,label:`Chinese (Traditional, Hong Kong)`},{value:`ja-JP`,label:`Japanese (Japan)`},{value:`ko-KR`,label:`Korean (Korea)`},{value:`ar-SA`,label:`Arabic (Saudi Arabia)`},{value:`ar-EG`,label:`Arabic (Egypt)`},{value:`hi-IN`,label:`Hindi (India)`},{value:`ru-RU`,label:`Russian (Russia)`},{value:`it-IT`,label:`Italian (Italy)`},{value:`nl-NL`,label:`Dutch (Netherlands)`},{value:`nl-BE`,label:`Dutch (Belgium)`},{value:`pl-PL`,label:`Polish (Poland)`},{value:`sv-SE`,label:`Swedish (Sweden)`},{value:`no-NO`,label:`Norwegian (Norway)`},{value:`da-DK`,label:`Danish (Denmark)`},{value:`fi-FI`,label:`Finnish (Finland)`},{value:`tr-TR`,label:`Turkish (Turkey)`},{value:`el-GR`,label:`Greek (Greece)`},{value:`cs-CZ`,label:`Czech (Czech Republic)`},{value:`hu-HU`,label:`Hungarian (Hungary)`},{value:`ro-RO`,label:`Romanian (Romania)`},{value:`th-TH`,label:`Thai (Thailand)`},{value:`vi-VN`,label:`Vietnamese (Vietnam)`},{value:`id-ID`,label:`Indonesian (Indonesia)`},{value:`ms-MY`,label:`Malay (Malaysia)`},{value:`tl-PH`,label:`Tagalog (Philippines)`},{value:`he-IL`,label:`Hebrew (Israel)`},{value:`uk-UA`,label:`Ukrainian (Ukraine)`},{value:`bg-BG`,label:`Bulgarian (Bulgaria)`},{value:`hr-HR`,label:`Croatian (Croatia)`},{value:`sk-SK`,label:`Slovak (Slovakia)`},{value:`sl-SI`,label:`Slovenian (Slovenia)`},{value:`sr-RS`,label:`Serbian (Serbia)`},{value:`bn-BD`,label:`Bengali (Bangladesh)`},{value:`ta-IN`,label:`Tamil (India)`},{value:`te-IN`,label:`Telugu (India)`},{value:`mr-IN`,label:`Marathi (India)`},{value:`ur-PK`,label:`Urdu (Pakistan)`},{value:`fa-IR`,label:`Persian (Iran)`},{value:`sw-KE`,label:`Swahili (Kenya)`}];function xje(){return Intl.supportedValuesOf(`timeZone`).map(e=>({value:e,label:e.replace(/_/g,` `)}))}var Sje=xje();function Cje(e,t){return(0,w.useMemo)(()=>e===`custom`?{maxWidth:t.width,maxHeight:t.height}:{maxWidth:_Q[e].width,maxHeight:_Q[e].height},[e,t])}function wje({theme:e,displayMode:t,maxWidth:n,maxHeight:r,playground:i,deviceType:a,toolCallId:o,toolName:s,toolInput:c,toolOutput:l,toolMetadata:u,tool:d}){return(0,w.useMemo)(()=>({theme:e,displayMode:t,availableDisplayModes:[`inline`,`pip`,`fullscreen`],containerDimensions:{maxHeight:r,maxWidth:n},locale:i.locale,timeZone:i.timeZone,platform:a===`mobile`?`mobile`:`web`,userAgent:`mcp-use-inspector/0.16.2`,deviceCapabilities:i.capabilities,safeAreaInsets:i.safeAreaInsets,styles:{variables:{}},toolInfo:d?{id:o,tool:d}:void 0}),[e,t,r,n,i.locale,i.timeZone,i.capabilities,i.safeAreaInsets,a,o,s,c,l,u,d])}function Tje({title:e,onClose:t,className:n,testId:r}){return(0,S.jsxs)(`div`,{className:H(`fixed top-0 left-0 right-0 z-50 flex items-center justify-between px-4 py-3`,`bg-background/80 backdrop-blur-md border-b border-border`,`supports-[backdrop-filter]:bg-background/60`,n),children:[(0,S.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,S.jsx)(`span`,{className:`text-sm font-semibold text-foreground/80`,children:`MCP Inspector`})}),(0,S.jsx)(`div`,{className:`flex-1 text-center`,children:(0,S.jsx)(`h2`,{className:`text-sm font-medium text-foreground truncate max-w-md mx-auto`,children:e})}),(0,S.jsx)(`div`,{className:`flex items-center`,children:(0,S.jsxs)(`button`,{"data-testid":r,onClick:t,className:H(`flex items-center gap-2 px-3 py-1.5 rounded-md`,`text-sm font-medium`,`bg-background/50 hover:bg-background/80`,`border border-border hover:border-border/80`,`transition-colors`,`focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`),"aria-label":`Exit Fullscreen`,children:[(0,S.jsx)(Vp,{className:`w-4 h-4`}),(0,S.jsx)(`span`,{className:`hidden sm:inline`,children:`Exit Fullscreen`})]})})]})}var Eje=(0,w.forwardRef)(function({html:e,sandbox:t=I7,csp:n,permissions:r,permissive:i,onProxyReady:a,onLoad:o,onMessage:s,className:c,style:l,title:u=`Sandboxed Content`},d){let f=(0,w.useRef)(null),[p,m]=(0,w.useState)(!1),[h]=(0,w.useState)(()=>{let e=window.location.hostname,t=window.location.port,n=window.location.protocol,r=window.__MCP_SANDBOX_ORIGIN__;if(r)return`${r}/inspector/api/mcp-apps/sandbox-proxy?v=${Date.now()}`;let i,a=window.__MCP_DEV_MODE__===!0;i=e===`localhost`||e===`127.0.0.1`||a?e:e.startsWith(`dev.`)?`sandbox-inspector.dev.${e.slice(4)}`:e.startsWith(`inspector.`)?`sandbox-${e}`:`sandbox-inspector.${e}`;let o=t?`:${t}`:``;return`${n}//${i}${o}/inspector/api/mcp-apps/sandbox-proxy?v=${Date.now()}`}),g=(0,w.useMemo)(()=>{try{return new URL(h).origin}catch{return`*`}},[h]);(0,w.useImperativeHandle)(d,()=>({postMessage:e=>{f.current?.contentWindow?.postMessage(e,g)},getIframeElement:()=>f.current}),[g]);let _=(0,w.useCallback)(e=>{if(!(e.origin!==g&&g!==`*`)&&e.source===f.current?.contentWindow){if(e.data?.method===`ui/notifications/sandbox-proxy-ready`||e.data?.type===`sandbox-proxy-ready`){console.log(`[SandboxedIframe] Sandbox proxy ready`),m(!0),a?.();return}s(e)}},[g,a,s]);return(0,w.useEffect)(()=>(window.addEventListener(`message`,_),()=>window.removeEventListener(`message`,_)),[_]),(0,w.useEffect)(()=>{!p||!e||!f.current?.contentWindow||f.current.contentWindow.postMessage({jsonrpc:`2.0`,method:`ui/notifications/sandbox-resource-ready`,params:{html:e,sandbox:t,csp:n,permissions:r,permissive:i}},g)},[p,e,t,n,r,i,g]),(0,S.jsx)(`iframe`,{ref:f,src:h,className:c,style:l,title:u,sandbox:t,allow:`web-share`,onLoad:o})});function R7({children:e,className:t,noWrapper:n}){return n?e:(0,S.jsx)(`div`,{className:H(`bg-zinc-100 flex flex-1 items-center justify-center dark:bg-zinc-900 bg-[radial-gradient(circle,_rgba(0,0,0,0.2)_1px,_transparent_1px)] dark:bg-[radial-gradient(circle,_rgba(255,255,255,0.2)_1px,_transparent_1px)] bg-[length:32px_32px]`,t),children:e})}function Dje(e){let t=e=>e.replace(/['"<>;]/g,``).trim(),n=(e.connectDomains||[]).map(t).filter(Boolean),r=(e.resourceDomains||[]).map(t).filter(Boolean),i=(e.frameDomains||[]).map(t).filter(Boolean),a=(e.baseUriDomains||[]).map(t).filter(Boolean),o=n.length>0?n.join(` `):`'none'`,s=r.length>0?[`data:`,`blob:`,...r].join(` `):`data: blob:`,c=i.length>0?i.join(` `):`'none'`,l=a.length>0?a.join(` `):`'none'`;return[`default-src 'none'`,`script-src 'unsafe-inline' ${s}`,`style-src 'unsafe-inline' ${s}`,`img-src ${s}`,`font-src ${s}`,`media-src ${s}`,`connect-src ${o}`,`frame-src ${c}`,`object-src 'none'`,`base-uri ${l}`].join(`; `)}function Oje({serverId:e,toolCallId:t,toolName:n,toolInput:r,toolOutput:i,toolMetadata:a,invoking:o,invoked:s,partialToolInput:c,resourceUri:l,readResource:u,onSendFollowUp:d,className:f,displayMode:p,onDisplayModeChange:m,noWrapper:h,customProps:g,cancelled:_,onRerun:v}){let y=(0,w.useRef)(null),b=(0,w.useRef)(null),{resolvedTheme:x}=zP(),{servers:C}=yj(),T=C.find(t=>t.id===e),{playground:E,addWidget:D,removeWidget:O,addCspViolation:k,setWidgetModelContext:A,setWidgetDeclaredCsp:j}=gQ(),[M,N]=(0,w.useState)(0),[P,F]=(0,w.useState)(null),[I,L]=(0,w.useState)(null),[ee,te]=(0,w.useState)(!1),[ne,R]=(0,w.useState)(!0),z=(0,w.useRef)(!1),B=(0,w.useRef)(null),re=(0,w.useRef)(null),ie=(0,w.useRef)(null),ae=(0,w.useRef)(0),oe=(0,w.useRef)(void 0),se=(0,w.useRef)(r),ce=(0,w.useRef)(i),le=(0,w.useRef)(g),ue=(0,w.useRef)(u),de=(0,w.useRef)(T),fe=(0,w.useRef)(null);se.current=r,ce.current=i,le.current=g,ue.current=u,de.current=T;let[pe,me]=(0,w.useState)(void 0),[he,ge]=(0,w.useState)(void 0),[_e,ve]=(0,w.useState)(!1),[ye,be]=(0,w.useState)(`inline`),xe=p??ye,Se=(0,w.useRef)(xe);Se.current=xe;let[Ce,we]=(0,w.useState)(L7.DIMENSIONS.DEFAULT_HEIGHT),Te=(0,w.useRef)(null),Ee=E.cspMode,De=E.deviceType,Oe=E.customViewport,{maxWidth:ke,maxHeight:Ae}=Cje(De,Oe),je=De===`mobile`?ke:768,Me=wje({theme:x,displayMode:xe,maxWidth:ke,maxHeight:Ae,playground:E,deviceType:De,toolCallId:t,toolName:n,toolInput:r,toolOutput:i,toolMetadata:a,tool:(0,w.useMemo)(()=>{if(T?.tools)return T.tools.find(e=>e.name===n)},[T,n])});(0,w.useEffect)(()=>{(async()=>{try{let o=await u(l),s=o?.contents?.[0],c=s?.mimeType,d=s?._meta,f=(T?.resources?.find(e=>e.uri===l))?._meta?.ui,p=d?.ui,m=f||p?{...f,...p}:void 0,h=m?.csp;if(!h&&a?.[`openai/widgetCSP`]){let e=a[`openai/widgetCSP`],t={};Array.isArray(e.connect_domains)&&(t.connectDomains=e.connect_domains),Array.isArray(e.resource_domains)&&(t.resourceDomains=e.resource_domains),Array.isArray(e.frame_domains)&&(t.frameDomains=e.frame_domains),Array.isArray(e.base_uri_domains)&&(t.baseUriDomains=e.base_uri_domains),Array.isArray(e.script_directives)&&(t.scriptDirectives=e.script_directives),Object.keys(t).length>0&&(h=t)}let g=m?.permissions,_=m?.prefersBorder??!1,v=await fetch(L7.API_ENDPOINTS.WIDGET_STORE,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({serverId:e,uri:l,toolInput:r,toolOutput:i,toolId:t,toolName:n,theme:x,protocol:`mcp-apps`,cspMode:Ee,resourceData:o,mimeType:c,mcpAppsCsp:h,mcpAppsPermissions:g})});if(!v.ok)throw Error(`Failed to store widget: ${v.statusText}`);let y=L7.API_ENDPOINTS.WIDGET_CONTENT(t),b=await fetch(`${y}?csp_mode=${Ee}`);if(!b.ok){let e=await b.json().catch(()=>({}));throw Error(e.error||`Failed to fetch widget: ${b.statusText}`)}let{html:S,csp:C,permissions:w,mimeTypeWarning:E,mimeTypeValid:O}=await b.json();if(!O){F(E||`Invalid MIME type - SEP-1865 requires "text/html;profile=mcp-app"`);return}L(S),te(!1),z.current||R(!0),me(C),ge(w),ve(_),D(t,{toolName:n,protocol:`mcp-apps`,hostContext:Me});let k=C??h,A=k&&typeof k==`object`?{connectDomains:k.connectDomains,resourceDomains:k.resourceDomains,frameDomains:k.frameDomains,baseUriDomains:k.baseUriDomains}:void 0,M;Ee===`permissive`?M=[`default-src * 'unsafe-inline' 'unsafe-eval' data: blob: filesystem: about:`,`script-src * 'unsafe-inline' 'unsafe-eval' data: blob:`,`style-src * 'unsafe-inline' data: blob:`,`img-src * data: blob: https: http:`,`media-src * data: blob: https: http:`,`font-src * data: blob: https: http:`,`connect-src * data: blob: https: http: ws: wss: about:`,`frame-src * data: blob: https: http: about:`,`object-src * data: blob:`,`base-uri *`,`form-action *`].join(`; `):A&&(M=Dje(A)),j(t,A,M)}catch(e){F(e instanceof Error?e.message:`Failed to prepare widget`)}})()},[e,l,t,n]);let Ne=(0,w.useRef)(Ee);(0,w.useEffect)(()=>{Ne.current!==Ee&&(Ne.current=Ee,z.current&&v&&v())},[Ee,v]),(0,w.useEffect)(()=>{if(M<=1)return;let e=!1;return(async()=>{try{let t=await u(l);if(e)return;let n=t?.contents?.[0]?._meta?.ui;n&&`prefersBorder`in n&&ve(n.prefersBorder??!1)}catch{}})(),()=>{e=!0}},[M,l,u]),(0,w.useEffect)(()=>{if(!I||!y.current)return;let e=y.current.getIframeElement();if(!e?.contentWindow)return;N(0);let n={sessionId:void 0,async start(){},async send(e){y.current?.postMessage(e),vje.publish({serverId:`widget-${t}`,direction:`send`,timestamp:new Date().toISOString(),message:e})},async close(){},onmessage:void 0,onerror:void 0,onclose:void 0},r=new hje(null,{name:`mcp-use-inspector`,version:`0.16.2`},{openLinks:{},serverTools:{},serverResources:{},logging:{},sandbox:{csp:Ee===`permissive`?void 0:pe,permissions:he}},{hostContext:Me});r.oninitialized=()=>{let e=Date.now();if(ae.current>0&&e-ae.current<2e3){clearTimeout(oe.current),oe.current=setTimeout(()=>{let e=le.current,t={};if(e)for(let[n,r]of Object.entries(e))if(typeof r==`string`&&(r.trim().startsWith(`[`)||r.trim().startsWith(`{`)))try{t[n]=JSON.parse(r)}catch{t[n]=r}else t[n]=r;let n={...se.current,...t};r.sendToolInput({arguments:n});let i=ce.current;i&&r.sendToolResult(i)},300);return}ae.current=e,N(e=>e+1)},r.onmessage=async({content:e})=>(e.length>0&&d&&d(e),{}),r.onopenlink=async({url:e})=>(e&&window.open(e,`_blank`,`noopener,noreferrer`),{}),r.oncalltool=async({name:e,arguments:t})=>{let n=de.current;if(!n)throw Error(`Server connection not available`);try{return await n.callTool(e,t||{},{timeout:L7.TIMEOUTS.TOOL_CALL,resetTimeoutOnProgress:!0})}catch(e){throw r.sendToolCancelled({reason:e instanceof Error?e.message:String(e)}),e}},r.onreadresource=async({uri:e})=>(await ue.current(e)).contents||[],r.onlistresources=async()=>{let e=de.current;if(!e)throw Error(`Server connection not available`);return{resources:e.resources}},r.onrequestdisplaymode=async({mode:e})=>{let t=e??`inline`;return m?m(t):be(t),{mode:t}},r.onupdatemodelcontext=async({content:e,structuredContent:n})=>{A(t,{content:e,structuredContent:n});try{localStorage.setItem(`mcp-use:widget-state:${t}`,JSON.stringify(n))}catch{}return{}},r.onloggingmessage=async({level:e,logger:n,data:r})=>{if(yje.publish({level:e,args:Array.isArray(r)?r:[r],timestamp:new Date().toISOString(),url:l}),e===`error`&&typeof window<`u`&&window.parent!==window){let e=typeof r==`string`?r:typeof r?.message==`string`?String(r.message):`MCP Apps runtime error`,n=typeof r?.stack==`string`?String(r.stack):void 0;window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`mcp-apps:logging`,message:e,stack:n,timestamp:Date.now(),toolId:t,url:l},`*`)}return{}},r.onsizechange=({width:t,height:n})=>{if(Se.current!==`inline`)return;let r=e;if(!r||n===void 0&&t===void 0)return;let i=getComputedStyle(r),a=i.boxSizing===`border-box`,o=t,s=n;o!==void 0&&a&&(o+=parseFloat(i.borderLeftWidth)+parseFloat(i.borderRightWidth)),s!==void 0&&a&&(s+=parseFloat(i.borderTopWidth)+parseFloat(i.borderBottomWidth));let c={},l={};o!==void 0&&(c.width=`${r.offsetWidth}px`,r.style.width=l.width=`min(${o}px, 100%)`),s!==void 0&&(c.height=`${r.offsetHeight}px`,r.style.height=l.height=`${s}px`,we(s)),r.animate([c,l],{duration:300,easing:`ease-out`})},b.current=r;let i=!0;r.connect(n).catch(e=>{i&&F(e instanceof Error?e.message:`Failed to connect MCP App`)});let a=r=>{let i=new URL(e.src).origin;if(r.origin===i&&r.source===e.contentWindow){if(r.data?.type===`iframe-console-log`){if(r.data.level===`error`&&typeof window<`u`&&window.parent!==window){let e=(Array.isArray(r.data.args)?r.data.args:[])[0],n=typeof e==`string`?e:typeof e?.message==`string`?e.message:`MCP Apps iframe runtime error`,i=typeof e?.error?.stack==`string`?e.error.stack:typeof e?.stack==`string`?e.stack:void 0;window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`mcp-apps:iframe-console:error`,message:n,stack:i,timestamp:Date.now(),toolId:t,url:typeof r.data.url==`string`?r.data.url:l},`*`)}return}vje.publish({serverId:`widget-${t}`,direction:`receive`,timestamp:new Date().toISOString(),message:r.data}),n.onmessage&&r.data&&n.onmessage(r.data)}};return window.addEventListener(`message`,a),()=>{ae.current=0,clearTimeout(oe.current),i=!1,window.removeEventListener(`message`,a),r&&(async()=>{try{await Promise.race([r.teardownResource({}),new Promise((e,t)=>setTimeout(()=>t(Error(`teardown timeout`)),2e3))])}catch{}finally{r.close().catch(()=>{})}})(),b.current=null,fe.current=null,O(t)}},[I,y,t]),(0,w.useEffect)(()=>{let e=b.current;if(!e||M===0)return;let t=JSON.stringify(Me);fe.current!==t&&(fe.current=t,e.setHostContext(Me))},[Me,M]),(0,w.useEffect)(()=>{let e=b.current;!e||M===0||!c||e.sendToolInputPartial({arguments:c})},[M,c]),(0,w.useEffect)(()=>{let e=b.current;if(!e||M===0)return;let n={};if(g)for(let[e,t]of Object.entries(g))if(typeof t==`string`&&(t.trim().startsWith(`[`)||t.trim().startsWith(`{`)))try{n[e]=JSON.parse(t)}catch{n[e]=t}else n[e]=t;let i={...r,...n},a=JSON.stringify(i),o=`${t}:${M}`;if(!(B.current===o&&re.current===a))if(c){let t=requestAnimationFrame(()=>{e.sendToolInput({arguments:i}),B.current=o,re.current=a});return()=>cancelAnimationFrame(t)}else e.sendToolInput({arguments:i}),B.current=o,re.current=a},[M,r,g,t,c]),(0,w.useEffect)(()=>{let e=b.current;if(!(!e||M===0)&&i){let t=JSON.stringify({content:i?.structuredContent??i,customProps:g??null});if(ie.current===t)return;ie.current=t;let n=i;if(g&&Object.keys(g).length>0){let t={};for(let[e,n]of Object.entries(g))if(typeof n==`string`&&(n.trim().startsWith(`[`)||n.trim().startsWith(`{`)))try{t[e]=JSON.parse(n)}catch{t[e]=n}else t[e]=n;e.sendToolResult({...n,structuredContent:t})}else e.sendToolResult(n)}},[M,i,t,g]),(0,w.useEffect)(()=>{let e=b.current;!e||M===0||!_||e.sendToolCancelled({reason:`Cancelled by user`})},[_,M]);let Pe=(0,w.useCallback)(e=>{if(e.data?.type!==`mcp-apps:csp-violation`)return;let{directive:n,blockedUri:r,sourceFile:i,lineNumber:a,columnNumber:o,effectiveDirective:s,originalPolicy:c,timestamp:l}=e.data;k(t,{directive:n,effectiveDirective:s,blockedUri:r,sourceFile:i,lineNumber:a,columnNumber:o,originalPolicy:c,timestamp:l||Date.now()}),console.warn(`[MCP Apps CSP Violation] ${n}: Blocked ${r}`,i?`at ${i}:${a}:${o}`:``)},[t,k]);(0,w.useEffect)(()=>{let e=()=>{!document.fullscreenElement&&xe===`fullscreen`&&(m?m(`inline`):be(`inline`))};return document.addEventListener(`fullscreenchange`,e),()=>{document.removeEventListener(`fullscreenchange`,e)}},[xe,m]);let Fe=(0,w.useCallback)(async e=>{try{e===`fullscreen`?Te.current&&await Te.current.requestFullscreen():document.fullscreenElement&&await document.exitFullscreen(),m?m(e):be(e)}catch(t){console.error(`[MCPAppsRenderer] Display mode error:`,t),m?m(e):be(e)}},[m]),Ie=ee||M>0;if((0,w.useEffect)(()=>{if(!Ie||!ne)return;let e=setTimeout(()=>{R(!1),z.current=!0},300);return()=>clearTimeout(e)},[Ie,ne]),P)return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsx)(`div`,{className:`border border-red-200/50 dark:border-red-800/50 bg-red-50/30 dark:bg-red-950/20 rounded-lg p-4`,children:(0,S.jsxs)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:[`Failed to load MCP App: `,P]})})});if(!I)return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full`,children:(0,S.jsx)(Uq,{className:`size-5`})})});let Le=xe===`pip`,Re=xe===`fullscreen`,ze=Re?`fixed inset-0 z-40 w-full h-full bg-background flex flex-col`:Le?[`fixed top-4 left-1/2 -translate-x-1/2 z-50 rounded-3xl w-full min-w-[300px] h-[400px]`,`shadow-2xl border overflow-hidden`,`bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80`].join(` `):`flex group flex-1 items-center justify-center`,Be={height:Re||Le?`100%`:`${Ce}px`,width:`100%`,maxWidth:xe===`inline`?`${je}px`:`100%`,transition:Re||Le?void 0:`height 300ms ease-out, width 300ms ease-out`};return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsxs)(`div`,{ref:Te,className:ze,style:Le?{maxWidth:L7.DIMENSIONS.PIP_MAX_WIDTH}:void 0,children:[Re&&(0,S.jsx)(Tje,{title:n,onClose:()=>Fe(`inline`),testId:`debugger-exit-fullscreen-button`}),Le&&(0,S.jsx)(`button`,{"data-testid":`debugger-exit-pip-button`,onClick:()=>Fe(`inline`),className:`absolute left-2 top-2 z-30 flex h-6 w-6 items-center justify-center rounded-md bg-background/80 hover:bg-background border border-zinc-200 dark:border-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-900 dark:hover:text-zinc-100 transition-colors cursor-pointer`,"aria-label":`Close PiP mode`,title:`Close PiP mode`,children:(0,S.jsx)(Vp,{className:`w-4 h-4`})}),(0,S.jsxs)(`div`,{className:H(`flex-1 w-full h-full flex justify-center items-center relative`,Re&&`pt-14`,!Le&&!Re&&(o||s)&&`pt-8`),children:[ne&&(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full z-10`,children:(0,S.jsx)(Uq,{className:`size-5`})}),(0,S.jsxs)(`div`,{className:`relative w-full h-full`,style:{maxWidth:Be.maxWidth},children:[(0,S.jsx)(`div`,{className:`absolute -top-8 left-2 z-10 h-full`,children:!Le&&!Re&&(o||s)&&(0,S.jsxs)(`div`,{className:`whitespace-nowrap`,children:[o&&!i&&(0,S.jsx)(kY,{className:`text-xs `,children:o}),s&&!!i&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:s})]})}),(0,S.jsx)(Eje,{ref:y,html:I,sandbox:I7,csp:pe,permissions:he,permissive:Ee===`permissive`,onLoad:()=>te(!0),onMessage:Pe,title:`MCP App: ${n}`,className:H(xe===`inline`&&`w-full`,xe===`fullscreen`&&`w-full h-full rounded-none`,xe===`pip`&&`w-full h-full`,xe!==`fullscreen`&&_e&&`rounded-lg`,`overflow-hidden relative z-20`,_e&&`border border-zinc-200 dark:border-zinc-700`),style:Be}),` `]})]})]})})}function kje(e,t){for(let n of[`serverId`,`toolCallId`,`toolName`,`resourceUri`,`displayMode`,`cancelled`,`noWrapper`])if(e[n]!==t[n])return!1;return!(e.toolInput!==t.toolInput||e.toolOutput!==t.toolOutput||e.toolMetadata!==t.toolMetadata||e.partialToolInput!==t.partialToolInput||e.customProps!==t.customProps||e.readResource!==t.readResource||e.onSendFollowUp!==t.onSendFollowUp||e.onRerun!==t.onRerun||e.onDisplayModeChange!==t.onDisplayModeChange||e.className!==t.className||e.serverBaseUrl!==t.serverBaseUrl||e.invoking!==t.invoking||e.invoked!==t.invoked)}var z7=(0,w.memo)(Oje,kje),Aje=`
637
+ container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:Q.string().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:Q.string().optional().describe(`User's timezone in IANA format.`),userAgent:Q.string().optional().describe(`Host application identifier.`),platform:Q.union([Q.literal(`web`),Q.literal(`desktop`),Q.literal(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:Q.object({touch:Q.boolean().optional().describe(`Whether the device supports touch input.`),hover:Q.boolean().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:Q.object({top:Q.number().describe(`Top safe area inset in pixels.`),right:Q.number().describe(`Right safe area inset in pixels.`),bottom:Q.number().describe(`Bottom safe area inset in pixels.`),left:Q.number().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough();Q.object({method:Q.literal(`ui/notifications/host-context-changed`),params:dje.describe(`Partial context update containing only changed fields.`)});var fje=Q.object({method:Q.literal(`ui/update-model-context`),params:Q.object({content:Q.array(r_).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:Q.record(Q.string(),Q.unknown().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),pje=Q.object({method:Q.literal(`ui/initialize`),params:Q.object({appInfo:xg.describe(`App identification (name and version).`),appCapabilities:oje.describe(`Features and capabilities this app provides.`),protocolVersion:Q.string().describe(`Protocol version this app supports.`)})});Q.object({protocolVersion:Q.string().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:xg.describe(`Host application identification and version.`),hostCapabilities:aje.describe(`Features and capabilities provided by the host.`),hostContext:dje.describe(`Rich context about the host environment.`)}).passthrough();var mje=[SQ],hje=class extends T_{_client;_hostInfo;_capabilities;_appCapabilities;_hostContext={};_appInfo;constructor(e,t,n,r){super(r),this._client=e,this._hostInfo=t,this._capabilities=n,this._hostContext=r?.hostContext||{},this.setRequestHandler(pje,e=>this._oninitialize(e)),this.setRequestHandler(wg,(e,t)=>(this.onping?.(e.params,t),{})),this.setRequestHandler(cje,e=>({mode:this._hostContext.displayMode??`inline`}))}getAppCapabilities(){return this._appCapabilities}getAppVersion(){return this._appInfo}onping;set onsizechange(e){this.setNotificationHandler(eje,t=>e(t.params))}set onsandboxready(e){this.setNotificationHandler($Ae,t=>e(t.params))}set oninitialized(e){this.setNotificationHandler(sje,t=>e(t.params))}set onmessage(e){this.setRequestHandler(uje,async(t,n)=>e(t.params,n))}set onopenlink(e){this.setRequestHandler(QAe,async(t,n)=>e(t.params,n))}set onrequestdisplaymode(e){this.setRequestHandler(cje,async(t,n)=>e(t.params,n))}set onloggingmessage(e){this.setNotificationHandler(f_,async t=>{e(t.params)})}set onupdatemodelcontext(e){this.setRequestHandler(fje,async(t,n)=>e(t.params,n))}set oncalltool(e){this.setRequestHandler(l_,async(t,n)=>e(t.params,n))}sendToolListChanged(e={}){return this.notification({method:`notifications/tools/list_changed`,params:e})}set onlistresources(e){this.setRequestHandler(Wg,async(t,n)=>e(t.params,n))}set onlistresourcetemplates(e){this.setRequestHandler(Kg,async(t,n)=>e(t.params,n))}set onreadresource(e){this.setRequestHandler(Yg,async(t,n)=>e(t.params,n))}sendResourceListChanged(e={}){return this.notification({method:`notifications/resources/list_changed`,params:e})}set onlistprompts(e){this.setRequestHandler(Qg,async(t,n)=>e(t.params,n))}sendPromptListChanged(e={}){return this.notification({method:`notifications/prompts/list_changed`,params:e})}assertCapabilityForMethod(e){}assertRequestHandlerCapability(e){}assertNotificationCapability(e){}assertTaskCapability(e){throw Error(`Tasks are not supported in MCP Apps`)}assertTaskHandlerCapability(e){throw Error(`Task handlers are not supported in MCP Apps`)}getCapabilities(){return this._capabilities}async _oninitialize(e){let t=e.params.protocolVersion;return this._appCapabilities=e.params.appCapabilities,this._appInfo=e.params.appInfo,{protocolVersion:mje.includes(t)?t:SQ,hostCapabilities:this.getCapabilities(),hostInfo:this._hostInfo,hostContext:this._hostContext}}setHostContext(e){let t={},n=!1;for(let r of Object.keys(e)){let i=this._hostContext[r],a=e[r];gje(i,a)||(t[r]=a,n=!0)}n&&(this._hostContext=e,this.sendHostContextChange(t))}sendHostContextChange(e){return this.notification({method:`ui/notifications/host-context-changed`,params:e})}sendToolInput(e){return this.notification({method:`ui/notifications/tool-input`,params:e})}sendToolInputPartial(e){return this.notification({method:`ui/notifications/tool-input-partial`,params:e})}sendToolResult(e){return this.notification({method:`ui/notifications/tool-result`,params:e})}sendToolCancelled(e){return this.notification({method:`ui/notifications/tool-cancelled`,params:e})}sendSandboxResourceReady(e){return this.notification({method:`ui/notifications/sandbox-resource-ready`,params:e})}teardownResource(e,t){return this.request({method:`ui/resource-teardown`,params:e},rje,t)}sendResourceTeardown=this.teardownResource;async connect(e){if(this._client){let e=this._client.getServerCapabilities();if(!e)throw Error(`Client server capabilities not available`);e.tools&&(this.oncalltool=async(e,t)=>this._client.request({method:`tools/call`,params:e},c_,{signal:t.signal}),e.tools.listChanged&&this._client.setNotificationHandler(u_,e=>this.sendToolListChanged(e.params))),e.resources&&(this.onlistresources=async(e,t)=>this._client.request({method:`resources/list`,params:e},Gg,{signal:t.signal}),this.onlistresourcetemplates=async(e,t)=>this._client.request({method:`resources/templates/list`,params:e},qg,{signal:t.signal}),this.onreadresource=async(e,t)=>this._client.request({method:`resources/read`,params:e},Xg,{signal:t.signal}),e.resources.listChanged&&this._client.setNotificationHandler(Zg,e=>this.sendResourceListChanged(e.params))),e.prompts&&(this.onlistprompts=async(e,t)=>this._client.request({method:`prompts/list`,params:e},$g,{signal:t.signal}),e.prompts.listChanged&&this._client.setNotificationHandler(a_,e=>this.sendPromptListChanged(e.params)))}return super.connect(e)}};function gje(e,t){return JSON.stringify(e)===JSON.stringify(t)}var _je=class{listeners=new Map;on(e,t){this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t)}off(e,t){this.listeners.get(e)?.delete(t)}emit(e,...t){this.listeners.get(e)?.forEach(e=>{try{e(...t)}catch(e){console.error(`Error in event listener:`,e)}})}},vje=new class{emitter=new _je;bufferByServer=new Map;publish(e){let t=this.bufferByServer.get(e.serverId)??[];t.push(e),t.length>1e3&&t.shift(),this.bufferByServer.set(e.serverId,t),this.emitter.emit(`event`,e)}subscribe(e,t){let n=new Set(e),r=e=>{(n.size===0||n.has(e.serverId))&&t(e)};return this.emitter.on(`event`,r),()=>this.emitter.off(`event`,r)}getBuffer(e,t){let n=new Set(e),r=[];for(let[e,t]of this.bufferByServer.entries())n.size>0&&!n.has(e)||r.push(...t);return r.sort((e,t)=>t.timestamp.localeCompare(e.timestamp)),t===0?[]:!Number.isFinite(t)||t<0?r:r.slice(0,t)}clear(e){if(e&&e.length>0){let t=new Set(e);for(let e of t)this.bufferByServer.delete(e)}else this.bufferByServer.clear()}},yje=new class{listeners=new Set;publish(e){this.listeners.forEach(t=>{try{t(e)}catch(e){console.error(`[ConsoleLogBus] Error in listener:`,e)}})}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}},I7=`allow-scripts allow-same-origin allow-forms allow-popups allow-popups-to-escape-sandbox`,L7={API_ENDPOINTS:{WIDGET_STORE:`/inspector/api/mcp-apps/widget/store`,WIDGET_CONTENT:e=>`/inspector/api/mcp-apps/widget-content/${e}`},VERSION:`0.16.2`,TIMEOUTS:{TOOL_CALL:6e5,ANIMATION:300},DIMENSIONS:{PIP_WIDTH:768,PIP_MAX_WIDTH:700,PIP_HEIGHT:400,DEFAULT_HEIGHT:400}},bje=[{value:`en-US`,label:`English (US)`},{value:`en-GB`,label:`English (UK)`},{value:`en-CA`,label:`English (Canada)`},{value:`en-AU`,label:`English (Australia)`},{value:`en-IN`,label:`English (India)`},{value:`es-ES`,label:`Spanish (Spain)`},{value:`es-MX`,label:`Spanish (Mexico)`},{value:`es-AR`,label:`Spanish (Argentina)`},{value:`es-CO`,label:`Spanish (Colombia)`},{value:`fr-FR`,label:`French (France)`},{value:`fr-CA`,label:`French (Canada)`},{value:`fr-BE`,label:`French (Belgium)`},{value:`fr-CH`,label:`French (Switzerland)`},{value:`de-DE`,label:`German (Germany)`},{value:`de-AT`,label:`German (Austria)`},{value:`de-CH`,label:`German (Switzerland)`},{value:`pt-BR`,label:`Portuguese (Brazil)`},{value:`pt-PT`,label:`Portuguese (Portugal)`},{value:`zh-CN`,label:`Chinese (Simplified, China)`},{value:`zh-TW`,label:`Chinese (Traditional, Taiwan)`},{value:`zh-HK`,label:`Chinese (Traditional, Hong Kong)`},{value:`ja-JP`,label:`Japanese (Japan)`},{value:`ko-KR`,label:`Korean (Korea)`},{value:`ar-SA`,label:`Arabic (Saudi Arabia)`},{value:`ar-EG`,label:`Arabic (Egypt)`},{value:`hi-IN`,label:`Hindi (India)`},{value:`ru-RU`,label:`Russian (Russia)`},{value:`it-IT`,label:`Italian (Italy)`},{value:`nl-NL`,label:`Dutch (Netherlands)`},{value:`nl-BE`,label:`Dutch (Belgium)`},{value:`pl-PL`,label:`Polish (Poland)`},{value:`sv-SE`,label:`Swedish (Sweden)`},{value:`no-NO`,label:`Norwegian (Norway)`},{value:`da-DK`,label:`Danish (Denmark)`},{value:`fi-FI`,label:`Finnish (Finland)`},{value:`tr-TR`,label:`Turkish (Turkey)`},{value:`el-GR`,label:`Greek (Greece)`},{value:`cs-CZ`,label:`Czech (Czech Republic)`},{value:`hu-HU`,label:`Hungarian (Hungary)`},{value:`ro-RO`,label:`Romanian (Romania)`},{value:`th-TH`,label:`Thai (Thailand)`},{value:`vi-VN`,label:`Vietnamese (Vietnam)`},{value:`id-ID`,label:`Indonesian (Indonesia)`},{value:`ms-MY`,label:`Malay (Malaysia)`},{value:`tl-PH`,label:`Tagalog (Philippines)`},{value:`he-IL`,label:`Hebrew (Israel)`},{value:`uk-UA`,label:`Ukrainian (Ukraine)`},{value:`bg-BG`,label:`Bulgarian (Bulgaria)`},{value:`hr-HR`,label:`Croatian (Croatia)`},{value:`sk-SK`,label:`Slovak (Slovakia)`},{value:`sl-SI`,label:`Slovenian (Slovenia)`},{value:`sr-RS`,label:`Serbian (Serbia)`},{value:`bn-BD`,label:`Bengali (Bangladesh)`},{value:`ta-IN`,label:`Tamil (India)`},{value:`te-IN`,label:`Telugu (India)`},{value:`mr-IN`,label:`Marathi (India)`},{value:`ur-PK`,label:`Urdu (Pakistan)`},{value:`fa-IR`,label:`Persian (Iran)`},{value:`sw-KE`,label:`Swahili (Kenya)`}];function xje(){return Intl.supportedValuesOf(`timeZone`).map(e=>({value:e,label:e.replace(/_/g,` `)}))}var Sje=xje();function Cje(e,t){return(0,w.useMemo)(()=>e===`custom`?{maxWidth:t.width,maxHeight:t.height}:{maxWidth:_Q[e].width,maxHeight:_Q[e].height},[e,t])}function wje({theme:e,displayMode:t,maxWidth:n,maxHeight:r,playground:i,deviceType:a,toolCallId:o,toolName:s,toolInput:c,toolOutput:l,toolMetadata:u,tool:d}){return(0,w.useMemo)(()=>({theme:e,displayMode:t,availableDisplayModes:[`inline`,`pip`,`fullscreen`],containerDimensions:{maxHeight:r,maxWidth:n},locale:i.locale,timeZone:i.timeZone,platform:a===`mobile`?`mobile`:`web`,userAgent:`mcp-use-inspector/0.16.2`,deviceCapabilities:i.capabilities,safeAreaInsets:i.safeAreaInsets,styles:{variables:{}},toolInfo:d?{id:o,tool:d}:void 0}),[e,t,r,n,i.locale,i.timeZone,i.capabilities,i.safeAreaInsets,a,o,s,c,l,u,d])}function Tje({title:e,onClose:t,className:n,testId:r}){return(0,S.jsxs)(`div`,{className:H(`fixed top-0 left-0 right-0 z-50 flex items-center justify-between px-4 py-3`,`bg-background/80 backdrop-blur-md border-b border-border`,`supports-[backdrop-filter]:bg-background/60`,n),children:[(0,S.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,S.jsx)(`span`,{className:`text-sm font-semibold text-foreground/80`,children:`MCP Inspector`})}),(0,S.jsx)(`div`,{className:`flex-1 text-center`,children:(0,S.jsx)(`h2`,{className:`text-sm font-medium text-foreground truncate max-w-md mx-auto`,children:e})}),(0,S.jsx)(`div`,{className:`flex items-center`,children:(0,S.jsxs)(`button`,{"data-testid":r,onClick:t,className:H(`flex items-center gap-2 px-3 py-1.5 rounded-md`,`text-sm font-medium`,`bg-background/50 hover:bg-background/80`,`border border-border hover:border-border/80`,`transition-colors`,`focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`),"aria-label":`Exit Fullscreen`,children:[(0,S.jsx)(Vp,{className:`w-4 h-4`}),(0,S.jsx)(`span`,{className:`hidden sm:inline`,children:`Exit Fullscreen`})]})})]})}var Eje=(0,w.forwardRef)(function({html:e,sandbox:t=I7,csp:n,permissions:r,permissive:i,onProxyReady:a,onLoad:o,onMessage:s,className:c,style:l,title:u=`Sandboxed Content`},d){let f=(0,w.useRef)(null),[p,m]=(0,w.useState)(!1),[h]=(0,w.useState)(()=>{let e=window.location.hostname,t=window.location.port,n=window.location.protocol,r=window.__MCP_SANDBOX_ORIGIN__;if(r)return`${r}/inspector/api/mcp-apps/sandbox-proxy?v=${Date.now()}`;let i,a=window.__MCP_DEV_MODE__===!0;i=e===`localhost`||e===`127.0.0.1`||a?e:e.startsWith(`dev.`)?`sandbox-inspector.dev.${e.slice(4)}`:e.startsWith(`inspector.`)?`sandbox-${e}`:`sandbox-inspector.${e}`;let o=t?`:${t}`:``;return`${n}//${i}${o}/inspector/api/mcp-apps/sandbox-proxy?v=${Date.now()}`}),g=(0,w.useMemo)(()=>{try{return new URL(h).origin}catch{return`*`}},[h]);(0,w.useImperativeHandle)(d,()=>({postMessage:e=>{f.current?.contentWindow?.postMessage(e,g)},getIframeElement:()=>f.current}),[g]);let _=(0,w.useCallback)(e=>{if(!(e.origin!==g&&g!==`*`)&&e.source===f.current?.contentWindow){if(e.data?.method===`ui/notifications/sandbox-proxy-ready`||e.data?.type===`sandbox-proxy-ready`){console.log(`[SandboxedIframe] Sandbox proxy ready`),m(!0),a?.();return}s(e)}},[g,a,s]);return(0,w.useEffect)(()=>(window.addEventListener(`message`,_),()=>window.removeEventListener(`message`,_)),[_]),(0,w.useEffect)(()=>{!p||!e||!f.current?.contentWindow||f.current.contentWindow.postMessage({jsonrpc:`2.0`,method:`ui/notifications/sandbox-resource-ready`,params:{html:e,sandbox:t,csp:n,permissions:r,permissive:i}},g)},[p,e,t,n,r,i,g]),(0,S.jsx)(`iframe`,{ref:f,src:h,className:c,style:l,title:u,sandbox:t,allow:`web-share`,onLoad:o})});function R7({children:e,className:t,noWrapper:n}){return n?e:(0,S.jsx)(`div`,{className:H(`bg-zinc-100 flex flex-1 items-center justify-center dark:bg-zinc-900 bg-[radial-gradient(circle,_rgba(0,0,0,0.2)_1px,_transparent_1px)] dark:bg-[radial-gradient(circle,_rgba(255,255,255,0.2)_1px,_transparent_1px)] bg-[length:32px_32px]`,t),children:e})}function Dje(e){let t=e=>e.replace(/['"<>;]/g,``).trim(),n=(e.connectDomains||[]).map(t).filter(Boolean),r=(e.resourceDomains||[]).map(t).filter(Boolean),i=(e.frameDomains||[]).map(t).filter(Boolean),a=(e.baseUriDomains||[]).map(t).filter(Boolean),o=n.length>0?n.join(` `):`'none'`,s=r.length>0?[`data:`,`blob:`,...r].join(` `):`data: blob:`,c=i.length>0?i.join(` `):`'none'`,l=a.length>0?a.join(` `):`'none'`;return[`default-src 'none'`,`script-src 'unsafe-inline' ${s}`,`style-src 'unsafe-inline' ${s}`,`img-src ${s}`,`font-src ${s}`,`media-src ${s}`,`connect-src ${o}`,`frame-src ${c}`,`object-src 'none'`,`base-uri ${l}`].join(`; `)}function Oje({serverId:e,toolCallId:t,toolName:n,toolInput:r,toolOutput:i,toolMetadata:a,invoking:o,invoked:s,partialToolInput:c,resourceUri:l,readResource:u,onSendFollowUp:d,className:f,displayMode:p,onDisplayModeChange:m,noWrapper:h,customProps:g,cancelled:_,onRerun:v}){let y=(0,w.useRef)(null),b=(0,w.useRef)(null),{resolvedTheme:x}=zP(),{servers:C}=yj(),T=C.find(t=>t.id===e),{playground:E,addWidget:D,removeWidget:O,addCspViolation:k,setWidgetModelContext:A,setWidgetDeclaredCsp:j}=gQ(),[M,N]=(0,w.useState)(0),[P,F]=(0,w.useState)(null),[I,L]=(0,w.useState)(null),[ee,te]=(0,w.useState)(!1),[ne,R]=(0,w.useState)(!0),z=(0,w.useRef)(!1),B=(0,w.useRef)(null),re=(0,w.useRef)(null),ie=(0,w.useRef)(null),ae=(0,w.useRef)(0),oe=(0,w.useRef)(void 0),se=(0,w.useRef)(r),ce=(0,w.useRef)(i),le=(0,w.useRef)(g),ue=(0,w.useRef)(u),de=(0,w.useRef)(T),fe=(0,w.useRef)(null);se.current=r,ce.current=i,le.current=g,ue.current=u,de.current=T;let[pe,me]=(0,w.useState)(void 0),[he,ge]=(0,w.useState)(void 0),[_e,ve]=(0,w.useState)(!1),[ye,be]=(0,w.useState)(`inline`),xe=p??ye,Se=(0,w.useRef)(xe);Se.current=xe;let[Ce,we]=(0,w.useState)(L7.DIMENSIONS.DEFAULT_HEIGHT),Te=(0,w.useRef)(null),Ee=E.cspMode,De=E.deviceType,Oe=E.customViewport,{maxWidth:ke,maxHeight:Ae}=Cje(De,Oe),je=De===`mobile`?ke:768,Me=wje({theme:x,displayMode:xe,maxWidth:ke,maxHeight:Ae,playground:E,deviceType:De,toolCallId:t,toolName:n,toolInput:r,toolOutput:i,toolMetadata:a,tool:(0,w.useMemo)(()=>{if(T?.tools)return T.tools.find(e=>e.name===n)},[T,n])});(0,w.useEffect)(()=>{(async()=>{try{let o=await u(l),s=o?.contents?.[0],c=s?.mimeType,d=s?._meta,f=(T?.resources?.find(e=>e.uri===l))?._meta?.ui,p=d?.ui,m=f||p?{...f,...p}:void 0,h=m?.csp;if(!h&&a?.[`openai/widgetCSP`]){let e=a[`openai/widgetCSP`],t={};Array.isArray(e.connect_domains)&&(t.connectDomains=e.connect_domains),Array.isArray(e.resource_domains)&&(t.resourceDomains=e.resource_domains),Array.isArray(e.frame_domains)&&(t.frameDomains=e.frame_domains),Array.isArray(e.base_uri_domains)&&(t.baseUriDomains=e.base_uri_domains),Array.isArray(e.script_directives)&&(t.scriptDirectives=e.script_directives),Object.keys(t).length>0&&(h=t)}let g=m?.permissions,_=m?.prefersBorder??!1,v=await fetch(L7.API_ENDPOINTS.WIDGET_STORE,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({serverId:e,uri:l,toolInput:r,toolOutput:i,toolId:t,toolName:n,theme:x,protocol:`mcp-apps`,cspMode:Ee,resourceData:o,mimeType:c,mcpAppsCsp:h,mcpAppsPermissions:g})});if(!v.ok)throw Error(`Failed to store widget: ${v.statusText}`);let y=L7.API_ENDPOINTS.WIDGET_CONTENT(t),b=await fetch(`${y}?csp_mode=${Ee}`);if(!b.ok){let e=await b.json().catch(()=>({}));throw Error(e.error||`Failed to fetch widget: ${b.statusText}`)}let{html:S,csp:C,permissions:w,mimeTypeWarning:E,mimeTypeValid:O}=await b.json();if(!O){F(E||`Invalid MIME type - SEP-1865 requires "text/html;profile=mcp-app"`);return}L(S),te(!1),z.current||R(!0),me(C),ge(w),ve(_),D(t,{toolName:n,protocol:`mcp-apps`,hostContext:Me});let k=C??h,A=k&&typeof k==`object`?{connectDomains:k.connectDomains,resourceDomains:k.resourceDomains,frameDomains:k.frameDomains,baseUriDomains:k.baseUriDomains}:void 0,M;Ee===`permissive`?M=[`default-src * 'unsafe-inline' 'unsafe-eval' data: blob: filesystem: about:`,`script-src * 'unsafe-inline' 'unsafe-eval' data: blob:`,`style-src * 'unsafe-inline' data: blob:`,`img-src * data: blob: https: http:`,`media-src * data: blob: https: http:`,`font-src * data: blob: https: http:`,`connect-src * data: blob: https: http: ws: wss: about:`,`frame-src * data: blob: https: http: about:`,`object-src * data: blob:`,`base-uri *`,`form-action *`].join(`; `):A&&(M=Dje(A)),j(t,A,M)}catch(e){F(e instanceof Error?e.message:`Failed to prepare widget`)}})()},[e,l,t,n]);let Ne=(0,w.useRef)(Ee);(0,w.useEffect)(()=>{Ne.current!==Ee&&(Ne.current=Ee,z.current&&v&&v())},[Ee,v]),(0,w.useEffect)(()=>{if(M<=1)return;let e=!1;return(async()=>{try{let t=await u(l);if(e)return;let n=t?.contents?.[0]?._meta?.ui;n&&`prefersBorder`in n&&ve(n.prefersBorder??!1)}catch{}})(),()=>{e=!0}},[M,l,u]),(0,w.useEffect)(()=>{if(!I||!y.current)return;let e=y.current.getIframeElement();if(!e?.contentWindow)return;N(0);let n={sessionId:void 0,async start(){},async send(e){y.current?.postMessage(e),vje.publish({serverId:`widget-${t}`,direction:`send`,timestamp:new Date().toISOString(),message:e})},async close(){},onmessage:void 0,onerror:void 0,onclose:void 0},r=new hje(null,{name:`mcp-use-inspector`,version:`0.16.2`},{openLinks:{},serverTools:{},serverResources:{},logging:{},sandbox:{csp:Ee===`permissive`?void 0:pe,permissions:he}},{hostContext:Me});r.oninitialized=()=>{let e=Date.now();if(ae.current>0&&e-ae.current<2e3){clearTimeout(oe.current),oe.current=setTimeout(()=>{let e=le.current,t={};if(e)for(let[n,r]of Object.entries(e))if(typeof r==`string`&&(r.trim().startsWith(`[`)||r.trim().startsWith(`{`)))try{t[n]=JSON.parse(r)}catch{t[n]=r}else t[n]=r;let n={...se.current,...t};r.sendToolInput({arguments:n});let i=ce.current;i&&r.sendToolResult(i)},300);return}ae.current=e,N(e=>e+1)},r.onmessage=async({content:e})=>(e.length>0&&d&&d(e),{}),r.onopenlink=async({url:e})=>(e&&window.open(e,`_blank`,`noopener,noreferrer`),{}),r.oncalltool=async({name:e,arguments:t})=>{let n=de.current;if(!n)throw Error(`Server connection not available`);try{return await n.callTool(e,t||{},{timeout:L7.TIMEOUTS.TOOL_CALL,resetTimeoutOnProgress:!0})}catch(e){throw r.sendToolCancelled({reason:e instanceof Error?e.message:String(e)}),e}},r.onreadresource=async({uri:e})=>(await ue.current(e)).contents||[],r.onlistresources=async()=>{let e=de.current;if(!e)throw Error(`Server connection not available`);return{resources:e.resources}},r.onrequestdisplaymode=async({mode:e})=>{let t=e??`inline`;return m?m(t):be(t),{mode:t}},r.onupdatemodelcontext=async({content:e,structuredContent:n})=>{A(t,{content:e,structuredContent:n});try{localStorage.setItem(`mcp-use:widget-state:${t}`,JSON.stringify(n))}catch{}return{}},r.onloggingmessage=async({level:e,logger:n,data:r})=>{if(yje.publish({level:e,args:Array.isArray(r)?r:[r],timestamp:new Date().toISOString(),url:l}),e===`error`&&typeof window<`u`&&window.parent!==window){let e=typeof r==`string`?r:typeof r?.message==`string`?String(r.message):`MCP Apps runtime error`,n=typeof r?.stack==`string`?String(r.stack):void 0;window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`mcp-apps:logging`,message:e,stack:n,timestamp:Date.now(),toolId:t,url:l},`*`)}return{}},r.onsizechange=({width:t,height:n})=>{if(Se.current!==`inline`)return;let r=e;if(!r||n===void 0&&t===void 0)return;let i=getComputedStyle(r),a=i.boxSizing===`border-box`,o=t,s=n;o!==void 0&&a&&(o+=parseFloat(i.borderLeftWidth)+parseFloat(i.borderRightWidth)),s!==void 0&&a&&(s+=parseFloat(i.borderTopWidth)+parseFloat(i.borderBottomWidth));let c={},l={};o!==void 0&&(c.width=`${r.offsetWidth}px`,r.style.width=l.width=`min(${o}px, 100%)`),s!==void 0&&(c.height=`${r.offsetHeight}px`,r.style.height=l.height=`${s}px`,we(s)),r.animate([c,l],{duration:300,easing:`ease-out`})},b.current=r;let i=!0;r.connect(n).catch(e=>{i&&F(e instanceof Error?e.message:`Failed to connect MCP App`)});let a=r=>{let i=new URL(e.src).origin;if(r.origin===i&&r.source===e.contentWindow){if(r.data?.type===`iframe-console-log`){if(r.data.level===`error`&&typeof window<`u`&&window.parent!==window){let e=(Array.isArray(r.data.args)?r.data.args:[])[0],n=typeof e==`string`?e:typeof e?.message==`string`?e.message:`MCP Apps iframe runtime error`,i=typeof e?.error?.stack==`string`?e.error.stack:typeof e?.stack==`string`?e.stack:void 0;window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`mcp-apps:iframe-console:error`,message:n,stack:i,timestamp:Date.now(),toolId:t,url:typeof r.data.url==`string`?r.data.url:l},`*`)}return}vje.publish({serverId:`widget-${t}`,direction:`receive`,timestamp:new Date().toISOString(),message:r.data}),n.onmessage&&r.data&&n.onmessage(r.data)}};return window.addEventListener(`message`,a),()=>{ae.current=0,clearTimeout(oe.current),i=!1,window.removeEventListener(`message`,a),r&&(async()=>{try{await Promise.race([r.teardownResource({}),new Promise((e,t)=>setTimeout(()=>t(Error(`teardown timeout`)),2e3))])}catch{}finally{r.close().catch(()=>{})}})(),b.current=null,fe.current=null,O(t)}},[I,y,t]),(0,w.useEffect)(()=>{let e=b.current;if(!e||M===0)return;let t=JSON.stringify(Me);fe.current!==t&&(fe.current=t,e.setHostContext(Me))},[Me,M]),(0,w.useEffect)(()=>{let e=b.current;!e||M===0||!c||e.sendToolInputPartial({arguments:c})},[M,c]),(0,w.useEffect)(()=>{let e=b.current;if(!e||M===0)return;let n={};if(g)for(let[e,t]of Object.entries(g))if(typeof t==`string`&&(t.trim().startsWith(`[`)||t.trim().startsWith(`{`)))try{n[e]=JSON.parse(t)}catch{n[e]=t}else n[e]=t;let i={...r,...n},a=JSON.stringify(i),o=`${t}:${M}`;if(!(B.current===o&&re.current===a))if(c){let t=requestAnimationFrame(()=>{e.sendToolInput({arguments:i}),B.current=o,re.current=a});return()=>cancelAnimationFrame(t)}else e.sendToolInput({arguments:i}),B.current=o,re.current=a},[M,r,g,t,c]),(0,w.useEffect)(()=>{let e=b.current;if(!(!e||M===0)&&i){let t=JSON.stringify({content:i?.structuredContent??i,customProps:g??null});if(ie.current===t)return;ie.current=t;let n=i;if(g&&Object.keys(g).length>0){let t={};for(let[e,n]of Object.entries(g))if(typeof n==`string`&&(n.trim().startsWith(`[`)||n.trim().startsWith(`{`)))try{t[e]=JSON.parse(n)}catch{t[e]=n}else t[e]=n;e.sendToolResult({...n,structuredContent:t})}else e.sendToolResult(n)}},[M,i,t,g]),(0,w.useEffect)(()=>{let e=b.current;!e||M===0||!_||e.sendToolCancelled({reason:`Cancelled by user`})},[_,M]);let Pe=(0,w.useCallback)(e=>{if(e.data?.type!==`mcp-apps:csp-violation`)return;let{directive:n,blockedUri:r,sourceFile:i,lineNumber:a,columnNumber:o,effectiveDirective:s,originalPolicy:c,timestamp:l}=e.data;k(t,{directive:n,effectiveDirective:s,blockedUri:r,sourceFile:i,lineNumber:a,columnNumber:o,originalPolicy:c,timestamp:l||Date.now()}),console.warn(`[MCP Apps CSP Violation] ${n}: Blocked ${r}`,i?`at ${i}:${a}:${o}`:``)},[t,k]);(0,w.useEffect)(()=>{let e=()=>{!document.fullscreenElement&&xe===`fullscreen`&&(m?m(`inline`):be(`inline`))};return document.addEventListener(`fullscreenchange`,e),()=>{document.removeEventListener(`fullscreenchange`,e)}},[xe,m]);let Fe=(0,w.useCallback)(async e=>{try{e===`fullscreen`?Te.current&&await Te.current.requestFullscreen():document.fullscreenElement&&await document.exitFullscreen(),m?m(e):be(e)}catch(t){console.error(`[MCPAppsRenderer] Display mode error:`,t),m?m(e):be(e)}},[m]),Ie=ee||M>0;if((0,w.useEffect)(()=>{if(!Ie||!ne)return;let e=setTimeout(()=>{R(!1),z.current=!0},300);return()=>clearTimeout(e)},[Ie,ne]),P)return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsx)(`div`,{className:`border border-red-200/50 dark:border-red-800/50 bg-red-50/30 dark:bg-red-950/20 rounded-lg p-4`,children:(0,S.jsxs)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:[`Failed to load MCP App: `,P]})})});if(!I)return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full`,children:(0,S.jsx)(Uq,{className:`size-5`})})});let Le=xe===`pip`,Re=xe===`fullscreen`,ze=Re?`fixed inset-0 z-40 w-full h-full bg-background flex flex-col`:Le?[`fixed top-4 left-1/2 -translate-x-1/2 z-50 rounded-3xl w-full min-w-[300px] h-[400px]`,`shadow-2xl border overflow-hidden`,`bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80`].join(` `):`flex group flex-1 items-center justify-center`,Be={height:Re||Le?`100%`:`${Ce}px`,width:`100%`,maxWidth:xe===`inline`?`${je}px`:`100%`,transition:Re||Le?void 0:`height 300ms ease-out, width 300ms ease-out`};return(0,S.jsx)(R7,{className:f,noWrapper:h,children:(0,S.jsxs)(`div`,{ref:Te,className:ze,style:Le?{maxWidth:L7.DIMENSIONS.PIP_MAX_WIDTH}:void 0,children:[Re&&(0,S.jsx)(Tje,{title:n,onClose:()=>Fe(`inline`),testId:`debugger-exit-fullscreen-button`}),Le&&(0,S.jsx)(`button`,{"data-testid":`debugger-exit-pip-button`,onClick:()=>Fe(`inline`),className:`absolute left-2 top-2 z-30 flex h-6 w-6 items-center justify-center rounded-md bg-background/80 hover:bg-background border border-zinc-200 dark:border-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-900 dark:hover:text-zinc-100 transition-colors cursor-pointer`,"aria-label":`Close PiP mode`,title:`Close PiP mode`,children:(0,S.jsx)(Vp,{className:`w-4 h-4`})}),(0,S.jsxs)(`div`,{className:H(`flex-1 w-full h-full flex justify-center items-center relative`,Re&&`pt-14`,!Le&&!Re&&(o||s)&&`pt-8`),children:[ne&&(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full z-10`,children:(0,S.jsx)(Uq,{className:`size-5`})}),(0,S.jsxs)(`div`,{className:`relative w-full h-full`,style:{maxWidth:Be.maxWidth},children:[(0,S.jsx)(`div`,{className:`absolute -top-8 left-2 z-10 h-full`,children:!Le&&!Re&&(o||s)&&(0,S.jsxs)(`div`,{className:`whitespace-nowrap`,children:[o&&!i&&(0,S.jsx)(kY,{className:`text-xs `,children:o}),s&&!!i&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:s})]})}),(0,S.jsx)(Eje,{ref:y,html:I,sandbox:I7,csp:pe,permissions:he,permissive:Ee===`permissive`,onLoad:()=>te(!0),onMessage:Pe,title:`MCP App: ${n}`,className:H(xe===`inline`&&`w-full`,xe===`fullscreen`&&`w-full h-full rounded-none`,xe===`pip`&&`w-full h-full`,xe!==`fullscreen`&&_e&&`rounded-lg`,`overflow-hidden`,_e&&`border border-zinc-200 dark:border-zinc-700`),style:Be}),` `]})]})]})})}function kje(e,t){for(let n of[`serverId`,`toolCallId`,`toolName`,`resourceUri`,`displayMode`,`cancelled`,`noWrapper`])if(e[n]!==t[n])return!1;return!(e.toolInput!==t.toolInput||e.toolOutput!==t.toolOutput||e.toolMetadata!==t.toolMetadata||e.partialToolInput!==t.partialToolInput||e.customProps!==t.customProps||e.readResource!==t.readResource||e.onSendFollowUp!==t.onSendFollowUp||e.onRerun!==t.onRerun||e.onDisplayModeChange!==t.onDisplayModeChange||e.className!==t.className||e.serverBaseUrl!==t.serverBaseUrl||e.invoking!==t.invoking||e.invoked!==t.invoked)}var z7=(0,w.memo)(Oje,kje),Aje=`
638
638
  (function() {
639
639
  'use strict';
640
640
 
@@ -788,7 +788,7 @@ Example format: {"theme": "dark", "width": "400", "title": "My Widget"}`},{role:
788
788
 
789
789
  Based on this information, suggest 3-5 common customizable properties like theme, dimensions, colors, titles, or configuration options that would be useful for this type of resource. Keep it simple and practical.`}],{text:l}=await W7({config:{provider:e.provider,model:e.model,apiKey:e.apiKey,temperature:e.temperature},messages:c});try{let e=xMe(l);if(e)return Object.entries(e).map(([e,t])=>({key:e,value:typeof t==`object`&&t?JSON.stringify(t):String(t)}));let t=l.split(`
790
790
  `),n=[];for(let e of t){let t=e.match(/^\s*["']?(\w+)["']?\s*[:=]\s*["']?(.+?)["']?\s*,?\s*$/);t&&n.push({key:t[1].trim(),value:t[2].trim().replace(/^["']|["']$/g,``)})}if(n.length>0)return n;throw Error(`Could not parse props from LLM response`)}catch(e){throw console.error(`[usePropsLLM] Failed to parse LLM response:`,e),Error(`Failed to parse props from LLM response: ${l.slice(0,100)}...`)}},[e]),isAvailable:e!==null}}function CMe(e,t){if(!e?.$ref)return e;let n=e.$ref;if(n.startsWith(`#/`)){let r=n.substring(2).split(`/`),i=t;for(let t of r)if(i&&typeof i==`object`&&t in i)i=i[t];else return console.warn(`Could not resolve $ref: ${n}`),e;return i}return e}function wMe(e,t){if(e.anyOf&&Array.isArray(e.anyOf)){let n=e.anyOf.find(e=>e.type!==`null`);if(n)return{...CMe(n,t),nullable:!0}}return e}function TMe(e){return Array.isArray(e.enum)?e.enum:null}function EMe({name:e,schema:t,value:n,onChange:r,required:i=!1,disabled:a=!1,rootSchema:o}){let s=o||t,c=wMe(t,s);c=CMe(c,s);let l=TMe(c),u=c.type===`string`&&l!==null,d=c;return d.type===`object`||d.type===`array`?(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(MN,{htmlFor:e,className:`text-sm font-medium`,children:[e,i&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]}),(0,S.jsx)(uY,{id:e,value:n,onChange:e=>r(e.target.value),placeholder:d?.description||d?.default?JSON.stringify(d.default,null,2):`Enter ${e}`,className:`min-h-[100px]`,disabled:a}),d?.description&&(0,S.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:d.description})]}):u&&l?(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(MN,{htmlFor:e,className:`text-sm font-medium`,children:[e,i&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]}),(0,S.jsxs)(wP,{value:n||``,onValueChange:r,disabled:a,children:[(0,S.jsx)(EP,{id:e,className:`w-full`,children:(0,S.jsx)(TP,{placeholder:d.description||`Select an option`})}),(0,S.jsx)(DP,{children:l.map((e,t)=>(0,S.jsx)(OP,{value:e,children:d.enumNames?.[t]||e},e))})]}),d.description&&(0,S.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:d.description})]}):(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(MN,{htmlFor:e,className:`text-sm font-medium`,children:[e,i&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]}),(0,S.jsx)(kN,{id:e,value:n,onChange:e=>r(e.target.value),placeholder:d?.description||(d?.default===void 0?`Enter ${e}`:String(d.default)),type:d.type===`number`?`number`:`text`,disabled:a}),d?.description&&(0,S.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:d.description})]})}function DMe({open:e,onOpenChange:t,onSave:n,existingPresets:r,resource:i,resourceAnnotations:a,llmConfig:o,editingPreset:s}){let c=(0,w.useMemo)(()=>{let e=e=>{if(!e)return null;if(e.type===`object`&&e.properties)return e;let t=e?.def?.shape??e?._def?.shape;if(t&&typeof t==`object`){let e={},n=[],r=e=>({ZodString:`string`,string:`string`,ZodNumber:`number`,number:`number`,ZodBoolean:`boolean`,boolean:`boolean`,ZodArray:`array`,array:`array`,ZodObject:`object`,object:`object`})[e]||`string`,i=e=>e?.typeName??e?.type??``,a=e=>{let t=e?._def??e?.def??{},n=e,a=i(t);for(;a===`ZodOptional`||a===`ZodDefault`||a===`ZodNullable`;)n=t.innerType??n,a=i(n?._def??n?.def??{});let o=r(a);if(o===`array`){let e=n?._def?.type??n?.def?.element??n?.element;if(e){let t=e._def??e.def??{};if(r(i(t))===`object`){let n=t.shape??e._def?.shape??e.def?.shape??{};return{type:`array`,items:{type:`object`,properties:Object.fromEntries(Object.entries(n).map(([e,t])=>[e,{type:r(i(t?._def??t?.def??{}))}]))}}}}return{type:`array`}}return{type:o}};for(let[r,o]of Object.entries(t)){let t=o,s=t?._def??t?.def??{},c=i(s),l=c===`ZodOptional`||c===`ZodDefault`||c===`ZodNullable`,u=a(t);e[r]={type:u.type,...u.items&&{items:u.items},description:t?.description??s.description},l||n.push(r)}if(Object.keys(e).length>0)return{type:`object`,properties:e,required:n.length>0?n:void 0}}return null},t=a;if(t?.[`mcp-use/propsSchema`])return e(t[`mcp-use/propsSchema`]);let n=i.annotations;return n?.[`mcp-use/propsSchema`]?e(n[`mcp-use/propsSchema`]):null},[a,i.annotations,i.uri,i.name]),l=!!c,[u,d]=(0,w.useState)(``),[f,p]=(0,w.useState)({}),[m,h]=(0,w.useState)([{id:crypto.randomUUID(),key:``,value:``}]),[g,_]=(0,w.useState)(!1),[v,y]=(0,w.useState)(null),{generateProps:b,isAvailable:x}=SMe({llmConfig:o});(0,w.useEffect)(()=>{if(e){if(s)if(d(s.name),l)p(s.props);else{let e=Object.entries(s.props).map(([e,t])=>({id:crypto.randomUUID(),key:e,value:t}));h(e.length>0?e:[{id:crypto.randomUUID(),key:``,value:``}])}else d(``),l?p({}):h([{id:crypto.randomUUID(),key:``,value:``}]);y(null)}},[e,s,l]);let C=()=>{h([...m,{id:crypto.randomUUID(),key:``,value:``}])},T=e=>{m.length>1&&h(m.filter(t=>t.id!==e))},E=(e,t,n)=>{h(m.map(r=>r.id===e?{...r,[t]:n}:r))};return(0,S.jsx)(CN,{open:e,onOpenChange:t,children:(0,S.jsxs)(TN,{className:`sm:max-w-[600px] max-h-[80vh] flex flex-col`,"data-testid":`props-config-dialog`,children:[(0,S.jsxs)(EN,{children:[(0,S.jsx)(DN,{children:s?`Edit Preset`:`Create Props Preset`}),(0,S.jsxs)(ON,{children:[`Configure props for `,i.name||i.uri,`. You can manually add key-value pairs or generate them with AI.`]})]}),(0,S.jsxs)(`div`,{className:`flex-1 overflow-y-auto space-y-4 py-4`,children:[(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsx)(MN,{htmlFor:`preset-name`,children:`Preset Name`}),(0,S.jsx)(kN,{id:`preset-name`,"data-testid":`props-config-preset-name`,value:u,onChange:e=>d(e.target.value),placeholder:`e.g., Dark Theme, Production Config`,disabled:g})]}),(0,S.jsxs)(`div`,{className:`space-y-2 p-3 bg-muted rounded-lg`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsx)(MN,{className:`text-sm font-medium`,children:`Generate with AI`}),x&&(0,S.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`Using `,o?.provider,` (`,o?.model,`)`]})]}),x?(0,S.jsx)(U,{onClick:async()=>{if(!x){BM.error(`LLM not configured`,{description:`Please configure LLM in the Chat tab first.`});return}_(!0),y(null);try{let e=await b({resource:i,resourceAnnotations:a,propsSchema:l?c:void 0});if(l){let t={};for(let n of e)c.properties?.[n.key]&&(t[n.key]=n.value);p(t)}else h(e.map(e=>({id:crypto.randomUUID(),key:e.key,value:e.value})));BM.success(`Props generated successfully`,{description:`Generated ${e.length} prop(s) using ${o?.provider}`})}catch(e){let t=e instanceof Error?e.message:`Failed to generate props`;y(t),BM.error(`LLM Generation Failed`,{description:t})}finally{_(!1)}},disabled:g,size:`sm`,variant:`outline`,className:`w-full`,"data-testid":`props-config-generate-llm-button`,children:g?(0,S.jsxs)(`span`,{"data-testid":`props-config-generating`,className:`flex items-center gap-2`,children:[(0,S.jsx)(rp,{className:`h-4 w-4 mr-2 animate-spin`}),`Generating...`]}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(kp,{className:`h-4 w-4 mr-2`}),`Generate Props with LLM`]})}):(0,S.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`LLM not configured. Please configure LLM in the Chat tab to use this feature.`}),v&&(0,S.jsx)(`p`,{className:`text-xs text-destructive`,"data-testid":`props-config-error`,children:v})]}),(0,S.jsxs)(`div`,{className:`space-y-3`,children:[(0,S.jsx)(MN,{className:`text-sm font-medium`,children:`Props`}),l?(0,S.jsx)(`div`,{className:`space-y-4`,children:Object.entries(c.properties||{}).map(([e,t])=>(0,S.jsx)(EMe,{name:e,schema:t,value:f[e]||``,onChange:t=>p(n=>({...n,[e]:t})),required:c.required?.includes(e),disabled:g,rootSchema:c},e))}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,S.jsxs)(U,{onClick:C,size:`sm`,variant:`ghost`,disabled:g,"data-testid":`props-config-add-prop`,children:[(0,S.jsx)(hp,{className:`h-4 w-4 mr-1`}),`Add Prop`]})}),m.map((e,t)=>(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,S.jsxs)(`div`,{className:`flex-1 grid grid-cols-2 gap-2`,children:[(0,S.jsx)(kN,{placeholder:`Key`,value:e.key,onChange:t=>E(e.id,`key`,t.target.value),disabled:g,"data-testid":`props-config-key-${t}`}),(0,S.jsx)(kN,{placeholder:`Value`,value:e.value,onChange:t=>E(e.id,`value`,t.target.value),disabled:g,"data-testid":`props-config-value-${t}`})]}),(0,S.jsx)(U,{variant:`ghost`,size:`sm`,onClick:()=>T(e.id),disabled:m.length===1||g,className:`h-9 w-9 p-0`,"data-testid":`props-config-remove-${t}`,children:(0,S.jsx)(Rp,{className:`h-4 w-4 text-muted-foreground`})})]},e.id))]})]})]}),(0,S.jsxs)(dhe,{children:[(0,S.jsx)(U,{variant:`outline`,onClick:()=>t(!1),disabled:g,"data-testid":`props-config-cancel-button`,children:`Cancel`}),(0,S.jsxs)(U,{onClick:()=>{if(!u.trim()){BM.error(`Preset name required`,{description:`Please enter a name for this preset.`});return}if(r.find(e=>e.name.toLowerCase()===u.toLowerCase()&&e.id!==s?.id)){BM.error(`Duplicate preset name`,{description:`A preset with this name already exists.`});return}let e;if(l)e={...f};else{e={};for(let t of m)t.key.trim()&&(e[t.key.trim()]=t.value)}if(Object.keys(e).length===0){BM.error(`No props defined`,{description:`Please add at least one prop with a key.`});return}let i={id:s?.id||crypto.randomUUID(),name:u.trim(),props:e};n(i),t(!1),BM.success(s?`Preset updated`:`Preset created`,{description:`Preset "${i.name}" saved successfully.`})},disabled:g,"data-testid":`props-config-save-button`,children:[s?`Update`:`Create`,` Preset`]})]})]})})}function OMe({value:e,onChange:t}){let n=(n,r)=>{let i=parseInt(r,10);isNaN(i)||t({...e,[n]:i})};return(0,S.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Top`}),(0,S.jsx)(kN,{type:`number`,min:`0`,value:e.top,onChange:e=>n(`top`,e.target.value),className:`h-8`,"data-testid":`debugger-safe-area-top`})]}),(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Right`}),(0,S.jsx)(kN,{type:`number`,min:`0`,value:e.right,onChange:e=>n(`right`,e.target.value),className:`h-8`,"data-testid":`debugger-safe-area-right`})]}),(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Bottom`}),(0,S.jsx)(kN,{type:`number`,min:`0`,value:e.bottom,onChange:e=>n(`bottom`,e.target.value),className:`h-8`,"data-testid":`debugger-safe-area-bottom`})]}),(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Left`}),(0,S.jsx)(kN,{type:`number`,min:`0`,value:e.left,onChange:e=>n(`left`,e.target.value),className:`h-8`,"data-testid":`debugger-safe-area-left`})]})]})}var G7=`__no_props__`,K7=`__tool_props__`,kMe=`__create_preset__`;function AMe(e,t){let n=new Set(t?.connectDomains??[]),r=new Set(t?.resourceDomains??[]),i=new Set(t?.frameDomains??[]),a=new Set([`script-src`,`style-src`,`img-src`,`font-src`,`media-src`]);for(let t of e){let e=(t.blockedUri||``).trim();if(!e||e===`(inline)`||e.startsWith(`blob:`)||e.startsWith(`data:`))continue;let o=null;try{o=new URL(e).origin}catch{continue}if(!o)continue;let s=(t.effectiveDirective||t.directive||``).toLowerCase();s===`connect-src`?(n.add(o),o.startsWith(`http://`)?n.add(o.replace(`http://`,`ws://`)):o.startsWith(`https://`)&&n.add(o.replace(`https://`,`wss://`))):a.has(s)?r.add(o):s===`frame-src`&&i.add(o)}let o={connectDomains:Array.from(n).sort(),resourceDomains:Array.from(r).sort()};return i.size>0&&(o.frameDomains=Array.from(i).sort()),o}var jMe=`https://raw.githubusercontent.com/modelcontextprotocol/ext-apps/bcfffb6585ea4fb1e3a9da39fb8911b83399fa71/specification/2026-01-26/apps.mdx`,MMe=`https://mcp-use.com/docs/typescript/server/csp`;function NMe(e,t,n,r){let i=[`Fix the Content Security Policy (CSP) for this MCP Apps widget. The widget has CSP violations that block network requests and resources.`,``,`**References:**`,`- MCP Apps CSP spec: ${jMe}`,`- mcp-use CSP docs: ${MMe}`,``];if(i.push(`**Current declared CSP:**`),e?(i.push(`connectDomains: ${JSON.stringify(e.connectDomains??[])}`),i.push(`resourceDomains: ${JSON.stringify(e.resourceDomains??[])}`),i.push(`frameDomains: ${JSON.stringify(e.frameDomains??[])}`),i.push(`baseUriDomains: ${JSON.stringify(e.baseUriDomains??[])}`)):i.push(`No CSP declared.`),i.push(``),t&&(i.push(`**Effective policy (originalPolicy):**`),i.push("```"),i.push(t),i.push("```"),i.push(``)),n.length>0){i.push(`**Blocked requests (${n.length}):**`);for(let e of n){let t=e.effectiveDirective||e.directive,n=e.blockedUri||`(inline)`;i.push(`- ${t}: ${n}`)}i.push(``)}return r?(i.push(`**Apply this CSP config to fix the violations:**`),i.push(`Add these domains to the widget's CSP metadata (appsSdkMetadata["openai/widgetCSP"] or resource _meta.ui.csp). Use camelCase for MCP Apps (connectDomains, resourceDomains) or snake_case for OpenAI format (connect_domains, resource_domains).`),i.push(``),i.push("```json"),i.push(JSON.stringify({connectDomains:r.connectDomains,resourceDomains:r.resourceDomains,...r.frameDomains?.length?{frameDomains:r.frameDomains}:{}},null,2)),i.push("```")):i.push(`No blocked requests - no fix needed.`),i.join(`
791
- `)}function q7({displayMode:e,onDisplayModeChange:t,toolCallId:n,propsContext:r,resourceUri:i,toolInput:a,resourceAnnotations:o,llmConfig:s,resource:c,onPropsChange:l,requiredProps:u,protocol:d=`mcp-apps`,onUpdateGlobals:f}){let{resolvedTheme:p,setTheme:m}=zP(),{playground:h,updatePlaygroundSettings:g,widgets:_,clearCspViolations:v}=gQ(),y=_.get(n),b=y?.cspViolations??[],x=y?.declaredCsp,C=y?.effectivePolicy,T=b.length>0?AMe(b,x):null,E=b.length>0?NMe(x,C,b,T):``,D=e===`fullscreen`,O=e===`pip`,k=d===`apps-sdk`,{presets:A,activePresetId:j,savePreset:M,deletePreset:N,setActivePreset:P,getActiveProps:F}=Nje(i),[I,L]=(0,w.useState)(!1),ee=!!u?.length&&!j,[te,ne]=(0,w.useState)(()=>ee);(0,w.useEffect)(()=>{ee&&ne(!0)},[ee]);let[R,z]=(0,w.useState)(null),[B,re]=(0,w.useState)(!1),[ie,ae]=(0,w.useState)(!1),[oe,se]=(0,w.useState)(!1),[ce,le]=(0,w.useState)(!1),[ue,de]=(0,w.useState)(!0),[fe,pe]=(0,w.useState)(!0),[me,he]=(0,w.useState)(!0),ge=(0,w.useCallback)(()=>r===`tool`&&a?K7:G7,[r,a]),[_e,ve]=(0,w.useState)(ge());(0,w.useEffect)(()=>{j&&r!==`tool`?ve(j):_e!==G7&&_e!==K7&&ve(ge())},[j,_e,ge,r]),(0,w.useEffect)(()=>{l&&(_e===G7||_e===K7?l(null):j&&l(F()))},[_e,j,a,F,l]);let ye=e=>{if(e===kMe){z(null),L(!0);return}e===G7||e===K7?(P(null),ve(e)):(P(e),ve(e))},be=e=>{M(e),P(e.id),ve(e.id)},xe=(e,t)=>{t.stopPropagation();let n=A.find(t=>t.id===e);n&&(N(e),BM.success(`Preset deleted`,{description:`Preset "${n.name}" has been deleted.`}))},Se=(e,t)=>{t.stopPropagation(),z(e),L(!0)};return(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!D&&!O&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-fullscreen-button`,variant:`outline`,size:`sm`,className:`bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>t(`fullscreen`),children:(0,S.jsx)(ip,{className:`size-4`})})}),(0,S.jsx)(Id,{children:`Enter fullscreen mode`})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-pip-button`,variant:`outline`,size:`sm`,className:`bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>t(`pip`),children:(0,S.jsx)(pp,{className:`size-4`})})}),(0,S.jsx)(Id,{children:`Picture-in-picture`})]})]}),(0,S.jsxs)(CN,{open:B,onOpenChange:re,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-device-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(()=>{switch(h.deviceType){case`mobile`:return(0,S.jsx)(Op,{className:`size-3`});case`tablet`:return(0,S.jsx)(Ip,{className:`size-3`});default:return(0,S.jsx)(lp,{className:`size-3`})}})()})})}),(0,S.jsxs)(Id,{children:[`Device: `,h.deviceType]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[300px]`,"data-testid":`debugger-device-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Device Type`})}),(0,S.jsx)(`div`,{className:`space-y-2`,children:[{value:`desktop`,label:`Desktop`,icon:lp},{value:`mobile`,label:`Mobile`,icon:Op},{value:`tablet`,label:`Tablet`,icon:Ip}].map(e=>{let t=e.icon;return(0,S.jsxs)(U,{"data-testid":`debugger-device-option-${e.value}`,variant:h.deviceType===e.value?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({deviceType:e.value}),k&&f&&f({userAgent:{device:{type:e.value},capabilities:h.capabilities}}),re(!1)},children:[(0,S.jsx)(t,{className:`size-4 mr-2`}),e.label]},e.value)})})]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-theme-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>{let e=p===`dark`?`light`:`dark`;m(e),f&&f({theme:e})},children:p===`dark`?(0,S.jsx)(up,{className:`size-3.5`}):(0,S.jsx)(Fp,{className:`size-3.5`})})}),(0,S.jsxs)(Id,{children:[`Theme: `,p===`dark`?`Dark`:`Light`]})]}),(0,S.jsxs)(CN,{open:ie,onOpenChange:ae,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-locale-button`,variant:`outline`,size:`sm`,className:`h-8 min-w-[50px] px-2 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(`span`,{className:`text-xs font-mono`,children:h.locale})})})}),(0,S.jsx)(Id,{children:`Locale`})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[400px]`,"data-testid":`debugger-locale-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Select Locale`})}),(0,S.jsxs)(IJ,{children:[(0,S.jsx)(LJ,{placeholder:`Search locales...`,"data-testid":`debugger-locale-search`}),(0,S.jsxs)(RJ,{children:[(0,S.jsx)(zJ,{children:`No locale found.`}),(0,S.jsx)(BJ,{children:bje.map(e=>(0,S.jsx)(VJ,{value:e.value,"data-testid":`debugger-locale-option-${e.value}`,onSelect:()=>{g({locale:e.value}),k&&f&&f({locale:e.value}),ae(!1)},children:e.label},e.value))})]})]})]})]}),!k&&(0,S.jsxs)(CN,{open:oe,onOpenChange:se,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-timezone-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(Nf,{className:`size-3.5`})})})}),(0,S.jsxs)(Id,{children:[`Timezone: `,h.timeZone]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[400px]`,"data-testid":`debugger-timezone-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Select Timezone`})}),(0,S.jsxs)(IJ,{children:[(0,S.jsx)(LJ,{placeholder:`Search timezones...`,"data-testid":`debugger-timezone-search`}),(0,S.jsxs)(RJ,{children:[(0,S.jsx)(zJ,{children:`No timezone found.`}),(0,S.jsx)(BJ,{children:Sje.map(e=>(0,S.jsx)(VJ,{value:e.value,"data-testid":`debugger-timezone-option-${e.value.replace(/\//g,`-`)}`,onSelect:()=>{g({timeZone:e.value}),se(!1)},children:e.label},e.value))})]})]})]})]}),(0,S.jsxs)(CN,{open:ce,onOpenChange:le,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsxs)(U,{"data-testid":`debugger-csp-button`,variant:`outline`,size:`sm`,className:`relative h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:[h.cspMode===`permissive`?(0,S.jsx)(Ep,{className:`size-3.5`}):(0,S.jsx)(Tp,{className:`size-3.5`}),b.length>0&&(0,S.jsx)(`span`,{className:`absolute -top-1.5 -right-1.5 flex h-4 min-w-4 items-center justify-center rounded-full px-0.5 text-[9px] font-bold text-white leading-none ${h.cspMode===`permissive`?`bg-yellow-500`:`bg-red-500`}`,children:b.length>99?`99+`:b.length})]})})}),(0,S.jsxs)(Id,{children:[`CSP:`,` `,h.cspMode===`permissive`?`Permissive`:`Declared`,b.length>0&&` · ${b.length} ${h.cspMode===`permissive`?`would be blocked`:`blocked`}`]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[520px] max-h-[85vh] overflow-y-auto`,"data-testid":`debugger-csp-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`CSP Mode`})}),(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(U,{"data-testid":`debugger-csp-option-permissive`,variant:h.cspMode===`permissive`?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({cspMode:`permissive`}),le(!1)},children:[(0,S.jsx)(Ep,{className:`size-4 mr-2`}),(0,S.jsx)(`div`,{className:`flex flex-col items-start`,children:(0,S.jsx)(`span`,{children:`Permissive`})})]}),(0,S.jsxs)(U,{"data-testid":`debugger-csp-option-widget-declared`,variant:h.cspMode===`widget-declared`?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({cspMode:`widget-declared`}),le(!1)},children:[(0,S.jsx)(Tp,{className:`size-4 mr-2`}),(0,S.jsx)(`div`,{className:`flex flex-col items-start`,children:(0,S.jsx)(`span`,{children:`Widget-Declared`})})]})]}),(0,S.jsxs)(`div`,{className:`mt-3 border border-zinc-200 dark:border-zinc-700 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`w-full flex items-center gap-2 px-3 py-2 text-left text-sm font-medium bg-zinc-50 dark:bg-zinc-900/50 hover:bg-zinc-100 dark:hover:bg-zinc-800/50 transition-colors`,onClick:()=>de(e=>!e),children:[ue?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0`}),`Current declared CSP`]}),ue&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0 space-y-1.5 text-xs`,children:x?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`connectDomains:`}),` `,x.connectDomains?.length?JSON.stringify(x.connectDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`resourceDomains:`}),` `,x.resourceDomains?.length?JSON.stringify(x.resourceDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`frameDomains:`}),` `,x.frameDomains?.length?JSON.stringify(x.frameDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`baseUriDomains:`}),` `,x.baseUriDomains?.length?JSON.stringify(x.baseUriDomains):`Not declared`]})]}):(0,S.jsx)(`span`,{className:`text-zinc-500 dark:text-zinc-400`,children:h.cspMode===`permissive`?`Widget-declared (would apply in Widget-Declared mode)`:`No CSP declared`})})]}),(0,S.jsxs)(`div`,{className:`mt-3 border border-zinc-200 dark:border-zinc-700 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 bg-zinc-50 dark:bg-zinc-900/50 hover:bg-zinc-100 dark:hover:bg-zinc-800/50 transition-colors`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`flex-1 flex items-center gap-2 text-left text-sm font-medium min-w-0`,onClick:()=>pe(e=>!e),children:[fe?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0`}),`originalPolicy`]}),C&&(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0 shrink-0`,onClick:async e=>{e.stopPropagation();try{await bj(C),BM.success(`Policy copied to clipboard`)}catch{BM.error(`Failed to copy`)}},"aria-label":`Copy policy`,children:(0,S.jsx)(Lf,{className:`size-3.5`})})}),(0,S.jsx)(Id,{children:`Copy policy`})]})]}),fe&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:C?(0,S.jsx)(`pre`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 whitespace-pre-wrap break-all bg-zinc-50 dark:bg-zinc-900 p-2 rounded border border-zinc-100 dark:border-zinc-800`,children:C}):(0,S.jsx)(`span`,{className:`text-zinc-500 dark:text-zinc-400 text-xs`,children:`No policy data yet (load widget in Widget-Declared mode)`})})]}),b.length>-1&&(0,S.jsxs)(`div`,{className:`mt-3 border border-amber-200 dark:border-amber-800 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 bg-amber-50 dark:bg-amber-950/30 hover:bg-amber-100 dark:hover:bg-amber-900/30 transition-colors`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`flex-1 flex items-center gap-2 text-left text-sm font-medium min-w-0 text-amber-800 dark:text-amber-200`,onClick:()=>he(e=>!e),children:[me?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0 text-amber-600 dark:text-amber-400`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0 text-amber-600 dark:text-amber-400`}),`Prompt for Agents`]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0 shrink-0 text-amber-600 dark:text-amber-400 hover:bg-amber-200/50 dark:hover:bg-amber-800/30`,onClick:async e=>{e.stopPropagation();try{await bj(E),BM.success(`Prompt copied to clipboard`)}catch{BM.error(`Failed to copy`)}},"aria-label":`Copy prompt for agents`,children:(0,S.jsx)(Lf,{className:`size-3.5`})})}),(0,S.jsx)(Id,{children:`Copy prompt for agents`})]})]}),me&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:(0,S.jsx)(`pre`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 whitespace-pre-wrap bg-zinc-50 dark:bg-zinc-900 p-2 rounded border border-zinc-100 dark:border-zinc-800 overflow-x-auto max-h-48 overflow-y-auto`,"data-testid":`debugger-csp-prompt-for-agents`,children:E})})]}),b.length>0&&(0,S.jsxs)(`div`,{className:`mt-3 space-y-2`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`span`,{className:`text-xs font-semibold uppercase tracking-wide ${h.cspMode===`permissive`?`text-yellow-600 dark:text-yellow-400`:`text-red-600 dark:text-red-400`}`,children:[b.length,` `,h.cspMode===`permissive`?`would-be-blocked`:`blocked`,` `,`request`,b.length===1?``:`s`]}),(0,S.jsx)(`button`,{className:`text-xs text-zinc-400 hover:text-zinc-600 dark:hover:text-zinc-200 underline`,onClick:()=>v(n),children:`Clear`})]}),(0,S.jsx)(`div`,{className:`max-h-56 overflow-y-auto space-y-1 rounded border border-zinc-200 dark:border-zinc-700 bg-zinc-50 dark:bg-zinc-900 p-2`,children:b.map((e,t)=>(0,S.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-1 border-b border-zinc-100 dark:border-zinc-800 last:border-0`,children:[(0,S.jsx)(`div`,{className:`flex items-center gap-1.5`,children:(0,S.jsx)(`span`,{className:`shrink-0 rounded bg-red-100 dark:bg-red-900/40 px-1 py-0.5 text-[10px] font-mono font-semibold text-red-700 dark:text-red-300`,children:e.effectiveDirective||e.directive})}),(0,S.jsx)(`span`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 break-all leading-snug`,children:e.blockedUri||`(inline)`})]},t))})]})]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-touch-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900 ${h.capabilities.touch?`border-blue-500 dark:border-blue-400`:``}`,onClick:()=>{let e={...h.capabilities,touch:!h.capabilities.touch};g({capabilities:e}),k&&f&&f({userAgent:{device:{type:h.deviceType},capabilities:e}})},children:(0,S.jsx)(gp,{className:`size-3.5 ${h.capabilities.touch?`text-blue-600 dark:text-blue-400`:``}`})})}),(0,S.jsxs)(Id,{children:[`Touch: `,h.capabilities.touch?`Enabled`:`Disabled`]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-hover-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900 ${h.capabilities.hover?`border-blue-500 dark:border-blue-400`:``}`,onClick:()=>{let e={...h.capabilities,hover:!h.capabilities.hover};g({capabilities:e}),k&&f&&f({userAgent:{device:{type:h.deviceType},capabilities:e}})},children:(0,S.jsx)(dp,{className:`size-3.5 ${h.capabilities.hover?`text-blue-600 dark:text-blue-400`:``}`})})}),(0,S.jsxs)(Id,{children:[`Hover: `,h.capabilities.hover?`Enabled`:`Disabled`]})]}),(0,S.jsxs)(iY,{children:[(0,S.jsx)(aY,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-safe-area-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(jp,{className:`size-3.5`})})}),(0,S.jsx)(oY,{className:`w-64 p-3`,"data-testid":`debugger-safe-area-dialog`,children:(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsx)(`label`,{className:`text-xs font-medium`,children:`Safe Area Insets`}),(0,S.jsx)(OMe,{value:h.safeAreaInsets,onChange:e=>{g({safeAreaInsets:e}),k&&f&&f({safeArea:{insets:e}})}})]})})]}),r===`tool`?(0,S.jsxs)(CN,{children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,"data-testid":`debugger-props-button`,children:(0,S.jsx)(bf,{className:`size-3.5`})})})}),(0,S.jsx)(Id,{children:`View Tool Props`})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[600px]`,"data-testid":`debugger-props-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Tool Props`})}),(0,S.jsx)(`div`,{className:`overflow-auto max-h-[60vh] rounded-md bg-gray-50 dark:bg-zinc-900 border border-gray-200 dark:border-zinc-700 p-3`,children:(0,S.jsx)(HV,{data:a??{},filename:`tool-props.json`})})]})]}):(0,S.jsxs)(iY,{open:te,onOpenChange:ne,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(aY,{asChild:!0,children:(0,S.jsx)(U,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 backdrop-blur-sm shadow-sm ${ee?`bg-amber-50 dark:bg-amber-950/40 border-amber-300 dark:border-amber-700 hover:bg-amber-100 dark:hover:bg-amber-900/50 animate-pulse`:`bg-white/90 dark:bg-zinc-900/90 hover:bg-white dark:hover:bg-zinc-900`}`,"data-testid":`debugger-props-button`,children:(0,S.jsx)(bf,{className:`size-3.5 ${ee?`text-amber-500`:``}`})})})}),(0,S.jsxs)(Id,{children:[`Props:`,` `,_e===G7?`No Props`:_e===K7?`Tool Props`:A.find(e=>e.id===_e)?.name||`Custom`]})]}),(0,S.jsxs)(oY,{className:`w-64 p-2`,"data-testid":`debugger-props-popover`,children:[ee&&(0,S.jsxs)(`div`,{className:`mb-2 rounded-md border border-amber-200 dark:border-amber-800/50 bg-amber-50 dark:bg-amber-950/30 px-3 py-2`,children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-amber-700 dark:text-amber-300 mb-0.5`,children:`Props required to render this widget:`}),(0,S.jsx)(`p`,{className:`text-xs font-mono text-amber-600 dark:text-amber-400`,children:u.join(`, `)}),(0,S.jsx)(`p`,{className:`text-xs text-amber-500 dark:text-amber-400 mt-1`,children:`Create a preset below to set them.`})]}),(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(U,{variant:_e===G7?`secondary`:`ghost`,size:`sm`,className:`w-full justify-start`,onClick:()=>ye(G7),"data-testid":`debugger-props-no-props`,children:`No Props`}),A.map(e=>(0,S.jsxs)(`div`,{className:`relative group flex items-center`,children:[(0,S.jsx)(U,{variant:_e===e.id?`secondary`:`ghost`,size:`sm`,className:`w-full justify-start pr-14`,onClick:()=>ye(e.id),"data-testid":`debugger-props-preset-${e.id}`,children:e.name}),(0,S.jsxs)(`div`,{className:`absolute right-2 flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:[(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-6 w-6 p-0`,onClick:t=>Se(e,t),"data-testid":`debugger-props-edit-${e.id}`,children:(0,S.jsx)(wp,{className:`h-3 w-3`})}),(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-6 w-6 p-0`,onClick:t=>xe(e.id,t),"data-testid":`debugger-props-delete-${e.id}`,children:(0,S.jsx)(Rp,{className:`h-3 w-3 text-destructive`})})]})]},e.id)),(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`w-full justify-start text-primary`,onClick:()=>ye(kMe),"data-testid":`debugger-props-create-preset`,children:`+ Create Preset...`})]})]})]}),(0,S.jsx)(Uje,{iframeId:n,enabled:!0}),c&&(0,S.jsx)(DMe,{open:I,onOpenChange:L,onSave:be,existingPresets:A,resource:c,resourceAnnotations:o,llmConfig:s||null,editingPreset:R})]})}function PMe({children:e,className:t,noWrapper:n}){return n?e:(0,S.jsx)(`div`,{className:H(`bg-zinc-100 dark:bg-zinc-900 bg-[radial-gradient(circle,_rgba(0,0,0,0.2)_1px,_transparent_1px)] dark:bg-[radial-gradient(circle,_rgba(255,255,255,0.2)_1px,_transparent_1px)] bg-[length:32px_32px]`,t),children:e})}function FMe({componentUrl:e,toolName:t,toolArgs:n,toolResult:r,serverId:i,readResource:a,className:o,noWrapper:s=!1,showConsole:c=!0,customProps:l,serverBaseUrl:u,invoking:d,invoked:f,onUpdateGlobals:p}){let m=(0,w.useRef)(null),h=(0,w.useRef)(null),[g,_]=(0,w.useState)(!1),[v,y]=(0,w.useState)(!0),b=(0,w.useRef)(!1),[x,C]=(0,w.useState)(null),[T,E]=(0,w.useState)(null),[D,O]=(0,w.useState)(400),k=(0,w.useRef)(0),A=(0,w.useRef)(0),j=(0,w.useRef)(!1),[M,N]=(0,w.useState)(!1),[P,F]=(0,w.useState)(`inline`),[I,L]=(0,w.useState)(!1),[ee,te]=(0,w.useState)(!1),[ne,R]=(0,w.useState)(!1),[z,B]=(0,w.useState)(null),[re,ie]=(0,w.useState)(null),ae=(0,w.useRef)(null),oe=(0,w.useRef)(null),se=(0,w.useRef)(null),ce=(0,w.useRef)(!1),le=(0,w.useRef)(null),ue=(0,w.useRef)(`tool-${Date.now()}-${Math.random().toString(36).substring(7)}`).current,de=(0,w.useRef)(!1),{servers:fe}=yj(),pe=fe.find(e=>e.id===i),me=u??pe?.url,{resolvedTheme:he}=zP(),{playground:ge,addWidget:_e,addCspViolation:ve}=gQ(),ye=(0,w.useRef)(n),be=(0,w.useRef)(r),xe=(0,w.useRef)(a),Se=(0,w.useRef)(me),Ce=(0,w.useRef)(he),we=(0,w.useRef)(l);(0,w.useEffect)(()=>{ye.current=n,be.current=r,xe.current=a,Se.current=me,Ce.current=he,we.current=l}),(0,w.useEffect)(()=>{let n=!1;return(async()=>{let r=be.current,a=xe.current,o=Ce.current,s=ge;console.log(`[OpenAIComponentRenderer] Storing widget data with playground:`,{locale:s.locale,deviceType:s.deviceType});try{let c=r?r.structuredContent??{}:null,l=await a(e);if(n)return;let u=null;r?._meta?.[`openai/widgetCSP`]?u=r._meta[`openai/widgetCSP`]:l?.contents?.[0]?._meta?.[`openai/widgetCSP`]&&(u=l.contents[0]._meta[`openai/widgetCSP`]);let d=ye.current,f=we.current,p={...d||{},...f||{}},m={serverId:i,uri:e,toolInput:p,toolOutput:c,toolResponseMetadata:null,resourceData:l,toolId:ue,widgetCSP:u,theme:o,playground:{locale:s.locale,deviceType:s.deviceType,capabilities:s.capabilities,safeAreaInsets:s.safeAreaInsets}},h=await fetch(`/inspector/api/resources/widget/store`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(m)});if(!h.ok){let e=await h.json().catch(()=>({error:`Unknown error`}));throw Error(`Failed to store widget data: ${e.error||h.statusText}`)}if(n)return;B(p),ie(c),R(!1),de.current||(de.current=!0,E(`/inspector/api/resources/widget-content/${ue}?t=${Date.now()}`),_e(ue,{toolName:t,protocol:`chatgpt-app`})),L(!0)}catch(e){if(n)return;console.error(`Error storing widget data:`,e),C(e instanceof Error?e.message:`Failed to prepare widget`)}})(),()=>{n=!0}},[e,i,ue,l,JSON.stringify(n),r]);let Te=(0,w.useCallback)(e=>{if(se.current={...se.current||{},...e},!m.current?.contentWindow){p&&p(e);return}ce.current||(ce.current=!0,queueMicrotask(()=>{ce.current=!1;let e=se.current;if(se.current=null,!e)return;let t=()=>{if(oe.current!==null)return;let e=0,t=()=>{let n=m.current?.contentWindow,r=ae.current;if(!n||!r){oe.current=null;return}if(n.openai){ae.current=null,oe.current=null,Te(r);return}if(e+=1,e>=60){oe.current=null;return}oe.current=window.requestAnimationFrame(t)};oe.current=window.requestAnimationFrame(t)};try{let n=m.current?.contentWindow,r=m.current?.contentDocument;if(!n)return;if(e.theme!==void 0&&r){let t=r.documentElement;t.setAttribute(`data-theme`,e.theme),t.style.colorScheme=e.theme,t.classList.remove(`light`,`dark`),t.classList.add(e.theme)}if(n.openai){if(!(e.locale!==void 0||e.safeArea!==void 0||e.userAgent!==void 0||e.maxHeight!==void 0||e.toolOutput!==void 0||e.toolResponseMetadata!==void 0)){let t=e.theme===void 0||n.openai.theme===e.theme,r=e.displayMode===void 0||n.openai.displayMode===e.displayMode;if(t&&r)return}e.displayMode!==void 0&&(n.openai.displayMode=e.displayMode),e.theme!==void 0&&(n.openai.theme=e.theme),e.maxHeight!==void 0&&(n.openai.maxHeight=e.maxHeight),e.locale!==void 0&&(n.openai.locale=e.locale),e.safeArea!==void 0&&(n.openai.safeArea=e.safeArea),e.userAgent!==void 0&&(n.openai.userAgent=e.userAgent),e.toolOutput!==void 0&&(n.openai.toolOutput=e.toolOutput),e.toolResponseMetadata!==void 0&&(n.openai.toolResponseMetadata=e.toolResponseMetadata);try{let e=new n.CustomEvent(`openai:set_globals`,{detail:{globals:{...n.openai}}});n.dispatchEvent(e)}catch{n.postMessage({type:`openai:globalsChanged`,updates:e},`*`)}}else ae.current={...ae.current||{},...e},t();p&&p(e)}catch{let t=m.current?.contentWindow;t&&t.postMessage({type:`openai:globalsChanged`,updates:e},`*`),p&&p(e)}}))},[p]);(0,w.useEffect)(()=>()=>{oe.current!==null&&(window.cancelAnimationFrame(oe.current),oe.current=null)},[]),(0,w.useEffect)(()=>{if(!r||!g||!m.current?.contentWindow)return;let e=r?.structuredContent||r,t=r?._meta||null,n=JSON.stringify(e);le.current!==n&&(le.current=n,Te({toolOutput:e,toolResponseMetadata:t}))},[r,g,Te]);let Ee=(0,w.useCallback)(async e=>{try{if(e===`fullscreen`){if(document.fullscreenElement){F(e),Te({displayMode:e});return}h.current&&(await h.current.requestFullscreen(),F(e),Te({displayMode:e}),console.log(`[OpenAIComponentRenderer] Entered fullscreen`))}else document.fullscreenElement&&await document.exitFullscreen(),F(e),Te({displayMode:e}),console.log(`[OpenAIComponentRenderer] Exited fullscreen`)}catch(t){console.error(`[OpenAIComponentRenderer] Fullscreen error:`,t),F(e),Te({displayMode:e})}},[Te]);return(0,w.useEffect)(()=>{if(!T)return;_(!1),b.current||y(!0),C(null);let e=!1,t=async e=>{if(!(!m.current||e.source!==m.current.contentWindow)){if(e.data?.type===`iframe-console-log`){if(e.data.level===`error`){let t=(Array.isArray(e.data.args)?e.data.args:[])[0],n=typeof t==`string`?t:typeof t?.message==`string`?t.message:`Widget runtime error`,r=typeof t?.error?.stack==`string`?t.error.stack:typeof t?.stack==`string`?t.stack:void 0;typeof window<`u`&&window.parent!==window&&window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`iframe-console:error`,message:n,stack:r,timestamp:Date.now(),url:typeof e.data.url==`string`?e.data.url:void 0,toolId:ue},`*`)}return}if(e.data?.type===`mcp-inspector:getWidgetState`){try{let t=m.current?.contentWindow;t?.openai?.widgetState!==void 0&&m.current?.contentWindow?.postMessage({type:`mcp-inspector:widgetStateResponse`,toolId:e.data.toolId,state:t.openai.widgetState},`*`)}catch{}return}switch(e.data.type){case`openai:csp-violation`:ve(ue,{directive:e.data.directive,effectiveDirective:e.data.effectiveDirective,blockedUri:e.data.blockedUri,sourceFile:e.data.sourceFile,lineNumber:e.data.lineNumber,columnNumber:e.data.columnNumber,timestamp:e.data.timestamp||Date.now()});break;case`openai:setWidgetState`:break;case`openai:callTool`:try{if(!pe)throw Error(`Server connection not available`);let{toolName:t,params:n,requestId:r}=e.data,i=await pe.callTool(t,n||{},{timeout:6e5,resetTimeoutOnProgress:!0}),a;a=i&&typeof i==`object`?Array.isArray(i.contents)?{content:i.contents.map(e=>typeof e==`string`?{type:`text`,text:e}:e.type===`text`&&e.text?{type:`text`,text:e.text}:e.type===`image`&&e.data?{type:`image`,image_url:{url:e.data}}:{type:`text`,text:JSON.stringify(e)})}:{content:[{type:`text`,text:typeof i==`string`?i:JSON.stringify(i)}]}:{content:[{type:`text`,text:String(i)}]},m.current?.contentWindow?.postMessage({type:`openai:callTool:response`,requestId:r,result:a},`*`)}catch(t){console.error(`[OpenAIComponentRenderer] Tool call error:`,t),m.current?.contentWindow?.postMessage({type:`openai:callTool:response`,requestId:e.data.requestId,error:t instanceof Error?t.message:String(t)},`*`)}break;case`openai:sendFollowup`:try{let{message:t}=e.data,n=typeof t==`string`?t:t?.prompt||t;if(!n){console.warn(`[OpenAIComponentRenderer] No prompt in followup message`);return}let r=new window.CustomEvent(`mcp-inspector:widget-followup`,{detail:{prompt:n,serverId:i}});window.dispatchEvent(r);try{let e=JSON.parse(localStorage.getItem(`mcp-inspector-pending-followups`)||`[]`);e.push({prompt:n,serverId:i,timestamp:Date.now()}),localStorage.setItem(`mcp-inspector-pending-followups`,JSON.stringify(e.slice(-10)))}catch{}}catch(e){console.error(`[OpenAIComponentRenderer] Failed to send followup:`,e)}break;case`openai:requestDisplayMode`:try{let{mode:t}=e.data;t&&[`inline`,`pip`,`fullscreen`].includes(t)&&await Ee(t)}catch(e){console.error(`[OpenAIComponentRenderer] Failed to change display mode:`,e)}break;case`openai:notifyIntrinsicHeight`:try{let{height:t}=e.data;if(typeof t==`number`&&t>0){let e=t;if(P===`fullscreen`||P===`pip`){let n=typeof window<`u`?window.innerHeight:t;e=Math.min(t,n)}(t!==A.current||e!==D)&&(A.current=t,k.current=e,j.current=!0,O(e))}}catch(e){console.error(`[OpenAIComponentRenderer] Failed to handle intrinsic height notification:`,e)}break;default:break}}};window.addEventListener(`message`,t);let n=()=>{if(!e){if(e=!0,_(!0),C(null),m.current)try{let e=!!m.current.contentDocument;e&&I?jje(m.current):e||L(!1)}catch{L(!1)}he&&setTimeout(()=>{Te({theme:he})},50)}},r=()=>{C(`Failed to load component`)},a=m.current;return a?.addEventListener(`load`,n),a?.addEventListener(`error`,r),a&&(a.contentDocument?.readyState===`complete`||a.contentDocument?.readyState===`interactive`)&&(a.contentDocument?.querySelectorAll(`script`).length??0)>0&&n(),()=>{window.removeEventListener(`message`,t),a?.removeEventListener(`load`,n),a?.removeEventListener(`error`,r)}},[T,I,Ee,pe,i,he,Te,ne]),(0,w.useEffect)(()=>{if(g){if(!I){Te({theme:he});return}try{if(!m.current?.contentDocument)return;let e=m.current.contentDocument.documentElement;e.setAttribute(`data-theme`,he),e.style.colorScheme=he,e.classList.remove(`light`,`dark`),e.classList.add(he)}catch{}Te({theme:he})}},[he,g,I,Te]),(0,w.useEffect)(()=>{!g||!v||(y(!1),b.current=!0)},[g,v]),(0,w.useEffect)(()=>{if(!T||!I)return;let e=()=>{if(j.current)return;let e=m.current;try{let t=e?.contentWindow?.document?.body;if(!e||!t)return;let n=t.scrollHeight||0,r=typeof window<`u`?window.innerHeight:n,i=Math.min(n,r);i>0&&i!==k.current&&(k.current=i,O(i))}catch{}},t,n=()=>{e(),t=window.requestAnimationFrame(n)};return n(),window.addEventListener(`resize`,e),()=>{window.cancelAnimationFrame(t),window.removeEventListener(`resize`,e)}},[T,I]),(0,w.useEffect)(()=>{let e=()=>{let e=h.current;if(!e)return;let t=e.clientHeight;N(t>D)};return e(),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[D]),(0,w.useEffect)(()=>{let e=()=>{!document.fullscreenElement&&P===`fullscreen`?(F(`inline`),Te({displayMode:`inline`}),console.log(`[OpenAIComponentRenderer] Fullscreen exited by user`)):document.fullscreenElement&&P!==`fullscreen`&&(F(`fullscreen`),Te({displayMode:`fullscreen`}))};return document.addEventListener(`fullscreenchange`,e),document.addEventListener(`fullscreenerror`,e=>{console.error(`[OpenAIComponentRenderer] Fullscreen error:`,e)}),()=>{document.removeEventListener(`fullscreenchange`,e)}},[P,Te]),(0,w.useEffect)(()=>{if(T&&he&&g){let e=setTimeout(()=>{Te({theme:he})},0);return()=>clearTimeout(e)}},[he,T,g,Te]),x?(0,S.jsx)(`div`,{className:o,children:(0,S.jsx)(`div`,{className:`bg-red-50/30 dark:bg-red-950/20 border border-red-200/50 dark:border-red-800/50 rounded-lg p-4`,children:(0,S.jsxs)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:[`Failed to load component: `,x]})})}):T?(0,S.jsxs)(PMe,{className:o,noWrapper:s,children:[v&&(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full z-0`,children:(0,S.jsx)(Uq,{className:`size-5`})}),c&&I&&P!==`fullscreen`&&P!==`pip`&&(0,S.jsx)(`div`,{className:`absolute top-2 right-2 z-30 flex items-center gap-2`,children:(0,S.jsx)(q7,{displayMode:P,onDisplayModeChange:Ee,toolCallId:ue,propsContext:`tool`,resourceUri:e,toolInput:z,resourceAnnotations:void 0,llmConfig:null,resource:null,onPropsChange:void 0,protocol:`apps-sdk`,onUpdateGlobals:Te})}),(0,S.jsxs)(`div`,{ref:h,className:H(`w-full h-full flex flex-col justify-center items-center`,M&&`items-center`,P===`fullscreen`&&`bg-background`,P===`pip`&&`fixed top-4 left-1/2 -translate-x-1/2 z-50 rounded-3xl w-full min-w-[300px] h-[400px] shadow-2xl border overflow-hidden`),style:P===`pip`?{maxWidth:L7.DIMENSIONS.PIP_MAX_WIDTH}:void 0,onMouseEnter:()=>P===`pip`&&te(!0),onMouseLeave:()=>P===`pip`&&te(!1),children:[P===`fullscreen`&&document.fullscreenElement&&(0,S.jsx)(Tje,{title:t,onClose:()=>Ee(`inline`)}),P===`pip`&&(0,S.jsx)(`button`,{onClick:()=>Ee(`inline`),className:H(`absolute top-2 right-2 z-50`,`flex items-center justify-center`,`w-8 h-8 rounded-full`,`bg-background/90 hover:bg-background`,`border border-border`,`shadow-lg`,`transition-opacity duration-200`,`focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,ee?`opacity-100`:`opacity-0`),"aria-label":`Exit Picture in Picture`,children:(0,S.jsx)(Vp,{className:`w-4 h-4 text-foreground`})}),(0,S.jsx)(`div`,{className:H(`flex-1 w-full flex justify-center items-center relative z-10`,P===`fullscreen`&&`pt-14`,M&&`items-center`,P===`inline`&&(d||f)&&`pt-8`),children:(0,S.jsxs)(`div`,{className:`relative w-full max-w-[768px]`,children:[P===`inline`&&(d||f)&&(0,S.jsxs)(`div`,{className:`absolute -top-8 left-2 z-10 whitespace-nowrap`,children:[d&&!r&&(0,S.jsx)(kY,{className:`text-xs`,children:d}),f&&r&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f})]}),(0,S.jsx)(`iframe`,{ref:m,src:T,className:H(P===`inline`&&`w-full`,P===`fullscreen`&&`w-full h-full rounded-none`,P===`pip`&&`w-full h-full rounded-lg`),style:{height:P===`fullscreen`||P===`pip`?`100%`:`${D}px`},sandbox:I7,title:`OpenAI Component: ${t}`,allow:`web-share`})]})})]})]}):(0,S.jsx)(PMe,{className:o,noWrapper:s,children:(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full`,children:(0,S.jsx)(Uq,{className:`size-5`})})})}function IMe(e,t){for(let n of[`componentUrl`,`toolName`,`serverId`,`toolArgs`,`toolResult`,`readResource`,`className`])if(e[n]!==t[n])return!1;return!(e.invoking!==t.invoking||e.invoked!==t.invoked)}var J7=(0,w.memo)(FMe,IMe),LMe=(0,w.memo)(({resource:e})=>{if(!e.uri?.startsWith(`ui://`))return null;let t=(0,w.useMemo)(()=>{if(e.text)return e.text;if(e.blob)try{return atob(e.blob)}catch{return null}return null},[e.text,e.blob]);return t?(0,S.jsx)(`div`,{className:`my-4 p-0 border h-[350px] rounded-2xl border-zinc-200 overflow-hidden bg-card`,children:(0,S.jsx)(`iframe`,{srcDoc:t,sandbox:`allow-scripts allow-forms allow-popups`,title:e.uri??`MCP UI Resource`,style:{width:`100%`,height:`100%`,border:`none`,overflow:`auto`}})}):null});function RMe({widgetId:e}){let{getWidget:t}=gQ(),n=t(e)?.modelContext;if(!n?.content?.length&&!n?.structuredContent)return null;let r=n.content?.map(e=>e.text).join(` `)??JSON.stringify(n.structuredContent).slice(0,80);return(0,S.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-1.5 text-[11px] text-muted-foreground bg-muted/30 border border-border/40 rounded-md mt-1`,children:[(0,S.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-blue-400 shrink-0`}),(0,S.jsx)(`span`,{className:`font-medium`,children:`State synced to model`}),(0,S.jsx)(`span`,{className:`truncate opacity-60 max-w-[300px]`,children:r})]})}function zMe({toolName:e,toolArgs:t,result:n,serverId:r,readResource:i,toolMeta:a,onSendFollowUp:o,serverBaseUrl:s,partialToolArgs:c,cancelled:l}){let{playground:u}=gQ(),[d,f]=(0,w.useState)(null),p=(0,w.useRef)(null),m=(0,w.useMemo)(()=>`chat-tool-${e}-${Date.now()}-${Math.random().toString(36).substring(2,11)}`,[e]),h=(0,w.useMemo)(()=>{if(!n)return null;if(typeof n==`string`)try{return JSON.parse(n)}catch(e){return console.error(`[ToolResultRenderer] Failed to parse result:`,e),n}return n},[n]),g=(0,w.useMemo)(()=>JSON.stringify(a),[a]),_=(0,w.useMemo)(()=>yQ(a,h),[g,h]),v=(0,w.useMemo)(()=>vQ(a),[g]),y=(0,w.useMemo)(()=>_?_===`both`?u.selectedProtocol?u.selectedProtocol:`mcp-apps`:_:null,[_,u.selectedProtocol]),b=(0,w.useMemo)(()=>y===`mcp-apps`,[y]),x=(0,w.useMemo)(()=>y===`chatgpt-app`,[y]),C=(0,w.useMemo)(()=>!!(h?.content&&Array.isArray(h.content)&&h.content.some(e=>e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType===`text/html+skybridge`)),[h]),T=(0,w.useMemo)(()=>C&&h.content.find(e=>e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType===`text/html+skybridge`)?.resource||null,[C,h]),E=(0,w.useMemo)(()=>t,[e,h]),D=(0,w.useMemo)(()=>h,[e,h]),O=(0,w.useMemo)(()=>v&&y?bQ(y,a):b?a?.ui?.resourceUri||null:x&&a?.[`openai/outputTemplate`]||null,[v,y,b,x,g]);(0,w.useEffect)(()=>{if(T){f(T),p.current=T.uri||null;return}O&&p.current===O||(O!==p.current&&f(null),O&&i&&(p.current=O,i(O).then(e=>{e?.contents&&Array.isArray(e.contents)&&e.contents.length>0&&f(e.contents[0])}).catch(e=>{console.error(`[ToolResultRenderer] Failed to fetch resource:`,e),p.current=null})))},[T,O,y,i]);let k=a?.[`openai/toolInvocation/invoking`],A=a?.[`openai/toolInvocation/invoked`];if(v&&d&&r&&i)return(0,S.jsxs)(`div`,{className:`my-4`,children:[y===`mcp-apps`&&(0,S.jsx)(z7,{serverId:r,toolCallId:m,toolName:e,toolInput:E,toolOutput:D,toolMetadata:a,invoking:k,invoked:A,partialToolInput:c,resourceUri:d.uri,readResource:i,noWrapper:!0,onSendFollowUp:o,serverBaseUrl:s,cancelled:l}),y===`chatgpt-app`&&(0,S.jsx)(J7,{componentUrl:d.uri,toolName:e,toolArgs:E,toolResult:D,serverId:r,readResource:i,noWrapper:!0,showConsole:!1,invoking:k,invoked:A,serverBaseUrl:s})]});if(b&&O&&r&&i)return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(z7,{serverId:r,toolCallId:m,toolName:e,toolInput:E,toolOutput:D,toolMetadata:a,invoking:k,invoked:A,partialToolInput:c,resourceUri:d?.uri||O,readResource:i,className:`my-4`,noWrapper:!0,onSendFollowUp:o,serverBaseUrl:s}),(0,S.jsx)(RMe,{widgetId:m})]});if((x||C)&&O&&r&&i)return(0,S.jsx)(J7,{componentUrl:d?.uri||O,toolName:e,toolArgs:E,toolResult:D,serverId:r,readResource:i,noWrapper:!0,className:`my-4`,showConsole:!1,invoking:k,invoked:A,serverBaseUrl:s});if((b||x||C)&&!O)return(0,S.jsx)(`div`,{className:`flex items-center justify-center w-full h-[200px] rounded border`,children:(0,S.jsx)(Uq,{className:`size-5`})});if((b||x)&&(!r||!i))return console.error(`[ToolResultRenderer] Apps SDK tool but missing serverId or readResource:`,{toolName:e,hasServerId:!!r,hasReadResource:!!i}),(0,S.jsx)(`div`,{className:`my-4 p-4 bg-red-50/30 dark:bg-red-950/20 border border-red-200/50 dark:border-red-800/50 rounded-lg`,children:(0,S.jsx)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:`Cannot render widget: Missing required props (serverId or readResource)`})});let j=[];if(h?.content&&Array.isArray(h.content))for(let e of h.content)e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType!==`text/html+skybridge`&&j.push(e.resource);return j.length>0?(0,S.jsx)(S.Fragment,{children:j.map(t=>(0,S.jsx)(LMe,{resource:t},`${e}-mcp-ui-${t.uri}`))}):(console.log(`[ToolResultRenderer] Not rendering (no UI resources found):`,{toolName:e,isAppsSdkTool:x,hasAppsSdkComponent:C,hasResourceData:!!d,contentLength:h?.content?.length}),null)}function BMe({content:e,timestamp:t,attachments:n}){return(!e||e.length===0)&&(!n||n.length===0)?null:(0,S.jsx)(`div`,{className:`flex items-start gap-3 justify-end group/user-message`,"data-testid":`chat-message-user`,children:(0,S.jsxs)(`div`,{className:`flex-1 min-w-0 flex flex-col items-end`,children:[(0,S.jsxs)(`div`,{className:`bg-zinc-200 dark:bg-zinc-800 text-primary rounded-3xl px-4 py-2 max-w-[80%] break-words`,"data-testid":`chat-message-content`,children:[n&&n.length>0&&(0,S.jsx)(`div`,{className:`flex flex-wrap gap-2 mb-2`,children:n.map((e,t)=>(0,S.jsx)(`div`,{className:`rounded-lg overflow-hidden border border-zinc-300 dark:border-zinc-700`,children:(0,S.jsx)(`img`,{src:`data:${e.mimeType};base64,${e.data}`,alt:e.name||`Attachment ${t+1}`,className:`max-w-[200px] max-h-[200px] object-contain`})},t))}),e&&e.length>0&&(0,S.jsx)(`p`,{className:`text-base leading-7 font-sans text-start break-words`,children:e})]}),t&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground mt-1`,children:new Date(t).toLocaleTimeString()})]})})}function Y7(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.const==`string`&&(t.title===void 0||typeof t.title==`string`)}function VMe(e){let t=Array.isArray(e.oneOf)?e.oneOf.filter(Y7):[],n=Array.isArray(e.anyOf)?e.anyOf.filter(Y7):[];return t.length>0?t:n}function HMe(e){let t=e.items&&typeof e.items==`object`?e.items:{},n=Array.isArray(t.anyOf)?t.anyOf.filter(Y7):[],r=Array.isArray(t.oneOf)?t.oneOf.filter(Y7):[];return n.length>0?n:r}function UMe({request:e,formData:t,onFieldChange:n,idPrefix:r,testIdPrefix:i,fieldContainerClassName:a=`space-y-2`,textareaRows:o=4,showOuterLabelForBoolean:s=!0,emptyFallback:c}){return(0,S.jsx)(S.Fragment,{children:(0,w.useMemo)(()=>{if(!(`requestedSchema`in e.request))return null;let l=e.request.requestedSchema;if(!l||l.type!==`object`||!l.properties)return c??(0,S.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No form schema available`});let u=l.properties,d=l.required||[];return(0,S.jsx)(`div`,{className:`space-y-4`,children:Object.entries(u).map(([e,c])=>{let l=c,u=d.includes(e),f=l.type||`string`,p=l.title||e,m=l.description,h=VMe(l),g=h.length>0,_=Array.isArray(l.enum),v=f===`array`&&Array.isArray(l.items?.enum),y=HMe(l),b=f===`array`&&y.length>0,x=Array.isArray(t[e])?t[e]:[],C=`${r}-${e}`,w=`${i}-${e}`;return(0,S.jsxs)(`div`,{className:a,children:[(f!==`boolean`||s)&&(0,S.jsxs)(MN,{htmlFor:C,children:[p,u&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]}),m&&(0,S.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:m}),f===`boolean`?(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:C,"data-testid":w,checked:t[e]||!1,onCheckedChange:t=>n(e,t)}),(0,S.jsxs)(MN,{htmlFor:C,className:`text-sm font-normal cursor-pointer`,children:[p,!s&&u&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]})]}):f===`number`||f===`integer`?(0,S.jsx)(kN,{id:C,"data-testid":w,type:`number`,value:t[e]??``,onChange:t=>{let r=f===`integer`?parseInt(t.target.value,10):parseFloat(t.target.value);n(e,isNaN(r)?``:r)},placeholder:l.default?.toString()||``}):g?(0,S.jsxs)(`select`,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),className:`flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,children:[(0,S.jsx)(`option`,{value:``,children:`Select...`}),h.map(e=>(0,S.jsx)(`option`,{value:e.const,children:e.title||e.const},e.const))]}):_?(0,S.jsxs)(`select`,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),className:`flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,children:[(0,S.jsx)(`option`,{value:``,children:`Select...`}),l.enum.map((e,t)=>(0,S.jsx)(`option`,{value:e,children:l.enumNames?.[t]||e},e))]}):v?(0,S.jsx)(`div`,{className:`space-y-2`,"data-testid":w,children:l.items.enum.map(t=>{let r=`${C}-${t}`;return(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:r,checked:x.includes(t),onCheckedChange:r=>{n(e,r?[...x,t]:x.filter(e=>e!==t))}}),(0,S.jsx)(MN,{htmlFor:r,className:`text-sm font-normal cursor-pointer`,children:t})]},t)})}):b?(0,S.jsx)(`div`,{className:`space-y-2`,"data-testid":w,children:y.map(t=>{let r=`${C}-${t.const}`;return(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:r,checked:x.includes(t.const),onCheckedChange:r=>{n(e,r?[...x,t.const]:x.filter(e=>e!==t.const))}}),(0,S.jsx)(MN,{htmlFor:r,className:`text-sm font-normal cursor-pointer`,children:t.title||t.const})]},t.const)})}):f===`string`&&(l.format===`textarea`||l.maxLength>100)?(0,S.jsx)(uY,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),placeholder:l.default||``,rows:o}):(0,S.jsx)(kN,{id:C,"data-testid":w,type:`text`,value:t[e]||``,onChange:t=>n(e,t.target.value),placeholder:l.default||``})]},e)})})},[e,t,n,r,i,a,o,s,c])})}function WMe(e){let[t,n]=(0,w.useState)({}),[r,i]=(0,w.useState)(!1),a=e?.request.mode||`form`,o=a===`form`,s=a===`url`;return(0,w.useEffect)(()=>{if(e&&o&&`requestedSchema`in e.request){let t=e.request.requestedSchema,r={};if(t?.type===`object`&&t.properties)for(let[e,n]of Object.entries(t.properties)){let t=n;t.default===void 0?t.type===`array`?r[e]=[]:t.type===`boolean`?r[e]=!1:t.type===`number`||t.type===`integer`?r[e]=0:r[e]=``:r[e]=t.default}n(r)}i(!1)},[e?.id,o]),{formData:t,setFieldValue:(0,w.useCallback)((e,t)=>{n(n=>({...n,[e]:t}))},[]),getMissingRequiredFields:(0,w.useCallback)(()=>!e||!o||!(`requestedSchema`in e.request)?[]:(e.request.requestedSchema?.required??[]).filter(e=>t[e]===void 0||t[e]===``||t[e]===null),[e,t,o]),urlCompleted:r,setUrlCompleted:i,mode:a,isFormMode:o,isUrlMode:s}}function GMe({request:e,onApprove:t,onReject:n}){let{formData:r,setFieldValue:i,getMissingRequiredFields:a,urlCompleted:o,setUrlCompleted:s,mode:c,isFormMode:l,isUrlMode:u}=WMe(e),[d,f]=(0,w.useState)(!1),[p,m]=(0,w.useState)(``),h=()=>{if(!d)if(l){let n=a();if(n.length>0){BM.error(`Missing required fields`,{description:`Please fill in: ${n.join(`, `)}`});return}f(!0),m(`accepted`),t(e.id,{action:`accept`,content:r})}else u&&(f(!0),m(`accepted`),t(e.id,{action:`accept`}))},g=()=>{d||(f(!0),m(`declined`),t(e.id,{action:`decline`}))},_=()=>{d||(f(!0),m(`cancelled`),n(e.id,`User cancelled elicitation request`))},v=u&&`url`in e.request?e.request.url:null;return d?(0,S.jsxs)(`div`,{className:`rounded-lg border border-dashed bg-muted/30 p-3 text-sm text-muted-foreground max-w-2xl`,children:[`Elicitation `,p,` — the tool will continue executing.`]}):(0,S.jsxs)(`div`,{className:`rounded-lg border bg-card shadow-sm p-4 space-y-4 max-w-2xl`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,S.jsx)(`span`,{className:`font-medium text-sm text-card-foreground`,children:`Elicitation Request`}),(0,S.jsx)(kt,{variant:`outline`,className:u?`bg-blue-500/10 text-blue-600 dark:text-blue-400 border-blue-500/30`:`bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/30`,children:c}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.serverName})]}),(0,S.jsx)(`p`,{className:`text-sm text-card-foreground`,children:e.request.message}),u&&`url`in e.request&&(0,S.jsxs)(`div`,{className:`space-y-3`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted rounded border`,children:[(0,S.jsx)(`code`,{className:`flex-1 text-xs font-mono break-all`,children:v}),(0,S.jsxs)(U,{size:`sm`,variant:`outline`,onClick:()=>{window.open(v??``,`_blank`),s(!0)},children:[(0,S.jsx)(Vf,{className:`h-3 w-3 mr-1`}),`Open`]})]}),(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:`inline-url-done-${e.id}`,checked:o,onCheckedChange:e=>s(!!e)}),(0,S.jsx)(MN,{htmlFor:`inline-url-done-${e.id}`,className:`text-sm font-normal cursor-pointer`,children:`I have completed the required action`})]})]}),l&&(0,S.jsx)(UMe,{request:e,formData:r,onFieldChange:i,idPrefix:`inline-field-${e.id}`,testIdPrefix:`inline-elicitation-field`,fieldContainerClassName:`space-y-1.5`,textareaRows:3,showOuterLabelForBoolean:!1,emptyFallback:(0,S.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No form schema provided.`})}),(0,S.jsxs)(`div`,{className:`flex gap-2 pt-1`,children:[(0,S.jsx)(U,{size:`sm`,onClick:h,disabled:u&&!o,"data-testid":`inline-elicitation-accept`,children:`Accept`}),(0,S.jsx)(U,{size:`sm`,variant:`outline`,onClick:g,"data-testid":`inline-elicitation-decline`,children:`Decline`}),(0,S.jsx)(U,{size:`sm`,variant:`outline`,onClick:_,"data-testid":`inline-elicitation-cancel`,children:`Cancel`})]})]})}var KMe=(0,w.memo)(({messages:e,isLoading:t,serverId:n,readResource:r,tools:i,sendMessage:a,serverBaseUrl:o,pendingElicitationRequests:s,onApproveElicitation:c,onRejectElicitation:l})=>{let u=(0,w.useRef)(null),d=e=>{let t=e=>e.replace(/-/g,`_`),n=t(e);return i?.find(e=>t(e.name)===n)?._meta},f=e=>{let t=yQ(d(e),void 0);return t!==null&&t!==`mcp-ui`},p=(0,w.useCallback)(e=>{let t=e.filter(e=>e.type===`text`&&`text`in e).map(e=>e.text).join(`
791
+ `)}function q7({displayMode:e,onDisplayModeChange:t,toolCallId:n,propsContext:r,resourceUri:i,toolInput:a,resourceAnnotations:o,llmConfig:s,resource:c,onPropsChange:l,requiredProps:u,protocol:d=`mcp-apps`,onUpdateGlobals:f}){let{resolvedTheme:p,setTheme:m}=zP(),{playground:h,updatePlaygroundSettings:g,widgets:_,clearCspViolations:v}=gQ(),y=_.get(n),b=y?.cspViolations??[],x=y?.declaredCsp,C=y?.effectivePolicy,T=b.length>0?AMe(b,x):null,E=b.length>0?NMe(x,C,b,T):``,D=e===`fullscreen`,O=e===`pip`,k=d===`apps-sdk`,{presets:A,activePresetId:j,savePreset:M,deletePreset:N,setActivePreset:P,getActiveProps:F}=Nje(i),[I,L]=(0,w.useState)(!1),ee=!!u?.length&&!j,[te,ne]=(0,w.useState)(()=>ee);(0,w.useEffect)(()=>{ee&&ne(!0)},[ee]);let[R,z]=(0,w.useState)(null),[B,re]=(0,w.useState)(!1),[ie,ae]=(0,w.useState)(!1),[oe,se]=(0,w.useState)(!1),[ce,le]=(0,w.useState)(!1),[ue,de]=(0,w.useState)(!0),[fe,pe]=(0,w.useState)(!0),[me,he]=(0,w.useState)(!0),ge=(0,w.useCallback)(()=>r===`tool`&&a?K7:G7,[r,a]),[_e,ve]=(0,w.useState)(ge());(0,w.useEffect)(()=>{j&&r!==`tool`?ve(j):_e!==G7&&_e!==K7&&ve(ge())},[j,_e,ge,r]),(0,w.useEffect)(()=>{l&&(_e===G7||_e===K7?l(null):j&&l(F()))},[_e,j,a,F,l]);let ye=e=>{if(e===kMe){z(null),L(!0);return}e===G7||e===K7?(P(null),ve(e)):(P(e),ve(e))},be=e=>{M(e),P(e.id),ve(e.id)},xe=(e,t)=>{t.stopPropagation();let n=A.find(t=>t.id===e);n&&(N(e),BM.success(`Preset deleted`,{description:`Preset "${n.name}" has been deleted.`}))},Se=(e,t)=>{t.stopPropagation(),z(e),L(!0)};return(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!D&&!O&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-fullscreen-button`,variant:`outline`,size:`sm`,className:`bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>t(`fullscreen`),children:(0,S.jsx)(ip,{className:`size-4`})})}),(0,S.jsx)(Id,{children:`Enter fullscreen mode`})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-pip-button`,variant:`outline`,size:`sm`,className:`bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>t(`pip`),children:(0,S.jsx)(pp,{className:`size-4`})})}),(0,S.jsx)(Id,{children:`Picture-in-picture`})]})]}),(0,S.jsxs)(CN,{open:B,onOpenChange:re,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-device-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(()=>{switch(h.deviceType){case`mobile`:return(0,S.jsx)(Op,{className:`size-3`});case`tablet`:return(0,S.jsx)(Ip,{className:`size-3`});default:return(0,S.jsx)(lp,{className:`size-3`})}})()})})}),(0,S.jsxs)(Id,{children:[`Device: `,h.deviceType]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[300px]`,"data-testid":`debugger-device-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Device Type`})}),(0,S.jsx)(`div`,{className:`space-y-2`,children:[{value:`desktop`,label:`Desktop`,icon:lp},{value:`mobile`,label:`Mobile`,icon:Op},{value:`tablet`,label:`Tablet`,icon:Ip}].map(e=>{let t=e.icon;return(0,S.jsxs)(U,{"data-testid":`debugger-device-option-${e.value}`,variant:h.deviceType===e.value?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({deviceType:e.value}),k&&f&&f({userAgent:{device:{type:e.value},capabilities:h.capabilities}}),re(!1)},children:[(0,S.jsx)(t,{className:`size-4 mr-2`}),e.label]},e.value)})})]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-theme-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,onClick:()=>{let e=p===`dark`?`light`:`dark`;m(e),f&&f({theme:e})},children:p===`dark`?(0,S.jsx)(up,{className:`size-3.5`}):(0,S.jsx)(Fp,{className:`size-3.5`})})}),(0,S.jsxs)(Id,{children:[`Theme: `,p===`dark`?`Dark`:`Light`]})]}),(0,S.jsxs)(CN,{open:ie,onOpenChange:ae,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-locale-button`,variant:`outline`,size:`sm`,className:`h-8 min-w-[50px] px-2 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(`span`,{className:`text-xs font-mono`,children:h.locale})})})}),(0,S.jsx)(Id,{children:`Locale`})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[400px]`,"data-testid":`debugger-locale-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Select Locale`})}),(0,S.jsxs)(IJ,{children:[(0,S.jsx)(LJ,{placeholder:`Search locales...`,"data-testid":`debugger-locale-search`}),(0,S.jsxs)(RJ,{children:[(0,S.jsx)(zJ,{children:`No locale found.`}),(0,S.jsx)(BJ,{children:bje.map(e=>(0,S.jsx)(VJ,{value:e.value,"data-testid":`debugger-locale-option-${e.value}`,onSelect:()=>{g({locale:e.value}),k&&f&&f({locale:e.value}),ae(!1)},children:e.label},e.value))})]})]})]})]}),!k&&(0,S.jsxs)(CN,{open:oe,onOpenChange:se,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-timezone-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(Nf,{className:`size-3.5`})})})}),(0,S.jsxs)(Id,{children:[`Timezone: `,h.timeZone]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[400px]`,"data-testid":`debugger-timezone-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Select Timezone`})}),(0,S.jsxs)(IJ,{children:[(0,S.jsx)(LJ,{placeholder:`Search timezones...`,"data-testid":`debugger-timezone-search`}),(0,S.jsxs)(RJ,{children:[(0,S.jsx)(zJ,{children:`No timezone found.`}),(0,S.jsx)(BJ,{children:Sje.map(e=>(0,S.jsx)(VJ,{value:e.value,"data-testid":`debugger-timezone-option-${e.value.replace(/\//g,`-`)}`,onSelect:()=>{g({timeZone:e.value}),se(!1)},children:e.label},e.value))})]})]})]})]}),(0,S.jsxs)(CN,{open:ce,onOpenChange:le,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsxs)(U,{"data-testid":`debugger-csp-button`,variant:`outline`,size:`sm`,className:`relative h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:[h.cspMode===`permissive`?(0,S.jsx)(Ep,{className:`size-3.5`}):(0,S.jsx)(Tp,{className:`size-3.5`}),b.length>0&&(0,S.jsx)(`span`,{className:`absolute -top-1.5 -right-1.5 flex h-4 min-w-4 items-center justify-center rounded-full px-0.5 text-[9px] font-bold text-white leading-none ${h.cspMode===`permissive`?`bg-yellow-500`:`bg-red-500`}`,children:b.length>99?`99+`:b.length})]})})}),(0,S.jsxs)(Id,{children:[`CSP:`,` `,h.cspMode===`permissive`?`Permissive`:`Declared`,b.length>0&&` · ${b.length} ${h.cspMode===`permissive`?`would be blocked`:`blocked`}`]})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[520px] max-h-[85vh] overflow-y-auto`,"data-testid":`debugger-csp-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`CSP Mode`})}),(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsxs)(U,{"data-testid":`debugger-csp-option-permissive`,variant:h.cspMode===`permissive`?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({cspMode:`permissive`}),le(!1)},children:[(0,S.jsx)(Ep,{className:`size-4 mr-2`}),(0,S.jsx)(`div`,{className:`flex flex-col items-start`,children:(0,S.jsx)(`span`,{children:`Permissive`})})]}),(0,S.jsxs)(U,{"data-testid":`debugger-csp-option-widget-declared`,variant:h.cspMode===`widget-declared`?`default`:`outline`,className:`w-full justify-start`,onClick:()=>{g({cspMode:`widget-declared`}),le(!1)},children:[(0,S.jsx)(Tp,{className:`size-4 mr-2`}),(0,S.jsx)(`div`,{className:`flex flex-col items-start`,children:(0,S.jsx)(`span`,{children:`Widget-Declared`})})]})]}),(0,S.jsxs)(`div`,{className:`mt-3 border border-zinc-200 dark:border-zinc-700 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`w-full flex items-center gap-2 px-3 py-2 text-left text-sm font-medium bg-zinc-50 dark:bg-zinc-900/50 hover:bg-zinc-100 dark:hover:bg-zinc-800/50 transition-colors`,onClick:()=>de(e=>!e),children:[ue?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0`}),`Current declared CSP`]}),ue&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0 space-y-1.5 text-xs`,children:x?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`connectDomains:`}),` `,x.connectDomains?.length?JSON.stringify(x.connectDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`resourceDomains:`}),` `,x.resourceDomains?.length?JSON.stringify(x.resourceDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`frameDomains:`}),` `,x.frameDomains?.length?JSON.stringify(x.frameDomains):`Not declared`]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`span`,{className:`font-mono text-zinc-500 dark:text-zinc-400`,children:`baseUriDomains:`}),` `,x.baseUriDomains?.length?JSON.stringify(x.baseUriDomains):`Not declared`]})]}):(0,S.jsx)(`span`,{className:`text-zinc-500 dark:text-zinc-400`,children:h.cspMode===`permissive`?`Widget-declared (would apply in Widget-Declared mode)`:`No CSP declared`})})]}),(0,S.jsxs)(`div`,{className:`mt-3 border border-zinc-200 dark:border-zinc-700 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 bg-zinc-50 dark:bg-zinc-900/50 hover:bg-zinc-100 dark:hover:bg-zinc-800/50 transition-colors`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`flex-1 flex items-center gap-2 text-left text-sm font-medium min-w-0`,onClick:()=>pe(e=>!e),children:[fe?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0`}),`originalPolicy`]}),C&&(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0 shrink-0`,onClick:async e=>{e.stopPropagation();try{await bj(C),BM.success(`Policy copied to clipboard`)}catch{BM.error(`Failed to copy`)}},"aria-label":`Copy policy`,children:(0,S.jsx)(Lf,{className:`size-3.5`})})}),(0,S.jsx)(Id,{children:`Copy policy`})]})]}),fe&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:C?(0,S.jsx)(`pre`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 whitespace-pre-wrap break-all bg-zinc-50 dark:bg-zinc-900 p-2 rounded border border-zinc-100 dark:border-zinc-800`,children:C}):(0,S.jsx)(`span`,{className:`text-zinc-500 dark:text-zinc-400 text-xs`,children:`No policy data yet (load widget in Widget-Declared mode)`})})]}),b.length>-1&&(0,S.jsxs)(`div`,{className:`mt-3 border border-amber-200 dark:border-amber-800 rounded-md overflow-hidden`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 bg-amber-50 dark:bg-amber-950/30 hover:bg-amber-100 dark:hover:bg-amber-900/30 transition-colors`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`flex-1 flex items-center gap-2 text-left text-sm font-medium min-w-0 text-amber-800 dark:text-amber-200`,onClick:()=>he(e=>!e),children:[me?(0,S.jsx)(Tf,{className:`size-3.5 shrink-0 text-amber-600 dark:text-amber-400`}):(0,S.jsx)(Df,{className:`size-3.5 shrink-0 text-amber-600 dark:text-amber-400`}),`Prompt for Agents`]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0 shrink-0 text-amber-600 dark:text-amber-400 hover:bg-amber-200/50 dark:hover:bg-amber-800/30`,onClick:async e=>{e.stopPropagation();try{await bj(E),BM.success(`Prompt copied to clipboard`)}catch{BM.error(`Failed to copy`)}},"aria-label":`Copy prompt for agents`,children:(0,S.jsx)(Lf,{className:`size-3.5`})})}),(0,S.jsx)(Id,{children:`Copy prompt for agents`})]})]}),me&&(0,S.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:(0,S.jsx)(`pre`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 whitespace-pre-wrap bg-zinc-50 dark:bg-zinc-900 p-2 rounded border border-zinc-100 dark:border-zinc-800 overflow-x-auto max-h-48 overflow-y-auto`,"data-testid":`debugger-csp-prompt-for-agents`,children:E})})]}),b.length>0&&(0,S.jsxs)(`div`,{className:`mt-3 space-y-2`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`span`,{className:`text-xs font-semibold uppercase tracking-wide ${h.cspMode===`permissive`?`text-yellow-600 dark:text-yellow-400`:`text-red-600 dark:text-red-400`}`,children:[b.length,` `,h.cspMode===`permissive`?`would-be-blocked`:`blocked`,` `,`request`,b.length===1?``:`s`]}),(0,S.jsx)(`button`,{className:`text-xs text-zinc-400 hover:text-zinc-600 dark:hover:text-zinc-200 underline`,onClick:()=>v(n),children:`Clear`})]}),(0,S.jsx)(`div`,{className:`max-h-56 overflow-y-auto space-y-1 rounded border border-zinc-200 dark:border-zinc-700 bg-zinc-50 dark:bg-zinc-900 p-2`,children:b.map((e,t)=>(0,S.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-1 border-b border-zinc-100 dark:border-zinc-800 last:border-0`,children:[(0,S.jsx)(`div`,{className:`flex items-center gap-1.5`,children:(0,S.jsx)(`span`,{className:`shrink-0 rounded bg-red-100 dark:bg-red-900/40 px-1 py-0.5 text-[10px] font-mono font-semibold text-red-700 dark:text-red-300`,children:e.effectiveDirective||e.directive})}),(0,S.jsx)(`span`,{className:`text-[11px] font-mono text-zinc-600 dark:text-zinc-400 break-all leading-snug`,children:e.blockedUri||`(inline)`})]},t))})]})]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-touch-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900 ${h.capabilities.touch?`border-blue-500 dark:border-blue-400`:``}`,onClick:()=>{let e={...h.capabilities,touch:!h.capabilities.touch};g({capabilities:e}),k&&f&&f({userAgent:{device:{type:h.deviceType},capabilities:e}})},children:(0,S.jsx)(gp,{className:`size-3.5 ${h.capabilities.touch?`text-blue-600 dark:text-blue-400`:``}`})})}),(0,S.jsxs)(Id,{children:[`Touch: `,h.capabilities.touch?`Enabled`:`Disabled`]})]}),(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-hover-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900 ${h.capabilities.hover?`border-blue-500 dark:border-blue-400`:``}`,onClick:()=>{let e={...h.capabilities,hover:!h.capabilities.hover};g({capabilities:e}),k&&f&&f({userAgent:{device:{type:h.deviceType},capabilities:e}})},children:(0,S.jsx)(dp,{className:`size-3.5 ${h.capabilities.hover?`text-blue-600 dark:text-blue-400`:``}`})})}),(0,S.jsxs)(Id,{children:[`Hover: `,h.capabilities.hover?`Enabled`:`Disabled`]})]}),(0,S.jsxs)(iY,{children:[(0,S.jsx)(aY,{asChild:!0,children:(0,S.jsx)(U,{"data-testid":`debugger-safe-area-button`,variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,children:(0,S.jsx)(jp,{className:`size-3.5`})})}),(0,S.jsx)(oY,{className:`w-64 p-3`,"data-testid":`debugger-safe-area-dialog`,children:(0,S.jsxs)(`div`,{className:`space-y-2`,children:[(0,S.jsx)(`label`,{className:`text-xs font-medium`,children:`Safe Area Insets`}),(0,S.jsx)(OMe,{value:h.safeAreaInsets,onChange:e=>{g({safeAreaInsets:e}),k&&f&&f({safeArea:{insets:e}})}})]})})]}),r===`tool`?(0,S.jsxs)(CN,{children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(wN,{asChild:!0,children:(0,S.jsx)(U,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm shadow-sm hover:bg-white dark:hover:bg-zinc-900`,"data-testid":`debugger-props-button`,children:(0,S.jsx)(bf,{className:`size-3.5`})})})}),(0,S.jsx)(Id,{children:`View Tool Props`})]}),(0,S.jsxs)(TN,{className:`sm:max-w-[600px]`,"data-testid":`debugger-props-dialog`,children:[(0,S.jsx)(EN,{children:(0,S.jsx)(DN,{children:`Tool Props`})}),(0,S.jsx)(`div`,{className:`overflow-auto max-h-[60vh] rounded-md bg-gray-50 dark:bg-zinc-900 border border-gray-200 dark:border-zinc-700 p-3`,children:(0,S.jsx)(HV,{data:a??{},filename:`tool-props.json`})})]})]}):(0,S.jsxs)(iY,{open:te,onOpenChange:ne,children:[(0,S.jsxs)(Pd,{children:[(0,S.jsx)(Fd,{asChild:!0,children:(0,S.jsx)(aY,{asChild:!0,children:(0,S.jsx)(U,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 backdrop-blur-sm shadow-sm ${ee?`bg-amber-50 dark:bg-amber-950/40 border-amber-300 dark:border-amber-700 hover:bg-amber-100 dark:hover:bg-amber-900/50 animate-pulse`:`bg-white/90 dark:bg-zinc-900/90 hover:bg-white dark:hover:bg-zinc-900`}`,"data-testid":`debugger-props-button`,children:(0,S.jsx)(bf,{className:`size-3.5 ${ee?`text-amber-500`:``}`})})})}),(0,S.jsxs)(Id,{children:[`Props:`,` `,_e===G7?`No Props`:_e===K7?`Tool Props`:A.find(e=>e.id===_e)?.name||`Custom`]})]}),(0,S.jsxs)(oY,{className:`w-64 p-2`,"data-testid":`debugger-props-popover`,children:[ee&&(0,S.jsxs)(`div`,{className:`mb-2 rounded-md border border-amber-200 dark:border-amber-800/50 bg-amber-50 dark:bg-amber-950/30 px-3 py-2`,children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-amber-700 dark:text-amber-300 mb-0.5`,children:`Props required to render this widget:`}),(0,S.jsx)(`p`,{className:`text-xs font-mono text-amber-600 dark:text-amber-400`,children:u.join(`, `)}),(0,S.jsx)(`p`,{className:`text-xs text-amber-500 dark:text-amber-400 mt-1`,children:`Create a preset below to set them.`})]}),(0,S.jsxs)(`div`,{className:`space-y-1`,children:[(0,S.jsx)(U,{variant:_e===G7?`secondary`:`ghost`,size:`sm`,className:`w-full justify-start`,onClick:()=>ye(G7),"data-testid":`debugger-props-no-props`,children:`No Props`}),A.map(e=>(0,S.jsxs)(`div`,{className:`relative group flex items-center`,children:[(0,S.jsx)(U,{variant:_e===e.id?`secondary`:`ghost`,size:`sm`,className:`w-full justify-start pr-14`,onClick:()=>ye(e.id),"data-testid":`debugger-props-preset-${e.id}`,children:e.name}),(0,S.jsxs)(`div`,{className:`absolute right-2 flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:[(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-6 w-6 p-0`,onClick:t=>Se(e,t),"data-testid":`debugger-props-edit-${e.id}`,children:(0,S.jsx)(wp,{className:`h-3 w-3`})}),(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`h-6 w-6 p-0`,onClick:t=>xe(e.id,t),"data-testid":`debugger-props-delete-${e.id}`,children:(0,S.jsx)(Rp,{className:`h-3 w-3 text-destructive`})})]})]},e.id)),(0,S.jsx)(U,{variant:`ghost`,size:`sm`,className:`w-full justify-start text-primary`,onClick:()=>ye(kMe),"data-testid":`debugger-props-create-preset`,children:`+ Create Preset...`})]})]})]}),(0,S.jsx)(Uje,{iframeId:n,enabled:!0}),c&&(0,S.jsx)(DMe,{open:I,onOpenChange:L,onSave:be,existingPresets:A,resource:c,resourceAnnotations:o,llmConfig:s||null,editingPreset:R})]})}function PMe({children:e,className:t,noWrapper:n}){return n?e:(0,S.jsx)(`div`,{className:H(`bg-zinc-100 dark:bg-zinc-900 bg-[radial-gradient(circle,_rgba(0,0,0,0.2)_1px,_transparent_1px)] dark:bg-[radial-gradient(circle,_rgba(255,255,255,0.2)_1px,_transparent_1px)] bg-[length:32px_32px]`,t),children:e})}function FMe({componentUrl:e,toolName:t,toolArgs:n,toolResult:r,serverId:i,readResource:a,className:o,noWrapper:s=!1,showConsole:c=!0,customProps:l,serverBaseUrl:u,invoking:d,invoked:f,onUpdateGlobals:p}){let m=(0,w.useRef)(null),h=(0,w.useRef)(null),[g,_]=(0,w.useState)(!1),[v,y]=(0,w.useState)(!0),b=(0,w.useRef)(!1),[x,C]=(0,w.useState)(null),[T,E]=(0,w.useState)(null),[D,O]=(0,w.useState)(400),k=(0,w.useRef)(0),A=(0,w.useRef)(0),j=(0,w.useRef)(!1),[M,N]=(0,w.useState)(!1),[P,F]=(0,w.useState)(`inline`),[I,L]=(0,w.useState)(!1),[ee,te]=(0,w.useState)(!1),[ne,R]=(0,w.useState)(!1),[z,B]=(0,w.useState)(null),[re,ie]=(0,w.useState)(null),ae=(0,w.useRef)(null),oe=(0,w.useRef)(null),se=(0,w.useRef)(null),ce=(0,w.useRef)(!1),le=(0,w.useRef)(null),ue=(0,w.useRef)(`tool-${Date.now()}-${Math.random().toString(36).substring(7)}`).current,de=(0,w.useRef)(!1),{servers:fe}=yj(),pe=fe.find(e=>e.id===i),me=u??pe?.url,{resolvedTheme:he}=zP(),{playground:ge,addWidget:_e,addCspViolation:ve}=gQ(),ye=(0,w.useRef)(n),be=(0,w.useRef)(r),xe=(0,w.useRef)(a),Se=(0,w.useRef)(me),Ce=(0,w.useRef)(he),we=(0,w.useRef)(l);(0,w.useEffect)(()=>{ye.current=n,be.current=r,xe.current=a,Se.current=me,Ce.current=he,we.current=l}),(0,w.useEffect)(()=>{let n=!1;return(async()=>{let r=be.current,a=xe.current,o=Ce.current,s=ge;console.log(`[OpenAIComponentRenderer] Storing widget data with playground:`,{locale:s.locale,deviceType:s.deviceType});try{let c=r?r.structuredContent??{}:null,l=await a(e);if(n)return;let u=null;r?._meta?.[`openai/widgetCSP`]?u=r._meta[`openai/widgetCSP`]:l?.contents?.[0]?._meta?.[`openai/widgetCSP`]&&(u=l.contents[0]._meta[`openai/widgetCSP`]);let d=ye.current,f=we.current,p={...d||{},...f||{}},m={serverId:i,uri:e,toolInput:p,toolOutput:c,toolResponseMetadata:null,resourceData:l,toolId:ue,widgetCSP:u,theme:o,playground:{locale:s.locale,deviceType:s.deviceType,capabilities:s.capabilities,safeAreaInsets:s.safeAreaInsets}},h=await fetch(`/inspector/api/resources/widget/store`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(m)});if(!h.ok){let e=await h.json().catch(()=>({error:`Unknown error`}));throw Error(`Failed to store widget data: ${e.error||h.statusText}`)}if(n)return;B(p),ie(c),R(!1),de.current||(de.current=!0,E(`/inspector/api/resources/widget-content/${ue}?t=${Date.now()}`),_e(ue,{toolName:t,protocol:`chatgpt-app`})),L(!0)}catch(e){if(n)return;console.error(`Error storing widget data:`,e),C(e instanceof Error?e.message:`Failed to prepare widget`)}})(),()=>{n=!0}},[e,i,ue,l,JSON.stringify(n),r]);let Te=(0,w.useCallback)(e=>{if(se.current={...se.current||{},...e},!m.current?.contentWindow){p&&p(e);return}ce.current||(ce.current=!0,queueMicrotask(()=>{ce.current=!1;let e=se.current;if(se.current=null,!e)return;let t=()=>{if(oe.current!==null)return;let e=0,t=()=>{let n=m.current?.contentWindow,r=ae.current;if(!n||!r){oe.current=null;return}if(n.openai){ae.current=null,oe.current=null,Te(r);return}if(e+=1,e>=60){oe.current=null;return}oe.current=window.requestAnimationFrame(t)};oe.current=window.requestAnimationFrame(t)};try{let n=m.current?.contentWindow,r=m.current?.contentDocument;if(!n)return;if(e.theme!==void 0&&r){let t=r.documentElement;t.setAttribute(`data-theme`,e.theme),t.style.colorScheme=e.theme,t.classList.remove(`light`,`dark`),t.classList.add(e.theme)}if(n.openai){if(!(e.locale!==void 0||e.safeArea!==void 0||e.userAgent!==void 0||e.maxHeight!==void 0||e.toolOutput!==void 0||e.toolResponseMetadata!==void 0)){let t=e.theme===void 0||n.openai.theme===e.theme,r=e.displayMode===void 0||n.openai.displayMode===e.displayMode;if(t&&r)return}e.displayMode!==void 0&&(n.openai.displayMode=e.displayMode),e.theme!==void 0&&(n.openai.theme=e.theme),e.maxHeight!==void 0&&(n.openai.maxHeight=e.maxHeight),e.locale!==void 0&&(n.openai.locale=e.locale),e.safeArea!==void 0&&(n.openai.safeArea=e.safeArea),e.userAgent!==void 0&&(n.openai.userAgent=e.userAgent),e.toolOutput!==void 0&&(n.openai.toolOutput=e.toolOutput),e.toolResponseMetadata!==void 0&&(n.openai.toolResponseMetadata=e.toolResponseMetadata);try{let e=new n.CustomEvent(`openai:set_globals`,{detail:{globals:{...n.openai}}});n.dispatchEvent(e)}catch{n.postMessage({type:`openai:globalsChanged`,updates:e},`*`)}}else ae.current={...ae.current||{},...e},t();p&&p(e)}catch{let t=m.current?.contentWindow;t&&t.postMessage({type:`openai:globalsChanged`,updates:e},`*`),p&&p(e)}}))},[p]);(0,w.useEffect)(()=>()=>{oe.current!==null&&(window.cancelAnimationFrame(oe.current),oe.current=null)},[]),(0,w.useEffect)(()=>{if(!r||!g||!m.current?.contentWindow)return;let e=r?.structuredContent||r,t=r?._meta||null,n=JSON.stringify(e);le.current!==n&&(le.current=n,Te({toolOutput:e,toolResponseMetadata:t}))},[r,g,Te]);let Ee=(0,w.useCallback)(async e=>{try{if(e===`fullscreen`){if(document.fullscreenElement){F(e),Te({displayMode:e});return}h.current&&(await h.current.requestFullscreen(),F(e),Te({displayMode:e}),console.log(`[OpenAIComponentRenderer] Entered fullscreen`))}else document.fullscreenElement&&await document.exitFullscreen(),F(e),Te({displayMode:e}),console.log(`[OpenAIComponentRenderer] Exited fullscreen`)}catch(t){console.error(`[OpenAIComponentRenderer] Fullscreen error:`,t),F(e),Te({displayMode:e})}},[Te]);return(0,w.useEffect)(()=>{if(!T)return;_(!1),b.current||y(!0),C(null);let e=!1,t=async e=>{if(!(!m.current||e.source!==m.current.contentWindow)){if(e.data?.type===`iframe-console-log`){if(e.data.level===`error`){let t=(Array.isArray(e.data.args)?e.data.args:[])[0],n=typeof t==`string`?t:typeof t?.message==`string`?t.message:`Widget runtime error`,r=typeof t?.error?.stack==`string`?t.error.stack:typeof t?.stack==`string`?t.stack:void 0;typeof window<`u`&&window.parent!==window&&window.parent.postMessage({type:`mcp-inspector:widget:error`,source:`iframe-console:error`,message:n,stack:r,timestamp:Date.now(),url:typeof e.data.url==`string`?e.data.url:void 0,toolId:ue},`*`)}return}if(e.data?.type===`mcp-inspector:getWidgetState`){try{let t=m.current?.contentWindow;t?.openai?.widgetState!==void 0&&m.current?.contentWindow?.postMessage({type:`mcp-inspector:widgetStateResponse`,toolId:e.data.toolId,state:t.openai.widgetState},`*`)}catch{}return}switch(e.data.type){case`openai:csp-violation`:ve(ue,{directive:e.data.directive,effectiveDirective:e.data.effectiveDirective,blockedUri:e.data.blockedUri,sourceFile:e.data.sourceFile,lineNumber:e.data.lineNumber,columnNumber:e.data.columnNumber,timestamp:e.data.timestamp||Date.now()});break;case`openai:setWidgetState`:break;case`openai:callTool`:try{if(!pe)throw Error(`Server connection not available`);let{toolName:t,params:n,requestId:r}=e.data,i=await pe.callTool(t,n||{},{timeout:6e5,resetTimeoutOnProgress:!0}),a;a=i&&typeof i==`object`?Array.isArray(i.contents)?{content:i.contents.map(e=>typeof e==`string`?{type:`text`,text:e}:e.type===`text`&&e.text?{type:`text`,text:e.text}:e.type===`image`&&e.data?{type:`image`,image_url:{url:e.data}}:{type:`text`,text:JSON.stringify(e)})}:{content:[{type:`text`,text:typeof i==`string`?i:JSON.stringify(i)}]}:{content:[{type:`text`,text:String(i)}]},m.current?.contentWindow?.postMessage({type:`openai:callTool:response`,requestId:r,result:a},`*`)}catch(t){console.error(`[OpenAIComponentRenderer] Tool call error:`,t),m.current?.contentWindow?.postMessage({type:`openai:callTool:response`,requestId:e.data.requestId,error:t instanceof Error?t.message:String(t)},`*`)}break;case`openai:sendFollowup`:try{let{message:t}=e.data,n=typeof t==`string`?t:t?.prompt||t;if(!n){console.warn(`[OpenAIComponentRenderer] No prompt in followup message`);return}let r=new window.CustomEvent(`mcp-inspector:widget-followup`,{detail:{prompt:n,serverId:i}});window.dispatchEvent(r);try{let e=JSON.parse(localStorage.getItem(`mcp-inspector-pending-followups`)||`[]`);e.push({prompt:n,serverId:i,timestamp:Date.now()}),localStorage.setItem(`mcp-inspector-pending-followups`,JSON.stringify(e.slice(-10)))}catch{}}catch(e){console.error(`[OpenAIComponentRenderer] Failed to send followup:`,e)}break;case`openai:requestDisplayMode`:try{let{mode:t}=e.data;t&&[`inline`,`pip`,`fullscreen`].includes(t)&&await Ee(t)}catch(e){console.error(`[OpenAIComponentRenderer] Failed to change display mode:`,e)}break;case`openai:notifyIntrinsicHeight`:try{let{height:t}=e.data;if(typeof t==`number`&&t>0){let e=t;if(P===`fullscreen`||P===`pip`){let n=typeof window<`u`?window.innerHeight:t;e=Math.min(t,n)}(t!==A.current||e!==D)&&(A.current=t,k.current=e,j.current=!0,O(e))}}catch(e){console.error(`[OpenAIComponentRenderer] Failed to handle intrinsic height notification:`,e)}break;default:break}}};window.addEventListener(`message`,t);let n=()=>{if(!e){if(e=!0,_(!0),C(null),m.current)try{let e=!!m.current.contentDocument;e&&I?jje(m.current):e||L(!1)}catch{L(!1)}he&&setTimeout(()=>{Te({theme:he})},50)}},r=()=>{C(`Failed to load component`)},a=m.current;return a?.addEventListener(`load`,n),a?.addEventListener(`error`,r),a&&(a.contentDocument?.readyState===`complete`||a.contentDocument?.readyState===`interactive`)&&(a.contentDocument?.querySelectorAll(`script`).length??0)>0&&n(),()=>{window.removeEventListener(`message`,t),a?.removeEventListener(`load`,n),a?.removeEventListener(`error`,r)}},[T,I,Ee,pe,i,he,Te,ne]),(0,w.useEffect)(()=>{if(g){if(!I){Te({theme:he});return}try{if(!m.current?.contentDocument)return;let e=m.current.contentDocument.documentElement;e.setAttribute(`data-theme`,he),e.style.colorScheme=he,e.classList.remove(`light`,`dark`),e.classList.add(he)}catch{}Te({theme:he})}},[he,g,I,Te]),(0,w.useEffect)(()=>{!g||!v||(y(!1),b.current=!0)},[g,v]),(0,w.useEffect)(()=>{if(!T||!I)return;let e=()=>{if(j.current)return;let e=m.current;try{let t=e?.contentWindow?.document?.body;if(!e||!t)return;let n=t.scrollHeight||0,r=typeof window<`u`?window.innerHeight:n,i=Math.min(n,r);i>0&&i!==k.current&&(k.current=i,O(i))}catch{}},t,n=()=>{e(),t=window.requestAnimationFrame(n)};return n(),window.addEventListener(`resize`,e),()=>{window.cancelAnimationFrame(t),window.removeEventListener(`resize`,e)}},[T,I]),(0,w.useEffect)(()=>{let e=()=>{let e=h.current;if(!e)return;let t=e.clientHeight;N(t>D)};return e(),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[D]),(0,w.useEffect)(()=>{let e=()=>{!document.fullscreenElement&&P===`fullscreen`?(F(`inline`),Te({displayMode:`inline`}),console.log(`[OpenAIComponentRenderer] Fullscreen exited by user`)):document.fullscreenElement&&P!==`fullscreen`&&(F(`fullscreen`),Te({displayMode:`fullscreen`}))};return document.addEventListener(`fullscreenchange`,e),document.addEventListener(`fullscreenerror`,e=>{console.error(`[OpenAIComponentRenderer] Fullscreen error:`,e)}),()=>{document.removeEventListener(`fullscreenchange`,e)}},[P,Te]),(0,w.useEffect)(()=>{if(T&&he&&g){let e=setTimeout(()=>{Te({theme:he})},0);return()=>clearTimeout(e)}},[he,T,g,Te]),x?(0,S.jsx)(`div`,{className:o,children:(0,S.jsx)(`div`,{className:`bg-red-50/30 dark:bg-red-950/20 border border-red-200/50 dark:border-red-800/50 rounded-lg p-4`,children:(0,S.jsxs)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:[`Failed to load component: `,x]})})}):T?(0,S.jsxs)(PMe,{className:o,noWrapper:s,children:[v&&(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full z-0`,children:(0,S.jsx)(Uq,{className:`size-5`})}),c&&I&&P!==`fullscreen`&&P!==`pip`&&(0,S.jsx)(`div`,{className:`absolute top-2 right-2 z-30 flex items-center gap-2`,children:(0,S.jsx)(q7,{displayMode:P,onDisplayModeChange:Ee,toolCallId:ue,propsContext:`tool`,resourceUri:e,toolInput:z,resourceAnnotations:void 0,llmConfig:null,resource:null,onPropsChange:void 0,protocol:`apps-sdk`,onUpdateGlobals:Te})}),(0,S.jsxs)(`div`,{ref:h,className:H(`w-full h-full flex flex-col justify-center items-center`,M&&`items-center`,P===`fullscreen`&&`bg-background`,P===`pip`&&`fixed top-4 left-1/2 -translate-x-1/2 z-50 rounded-3xl w-full min-w-[300px] h-[400px] shadow-2xl border overflow-hidden`),style:P===`pip`?{maxWidth:L7.DIMENSIONS.PIP_MAX_WIDTH}:void 0,onMouseEnter:()=>P===`pip`&&te(!0),onMouseLeave:()=>P===`pip`&&te(!1),children:[P===`fullscreen`&&document.fullscreenElement&&(0,S.jsx)(Tje,{title:t,onClose:()=>Ee(`inline`)}),P===`pip`&&(0,S.jsx)(`button`,{onClick:()=>Ee(`inline`),className:H(`absolute top-2 right-2 z-50`,`flex items-center justify-center`,`w-8 h-8 rounded-full`,`bg-background/90 hover:bg-background`,`border border-border`,`shadow-lg`,`transition-opacity duration-200`,`focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,ee?`opacity-100`:`opacity-0`),"aria-label":`Exit Picture in Picture`,children:(0,S.jsx)(Vp,{className:`w-4 h-4 text-foreground`})}),(0,S.jsx)(`div`,{className:H(`flex-1 w-full flex justify-center items-center relative`,P===`fullscreen`&&`pt-14`,M&&`items-center`,P===`inline`&&(d||f)&&`pt-8`),children:(0,S.jsxs)(`div`,{className:`relative w-full max-w-[768px]`,children:[P===`inline`&&(d||f)&&(0,S.jsxs)(`div`,{className:`absolute -top-8 left-2 z-10 whitespace-nowrap`,children:[d&&!r&&(0,S.jsx)(kY,{className:`text-xs`,children:d}),f&&r&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f})]}),(0,S.jsx)(`iframe`,{ref:m,src:T,className:H(P===`inline`&&`w-full`,P===`fullscreen`&&`w-full h-full rounded-none`,P===`pip`&&`w-full h-full rounded-lg`),style:{height:P===`fullscreen`||P===`pip`?`100%`:`${D}px`},sandbox:I7,title:`OpenAI Component: ${t}`,allow:`web-share`})]})})]})]}):(0,S.jsx)(PMe,{className:o,noWrapper:s,children:(0,S.jsx)(`div`,{className:`flex absolute left-0 top-0 items-center justify-center w-full h-full`,children:(0,S.jsx)(Uq,{className:`size-5`})})})}function IMe(e,t){for(let n of[`componentUrl`,`toolName`,`serverId`,`toolArgs`,`toolResult`,`readResource`,`className`])if(e[n]!==t[n])return!1;return!(e.invoking!==t.invoking||e.invoked!==t.invoked)}var J7=(0,w.memo)(FMe,IMe),LMe=(0,w.memo)(({resource:e})=>{if(!e.uri?.startsWith(`ui://`))return null;let t=(0,w.useMemo)(()=>{if(e.text)return e.text;if(e.blob)try{return atob(e.blob)}catch{return null}return null},[e.text,e.blob]);return t?(0,S.jsx)(`div`,{className:`my-4 p-0 border h-[350px] rounded-2xl border-zinc-200 overflow-hidden bg-card`,children:(0,S.jsx)(`iframe`,{srcDoc:t,sandbox:`allow-scripts allow-forms allow-popups`,title:e.uri??`MCP UI Resource`,style:{width:`100%`,height:`100%`,border:`none`,overflow:`auto`}})}):null});function RMe({widgetId:e}){let{getWidget:t}=gQ(),n=t(e)?.modelContext;if(!n?.content?.length&&!n?.structuredContent)return null;let r=n.content?.map(e=>e.text).join(` `)??JSON.stringify(n.structuredContent).slice(0,80);return(0,S.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-1.5 text-[11px] text-muted-foreground bg-muted/30 border border-border/40 rounded-md mt-1`,children:[(0,S.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-blue-400 shrink-0`}),(0,S.jsx)(`span`,{className:`font-medium`,children:`State synced to model`}),(0,S.jsx)(`span`,{className:`truncate opacity-60 max-w-[300px]`,children:r})]})}function zMe({toolName:e,toolArgs:t,result:n,serverId:r,readResource:i,toolMeta:a,onSendFollowUp:o,serverBaseUrl:s,partialToolArgs:c,cancelled:l}){let{playground:u}=gQ(),[d,f]=(0,w.useState)(null),p=(0,w.useRef)(null),m=(0,w.useMemo)(()=>`chat-tool-${e}-${Date.now()}-${Math.random().toString(36).substring(2,11)}`,[e]),h=(0,w.useMemo)(()=>{if(!n)return null;if(typeof n==`string`)try{return JSON.parse(n)}catch(e){return console.error(`[ToolResultRenderer] Failed to parse result:`,e),n}return n},[n]),g=(0,w.useMemo)(()=>JSON.stringify(a),[a]),_=(0,w.useMemo)(()=>yQ(a,h),[g,h]),v=(0,w.useMemo)(()=>vQ(a),[g]),y=(0,w.useMemo)(()=>_?_===`both`?u.selectedProtocol?u.selectedProtocol:`mcp-apps`:_:null,[_,u.selectedProtocol]),b=(0,w.useMemo)(()=>y===`mcp-apps`,[y]),x=(0,w.useMemo)(()=>y===`chatgpt-app`,[y]),C=(0,w.useMemo)(()=>!!(h?.content&&Array.isArray(h.content)&&h.content.some(e=>e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType===`text/html+skybridge`)),[h]),T=(0,w.useMemo)(()=>C&&h.content.find(e=>e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType===`text/html+skybridge`)?.resource||null,[C,h]),E=(0,w.useMemo)(()=>t,[e,h]),D=(0,w.useMemo)(()=>h,[e,h]),O=(0,w.useMemo)(()=>v&&y?bQ(y,a):b?a?.ui?.resourceUri||null:x&&a?.[`openai/outputTemplate`]||null,[v,y,b,x,g]);(0,w.useEffect)(()=>{if(T){f(T),p.current=T.uri||null;return}O&&p.current===O||(O!==p.current&&f(null),O&&i&&(p.current=O,i(O).then(e=>{e?.contents&&Array.isArray(e.contents)&&e.contents.length>0&&f(e.contents[0])}).catch(e=>{console.error(`[ToolResultRenderer] Failed to fetch resource:`,e),p.current=null})))},[T,O,y,i]);let k=a?.[`openai/toolInvocation/invoking`],A=a?.[`openai/toolInvocation/invoked`];if(v&&d&&r&&i)return(0,S.jsxs)(`div`,{className:`my-4`,children:[y===`mcp-apps`&&(0,S.jsx)(z7,{serverId:r,toolCallId:m,toolName:e,toolInput:E,toolOutput:D,toolMetadata:a,invoking:k,invoked:A,partialToolInput:c,resourceUri:d.uri,readResource:i,noWrapper:!0,onSendFollowUp:o,serverBaseUrl:s,cancelled:l}),y===`chatgpt-app`&&(0,S.jsx)(J7,{componentUrl:d.uri,toolName:e,toolArgs:E,toolResult:D,serverId:r,readResource:i,noWrapper:!0,showConsole:!1,invoking:k,invoked:A,serverBaseUrl:s})]});if(b&&O&&r&&i)return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(z7,{serverId:r,toolCallId:m,toolName:e,toolInput:E,toolOutput:D,toolMetadata:a,invoking:k,invoked:A,partialToolInput:c,resourceUri:d?.uri||O,readResource:i,className:`my-4`,noWrapper:!0,onSendFollowUp:o,serverBaseUrl:s}),(0,S.jsx)(RMe,{widgetId:m})]});if((x||C)&&O&&r&&i)return(0,S.jsx)(J7,{componentUrl:d?.uri||O,toolName:e,toolArgs:E,toolResult:D,serverId:r,readResource:i,noWrapper:!0,className:`my-4`,showConsole:!1,invoking:k,invoked:A,serverBaseUrl:s});if((b||x||C)&&!O)return(0,S.jsx)(`div`,{className:`flex items-center justify-center w-full h-[200px] rounded border`,children:(0,S.jsx)(Uq,{className:`size-5`})});if((b||x)&&(!r||!i))return console.error(`[ToolResultRenderer] Apps SDK tool but missing serverId or readResource:`,{toolName:e,hasServerId:!!r,hasReadResource:!!i}),(0,S.jsx)(`div`,{className:`my-4 p-4 bg-red-50/30 dark:bg-red-950/20 border border-red-200/50 dark:border-red-800/50 rounded-lg`,children:(0,S.jsx)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:`Cannot render widget: Missing required props (serverId or readResource)`})});let j=[];if(h?.content&&Array.isArray(h.content))for(let e of h.content)e.type===`resource`&&e.resource?.uri?.startsWith(`ui://`)&&e.resource?.mimeType!==`text/html+skybridge`&&j.push(e.resource);return j.length>0?(0,S.jsx)(S.Fragment,{children:j.map(t=>(0,S.jsx)(LMe,{resource:t},`${e}-mcp-ui-${t.uri}`))}):(console.log(`[ToolResultRenderer] Not rendering (no UI resources found):`,{toolName:e,isAppsSdkTool:x,hasAppsSdkComponent:C,hasResourceData:!!d,contentLength:h?.content?.length}),null)}function BMe({content:e,timestamp:t,attachments:n}){return(!e||e.length===0)&&(!n||n.length===0)?null:(0,S.jsx)(`div`,{className:`flex items-start gap-3 justify-end group/user-message`,"data-testid":`chat-message-user`,children:(0,S.jsxs)(`div`,{className:`flex-1 min-w-0 flex flex-col items-end`,children:[(0,S.jsxs)(`div`,{className:`bg-zinc-200 dark:bg-zinc-800 text-primary rounded-3xl px-4 py-2 max-w-[80%] break-words`,"data-testid":`chat-message-content`,children:[n&&n.length>0&&(0,S.jsx)(`div`,{className:`flex flex-wrap gap-2 mb-2`,children:n.map((e,t)=>(0,S.jsx)(`div`,{className:`rounded-lg overflow-hidden border border-zinc-300 dark:border-zinc-700`,children:(0,S.jsx)(`img`,{src:`data:${e.mimeType};base64,${e.data}`,alt:e.name||`Attachment ${t+1}`,className:`max-w-[200px] max-h-[200px] object-contain`})},t))}),e&&e.length>0&&(0,S.jsx)(`p`,{className:`text-base leading-7 font-sans text-start break-words`,children:e})]}),t&&(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground mt-1`,children:new Date(t).toLocaleTimeString()})]})})}function Y7(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.const==`string`&&(t.title===void 0||typeof t.title==`string`)}function VMe(e){let t=Array.isArray(e.oneOf)?e.oneOf.filter(Y7):[],n=Array.isArray(e.anyOf)?e.anyOf.filter(Y7):[];return t.length>0?t:n}function HMe(e){let t=e.items&&typeof e.items==`object`?e.items:{},n=Array.isArray(t.anyOf)?t.anyOf.filter(Y7):[],r=Array.isArray(t.oneOf)?t.oneOf.filter(Y7):[];return n.length>0?n:r}function UMe({request:e,formData:t,onFieldChange:n,idPrefix:r,testIdPrefix:i,fieldContainerClassName:a=`space-y-2`,textareaRows:o=4,showOuterLabelForBoolean:s=!0,emptyFallback:c}){return(0,S.jsx)(S.Fragment,{children:(0,w.useMemo)(()=>{if(!(`requestedSchema`in e.request))return null;let l=e.request.requestedSchema;if(!l||l.type!==`object`||!l.properties)return c??(0,S.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No form schema available`});let u=l.properties,d=l.required||[];return(0,S.jsx)(`div`,{className:`space-y-4`,children:Object.entries(u).map(([e,c])=>{let l=c,u=d.includes(e),f=l.type||`string`,p=l.title||e,m=l.description,h=VMe(l),g=h.length>0,_=Array.isArray(l.enum),v=f===`array`&&Array.isArray(l.items?.enum),y=HMe(l),b=f===`array`&&y.length>0,x=Array.isArray(t[e])?t[e]:[],C=`${r}-${e}`,w=`${i}-${e}`;return(0,S.jsxs)(`div`,{className:a,children:[(f!==`boolean`||s)&&(0,S.jsxs)(MN,{htmlFor:C,children:[p,u&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]}),m&&(0,S.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:m}),f===`boolean`?(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:C,"data-testid":w,checked:t[e]||!1,onCheckedChange:t=>n(e,t)}),(0,S.jsxs)(MN,{htmlFor:C,className:`text-sm font-normal cursor-pointer`,children:[p,!s&&u&&(0,S.jsx)(`span`,{className:`text-red-500 ml-1`,children:`*`})]})]}):f===`number`||f===`integer`?(0,S.jsx)(kN,{id:C,"data-testid":w,type:`number`,value:t[e]??``,onChange:t=>{let r=f===`integer`?parseInt(t.target.value,10):parseFloat(t.target.value);n(e,isNaN(r)?``:r)},placeholder:l.default?.toString()||``}):g?(0,S.jsxs)(`select`,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),className:`flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,children:[(0,S.jsx)(`option`,{value:``,children:`Select...`}),h.map(e=>(0,S.jsx)(`option`,{value:e.const,children:e.title||e.const},e.const))]}):_?(0,S.jsxs)(`select`,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),className:`flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,children:[(0,S.jsx)(`option`,{value:``,children:`Select...`}),l.enum.map((e,t)=>(0,S.jsx)(`option`,{value:e,children:l.enumNames?.[t]||e},e))]}):v?(0,S.jsx)(`div`,{className:`space-y-2`,"data-testid":w,children:l.items.enum.map(t=>{let r=`${C}-${t}`;return(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:r,checked:x.includes(t),onCheckedChange:r=>{n(e,r?[...x,t]:x.filter(e=>e!==t))}}),(0,S.jsx)(MN,{htmlFor:r,className:`text-sm font-normal cursor-pointer`,children:t})]},t)})}):b?(0,S.jsx)(`div`,{className:`space-y-2`,"data-testid":w,children:y.map(t=>{let r=`${C}-${t.const}`;return(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:r,checked:x.includes(t.const),onCheckedChange:r=>{n(e,r?[...x,t.const]:x.filter(e=>e!==t.const))}}),(0,S.jsx)(MN,{htmlFor:r,className:`text-sm font-normal cursor-pointer`,children:t.title||t.const})]},t.const)})}):f===`string`&&(l.format===`textarea`||l.maxLength>100)?(0,S.jsx)(uY,{id:C,"data-testid":w,value:t[e]||``,onChange:t=>n(e,t.target.value),placeholder:l.default||``,rows:o}):(0,S.jsx)(kN,{id:C,"data-testid":w,type:`text`,value:t[e]||``,onChange:t=>n(e,t.target.value),placeholder:l.default||``})]},e)})})},[e,t,n,r,i,a,o,s,c])})}function WMe(e){let[t,n]=(0,w.useState)({}),[r,i]=(0,w.useState)(!1),a=e?.request.mode||`form`,o=a===`form`,s=a===`url`;return(0,w.useEffect)(()=>{if(e&&o&&`requestedSchema`in e.request){let t=e.request.requestedSchema,r={};if(t?.type===`object`&&t.properties)for(let[e,n]of Object.entries(t.properties)){let t=n;t.default===void 0?t.type===`array`?r[e]=[]:t.type===`boolean`?r[e]=!1:t.type===`number`||t.type===`integer`?r[e]=0:r[e]=``:r[e]=t.default}n(r)}i(!1)},[e?.id,o]),{formData:t,setFieldValue:(0,w.useCallback)((e,t)=>{n(n=>({...n,[e]:t}))},[]),getMissingRequiredFields:(0,w.useCallback)(()=>!e||!o||!(`requestedSchema`in e.request)?[]:(e.request.requestedSchema?.required??[]).filter(e=>t[e]===void 0||t[e]===``||t[e]===null),[e,t,o]),urlCompleted:r,setUrlCompleted:i,mode:a,isFormMode:o,isUrlMode:s}}function GMe({request:e,onApprove:t,onReject:n}){let{formData:r,setFieldValue:i,getMissingRequiredFields:a,urlCompleted:o,setUrlCompleted:s,mode:c,isFormMode:l,isUrlMode:u}=WMe(e),[d,f]=(0,w.useState)(!1),[p,m]=(0,w.useState)(``),h=()=>{if(!d)if(l){let n=a();if(n.length>0){BM.error(`Missing required fields`,{description:`Please fill in: ${n.join(`, `)}`});return}f(!0),m(`accepted`),t(e.id,{action:`accept`,content:r})}else u&&(f(!0),m(`accepted`),t(e.id,{action:`accept`}))},g=()=>{d||(f(!0),m(`declined`),t(e.id,{action:`decline`}))},_=()=>{d||(f(!0),m(`cancelled`),n(e.id,`User cancelled elicitation request`))},v=u&&`url`in e.request?e.request.url:null;return d?(0,S.jsxs)(`div`,{className:`rounded-lg border border-dashed bg-muted/30 p-3 text-sm text-muted-foreground max-w-2xl`,children:[`Elicitation `,p,` — the tool will continue executing.`]}):(0,S.jsxs)(`div`,{className:`rounded-lg border bg-card shadow-sm p-4 space-y-4 max-w-2xl`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,S.jsx)(`span`,{className:`font-medium text-sm text-card-foreground`,children:`Elicitation Request`}),(0,S.jsx)(kt,{variant:`outline`,className:u?`bg-blue-500/10 text-blue-600 dark:text-blue-400 border-blue-500/30`:`bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/30`,children:c}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.serverName})]}),(0,S.jsx)(`p`,{className:`text-sm text-card-foreground`,children:e.request.message}),u&&`url`in e.request&&(0,S.jsxs)(`div`,{className:`space-y-3`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted rounded border`,children:[(0,S.jsx)(`code`,{className:`flex-1 text-xs font-mono break-all`,children:v}),(0,S.jsxs)(U,{size:`sm`,variant:`outline`,onClick:()=>{window.open(v??``,`_blank`),s(!0)},children:[(0,S.jsx)(Vf,{className:`h-3 w-3 mr-1`}),`Open`]})]}),(0,S.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,S.jsx)(SY,{id:`inline-url-done-${e.id}`,checked:o,onCheckedChange:e=>s(!!e)}),(0,S.jsx)(MN,{htmlFor:`inline-url-done-${e.id}`,className:`text-sm font-normal cursor-pointer`,children:`I have completed the required action`})]})]}),l&&(0,S.jsx)(UMe,{request:e,formData:r,onFieldChange:i,idPrefix:`inline-field-${e.id}`,testIdPrefix:`inline-elicitation-field`,fieldContainerClassName:`space-y-1.5`,textareaRows:3,showOuterLabelForBoolean:!1,emptyFallback:(0,S.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No form schema provided.`})}),(0,S.jsxs)(`div`,{className:`flex gap-2 pt-1`,children:[(0,S.jsx)(U,{size:`sm`,onClick:h,disabled:u&&!o,"data-testid":`inline-elicitation-accept`,children:`Accept`}),(0,S.jsx)(U,{size:`sm`,variant:`outline`,onClick:g,"data-testid":`inline-elicitation-decline`,children:`Decline`}),(0,S.jsx)(U,{size:`sm`,variant:`outline`,onClick:_,"data-testid":`inline-elicitation-cancel`,children:`Cancel`})]})]})}var KMe=(0,w.memo)(({messages:e,isLoading:t,serverId:n,readResource:r,tools:i,sendMessage:a,serverBaseUrl:o,pendingElicitationRequests:s,onApproveElicitation:c,onRejectElicitation:l})=>{let u=(0,w.useRef)(null),d=e=>{let t=e=>e.replace(/-/g,`_`),n=t(e);return i?.find(e=>t(e.name)===n)?._meta},f=e=>{let t=yQ(d(e),void 0);return t!==null&&t!==`mcp-ui`},p=(0,w.useCallback)(e=>{let t=e.filter(e=>e.type===`text`&&`text`in e).map(e=>e.text).join(`
792
792
  `),n=e.filter(e=>e.type===`image`&&`data`in e&&`mimeType`in e).map(e=>({type:`image`,data:e.data,mimeType:e.mimeType}));a?.(t,n.length>0?n:void 0)},[a]);(0,w.useEffect)(()=>{e.length>0&&u.current&&u.current.scrollIntoView({behavior:t?`auto`:`smooth`,block:`start`})},[e.length,t]);let m=t&&(()=>{if(e.length===0)return!0;let t=e[e.length-1];if(t.role===`user`)return!0;if(t.role===`assistant`){if(t.parts&&t.parts.length>0)return!1;let e=typeof t.content==`string`?t.content:Array.isArray(t.content)?t.content.map(e=>typeof e==`string`?e:e.text||JSON.stringify(e)).join(``):JSON.stringify(t.content);return!(e&&e.trim().length>0)}return!1})(),h=n=>{if(!t)return!1;let r=e[e.length-1];return n.id===r.id&&r.role===`assistant`};return(0,S.jsxs)(`div`,{className:`space-y-6 max-w-3xl mx-auto px-2`,children:[e.map(e=>{let t=typeof e.content==`string`?e.content:Array.isArray(e.content)?e.content.map(e=>typeof e==`string`?e:e.text||JSON.stringify(e)).join(``):JSON.stringify(e.content);return e.role===`user`?(0,S.jsx)(BMe,{content:t,timestamp:e.timestamp,attachments:e.attachments},e.id):e.role===`assistant`?(0,S.jsx)(`div`,{className:`space-y-4`,children:e.parts&&e.parts.length>0?e.parts.map((t,i)=>{let a=t.type===`text`?`${e.id}-text-${i}-${t.text?.slice(0,20)}`:`${e.id}-tool-${t.toolInvocation?.toolName}-${i}`;return t.type===`text`?(0,S.jsx)(cQ,{content:t.text||``,timestamp:i===e.parts.length-1?e.timestamp:void 0,_isStreaming:h(e)},a):t.type===`tool-invocation`&&t.toolInvocation?(0,S.jsxs)(`div`,{children:[(0,S.jsx)(mQ,{toolName:t.toolInvocation.toolName,args:t.toolInvocation.args,result:t.toolInvocation.result,state:t.toolInvocation.state===`error`?`error`:t.toolInvocation.state===`streaming`||t.toolInvocation.state===`pending`?`call`:`result`,partialArgs:t.toolInvocation.partialArgs}),(t.toolInvocation.result||t.toolInvocation.state===`streaming`||f(t.toolInvocation.toolName))&&(0,S.jsx)(`div`,{"data-tool-call-id":`${e.id}-${t.toolInvocation.toolName}-${i}`,children:(0,S.jsx)(zMe,{toolName:t.toolInvocation.toolName,toolArgs:t.toolInvocation.args,result:t.toolInvocation.result||null,serverId:n,readResource:r,serverBaseUrl:o,toolMeta:d(t.toolInvocation.toolName),onSendFollowUp:p,partialToolArgs:t.toolInvocation.partialArgs,cancelled:t.toolInvocation.state===`error`&&t.toolInvocation.result===`Cancelled by user`})})]},a):null}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(cQ,{content:t,timestamp:e.timestamp,_isStreaming:h(e)}),e.toolCalls&&e.toolCalls.length>0&&(0,S.jsx)(`div`,{className:`space-y-2`,children:e.toolCalls.map(t=>{let i=`${e.id}-${t.toolName}-${JSON.stringify(t.args).slice(0,50)}`;return(0,S.jsxs)(`div`,{children:[(0,S.jsx)(mQ,{toolName:t.toolName,args:t.args,result:t.result,state:t.result?`result`:`call`}),(t.result||f(t.toolName))&&(0,S.jsx)(`div`,{"data-tool-call-id":i,children:(0,S.jsx)(zMe,{toolName:t.toolName,toolArgs:t.args,result:t.result||null,serverId:n,readResource:r,serverBaseUrl:o,toolMeta:d(t.toolName),onSendFollowUp:p})})]},i)})})]})},e.id):null}),s&&s.length>0&&c&&l&&(0,S.jsx)(`div`,{className:`space-y-3`,children:s.map(e=>(0,S.jsx)(GMe,{request:e,onApprove:c,onReject:l},e.id))}),m&&(0,S.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,S.jsx)(`div`,{className:`flex-1`,children:(0,S.jsx)(`div`,{className:`rounded-lg p-4 max-w-fit`,children:(0,S.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,S.jsx)(`span`,{className:`text-sm`,children:(0,S.jsx)(kY,{duration:2,spread:1,children:`Thinking...`})})})})})}),(0,S.jsx)(`div`,{ref:u})]})});function qMe(e){return Gje(e)}var JMe=e=>{let t=[];for(let n of e){if(n.error||n.result?.isError){let e={id:`prompt-error-${n.promptName}-${n.timestamp}`,role:`assistant`,content:n.error||`Prompt execution failed`,timestamp:n.timestamp};t.push(e);continue}let e=n.result;if(e&&`messages`in e&&Array.isArray(e.messages))for(let r of e.messages){let e=``,i=[];if(typeof r.content==`string`)e=r.content;else if(Array.isArray(r.content)){let t=[];for(let e of r.content)e.type===`text`&&e.text?t.push(e.text):e.type===`image`&&e.data?i.push({type:`image`,data:e.data,mimeType:e.mimeType||`image/png`}):e.type===`resource`&&t.push(`[Resource: ${e.resource?.uri||`embedded`}]`);e=t.join(`
793
793
  `)}else r.content&&typeof r.content==`object`&&(r.content.type===`text`&&r.content.text?e=r.content.text:r.content.type===`image`&&r.content.data?i.push({type:`image`,data:r.content.data,mimeType:r.content.mimeType||`image/png`}):e=JSON.stringify(r.content));!e&&i.length===0&&(e=`[no content]`);let a={id:`prompt-${n.promptName}-${n.timestamp}-${t.length}`,role:r.role,content:e||``,timestamp:n.timestamp,attachments:i.length>0?i:void 0};t.push(a)}}return t};function YMe({mcpServerUrl:e,llmConfig:t,authConfig:n,isConnected:r,chatApiUrl:i,waitForChatApiUrl:a,widgetModelContexts:o,initialMessages:s,disabledTools:c,streamProtocol:l=`sse`,credentials:u,extraHeaders:d,body:f}){let[p,m]=(0,w.useState)(s??[]),[h,g]=(0,w.useState)(!1),[_,v]=(0,w.useState)([]),[y,b]=(0,w.useState)(null),x=(0,w.useRef)(null);return{messages:p,isLoading:h,attachments:_,rateLimitInfo:y,sendMessage:(0,w.useCallback)(async(s,h,y)=>{let S=[..._,...y??[]];if(!(s.trim()||h.length>0||S.length>0)||!t||!r)return;let C=[...JMe(h)];if(s.trim()||S.length>0){let e={id:`user-${Date.now()}`,role:`user`,content:s.trim(),timestamp:Date.now(),attachments:S.length>0?S:void 0};C.push(e)}m(e=>[...e,...C]),g(!0),v([]),x.current=new AbortController;try{let r=n;if(n?.type===`oauth`)try{let t=`mcp:auth_${CY(e)}_tokens`,i=localStorage.getItem(t);if(i){let e=JSON.parse(i);r={...n,oauthTokens:e}}else console.warn(`No OAuth tokens found in localStorage for key:`,t)}catch(e){console.warn(`Failed to retrieve OAuth tokens:`,e)}let s=[];if(o&&o.size>0){let e=[];for(let[,t]of o)t&&(t.content?.length?e.push(t.content.map(e=>e.text).join(`
794
794
  `)):t.structuredContent&&e.push(JSON.stringify(t.structuredContent)));e.length>0&&s.push({role:`user`,content:`[Current Widget State]\n${e.join(`
@@ -69,11 +69,11 @@
69
69
  name="twitter:image:alt"
70
70
  content="mcp-use MCP Inspector — test and debug MCP servers"
71
71
  />
72
- <script type="module" crossorigin src="/inspector/assets/index-uh7rNdPi.js"></script>
72
+ <script type="module" crossorigin src="/inspector/assets/index-COLsAJ_L.js"></script>
73
73
  <link rel="modulepreload" crossorigin href="/inspector/assets/chunk-BEqpzyXh.js">
74
74
  <link rel="modulepreload" crossorigin href="/inspector/assets/chunk-JU7W27UC-DhkWJhyX.js">
75
75
  <link rel="stylesheet" crossorigin href="/inspector/assets/index-BdmYXFXQ.css">
76
- <script>window.__INSPECTOR_VERSION__ = "3.0.1-canary.0";</script>
76
+ <script>window.__INSPECTOR_VERSION__ = "3.0.1-canary.2";</script>
77
77
  </head>
78
78
  <body>
79
79
  <script>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mcp-use/inspector",
3
3
  "type": "module",
4
- "version": "3.0.1-canary.0",
4
+ "version": "3.0.1-canary.2",
5
5
  "description": "MCP Inspector - A tool for inspecting and debugging MCP servers",
6
6
  "author": "",
7
7
  "license": "MIT",
@@ -86,7 +86,7 @@
86
86
  "sonner": "^2.0.7",
87
87
  "tailwind-merge": "^3.5.0",
88
88
  "zod": "4.3.5",
89
- "mcp-use": "1.25.1-canary.0"
89
+ "mcp-use": "1.25.1-canary.2"
90
90
  },
91
91
  "publishConfig": {
92
92
  "access": "public"